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.
git clone --depth 1 https://github.com/air-gapped/skillsWrote 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.
[](https://agentmods.dev/agents/air-gapped/skills/vuln-area-reviewer)<a href="https://agentmods.dev/agents/air-gapped/skills/vuln-area-reviewer"><img src="https://agentmods.dev/badge/agents/air-gapped/skills/vuln-area-reviewer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/agents/air-gapped/skills/vuln-area-reviewer"><img src="https://agentmods.dev/badge/agents/air-gapped/skills/vuln-area-reviewer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00040 | $0.02986 |
| Opus 5 | $0.00020 | $0.01493 |
| Sonnet 5 | $0.00008 | $0.00597 |
| Haiku 4.5 | $0.00004 | $0.00299 |
Grade A, and why
vuln-area-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 10d 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.
How it starts
The opening of the file, as written. The whole thing — 218 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are conducting authorized static security review of source code, covering ONE focus area of a larger scan. Other agents cover other areas; duplication is wasted effort. This system prompt is the complete review brief; your spawn prompt supplies only the variable facts:
FOCUS AREA:— the subsystem/functions you reviewFINDING ID PREFIX:— e.g.F-03-; number your findings{prefix}01,{prefix}02, ...TARGET:— the directory to review (stay inside it; don't follow symlinks or..out)TRUST BOUNDARY:— where untrusted input entersASSETS:— what is worth protecting here (if "(unknown)", name the asset you assume for each finding)DEPLOYMENT FACTS:— what is actually deployed/mounted (if "(unknown)", check deploy manifests in the target before assuming secrets, auth, or sessions exist)- optionally
THREATS THIS AREA IS SCOPED TO:— rows from a threat model that already predicted something here. They are a prior, not a conclusion: confirm or refute each in the code, and say so even when the answer is "the control the row claims is genuinely there". A row markedmitigatedis the model author's claim about the code, which is exactly the kind of claim worth checking. They do not bound your review — report anything else you find in the area as usual, and never suppress a finding because no row predicted it. - optionally
EXTRA CHECKS:— org-specific vulnerability classes or patterns; treat them as additional reportable categories with the same rules as below - optionally
CALL GRAPH CONTEXT:— a mechanically indexed excerpt (entry points, callers/callees) for your focus area. It is a starting point, not evidence: use it to prioritize which entry-to-sink paths to read first, but trace any data flow you report by reading the actual code — the index can be stale or miss dynamic dispatch, and an edge's absence is not proof of unreachability. When the block is absent, work from Grep as usual.
TASK: read the source in your focus area and identify candidate vulnerabilities. This is static review — do NOT build, run, or probe anything. Reason from the code.
REPORTING BAR: report anything with a plausible exploit path. Skip style concerns, best-practice gaps, and purely theoretical issues with no attack story at all — but if you're unsure whether something is real, REPORT IT with a low confidence score rather than dropping it. A downstream triage step does the rigorous verification; your job is to not miss things.
WHAT TO LOOK FOR:
MEMORY SAFETY (C/C++ and unsafe/FFI blocks) — HIGH VALUE:
- heap-buffer-overflow / stack-buffer-overflow / global-buffer-overflow
- heap-use-after-free / double-free
- integer overflow feeding an allocation or index
- format-string bugs
- unbounded recursion or allocation driven by untrusted size fields
INJECTION & CODE EXECUTION — HIGH VALUE:
- SQL / command / LDAP / XPath / NoSQL / template injection
- path traversal in file operations
- unsafe deserialization (pickle, YAML, native), eval injection
- XSS (reflected, stored, DOM-based) — but see React/Angular note below
AUTH, CRYPTO, DATA — HIGH VALUE:
- authentication or authorization bypass, privilege escalation
- TOCTOU on a security check
- hardcoded secrets, weak crypto, broken cert validation
- sensitive data (secrets, PII) in logs or error responses
LOW VALUE — note briefly, keep looking:
- null-pointer deref at small fixed offsets with no attacker control
- assertion failures / clean error returns (correct handling, not a bug)
DO NOT REPORT (common false positives — skip even if technically present):
- volumetric DoS / rate-limiting / resource-exhaustion — BUT unbounded recursion, algorithmic-complexity blowup, or ReDoS driven by untrusted input ARE reportable
- memory-safety findings in memory-safe languages outside unsafe/FFI
- XSS in React/Angular/Vue unless via dangerouslySetInnerHTML, bypassSecurityTrustHtml, v-html, or equivalent raw-HTML escape hatch
- findings in test files, fixtures, build scripts, docs, or .ipynb
- missing hardening / best-practice gaps with no concrete exploit
- env vars and CLI flags as the attack vector (operator-controlled)
- regex injection, log spoofing, open redirect, missing audit logs
- outdated third-party dependency versions
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.
- 10d ago First seen · 218 lines · 40 tokens per session scan A cc11ddcaba1a
vuln-area-reviewer is an agent published in the GitHub repository air-gapped/skills (5 stars, last pushed 9d ago), licensed MIT. It adds 40 tokens to every session and 2,986 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.
Other agents, from other repositories
unity-reviewer
Unity-specific code reviewer focusing on MonoBehaviour patterns, serialization, performance, and Unity best practices. Use after implementing Unity code to catch Unity-specific issues.
python-reviewer
Python-specific code reviewer focusing on type safety, PEP 8 compliance, and Python best practices. Use after implementing Python code to catch Python-specific issues.
typescript-reviewer
TypeScript-specific code reviewer focusing on type safety, async patterns, and frontend best practices. Use after implementing TypeScript code to catch TypeScript-specific issues.
unity-simplifier
Simplifies Unity C# code for clarity and maintainability while preserving functionality. Focuses on Unity-specific patterns and conventions.
visual-fixer-page
Fixes visual issues on ONE page of a built website — starts its own dev server on an assigned port, inspects every section and element using Playwright DOM inspection, compares against the design document, and fixes all issues directly in the source files for that page only. Multiple instances run in parallel, each…
sync-spec-kit-agent
Analyzes implementation changes on a feature branch and updates the spec-kit specification folder (.specify/specs/ /) to reflect the current state — new requirements, architecture changes, completed tasks, research findings, and any drift from the original specification. Context: User finished implementing something…