Skip to main content
skill CX Codex

code-review-pro — Claude Code skill: deep review with severity

Reviews files, a module, a diff or a branch and returns severity-ranked findings: vulnerabilities, correctness bugs, performance and maintainability issues, each with evidence and a fix.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add OneWave-AI/claude-skills --skill code-review-pro -a claude-code
Open on GitHub

What code-review-pro does

The skill runs review in stages. First it sets scope: a pasted snippet, specific files, the working-tree diff (git diff, git diff --staged), or a branch against its base (git diff main...HEAD). On a diff it reviews the changed lines but reads enough surrounding code to see how they are called.

Then it learns context: language, framework and version from package.json, pyproject.toml, go.mod; how the code is reached (HTTP handler, job, CLI, library); what input is untrusted; repo conventions. Review follows a fixed order — security, correctness and edge cases, performance, maintainability. Vulnerabilities are mapped to OWASP Top 10:2025.

Every candidate finding gets verified before it lands in the report: the skill traces the data flow, checks whether anything upstream already validates or escapes the input, and looks for a covering test. If it can run code, it reproduces the bug. Output is grouped as Critical, High, Medium, Low, with a verdict of Ship / Ship after fixes / Do not ship and a short "What is solid" section. The skill's own guidance is blunt: more than about 15 findings buries the critical ones, and every Fix block has to compile for the version in the repo. Posting line comments on a GitHub pull request is a different job — that is git-pr-reviewer.

What it helps with

  • catch a SQL injection in user search before shipping
  • tell what is wrong with a branch diff before merge
  • separate real bugs from linter noise
  • check whether input is validated one layer up
  • collect evidence and fixes into one severity-ranked report

Example prompts for the agent

  • Review this branch against main and rank the findings by severity
  • Look at git diff --staged — any vulnerabilities or bugs in there?
  • Audit src/api/users.ts for security and performance

How to install code-review-pro

1Skills CLI (Vercel)

npx skills add OneWave-AI/claude-skills --skill code-review-pro -a claude-code

2Manually: put the files in place

~/.claude/skills/code-review-pro/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/code-review-pro/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about code-review-pro

How do I install code-review-pro in Claude?

Run npx skills add OneWave-AI/claude-skills --skill code-review-pro -a claude-code. The skill then lives at ~/.claude/skills/code-review-pro/SKILL.md.

What does code-review-pro do?

It performs a deep review of files, a module, a diff or a branch: security vulnerabilities mapped to OWASP Top 10:2025, correctness bugs, performance and maintainability problems. Findings come back severity-ranked with evidence and concrete fixes.

How is code-review-pro different from git-pr-reviewer?

code-review-pro reviews the code and writes a report. To post line comments on a GitHub pull request, use git-pr-reviewer.

Source text

SKILL.md · MIT
---
name: code-review-pro
description: Performs a deep code review of files, modules, a diff, or a branch - finding security vulnerabilities (mapped to OWASP Top 10:2025), correctness bugs, performance problems, and maintainability issues - and returns severity-ranked findings with evidence and concrete fixes. Use when the user asks to review, audit, or sanity-check code, asks "is this safe", "what's wrong with this", "find bugs", or wants a security or performance pass before shipping. For posting line comments on a GitHub pull request, use git-pr-reviewer.
---

# Code Review Pro

Find the problems that matter, prove each one, and show the fix. A short list of real issues beats a long list of maybes.

## Workflow

1. **Set the scope.** Decide what is under review: a pasted snippet, specific files, the working-tree diff (`git diff`, `git diff --staged`), or a branch against its base (`git diff main...HEAD`). For a diff, review the changed lines but read enough surrounding code to know how they are called.

2. **Learn the context before judging.** Identify language, framework and version (check `package.json`, `pyproject.toml`, `go.mod`, and so on), how the code is reached (HTTP handler, job, CLI, library), what input is untrusted, and any repo conventions (linters, `CLAUDE.md`, existing patterns). A pattern that is a bug in one framework can be safe in another; for example, React escapes JSX text, so XSS lives in `dangerouslySetInnerHTML`, `href` values, and raw HTML sinks.

3. **Review in priority order**, using [references/checklist.md](references/checklist.md):
   1. Security
   2. Correctness and edge cases
   3. Performance
   4. Maintainability and conventions

4. **Verify every finding before reporting it.** For each candidate, trace the data flow: where does the input come from, can an attacker or real user control it, and does anything upstream already validate or escape it? Check whether a test covers it. If you can run code, reproduce the bug with a small test or script. Drop findings you cannot support; mark the rest with a confidence level.

5. **Rank and write the report** in the format below. Lead with the highest severity. Group repeated instances of one problem into a single finding with all locations.

## Severity

- **Critical** - exploitable now or causes data loss/corruption: injection with user input, auth bypass, secrets in code, broken access control on real data.
- **High** - likely bug or vulnerability under realistic conditions: race on shared state, missing authorization check, unbounded query on a user-facing path, swallowed errors that hide failures.
- **Medium** - correct today but fragile: missing input validation behind a trusted caller, N+1 queries on small data, confusing ownership of state.
- **Low** - style, naming, small simplifications. Report at most a handful; skip anything a linter or formatter already enforces.

## Output format

````markdown
# Code Review: [scope]

**Verdict**: [Ship / Ship after fixes / Do not ship] - [one sentence why]
**Findings**: [n] critical, [n] high, [n] medium, [n] low

## Critical

### 1. SQL injection in user search (`src/api/users.ts:42`)
**Category**: A05:2025 Injection | **Confidence**: High
**Evidence**: `q` comes from `req.query` and is interpolated into the SQL string; no validation upstream.
**Impact**: Any caller can read or modify arbitrary tables.

Current:
```ts
const rows = await db.query(`SELECT * FROM users WHERE name LIKE '%${q}%'`);
```

Fix:
```ts
const rows = await db.query("SELECT * FROM users WHERE name LIKE $1", [`%${q}%`]);
```

## High
...

## Medium
...

## Low
- `utils/date.ts:10` - [one line]

## What is solid
[Two or three specific things done well, so the author knows what to keep.]

## Not reviewed
[Files, paths, or concerns outside scope or that could not be verified.]
````

## Traps that cause bad reviews

- **Reporting without reading the caller.** "Missing validation" is often validated one layer up. Look before flagging.
- **Generic advice.** "Consider adding error handling" is not a finding. Name the failure: which call throws, what the user sees, what state is left behind.
- **Style as severity.** Line length, bracket placement, or personal preference never rank above Low.
- **Outdated rules.** Check against the version in use: `useMemo`/`useCallback` advice changes when the React Compiler is enabled, and many Node APIs now ship built-ins (`fetch`, `crypto.randomUUID`, `node:test`).
- **Fixes that do not compile.** Every "Fix" block must be valid for the language and version in the repo. If unsure, say so.
- **Flooding.** More than about 15 findings buries the critical ones. Summarize the long tail in one line.

© OneWave-AI · MIT · OneWave-AI/claude-skills

Similar skills

Everything for Code review and refactoring →

From the same set58

landing-page-copywriter Writes conversion copy for landing pages, waitlists, and pricing tables using PAS, AIDA, or StoryBrand. Generates structured sections and headline variants without touching frontend code. CX Codex +1 6,500installs screenshot-to-code Turns a screenshot, mockup or Figma export into working front-end code, then renders it and compares the result against the image. Handy when the design exists but the markup does not. CX Codex +1 1,300installs csv-excel-merger A skill that folds several CSV, TSV and Excel files into one: stacks, joins on a key, drops duplicates and checks the row math. CX Codex +1 1,200installs technical-writer Writes and restructures READMEs, tutorials, how-to guides, runbooks and release notes grounded in the actual code. Useful when new developers need to understand a project. CX Codex +1 1,000installs sports-betting-analyzer Analyzes spreads, over/unders, and prop bets using historical trends and situational stats. Built for educational and entertainment betting analysis. CX Codex +1 808installs css-animation-creator A coding-agent skill for writing CSS animations, transitions, micro-interactions and scroll effects. Useful when you need motion in a UI without hand-tuning every duration. CX Codex +1 805installs job-application-optimizer This skill rewrites your resume for a specific posting, drafts a cover letter and builds interview questions. Useful when an application has to go out today. CX Codex +1 698installs knowledge-base-builder Turns support tickets into knowledge base articles: FAQ sections, step-by-step tutorials with screenshot placement, video scripts and deflection metrics. CX Codex +1 667installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor