skills/code-review/SKILL.md
Use for code/PR review, audits, bug/security checks, reviewing diffs or changes, and finding issues in code.
npx skillsauth add paulrberg/agent-skills code-reviewInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Find high-impact defects in changed code with evidence. Prioritize correctness, security, data integrity, shell/config safety, and regressions over style nits.
--fix: Build findings internally, apply suggested fixes in severity order, then produce one final report and verify per the Verification section. Do not emit a separate pre-fix report.--with-profile <name>: Force an optional domain profile by stem or filename (e.g. --with-profile shell). Repeatable.--skip-profile <name>: Skip an optional domain profile by stem or filename (e.g. --skip-profile naming). Repeatable. If both --with-profile and --skip-profile name the same profile, skip wins.Resolve scope once, then treat the result as fixed for the rest of the run.
git rev-parse --git-dir. If this fails, stop and tell the user to run from a git repository.resolved-scope fenced block with one repo-relative path per line — scope is exactly those targets. Map natural-language subsets to concrete paths before continuing.git diff --name-only --diff-filter=ACMRgit ls-files --others --exclude-standardexcluded-scope, one repo-relative path or glob per line, and cover them through verification or invariant checks.resolved-scope, one repo-relative path per line. The block is authoritative: do not re-run scope commands or revisit exclusions afterward.excluded-scope block as outside manual review but inside verification planning.--with-profile and --skip-profile.--fix: apply all suggested fixes in severity order (CRITICAL -> HIGH -> MEDIUM -> LOW), then verify per the Verification section. The first user-facing findings report is the final report after fixes.Produce the Report section below.
Treat the user's request as the boundary for judging the diff.
Apply on every run.
CORE-001 Behavior regression (HIGH): changed branch/state transition alters external behavior.CORE-002 Error-path safety (HIGH): failures can cascade, crash, or return unsafe defaults.CORE-003 Boundary handling (HIGH): null/empty/overflow/edge inputs are not handled.CORE-004 Resource hygiene (MEDIUM): leaked timers/listeners/handles/connections.CORE-005 Complexity hotspot (MEDIUM): change introduces avoidable coupling or hidden side effects.CORE-006 Test gap (MEDIUM): changed behavior has no targeted test coverage.CORE-007 Over-scoped change (MEDIUM): changed lines do not trace directly to the user's request or verified cleanup caused by the change.CORE-008 Speculative complexity (MEDIUM): new abstraction, configurability, flexibility, or impossible-case handling adds code without proven need.CORE-009 Weak success criteria (MEDIUM): implementation lacks a clear verification target for the behavior it claims to change.Profile dispatch is risk-triggered and exhaustive. Read every non-skipped profile that materially improves defect discovery for the touched risk surfaces; file extension alone is not enough when core checks cover the change. Read each selected profile once, in full; every profile fits in a single read, so never page through or re-read one.
Honor --skip-profile exclusions first. Add --with-profile profiles after exclusions. Include references/profiles/naming.md unless skipped.
references/profiles/security.md: auth, external input, secrets, crypto, public network surfaces, unsafe parsing.references/profiles/configuration.md: env/config, timeouts, retries, pools, limits, resource tuning, rollout controls.references/profiles/go.md: Go services, CLIs, concurrency, context propagation, error handling, modules, or tests.references/profiles/typescript-react.md: TypeScript/JavaScript/React/Node behavior changes where type, render, runtime, package, or async semantics matter.references/profiles/python.md: Python services, scripts, async workloads, packaging, data processing, or IO-heavy changes.references/profiles/shell.md: shell scripts, CI command blocks, deployment scripts, installer commands, or command quoting.references/profiles/data-formats.md: CSV/JSON/YAML/binary ingestion/export/parsing, schemas, generated data, migrations, or fixture updates.references/profiles/naming.md: naming/intent clarity. Run on every review unless skipped.Run the narrowest checks that validate touched behavior:
excluded-scope outputsRun broader checks only when risk warrants it, especially when fixes touch shared contracts. Name every skipped check and why.
Use these section headings, in this order. Omit sections that do not apply — do not number them and do not leave gaps or placeholders.
Reviewed files and any excluded-scope entries with the validation strategy used for them.
Order by severity: CRITICAL -> HIGH -> MEDIUM -> LOW. For each finding:
[SEVERITY] Title — path/to/file.ext:linehigh | medium | low.Only without --fix.
Only with --fix. List each change with file references.
Commands run and outcomes, including skipped checks.
One line per risk: Assumed <assumption>; if wrong, <what breaks>; check via <command or inspection>. Plain language — expand or gloss domain-specific terms. Include questions that need a user decision, phrased directly. Write None. when there are none.
Stop and ask for direction when:
development
Use when creating or substantially redesigning web interfaces, landing pages, dashboards, components, or other frontend UI where visual direction and implementation quality matter. Produces subject-specific art direction, accessible responsive code, and rendered visual verification.
development
Orchestrate one to five Sonnet subagents to implement an approved Claude Code plan.
tools
Open the CoinGecko historical-data page for a coin/date in Chromium via Chrome DevTools MCP.
tools
Orchestrate one to five Codex CLI agents to implement an approved Claude Code plan.