bmad-method 4.30.4 → 4.32.0
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/.vscode/settings.json +1 -7
- package/CHANGELOG.md +117 -170
- package/README.md +46 -7
- package/bmad-core/agents/analyst.md +1 -1
- package/bmad-core/agents/architect.md +2 -3
- package/bmad-core/agents/bmad-master.md +0 -1
- package/bmad-core/agents/bmad-orchestrator.md +9 -10
- package/bmad-core/agents/dev.md +1 -2
- package/bmad-core/agents/pm.md +3 -1
- package/bmad-core/agents/po.md +1 -1
- package/bmad-core/agents/qa.md +1 -1
- package/bmad-core/agents/sm.md +1 -1
- package/bmad-core/agents/ux-expert.md +1 -1
- package/bmad-core/bmad-core/user-guide.md +0 -0
- package/bmad-core/data/bmad-kb.md +12 -2
- package/bmad-core/data/elicitation-methods.md +20 -0
- package/bmad-core/enhanced-ide-development-workflow.md +43 -0
- package/bmad-core/tasks/advanced-elicitation.md +2 -0
- package/bmad-core/tasks/create-brownfield-story.md +20 -3
- package/bmad-core/tasks/document-project.md +19 -13
- package/bmad-core/tasks/facilitate-brainstorming-session.md +1 -1
- package/bmad-core/tasks/index-docs.md +0 -1
- package/bmad-core/tasks/kb-mode-interaction.md +3 -3
- package/bmad-core/tasks/review-story.md +18 -1
- package/bmad-core/user-guide.md +251 -0
- package/{docs → bmad-core}/working-in-the-brownfield.md +39 -36
- package/dist/agents/analyst.txt +6 -6
- package/dist/agents/architect.txt +8 -3
- package/dist/agents/bmad-master.txt +2 -1
- package/dist/agents/pm.txt +9 -2
- package/dist/agents/po.txt +2 -318
- package/dist/agents/qa.txt +0 -1
- package/dist/agents/sm.txt +3 -3
- package/dist/agents/ux-expert.txt +2 -297
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +6 -6
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +4047 -0
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +1520 -185
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +214 -1229
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +537 -373
- package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +6917 -2140
- package/dist/teams/team-all.txt +30 -25
- package/dist/teams/team-fullstack.txt +27 -21
- package/dist/teams/team-ide-minimal.txt +5 -322
- package/dist/teams/team-no-ui.txt +25 -16
- package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +3 -1
- package/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +1 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +80 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +21 -16
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +25 -25
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +15 -14
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +396 -0
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +203 -0
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +1 -1
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +93 -121
- package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +1 -1
- package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +593 -68
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +151 -0
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +165 -198
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +200 -0
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +938 -453
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +3 -3
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +517 -155
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +12 -12
- package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +11 -11
- package/package.json +79 -76
- package/tools/cli.js +9 -0
- package/tools/flattener/main.js +559 -0
- package/tools/installer/lib/installer.js +4 -0
- package/tools/installer/package.json +1 -1
- package/.husky/pre-commit +0 -2
- package/.prettierignore +0 -21
- package/.prettierrc +0 -23
- package/docs/agentic-tools/claude-code-guide.md +0 -19
- package/docs/agentic-tools/cline-guide.md +0 -16
- package/docs/agentic-tools/cursor-guide.md +0 -14
- package/docs/agentic-tools/gemini-cli-guide.md +0 -31
- package/docs/agentic-tools/github-copilot-guide.md +0 -42
- package/docs/agentic-tools/roo-code-guide.md +0 -15
- package/docs/agentic-tools/trae-guide.md +0 -14
- package/docs/agentic-tools/windsurf-guide.md +0 -14
- package/docs/bmad-workflow-guide.md +0 -166
- package/docs/user-guide.md +0 -1142
|
@@ -27,16 +27,20 @@ Create detailed, implementation-ready stories for brownfield projects where trad
|
|
|
27
27
|
Check for available documentation in this order:
|
|
28
28
|
|
|
29
29
|
1. **Sharded PRD/Architecture** (docs/prd/, docs/architecture/)
|
|
30
|
+
|
|
30
31
|
- If found, recommend using create-next-story task instead
|
|
31
32
|
|
|
32
33
|
2. **Brownfield Architecture Document** (docs/brownfield-architecture.md or similar)
|
|
34
|
+
|
|
33
35
|
- Created by document-project task
|
|
34
36
|
- Contains actual system state, technical debt, workarounds
|
|
35
37
|
|
|
36
38
|
3. **Brownfield PRD** (docs/prd.md)
|
|
39
|
+
|
|
37
40
|
- May contain embedded technical details
|
|
38
41
|
|
|
39
42
|
4. **Epic Files** (docs/epics/ or similar)
|
|
43
|
+
|
|
40
44
|
- Created by brownfield-create-epic task
|
|
41
45
|
|
|
42
46
|
5. **User-Provided Documentation**
|
|
@@ -128,7 +132,7 @@ Critical: For brownfield, ALWAYS include criteria about maintaining existing fun
|
|
|
128
132
|
Standard structure:
|
|
129
133
|
|
|
130
134
|
1. New functionality works as specified
|
|
131
|
-
2. Existing {{affected feature}} continues to work unchanged
|
|
135
|
+
2. Existing {{affected feature}} continues to work unchanged
|
|
132
136
|
3. Integration with {{existing system}} maintains current behavior
|
|
133
137
|
4. No regression in {{related area}}
|
|
134
138
|
5. Performance remains within acceptable bounds
|
|
@@ -139,16 +143,19 @@ Critical: This is where you'll need to be interactive with the user if informati
|
|
|
139
143
|
|
|
140
144
|
Create Dev Technical Guidance section with available information:
|
|
141
145
|
|
|
142
|
-
|
|
146
|
+
````markdown
|
|
143
147
|
## Dev Technical Guidance
|
|
144
148
|
|
|
145
149
|
### Existing System Context
|
|
150
|
+
|
|
146
151
|
[Extract from available documentation]
|
|
147
152
|
|
|
148
153
|
### Integration Approach
|
|
154
|
+
|
|
149
155
|
[Based on patterns found or ask user]
|
|
150
156
|
|
|
151
157
|
### Technical Constraints
|
|
158
|
+
|
|
152
159
|
[From documentation or user input]
|
|
153
160
|
|
|
154
161
|
### Missing Information
|
|
@@ -172,16 +179,19 @@ Example task structure for brownfield:
|
|
|
172
179
|
## Tasks / Subtasks
|
|
173
180
|
|
|
174
181
|
- [ ] Task 1: Analyze existing {{component/feature}} implementation
|
|
182
|
+
|
|
175
183
|
- [ ] Review {{specific files}} for current patterns
|
|
176
184
|
- [ ] Document integration points
|
|
177
185
|
- [ ] Identify potential impacts
|
|
178
186
|
|
|
179
187
|
- [ ] Task 2: Implement {{new functionality}}
|
|
188
|
+
|
|
180
189
|
- [ ] Follow pattern from {{example file}}
|
|
181
190
|
- [ ] Integrate with {{existing component}}
|
|
182
191
|
- [ ] Maintain compatibility with {{constraint}}
|
|
183
192
|
|
|
184
193
|
- [ ] Task 3: Verify existing functionality
|
|
194
|
+
|
|
185
195
|
- [ ] Test {{existing feature 1}} still works
|
|
186
196
|
- [ ] Verify {{integration point}} behavior unchanged
|
|
187
197
|
- [ ] Check performance impact
|
|
@@ -191,6 +201,7 @@ Example task structure for brownfield:
|
|
|
191
201
|
- [ ] Integration test for {{integration point}}
|
|
192
202
|
- [ ] Update existing tests if needed
|
|
193
203
|
```
|
|
204
|
+
````
|
|
194
205
|
|
|
195
206
|
### 5. Risk Assessment and Mitigation
|
|
196
207
|
|
|
@@ -202,14 +213,17 @@ Add section for brownfield-specific risks:
|
|
|
202
213
|
## Risk Assessment
|
|
203
214
|
|
|
204
215
|
### Implementation Risks
|
|
216
|
+
|
|
205
217
|
- **Primary Risk**: {{main risk to existing system}}
|
|
206
218
|
- **Mitigation**: {{how to address}}
|
|
207
219
|
- **Verification**: {{how to confirm safety}}
|
|
208
220
|
|
|
209
221
|
### Rollback Plan
|
|
222
|
+
|
|
210
223
|
- {{Simple steps to undo changes if needed}}
|
|
211
224
|
|
|
212
225
|
### Safety Checks
|
|
226
|
+
|
|
213
227
|
- [ ] Existing {{feature}} tested before changes
|
|
214
228
|
- [ ] Changes can be feature-flagged or isolated
|
|
215
229
|
- [ ] Rollback procedure documented
|
|
@@ -220,12 +234,14 @@ Add section for brownfield-specific risks:
|
|
|
220
234
|
Before finalizing:
|
|
221
235
|
|
|
222
236
|
1. **Completeness Check**:
|
|
237
|
+
|
|
223
238
|
- [ ] Story has clear scope and acceptance criteria
|
|
224
239
|
- [ ] Technical context is sufficient for implementation
|
|
225
240
|
- [ ] Integration approach is defined
|
|
226
241
|
- [ ] Risks are identified with mitigation
|
|
227
242
|
|
|
228
243
|
2. **Safety Check**:
|
|
244
|
+
|
|
229
245
|
- [ ] Existing functionality protection included
|
|
230
246
|
- [ ] Rollback plan is feasible
|
|
231
247
|
- [ ] Testing covers both new and existing features
|
|
@@ -252,6 +268,7 @@ Include header noting documentation context:
|
|
|
252
268
|
<!-- Context: Brownfield enhancement to {{existing system}} -->
|
|
253
269
|
|
|
254
270
|
## Status: Draft
|
|
271
|
+
|
|
255
272
|
[Rest of story content...]
|
|
256
273
|
```
|
|
257
274
|
|
|
@@ -272,7 +289,7 @@ Key Integration Points Identified:
|
|
|
272
289
|
Risks Noted:
|
|
273
290
|
- {{primary risk}}
|
|
274
291
|
|
|
275
|
-
{{If missing info}}:
|
|
292
|
+
{{If missing info}}:
|
|
276
293
|
Note: Some technical details were unclear. The story includes exploration tasks to gather needed information during implementation.
|
|
277
294
|
|
|
278
295
|
Next Steps:
|
|
@@ -27,6 +27,7 @@ Ask the user:
|
|
|
27
27
|
2. **Provide existing requirements** - Do you have a requirements document, epic, or feature description you can share?
|
|
28
28
|
|
|
29
29
|
3. **Describe the focus** - Can you briefly describe what enhancement or feature you're planning? For example:
|
|
30
|
+
|
|
30
31
|
- 'Adding payment processing to the user service'
|
|
31
32
|
- 'Refactoring the authentication module'
|
|
32
33
|
- 'Integrating with a new third-party API'
|
|
@@ -62,6 +63,7 @@ Ask the user these elicitation questions to better understand their needs:
|
|
|
62
63
|
CRITICAL: Before generating documentation, conduct extensive analysis of the existing codebase:
|
|
63
64
|
|
|
64
65
|
1. **Explore Key Areas**:
|
|
66
|
+
|
|
65
67
|
- Entry points (main files, index files, app initializers)
|
|
66
68
|
- Configuration files and environment setup
|
|
67
69
|
- Package dependencies and versions
|
|
@@ -69,6 +71,7 @@ CRITICAL: Before generating documentation, conduct extensive analysis of the exi
|
|
|
69
71
|
- Test suites and coverage
|
|
70
72
|
|
|
71
73
|
2. **Ask Clarifying Questions**:
|
|
74
|
+
|
|
72
75
|
- "I see you're using [technology X]. Are there any custom patterns or conventions I should document?"
|
|
73
76
|
- "What are the most critical/complex parts of this system that developers struggle with?"
|
|
74
77
|
- "Are there any undocumented 'tribal knowledge' areas I should capture?"
|
|
@@ -111,9 +114,9 @@ This document captures the CURRENT STATE of the [Project Name] codebase, includi
|
|
|
111
114
|
|
|
112
115
|
### Change Log
|
|
113
116
|
|
|
114
|
-
| Date
|
|
115
|
-
|
|
116
|
-
| [Date] | 1.0
|
|
117
|
+
| Date | Version | Description | Author |
|
|
118
|
+
| ------ | ------- | --------------------------- | --------- |
|
|
119
|
+
| [Date] | 1.0 | Initial brownfield analysis | [Analyst] |
|
|
117
120
|
|
|
118
121
|
## Quick Reference - Key Files and Entry Points
|
|
119
122
|
|
|
@@ -136,11 +139,11 @@ This document captures the CURRENT STATE of the [Project Name] codebase, includi
|
|
|
136
139
|
|
|
137
140
|
### Actual Tech Stack (from package.json/requirements.txt)
|
|
138
141
|
|
|
139
|
-
| Category
|
|
140
|
-
|
|
141
|
-
| Runtime
|
|
142
|
-
| Framework | Express
|
|
143
|
-
| Database
|
|
142
|
+
| Category | Technology | Version | Notes |
|
|
143
|
+
| --------- | ---------- | ------- | -------------------------- |
|
|
144
|
+
| Runtime | Node.js | 16.x | [Any constraints] |
|
|
145
|
+
| Framework | Express | 4.18.2 | [Custom middleware?] |
|
|
146
|
+
| Database | PostgreSQL | 13 | [Connection pooling setup] |
|
|
144
147
|
|
|
145
148
|
etc...
|
|
146
149
|
|
|
@@ -179,6 +182,7 @@ project-root/
|
|
|
179
182
|
### Data Models
|
|
180
183
|
|
|
181
184
|
Instead of duplicating, reference actual model files:
|
|
185
|
+
|
|
182
186
|
- **User Model**: See `src/models/User.js`
|
|
183
187
|
- **Order Model**: See `src/models/Order.js`
|
|
184
188
|
- **Related Types**: TypeScript definitions in `src/types/`
|
|
@@ -208,10 +212,10 @@ Instead of duplicating, reference actual model files:
|
|
|
208
212
|
|
|
209
213
|
### External Services
|
|
210
214
|
|
|
211
|
-
| Service
|
|
212
|
-
|
|
213
|
-
| Stripe
|
|
214
|
-
| SendGrid | Emails
|
|
215
|
+
| Service | Purpose | Integration Type | Key Files |
|
|
216
|
+
| -------- | -------- | ---------------- | ------------------------------ |
|
|
217
|
+
| Stripe | Payments | REST API | `src/integrations/stripe/` |
|
|
218
|
+
| SendGrid | Emails | SDK | `src/services/emailService.js` |
|
|
215
219
|
|
|
216
220
|
etc...
|
|
217
221
|
|
|
@@ -256,6 +260,7 @@ npm run test:integration # Runs integration tests (requires local DB)
|
|
|
256
260
|
### Files That Will Need Modification
|
|
257
261
|
|
|
258
262
|
Based on the enhancement requirements, these files will be affected:
|
|
263
|
+
|
|
259
264
|
- `src/services/userService.js` - Add new user fields
|
|
260
265
|
- `src/models/User.js` - Update schema
|
|
261
266
|
- `src/routes/userRoutes.js` - New endpoints
|
|
@@ -293,6 +298,7 @@ npm run seed # Seed test data
|
|
|
293
298
|
### 4. Document Delivery
|
|
294
299
|
|
|
295
300
|
1. **In Web UI (Gemini, ChatGPT, Claude)**:
|
|
301
|
+
|
|
296
302
|
- Present the entire document in one response (or multiple if too long)
|
|
297
303
|
- Tell user to copy and save as `docs/brownfield-architecture.md` or `docs/project-architecture.md`
|
|
298
304
|
- Mention it can be sharded later in IDE if needed
|
|
@@ -338,4 +344,4 @@ Apply the advanced elicitation task after major sections to refine based on user
|
|
|
338
344
|
- References actual files rather than duplicating content when possible
|
|
339
345
|
- Documents technical debt, workarounds, and constraints honestly
|
|
340
346
|
- For brownfield projects with PRD: Provides clear enhancement impact analysis
|
|
341
|
-
- The goal is PRACTICAL documentation for AI agents doing real work
|
|
347
|
+
- The goal is PRACTICAL documentation for AI agents doing real work
|
|
@@ -43,7 +43,7 @@ If user selects Option 1, present numbered list of techniques from the brainstor
|
|
|
43
43
|
1. Apply selected technique according to data file description
|
|
44
44
|
2. Keep engaging with technique until user indicates they want to:
|
|
45
45
|
- Choose a different technique
|
|
46
|
-
- Apply current ideas to a new technique
|
|
46
|
+
- Apply current ideas to a new technique
|
|
47
47
|
- Move to convergent phase
|
|
48
48
|
- End session
|
|
49
49
|
|
|
@@ -6,7 +6,7 @@ Provide a user-friendly interface to the BMad knowledge base without overwhelmin
|
|
|
6
6
|
|
|
7
7
|
## Instructions
|
|
8
8
|
|
|
9
|
-
When entering KB mode (
|
|
9
|
+
When entering KB mode (\*kb-mode), follow these steps:
|
|
10
10
|
|
|
11
11
|
### 1. Welcome and Guide
|
|
12
12
|
|
|
@@ -48,12 +48,12 @@ Or ask me about anything else related to BMad-Method!
|
|
|
48
48
|
When user is done or wants to exit KB mode:
|
|
49
49
|
|
|
50
50
|
- Summarize key points discussed if helpful
|
|
51
|
-
- Remind them they can return to KB mode anytime with
|
|
51
|
+
- Remind them they can return to KB mode anytime with \*kb-mode
|
|
52
52
|
- Suggest next steps based on what was discussed
|
|
53
53
|
|
|
54
54
|
## Example Interaction
|
|
55
55
|
|
|
56
|
-
**User**:
|
|
56
|
+
**User**: \*kb-mode
|
|
57
57
|
|
|
58
58
|
**Assistant**: I've entered KB mode and have access to the full BMad knowledge base. I can help you with detailed information about any aspect of BMad-Method.
|
|
59
59
|
|
|
@@ -11,11 +11,13 @@ When a developer agent marks a story as "Ready for Review", perform a comprehens
|
|
|
11
11
|
## Review Process
|
|
12
12
|
|
|
13
13
|
1. **Read the Complete Story**
|
|
14
|
+
|
|
14
15
|
- Review all acceptance criteria
|
|
15
16
|
- Understand the dev notes and requirements
|
|
16
17
|
- Note any completion notes from the developer
|
|
17
18
|
|
|
18
19
|
2. **Verify Implementation Against Dev Notes Guidance**
|
|
20
|
+
|
|
19
21
|
- Review the "Dev Notes" section for specific technical guidance provided to the developer
|
|
20
22
|
- Verify the developer's implementation follows the architectural patterns specified in Dev Notes
|
|
21
23
|
- Check that file locations match the project structure guidance in Dev Notes
|
|
@@ -23,11 +25,13 @@ When a developer agent marks a story as "Ready for Review", perform a comprehens
|
|
|
23
25
|
- Validate that security considerations mentioned in Dev Notes were implemented
|
|
24
26
|
|
|
25
27
|
3. **Focus on the File List**
|
|
28
|
+
|
|
26
29
|
- Verify all files listed were actually created/modified
|
|
27
30
|
- Check for any missing files that should have been updated
|
|
28
31
|
- Ensure file locations align with the project structure guidance from Dev Notes
|
|
29
32
|
|
|
30
33
|
4. **Senior Developer Code Review**
|
|
34
|
+
|
|
31
35
|
- Review code with the eye of a senior developer
|
|
32
36
|
- If changes form a cohesive whole, review them together
|
|
33
37
|
- If changes are independent, review incrementally file by file
|
|
@@ -40,6 +44,7 @@ When a developer agent marks a story as "Ready for Review", perform a comprehens
|
|
|
40
44
|
- Best practices and patterns
|
|
41
45
|
|
|
42
46
|
5. **Active Refactoring**
|
|
47
|
+
|
|
43
48
|
- As a senior developer, you CAN and SHOULD refactor code where improvements are needed
|
|
44
49
|
- When refactoring:
|
|
45
50
|
- Make the changes directly in the files
|
|
@@ -49,17 +54,20 @@ When a developer agent marks a story as "Ready for Review", perform a comprehens
|
|
|
49
54
|
- Update the File List if you modify additional files
|
|
50
55
|
|
|
51
56
|
6. **Standards Compliance Check**
|
|
57
|
+
|
|
52
58
|
- Verify adherence to `docs/coding-standards.md`
|
|
53
59
|
- Check compliance with `docs/unified-project-structure.md`
|
|
54
60
|
- Validate testing approach against `docs/testing-strategy.md`
|
|
55
61
|
- Ensure all guidelines mentioned in the story are followed
|
|
56
62
|
|
|
57
63
|
7. **Acceptance Criteria Validation**
|
|
64
|
+
|
|
58
65
|
- Verify each AC is fully implemented
|
|
59
66
|
- Check for any missing functionality
|
|
60
67
|
- Validate edge cases are handled
|
|
61
68
|
|
|
62
69
|
8. **Test Coverage Review**
|
|
70
|
+
|
|
63
71
|
- Ensure unit tests cover edge cases
|
|
64
72
|
- Add missing tests if critical coverage is lacking
|
|
65
73
|
- Verify integration tests (if required) are comprehensive
|
|
@@ -81,25 +89,31 @@ After review and any refactoring, append your results to the story file in the Q
|
|
|
81
89
|
## QA Results
|
|
82
90
|
|
|
83
91
|
### Review Date: [Date]
|
|
92
|
+
|
|
84
93
|
### Reviewed By: Quinn (Senior Developer QA)
|
|
85
94
|
|
|
86
95
|
### Code Quality Assessment
|
|
96
|
+
|
|
87
97
|
[Overall assessment of implementation quality]
|
|
88
98
|
|
|
89
99
|
### Refactoring Performed
|
|
100
|
+
|
|
90
101
|
[List any refactoring you performed with explanations]
|
|
102
|
+
|
|
91
103
|
- **File**: [filename]
|
|
92
104
|
- **Change**: [what was changed]
|
|
93
105
|
- **Why**: [reason for change]
|
|
94
106
|
- **How**: [how it improves the code]
|
|
95
107
|
|
|
96
108
|
### Compliance Check
|
|
109
|
+
|
|
97
110
|
- Coding Standards: [✓/✗] [notes if any]
|
|
98
111
|
- Project Structure: [✓/✗] [notes if any]
|
|
99
112
|
- Testing Strategy: [✓/✗] [notes if any]
|
|
100
113
|
- All ACs Met: [✓/✗] [notes if any]
|
|
101
114
|
|
|
102
115
|
### Improvements Checklist
|
|
116
|
+
|
|
103
117
|
[Check off items you handled yourself, leave unchecked for dev to address]
|
|
104
118
|
|
|
105
119
|
- [x] Refactored user service for better error handling (services/user.service.ts)
|
|
@@ -109,12 +123,15 @@ After review and any refactoring, append your results to the story file in the Q
|
|
|
109
123
|
- [ ] Update API documentation for new error codes
|
|
110
124
|
|
|
111
125
|
### Security Review
|
|
126
|
+
|
|
112
127
|
[Any security concerns found and whether addressed]
|
|
113
128
|
|
|
114
129
|
### Performance Considerations
|
|
130
|
+
|
|
115
131
|
[Any performance issues found and whether addressed]
|
|
116
132
|
|
|
117
133
|
### Final Status
|
|
134
|
+
|
|
118
135
|
[✓ Approved - Ready for Done] / [✗ Changes Required - See unchecked items above]
|
|
119
136
|
```
|
|
120
137
|
|
|
@@ -142,4 +159,4 @@ After review:
|
|
|
142
159
|
|
|
143
160
|
1. If all items are checked and approved: Update story status to "Done"
|
|
144
161
|
2. If unchecked items remain: Keep status as "Review" for dev to address
|
|
145
|
-
3. Always provide constructive feedback and explanations for learning
|
|
162
|
+
3. Always provide constructive feedback and explanations for learning
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
# BMad-Method BMAd Code User Guide
|
|
2
|
+
|
|
3
|
+
This guide will help you understand and effectively use the BMad Method for agile AI driven planning and development.
|
|
4
|
+
|
|
5
|
+
## The BMad Plan and Execute Workflow
|
|
6
|
+
|
|
7
|
+
First, here is the full standard Greenfield Planning + Execution Workflow. Brownfield is very similar, but it's suggested to understand this greenfield first, even if on a simple project before tackling a brownfield project. The BMad Method needs to be installed to the root of your new project folder. For the planning phase, you can optionally perform it with powerful web agents, potentially resulting in higher quality results at a fraction of the cost it would take to complete if providing your own API key or credits in some Agentic tools. For planning, powerful thinking models and larger context - along with working as a partner with the agents will net the best results.
|
|
8
|
+
|
|
9
|
+
If you are going to use the BMad Method with a Brownfield project (an existing project), review **[Working in the Brownfield](./working-in-the-brownfield.md)**.
|
|
10
|
+
|
|
11
|
+
If you do not see the diagrams that following rendering, you can install Markdown All in One along with the Markdown Preview Mermaid Support plugins to VSCode (or one of the forked clones). With these plugin's, if you right click on the tab when open, there should be a Open Preview option, or check the IDE documentation.
|
|
12
|
+
|
|
13
|
+
### The Planning Workflow (Web UI or Powerful IDE Agents)
|
|
14
|
+
|
|
15
|
+
Before development begins, BMad follows a structured planning workflow that's ideally done in web UI for cost efficiency:
|
|
16
|
+
|
|
17
|
+
```mermaid
|
|
18
|
+
graph TD
|
|
19
|
+
A["Start: Project Idea"] --> B{"Optional: Analyst Research"}
|
|
20
|
+
B -->|Yes| C["Analyst: Brainstorming (Optional)"]
|
|
21
|
+
B -->|No| G{"Project Brief Available?"}
|
|
22
|
+
C --> C2["Analyst: Market Research (Optional)"]
|
|
23
|
+
C2 --> C3["Analyst: Competitor Analysis (Optional)"]
|
|
24
|
+
C3 --> D["Analyst: Create Project Brief"]
|
|
25
|
+
D --> G
|
|
26
|
+
G -->|Yes| E["PM: Create PRD from Brief (Fast Track)"]
|
|
27
|
+
G -->|No| E2["PM: Interactive PRD Creation (More Questions)"]
|
|
28
|
+
E --> F["PRD Created with FRs, NFRs, Epics & Stories"]
|
|
29
|
+
E2 --> F
|
|
30
|
+
F --> F2{"UX Required?"}
|
|
31
|
+
F2 -->|Yes| F3["UX Expert: Create Front End Spec"]
|
|
32
|
+
F2 -->|No| H["Architect: Create Architecture from PRD"]
|
|
33
|
+
F3 --> F4["UX Expert: Generate UI Prompt for Lovable/V0 (Optional)"]
|
|
34
|
+
F4 --> H2["Architect: Create Architecture from PRD + UX Spec"]
|
|
35
|
+
H --> I["PO: Run Master Checklist"]
|
|
36
|
+
H2 --> I
|
|
37
|
+
I --> J{"Documents Aligned?"}
|
|
38
|
+
J -->|Yes| K["Planning Complete"]
|
|
39
|
+
J -->|No| L["PO: Update Epics & Stories"]
|
|
40
|
+
L --> M["Update PRD/Architecture as needed"]
|
|
41
|
+
M --> I
|
|
42
|
+
K --> N["📁 Switch to IDE (If in a Web Agent Platform)"]
|
|
43
|
+
N --> O["PO: Shard Documents"]
|
|
44
|
+
O --> P["Ready for SM/Dev Cycle"]
|
|
45
|
+
|
|
46
|
+
style A fill:#f5f5f5,color:#000
|
|
47
|
+
style B fill:#e3f2fd,color:#000
|
|
48
|
+
style C fill:#e8f5e9,color:#000
|
|
49
|
+
style C2 fill:#e8f5e9,color:#000
|
|
50
|
+
style C3 fill:#e8f5e9,color:#000
|
|
51
|
+
style D fill:#e8f5e9,color:#000
|
|
52
|
+
style E fill:#fff3e0,color:#000
|
|
53
|
+
style E2 fill:#fff3e0,color:#000
|
|
54
|
+
style F fill:#fff3e0,color:#000
|
|
55
|
+
style F2 fill:#e3f2fd,color:#000
|
|
56
|
+
style F3 fill:#e1f5fe,color:#000
|
|
57
|
+
style F4 fill:#e1f5fe,color:#000
|
|
58
|
+
style G fill:#e3f2fd,color:#000
|
|
59
|
+
style H fill:#f3e5f5,color:#000
|
|
60
|
+
style H2 fill:#f3e5f5,color:#000
|
|
61
|
+
style I fill:#f9ab00,color:#fff
|
|
62
|
+
style J fill:#e3f2fd,color:#000
|
|
63
|
+
style K fill:#34a853,color:#fff
|
|
64
|
+
style L fill:#f9ab00,color:#fff
|
|
65
|
+
style M fill:#fff3e0,color:#000
|
|
66
|
+
style N fill:#1a73e8,color:#fff
|
|
67
|
+
style O fill:#f9ab00,color:#fff
|
|
68
|
+
style P fill:#34a853,color:#fff
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
#### Web UI to IDE Transition
|
|
72
|
+
|
|
73
|
+
**Critical Transition Point**: Once the PO confirms document alignment, you must switch from web UI to IDE to begin the development workflow:
|
|
74
|
+
|
|
75
|
+
1. **Copy Documents to Project**: Ensure `docs/prd.md` and `docs/architecture.md` are in your project's docs folder (or a custom location you can specify during installation)
|
|
76
|
+
2. **Switch to IDE**: Open your project in your preferred Agentic IDE
|
|
77
|
+
3. **Document Sharding**: Use the PO agent to shard the PRD and then the Architecture
|
|
78
|
+
4. **Begin Development**: Start the Core Development Cycle that follows
|
|
79
|
+
|
|
80
|
+
### The Core Development Cycle (IDE)
|
|
81
|
+
|
|
82
|
+
Once planning is complete and documents are sharded, BMad follows a structured development workflow:
|
|
83
|
+
|
|
84
|
+
```mermaid
|
|
85
|
+
graph TD
|
|
86
|
+
A["Development Phase Start"] --> B["SM: Reviews Previous Story Dev/QA Notes"]
|
|
87
|
+
B --> B2["SM: Drafts Next Story from Sharded Epic + Architecture"]
|
|
88
|
+
B2 --> B3{"QA: Review Story Draft (Optional)"}
|
|
89
|
+
B3 -->|Review Requested| B4["QA: Review Story Against Artifacts"]
|
|
90
|
+
B3 -->|Skip Review| C{"User Approval"}
|
|
91
|
+
B4 --> C
|
|
92
|
+
C -->|Approved| D["Dev: Sequential Task Execution"]
|
|
93
|
+
C -->|Needs Changes| B2
|
|
94
|
+
D --> E["Dev: Implement Tasks + Tests"]
|
|
95
|
+
E --> F["Dev: Run All Validations"]
|
|
96
|
+
F --> G["Dev: Mark Ready for Review + Add Notes"]
|
|
97
|
+
G --> H{"User Verification"}
|
|
98
|
+
H -->|Request QA Review| I["QA: Senior Dev Review + Active Refactoring"]
|
|
99
|
+
H -->|Approve Without QA| M["IMPORTANT: Verify All Regression Tests and Linting are Passing"]
|
|
100
|
+
I --> J["QA: Review, Refactor Code, Add Tests, Document Notes"]
|
|
101
|
+
J --> L{"QA Decision"}
|
|
102
|
+
L -->|Needs Dev Work| D
|
|
103
|
+
L -->|Approved| M
|
|
104
|
+
H -->|Needs Fixes| D
|
|
105
|
+
M --> N["IMPORTANT: COMMIT YOUR CHANGES BEFORE PROCEEDING!"]
|
|
106
|
+
N --> K["Mark Story as Done"]
|
|
107
|
+
K --> B
|
|
108
|
+
|
|
109
|
+
style A fill:#f5f5f5,color:#000
|
|
110
|
+
style B fill:#e8f5e9,color:#000
|
|
111
|
+
style B2 fill:#e8f5e9,color:#000
|
|
112
|
+
style B3 fill:#e3f2fd,color:#000
|
|
113
|
+
style B4 fill:#fce4ec,color:#000
|
|
114
|
+
style C fill:#e3f2fd,color:#000
|
|
115
|
+
style D fill:#e3f2fd,color:#000
|
|
116
|
+
style E fill:#e3f2fd,color:#000
|
|
117
|
+
style F fill:#e3f2fd,color:#000
|
|
118
|
+
style G fill:#e3f2fd,color:#000
|
|
119
|
+
style H fill:#e3f2fd,color:#000
|
|
120
|
+
style I fill:#f9ab00,color:#fff
|
|
121
|
+
style J fill:#ffd54f,color:#000
|
|
122
|
+
style K fill:#34a853,color:#fff
|
|
123
|
+
style L fill:#e3f2fd,color:#000
|
|
124
|
+
style M fill:#ff5722,color:#fff
|
|
125
|
+
style N fill:#d32f2f,color:#fff
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Installation
|
|
129
|
+
|
|
130
|
+
### Optional
|
|
131
|
+
|
|
132
|
+
If you want to do the planning in the Web with Claude (Sonnet 4 or Opus), Gemini Gem (2.5 Pro), or Custom GPT's:
|
|
133
|
+
|
|
134
|
+
1. Navigate to `dist/teams/`
|
|
135
|
+
2. Copy `team-fullstack.txt`
|
|
136
|
+
3. Create new Gemini Gem or CustomGPT
|
|
137
|
+
4. Upload file with instructions: "Your critical operating instructions are attached, do not break character as directed"
|
|
138
|
+
5. Type `/help` to see available commands
|
|
139
|
+
|
|
140
|
+
### IDE Project Setup
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
# Interactive installation (recommended)
|
|
144
|
+
npx bmad-method install
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## Special Agents
|
|
148
|
+
|
|
149
|
+
There are two bmad agents - in the future they will be consolidated into the single bmad-master.
|
|
150
|
+
|
|
151
|
+
### BMad-Master
|
|
152
|
+
|
|
153
|
+
This agent can do any task or command that all other agents can do, aside from actual story implementation. Additionally, this agent can help explain the BMad Method when in the web by accessing the knowledge base and explaining anything to you about the process.
|
|
154
|
+
|
|
155
|
+
If you don't want to bother switching between different agents aside from the dev, this is the agent for you. Just remember that as the context grows, the performance of the agent degrades, therefore it is important to instruct the agent to compact the conversation and start a new conversation with the compacted conversation as the initial message. Do this often, preferably after each story is implemented.
|
|
156
|
+
|
|
157
|
+
### BMad-Orchestrator
|
|
158
|
+
|
|
159
|
+
This agent should NOT be used within the IDE, it is a heavy weight special purpose agent that utilizes a lot of context and can morph into any other agent. This exists solely to facilitate the team's within the web bundles. If you use a web bundle you will be greeted by the BMad Orchestrator.
|
|
160
|
+
|
|
161
|
+
### How Agents Work
|
|
162
|
+
|
|
163
|
+
#### Dependencies System
|
|
164
|
+
|
|
165
|
+
Each agent has a YAML section that defines its dependencies:
|
|
166
|
+
|
|
167
|
+
```yaml
|
|
168
|
+
dependencies:
|
|
169
|
+
templates:
|
|
170
|
+
- prd-template.md
|
|
171
|
+
- user-story-template.md
|
|
172
|
+
tasks:
|
|
173
|
+
- create-doc.md
|
|
174
|
+
- shard-doc.md
|
|
175
|
+
data:
|
|
176
|
+
- bmad-kb.md
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
**Key Points:**
|
|
180
|
+
|
|
181
|
+
- Agents only load resources they need (lean context)
|
|
182
|
+
- Dependencies are automatically resolved during bundling
|
|
183
|
+
- Resources are shared across agents to maintain consistency
|
|
184
|
+
|
|
185
|
+
#### Agent Interaction
|
|
186
|
+
|
|
187
|
+
**In IDE:**
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
# Some Ide's, like Cursor or Windsurf for example, utilize manual rules so interaction is done with the '@' symbol
|
|
191
|
+
@pm Create a PRD for a task management app
|
|
192
|
+
@architect Design the system architecture
|
|
193
|
+
@dev Implement the user authentication
|
|
194
|
+
|
|
195
|
+
# Some, like Claude Code use slash commands instead
|
|
196
|
+
/pm Create user stories
|
|
197
|
+
/dev Fix the login bug
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
#### Interactive Modes
|
|
201
|
+
|
|
202
|
+
- **Incremental Mode**: Step-by-step with user input
|
|
203
|
+
- **YOLO Mode**: Rapid generation with minimal interaction
|
|
204
|
+
|
|
205
|
+
## IDE Integration
|
|
206
|
+
|
|
207
|
+
### IDE Best Practices
|
|
208
|
+
|
|
209
|
+
- **Context Management**: Keep relevant files only in context, keep files as lean and focused as necessary
|
|
210
|
+
- **Agent Selection**: Use appropriate agent for task
|
|
211
|
+
- **Iterative Development**: Work in small, focused tasks
|
|
212
|
+
- **File Organization**: Maintain clean project structure
|
|
213
|
+
- **Commit Regularly**: Save your work frequently
|
|
214
|
+
|
|
215
|
+
## Technical Preferences System
|
|
216
|
+
|
|
217
|
+
BMad includes a personalization system through the `technical-preferences.md` file located in `.bmad-core/data/` - this can help bias the PM and Architect to recommend your preferences for design patterns, technology selection, or anything else you would like to put in here.
|
|
218
|
+
|
|
219
|
+
### Using with Web Bundles
|
|
220
|
+
|
|
221
|
+
When creating custom web bundles or uploading to AI platforms, include your `technical-preferences.md` content to ensure agents have your preferences from the start of any conversation.
|
|
222
|
+
|
|
223
|
+
## Core Configuration
|
|
224
|
+
|
|
225
|
+
The `bmad-core/core-config.yaml` file is a critical config that enables BMad to work seamlessly with differing project structures, more options will be made available in the future. Currently the most important is the devLoadAlwaysFiles list section in the yaml.
|
|
226
|
+
|
|
227
|
+
### Developer Context Files
|
|
228
|
+
|
|
229
|
+
Define which files the dev agent should always load:
|
|
230
|
+
|
|
231
|
+
```yaml
|
|
232
|
+
devLoadAlwaysFiles:
|
|
233
|
+
- docs/architecture/coding-standards.md
|
|
234
|
+
- docs/architecture/tech-stack.md
|
|
235
|
+
- docs/architecture/project-structure.md
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
You will want to verify from sharding your architecture that these documents exist, that they are as lean as possible, and contain exactly the information you want your dev agent to ALWAYS load into it's context. These are the rules the agent will follow.
|
|
239
|
+
|
|
240
|
+
As your project grows and the code starts to build consistent patterns, coding standards should be reduced to include only the standards that the agent still makes with. The agent will look at surrounding code in files to infer the coding standards that are relevant to the current task.
|
|
241
|
+
|
|
242
|
+
## Getting Help
|
|
243
|
+
|
|
244
|
+
- **Discord Community**: [Join Discord](https://discord.gg/gk8jAdXWmj)
|
|
245
|
+
- **GitHub Issues**: [Report bugs](https://github.com/bmadcode/bmad-method/issues)
|
|
246
|
+
- **Documentation**: [Browse docs](https://github.com/bmadcode/bmad-method/docs)
|
|
247
|
+
- **YouTube**: [BMadCode Channel](https://www.youtube.com/@BMadCode)
|
|
248
|
+
|
|
249
|
+
## Conclusion
|
|
250
|
+
|
|
251
|
+
Remember: BMad is designed to enhance your development process, not replace your expertise. Use it as a powerful tool to accelerate your projects while maintaining control over design decisions and implementation details.
|