From claude-dev-team
Multi-axis code review before merge across correctness, readability, architecture, security, and performance. Use before merging any PR, after completing a feature, when evaluating code produced by another agent or model, during refactors, or after a bug fix (review both the fix and the regression test). Produces categorized findings (Critical / Important / Suggestion / Nit) and an APPROVE or REQUEST CHANGES verdict. Do not use for deep security audits (use security-and-hardening + Barb), for verifying a running feature end-to-end (use acceptance-exploration + Negev), for writing tests (use test-driven-development), or for committing curated changes (use git-workflow-and-versioning + Hubert).
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-dev-team:code-review-and-qualityThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Evaluate proposed changes across five axes and return categorized findings with an approve-or-request-changes verdict. Approve when the change definitely improves overall code health — perfect code doesn't exist, and "not how I would have written it" is not a valid reason to block.
Evaluate proposed changes across five axes and return categorized findings with an approve-or-request-changes verdict. Approve when the change definitely improves overall code health — perfect code doesn't exist, and "not how I would have written it" is not a valid reason to block.
Invoked primarily by the watson agent (~/.claude/agents/code-reviewer.md). Follow directly when no persona is needed.
Every review evaluates code across these dimensions.
Does the code do what it claims to do?
Can another engineer (or agent) understand this without the author explaining it?
temp, data, result without context)_unused), backwards-compat shims, // removed commentsDoes the change fit the system's design?
Spot-check at review boundaries. For deep audits, delegate to security-and-hardening + Barb.
Spot-check at review boundaries. For deep profiling, delegate to performance-optimization.
Small, focused changes are easier to review, faster to merge, and safer to deploy.
~100 lines changed → Good. Reviewable in one sitting.
~300 lines changed → Acceptable if it's a single logical change.
~1000 lines changed → Too large. Split it.
One change = a single self-contained modification that addresses one thing, includes related tests, and keeps the system functional after submission. One part of a feature — not the whole feature.
When a change is too large, split it:
| Strategy | How | When |
|---|---|---|
| Stack | Submit a small change, start the next one on top | Sequential dependencies |
| By file group | Separate changes for groups needing different reviewers | Cross-cutting concerns |
| Horizontal | Create shared code/stubs first, then consumers | Layered architecture |
| Vertical | Break into smaller full-stack slices | Feature work |
Large changes are acceptable for complete file deletions and automated refactoring where the reviewer only verifies intent, not every line.
Separate refactoring from feature work. A change that refactors existing code and adds new behavior is two changes — submit them separately. Small cleanups (variable renames) can ride along at reviewer discretion.
Every change needs a description that stands alone in version control history.
Before reading code, understand the intent:
Tests reveal intent and coverage:
Walk each changed file with the five axes in mind: correctness → readability → architecture → security → performance.
Label every comment with severity so the author knows what's required vs optional:
| Prefix | Meaning | Author action |
|---|---|---|
| Critical: | Blocks merge | Security vulnerability, data loss, broken functionality |
| (no prefix) | Required change | Must address before merge |
| Nit: | Minor, optional | May ignore — formatting, style preferences |
| Optional: / Consider: | Suggestion | Worth considering, not required |
| FYI | Informational only | No action — context for future reference |
Unlabeled feedback gets treated as mandatory. Label everything.
Check the author's verification story:
## Review Summary
**Verdict:** APPROVE | REQUEST CHANGES
**Overview:** <1-2 sentences summarizing the change and overall assessment>
### Critical Issues
- [file:line] <Description and recommended fix>
### Important Issues
- [file:line] <Description and recommended fix>
### Suggestions
- [file:line] <Description>
### What's Done Well
- <Positive observation — always include at least one>
### Verification Story
- Tests reviewed: <yes/no, observations>
- Build verified: <yes/no>
- Security checked: <yes/no, observations>
Slow reviews block entire teams. The cost of a context-switch to review is less than the waiting cost imposed on others.
references/review-culture.md.references/advanced-patterns.md.Review is complete when:
npx claudepluginhub jasonjgarcia24/claude-dev-team --plugin claude-dev-teamGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.