用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/tomevault-io/skills-registry --skill review-post-task命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | review-post-task |
| description | [Code Quality] Two-pass code review for task completion Use when this capability is needed. |
[IMPORTANT] Use
TaskCreateto break ALL work into small tasks BEFORE starting — including tasks for each file read. This prevents context loss from long files. For simple tasks, AI MUST ATTENTION ask user whether to skip.
Prerequisites: MUST ATTENTION READ before executing:
Understand Code First — HARD-GATE: Do NOT write, plan, or fix until you READ existing code.
- Search 3+ similar patterns (
grep/glob) — citefile:lineevidence- Read existing files in target area — understand structure, base classes, conventions
- Run
python .claude/scripts/code_graph trace <file> --direction both --jsonwhen.code-graph/graph.dbexists- Map dependencies via
connectionsorcallers_of— know what depends on your target- Write investigation to
.ai/workspace/analysis/for non-trivial tasks (3+ files)- Re-read analysis file before implementing — never work from memory alone
- NEVER invent new patterns when existing ones work — match exactly or document deviation
BLOCKED until:
- [ ]Read target files- [ ]Grep 3+ patterns- [ ]Graph trace (if graph.db exists)- [ ]Assumptions verified with evidence
Design Patterns Quality — Priority checks for every code change:
- DRY via OOP: Same-suffix classes (
*Entity,*Dto,*Service) MUST ATTENTION share base class. 3+ similar patterns → extract to shared abstraction.- Right Responsibility: Logic in LOWEST layer (Entity > Domain Service > Application Service > Controller). Never business logic in controllers.
- SOLID: Single responsibility (one reason to change). Open-closed (extend, don't modify). Liskov (subtypes substitutable). Interface segregation (small interfaces). Dependency inversion (depend on abstractions).
- After extraction/move/rename: Grep ENTIRE scope for dangling references. Zero tolerance.
- YAGNI gate: NEVER recommend patterns unless 3+ occurrences exist. Don't extract for hypothetical future use.
Anti-patterns to flag: God Object, Copy-Paste inheritance, Circular Dependency, Leaky Abstraction.
Deep Multi-Round Review — THREE mandatory escalating-depth rounds. NEVER combine. NEVER PASS after Round 1 alone.
Round 1: Normal review building understanding. Read all files, note issues. Round 2: MANDATORY re-read ALL files from scratch. Focus on:
- Cross-cutting concerns missed in Round 1
- Interaction bugs between changed files
- Convention drift (new code vs existing patterns)
- Missing pieces (what should exist but doesn't)
Round 3: MANDATORY adversarial simulation (for >3 files or cross-cutting changes). Pretend you are using/running this code RIGHT NOW:
- "What input causes failure? What error do I get?"
- "1000 concurrent users — what breaks?"
- "After deployment rollback — backward compatible?"
- "Can I debug issues from logs/monitoring output?"
Rules: NEVER rely on prior round memory — re-read everything. NEVER declare PASS after Round 1. Final verdict must incorporate ALL rounds. Report must include
## Round 2 Findingsand## Round 3 Findingssections.
Graph Impact Analysis — When
.code-graph/graph.dbexists, runblast-radius --jsonto detect ALL files affected by changes (7 edge types: CALLS, MESSAGE_BUS, API_ENDPOINT, TRIGGERS_EVENT, PRODUCES_EVENT, TRIGGERS_COMMAND_EVENT, INHERITS). Compute gap: impacted_files - changed_files = potentially stale files. Risk: <5 Low, 5-20 Medium, >20 High. Usetrace --direction downstreamfor deep chains on high-impact files.
Logic & Intention Review — Verify WHAT code does matches WHY it was changed.
- Change Intention Check: Every changed file MUST ATTENTION serve the stated purpose. Flag unrelated changes as scope creep.
- Happy Path Trace: Walk through one complete success scenario through changed code
- Error Path Trace: Walk through one failure/edge case scenario through changed code
- Acceptance Mapping: If plan context available, map every acceptance criterion to a code change
NEVER mark review PASS without completing both traces (happy + error path).
Bug Detection — MUST ATTENTION check categories 1-4 for EVERY review. Never skip.
- Null Safety: Can params/returns be null? Are they guarded? Optional chaining gaps?
.find()returns checked?- Boundary Conditions: Off-by-one (
<vs<=)? Empty collections handled? Zero/negative values? Max limits?- Error Handling: Try-catch scope correct? Silent swallowed exceptions? Error types specific? Cleanup in finally?
- Resource Management: Connections/streams closed? Subscriptions unsubscribed on destroy? Timers cleared? Memory bounded?
- Concurrency (if async): Missing
await? Race conditions on shared state? Stale closures? Retry storms?- Stack-Specific: JS:
===vs==,typeof null. C#:async void, missingusing, LINQ deferred execution.Classify: CRITICAL (crash/corrupt) → FAIL | HIGH (incorrect behavior) → FAIL | MEDIUM (edge case) → WARN | LOW (defensive) → INFO
Test Spec Verification — Map changed code to test specifications.
- From changed files → find TC-{FEAT}-{NNN} in
docs/business-features/{Service}/detailed-features/{Feature}.mdSection 15- Every changed code path MUST ATTENTION map to a corresponding TC (or flag as "needs TC")
- New functions/endpoints/handlers → flag for test spec creation
- Verify TC evidence fields point to actual code (
file:line, not stale references)- Auth changes → TC-{FEAT}-02x exist? Data changes → TC-{FEAT}-01x exist?
- If no specs exist → log gap and recommend
/tdd-specNEVER skip test mapping. Untested code paths are the #1 source of production bugs.
Critical Purpose: Ensure quality — no flaws, no bugs, no missing updates, no stale content. Verify both code AND documentation.
MANDATORY IMPORTANT MUST ATTENTION Plan ToDo Task to READ the following project-specific reference docs:
docs/project-reference/code-review-rules.md— anti-patterns, review checklists, quality standards (READ FIRST) (content auto-injected by hook — check for [Injected: ...] header before reading)project-structure-reference.md— service list, directory tree, conventionsIf files not found, search for: project documentation, coding standards, architecture docs.
OOP & DRY Enforcement: MANDATORY IMPORTANT MUST ATTENTION — flag duplicated patterns that should be extracted to a base class, generic, or helper. Classes in the same group or suffix (ex *Entity, *Dto, *Service, etc...) MUST ATTENTION inherit a common base (even if empty now — enables future shared logic and child overrides). Verify project has code linting/analyzer configured for the stack.
Goal: Two-pass code review after task completion to catch issues before commit.
Workflow:
Key Rules:
file:line referencesExecute mandatory two-pass review protocol after completing code changes. Focus: $ARGUMENTS
Activate code-review skill and follow its workflow with post-task two-pass protocol:
Be skeptical. Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence percentages (Idea should be more than 80%).
file:line evidence (grep results, read confirmations)YAGNI — Flag code solving hypothetical future problems (unused params, speculative interfaces, premature abstractions)
KISS — Flag unnecessarily complex solutions. Ask: "Is there a simpler way?"
DRY — Grep for similar/duplicate code across the codebase. If 3+ similar patterns exist, flag for extraction.
Clean Code — Readable > clever. Names reveal intent. Functions do one thing. No deep nesting (≤3 levels). Methods <30 lines.
Follow Convention — Before flagging ANY pattern violation, grep for 3+ existing examples. Codebase convention wins.
No Flaws/No Bugs — Trace logic paths. Verify edge cases (null, empty, boundary). Check error handling.
Proof Required — Every claim backed by file:line evidence or grep results. Speculation is forbidden.
Doc Staleness — Cross-reference changed files against related docs (feature docs, test specs, READMEs). Flag any doc that is stale or missing updates to reflect current code changes.
Before approving, verify the code is easy to read, easy to maintain, easy to understand:
Pass 1: Gather changes (git diff), apply project review checklist:
docs/business-features/, test specs, READMEs — flag stale docs[IMPORTANT] Database Performance Protocol (MANDATORY):
- Paging Required — ALL list/collection queries MUST ATTENTION use pagination. NEVER load all records into memory. Verify: no unbounded
GetAll(),ToList(), orFind()withoutSkip/Takeor cursor-based paging.- Index Required — ALL query filter fields, foreign keys, and sort columns MUST ATTENTION have database indexes configured. Verify: entity expressions match index field order, database collections have index management methods, migrations include indexes for WHERE/JOIN/ORDER BY columns.
Fix issues found.
Pass 2 (MANDATORY — Fresh-Context Round 2): Delegate re-review to a fresh code-reviewer sub-agent for unbiased perspective. The sub-agent has ZERO memory of Pass 1 findings or fixes.
Spawn the sub-agent:
Agent({
description: "Fresh-context Pass 2 holistic review",
subagent_type: "code-reviewer",
prompt: "## Task\nReview ALL uncommitted changes. This is a holistic second-pass review.\nYou are reviewing with completely fresh eyes — no knowledge of any prior review pass.\n\n## Review Scope\nRun git diff to see all uncommitted changes.\n\n## Focus Areas\n- Cross-cutting concerns spanning multiple changed files\n- Interaction bugs between changed files\n- Convention drift (new code vs existing patterns — grep 3+ examples)\n- Missing pieces (what should exist but doesn't)\n- Subtle edge cases (null, empty, boundary, off-by-one)\n- Over-engineering that may not be justified\n- Naming inconsistencies across files\n\nRead docs/project-reference/code-review-rules.md for project standards.\n\n## Output\nReturn structured findings:\n- **Status**: PASS or FAIL\n- **Issues**: [list with file:line evidence]\n- **Issue Count**: {number}\n\nEvery finding MUST have file:line evidence. No speculation."
})
After sub-agent returns, integrate findings into the main report as ## Round 2 Findings (Fresh-Context).
Round 2 Additional Focus:
Note: Round 2 is now performed by a fresh sub-agent. The focus areas above are included in the sub-agent's prompt.
Final Report: Task description, Pass 1/2 results, changes summary, issues fixed, remaining concerns.
/cook, /fix, /code/review-post-task/code-review insteadcode-reviewer subagent for complex reviewsWhen the changeset is large (10+ files), categorize files by concern, fire parallel
code-reviewersub-agents per category, then synchronize findings into a holistic report. Seereview-changes/SKILL.md§ "Systematic Review Protocol" for the full 4-step protocol (Categorize → Parallel Sub-Agents → Synchronize → Holistic Assessment).
Completion ≠ Correctness. Before reporting ANY work done, prove it:
- Grep every removed name. Extraction/rename/delete touched N files? Grep confirms 0 dangling refs across ALL file types.
- Ask WHY before changing. Existing values are intentional until proven otherwise. No "fix" without traced rationale.
- Verify ALL outputs. One build passing ≠ all builds passing. Check every affected stack.
- Evaluate pattern fit. Copying nearby code? Verify preconditions match — same scope, lifetime, base class, constraints.
- New artifact = wired artifact. Created something? Prove it's registered, imported, and reachable by all consumers.
TaskCreate BEFORE startingfile:line evidence for every claim (confidence >80% to act)Converted and distributed by TomeVault — claim your Tome and manage your conversions.