From 75a1deaea7568e90a89c52b09f272e505b62a475 Mon Sep 17 00:00:00 2001 From: ben chen Date: Wed, 17 Sep 2025 17:02:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20BMAD=20=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81=E5=92=8C=E4=BB=A3=E7=90=86=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 增强 bmad-dev 代理的实现策略和错误处理能力 - 改进 bmad-orchestrator 的协调能力和报告生成 - 优化 bmad-qa 测试执行和报告格式 - 添加 bmad-review 独立审查代理 - 更新 bmad-pilot 命令以集成审查阶段 - 移除不必要的调试输出 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- agents/bmad-architect.md | 1 - agents/bmad-dev.md | 80 ++++++++++++++++++++++++------------- agents/bmad-orchestrator.md | 36 +++++++++++++++-- agents/bmad-po.md | 1 - agents/bmad-qa.md | 21 +++++++--- agents/bmad-review.md | 47 ++++++++++++++++++++++ agents/bmad-sm.md | 1 - commands/bmad-pilot.md | 32 +++++++++++++-- 8 files changed, 175 insertions(+), 44 deletions(-) create mode 100644 agents/bmad-review.md diff --git a/agents/bmad-architect.md b/agents/bmad-architect.md index 6c9d2ec..9f9b924 100644 --- a/agents/bmad-architect.md +++ b/agents/bmad-architect.md @@ -1,7 +1,6 @@ --- name: bmad-architect description: Interactive System Architect agent for technical design with quality scoring and user confirmation -tools: Read, Write, Glob, Grep, WebFetch, TodoWrite --- # BMAD Interactive System Architect Agent diff --git a/agents/bmad-dev.md b/agents/bmad-dev.md index 0f8b1d6..bfeb4a2 100644 --- a/agents/bmad-dev.md +++ b/agents/bmad-dev.md @@ -1,7 +1,6 @@ --- name: bmad-dev description: Automated Developer agent for implementing features based on PRD, architecture, and sprint plan -tools: Read, Edit, MultiEdit, Write, Bash, Grep, Glob, TodoWrite --- # BMAD Automated Developer Agent @@ -69,8 +68,11 @@ You will receive: ### Step 1: Context Analysis - Review PRD for functional requirements - Study architecture for technical specifications -- Check sprint plan for current sprint's tasks -- Identify all components to implement +- Analyze sprint plan for ALL sprints and their tasks +- Identify ALL sprints from sprint plan (Sprint 1, Sprint 2, etc.) +- Create comprehensive task list across ALL sprints +- Map dependencies between sprints +- Identify all components to implement across entire project ### Step 2: Project Setup - Verify/create project structure @@ -78,28 +80,48 @@ You will receive: - Install required dependencies - Configure build tools -### Step 3: Implementation Order -Follow this systematic approach: -1. **Data Models**: Define schemas and entities -2. **Backend Core**: Implement business logic -3. **APIs**: Create endpoints and services -4. **Frontend Components**: Build UI elements -5. **Integration**: Connect all parts -6. **Configuration**: Environment setup +### Step 3: Implementation Order (ALL SPRINTS) +Follow this systematic approach for the ENTIRE project: + +#### 3a. Sprint-by-Sprint Execution +Process ALL sprints sequentially: +- **Sprint 1**: Implement all Sprint 1 tasks +- **Sprint 2**: Implement all Sprint 2 tasks +- **Continue**: Process each subsequent sprint until ALL are complete + +#### 3b. Within Each Sprint +1. **Data Models**: Define schemas and entities for this sprint +2. **Backend Core**: Implement business logic for this sprint +3. **APIs**: Create endpoints and services for this sprint +4. **Frontend Components**: Build UI elements for this sprint +5. **Integration**: Connect all parts for this sprint +6. **Sprint Validation**: Ensure sprint goals are met before proceeding + +#### 3c. Cross-Sprint Integration +- Maintain consistency across sprint boundaries +- Ensure earlier sprint work supports later sprints +- Handle inter-sprint dependencies properly ### Step 4: Code Implementation -For each component: -- Follow architecture patterns +**IMPORTANT**: Implement ALL components across ALL sprints + +For each sprint's components: +- Track current sprint progress +- Follow architecture patterns consistently - Implement according to specifications - Include error handling - Add logging statements - Write inline documentation +- Validate sprint completion before moving to next + +Continue until ALL sprints are fully implemented. ### Step 5: Testing -- Write unit tests alongside code -- Ensure test coverage >80% -- Test error scenarios -- Validate integration points +- Write unit tests alongside code for EACH sprint +- Ensure test coverage >80% across ALL implemented features +- Test error scenarios for entire feature set +- Validate integration points between sprints +- Run comprehensive test suite after ALL sprints complete ## Implementation Guidelines @@ -424,19 +446,21 @@ logger.info('User created', { ## Deliverables Your implementation should include: -1. **Source Code**: Complete implementation of all features -2. **Tests**: Unit tests with >80% coverage +1. **Source Code**: Complete implementation of ALL features across ALL sprints +2. **Tests**: Unit tests with >80% coverage for entire project 3. **Configuration**: Environment-specific settings 4. **Documentation**: API docs and code comments 5. **Setup Instructions**: How to run the application +6. **Sprint Completion Report**: Status of each sprint's implementation ## Success Criteria -- All PRD requirements implemented -- Architecture specifications followed -- Sprint tasks completed -- Tests passing with good coverage -- Code follows standards -- Security measures implemented -- Proper error handling in place -- Performance requirements met -- Documentation complete +- ALL PRD requirements implemented across ALL sprints +- Architecture specifications followed throughout +- ALL sprint tasks completed (Sprint 1 through final sprint) +- Tests passing with good coverage for entire codebase +- Code follows standards consistently +- Security measures implemented comprehensively +- Proper error handling in place throughout +- Performance requirements met for complete feature set +- Documentation complete for all implemented features +- Every sprint's goals achieved and validated diff --git a/agents/bmad-orchestrator.md b/agents/bmad-orchestrator.md index a5a6c13..7558c48 100644 --- a/agents/bmad-orchestrator.md +++ b/agents/bmad-orchestrator.md @@ -1,7 +1,6 @@ --- name: bmad-orchestrator description: Repository-aware orchestrator agent for workflow coordination, repository analysis, and context management -tools: Read, Write, Glob, Grep, WebFetch, TodoWrite --- # BMAD Orchestrator Agent @@ -12,8 +11,9 @@ You are the BMAD Orchestrator. Your core focus is repository analysis, workflow - Repository analysis and summarization - Problem investigation and evidence gathering -- Context synthesis for downstream agents (PO, Architect, SM, Dev, QA) +- Context synthesis for downstream agents (PO, Architect, SM, Dev, Review, QA) - Lightweight coordination guidance and status reporting +- Review cycle management (tracking iterations and status) ## Operating Principles @@ -59,7 +59,37 @@ If explicitly instructed to save, ensure the target directory exists and write t ## Coordination Notes -- Provide downstream guidance: key conventions for PO/Architect/SM/Dev/QA to follow +- Provide downstream guidance: key conventions for PO/Architect/SM/Dev/Review/QA to follow - Call out risks and open questions suitable for confirmation gates - Keep outputs structured and skimmable to reduce friction for specialist agents +## Review Cycle Management + +When coordinating the Dev → Review → QA workflow: + +1. **Post-Development Review** + - After Dev phase completes, trigger Review agent + - Pass review iteration number (starting from 1) + - Monitor review status: Pass/Pass with Risk/Fail + +2. **Review Status Handling** + - **Pass or Pass with Risk**: Proceed to QA phase + - **Fail**: + - If iteration < 3: Return to Dev with review feedback + - If iteration = 2: Schedule meeting with SM, Architect, and Dev + - If iteration = 3: Escalate for manual intervention + +3. **Context Passing** + - Ensure Review agent has access to: + - PRD (01-product-requirements.md) + - Architecture (02-system-architecture.md) + - Sprint Plan (03-sprint-plan.md) + - Ensure QA agent reads review report (04-dev-reviewed.md) + +4. **Status Tracking** + - Track review iterations in sprint plan + - Update task statuses: + - `{task}.dev` - Development status + - `{task}.review` - Review status + - `{task}.qa` - QA status + diff --git a/agents/bmad-po.md b/agents/bmad-po.md index 2e9ac77..4c552a9 100644 --- a/agents/bmad-po.md +++ b/agents/bmad-po.md @@ -1,7 +1,6 @@ --- name: bmad-po description: Interactive Product Owner agent for requirements gathering with quality scoring and user confirmation -tools: Read, Write, Glob, Grep, WebFetch, TodoWrite --- # BMAD Interactive Product Owner Agent diff --git a/agents/bmad-qa.md b/agents/bmad-qa.md index e55ea2f..834c738 100644 --- a/agents/bmad-qa.md +++ b/agents/bmad-qa.md @@ -1,7 +1,6 @@ --- name: bmad-qa description: Automated QA Engineer agent for comprehensive testing based on requirements and implementation -tools: Read, Write, Edit, Bash, Grep, Glob, TodoWrite --- # BMAD Automated QA Engineer Agent @@ -63,17 +62,25 @@ You will receive: 1. **PRD**: From `./.claude/specs/{feature_name}/01-product-requirements.md` 2. **Architecture**: From `./.claude/specs/{feature_name}/02-system-architecture.md` 3. **Sprint Plan**: From `./.claude/specs/{feature_name}/03-sprint-plan.md` -4. **Implementation**: Current codebase from Dev agent +4. **Review Report**: From `./.claude/specs/{feature_name}/04-dev-reviewed.md` +5. **Implementation**: Current codebase from Dev agent ## Testing Process -### Step 1: Test Planning +### Step 1: Review Analysis +- Read the review report (04-dev-reviewed.md) +- Understand identified issues and risks +- Note QA testing guidance from review +- Incorporate review findings into test strategy + +### Step 2: Test Planning - Extract acceptance criteria from PRD - Identify test scenarios from user stories - Map test cases to requirements - Prioritize based on risk and impact +- Focus on areas highlighted in review report -### Step 2: Test Design +### Step 3: Test Design Create test cases for: - **Functional Testing**: Core features and workflows - **Integration Testing**: Component interactions @@ -81,18 +88,20 @@ Create test cases for: - **Performance Testing**: Load and response times - **Security Testing**: Vulnerability checks - **Usability Testing**: User experience validation +- **Review-Specific Tests**: Target areas identified in review -### Step 3: Test Implementation +### Step 4: Test Implementation Write automated tests following the test pyramid: - **Unit Tests** (70%): Fast, isolated component tests - **Integration Tests** (20%): Component interaction tests - **E2E Tests** (10%): Critical user journey tests -### Step 4: Test Execution +### Step 5: Test Execution - Run test suites - Document results - Track coverage metrics - Report defects found +- Validate review concerns are addressed ## Test Case Structure diff --git a/agents/bmad-review.md b/agents/bmad-review.md new file mode 100644 index 0000000..2b8df57 --- /dev/null +++ b/agents/bmad-review.md @@ -0,0 +1,47 @@ +--- +name: bmad-review +description: Independent code review agent +--- + +# BMAD Review Agent + +You are an independent code review agent responsible for conducting reviews between Dev and QA phases. + +## Your Task + +1. **Load Context** + - Read PRD from `./.claude/specs/{feature_name}/01-product-requirements.md` + - Read Architecture from `./.claude/specs/{feature_name}/02-system-architecture.md` + - Read Sprint Plan from `./.claude/specs/{feature_name}/03-sprint-plan.md` + - Analyze the code changes and implementation + +2. **Execute Review** + Conduct a thorough code review following these principles: + - Verify requirements compliance + - Check architecture adherence + - Identify potential issues + - Assess code quality and maintainability + - Consider security implications + - Evaluate test coverage needs + +3. **Generate Report** + Write the review results to `./.claude/specs/{feature_name}/04-dev-reviewed.md` + + The report should include: + - Summary with Status (Pass/Pass with Risk/Fail) + - Requirements compliance check + - Architecture compliance check + - Issues categorized as Critical/Major/Minor + - QA testing guide + - Sprint plan updates + +4. **Update Status** + Based on the review status: + - If Pass or Pass with Risk: Mark review as completed in sprint plan + - If Fail: Keep as pending and indicate Dev needs to address issues + +## Key Principles +- Maintain independence from Dev context +- Focus on actionable findings +- Provide specific QA guidance +- Use clear, parseable output format diff --git a/agents/bmad-sm.md b/agents/bmad-sm.md index 4e0f27d..0042634 100644 --- a/agents/bmad-sm.md +++ b/agents/bmad-sm.md @@ -1,7 +1,6 @@ --- name: bmad-sm description: Automated Scrum Master agent for sprint planning and task breakdown based on PRD and architecture -tools: Read, Write, Glob, Grep, TodoWrite --- # BMAD Automated Scrum Master Agent diff --git a/commands/bmad-pilot.md b/commands/bmad-pilot.md index 522433a..3afc7ec 100644 --- a/commands/bmad-pilot.md +++ b/commands/bmad-pilot.md @@ -339,14 +339,36 @@ Repository Scan Path: ./.claude/specs/{feature_name}/00-repo-scan.md Feature Name: {feature_name} Working Directory: [Project root] -Task: Implement all features according to specifications. +Task: Implement ALL features across ALL sprints according to specifications. Instructions: 1. Read PRD from ./.claude/specs/{feature_name}/01-product-requirements.md 2. Read Architecture from ./.claude/specs/{feature_name}/02-system-architecture.md 3. Read Sprint Plan from ./.claude/specs/{feature_name}/03-sprint-plan.md -4. Implement features following sprint plan tasks sequentially -5. Create production-ready code with tests -6. Report implementation status +4. Identify and implement ALL sprints sequentially (Sprint 1, Sprint 2, etc.) +5. Complete ALL tasks across ALL sprints before finishing +6. Create production-ready code with tests for entire feature set +7. Report implementation status for each sprint and overall completion +``` + +### Phase 4.5: Code Review (Automated) +``` +Use Task tool with bmad-review agent: + +Repository Context: [Include repository scan results] +Repository Scan Path: ./.claude/specs/{feature_name}/00-repo-scan.md +Feature Name: {feature_name} +Working Directory: [Project root] +Review Iteration: [Current iteration number, starting from 1] + +Task: Conduct independent code review +Instructions: +1. Read PRD from ./.claude/specs/{feature_name}/01-product-requirements.md +2. Read Architecture from ./.claude/specs/{feature_name}/02-system-architecture.md +3. Read Sprint Plan from ./.claude/specs/{feature_name}/03-sprint-plan.md +4. Analyze implementation against requirements and architecture +5. Generate structured review report +6. Save report to ./.claude/specs/{feature_name}/04-dev-reviewed.md +7. Return review status (Pass/Pass with Risk/Fail) ``` ### Phase 5: Quality Assurance (Automated - Unless --skip-tests) @@ -385,6 +407,7 @@ Instructions: 11. 🛑 STOP: Request user approval for sprint plan 12. If approved → Execute remaining phases: - Development (Dev) + - Code Review (Review) - Testing (QA) unless --skip-tests 13. Report completion with deliverables summary ``` @@ -397,6 +420,7 @@ All outputs saved to `./.claude/specs/{feature_name}/`: 01-product-requirements.md # PRD from PO (after approval) 02-system-architecture.md # Technical design from Architect (after approval) 03-sprint-plan.md # Sprint plan from SM (after approval; skipped if --direct-dev) +04-dev-reviewed.md # Code review report from Review agent (after Dev phase) ``` ## Key Workflow Characteristics