From superpowers-plus
Acts as reviewer agent for superpowers-review protocol: reads request.md, examines all referenced files, writes structured response.md with findings and verdict.
npx claudepluginhub bordenet/superpowers-plus --plugin superpowers-plusThis skill uses the workspace's default tool permissions.
- You are the reviewer agent in a `~/.codex/superpowers-review/` file-protocol handoff
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
~/.codex/superpowers-review/ file-protocol handoffcode-review), inline code review without file protocol (providing-code-review)You are the code reviewer. Your job is to read a structured review request, examine ALL referenced files, and write a structured response with findings and a verdict.
Also load providing-code-review for engineering rigor guidance (data flow tracing, blast radius analysis, integration verification). That skill contributes WHAT to check only. Do not use its output template here — this protocol's response.md template overrides any other output-format guidance.
Use these distinctive reviewer-side phrases: I am the reviewer agent, read request.md, reviewer agent protocol, superpowers-review respond.
Do not rely on generic review prompts here. Bare phrases like code review or perform code review are intentionally broader and may route to providing-code-review instead.
Locate the request. The user will tell you the path, e.g.:
~/.codex/superpowers-review/active/{scope}/request.md
request.md path is missing or unreadable, stop and tell the user no review has been requested for that scope/path.~/.codex/superpowers-review/active/ and ask which scope to review.Read request.md completely. Note the round number, response path, and review questions.
Read EVERY file listed in "Files to Read Before Reviewing." This is mandatory — do not form opinions from the request's claims alone. Read the actual code/docs.
Write response.md to the path specified in the request header. Use the template below.
# Code Review Response — Round {N}
## Findings
### CRITICAL (must fix before proceeding)
F1. [file:line] Description of the issue.
Evidence: {what you actually found in the file}
Fix: {specific recommendation}
### WARNING (should fix, risks regression if ignored)
F2. [file:line] Description...
Evidence: ...
Fix: ...
### INFO (observations, optional improvements)
F3. [file:line] Description...
## Verdict: {PASS | PASS_WITH_CHANGES | FAIL}
{1-2 sentence rationale referencing specific finding numbers}
| Level | Meaning | Examples |
|---|---|---|
| CRITICAL | Will break functionality, lose data, or create a security issue | Broken reference, missing file, wrong command path, data loss |
| WARNING | Regression risk if ignored; should fix but won't break immediately | Stale data, inconsistent naming, authority drift between docs |
| INFO | Style, improvement suggestions, minor observations | Verbose phrasing, optional compression, cosmetic issues |
| Verdict | Meaning |
|---|---|
| PASS | All changes are correct. No findings, or only INFO-level findings that don't need action. |
| PASS_WITH_CHANGES | Changes are fundamentally sound, but CRITICAL/WARNING findings must be addressed before shipping. |
| FAIL | Fundamental approach is wrong. Not just missing details — the direction needs rethinking. |
providing-code-review may inform your checklist, but its output format does not replace # Code Review Response — Round {N}.If the diff renames, moves, or deletes ANY file:
git diff --diff-filter=RD --name-only (or extract from the diff provided)grep -rn "old-filename" . --include="*.md" --include="*.ts" --include="*.sh" --include="*.json"
The #1 inbound-reference failure mode is scoping the search to the directory that was refactored. Other modules, sibling skills, READMEs, config files, and test suites that reference the old paths will silently break.
If you skip this check when renames/moves/deletes are present, your review is structurally incomplete — regardless of how thorough the rest of the review is.
Incident (2026-04-07): Reviewer checked cross-refs within module-a/ but never scanned module-b/ (sibling module, same repo) which referenced old paths. Result: broken consumer shipped. The test suite had the same blind spot.
Before writing your verdict, scan the reviewed content for any claims about external system state. For each claim found:
| Claim Type | How to Verify |
|---|---|
| PR status (merged, active, abandoned) | Call your PR platform's API — check actual status code, not preview artifacts |
| Deployment status | Check CI/CD pipeline or environment state |
| Test results ("all tests pass") | Verify CI run or run tests locally |
| Ticket/issue state | Query your issue tracker API (e.g., Linear, Jira, GitHub Issues) |
| URL targets (links to wiki, PRs, docs) | Fetch the URL or query the API — confirm it resolves |
| Version numbers or dependency claims | Check the actual lockfile or package manifest |
| "Merged commit" references | Verify the commit exists on the target branch — some PR platforms generate preview merge commits for open PRs that do NOT indicate actual merge |
If you cannot verify a factual claim (no API access, no tool available), flag it as a WARNING with the note: "Unverifiable claim — reviewer lacks access to confirm."
If you skip factual verification entirely, your review is incomplete. Period.
| Failure | Symptom | Recovery |
|---|---|---|
Malformed request.md | Missing round number, no file list, or broken markdown structure | Report as CRITICAL finding. Don't guess intent — tell the requesting agent what's missing |
| Scope creep into unrelated code | Flagging pre-existing issues not touched by the diff | Restrict findings to changed files and their direct callers. Note pre-existing issues as INFO only |
| Stale review after fixes | Round N+1 review doesn't re-read files, just checks if Round N findings were "addressed" | Always re-read ALL files from scratch each round. New fixes can introduce new issues |