bmad-method 6.3.1-next.2 → 6.3.1-next.21

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.
Files changed (160) hide show
  1. package/package.json +3 -3
  2. package/src/bmm-skills/1-analysis/bmad-agent-analyst/SKILL.md +51 -36
  3. package/src/bmm-skills/1-analysis/bmad-agent-analyst/customize.toml +90 -0
  4. package/src/bmm-skills/1-analysis/bmad-agent-tech-writer/SKILL.md +50 -33
  5. package/src/bmm-skills/1-analysis/bmad-agent-tech-writer/customize.toml +81 -0
  6. package/src/bmm-skills/1-analysis/bmad-document-project/SKILL.md +57 -1
  7. package/src/bmm-skills/1-analysis/bmad-document-project/customize.toml +41 -0
  8. package/src/bmm-skills/1-analysis/bmad-document-project/workflows/deep-dive-instructions.md +1 -0
  9. package/src/bmm-skills/1-analysis/bmad-document-project/workflows/full-scan-instructions.md +1 -0
  10. package/src/bmm-skills/1-analysis/bmad-prfaq/SKILL.md +48 -9
  11. package/src/bmm-skills/1-analysis/bmad-prfaq/customize.toml +41 -0
  12. package/src/bmm-skills/1-analysis/bmad-prfaq/references/verdict.md +4 -0
  13. package/src/bmm-skills/1-analysis/bmad-product-brief/SKILL.md +44 -9
  14. package/src/bmm-skills/1-analysis/bmad-product-brief/customize.toml +47 -0
  15. package/src/bmm-skills/1-analysis/bmad-product-brief/prompts/contextual-discovery.md +8 -7
  16. package/src/bmm-skills/1-analysis/bmad-product-brief/prompts/draft-and-review.md +6 -5
  17. package/src/bmm-skills/1-analysis/bmad-product-brief/prompts/finalize.md +4 -1
  18. package/src/bmm-skills/1-analysis/bmad-product-brief/prompts/guided-elicitation.md +3 -2
  19. package/src/bmm-skills/1-analysis/research/bmad-domain-research/SKILL.md +91 -1
  20. package/src/bmm-skills/1-analysis/research/bmad-domain-research/customize.toml +41 -0
  21. package/src/bmm-skills/1-analysis/research/bmad-domain-research/domain-steps/step-06-research-synthesis.md +6 -0
  22. package/src/bmm-skills/1-analysis/research/bmad-market-research/SKILL.md +91 -1
  23. package/src/bmm-skills/1-analysis/research/bmad-market-research/customize.toml +41 -0
  24. package/src/bmm-skills/1-analysis/research/bmad-market-research/steps/step-06-research-completion.md +6 -0
  25. package/src/bmm-skills/1-analysis/research/bmad-technical-research/SKILL.md +91 -1
  26. package/src/bmm-skills/1-analysis/research/bmad-technical-research/customize.toml +41 -0
  27. package/src/bmm-skills/1-analysis/research/bmad-technical-research/technical-steps/step-06-research-synthesis.md +6 -0
  28. package/src/bmm-skills/2-plan-workflows/bmad-agent-pm/SKILL.md +50 -35
  29. package/src/bmm-skills/2-plan-workflows/bmad-agent-pm/customize.toml +85 -0
  30. package/src/bmm-skills/2-plan-workflows/bmad-agent-ux-designer/SKILL.md +50 -31
  31. package/src/bmm-skills/2-plan-workflows/bmad-agent-ux-designer/customize.toml +60 -0
  32. package/src/bmm-skills/2-plan-workflows/bmad-create-prd/SKILL.md +99 -1
  33. package/src/bmm-skills/2-plan-workflows/bmad-create-prd/customize.toml +41 -0
  34. package/src/bmm-skills/2-plan-workflows/bmad-create-prd/steps-c/step-08-scoping.md +70 -23
  35. package/src/bmm-skills/2-plan-workflows/bmad-create-prd/steps-c/step-11-polish.md +1 -1
  36. package/src/bmm-skills/2-plan-workflows/bmad-create-prd/steps-c/step-12-complete.md +6 -0
  37. package/src/bmm-skills/2-plan-workflows/bmad-create-ux-design/SKILL.md +70 -1
  38. package/src/bmm-skills/2-plan-workflows/bmad-create-ux-design/customize.toml +41 -0
  39. package/src/bmm-skills/2-plan-workflows/bmad-create-ux-design/steps/step-14-complete.md +6 -0
  40. package/src/bmm-skills/2-plan-workflows/bmad-edit-prd/SKILL.md +97 -1
  41. package/src/bmm-skills/2-plan-workflows/bmad-edit-prd/customize.toml +42 -0
  42. package/src/bmm-skills/2-plan-workflows/bmad-edit-prd/steps-e/step-e-04-complete.md +2 -0
  43. package/src/bmm-skills/2-plan-workflows/bmad-validate-prd/SKILL.md +99 -1
  44. package/src/bmm-skills/2-plan-workflows/bmad-validate-prd/customize.toml +42 -0
  45. package/src/bmm-skills/2-plan-workflows/bmad-validate-prd/steps-v/step-v-13-report-complete.md +1 -0
  46. package/src/bmm-skills/3-solutioning/bmad-agent-architect/SKILL.md +50 -30
  47. package/src/bmm-skills/3-solutioning/bmad-agent-architect/customize.toml +65 -0
  48. package/src/bmm-skills/3-solutioning/bmad-check-implementation-readiness/SKILL.md +86 -1
  49. package/src/bmm-skills/3-solutioning/bmad-check-implementation-readiness/customize.toml +41 -0
  50. package/src/bmm-skills/3-solutioning/bmad-check-implementation-readiness/steps/step-06-final-assessment.md +6 -0
  51. package/src/bmm-skills/3-solutioning/bmad-create-architecture/SKILL.md +69 -1
  52. package/src/bmm-skills/3-solutioning/bmad-create-architecture/customize.toml +41 -0
  53. package/src/bmm-skills/3-solutioning/bmad-create-architecture/steps/step-08-complete.md +6 -0
  54. package/src/bmm-skills/3-solutioning/bmad-create-epics-and-stories/SKILL.md +88 -1
  55. package/src/bmm-skills/3-solutioning/bmad-create-epics-and-stories/customize.toml +41 -0
  56. package/src/bmm-skills/3-solutioning/bmad-create-epics-and-stories/steps/step-04-final-validation.md +6 -0
  57. package/src/bmm-skills/3-solutioning/bmad-generate-project-context/SKILL.md +76 -1
  58. package/src/bmm-skills/3-solutioning/bmad-generate-project-context/customize.toml +41 -0
  59. package/src/bmm-skills/3-solutioning/bmad-generate-project-context/steps/step-03-complete.md +6 -0
  60. package/src/bmm-skills/4-implementation/bmad-agent-dev/SKILL.md +48 -43
  61. package/src/bmm-skills/4-implementation/bmad-agent-dev/customize.toml +90 -0
  62. package/src/bmm-skills/4-implementation/bmad-correct-course/SKILL.md +296 -1
  63. package/src/bmm-skills/4-implementation/bmad-correct-course/customize.toml +41 -0
  64. package/src/bmm-skills/4-implementation/bmad-create-story/SKILL.md +412 -1
  65. package/src/bmm-skills/4-implementation/bmad-create-story/customize.toml +41 -0
  66. package/src/bmm-skills/4-implementation/bmad-qa-generate-e2e-tests/SKILL.md +171 -1
  67. package/src/bmm-skills/4-implementation/bmad-qa-generate-e2e-tests/customize.toml +41 -0
  68. package/src/bmm-skills/4-implementation/bmad-retrospective/SKILL.md +1507 -1
  69. package/src/bmm-skills/4-implementation/bmad-retrospective/customize.toml +41 -0
  70. package/src/bmm-skills/module.yaml +49 -0
  71. package/src/core-skills/bmad-advanced-elicitation/SKILL.md +7 -1
  72. package/src/core-skills/bmad-customize/SKILL.md +111 -0
  73. package/src/core-skills/bmad-customize/scripts/list_customizable_skills.py +231 -0
  74. package/src/core-skills/bmad-customize/scripts/tests/test_list_customizable_skills.py +249 -0
  75. package/src/core-skills/bmad-distillator/resources/distillate-format-reference.md +1 -1
  76. package/src/core-skills/bmad-party-mode/SKILL.md +13 -10
  77. package/src/core-skills/module-help.csv +1 -0
  78. package/src/core-skills/module.yaml +3 -0
  79. package/src/scripts/resolve_config.py +176 -0
  80. package/src/scripts/resolve_customization.py +230 -0
  81. package/tools/installer/cli-utils.js +0 -137
  82. package/tools/installer/commands/install.js +13 -0
  83. package/tools/installer/commands/status.js +1 -1
  84. package/tools/installer/commands/uninstall.js +1 -1
  85. package/tools/installer/core/config.js +4 -1
  86. package/tools/installer/core/existing-install.js +1 -1
  87. package/tools/installer/core/install-paths.js +12 -6
  88. package/tools/installer/core/installer.js +182 -95
  89. package/tools/installer/core/manifest-generator.js +347 -190
  90. package/tools/installer/core/manifest.js +49 -642
  91. package/tools/installer/file-ops.js +1 -1
  92. package/tools/installer/fs-native.js +116 -0
  93. package/tools/installer/ide/_config-driven.js +1 -1
  94. package/tools/installer/ide/platform-codes.js +1 -1
  95. package/tools/installer/ide/shared/path-utils.js +0 -145
  96. package/tools/installer/ide/shared/skill-manifest.js +1 -1
  97. package/tools/installer/message-loader.js +1 -1
  98. package/tools/installer/modules/channel-plan.js +203 -0
  99. package/tools/installer/modules/channel-resolver.js +241 -0
  100. package/tools/installer/modules/community-manager.js +131 -24
  101. package/tools/installer/modules/custom-module-manager.js +161 -47
  102. package/tools/installer/modules/external-manager.js +236 -73
  103. package/tools/installer/modules/official-modules.js +61 -63
  104. package/tools/installer/modules/plugin-resolver.js +1 -1
  105. package/tools/installer/modules/registry-client.js +133 -12
  106. package/tools/installer/modules/registry-fallback.yaml +8 -0
  107. package/tools/installer/modules/version-resolver.js +336 -0
  108. package/tools/installer/project-root.js +55 -1
  109. package/tools/installer/prompts.js +0 -106
  110. package/tools/installer/ui.js +457 -51
  111. package/tools/migrate-custom-module-paths.js +1 -1
  112. package/src/bmm-skills/1-analysis/bmad-agent-analyst/bmad-skill-manifest.yaml +0 -11
  113. package/src/bmm-skills/1-analysis/bmad-agent-tech-writer/bmad-skill-manifest.yaml +0 -11
  114. package/src/bmm-skills/1-analysis/bmad-document-project/workflow.md +0 -25
  115. package/src/bmm-skills/1-analysis/research/bmad-domain-research/workflow.md +0 -51
  116. package/src/bmm-skills/1-analysis/research/bmad-market-research/workflow.md +0 -51
  117. package/src/bmm-skills/1-analysis/research/bmad-technical-research/workflow.md +0 -52
  118. package/src/bmm-skills/2-plan-workflows/bmad-agent-pm/bmad-skill-manifest.yaml +0 -11
  119. package/src/bmm-skills/2-plan-workflows/bmad-agent-ux-designer/bmad-skill-manifest.yaml +0 -11
  120. package/src/bmm-skills/2-plan-workflows/bmad-create-prd/workflow.md +0 -61
  121. package/src/bmm-skills/2-plan-workflows/bmad-create-ux-design/workflow.md +0 -35
  122. package/src/bmm-skills/2-plan-workflows/bmad-edit-prd/workflow.md +0 -62
  123. package/src/bmm-skills/2-plan-workflows/bmad-validate-prd/workflow.md +0 -61
  124. package/src/bmm-skills/3-solutioning/bmad-agent-architect/bmad-skill-manifest.yaml +0 -11
  125. package/src/bmm-skills/3-solutioning/bmad-check-implementation-readiness/workflow.md +0 -47
  126. package/src/bmm-skills/3-solutioning/bmad-create-architecture/workflow.md +0 -32
  127. package/src/bmm-skills/3-solutioning/bmad-create-epics-and-stories/workflow.md +0 -51
  128. package/src/bmm-skills/3-solutioning/bmad-generate-project-context/workflow.md +0 -39
  129. package/src/bmm-skills/4-implementation/bmad-agent-dev/bmad-skill-manifest.yaml +0 -11
  130. package/src/bmm-skills/4-implementation/bmad-correct-course/workflow.md +0 -267
  131. package/src/bmm-skills/4-implementation/bmad-create-story/workflow.md +0 -380
  132. package/src/bmm-skills/4-implementation/bmad-qa-generate-e2e-tests/workflow.md +0 -136
  133. package/src/bmm-skills/4-implementation/bmad-retrospective/workflow.md +0 -1479
  134. package/tools/installer/ide/shared/agent-command-generator.js +0 -180
  135. package/tools/installer/ide/shared/bmad-artifacts.js +0 -208
  136. package/tools/installer/ide/shared/module-injections.js +0 -136
  137. package/tools/installer/ide/templates/agent-command-template.md +0 -14
  138. package/tools/installer/ide/templates/combined/antigravity.md +0 -8
  139. package/tools/installer/ide/templates/combined/default-agent.md +0 -15
  140. package/tools/installer/ide/templates/combined/default-task.md +0 -10
  141. package/tools/installer/ide/templates/combined/default-tool.md +0 -10
  142. package/tools/installer/ide/templates/combined/default-workflow.md +0 -6
  143. package/tools/installer/ide/templates/combined/gemini-agent.toml +0 -14
  144. package/tools/installer/ide/templates/combined/gemini-task.toml +0 -11
  145. package/tools/installer/ide/templates/combined/gemini-tool.toml +0 -11
  146. package/tools/installer/ide/templates/combined/gemini-workflow-yaml.toml +0 -16
  147. package/tools/installer/ide/templates/combined/gemini-workflow.toml +0 -14
  148. package/tools/installer/ide/templates/combined/kiro-agent.md +0 -16
  149. package/tools/installer/ide/templates/combined/kiro-task.md +0 -9
  150. package/tools/installer/ide/templates/combined/kiro-tool.md +0 -9
  151. package/tools/installer/ide/templates/combined/kiro-workflow.md +0 -7
  152. package/tools/installer/ide/templates/combined/opencode-agent.md +0 -15
  153. package/tools/installer/ide/templates/combined/opencode-task.md +0 -13
  154. package/tools/installer/ide/templates/combined/opencode-tool.md +0 -13
  155. package/tools/installer/ide/templates/combined/opencode-workflow-yaml.md +0 -16
  156. package/tools/installer/ide/templates/combined/opencode-workflow.md +0 -16
  157. package/tools/installer/ide/templates/combined/rovodev.md +0 -9
  158. package/tools/installer/ide/templates/combined/trae.md +0 -9
  159. package/tools/installer/ide/templates/combined/windsurf-workflow.md +0 -10
  160. package/tools/installer/ide/templates/split/.gitkeep +0 -0
@@ -1,267 +0,0 @@
1
- # Correct Course - Sprint Change Management Workflow
2
-
3
- **Goal:** Manage significant changes during sprint execution by analyzing impact across all project artifacts and producing a structured Sprint Change Proposal.
4
-
5
- **Your Role:** You are a Developer navigating change management. Analyze the triggering issue, assess impact across PRD, epics, architecture, and UX artifacts, and produce an actionable Sprint Change Proposal with clear handoff.
6
-
7
- ---
8
-
9
- ## INITIALIZATION
10
-
11
- ### Configuration Loading
12
-
13
- Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
14
-
15
- - `project_name`, `user_name`
16
- - `communication_language`, `document_output_language`
17
- - `user_skill_level`
18
- - `implementation_artifacts`
19
- - `planning_artifacts`
20
- - `project_knowledge`
21
- - `date` as system-generated current datetime
22
- - YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
23
- - Language MUST be tailored to `{user_skill_level}`
24
- - Generate all documents in `{document_output_language}`
25
- - DOCUMENT OUTPUT: Updated epics, stories, or PRD sections. Clear, actionable changes. User skill level (`{user_skill_level}`) affects conversation style ONLY, not document updates.
26
-
27
- ### Paths
28
-
29
- - `default_output_file` = `{planning_artifacts}/sprint-change-proposal-{date}.md`
30
-
31
- ### Input Files
32
-
33
- | Input | Path | Load Strategy |
34
- |-------|------|---------------|
35
- | PRD | `{planning_artifacts}/*prd*.md` (whole) or `{planning_artifacts}/*prd*/*.md` (sharded) | FULL_LOAD |
36
- | Epics | `{planning_artifacts}/*epic*.md` (whole) or `{planning_artifacts}/*epic*/*.md` (sharded) | FULL_LOAD |
37
- | Architecture | `{planning_artifacts}/*architecture*.md` (whole) or `{planning_artifacts}/*architecture*/*.md` (sharded) | FULL_LOAD |
38
- | UX Design | `{planning_artifacts}/*ux*.md` (whole) or `{planning_artifacts}/*ux*/*.md` (sharded) | FULL_LOAD |
39
- | Spec | `{planning_artifacts}/*spec-*.md` (whole) | FULL_LOAD |
40
- | Document Project | `{project_knowledge}/index.md` (sharded) | INDEX_GUIDED |
41
-
42
- ### Context
43
-
44
- - Load `**/project-context.md` if it exists
45
-
46
- ---
47
-
48
- ## EXECUTION
49
-
50
- ### Document Discovery - Loading Project Artifacts
51
-
52
- **Strategy**: Course correction needs broad project context to assess change impact accurately. Load all available planning artifacts.
53
-
54
- **Discovery Process for FULL_LOAD documents (PRD, Epics, Architecture, UX Design, Spec):**
55
-
56
- 1. **Search for whole document first** - Look for files matching the whole-document pattern (e.g., `*prd*.md`, `*epic*.md`, `*architecture*.md`, `*ux*.md`, `*spec-*.md`)
57
- 2. **Check for sharded version** - If whole document not found, look for a directory with `index.md` (e.g., `prd/index.md`, `epics/index.md`)
58
- 3. **If sharded version found**:
59
- - Read `index.md` to understand the document structure
60
- - Read ALL section files listed in the index
61
- - Process the combined content as a single document
62
- 4. **Priority**: If both whole and sharded versions exist, use the whole document
63
-
64
- **Discovery Process for INDEX_GUIDED documents (Document Project):**
65
-
66
- 1. **Search for index file** - Look for `{project_knowledge}/index.md`
67
- 2. **If found**: Read the index to understand available documentation sections
68
- 3. **Selectively load sections** based on relevance to the change being analyzed — do NOT load everything, only sections that relate to the impacted areas
69
- 4. **This document is optional** — skip if `{project_knowledge}` does not exist (greenfield projects)
70
-
71
- **Fuzzy matching**: Be flexible with document names — users may use variations like `prd.md`, `bmm-prd.md`, `product-requirements.md`, etc.
72
-
73
- **Missing documents**: Not all documents may exist. PRD and Epics are essential; Architecture, UX Design, Spec, and Document Project are loaded if available. HALT if PRD or Epics cannot be found.
74
-
75
- <workflow>
76
-
77
- <step n="1" goal="Initialize Change Navigation">
78
- <action>Load **/project-context.md for coding standards and project-wide patterns (if exists)</action>
79
- <action>Confirm change trigger and gather user description of the issue</action>
80
- <action>Ask: "What specific issue or change has been identified that requires navigation?"</action>
81
- <action>Verify access to required project documents:</action>
82
- - PRD (Product Requirements Document)
83
- - Current Epics and Stories
84
- - Architecture documentation
85
- - UI/UX specifications
86
- <action>Ask user for mode preference:</action>
87
- - **Incremental** (recommended): Refine each edit collaboratively
88
- - **Batch**: Present all changes at once for review
89
- <action>Store mode selection for use throughout workflow</action>
90
-
91
- <action if="change trigger is unclear">HALT: "Cannot navigate change without clear understanding of the triggering issue. Please provide specific details about what needs to change and why."</action>
92
-
93
- <action if="core documents are unavailable">HALT: "Need access to project documents (PRD, Epics, Architecture, UI/UX) to assess change impact. Please ensure these documents are accessible."</action>
94
- </step>
95
-
96
- <step n="2" goal="Execute Change Analysis Checklist">
97
- <action>Read fully and follow the systematic analysis from: checklist.md</action>
98
- <action>Work through each checklist section interactively with the user</action>
99
- <action>Record status for each checklist item:</action>
100
- - [x] Done - Item completed successfully
101
- - [N/A] Skip - Item not applicable to this change
102
- - [!] Action-needed - Item requires attention or follow-up
103
- <action>Maintain running notes of findings and impacts discovered</action>
104
- <action>Present checklist progress after each major section</action>
105
-
106
- <action if="checklist cannot be completed">Identify blocking issues and work with user to resolve before continuing</action>
107
- </step>
108
-
109
- <step n="3" goal="Draft Specific Change Proposals">
110
- <action>Based on checklist findings, create explicit edit proposals for each identified artifact</action>
111
-
112
- <action>For Story changes:</action>
113
-
114
- - Show old → new text format
115
- - Include story ID and section being modified
116
- - Provide rationale for each change
117
- - Example format:
118
-
119
- ```
120
- Story: [STORY-123] User Authentication
121
- Section: Acceptance Criteria
122
-
123
- OLD:
124
- - User can log in with email/password
125
-
126
- NEW:
127
- - User can log in with email/password
128
- - User can enable 2FA via authenticator app
129
-
130
- Rationale: Security requirement identified during implementation
131
- ```
132
-
133
- <action>For PRD modifications:</action>
134
-
135
- - Specify exact sections to update
136
- - Show current content and proposed changes
137
- - Explain impact on MVP scope and requirements
138
-
139
- <action>For Architecture changes:</action>
140
-
141
- - Identify affected components, patterns, or technology choices
142
- - Describe diagram updates needed
143
- - Note any ripple effects on other components
144
-
145
- <action>For UI/UX specification updates:</action>
146
-
147
- - Reference specific screens or components
148
- - Show wireframe or flow changes needed
149
- - Connect changes to user experience impact
150
-
151
- <check if="mode is Incremental">
152
- <action>Present each edit proposal individually</action>
153
- <ask>Review and refine this change? Options: Approve [a], Edit [e], Skip [s]</ask>
154
- <action>Iterate on each proposal based on user feedback</action>
155
- </check>
156
-
157
- <action if="mode is Batch">Collect all edit proposals and present together at end of step</action>
158
-
159
- </step>
160
-
161
- <step n="4" goal="Generate Sprint Change Proposal">
162
- <action>Compile comprehensive Sprint Change Proposal document with following sections:</action>
163
-
164
- <action>Section 1: Issue Summary</action>
165
-
166
- - Clear problem statement describing what triggered the change
167
- - Context about when/how the issue was discovered
168
- - Evidence or examples demonstrating the issue
169
-
170
- <action>Section 2: Impact Analysis</action>
171
-
172
- - Epic Impact: Which epics are affected and how
173
- - Story Impact: Current and future stories requiring changes
174
- - Artifact Conflicts: PRD, Architecture, UI/UX documents needing updates
175
- - Technical Impact: Code, infrastructure, or deployment implications
176
-
177
- <action>Section 3: Recommended Approach</action>
178
-
179
- - Present chosen path forward from checklist evaluation:
180
- - Direct Adjustment: Modify/add stories within existing plan
181
- - Potential Rollback: Revert completed work to simplify resolution
182
- - MVP Review: Reduce scope or modify goals
183
- - Provide clear rationale for recommendation
184
- - Include effort estimate, risk assessment, and timeline impact
185
-
186
- <action>Section 4: Detailed Change Proposals</action>
187
-
188
- - Include all refined edit proposals from Step 3
189
- - Group by artifact type (Stories, PRD, Architecture, UI/UX)
190
- - Ensure each change includes before/after and justification
191
-
192
- <action>Section 5: Implementation Handoff</action>
193
-
194
- - Categorize change scope:
195
- - Minor: Direct implementation by Developer agent
196
- - Moderate: Backlog reorganization needed (PO/DEV)
197
- - Major: Fundamental replan required (PM/Architect)
198
- - Specify handoff recipients and their responsibilities
199
- - Define success criteria for implementation
200
-
201
- <action>Present complete Sprint Change Proposal to user</action>
202
- <action>Write Sprint Change Proposal document to {default_output_file}</action>
203
- <ask>Review complete proposal. Continue [c] or Edit [e]?</ask>
204
- </step>
205
-
206
- <step n="5" goal="Finalize and Route for Implementation">
207
- <action>Get explicit user approval for complete proposal</action>
208
- <ask>Do you approve this Sprint Change Proposal for implementation? (yes/no/revise)</ask>
209
-
210
- <check if="no or revise">
211
- <action>Gather specific feedback on what needs adjustment</action>
212
- <action>Return to appropriate step to address concerns</action>
213
- <goto step="3">If changes needed to edit proposals</goto>
214
- <goto step="4">If changes needed to overall proposal structure</goto>
215
-
216
- </check>
217
-
218
- <check if="yes the proposal is approved by the user">
219
- <action>Finalize Sprint Change Proposal document</action>
220
- <action>Determine change scope classification:</action>
221
-
222
- - **Minor**: Can be implemented directly by Developer agent
223
- - **Moderate**: Requires backlog reorganization and PO/DEV coordination
224
- - **Major**: Needs fundamental replan with PM/Architect involvement
225
-
226
- <action>Provide appropriate handoff based on scope:</action>
227
-
228
- </check>
229
-
230
- <check if="Minor scope">
231
- <action>Route to: Developer agent for direct implementation</action>
232
- <action>Deliverables: Finalized edit proposals and implementation tasks</action>
233
- </check>
234
-
235
- <check if="Moderate scope">
236
- <action>Route to: Product Owner / Developer agents</action>
237
- <action>Deliverables: Sprint Change Proposal + backlog reorganization plan</action>
238
- </check>
239
-
240
- <check if="Major scope">
241
- <action>Route to: Product Manager / Solution Architect</action>
242
- <action>Deliverables: Complete Sprint Change Proposal + escalation notice</action>
243
-
244
- <action>Confirm handoff completion and next steps with user</action>
245
- <action>Document handoff in workflow execution log</action>
246
- </check>
247
-
248
- </step>
249
-
250
- <step n="6" goal="Workflow Completion">
251
- <action>Summarize workflow execution:</action>
252
- - Issue addressed: {{change_trigger}}
253
- - Change scope: {{scope_classification}}
254
- - Artifacts modified: {{list_of_artifacts}}
255
- - Routed to: {{handoff_recipients}}
256
-
257
- <action>Confirm all deliverables produced:</action>
258
-
259
- - Sprint Change Proposal document
260
- - Specific edit proposals with before/after
261
- - Implementation handoff plan
262
-
263
- <action>Report workflow completion to user with personalized message: "Correct Course workflow complete, {user_name}!"</action>
264
- <action>Remind user of success criteria and next steps for Developer agent</action>
265
- </step>
266
-
267
- </workflow>
@@ -1,380 +0,0 @@
1
- # Create Story Workflow
2
-
3
- **Goal:** Create a comprehensive story file that gives the dev agent everything needed for flawless implementation.
4
-
5
- **Your Role:** Story context engine that prevents LLM developer mistakes, omissions, or disasters.
6
- - Communicate all responses in {communication_language} and generate all documents in {document_output_language}
7
- - Your purpose is NOT to copy from epics - it's to create a comprehensive, optimized story file that gives the DEV agent EVERYTHING needed for flawless implementation
8
- - COMMON LLM MISTAKES TO PREVENT: reinventing wheels, wrong libraries, wrong file locations, breaking regressions, ignoring UX, vague implementations, lying about completion, not learning from past work
9
- - EXHAUSTIVE ANALYSIS REQUIRED: You must thoroughly analyze ALL artifacts to extract critical context - do NOT be lazy or skim! This is the most important function in the entire development process!
10
- - UTILIZE SUBPROCESSES AND SUBAGENTS: Use research subagents, subprocesses or parallel processing if available to thoroughly analyze different artifacts simultaneously and thoroughly
11
- - SAVE QUESTIONS: If you think of questions or clarifications during analysis, save them for the end after the complete story is written
12
- - ZERO USER INTERVENTION: Process should be fully automated except for initial epic/story selection or missing documents
13
-
14
- ---
15
-
16
- ## INITIALIZATION
17
-
18
- ### Configuration Loading
19
-
20
- Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
21
-
22
- - `project_name`, `user_name`
23
- - `communication_language`, `document_output_language`
24
- - `user_skill_level`
25
- - `planning_artifacts`, `implementation_artifacts`
26
- - `date` as system-generated current datetime
27
-
28
- ### Paths
29
-
30
- - `sprint_status` = `{implementation_artifacts}/sprint-status.yaml`
31
- - `epics_file` = `{planning_artifacts}/epics.md`
32
- - `prd_file` = `{planning_artifacts}/prd.md`
33
- - `architecture_file` = `{planning_artifacts}/architecture.md`
34
- - `ux_file` = `{planning_artifacts}/*ux*.md`
35
- - `story_title` = "" (will be elicited if not derivable)
36
- - `project_context` = `**/project-context.md` (load if exists)
37
- - `default_output_file` = `{implementation_artifacts}/{{story_key}}.md`
38
-
39
- ### Input Files
40
-
41
- | Input | Description | Path Pattern(s) | Load Strategy |
42
- |-------|-------------|------------------|---------------|
43
- | prd | PRD (fallback - epics file should have most content) | whole: `{planning_artifacts}/*prd*.md`, sharded: `{planning_artifacts}/*prd*/*.md` | SELECTIVE_LOAD |
44
- | architecture | Architecture (fallback - epics file should have relevant sections) | whole: `{planning_artifacts}/*architecture*.md`, sharded: `{planning_artifacts}/*architecture*/*.md` | SELECTIVE_LOAD |
45
- | ux | UX design (fallback - epics file should have relevant sections) | whole: `{planning_artifacts}/*ux*.md`, sharded: `{planning_artifacts}/*ux*/*.md` | SELECTIVE_LOAD |
46
- | epics | Enhanced epics+stories file with BDD and source hints | whole: `{planning_artifacts}/*epic*.md`, sharded: `{planning_artifacts}/*epic*/*.md` | SELECTIVE_LOAD |
47
-
48
- ---
49
-
50
- ## EXECUTION
51
-
52
- <workflow>
53
-
54
- <step n="1" goal="Determine target story">
55
- <check if="{{story_path}} is provided by user or user provided the epic and story number such as 2-4 or 1.6 or epic 1 story 5">
56
- <action>Parse user-provided story path: extract epic_num, story_num, story_title from format like "1-2-user-auth"</action>
57
- <action>Set {{epic_num}}, {{story_num}}, {{story_key}} from user input</action>
58
- <action>GOTO step 2a</action>
59
- </check>
60
-
61
- <action>Check if {{sprint_status}} file exists for auto discover</action>
62
- <check if="sprint status file does NOT exist">
63
- <output>🚫 No sprint status file found and no story specified</output>
64
- <output>
65
- **Required Options:**
66
- 1. Run `sprint-planning` to initialize sprint tracking (recommended)
67
- 2. Provide specific epic-story number to create (e.g., "1-2-user-auth")
68
- 3. Provide path to story documents if sprint status doesn't exist yet
69
- </output>
70
- <ask>Choose option [1], provide epic-story number, path to story docs, or [q] to quit:</ask>
71
-
72
- <check if="user chooses 'q'">
73
- <action>HALT - No work needed</action>
74
- </check>
75
-
76
- <check if="user chooses '1'">
77
- <output>Run sprint-planning workflow first to create sprint-status.yaml</output>
78
- <action>HALT - User needs to run sprint-planning</action>
79
- </check>
80
-
81
- <check if="user provides epic-story number">
82
- <action>Parse user input: extract epic_num, story_num, story_title</action>
83
- <action>Set {{epic_num}}, {{story_num}}, {{story_key}} from user input</action>
84
- <action>GOTO step 2a</action>
85
- </check>
86
-
87
- <check if="user provides story docs path">
88
- <action>Use user-provided path for story documents</action>
89
- <action>GOTO step 2a</action>
90
- </check>
91
- </check>
92
-
93
- <!-- Auto-discover from sprint status only if no user input -->
94
- <check if="no user input provided">
95
- <critical>MUST read COMPLETE {sprint_status} file from start to end to preserve order</critical>
96
- <action>Load the FULL file: {{sprint_status}}</action>
97
- <action>Read ALL lines from beginning to end - do not skip any content</action>
98
- <action>Parse the development_status section completely</action>
99
-
100
- <action>Find the FIRST story (by reading in order from top to bottom) where:
101
- - Key matches pattern: number-number-name (e.g., "1-2-user-auth")
102
- - NOT an epic key (epic-X) or retrospective (epic-X-retrospective)
103
- - Status value equals "backlog"
104
- </action>
105
-
106
- <check if="no backlog story found">
107
- <output>📋 No backlog stories found in sprint-status.yaml
108
-
109
- All stories are either already created, in progress, or done.
110
-
111
- **Options:**
112
- 1. Run sprint-planning to refresh story tracking
113
- 2. Load PM agent and run correct-course to add more stories
114
- 3. Check if current sprint is complete and run retrospective
115
- </output>
116
- <action>HALT</action>
117
- </check>
118
-
119
- <action>Extract from found story key (e.g., "1-2-user-authentication"):
120
- - epic_num: first number before dash (e.g., "1")
121
- - story_num: second number after first dash (e.g., "2")
122
- - story_title: remainder after second dash (e.g., "user-authentication")
123
- </action>
124
- <action>Set {{story_id}} = "{{epic_num}}.{{story_num}}"</action>
125
- <action>Store story_key for later use (e.g., "1-2-user-authentication")</action>
126
-
127
- <!-- Mark epic as in-progress if this is first story -->
128
- <action>Check if this is the first story in epic {{epic_num}} by looking for {{epic_num}}-1-* pattern</action>
129
- <check if="this is first story in epic {{epic_num}}">
130
- <action>Load {{sprint_status}} and check epic-{{epic_num}} status</action>
131
- <action>If epic status is "backlog" → update to "in-progress"</action>
132
- <action>If epic status is "contexted" (legacy status) → update to "in-progress" (backward compatibility)</action>
133
- <action>If epic status is "in-progress" → no change needed</action>
134
- <check if="epic status is 'done'">
135
- <output>🚫 ERROR: Cannot create story in completed epic</output>
136
- <output>Epic {{epic_num}} is marked as 'done'. All stories are complete.</output>
137
- <output>If you need to add more work, either:</output>
138
- <output>1. Manually change epic status back to 'in-progress' in sprint-status.yaml</output>
139
- <output>2. Create a new epic for additional work</output>
140
- <action>HALT - Cannot proceed</action>
141
- </check>
142
- <check if="epic status is not one of: backlog, contexted, in-progress, done">
143
- <output>🚫 ERROR: Invalid epic status '{{epic_status}}'</output>
144
- <output>Epic {{epic_num}} has invalid status. Expected: backlog, in-progress, or done</output>
145
- <output>Please fix sprint-status.yaml manually or run sprint-planning to regenerate</output>
146
- <action>HALT - Cannot proceed</action>
147
- </check>
148
- <output>📊 Epic {{epic_num}} status updated to in-progress</output>
149
- </check>
150
-
151
- <action>GOTO step 2a</action>
152
- </check>
153
- <action>Load the FULL file: {{sprint_status}}</action>
154
- <action>Read ALL lines from beginning to end - do not skip any content</action>
155
- <action>Parse the development_status section completely</action>
156
-
157
- <action>Find the FIRST story (by reading in order from top to bottom) where:
158
- - Key matches pattern: number-number-name (e.g., "1-2-user-auth")
159
- - NOT an epic key (epic-X) or retrospective (epic-X-retrospective)
160
- - Status value equals "backlog"
161
- </action>
162
-
163
- <check if="no backlog story found">
164
- <output>No backlog stories found in sprint-status.yaml
165
-
166
- All stories are either already created, in progress, or done.
167
-
168
- **Options:**
169
- 1. Run sprint-planning to refresh story tracking
170
- 2. Load PM agent and run correct-course to add more stories
171
- 3. Check if current sprint is complete and run retrospective
172
- </output>
173
- <action>HALT</action>
174
- </check>
175
-
176
- <action>Extract from found story key (e.g., "1-2-user-authentication"):
177
- - epic_num: first number before dash (e.g., "1")
178
- - story_num: second number after first dash (e.g., "2")
179
- - story_title: remainder after second dash (e.g., "user-authentication")
180
- </action>
181
- <action>Set {{story_id}} = "{{epic_num}}.{{story_num}}"</action>
182
- <action>Store story_key for later use (e.g., "1-2-user-authentication")</action>
183
-
184
- <!-- Mark epic as in-progress if this is first story -->
185
- <action>Check if this is the first story in epic {{epic_num}} by looking for {{epic_num}}-1-* pattern</action>
186
- <check if="this is first story in epic {{epic_num}}">
187
- <action>Load {{sprint_status}} and check epic-{{epic_num}} status</action>
188
- <action>If epic status is "backlog" → update to "in-progress"</action>
189
- <action>If epic status is "contexted" (legacy status) → update to "in-progress" (backward compatibility)</action>
190
- <action>If epic status is "in-progress" → no change needed</action>
191
- <check if="epic status is 'done'">
192
- <output>ERROR: Cannot create story in completed epic</output>
193
- <output>Epic {{epic_num}} is marked as 'done'. All stories are complete.</output>
194
- <output>If you need to add more work, either:</output>
195
- <output>1. Manually change epic status back to 'in-progress' in sprint-status.yaml</output>
196
- <output>2. Create a new epic for additional work</output>
197
- <action>HALT - Cannot proceed</action>
198
- </check>
199
- <check if="epic status is not one of: backlog, contexted, in-progress, done">
200
- <output>ERROR: Invalid epic status '{{epic_status}}'</output>
201
- <output>Epic {{epic_num}} has invalid status. Expected: backlog, in-progress, or done</output>
202
- <output>Please fix sprint-status.yaml manually or run sprint-planning to regenerate</output>
203
- <action>HALT - Cannot proceed</action>
204
- </check>
205
- <output>Epic {{epic_num}} status updated to in-progress</output>
206
- </check>
207
-
208
- <action>GOTO step 2a</action>
209
- </step>
210
-
211
- <step n="2" goal="Load and analyze core artifacts">
212
- <critical>🔬 EXHAUSTIVE ARTIFACT ANALYSIS - This is where you prevent future developer mistakes!</critical>
213
-
214
- <!-- Load all available content through discovery protocol -->
215
- <action>Read fully and follow `./discover-inputs.md` to load all input files</action>
216
- <note>Available content: {epics_content}, {prd_content}, {architecture_content}, {ux_content},
217
- {project_context}</note>
218
-
219
- <!-- Analyze epics file for story foundation -->
220
- <action>From {epics_content}, extract Epic {{epic_num}} complete context:</action> **EPIC ANALYSIS:** - Epic
221
- objectives and business value - ALL stories in this epic for cross-story context - Our specific story's requirements, user story
222
- statement, acceptance criteria - Technical requirements and constraints - Dependencies on other stories/epics - Source hints pointing to
223
- original documents <!-- Extract specific story requirements -->
224
- <action>Extract our story ({{epic_num}}-{{story_num}}) details:</action> **STORY FOUNDATION:** - User story statement
225
- (As a, I want, so that) - Detailed acceptance criteria (already BDD formatted) - Technical requirements specific to this story -
226
- Business context and value - Success criteria <!-- Previous story analysis for context continuity -->
227
- <check if="story_num > 1">
228
- <action>Find {{previous_story_num}}: scan {implementation_artifacts} for the story file in epic {{epic_num}} with the highest story number less than {{story_num}}</action>
229
- <action>Load previous story file: {implementation_artifacts}/{{epic_num}}-{{previous_story_num}}-*.md</action> **PREVIOUS STORY INTELLIGENCE:** -
230
- Dev notes and learnings from previous story - Review feedback and corrections needed - Files that were created/modified and their
231
- patterns - Testing approaches that worked/didn't work - Problems encountered and solutions found - Code patterns established <action>Extract
232
- all learnings that could impact current story implementation</action>
233
- </check>
234
-
235
- <!-- Git intelligence for previous work patterns -->
236
- <check
237
- if="previous story exists AND git repository detected">
238
- <action>Get last 5 commit titles to understand recent work patterns</action>
239
- <action>Analyze 1-5 most recent commits for relevance to current story:
240
- - Files created/modified
241
- - Code patterns and conventions used
242
- - Library dependencies added/changed
243
- - Architecture decisions implemented
244
- - Testing approaches used
245
- </action>
246
- <action>Extract actionable insights for current story implementation</action>
247
- </check>
248
- </step>
249
-
250
- <step n="3" goal="Architecture analysis for developer guardrails">
251
- <critical>🏗️ ARCHITECTURE INTELLIGENCE - Extract everything the developer MUST follow!</critical> **ARCHITECTURE DOCUMENT ANALYSIS:** <action>Systematically
252
- analyze architecture content for story-relevant requirements:</action>
253
-
254
- <!-- Load architecture - single file or sharded -->
255
- <check if="architecture file is single file">
256
- <action>Load complete {architecture_content}</action>
257
- </check>
258
- <check if="architecture is sharded to folder">
259
- <action>Load architecture index and scan all architecture files</action>
260
- </check> **CRITICAL ARCHITECTURE EXTRACTION:** <action>For
261
- each architecture section, determine if relevant to this story:</action> - **Technical Stack:** Languages, frameworks, libraries with
262
- versions - **Code Structure:** Folder organization, naming conventions, file patterns - **API Patterns:** Service structure, endpoint
263
- patterns, data contracts - **Database Schemas:** Tables, relationships, constraints relevant to story - **Security Requirements:**
264
- Authentication patterns, authorization rules - **Performance Requirements:** Caching strategies, optimization patterns - **Testing
265
- Standards:** Testing frameworks, coverage expectations, test patterns - **Deployment Patterns:** Environment configurations, build
266
- processes - **Integration Patterns:** External service integrations, data flows <action>Extract any story-specific requirements that the
267
- developer MUST follow</action>
268
- <action>Identify any architectural decisions that override previous patterns</action>
269
- </step>
270
-
271
- <step n="4" goal="Web research for latest technical specifics">
272
- <critical>🌐 ENSURE LATEST TECH KNOWLEDGE - Prevent outdated implementations!</critical> **WEB INTELLIGENCE:** <action>Identify specific
273
- technical areas that require latest version knowledge:</action>
274
-
275
- <!-- Check for libraries/frameworks mentioned in architecture -->
276
- <action>From architecture analysis, identify specific libraries, APIs, or
277
- frameworks</action>
278
- <action>For each critical technology, research latest stable version and key changes:
279
- - Latest API documentation and breaking changes
280
- - Security vulnerabilities or updates
281
- - Performance improvements or deprecations
282
- - Best practices for current version
283
- </action>
284
- **EXTERNAL CONTEXT INCLUSION:** <action>Include in story any critical latest information the developer needs:
285
- - Specific library versions and why chosen
286
- - API endpoints with parameters and authentication
287
- - Recent security patches or considerations
288
- - Performance optimization techniques
289
- - Migration considerations if upgrading
290
- </action>
291
- </step>
292
-
293
- <step n="5" goal="Create comprehensive story file">
294
- <critical>📝 CREATE ULTIMATE STORY FILE - The developer's master implementation guide!</critical>
295
-
296
- <action>Initialize from template.md:
297
- {default_output_file}</action>
298
- <template-output file="{default_output_file}">story_header</template-output>
299
-
300
- <!-- Story foundation from epics analysis -->
301
- <template-output
302
- file="{default_output_file}">story_requirements</template-output>
303
-
304
- <!-- Developer context section - MOST IMPORTANT PART -->
305
- <template-output file="{default_output_file}">
306
- developer_context_section</template-output> **DEV AGENT GUARDRAILS:** <template-output file="{default_output_file}">
307
- technical_requirements</template-output>
308
- <template-output file="{default_output_file}">architecture_compliance</template-output>
309
- <template-output
310
- file="{default_output_file}">library_framework_requirements</template-output>
311
- <template-output file="{default_output_file}">
312
- file_structure_requirements</template-output>
313
- <template-output file="{default_output_file}">testing_requirements</template-output>
314
-
315
- <!-- Previous story intelligence -->
316
- <check
317
- if="previous story learnings available">
318
- <template-output file="{default_output_file}">previous_story_intelligence</template-output>
319
- </check>
320
-
321
- <!-- Git intelligence -->
322
- <check
323
- if="git analysis completed">
324
- <template-output file="{default_output_file}">git_intelligence_summary</template-output>
325
- </check>
326
-
327
- <!-- Latest technical specifics -->
328
- <check if="web research completed">
329
- <template-output file="{default_output_file}">latest_tech_information</template-output>
330
- </check>
331
-
332
- <!-- Project context reference -->
333
- <template-output
334
- file="{default_output_file}">project_context_reference</template-output>
335
-
336
- <!-- Final status update -->
337
- <template-output file="{default_output_file}">
338
- story_completion_status</template-output>
339
-
340
- <!-- CRITICAL: Set status to ready-for-dev -->
341
- <action>Set story Status to: "ready-for-dev"</action>
342
- <action>Add completion note: "Ultimate
343
- context engine analysis completed - comprehensive developer guide created"</action>
344
- </step>
345
-
346
- <step n="6" goal="Update sprint status and finalize">
347
- <action>Validate the newly created story file {default_output_file} against `./checklist.md` and apply any required fixes before finalizing</action>
348
- <action>Save story document unconditionally</action>
349
-
350
- <!-- Update sprint status -->
351
- <check if="sprint status file exists">
352
- <action>Update {{sprint_status}}</action>
353
- <action>Load the FULL file and read all development_status entries</action>
354
- <action>Find development_status key matching {{story_key}}</action>
355
- <action>Verify current status is "backlog" (expected previous state)</action>
356
- <action>Update development_status[{{story_key}}] = "ready-for-dev"</action>
357
- <action>Update last_updated field to current date</action>
358
- <action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
359
- </check>
360
-
361
- <action>Report completion</action>
362
- <output>**🎯 ULTIMATE BMad Method STORY CONTEXT CREATED, {user_name}!**
363
-
364
- **Story Details:**
365
- - Story ID: {{story_id}}
366
- - Story Key: {{story_key}}
367
- - File: {{story_file}}
368
- - Status: ready-for-dev
369
-
370
- **Next Steps:**
371
- 1. Review the comprehensive story in {{story_file}}
372
- 2. Run dev agents `dev-story` for optimized implementation
373
- 3. Run `code-review` when complete (auto-marks done)
374
- 4. Optional: If Test Architect module installed, run `/bmad:tea:automate` after `dev-story` to generate guardrail tests
375
-
376
- **The developer now has everything needed for flawless implementation!**
377
- </output>
378
- </step>
379
-
380
- </workflow>