Instrucciones de origen · Vista previa de solo lectura
name
workflows-review
description
Perform exhaustive code reviews using multi-agent analysis, ultra-thinking, and worktrees
Arguments
[PR number, GitHub URL, branch name, or latest]
Review Command
<command_purpose> Perform exhaustive code reviews using multi-agent analysis, ultra-thinking, and Git worktrees for deep local inspection. </command_purpose>
Introduction
Senior Code Review Architect with expertise in security, performance, architecture, and quality assurance
Prerequisites
- Git repository with GitHub CLI (`gh`) installed and authenticated
- Clean main/master branch
- Proper permissions to create worktrees and access the repository
- For document reviews: Path to a markdown file or document
Main Tasks
1. Determine Review Target & Setup (ALWAYS FIRST)
<review_target> #$ARGUMENTS </review_target>
First, I need to determine the review target type and set up the code for analysis.
Immediate Actions:
<task_list>
Determine review type: PR number (numeric), GitHub URL, file path (.md), or empty (current branch)
Check current git branch
If ALREADY on the target branch (PR branch, requested branch name, or the branch already checked out for review) → proceed with analysis on current branch
If DIFFERENT branch than the review target → offer to use worktree: "Use git-worktree skill for isolated Call skill: git-worktree with branch name
Fetch PR metadata using gh pr view --json for title, body, files, linked issues
Set up language-specific analysis tools
Prepare security scanning environment
Make sure we are on the branch we are reviewing. Use gh pr checkout to switch to the branch or manually checkout the branch.
Ensure that the code is ready for analysis (either in worktree or on current branch). ONLY then proceed to the next step.
</task_list>
Protected Artifacts
<protected_artifacts>
The following paths are compound-engineering pipeline artifacts and must never be flagged for deletion, removal, or gitignore by any review agent:
docs/plans/*.md — Plan files created by /workflows:plan. These are living documents that track implementation progress (checkboxes are checked off by /workflows:work).
docs/solutions/*.md — Solution documents created during the pipeline.
If a review agent flags any file in these directories for cleanup or removal, discard that finding during synthesis. Do not create a todo for it.
</protected_artifacts>
Parallel Agents to review the PR:
<parallel_tasks>
Run ALL or most of these agents at the same time:
Task kieran-rails-reviewer(PR content)
Task dhh-rails-reviewer(PR title)
If turbo is used: Task rails-turbo-expert(PR content)
Task git-history-analyzer(PR content)
Task dependency-detective(PR content)
Task pattern-recognition-specialist(PR content)
Task architecture-strategist(PR content)
Task code-philosopher(PR content)
Task security-sentinel(PR content)
Task performance-oracle(PR content)
Task devops-harmony-analyst(PR content)
Task data-integrity-guardian(PR content)
Task agent-native-reviewer(PR content) - Verify new features are agent-accessible
</parallel_tasks>
Conditional Agents (Run if applicable):
<conditional_agents>
These agents are run ONLY when the PR matches specific criteria. Check the PR files list to determine if they apply:
If PR contains database migrations (db/migrate/*.rb files) or data backfills:
Task data-migration-expert(PR content) - Validates ID mappings match production, checks for swapped values, verifies rollback safety
PR modifies columns that store IDs, enums, or mappings
PR includes data backfill scripts or rake tasks
PR changes how data is read/written (e.g., changing from FK to string column)
PR title/body mentions: migration, backfill, data transformation, ID mapping
What these agents check:
data-migration-expert: Verifies hard-coded mappings match production reality (prevents swapped IDs), checks for orphaned associations, validates dual-write patterns
deployment-verification-agent: Produces executable pre/post-deploy checklists with SQL queries, rollback procedures, and monitoring plans
</conditional_agents>
4. Ultra-Thinking Deep Dive Phases
<ultrathink_instruction> For each phase below, spend maximum cognitive effort. Think step by step. Consider all angles. Question assumptions. And bring all reviews in a synthesis to the user.</ultrathink_instruction>
Complete system context map with component interactions
Phase 3: Stakeholder Perspective Analysis
<thinking_prompt> ULTRA-THINK: Put yourself in each stakeholder's shoes. What matters to them? What are their pain points? </thinking_prompt>
<stakeholder_perspectives>
Developer Perspective
How easy is this to understand and modify?
Are the APIs intuitive?
Is debugging straightforward?
Can I test this easily?
Operations Perspective
How do I deploy this safely?
What metrics and logs are available?
How do I troubleshoot issues?
What are the resource requirements?
End User Perspective
Is the feature intuitive?
Are error messages helpful?
Is performance acceptable?
Does it solve my problem?
Security Team Perspective
What's the attack surface?
Are there compliance requirements?
How is data protected?
What are the audit capabilities?
Business Perspective
What's the ROI?
Are there legal/compliance risks?
How does this affect time-to-market?
What's the total cost of ownership? </stakeholder_perspectives>
Phase 4: Scenario Exploration
<thinking_prompt> ULTRA-THINK: Explore edge cases and failure scenarios. What could go wrong? How does the system behave under stress? </thinking_prompt>
Cascading Failures: Downstream service issues </scenario_checklist>
6. Multi-Angle Review Perspectives
Technical Excellence Angle
Code craftsmanship evaluation
Engineering best practices
Technical documentation quality
Tooling and automation assessment
Business Value Angle
Feature completeness validation
Performance impact on users
Cost-benefit analysis
Time-to-market considerations
Risk Management Angle
Security risk assessment
Operational risk evaluation
Compliance risk verification
Technical debt accumulation
Team Dynamics Angle
Code review etiquette
Knowledge sharing effectiveness
Collaboration patterns
Mentoring opportunities
4. Simplification and Minimalism Review
Run the Task code-simplicity-reviewer() to see if we can simplify the code.
5. Findings Synthesis and Todo Creation Using file-todos Skill
<critical_requirement> ALL findings MUST be stored in the todos/ directory using the file-todos skill. Create todo files immediately after synthesis - do NOT present findings for user approval first. Use the skill for structured todo management. </critical_requirement>
Step 1: Synthesize All Findings
Consolidate all agent reports into a categorized list of findings.
Remove duplicates, prioritize by severity and impact.
<synthesis_tasks>
Collect findings from all parallel agents
Discard any findings that recommend deleting or gitignoring files in docs/plans/ or docs/solutions/ (see Protected Artifacts above)
Categorize by type: security, performance, architecture, quality, etc.
Estimate effort for each finding (Small/Medium/Large)
</synthesis_tasks>
Step 2: Create Todo Files Using file-todos Skill
<critical_instruction> Use the file-todos skill to create todo files for ALL findings immediately. Do NOT present findings one-by-one asking for user approval. Create all todo files in parallel using the skill, then summarize results to user. </critical_instruction>
Implementation Options:
Option A: Direct File Creation (Fast)
Create todo files directly using Write tool
All findings in parallel for speed
Use standard template from .claude/skills/file-todos/assets/todo-template.md
Option B: Sub-Agents in Parallel (Recommended for Scale) For large PRs with 15+ findings, use sub-agents to create finding files in parallel:
# Launch multiple finding-creator agents in parallel
Task() - Create todos for first finding
Task() - Create todos for second finding
Task() - Create todos for third finding
etc. for each finding.
Sub-agents can:
Process multiple findings simultaneously
Write detailed todo files with all sections filled
Organize findings by severity
Create comprehensive Proposed Solutions
Add acceptance criteria and work logs
Complete much faster than sequential processing
Execution Strategy:
Synthesize all findings into categories (P1/P2/P3)
Group findings by severity
Launch 3 parallel sub-agents (one per severity level)
Each sub-agent creates its batch of todos using the file-todos skill
Consolidate results and present summary
Process (Using file-todos Skill):
For each finding:
Determine severity (P1/P2/P3)
Write detailed Problem Statement and Findings
Create 2-3 Proposed Solutions with pros/cons/effort/risk
Estimate effort (Small/Medium/Large)
Add acceptance criteria and work log
Use file-todos skill for structured todo management:
### 7. End-to-End Testing (Optional)
<detect_project_type>
**First, detect the project type from PR files:**
| Indicator | Project Type |
|-----------|--------------|
| `*.xcodeproj`, `*.xcworkspace`, `Package.swift` (iOS) | iOS/macOS |
| `Gemfile`, `package.json`, `app/views/*`, `*.html.*` | Web |
| Both iOS files AND web files | Hybrid (test both) |
</detect_project_type>
<offer_testing>
After presenting the Summary Report, offer appropriate testing based on project type:
**For Web Projects:**
```markdown
**"Want to run browser tests on the affected pages?"**
1. Yes - run `/test-browser`
2. No - skip
For iOS Projects:
**"Want to run Xcode simulator tests on the app?"**1. Yes - run `/xcode-test`2. No - skip
For Hybrid Projects (e.g., Rails + Hotwire Native):
**"Want to run end-to-end tests?"**1. Web only - run `/test-browser`2. iOS only - run `/xcode-test`3. Both - run both commands
4. No - skip
</offer_testing>
If User Accepts Web Testing:
Spawn a subagent to run browser tests (preserves main context):
Task general-purpose("Run /test-browser for PR #[number]. Test all affected pages, check for console errors, handle failures by creating todos and fixing.")
The subagent will:
Identify pages affected by the PR
Navigate to each page and capture snapshots (using Playwright MCP or agent-browser CLI)
Check for console errors
Test critical interactions
Pause for human verification on OAuth/email/payment flows
Create P1 todos for any failures
Fix and retry until all tests pass
Standalone:/test-browser [PR number]
If User Accepts iOS Testing:
Spawn a subagent to run Xcode tests (preserves main context):
Task general-purpose("Run /xcode-test for scheme [name]. Build for simulator, install, launch, take screenshots, check for crashes.")
The subagent will:
Verify XcodeBuildMCP is installed
Discover project and schemes
Build for iOS Simulator
Install and launch app
Take screenshots of key screens
Capture console logs for errors
Pause for human verification (Sign in with Apple, push, IAP)
Create P1 todos for any failures
Fix and retry until all tests pass
Standalone:/xcode-test [scheme]
Important: P1 Findings Block Merge
Any 🔴 P1 (CRITICAL) findings must be addressed before merging the PR. Present these prominently and ensure they're resolved before accepting the PR.