filip-podstavec/claude-leverage/security-review

Claude Code and agent skill by filip-podstavec/claude-leverage

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

USE BEFORE committing security-sensitive changes (auth, crypto, routes, user-input handling, secret loading, templates), or when the `security-nudge` Stop hook suggests it. Audits the current diff for OWASP-Top-10-shaped issues + deps typosquatting. Read-only. Delegates to the `security-reviewer` Sonnet subagent shipped here; returns Critical / Important / Nice schema with `file:line`.

Install

npx vskill@latest install filip-podstavec/claude-leverage/security-review

SKILL.md

/security-review

When to use

  • Before committing changes that touch authentication, authorization,

cryptography, user-input handling, file/path operations, request handling (routes/middleware/templates), or anything that reads/writes secrets.

  • When the security-nudge Stop hook prints a one-liner suggestion.
  • Whenever you want a second pair of eyes on a diff before pushing —

Sonnet running on isolated context will catch things Opus inline missed about a third of the time in informal testing.

What it does NOT replace

  • Static analysis (Semgrep, CodeQL, Bandit) — those have rule sets

built by full-time security teams. Run them separately in CI.

  • Dependency vulnerability scanning (npm audit, pip-audit,

cargo audit, GitHub Dependabot). The skill flags suspicious package additions but does not check CVE feeds.

  • A real pentest. This is a diff review by a model, not an attacker

exercising your live system.

How it runs

mermaid
sequenceDiagram
participant U as User
participant M as Main session (Opus)
participant S as security-reviewer (Sonnet)
U->>M: /security-review
M->>M: git diff --cached
M->>S: Task: review this diff for OWASP Top 10 patterns
S->>S: Read diff + surrounding context
S->>S: Pattern-walk + tier findings
S-->>M: Markdown report (Critical / Important / Nice / OOS)
M->>U: Relay report verbatim + offer "fix all Critical, fix one, ignore"
  1. Main session reads the staged diff (git diff --cached; falls back to

git diff if nothing staged).

  1. If diff is empty, report "no changes to review" and stop.
  2. Delegate to security-reviewer subagent (Sonnet, read-only). Pass:
  • The full diff
  • The list of changed files
  • The current branch and git log --oneline -5 for context
  1. Receive the structured Markdown report.
  2. Relay the report verbatim to the user. Do not paraphrase, summarize,

or pre-emptively fix anything.

  1. Ask the user: "Fix all Critical findings, address one specific finding,

or commit as-is and address later?"

Hard rules for the main session

  • Never modify code from this skill's invocation. This skill is purely

audit + relay. If the user says "yes, fix the Critical findings," that's a separate main-session step — exit this skill first.

  • Never silently downgrade tiers. If the subagent reported a finding

as Critical, surface it as Critical. The user decides priority.

  • Always relay the full report. Do not trim the "Out of scope" section

— it tells the user what wasn't covered.

Why a subagent, not inline

The benchmark series in bench/archive-token-savings-thesis/ showed that subagent dispatch is usually a cost loss vs Opus inline. We accept that cost here because:

  1. Deterministic output schema. Sonnet returns Critical/Important/Nice

tiers every invocation; Opus inline produces prose of varying shape. Downstream tooling (e.g., a CI gate that only blocks on Critical) can parse the structured output.

  1. Context isolation. A read-only subagent cannot accidentally "fix"

findings mid-review — eliminating the class of bugs where the reviewer becomes the implementer.

  1. Cost-not-amortized work. Security review is naturally bounded (one

diff in, one report out). It doesn't benefit from main-session warm cache the way iterative coding does.

If you want to skip the dispatch and have Opus inline read the diff and emit a report freeform, just type "review this diff for security issues" without invoking the skill — the model will do it. The skill exists for the cases above (schema, isolation, structured-output workflows).

Codex parity

The same skill ships in Codex via scripts/install-codex.sh. The subagent is at .codex/agents/security-reviewer.toml (generated from agents/security-reviewer.md by scripts/gen-codex-agents.py).

Tunables

  • The security-nudge Stop hook fires when net-new code crosses

80 LOC and at least one changed file matches a sensitive-path pattern (*auth*, *login*, routes/, api/, *crypto*, *payment*, templates/, *.env*, …). Override threshold via env var CLAUDE_LEVERAGE_SECURITY_NUDGE_LOC.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
64
Repository forks
2
7-day trend score
21

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/filip-podstavec/claude-leverage/security-review/badge)](https://verified-skill.com/skills/filip-podstavec/claude-leverage/security-review)

Something wrong with this skill or its page? Tell us.