bmad-method 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.bmad-core/agent-teams/team-all.yml +16 -0
- package/.bmad-core/agent-teams/team-fullstack.yml +26 -0
- package/.bmad-core/agent-teams/team-no-ui.yml +15 -0
- package/.bmad-core/agents/analyst.md +65 -0
- package/.bmad-core/agents/architect.md +66 -0
- package/.bmad-core/agents/bmad-master.md +107 -0
- package/.bmad-core/agents/bmad-orchestrator.md +81 -0
- package/.bmad-core/agents/dev.md +69 -0
- package/.bmad-core/agents/pm.md +64 -0
- package/.bmad-core/agents/po.md +60 -0
- package/.bmad-core/agents/qa.md +52 -0
- package/.bmad-core/agents/sm.md +60 -0
- package/.bmad-core/agents/ux-expert.md +66 -0
- package/.bmad-core/checklists/architect-checklist.md +443 -0
- package/.bmad-core/checklists/change-checklist.md +182 -0
- package/.bmad-core/checklists/pm-checklist.md +375 -0
- package/.bmad-core/checklists/po-master-checklist.md +441 -0
- package/.bmad-core/checklists/story-dod-checklist.md +101 -0
- package/.bmad-core/checklists/story-draft-checklist.md +156 -0
- package/.bmad-core/data/bmad-kb.md +36 -0
- package/.bmad-core/data/technical-preferences.md +3 -0
- package/.bmad-core/schemas/agent-team-schema.yml +153 -0
- package/.bmad-core/tasks/advanced-elicitation.md +92 -0
- package/.bmad-core/tasks/brainstorming-techniques.md +238 -0
- package/.bmad-core/tasks/brownfield-create-epic.md +160 -0
- package/.bmad-core/tasks/brownfield-create-story.md +147 -0
- package/.bmad-core/tasks/core-dump.md +74 -0
- package/.bmad-core/tasks/correct-course.md +73 -0
- package/.bmad-core/tasks/create-agent.md +202 -0
- package/.bmad-core/tasks/create-deep-research-prompt.md +301 -0
- package/.bmad-core/tasks/create-doc.md +74 -0
- package/.bmad-core/tasks/create-expansion-pack.md +425 -0
- package/.bmad-core/tasks/create-next-story.md +206 -0
- package/.bmad-core/tasks/create-team.md +229 -0
- package/.bmad-core/tasks/doc-migration-task.md +198 -0
- package/.bmad-core/tasks/execute-checklist.md +97 -0
- package/.bmad-core/tasks/generate-ai-frontend-prompt.md +58 -0
- package/.bmad-core/tasks/index-docs.md +180 -0
- package/.bmad-core/tasks/shard-doc.md +173 -0
- package/.bmad-core/templates/agent-tmpl.md +58 -0
- package/.bmad-core/templates/architecture-tmpl.md +771 -0
- package/.bmad-core/templates/brownfield-architecture-tmpl.md +542 -0
- package/.bmad-core/templates/brownfield-prd-tmpl.md +240 -0
- package/.bmad-core/templates/competitor-analysis-tmpl.md +289 -0
- package/.bmad-core/templates/expansion-pack-plan-tmpl.md +91 -0
- package/.bmad-core/templates/front-end-architecture-tmpl.md +173 -0
- package/.bmad-core/templates/front-end-spec-tmpl.md +411 -0
- package/.bmad-core/templates/fullstack-architecture-tmpl.md +1034 -0
- package/.bmad-core/templates/market-research-tmpl.md +261 -0
- package/.bmad-core/templates/prd-tmpl.md +200 -0
- package/.bmad-core/templates/project-brief-tmpl.md +228 -0
- package/.bmad-core/templates/story-tmpl.md +61 -0
- package/.bmad-core/templates/web-agent-startup-instructions-template.md +39 -0
- package/.bmad-core/utils/agent-switcher.ide.md +112 -0
- package/.bmad-core/utils/template-format.md +26 -0
- package/.bmad-core/utils/workflow-management.md +224 -0
- package/.bmad-core/web-bundles/agents/analyst.txt +1679 -0
- package/.bmad-core/web-bundles/agents/architect.txt +3602 -0
- package/.bmad-core/web-bundles/agents/bmad-master.txt +9496 -0
- package/.bmad-core/web-bundles/agents/bmad-orchestrator.txt +1455 -0
- package/.bmad-core/web-bundles/agents/dev.txt +315 -0
- package/.bmad-core/web-bundles/agents/pm.txt +2196 -0
- package/.bmad-core/web-bundles/agents/po.txt +1489 -0
- package/.bmad-core/web-bundles/agents/qa.txt +129 -0
- package/.bmad-core/web-bundles/agents/sm.txt +663 -0
- package/.bmad-core/web-bundles/agents/ux-expert.txt +1099 -0
- package/.bmad-core/web-bundles/teams/team-all.txt +10315 -0
- package/.bmad-core/web-bundles/teams/team-fullstack.txt +9663 -0
- package/.bmad-core/web-bundles/teams/team-no-ui.txt +8504 -0
- package/.bmad-core/workflows/brownfield-fullstack.yml +116 -0
- package/.bmad-core/workflows/brownfield-service.yml +117 -0
- package/.bmad-core/workflows/brownfield-ui.yml +127 -0
- package/.bmad-core/workflows/greenfield-fullstack.yml +177 -0
- package/.bmad-core/workflows/greenfield-service.yml +143 -0
- package/.bmad-core/workflows/greenfield-ui.yml +172 -0
- package/.claude/commands/analyst.md +69 -0
- package/.claude/commands/architect.md +70 -0
- package/.claude/commands/bmad-master.md +111 -0
- package/.claude/commands/bmad-orchestrator.md +85 -0
- package/.claude/commands/dev.md +73 -0
- package/.claude/commands/pm.md +68 -0
- package/.claude/commands/po.md +64 -0
- package/.claude/commands/qa.md +56 -0
- package/.claude/commands/sm.md +64 -0
- package/.claude/commands/ux-expert.md +70 -0
- package/.cursor/rules/analyst.mdc +83 -0
- package/.cursor/rules/architect.mdc +84 -0
- package/.cursor/rules/bmad-master.mdc +125 -0
- package/.cursor/rules/bmad-orchestrator.mdc +99 -0
- package/.cursor/rules/dev.mdc +87 -0
- package/.cursor/rules/pm.mdc +82 -0
- package/.cursor/rules/po.mdc +78 -0
- package/.cursor/rules/qa.mdc +70 -0
- package/.cursor/rules/sm.mdc +78 -0
- package/.cursor/rules/ux-expert.mdc +84 -0
- package/.github/workflows/release.yml +59 -0
- package/.husky/pre-commit +2 -0
- package/.releaserc.json +17 -0
- package/.roo/.roomodes +95 -0
- package/.roo/README.md +38 -0
- package/.vscode/extensions.json +6 -0
- package/.vscode/settings.json +72 -0
- package/.windsurf/rules/analyst.md +77 -0
- package/.windsurf/rules/architect.md +78 -0
- package/.windsurf/rules/bmad-master.md +119 -0
- package/.windsurf/rules/bmad-orchestrator.md +93 -0
- package/.windsurf/rules/dev.md +81 -0
- package/.windsurf/rules/pm.md +76 -0
- package/.windsurf/rules/po.md +72 -0
- package/.windsurf/rules/qa.md +64 -0
- package/.windsurf/rules/sm.md +72 -0
- package/.windsurf/rules/ux-expert.md +78 -0
- package/CHANGELOG.md +22 -0
- package/CONTRIBUTING.md +46 -0
- package/LICENSE +21 -0
- package/README.md +283 -0
- package/docs/versioning-and-releases.md +85 -0
- package/docs/versions.md +49 -0
- package/expansion-packs/README.md +113 -0
- package/expansion-packs/infrastructure-devops/README.md +147 -0
- package/expansion-packs/infrastructure-devops/agents/infra-devops-platform.md +59 -0
- package/expansion-packs/infrastructure-devops/checklists/infrastructure-checklist.md +484 -0
- package/expansion-packs/infrastructure-devops/manifest.yml +38 -0
- package/expansion-packs/infrastructure-devops/tasks/review-infrastructure.md +160 -0
- package/expansion-packs/infrastructure-devops/tasks/validate-infrastructure.md +154 -0
- package/expansion-packs/infrastructure-devops/templates/infrastructure-architecture-tmpl.md +415 -0
- package/expansion-packs/infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.md +0 -0
- package/package.json +73 -0
- package/tools/bmad-npx-wrapper.js +41 -0
- package/tools/builders/web-builder.js +145 -0
- package/tools/cli.js +119 -0
- package/tools/installer/README.md +58 -0
- package/tools/installer/bin/bmad.js +179 -0
- package/tools/installer/config/install.config.yml +139 -0
- package/tools/installer/lib/config-loader.js +89 -0
- package/tools/installer/lib/file-manager.js +169 -0
- package/tools/installer/lib/ide-setup.js +419 -0
- package/tools/installer/lib/installer.js +534 -0
- package/tools/installer/package-lock.json +704 -0
- package/tools/installer/package.json +43 -0
- package/tools/installer/templates/claude-commands.md +7 -0
- package/tools/installer/templates/cursor-rules.md +22 -0
- package/tools/installer/templates/windsurf-rules.md +22 -0
- package/tools/lib/dependency-resolver.js +179 -0
- package/tools/upgraders/v3-to-v4-upgrader.js +766 -0
- package/tools/version-bump.js +72 -0
- package/tools/yaml-format.js +211 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
# Create Brownfield Story Task
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
Create a single user story for very small brownfield enhancements that can be completed in one focused development session. This task is for minimal additions or bug fixes that require existing system integration awareness.
|
|
6
|
+
|
|
7
|
+
## When to Use This Task
|
|
8
|
+
|
|
9
|
+
**Use this task when:**
|
|
10
|
+
|
|
11
|
+
- The enhancement can be completed in a single story
|
|
12
|
+
- No new architecture or significant design is required
|
|
13
|
+
- The change follows existing patterns exactly
|
|
14
|
+
- Integration is straightforward with minimal risk
|
|
15
|
+
- Change is isolated with clear boundaries
|
|
16
|
+
|
|
17
|
+
**Use brownfield-create-epic when:**
|
|
18
|
+
|
|
19
|
+
- The enhancement requires 2-3 coordinated stories
|
|
20
|
+
- Some design work is needed
|
|
21
|
+
- Multiple integration points are involved
|
|
22
|
+
|
|
23
|
+
**Use the full brownfield PRD/Architecture process when:**
|
|
24
|
+
|
|
25
|
+
- The enhancement requires multiple coordinated stories
|
|
26
|
+
- Architectural planning is needed
|
|
27
|
+
- Significant integration work is required
|
|
28
|
+
|
|
29
|
+
## Instructions
|
|
30
|
+
|
|
31
|
+
### 1. Quick Project Assessment
|
|
32
|
+
|
|
33
|
+
Gather minimal but essential context about the existing project:
|
|
34
|
+
|
|
35
|
+
**Current System Context:**
|
|
36
|
+
|
|
37
|
+
- [ ] Relevant existing functionality identified
|
|
38
|
+
- [ ] Technology stack for this area noted
|
|
39
|
+
- [ ] Integration point(s) clearly understood
|
|
40
|
+
- [ ] Existing patterns for similar work identified
|
|
41
|
+
|
|
42
|
+
**Change Scope:**
|
|
43
|
+
|
|
44
|
+
- [ ] Specific change clearly defined
|
|
45
|
+
- [ ] Impact boundaries identified
|
|
46
|
+
- [ ] Success criteria established
|
|
47
|
+
|
|
48
|
+
### 2. Story Creation
|
|
49
|
+
|
|
50
|
+
Create a single focused story following this structure:
|
|
51
|
+
|
|
52
|
+
#### Story Title
|
|
53
|
+
|
|
54
|
+
{{Specific Enhancement}} - Brownfield Addition
|
|
55
|
+
|
|
56
|
+
#### User Story
|
|
57
|
+
|
|
58
|
+
As a {{user type}},
|
|
59
|
+
I want {{specific action/capability}},
|
|
60
|
+
So that {{clear benefit/value}}.
|
|
61
|
+
|
|
62
|
+
#### Story Context
|
|
63
|
+
|
|
64
|
+
**Existing System Integration:**
|
|
65
|
+
|
|
66
|
+
- Integrates with: {{existing component/system}}
|
|
67
|
+
- Technology: {{relevant tech stack}}
|
|
68
|
+
- Follows pattern: {{existing pattern to follow}}
|
|
69
|
+
- Touch points: {{specific integration points}}
|
|
70
|
+
|
|
71
|
+
#### Acceptance Criteria
|
|
72
|
+
|
|
73
|
+
**Functional Requirements:**
|
|
74
|
+
|
|
75
|
+
1. {{Primary functional requirement}}
|
|
76
|
+
2. {{Secondary functional requirement (if any)}}
|
|
77
|
+
3. {{Integration requirement}}
|
|
78
|
+
|
|
79
|
+
**Integration Requirements:** 4. Existing {{relevant functionality}} continues to work unchanged 5. New functionality follows existing {{pattern}} pattern 6. Integration with {{system/component}} maintains current behavior
|
|
80
|
+
|
|
81
|
+
**Quality Requirements:** 7. Change is covered by appropriate tests 8. Documentation is updated if needed 9. No regression in existing functionality verified
|
|
82
|
+
|
|
83
|
+
#### Technical Notes
|
|
84
|
+
|
|
85
|
+
- **Integration Approach:** {{how it connects to existing system}}
|
|
86
|
+
- **Existing Pattern Reference:** {{link or description of pattern to follow}}
|
|
87
|
+
- **Key Constraints:** {{any important limitations or requirements}}
|
|
88
|
+
|
|
89
|
+
#### Definition of Done
|
|
90
|
+
|
|
91
|
+
- [ ] Functional requirements met
|
|
92
|
+
- [ ] Integration requirements verified
|
|
93
|
+
- [ ] Existing functionality regression tested
|
|
94
|
+
- [ ] Code follows existing patterns and standards
|
|
95
|
+
- [ ] Tests pass (existing and new)
|
|
96
|
+
- [ ] Documentation updated if applicable
|
|
97
|
+
|
|
98
|
+
### 3. Risk and Compatibility Check
|
|
99
|
+
|
|
100
|
+
**Minimal Risk Assessment:**
|
|
101
|
+
|
|
102
|
+
- **Primary Risk:** {{main risk to existing system}}
|
|
103
|
+
- **Mitigation:** {{simple mitigation approach}}
|
|
104
|
+
- **Rollback:** {{how to undo if needed}}
|
|
105
|
+
|
|
106
|
+
**Compatibility Verification:**
|
|
107
|
+
|
|
108
|
+
- [ ] No breaking changes to existing APIs
|
|
109
|
+
- [ ] Database changes (if any) are additive only
|
|
110
|
+
- [ ] UI changes follow existing design patterns
|
|
111
|
+
- [ ] Performance impact is negligible
|
|
112
|
+
|
|
113
|
+
### 4. Validation Checklist
|
|
114
|
+
|
|
115
|
+
Before finalizing the story, confirm:
|
|
116
|
+
|
|
117
|
+
**Scope Validation:**
|
|
118
|
+
|
|
119
|
+
- [ ] Story can be completed in one development session
|
|
120
|
+
- [ ] Integration approach is straightforward
|
|
121
|
+
- [ ] Follows existing patterns exactly
|
|
122
|
+
- [ ] No design or architecture work required
|
|
123
|
+
|
|
124
|
+
**Clarity Check:**
|
|
125
|
+
|
|
126
|
+
- [ ] Story requirements are unambiguous
|
|
127
|
+
- [ ] Integration points are clearly specified
|
|
128
|
+
- [ ] Success criteria are testable
|
|
129
|
+
- [ ] Rollback approach is simple
|
|
130
|
+
|
|
131
|
+
## Success Criteria
|
|
132
|
+
|
|
133
|
+
The story creation is successful when:
|
|
134
|
+
|
|
135
|
+
1. Enhancement is clearly defined and appropriately scoped for single session
|
|
136
|
+
2. Integration approach is straightforward and low-risk
|
|
137
|
+
3. Existing system patterns are identified and will be followed
|
|
138
|
+
4. Rollback plan is simple and feasible
|
|
139
|
+
5. Acceptance criteria include existing functionality verification
|
|
140
|
+
|
|
141
|
+
## Important Notes
|
|
142
|
+
|
|
143
|
+
- This task is for VERY SMALL brownfield changes only
|
|
144
|
+
- If complexity grows during analysis, escalate to brownfield-create-epic
|
|
145
|
+
- Always prioritize existing system integrity
|
|
146
|
+
- When in doubt about integration complexity, use brownfield-create-epic instead
|
|
147
|
+
- Stories should take no more than 4 hours of focused development work
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Core Dump Task
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
To create a concise memory recording file (`.ai/core-dump-n.md`) that captures the essential context of the current agent session, enabling seamless continuation of work in future agent sessions. This task ensures persistent context across agent conversations while maintaining minimal token usage for efficient context loading.
|
|
6
|
+
|
|
7
|
+
## Inputs for this Task
|
|
8
|
+
|
|
9
|
+
- Current session conversation history and accomplishments
|
|
10
|
+
- Files created, modified, or deleted during the session
|
|
11
|
+
- Key decisions made and procedures followed
|
|
12
|
+
- Current project state and next logical steps
|
|
13
|
+
- User requests and agent responses that shaped the session
|
|
14
|
+
|
|
15
|
+
## Task Execution Instructions
|
|
16
|
+
|
|
17
|
+
### 0. Check Existing Core Dump
|
|
18
|
+
|
|
19
|
+
Before proceeding, check if `.ai/core-dump.md` already exists:
|
|
20
|
+
|
|
21
|
+
- If file exists, ask user: "Core dump file exists. Should I: 1. Overwrite, 2. Update, 3. Append or 4. Create new?"
|
|
22
|
+
- **Overwrite**: Replace entire file with new content
|
|
23
|
+
- **Update**: Merge new session info with existing content, updating relevant sections
|
|
24
|
+
- **Append**: Add new session as a separate entry while preserving existing content
|
|
25
|
+
- **Create New**: Create a new file, appending the next possible -# to the file, such as core-dump-3.md if 1 and 2 already exist.
|
|
26
|
+
- If file doesn't exist, proceed with creation of `core-dump-1.md`
|
|
27
|
+
|
|
28
|
+
### 1. Analyze Session Context
|
|
29
|
+
|
|
30
|
+
- Review the entire conversation to identify key accomplishments
|
|
31
|
+
- Note any specific tasks, procedures, or workflows that were executed
|
|
32
|
+
- Identify important decisions made or problems solved
|
|
33
|
+
- Capture the user's working style and preferences observed during the session
|
|
34
|
+
|
|
35
|
+
### 2. Document What Was Accomplished
|
|
36
|
+
|
|
37
|
+
- **Primary Actions**: List the main tasks completed concisely
|
|
38
|
+
- **Story Progress**: For story work, use format "Tasks Complete: 1-6, 8. Next Task Pending: 7, 9"
|
|
39
|
+
- **Problem Solving**: Document any challenges encountered and how they were resolved
|
|
40
|
+
- **User Communications**: Summarize key user requests, preferences, and discussion points
|
|
41
|
+
|
|
42
|
+
### 3. Record File System Changes (Concise Format)
|
|
43
|
+
|
|
44
|
+
- **Files Created**: `filename.ext` (brief purpose/size)
|
|
45
|
+
- **Files Modified**: `filename.ext` (what changed)
|
|
46
|
+
- **Files Deleted**: `filename.ext` (why removed)
|
|
47
|
+
- Focus on essential details, avoid verbose descriptions
|
|
48
|
+
|
|
49
|
+
### 4. Capture Current Project State
|
|
50
|
+
|
|
51
|
+
- **Project Progress**: Where the project stands after this session
|
|
52
|
+
- **Current Issues**: Any blockers or problems that need resolution
|
|
53
|
+
- **Next Logical Steps**: What would be the natural next actions to take
|
|
54
|
+
|
|
55
|
+
### 5. Create/Update Core Dump File
|
|
56
|
+
|
|
57
|
+
Based on user's choice from step 0, handle the file accordingly:
|
|
58
|
+
|
|
59
|
+
### 6. Optimize for Minimal Context
|
|
60
|
+
|
|
61
|
+
- Keep descriptions concise but informative
|
|
62
|
+
- Use abbreviated formats where possible (file sizes, task numbers)
|
|
63
|
+
- Focus on actionable information rather than detailed explanations
|
|
64
|
+
- Avoid redundant information that can be found in project documentation
|
|
65
|
+
- Prioritize information that would be lost without this recording
|
|
66
|
+
- Ensure the file can be quickly scanned and understood
|
|
67
|
+
|
|
68
|
+
### 7. Validate Completeness
|
|
69
|
+
|
|
70
|
+
- Verify all significant session activities are captured
|
|
71
|
+
- Ensure a future agent could understand the current state
|
|
72
|
+
- Check that file changes are accurately recorded
|
|
73
|
+
- Confirm next steps are clear and actionable
|
|
74
|
+
- Verify user communication style and preferences are noted
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Correct Course Task
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
- Guide a structured response to a change trigger using the `change-checklist`.
|
|
6
|
+
- Analyze the impacts of the change on epics, project artifacts, and the MVP, guided by the checklist's structure.
|
|
7
|
+
- Explore potential solutions (e.g., adjust scope, rollback elements, rescope features) as prompted by the checklist.
|
|
8
|
+
- Draft specific, actionable proposed updates to any affected project artifacts (e.g., epics, user stories, PRD sections, architecture document sections) based on the analysis.
|
|
9
|
+
- Produce a consolidated "Sprint Change Proposal" document that contains the impact analysis and the clearly drafted proposed edits for user review and approval.
|
|
10
|
+
- Ensure a clear handoff path if the nature of the changes necessitates fundamental replanning by other core agents (like PM or Architect).
|
|
11
|
+
|
|
12
|
+
## Instructions
|
|
13
|
+
|
|
14
|
+
### 1. Initial Setup & Mode Selection
|
|
15
|
+
|
|
16
|
+
- **Acknowledge Task & Inputs:**
|
|
17
|
+
- Confirm with the user that the "Correct Course Task" (Change Navigation & Integration) is being initiated.
|
|
18
|
+
- Verify the change trigger and ensure you have the user's initial explanation of the issue and its perceived impact.
|
|
19
|
+
- Confirm access to all relevant project artifacts (e.g., PRD, Epics/Stories, Architecture Documents, UI/UX Specifications) and, critically, the `change-checklist` (e.g., `change-checklist`).
|
|
20
|
+
- **Establish Interaction Mode:**
|
|
21
|
+
- Ask the user their preferred interaction mode for this task:
|
|
22
|
+
- **"Incrementally (Default & Recommended):** Shall we work through the `change-checklist` section by section, discussing findings and collaboratively drafting proposed changes for each relevant part before moving to the next? This allows for detailed, step-by-step refinement."
|
|
23
|
+
- **"YOLO Mode (Batch Processing):** Or, would you prefer I conduct a more batched analysis based on the checklist and then present a consolidated set of findings and proposed changes for a broader review? This can be quicker for initial assessment but might require more extensive review of the combined proposals."
|
|
24
|
+
- Request the user to select their preferred mode.
|
|
25
|
+
- Once the user chooses, confirm the selected mode (e.g., "Okay, we will proceed in Incremental mode."). This chosen mode will govern how subsequent steps in this task are executed.
|
|
26
|
+
- **Explain Process:** Briefly inform the user: "We will now use the `change-checklist` to analyze the change and draft proposed updates. I will guide you through the checklist items based on our chosen interaction mode."
|
|
27
|
+
<rule>When asking multiple questions or presenting multiple points for user input at once, number them clearly (e.g., 1., 2a., 2b.) to make it easier for the user to provide specific responses.</rule>
|
|
28
|
+
|
|
29
|
+
### 2. Execute Checklist Analysis (Iteratively or Batched, per Interaction Mode)
|
|
30
|
+
|
|
31
|
+
- Systematically work through Sections 1-4 of the `change-checklist` (typically covering Change Context, Epic/Story Impact Analysis, Artifact Conflict Resolution, and Path Evaluation/Recommendation).
|
|
32
|
+
- For each checklist item or logical group of items (depending on interaction mode):
|
|
33
|
+
- Present the relevant prompt(s) or considerations from the checklist to the user.
|
|
34
|
+
- Request necessary information and actively analyze the relevant project artifacts (PRD, epics, architecture documents, story history, etc.) to assess the impact.
|
|
35
|
+
- Discuss your findings for each item with the user.
|
|
36
|
+
- Record the status of each checklist item (e.g., `[x] Addressed`, `[N/A]`, `[!] Further Action Needed`) and any pertinent notes or decisions.
|
|
37
|
+
- Collaboratively agree on the "Recommended Path Forward" as prompted by Section 4 of the checklist.
|
|
38
|
+
|
|
39
|
+
### 3. Draft Proposed Changes (Iteratively or Batched)
|
|
40
|
+
|
|
41
|
+
- Based on the completed checklist analysis (Sections 1-4) and the agreed "Recommended Path Forward" (excluding scenarios requiring fundamental replans that would necessitate immediate handoff to PM/Architect):
|
|
42
|
+
- Identify the specific project artifacts that require updates (e.g., specific epics, user stories, PRD sections, architecture document components, diagrams).
|
|
43
|
+
- **Draft the proposed changes directly and explicitly for each identified artifact.** Examples include:
|
|
44
|
+
- Revising user story text, acceptance criteria, or priority.
|
|
45
|
+
- Adding, removing, reordering, or splitting user stories within epics.
|
|
46
|
+
- Proposing modified architecture diagram snippets (e.g., providing an updated Mermaid diagram block or a clear textual description of the change to an existing diagram).
|
|
47
|
+
- Updating technology lists, configuration details, or specific sections within the PRD or architecture documents.
|
|
48
|
+
- Drafting new, small supporting artifacts if necessary (e.g., a brief addendum for a specific decision).
|
|
49
|
+
- If in "Incremental Mode," discuss and refine these proposed edits for each artifact or small group of related artifacts with the user as they are drafted.
|
|
50
|
+
- If in "YOLO Mode," compile all drafted edits for presentation in the next step.
|
|
51
|
+
|
|
52
|
+
### 4. Generate "Sprint Change Proposal" with Edits
|
|
53
|
+
|
|
54
|
+
- Synthesize the complete `change-checklist` analysis (covering findings from Sections 1-4) and all the agreed-upon proposed edits (from Instruction 3) into a single document titled "Sprint Change Proposal." This proposal should align with the structure suggested by Section 5 of the `change-checklist` (Proposal Components).
|
|
55
|
+
- The proposal must clearly present:
|
|
56
|
+
- **Analysis Summary:** A concise overview of the original issue, its analyzed impact (on epics, artifacts, MVP scope), and the rationale for the chosen path forward.
|
|
57
|
+
- **Specific Proposed Edits:** For each affected artifact, clearly show or describe the exact changes (e.g., "Change Story X.Y from: [old text] To: [new text]", "Add new Acceptance Criterion to Story A.B: [new AC]", "Update Section 3.2 of Architecture Document as follows: [new/modified text or diagram description]").
|
|
58
|
+
- Present the complete draft of the "Sprint Change Proposal" to the user for final review and feedback. Incorporate any final adjustments requested by the user.
|
|
59
|
+
|
|
60
|
+
### 5. Finalize & Determine Next Steps
|
|
61
|
+
|
|
62
|
+
- Obtain explicit user approval for the "Sprint Change Proposal," including all the specific edits documented within it.
|
|
63
|
+
- Provide the finalized "Sprint Change Proposal" document to the user.
|
|
64
|
+
- **Based on the nature of the approved changes:**
|
|
65
|
+
- **If the approved edits sufficiently address the change and can be implemented directly or organized by a PO/SM:** State that the "Correct Course Task" is complete regarding analysis and change proposal, and the user can now proceed with implementing or logging these changes (e.g., updating actual project documents, backlog items). Suggest handoff to a PO/SM agent for backlog organization if appropriate.
|
|
66
|
+
- **If the analysis and proposed path (as per checklist Section 4 and potentially Section 6) indicate that the change requires a more fundamental replan (e.g., significant scope change, major architectural rework):** Clearly state this conclusion. Advise the user that the next step involves engaging the primary PM or Architect agents, using the "Sprint Change Proposal" as critical input and context for that deeper replanning effort.
|
|
67
|
+
|
|
68
|
+
## Output Deliverables
|
|
69
|
+
|
|
70
|
+
- **Primary:** A "Sprint Change Proposal" document (in markdown format). This document will contain:
|
|
71
|
+
- A summary of the `change-checklist` analysis (issue, impact, rationale for the chosen path).
|
|
72
|
+
- Specific, clearly drafted proposed edits for all affected project artifacts.
|
|
73
|
+
- **Implicit:** An annotated `change-checklist` (or the record of its completion) reflecting the discussions, findings, and decisions made during the process.
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
# Create Agent Task
|
|
2
|
+
|
|
3
|
+
This task guides you through creating a new BMAD agent following the standard template.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
- Agent template: `.bmad-core/templates/agent-tmpl.md`
|
|
8
|
+
- Target directory: `.bmad-core/agents/`
|
|
9
|
+
|
|
10
|
+
## Steps
|
|
11
|
+
|
|
12
|
+
### 1. Gather Agent Information
|
|
13
|
+
|
|
14
|
+
Collect the following information from the user:
|
|
15
|
+
|
|
16
|
+
- **Agent ID**: Unique identifier (lowercase, hyphens allowed, e.g., `data-analyst`)
|
|
17
|
+
- **Agent Name**: Display name (e.g., `Data Analyst`)
|
|
18
|
+
- **Agent Title**: Professional title (e.g., `Data Analysis Specialist`)
|
|
19
|
+
- **Role Description**: Brief description of the agent's primary role
|
|
20
|
+
- **Communication Style**: How the agent communicates (e.g., `analytical, data-driven, clear`)
|
|
21
|
+
- **Identity**: Detailed description of who this agent is
|
|
22
|
+
- **Focus Areas**: Primary areas of expertise and focus
|
|
23
|
+
- **Core Principles**: 3-5 guiding principles for the agent
|
|
24
|
+
- **Customization**: Optional specific behaviors or overrides
|
|
25
|
+
|
|
26
|
+
### 2. Define Agent Capabilities
|
|
27
|
+
|
|
28
|
+
**IMPORTANT**:
|
|
29
|
+
|
|
30
|
+
- If your agent will perform any actions → You MUST create corresponding tasks in `.bmad-core/tasks/`
|
|
31
|
+
- If your agent will create any documents → You MUST create templates in `.bmad-core/templates/` AND include the `create-doc` task
|
|
32
|
+
|
|
33
|
+
Determine:
|
|
34
|
+
|
|
35
|
+
- **Custom Commands**: Agent-specific commands beyond the defaults
|
|
36
|
+
- **Required Tasks**: Tasks from `.bmad-core/tasks/` the agent needs
|
|
37
|
+
- For any action the agent performs, a corresponding task file must exist
|
|
38
|
+
- Always include `create-doc` if the agent creates any documents
|
|
39
|
+
- **Required Templates**: Templates from `.bmad-core/templates/` the agent uses
|
|
40
|
+
- For any document the agent can create, a template must exist
|
|
41
|
+
- **Required Checklists**: Checklists the agent references
|
|
42
|
+
- **Required Data**: Data files the agent needs access to
|
|
43
|
+
- **Required Utils**: Utility files the agent uses
|
|
44
|
+
|
|
45
|
+
### 3. Handle Missing Dependencies
|
|
46
|
+
|
|
47
|
+
**Protocol for Missing Tasks/Templates:**
|
|
48
|
+
|
|
49
|
+
1. Check if each required task/template exists
|
|
50
|
+
2. For any missing items:
|
|
51
|
+
- Create a basic version following the appropriate template
|
|
52
|
+
- Track what was created in a list
|
|
53
|
+
3. Continue with agent creation
|
|
54
|
+
4. At the end, present a summary of all created items
|
|
55
|
+
|
|
56
|
+
**Track Created Items:**
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
Created during agent setup:
|
|
60
|
+
- Tasks:
|
|
61
|
+
- [ ] task-name-1.md
|
|
62
|
+
- [ ] task-name-2.md
|
|
63
|
+
- Templates:
|
|
64
|
+
- [ ] template-name-1.md
|
|
65
|
+
- [ ] template-name-2.md
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### 4. Create Agent File
|
|
69
|
+
|
|
70
|
+
1. Copy the template from `.bmad-core/templates/agent-tmpl.md`
|
|
71
|
+
2. Replace all placeholders with gathered information:
|
|
72
|
+
|
|
73
|
+
- `[AGENT_ID]` → agent id
|
|
74
|
+
- `[AGENT_NAME]` → agent name
|
|
75
|
+
- `[AGENT_TITLE]` → agent title
|
|
76
|
+
- `[AGENT_ROLE_DESCRIPTION]` → role description
|
|
77
|
+
- `[COMMUNICATION_STYLE]` → communication style
|
|
78
|
+
- `[AGENT_IDENTITY_DESCRIPTION]` → identity description
|
|
79
|
+
- `[PRIMARY_FOCUS_AREAS]` → focus areas
|
|
80
|
+
- `[PRINCIPLE_X]` → core principles
|
|
81
|
+
- `[OPTIONAL_CUSTOMIZATION]` → customization (or remove if none)
|
|
82
|
+
- `[DEFAULT_MODE_DESCRIPTION]` → description of default chat mode
|
|
83
|
+
- `[STARTUP_INSTRUCTIONS]` → what the agent should do on activation
|
|
84
|
+
- Add custom commands, tasks, templates, etc.
|
|
85
|
+
|
|
86
|
+
3. Save as `.bmad-core/agents/[agent-id].md`
|
|
87
|
+
|
|
88
|
+
### 4. Validate Agent
|
|
89
|
+
|
|
90
|
+
Ensure:
|
|
91
|
+
|
|
92
|
+
- All placeholders are replaced
|
|
93
|
+
- Dependencies (tasks, templates, etc.) actually exist
|
|
94
|
+
- Commands are properly formatted
|
|
95
|
+
- YAML structure is valid
|
|
96
|
+
|
|
97
|
+
### 5. Build and Test
|
|
98
|
+
|
|
99
|
+
1. Run `npm run build:agents` to include in builds
|
|
100
|
+
2. Test agent activation and commands
|
|
101
|
+
3. Verify all dependencies load correctly
|
|
102
|
+
|
|
103
|
+
### 6. Final Summary
|
|
104
|
+
|
|
105
|
+
Present to the user:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
✅ Agent Created: [agent-name]
|
|
109
|
+
Location: .bmad-core/agents/[agent-id].md
|
|
110
|
+
|
|
111
|
+
📝 Dependencies Created:
|
|
112
|
+
Tasks:
|
|
113
|
+
- ✅ task-1.md - [brief description]
|
|
114
|
+
- ✅ task-2.md - [brief description]
|
|
115
|
+
|
|
116
|
+
Templates:
|
|
117
|
+
- ✅ template-1.md - [brief description]
|
|
118
|
+
- ✅ template-2.md - [brief description]
|
|
119
|
+
|
|
120
|
+
⚠️ Next Steps:
|
|
121
|
+
1. Review and customize the created tasks/templates
|
|
122
|
+
2. Run npm run build:agents
|
|
123
|
+
3. Test the agent thoroughly
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Template Reference
|
|
127
|
+
|
|
128
|
+
The agent template structure:
|
|
129
|
+
|
|
130
|
+
- **activation-instructions**: How the AI should interpret the file
|
|
131
|
+
- **agent**: Basic agent metadata
|
|
132
|
+
- **persona**: Character and behavior definition
|
|
133
|
+
- **startup**: Initial actions on activation
|
|
134
|
+
- **commands**: Available commands (always include defaults)
|
|
135
|
+
- **dependencies**: Required resources organized by type
|
|
136
|
+
|
|
137
|
+
## Example Usage
|
|
138
|
+
|
|
139
|
+
```yaml
|
|
140
|
+
agent:
|
|
141
|
+
name: Data Analyst
|
|
142
|
+
id: data-analyst
|
|
143
|
+
title: Data Analysis Specialist
|
|
144
|
+
|
|
145
|
+
persona:
|
|
146
|
+
role: Expert in data analysis, visualization, and insights extraction
|
|
147
|
+
style: analytical, data-driven, clear, methodical
|
|
148
|
+
identity: I am a seasoned data analyst who transforms raw data into actionable insights
|
|
149
|
+
focus: data exploration, statistical analysis, visualization, reporting
|
|
150
|
+
|
|
151
|
+
core_principles:
|
|
152
|
+
- Data integrity and accuracy above all
|
|
153
|
+
- Clear communication of complex findings
|
|
154
|
+
- Actionable insights over raw numbers
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## Creating Missing Dependencies
|
|
158
|
+
|
|
159
|
+
When a required task or template doesn't exist:
|
|
160
|
+
|
|
161
|
+
1. **For Missing Tasks**: Create using `.bmad-core/templates/task-template.md`
|
|
162
|
+
|
|
163
|
+
- Name it descriptively (e.g., `analyze-metrics.md`)
|
|
164
|
+
- Define clear steps for the action
|
|
165
|
+
- Include any required inputs/outputs
|
|
166
|
+
|
|
167
|
+
2. **For Missing Templates**: Create a basic structure
|
|
168
|
+
|
|
169
|
+
- Name it descriptively (e.g., `metrics-report-template.md`)
|
|
170
|
+
- Include placeholders for expected content
|
|
171
|
+
- Add sections relevant to the document type
|
|
172
|
+
|
|
173
|
+
3. **Always Track**: Keep a list of everything created to report at the end
|
|
174
|
+
|
|
175
|
+
## Important Reminders
|
|
176
|
+
|
|
177
|
+
### Tasks and Templates Requirement
|
|
178
|
+
|
|
179
|
+
- **Every agent action needs a task**: If an agent can "analyze data", there must be an `analyze-data.md` task
|
|
180
|
+
- **Every document type needs a template**: If an agent can create reports, there must be a `report-template.md`
|
|
181
|
+
- **Document creation requires**: Both the template AND the `create-doc` task in dependencies
|
|
182
|
+
|
|
183
|
+
### Example Dependencies
|
|
184
|
+
|
|
185
|
+
```yaml
|
|
186
|
+
dependencies:
|
|
187
|
+
tasks:
|
|
188
|
+
- create-doc # Required if agent creates any documents
|
|
189
|
+
- analyze-requirements # Custom task for this agent
|
|
190
|
+
- generate-report # Another custom task
|
|
191
|
+
templates:
|
|
192
|
+
- requirements-doc # Template for requirements documents
|
|
193
|
+
- analysis-report # Template for analysis reports
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## Notes
|
|
197
|
+
|
|
198
|
+
- Keep agent definitions focused and specific
|
|
199
|
+
- Ensure dependencies are minimal and necessary
|
|
200
|
+
- Test thoroughly before distribution
|
|
201
|
+
- Follow existing agent patterns for consistency
|
|
202
|
+
- Remember: No task = agent can't do it, No template = agent can't create it
|