review
On-demand code review of current changes with automated checks and structural analysis
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
On-demand code review of current changes with automated checks and structural analysis
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Automatically implement all sub-issues of an epic in dependency order
Implement a GitHub issue with automated PR creation
End-of-session retrospective. Captures knowledge from any working session (debug, implementation, config, deployment) as reusable scripts, CLAUDE.md procedures, or skill proposals. Run before ending a session to prevent knowledge loss.
Decompose a large GitHub issue into sub-issues and create a tracking draft PR
OWASP-guided security code review for a specific domain or issue
Project kickoff checklist based on lessons learned from previous projects. Generates a tailored checklist and optionally creates GitHub issues.
| name | review |
| description | On-demand code review of current changes with automated checks and structural analysis |
| argument-hint | [--staged|--branch|--file PATH] |
| user-invocable | true |
On-demand code review of current changes. Combines automated checks (fast, deterministic) with structural analysis (Claude reasoning about patterns and quality).
Scope is determined by $ARGUMENTS:
git diff)--staged: staged changes only (git diff --cached)--branch: all changes on current branch vs base (git diff $(git merge-base HEAD $(~/.claude/bin/git-find-base-branch))..HEAD)--file PATH: single file review (read file + git diff -- PATH)$ARGUMENTS as described abovegit diff command and capture the outputgit diff --name-only (with the same scope flags)Store the diff output and changed file list for subsequent phases.
Run these deterministic checks on the diff output. These are fast pattern matches — do not reason about context yet.
For each check, record findings with severity and location.
Search the diff for added lines (+ prefix) containing:
print(, breakpoint(), import pdb, pdb.set_trace, import ipdbconsole.log, console.debug, console.warn, debuggerTODO REMOVE, HACK, XXXSeverity: MEDIUM (debug statements should not ship)
Search added lines for:
API_KEY=, SECRET_KEY=, PASSWORD=, TOKEN= followed by a literal value (not env var reference)https://user:pass@)-----BEGIN.*PRIVATE KEY-----)Severity: CRITICAL
For each changed file, count the number of changed lines. Flag files with:
Severity: LOW (informational)
Search added lines for TODO or FIXME not followed by #<number> or a URL.
Severity: LOW
Now reason about the changes in context. For each check below, read relevant source files as needed.
For each new function or significant code block in the diff:
Severity: MEDIUM
Flag hardcoded values in the diff that should be constants, enums, or configuration:
Severity: MEDIUM
Check if new code at system boundaries (API endpoints, external service calls, file I/O) has appropriate error handling:
except: or .catch(() => {}))Severity: HIGH (at boundaries), LOW (internal code)
Compare the changed code against existing patterns in the same codebase:
Severity: MEDIUM
For each changed source file (skip test files, configs, docs):
Determine the test file naming convention by checking existing tests:
test_<name>.py, <name>_test.py<name>.test.ts, <name>.spec.ts, <name>.test.tsx, <name>.spec.tsxSearch for matching test files using Glob:
**/test_<basename>* / **/<basename>.test.* / **/<basename>.spec.*If a test file exists, check if it imports or references the changed module:
Classify coverage:
Report the mapping as a table.
Generate the review report in this format:
## Code Review Report
**Scope:** <git diff description>
**Files reviewed:** <count>
### Findings
| # | Severity | Category | Finding | Location | Suggestion |
|---|----------|----------|---------|----------|------------|
| 1 | CRITICAL | Secret | Hardcoded API key | src/config.py:42 | Move to environment variable |
| 2 | HIGH | Error handling | Uncaught exception from external API | src/api.py:88 | Add try/except with proper error response |
| ... | ... | ... | ... | ... | ... |
### Test Coverage
| Source File | Test File | Coverage | Notes |
|------------|-----------|----------|-------|
| src/auth.py | tests/test_auth.py | COVERED | Imports changed functions |
| src/utils.py | — | MISSING | No test file found |
### Verdict
**<PASS / WARNINGS / NEEDS WORK>**
<Summary: what's good, what needs attention>
Verdict rules: