Multi Review
Multi-agent code review with diverse perspectives - run multiple specialized reviewers in parallel for comprehensive analysis
Multi-Agent Code Review
<objective> Run N parallel code review agents with diverse perspectives. Each agent operates in isolation, catching issues that others miss. Synthesize findings into actionable fixes.Usage:
/multi-review- auto-detect appropriate depth/multi-review 5- explicit count/multi-review deep- depth-based scaling (quick | balanced | deep) </objective>
quick: 1-2 agents focused on correctness. Minimal overhead for simple changes.
balanced (default): 2-3 agents covering primary domains the code touches.
deep: 5+ agents for comprehensive coverage:
- architecture-auditor (always)
- security-reviewer (always)
- logic-reviewer (always)
- performance-reviewer
- error-handling-reviewer
- Domain-specific reviewers based on code
Auto-detect depth from context: single-file change with clear purpose → quick; multi-file implementation → balanced; architectural changes, new patterns, security- sensitive code → deep.
When called from /autotask, respect the complexity level already determined. </depth-scaling>
<philosophy> Multi-review exists to surface issues and fix them before merging. This is not a gate-keeping exercise looking for "blockers"—it's a collaborative improvement process.When agents surface valid issues, fix them. Don't carry technical debt forward with "we'll address this later." The only valid reasons to not fix something:
- Wontfix: The suggestion doesn't apply given full context
- Complexity trade-off: The fix adds more complexity than the risk it mitigates
- Large scope: Fixing would require substantial architectural changes outside this PR
Reference plugins/core/code-review-standards.md for detailed guidance on false
positives (single-use values, theoretical race conditions, redundant type safety,
premature optimization) and complexity trade-offs. If the project has custom standards
in .cursor/rules/code-review-standards.mdc, reference those as well.
For large scope: Create a follow-up issue/task, but be honest—if it should have been done differently from the start, that's feedback for next time, not permission to merge broken code. </philosophy>
<agent-discovery> Discover available review agents by examining the Task tool's agent types and any project-specific agents in .claude/agents/. Look for agents with "review" or "audit" in their name or description.Categorize by focus area: correctness, security, performance, architecture, quality, UX, observability. Select N agents ensuring diversity—don't pick multiple agents from the same domain.
When the code has characteristics that no discovered agent covers well, create a dynamic agent using general-purpose with a focused prompt. </agent-discovery>
<execution> Identify the code to review from context (branch diff, PR changes, staged changes, or recent modifications). Analyze what domains the code touches. Select N agents ensuring diversity across domains. Launch all agents in parallel using multiple Task tool calls in a single message.After agents complete, apply the fix-first synthesis workflow:
-
Collect: Gather all findings, deduplicate across agents, group by severity, note which agent caught each issue
-
Classify each finding as AUTO-FIX, ASK, or DEFER:
AUTO-FIX — Apply immediately without asking. High confidence, unambiguous, low risk of changing behavior in unexpected ways. In test files, only apply AUTO-FIX for import/formatting issues — route logic changes to ASK:
- Unused imports, dead code flagged by multiple agents
- Missing
awaitwhere the return value is used or error must be caught (not fire-and-forget patterns — those require judgment and belong in ASK) - Obvious null/undefined checks where crash is certain
- Wrong casing or naming convention violations
- Missing error propagation (empty catch blocks, swallowed errors)
- Import ordering, formatting issues
- Straightforward type fixes (wrong type annotation, missing return type)
ASK — Batch into a single question for the user. Needs judgment, multiple valid approaches, or risk of unintended behavior change. When in doubt, classify as ASK.
- Architectural restructuring or pattern changes
- Performance optimizations with trade-offs
- Security-sensitive changes (auth, crypto, input validation)
- Changes that alter public API or user-facing behavior
- Suggestions where the "right" answer depends on product context
- Anything that touches test assertions or expected values
- Changes where reasonable engineers would disagree
- Missing
awaiton fire-and-forget patterns (behavior change, not just style) - Deduplication requiring abstraction design decisions (where does it live?)
DEFER — Valid but out of scope for this PR. Create a follow-up task and note it:
- Improvements to shared utilities used across many files
- Refactors that touch unrelated code
- Suggestions that would significantly expand PR scope
-
Fix: Apply all AUTO-FIX items immediately. Keep a running list of what was fixed.
-
Ask: If any ASK items exist, present them in a single batch with context and a recommendation for each. Use the actual agent name that caught the issue:
Review found N items needing your input: 1. [Agent: security-reviewer] SQL query in user-search.ts:42 uses string interpolation → RECOMMENDATION: parameterize, because user input flows here 2. [Agent: architecture-auditor] Service layer bypasses repository pattern → RECOMMENDATION: keep as-is, this is a one-off admin endpoint -
Apply user decisions: Fix items the user approves, mark others as wontfix.
-
Report: Summary of everything — auto-fixed, user-approved fixes, declined items with reasons, and deferred items with task references. Omit empty sections. </execution>
Common domains: Temporal workflows, GraphQL, database migrations, rate limiting, authentication, caching, streaming, real-time updates. </dynamic-agents>
<output-format> After completing the fix-first workflow, provide a summary:Auto-fixed (N issues):
- Issue description → what was changed (agent that caught it)
User-approved fixes (N issues, only if ASK items were presented and approved):
- Issue description → what was changed
Wontfix (N issues):
- Issue description → why bot analysis doesn't apply given full context
Deferred (N issues, only for large scope):
- Issue description → follow-up task created
If all agents return no issues, note this explicitly. When called from /ship or /autotask, keep the summary concise — the caller will incorporate it into the PR body. </output-format>