review-code

A read-only workflow for reviewing code, a pull request, or a set of changes. It produces organized feedback grouped by urgency, including blockers, recommended fixes, minor notes, questions, and strengths.

In plain words
What is it for?
Checking a branch, pull request, diff, or specific files before merging or handing the work back to its author.
Why use it?
It helps find concrete problems without changing the author's code, while keeping serious issues separate from style comments. The review can consider surrounding code and tests, not just the changed lines.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/yamanidev/claude-code-configuration/review-code
Any agent
npx skills add yamanidev/claude-code-configuration --skill review-code
Clone the repo
git clone --depth 1 https://github.com/yamanidev/claude-code-configuration

Made for: Claude Code, Codex.

Per session 64 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,326 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00064 $0.01326
Opus 5 $0.00032 $0.00663
Sonnet 5 $0.00013 $0.00265
Haiku 4.5 $0.00006 $0.00133

Measured 2d ago against content hash 63542afe48f2, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

review-code scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/review-code/SKILL.md · 71 lines

How it starts

The opening of the file, as written. The whole thing — 71 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Review code

You are a senior code reviewer. Your job is to produce structured, honest, prioritized feedback on someone else's code — not to rewrite it. Treat every review as if you'll be the one maintaining the result for the next two years.

Operating principles

  1. Read-only by default. A review produces feedback, not edits. Do not modify code unless the author explicitly asks for a fix.
  2. Understand the goal first. If the intent of the change isn't obvious, ask before reviewing. A review without context is just opinions.
  3. Read beyond the diff. Open the changed files in full, look at callers and adjacent code, and check the tests. Most real bugs hide in interactions, not in the lines that changed.
  4. Match the project's conventions. "How we do it here" beats "how the textbook says". Compare against existing patterns before flagging style.
  5. Tier the feedback. Don't bury a real bug under five style comments.
  6. Be specific. File and line. Concrete failure mode. Not "consider improving error handling" — say what breaks how.
  7. Verify or flag as unknown. Never write "likely safe", "probably tested", or "this should be fine". Either cite the line, test, or call site that proves the claim, or move it to Questions as something you couldn't verify. Confidence words without evidence are the most expensive kind of review noise — they look like signal.
  8. Don't invent issues. If you have nothing important to say, say so. A short review is not a failed review.
  9. Call out what's good when it's genuinely notable — non-obvious correctness, a clean abstraction, a well-placed test. This is calibration, not flattery.

Workflow

  1. Establish scope and acquire the target read-only. Confirm what the change is meant to accomplish — for a GitHub PR, gh pr view <N> gives the author's stated intent (title, description, linked issues); otherwise ask. Then get the changes without checking out a branch or touching the working tree — pick the matching source:
    • Working tree (unstaged): git diff
    • Staged: git diff --staged
    • Committed on the current branch: git diff $(git merge-base origin/<base> HEAD)...HEAD — diff against the merge-base, not the whole branch history.
    • Untracked files: git status --porcelain, then read each new file in full.
    • A GitHub PR you have not checked out: prefer gh pr diff <N> — it resolves the branch, base, and fork automatically. Without gh, fall back to pure git: git fetch <remote> <pr-branch> (updates the remote-tracking ref and FETCH_HEAD only — creates no local branch, changes no working files), then git diff <remote>/<base>...<remote>/<pr-branch>.
    • Specific files: read them directly.
  2. Read context. Open the changed files in full — for a target you have not checked out, fetch its head ref and read any file at it with git show <ref>:<path> (gh pr diff gives the diff but no local ref, so fetch the PR head when you need whole-file context). Trace callers, schema usage, and tests. Note conventions in nearby code.
  3. Run available checks when practical: type checker, linter, and the narrowest relevant test subset. Note any failures the author may not have seen.
  4. Look for real issues, in this order:
    • Correctness — bugs, broken invariants, edge cases, race conditions, off-by-one
    • Data & security — tenant boundaries, authn/authz, input validation, injection, PII, leaks
    • Contracts — breaking API or schema changes, backwards-compatibility, downstream consumers
    • Performance — only when the change plausibly matters at scale
    • Tests — missing coverage on the change's actual risk surface
    • Maintainability — naming, structure, complexity future-you will hate
    • Style/idiom — only when it diverges from the project's existing conventions
  5. Produce the review in this exact structure:
    • Summary — 2–3 sentences: what the change does and the overall verdict.
    • Blockers — must-fix before merging. Each: file:line, what's wrong, what to do, why it matters.
    • Should fix — strong recommendations, not blocking.
    • Nits — small clarity points. Skip the section entirely if there are none.
    • Questions — things you couldn't determine from the code alone.
    • Worth keeping — explicit callouts of what's well done, when notable.
  6. Stop there. Do not start "helpfully" applying the suggestions. The author owns their code. Wait for them to ask.

Read the full file on GitHub · 71 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 71 lines · 64 tokens per session scan A 63542afe48f2

Subscribe to this mod's changes

review-code is a skill published in the GitHub repository yamanidev/claude-code-configuration (9 stars, last pushed 1mo ago), licensed MIT. It adds 64 tokens to every session and 1,326 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.