dist/cursor/dev-flow/skills/reviewing-code/SKILL.md
Use when reviewing changed code, PRs, diffs, or specific files. Finds evidence-backed defects in security, correctness, tests, reliability, performance, maintainability, and docs. Supports quick, standard, deep, team, and external-review modes. NOT for repo-wide architecture review, general codebase exploration, fixing issues (use fixing-code), improving tests without a code review (use improving-tests), or applying refactors (use refactoring-code).
npx skillsauth add alexei-led/claude-code-config reviewing-codeInstall 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.
Produce findings, not edits. Review only the requested diff, PR, changed files, or file list. If scope or diff context is missing, ask one clarifying question.
Read references/severity-rubric.md before scoring or reporting findings.
Load language references only for languages present in scope:
references/csharp.mdreferences/go.mdreferences/java-kotlin.mdreferences/python.mdreferences/rust.mdreferences/typescript.mdreferences/web.mdUnsupported language: use this skill and the severity rubric only; report reduced coverage.
Default mode is standard unless the user asks otherwise.
Quick:
Standard:
Deep:
Team:
file:line plus claim. Keep the strongest severity only when evidence supports it.External:
Use the user's named scope without asking. Otherwise choose one:
Tool-enabled role: use the matching git or PR command consistently for the whole review. Read-only role: work from supplied diff, file list, and tool output. If that context is absent, ask for it instead of guessing.
If there are no changes in scope, report Nothing to review.
For each scoped language:
A change-history graph tool (such as GitNexus), when installed, is useful for PRs, broad diffs, public API changes, and missed caller/test coverage:
A code dependency graph tool (such as codegraph), when installed, is useful for dependency/call blast radius and high fan-in surfaces:
Security, correctness, tests, reliability, performance, maintainability,
simplicity (over-engineering), and docs. Scope and coverage checklist per
dimension: references/severity-rubric.md.
Simplify focus:
file:line — <tag> <what>. <replacement>. Tags: delete (dead or speculative, nothing replaces it), stdlib / native (name the function or platform feature), yagni (one implementation, inline it), shrink (same logic, fewer lines).net: -N lines possible. Nothing to cut: Lean already. Ship.file:line or quoted tool output.If the user asks for a score, apply references/severity-rubric.md exactly:
Do not invent precision. Use one decimal only when arithmetic needs it.
## Code Review Summary
Scope: <description>
Depth: quick | standard | deep | team | external
Languages: <list>
Coverage: complete | partial — <reason>
Graph evidence: none | <graph tool(s) used> — <freshness/gaps>
External review: not requested | completed | unavailable | skipped — <reason>
Score: <N/10 if requested> — confidence <high|medium|low>
### Critical
- `file:line` — <category>, confidence <level>. <issue> Scenario: <how it fails>. Fix: <concrete fix>.
### Warnings
- `file:line` — <category>, confidence <level>. <issue> Scenario: <how it fails>. Fix: <concrete fix>.
### Suggestions
- `file:line` — <category>, confidence <level>. <improvement>. Fix: <concrete fix>.
### Needs review
- `file:line or tool/context gap` — <missing context and why it matters>.
### Summary
<2-3 sentences with merge risk and next actions. Say "No confirmed findings" when clean.>
Omit empty severity sections except Needs review when it explains partial coverage.
tools
Use when planning, executing, checkpointing, finishing, or inspecting lightweight spec-driven work. Runs one task at a time using `.spec/` markdown files and the bundled `specctl` helper. NOT for broad product discovery beyond a short requirement interview. NOT for generic implementation planning that does not read or write `.spec/` files.
development
Simple web development with HTML, CSS, JS, and HTMX. Use when working with .html, .css, or .htmx files, web templates, stylesheets, or vanilla JS scripts. NOT for React/Vue/Angular (use writing-typescript) or Node.js backends.
tools
Idiomatic TypeScript development. Use when writing TypeScript code, Node.js services, React apps, or TypeScript design advice. Emphasizes strict typing, boundary validation, composition, fast feedback, behavior tests, and project-configured tooling. NOT for Go, Python, Rust, plain HTML/CSS/JS, or server-rendered templates (use writing-web).
tools
Idiomatic shell development for POSIX sh, Bash, Zsh, Fish, hooks, CI shell steps, and scriptable CLI glue. Use when writing or changing `.sh`, `.bash`, `.zsh`, `.fish`, `.bats`, shell functions, shell pipelines, CI `run:` shell bodies, or command-runner recipes. Emphasizes portability, quoting, safe filesystem/process handling, non-TUI CLI tools, ShellCheck, shfmt, Bats, and ShellSpec. NOT for Python, Rust, TypeScript, Go, web code, or GitHub Actions workflow/job/permissions semantics; use operating-infra.