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.
npx skills add tommyvo/useful-prompts --skill security-review-checklistgit clone --depth 1 https://github.com/tommyvo/useful-promptsWrote 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/skills/tommyvo/useful-prompts/security-review-checklist)<a href="https://agentmods.dev/skills/tommyvo/useful-prompts/security-review-checklist"><img src="https://agentmods.dev/badge/skills/tommyvo/useful-prompts/security-review-checklist/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/skills/tommyvo/useful-prompts/security-review-checklist"><img src="https://agentmods.dev/badge/skills/tommyvo/useful-prompts/security-review-checklist.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.00072 | $0.15415 |
| Opus 5.5 | $0.00029 | $0.06166 |
| Sonnet 5.5 | $0.00014 | $0.03083 |
| Haiku 4.5 | $0.00007 | $0.01541 |
Grade C, and why
security-review-checklist scanned grade C with 3 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 13d 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.
Downloads and executes remote codemediumSupply chain
curl | sh runs whatever the server returns today, which is not necessarily what it returned when this was reviewed.
7. **Remote script execution** - `curl | bash` or downloading and running scripts in Dockerfiles, CI, or setup scripts. A checksum downloaded from the same place as the script proves nothing. Fix: pin the version and ver Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.
Cloud metadata endpointmediumServer-side request forgery
One request to 169.254.169.254 can return temporary IAM credentials.
9. **SSRF** - The server fetching a user-supplied URL (webhooks, imports, previews, notification callbacks), including after redirects, DNS rebinding, or URL parser differences. Fix: allowlist hosts, re-check the resolve Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
7. **Remote script execution** - `curl | bash` or downloading and running scripts in Dockerfiles, CI, or setup scripts. A checksum downloaded from the same place as the script proves nothing. Fix: pin the version and ver How it starts
The opening of the file, as written. The whole thing — 516 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Security Review Checklist
Goal
Provide a focused, deep security pass over uncommitted changes, checking them against the checklists below: secrets and obvious exposures, application security, authentication and sessions, client-side and browser, data isolation and lifecycle, messaging and background jobs, resource exhaustion, AI and LLM features, supply chain, infrastructure (Terraform/Atmos on AWS), CI/CD and containers, and optionally compliance and data handling. Every finding must name a real trust boundary and a concrete result, checked against the source; anything that depends on a fact the repository cannot show is reported as a lead to validate, not as a vulnerability. This complements local-code-review, which only covers security at a general level. The report lists security issues the developer should address, and suggests scanners to run.
CRITICAL: MANDATORY FIRST STEP
YOU MUST run git diff HEAD as your ABSOLUTE FIRST action before doing ANYTHING else.
- DO NOT attempt to review code from context or memory
- DO NOT skip this step under any circumstances
- DO NOT proceed to the next step without running this command first
- DO NOT assume you know what changed
If you do not run git diff HEAD first, you are failing to follow instructions.
Process
Follow these steps IN ORDER. DO NOT skip any step:
- STEP 1 - Get Changes via Git (MANDATORY): Run
git diff HEADin the terminal to retrieve ALL uncommitted changes. This is your primary source of truth for what to review. You can read existing files in the current directory for additional context if needed. - STEP 2 - Check Scope: If the diff only changes documentation or formatting, output a single line saying there are no security-relevant changes to check, and stop. Otherwise continue - security applies to almost any code or configuration change.
- STEP 3 - Map The Change: Before checking items, note for the changed code: the entry points it adds or changes (routes, controller actions, GraphQL resolvers, jobs, webhooks, message consumers, LLM tools, workflows, IAM roles); who can reach each one (anonymous user, signed-in user, another tenant, admin, internal service, fork PR); what it protects (data, money, credentials, code execution, deploy or release authority); and the strongest control already on the path (authentication, authorization, tenant scoping, validation, network rules). Read the surrounding files you need for this. Keep it short: it decides which checklists apply and how severe a finding is, and a one-line summary goes in the report's description.
- STEP 4 - Decide Which Checklists Apply: Apply a checklist only when the diff touches what it covers. One file can trigger several checklists:
- Secrets & Credentials and Obvious Exposures - always.
- Application Security - application code (
.rb,.erb,.js,.jsx,.ts,.tsx, controllers, routes,config/). - Authentication & Sessions - code or config for login, sessions, cookies, tokens, JWT, OAuth/OIDC/SAML, MFA, passkeys, password reset, account linking, API keys, or trusted-proxy and host settings.
- Client-Side & Browser - browser code that renders HTML, builds URLs or navigation, handles
postMessageor WebSockets, or uses browser storage or service workers, and CORS or framing settings. - Data Isolation & Lifecycle - models, queries, scopes and policies, migrations, caches and cache keys, search indexes, object storage keys, exports and imports, and deletion, archiving, or restore code.
- Messaging, Webhooks & Background Jobs - webhook receivers, background jobs, queue or pub/sub producers and consumers, Action Cable channels, and GraphQL or gRPC services.
- Resource Exhaustion - code that parses, decompresses, or stores untrusted input, regexes on input, pagination and query parameters, fan-out to jobs or downstream calls, and calls to paid APIs.
- AI & LLM Features - code that builds prompts, calls a model, retrieves context (RAG), stores agent memory, defines or dispatches tools, implements MCP servers or clients, or renders model output.
- Supply Chain & Dependencies -
Gemfile,Gemfile.lock,package.json, JS lockfiles, registry config (.npmrc,.yarnrc.yml),.github/workflows/,Dockerfile, Terraformrequired_providersor module sources,.terraform.lock.hcl. - Infrastructure -
.tf,.tfvars,.hcl,atmos.yaml, and Atmos stack files (usually understacks/). Apply the service-specific items (ECS, Aurora, ElastiCache, SSM) only when that resource type is touched. - CI/CD & Containers -
.github/workflows/,Dockerfile, compose files, ECS task definitions. - Compliance & Data Handling - only when opted in (see STEP 5).
- STEP 5 - Determine Compliance Scope: Check whether compliance frameworks were requested, either in the message that invoked this skill (for example
soc2 gdpr) or in aCompliance:line in the project'sAGENTS.md,CLAUDE.md, orREADME.md. If SOC 2 and/or GDPR are requested, apply the general items plus those framework items in the Compliance & Data Handling checklist. If none are requested but the diff handles personal data, apply only the general items and make no framework claims. - STEP 6 - Choose Review Mode: Check the size of the diff with
git diff HEAD --shortstat. If it touches more than 15 files or more than 800 changed lines, or the user asked for subagents, use parallel subagents as described in Large Reviews: Parallel Subagents below. Otherwise, or if the user asked not to use subagents, review it yourself in a single pass. - STEP 7 - Review And Verify: In parallel mode, the subagents do sub-steps 1-3 and you do 4 after merging; in single-pass mode, you do all four:
- Review the changes against the applicable checklists using the Review Method.
- Ask the Wildcard Questions for anything the checklists do not name.
- Put every candidate from sub-steps 1 and 2 through Verify Before Reporting.
- Run Independent Verification once, for any 🟣 or 🔴 findings.
- STEP 8 - Generate The Report: Generate the report in markdown format. Only report issues that actually appear in the diff. Rate each finding using the Severity Guide. Do not save the report in the filesystem. You should only output to chat.
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.
- 13d ago Changed · +229 lines · +28 tokens per session 3f4c4cb6861a
- 25d ago First seen · 287 lines · 44 tokens per session scan C 57c6129a0b55
security-review-checklist is a skill published in the GitHub repository tommyvo/useful-prompts (4 stars, last pushed 14d ago), licensed Unlicense. It adds 72 tokens to every session and 15,415 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it C with 3 findings (downloads and executes remote code, cloud metadata endpoint, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-24.
Other skills, from other repositories
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…
next-cache-components-optimizer
Optimize the meaningful UI available immediately from a Next.js route on an initial load (hard navigation) or named client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route and entry point at a time; the shipped test then guards…