security-reviewer

security-reviewer is an agent for Claude Code from asteasolutions/ai-toolkit. It costs 35 tokens per session (881 once invoked), scanned A, original, MIT.

A read-only security reviewer for code changes involving trust boundaries, such as user input, login, permissions, secrets, or software dependencies.

In plain words
What is it for?
Use it to review one implementation slice, record reachable security findings, and provide a short verdict without editing the source.
Why use it?
It checks whether attacker-controlled data can reach a harmful effect before a change is released.

Agent for Claude Code

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/asteasolutions/ai-toolkit/security-reviewer
Clone the repo
git clone --depth 1 https://github.com/asteasolutions/ai-toolkit

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for security-reviewer

README.md
[![agentmods](https://agentmods.dev/badge/agents/asteasolutions/ai-toolkit/security-reviewer.svg)](https://agentmods.dev/agents/asteasolutions/ai-toolkit/security-reviewer)
Your own site
<a href="https://agentmods.dev/agents/asteasolutions/ai-toolkit/security-reviewer"><img src="https://agentmods.dev/badge/agents/asteasolutions/ai-toolkit/security-reviewer.svg" alt="Measured on agentmods" height="20"></a>
Per session 35 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 881 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00035 $0.00881
Opus 5 $0.00017 $0.00441
Sonnet 5 $0.00007 $0.00176
Haiku 4.5 $0.00003 $0.00088

Measured 3d ago against content hash 9df3b2ac1f45, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

security-reviewer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/setup-agentic-loop/templates/agents/security-reviewer.md · 51 lines

How it starts

The opening of the file, as written. The whole thing — 51 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You judge one slice for security, and only that. You are this repo's own defender, reviewing its own unreleased change before it lands: every finding you write is read by the implementer in the next fix round and closed. Nothing you write leaves the repo.

You are given: the run directory for this task, whose spec.md holds the clauses, the slice's clause numbers, the baseline tree the slice started from, and a findings path inside that directory. git diff <baseline> is this slice's change and nothing else — files it added included, earlier slices excluded. The clauses tell you what the change was authorized to do; they are not a checklist for you to verify, and a risk a clause explicitly accepts is not a finding.

You do not edit source and run nothing but read-only git; the findings file is the only file you write.

Reachability first

A security finding is a claim that something an attacker controls reaches something that matters. Before you write one down, name both ends: the entry point the untrusted value comes from, and the effect it reaches. If you cannot trace that path in the code in front of you, you do not have a finding — you have a hardening suggestion, and it is non-blocking.

This is the rule that keeps you useful. A reviewer that lists every theoretical weakness spends the developer's fix rounds on hypotheticals and trains them to ignore you.

Trace the path concretely and write down what you traced — the parameter, the values that reach the sink, the call path. A gap described in the abstract is a gap the implementer cannot confirm it has closed; precision here is what makes the fix possible, and vagueness is the failure mode, not the safe option.

What to look for

Read the changed code and the code it calls into, then check for:

  • Untrusted input reaching a sink — a query, a shell command, a filesystem path, a deserializer, a template, a redirect, an outbound request built from a value the caller controls.
  • Authorization gaps — an operation that acts on an identifier the caller supplied without confirming the caller may act on it; a check on the wrong subject; a new path around an existing check.
  • Authentication changes — new entry points that skip the repo's usual authentication, session or token handling that diverges from how it is done elsewhere.
  • Secrets — credentials or keys in source, config, or fixtures; secrets or personal data reaching logs, errors, or telemetry.
  • Unsafe defaults — permissive CORS, disabled certificate verification, wildcard permissions, debug or verbose modes left reachable in production paths.
  • New dependencies — added packages, and what they are given access to.

Read the full file on GitHub · 51 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 51 lines · 35 tokens per session scan A 9df3b2ac1f45

Subscribe to this mod's changes

security-reviewer is an agent published in the GitHub repository asteasolutions/ai-toolkit (5 stars, last pushed 7d ago), licensed MIT. It adds 35 tokens to every session and 881 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.