review

review is a skill for Claude Code, Codex from luohy15/y-agent. It costs 43 tokens per session (3,139 once invoked), scanned A, original, MIT.

A review tool for checking code changes against a written plan and basic quality requirements.

In plain words
What is it for?
Use it to review local worktree changes or a pull request after implementation is finished.
Why use it?
It provides an approve-or-request-changes decision before changes are committed, without modifying the code.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions AGENTS.md.

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/luohy15/y-agent/review
Any agent
npx skills add luohy15/y-agent --skill review
Clone the repo
git clone --depth 1 https://github.com/luohy15/y-agent

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for review

README.md
[![agentmods](https://agentmods.dev/badge/skills/luohy15/y-agent/review.svg)](https://agentmods.dev/skills/luohy15/y-agent/review)
Your own site
<a href="https://agentmods.dev/skills/luohy15/y-agent/review"><img src="https://agentmods.dev/badge/skills/luohy15/y-agent/review.svg" alt="Measured on agentmods" height="20"></a>
Per session 43 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,139 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. 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.1 $0.00043 $0.03139
Opus 5 $0.00022 $0.01570
Sonnet 5 $0.00009 $0.00628
Haiku 4.5 $0.00004 $0.00314

Measured 5d ago against content hash 25f6280819fc, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

review scanned grade A with 1 finding 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 5d 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.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

with the command, `curl`, or test suite and compare to what the plan or todo said. These
orchestration/skills/review/SKILL.md · 222 lines

How it starts

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

Review Skill

Leaf skill for reviewing impl output. Effect first, code second: confirm the change is right via the cheapest appropriate check (static gates for UI, cheap non-browser runtime for API/CLI), then do a light pass over the code against the plan note. Agent-driven browser inspection and screenshots are opt-in (AGENTS.md), not a default review step. Produces a review note. Does not change code, commit, or merge.

Loaded via y chat --skill review, usually dispatched by the dev coordinator after the impl callback (and before y dev commit), or directly for an ad-hoc audit.

Working mode

Runs inside the worktree being reviewed (the caller passes --work-dir <worktree_path>), or in the project main directory if reviewing a PR.

Workflow

  1. y todo get <todo_id>: read the todo desc plus the linked plan note.
  2. Get the diff:
    • Worktree-local: git status + git diff + git diff --cached (uncommitted changes)
    • Already committed in the worktree: git log <base>..HEAD + git diff <base>..HEAD
    • PR: gh pr diff <pr-number> (or gh pr view <pr-number>)
  3. Read the plan note (linked to the todo). That is your spec.
  4. Smoke-verify the effect FIRST, before reading code line by line: confirm the change is right with the cheapest appropriate check. A clean-looking diff that clearly cannot produce the plan's effect is still request-changes.
    • UI / visual-delta changes (layout or style, a new or restyled component, a changed rendered value or format, hover/menu state, responsive fit): the default is the AGENTS.md static gate (typecheck or build, lint, non-browser tests). Do not start a dev server or drive a browser as routine review self-verification; screenshots are also opt-in. Runtime UI acceptance is left to the user unless they explicitly asked. When they did ask and you capture a PNG, persist it under $Y_AGENT_HOME/assets/screenshots/, never /tmp, and cite the full path.
    • Non-UI runtime effects (CLI output, API response, cheap scriptable smoke): reproduce with the command, curl, or test suite and compare to what the plan or todo said. These stay allowed and are preferred over pure code reading when cheap.
    • If a requested runtime check cannot be done here (no runnable surface, needs production data or secrets you lack), say so explicitly in the note and fall back to verifying that the plan's stated verify step is satisfiable. Do not silently skip it and claim it works.
  5. Light code pass, only after the effect checks out. Review against:
    • Plan adherence: did impl do what the plan said? Anything skipped, anything out-of-scope added?
    • Surgical scope: every changed line should trace to a plan sub-task. Flag refactors of adjacent code, reformatting, or unrequested "improvements". Pre-existing dead code deleted by impl is also a finding unless the plan called for it.
    • Verifiability: each completed sub-task has an obvious way to confirm it works (the plan's verify step is satisfied, or impl recorded a concrete check). "I think it works" is a finding.
    • Correctness: obvious bugs, off-by-ones, wrong types, missing error paths.
    • Code quality: dead code, duplicated logic, unclear naming, comments stating the obvious.
    • Consistency: matches surrounding code style and existing conventions.
  6. Write the review note. First decide whether this is a new note or a new round on an existing one (see "One deliverable, one note"). The path is $Y_AGENT_HOME/pages/review-<todo_id>-<slug>.md (absolute path: --work-dir is a worktree, but the review file must land in the top-level pages/), where <slug> names the deliverable, never the round:
    ---
    title: review for todo <id> — <slug>
    type: review
    project: <project>
    todo: <todo-id>
    verdict: approve | request-changes | partial
    rounds: <n>
    ---
    
    ## Verdict
    approve | request-changes | partial (context handoff, see "Not yet reviewed")
    Round <n>, <YYYY-MM-DD>. <one line: what this round covered / what changed since the last one>
    
    ## Open findings (blocking)
    - [file:line] description — why it matters
    (empty on approve; this section is the live list across rounds, not per-round history)
    
    ## Round <n> — <YYYY-MM-DD> — <verdict>
    
    ### Smoke verification (effect)
    - checks run: static gate (typecheck/build/tests) and/or cheap non-browser runtime; what was observed
    - browser UI / screenshot only if the user asked: how it was inspected + path(s) under assets/screenshots/
    
    ### Plan adherence
    - …
    
    ### Findings (request-changes)
    - [file:line] description — why it matters
    
    ### Suggestions (nit, non-blocking)
    - …
    
    Round 1 fills ## Round 1. A re-review appends ## Round <n+1> at the end and rewrites the header block (front-matter verdict / rounds, ## Verdict, ## Open findings) so the top of the file always states the current state. Never edit a past round's text; resolve its findings by saying so in the new round.
  7. Link the review to the todo: y assoc note pages/review-<todo_id>-<slug>.md --todo <todo_id> (this CLI takes the path relative to $Y_AGENT_HOME). Run it on appended rounds too; it is idempotent when the note is already linked.
  8. Call back to the caller with the verdict and the review note path, then stop. No repeat of the findings in this chat (AGENTS.md "Callback rules"): the note holds them and the coordinator reports to the user.
    y chat --chat-id <from_chat> -m "review done: <approve|request-changes>, see $Y_AGENT_HOME/pages/review-<todo_id>-<slug>.md" \
      ${Y_TOPIC:+--from-topic $Y_TOPIC} --trace-id <todo_id>
    
    On request-changes, the verdict plus the note path is the complete callback; at most add a clause naming how many blocking findings there are. Never enumerate findings in -m. The coordinator re-dispatches impl pointed at the note.

Read the full file on GitHub · 222 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. 5d ago First seen · 222 lines · 43 tokens per session scan A 25f6280819fc

Subscribe to this mod's changes

review is a skill published in the GitHub repository luohy15/y-agent (219 stars, last pushed 4d ago), licensed MIT. It adds 43 tokens to every session and 3,139 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

local-ai-agents

Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…

microsoft/ai-agents-for-beginners · 200 tokens

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens

next-partial-prefetching-adoption

Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…

vercel/next.js · 103 tokens

chronicle

Analyze Copilot session history for standup reports, usage tips, session search, and session reindexing. Use when the user asks for a standup, daily summary, usage tips, workflow recommendations, wants to search or find past sessions by keyword/file/PR, wants to reindex their session store, or asks about deleting…

microsoft/vscode · 72 tokens

imagegen

Generate or edit raster images when the task benefits from AI-created bitmap visuals such as photos, illustrations, textures, sprites, mockups, or transparent-background cutouts. Use when Codex should create a brand-new image, transform an existing image, or derive visual variants from references, and the output…

openai/codex · 113 tokens