bmad-method 6.0.0-alpha.2 → 6.0.0-alpha.3

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 (47) hide show
  1. package/.claude/settings.local.json +11 -1
  2. package/README.md +109 -161
  3. package/docs/BMad-Method-V6-Quick-Start.md +341 -0
  4. package/docs/index.md +229 -0
  5. package/docs/v4-to-v6-upgrade.md +9 -7
  6. package/package.json +1 -1
  7. package/src/modules/bmb/README.md +135 -73
  8. package/src/modules/bmb/workflows/create-agent/README.md +126 -243
  9. package/src/modules/bmb/workflows/create-agent/instructions.md +25 -12
  10. package/src/modules/bmb/workflows/create-module/README.md +163 -154
  11. package/src/modules/bmb/workflows/create-workflow/instructions.md +16 -8
  12. package/src/modules/bmm/README.md +86 -83
  13. package/src/modules/bmm/workflows/1-analysis/brainstorm-game/instructions.md +45 -26
  14. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/README.md +100 -16
  15. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/instructions.md +42 -23
  16. package/src/modules/bmm/workflows/1-analysis/game-brief/instructions.md +42 -28
  17. package/src/modules/bmm/workflows/1-analysis/product-brief/instructions.md +38 -27
  18. package/src/modules/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +24 -34
  19. package/src/modules/bmm/workflows/1-analysis/research/instructions-market.md +23 -34
  20. package/src/modules/bmm/workflows/1-analysis/research/instructions-router.md +30 -14
  21. package/src/modules/bmm/workflows/1-analysis/research/instructions-technical.md +23 -34
  22. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +42 -24
  23. package/src/modules/bmm/workflows/2-plan-workflows/gdd/instructions-gdd.md +35 -22
  24. package/src/modules/bmm/workflows/2-plan-workflows/narrative/instructions-narrative.md +73 -22
  25. package/src/modules/bmm/workflows/2-plan-workflows/prd/instructions.md +45 -63
  26. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +46 -62
  27. package/src/modules/bmm/workflows/3-solutioning/architecture/instructions.md +46 -53
  28. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/instructions.md +78 -47
  29. package/src/modules/bmm/workflows/4-implementation/create-story/README.md +99 -82
  30. package/src/modules/bmm/workflows/4-implementation/create-story/instructions.md +2 -0
  31. package/src/modules/bmm/workflows/4-implementation/story-context/instructions.md +3 -0
  32. package/src/modules/bmm/workflows/README.md +149 -511
  33. package/src/modules/bmm/workflows/workflow-status/README.md +38 -19
  34. package/src/modules/bmm/workflows/workflow-status/init/instructions.md +117 -24
  35. package/src/modules/bmm/workflows/workflow-status/init/workflow.yaml +2 -2
  36. package/src/modules/bmm/workflows/workflow-status/instructions.md +173 -111
  37. package/src/modules/bmm/workflows/workflow-status/sample-level-3-workflow.yaml +49 -0
  38. package/src/modules/bmm/workflows/workflow-status/workflow-status-template.yaml +31 -0
  39. package/src/modules/bmm/workflows/workflow-status/workflow.yaml +3 -3
  40. package/src/modules/cis/README.md +153 -0
  41. package/src/modules/cis/workflows/README.md +102 -30
  42. package/src/modules/cis/workflows/storytelling/instructions.md +10 -2
  43. package/tools/cli/installers/lib/core/manifest-generator.js +4 -1
  44. package/src/modules/bmm/workflows/workflow-status/workflow-status-template.md +0 -30
  45. package/src/modules/cis/readme.md +0 -86
  46. /package/src/modules/bmm/sub-modules/claude-code/{readme.md → README.md} +0 -0
  47. /package/src/modules/bmm/workflows/3-solutioning/architecture/{readme.md → README.md} +0 -0
@@ -33,7 +33,7 @@
33
33
  </step>
34
34
 
35
35
  <step n="1" goal="Check for status file">
36
- <action>Search {output_folder}/ for file: bmm-workflow-status.md</action>
36
+ <action>Search {output_folder}/ for file: bmm-workflow-status.yaml</action>
37
37
 
38
38
  <check if="no status file found">
39
39
  <output>No workflow status found. To get started:
@@ -50,51 +50,66 @@ This will guide you through project setup and create your workflow path.</output
50
50
  </step>
51
51
 
52
52
  <step n="2" goal="Read and parse status">
53
- <action>Read bmm-workflow-status.md</action>
54
- <action>Extract key-value pairs from status file:</action>
55
-
56
- Parse these fields:
57
-
58
- - PROJECT_NAME
59
- - PROJECT_TYPE
60
- - PROJECT_LEVEL
61
- - FIELD_TYPE
62
- - CURRENT_PHASE
63
- - CURRENT_WORKFLOW
64
- - NEXT_ACTION
65
- - NEXT_COMMAND
66
- - NEXT_AGENT
53
+ <action>Read bmm-workflow-status.yaml</action>
54
+ <action>Parse YAML file and extract metadata from comments and fields:</action>
55
+
56
+ Parse these fields from YAML comments and metadata:
57
+
58
+ - project (from YAML field)
59
+ - project_type (from YAML field)
60
+ - project_level (from YAML field)
61
+ - field_type (from YAML field)
62
+ - workflow_path (from YAML field)
63
+
64
+ <action>Parse workflow_status section:</action>
65
+
66
+ - Extract all workflow entries with their statuses
67
+ - Identify completed workflows (status = file path)
68
+ - Identify pending workflows (status = required/optional/recommended/conditional)
69
+ - Identify skipped workflows (status = skipped)
70
+
71
+ <action>Determine current state:</action>
72
+
73
+ - Find first workflow with status != file path and != skipped
74
+ - This is the NEXT workflow to work on
75
+ - Look up agent and command from workflow path file
67
76
  </step>
68
77
 
69
78
  <step n="3" goal="Display current status and options">
70
- <action>Load workflow path file to check for optional steps</action>
71
- <action>Check if current workflow is in progress or complete</action>
79
+ <action>Load workflow path file based on workflow_path field</action>
80
+ <action>Identify current phase from next workflow to be done</action>
81
+ <action>Build list of completed, pending, and optional workflows</action>
72
82
 
73
83
  <output>
74
84
  ## 📊 Current Status
75
85
 
76
- **Project:** {{PROJECT_NAME}} (Level {{PROJECT_LEVEL}} {{PROJECT_TYPE}})
77
- **Phase:** {{CURRENT_PHASE}}
78
- **Current Workflow:** {{CURRENT_WORKFLOW}}
86
+ **Project:** {{project}} (Level {{project_level}} {{project_type}})
79
87
 
80
- ## 🎯 Your Options
88
+ **Path:** {{workflow_path}}
81
89
 
82
- {{#if CURRENT_WORKFLOW != "complete"}}
83
- **Continue in progress:**
90
+ **Progress:**
84
91
 
85
- - {{CURRENT_WORKFLOW}} ({{CURRENT_AGENT}} agent)
86
- {{/if}}
92
+ {{#each phases}}
93
+ {{phase_name}}:
94
+ {{#each workflows_in_phase}}
95
+
96
+ - {{workflow_name}}: {{status_display}}
97
+ {{/each}}
98
+ {{/each}}
99
+
100
+ ## 🎯 Next Steps
101
+
102
+ **Next Workflow:** {{next_workflow_name}}
87
103
 
88
- **Next required step:**
104
+ **Agent:** {{next_agent}}
89
105
 
90
- - Command: `{{NEXT_COMMAND}}`
91
- - Agent: {{NEXT_AGENT}}
106
+ **Command:** /bmad:bmm:workflows:{{next_workflow_id}}
92
107
 
93
108
  {{#if optional_workflows_available}}
94
- **Optional workflows available:**
109
+ **Optional Workflows Available:**
95
110
  {{#each optional_workflows}}
96
111
 
97
- - {{workflow_name}} ({{agent}})
112
+ - {{workflow_name}} ({{agent}}) - {{status}}
98
113
  {{/each}}
99
114
  {{/if}}
100
115
  </output>
@@ -103,20 +118,69 @@ Parse these fields:
103
118
  <step n="4" goal="Offer actions">
104
119
  <ask>What would you like to do?
105
120
 
106
- {{#if CURRENT_WORKFLOW != "complete"}}
107
-
108
- 1. **Continue current** - Resume {{CURRENT_WORKFLOW}}
109
- {{/if}}
110
- 2. **Next required** - {{NEXT_COMMAND}}
121
+ 1. **Start next workflow** - {{next_workflow_name}} ({{next_agent}} agent)
111
122
  {{#if optional_workflows_available}}
112
- 3. **Optional workflow** - Choose from available options
123
+ 2. **Run optional workflow** - Choose from available options
113
124
  {{/if}}
114
- 4. **View full status** - See complete status file
125
+ 3. **View full status YAML** - See complete status file
126
+ 4. **Update workflow status** - Mark a workflow as completed or skipped
115
127
  5. **Exit** - Return to agent
116
128
 
117
129
  Your choice:</ask>
118
130
 
119
131
  <action>Handle user selection based on available options</action>
132
+
133
+ <check if="choice == 1">
134
+ <output>Ready to run {{next_workflow_name}}!
135
+
136
+ **Command:** /bmad:bmm:workflows:{{next_workflow_id}}
137
+
138
+ **Agent:** Load {{next_agent}} agent first
139
+
140
+ {{#if next_agent !== current_agent}}
141
+ Tip: Start a new chat and load the {{next_agent}} agent before running this workflow.
142
+ {{/if}}
143
+ </output>
144
+ </check>
145
+
146
+ <check if="choice == 2 AND optional_workflows_available">
147
+ <ask>Which optional workflow?
148
+ {{#each optional_workflows numbered}}
149
+ {{number}}. {{workflow_name}} ({{agent}})
150
+ {{/each}}
151
+
152
+ Your choice:</ask>
153
+ <action>Display selected workflow command and agent</action>
154
+ </check>
155
+
156
+ <check if="choice == 3">
157
+ <action>Display complete bmm-workflow-status.yaml file contents</action>
158
+ </check>
159
+
160
+ <check if="choice == 4">
161
+ <ask>What would you like to update?
162
+
163
+ 1. Mark a workflow as **completed** (provide file path)
164
+ 2. Mark a workflow as **skipped**
165
+
166
+ Your choice:</ask>
167
+
168
+ <check if="update_choice == 1">
169
+ <ask>Which workflow? (Enter workflow ID like 'prd' or 'create-architecture')</ask>
170
+ <ask>File path created? (e.g., docs/prd.md)</ask>
171
+ <critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
172
+ <action>Update workflow_status in YAML file: {{workflow_id}}: {{file_path}}</action>
173
+ <action>Save updated YAML file preserving ALL structure and comments</action>
174
+ <output>✅ Updated {{workflow_id}} to completed: {{file_path}}</output>
175
+ </check>
176
+
177
+ <check if="update_choice == 2">
178
+ <ask>Which workflow to skip? (Enter workflow ID)</ask>
179
+ <action>Update workflow_status in YAML file: {{workflow_id}}: skipped</action>
180
+ <action>Save updated YAML file</action>
181
+ <output>✅ Marked {{workflow_id}} as skipped</output>
182
+ </check>
183
+ </check>
120
184
  </step>
121
185
 
122
186
  <!-- ============================================= -->
@@ -124,7 +188,7 @@ Your choice:</ask>
124
188
  <!-- ============================================= -->
125
189
 
126
190
  <step n="10" goal="Validate mode - Check if calling workflow should proceed">
127
- <action>Read {output_folder}/bmm-workflow-status.md if exists</action>
191
+ <action>Read {output_folder}/bmm-workflow-status.yaml if exists</action>
128
192
 
129
193
  <check if="status file not found">
130
194
  <template-output>status_exists = false</template-output>
@@ -135,23 +199,16 @@ Your choice:</ask>
135
199
  </check>
136
200
 
137
201
  <check if="status file found">
138
- <action>Parse status file fields</action>
139
- <action>Load workflow path file from WORKFLOW_PATH field</action>
140
- <action>Check if {{calling_workflow}} matches CURRENT_WORKFLOW or NEXT_COMMAND</action>
202
+ <action>Parse YAML file to extract project metadata and workflow_status</action>
203
+ <action>Load workflow path file from workflow_path field</action>
204
+ <action>Find first non-completed workflow in workflow_status (next workflow)</action>
205
+ <action>Check if {{calling_workflow}} matches next workflow or is in the workflow list</action>
141
206
 
142
207
  <template-output>status_exists = true</template-output>
143
- <template-output>current_phase = {{CURRENT_PHASE}}</template-output>
144
- <template-output>current_workflow = {{CURRENT_WORKFLOW}}</template-output>
145
- <template-output>next_workflow = {{NEXT_COMMAND}}</template-output>
146
- <template-output>project_level = {{PROJECT_LEVEL}}</template-output>
147
- <template-output>project_type = {{PROJECT_TYPE}}</template-output>
148
- <template-output>field_type = {{FIELD_TYPE}}</template-output>
149
-
150
- <check if="calling_workflow == current_workflow">
151
- <template-output>should_proceed = true</template-output>
152
- <template-output>warning = ""</template-output>
153
- <template-output>suggestion = "Resuming {{current_workflow}}"</template-output>
154
- </check>
208
+ <template-output>project_level = {{project_level}}</template-output>
209
+ <template-output>project_type = {{project_type}}</template-output>
210
+ <template-output>field_type = {{field_type}}</template-output>
211
+ <template-output>next_workflow = {{next_workflow_id}}</template-output>
155
212
 
156
213
  <check if="calling_workflow == next_workflow">
157
214
  <template-output>should_proceed = true</template-output>
@@ -159,16 +216,22 @@ Your choice:</ask>
159
216
  <template-output>suggestion = "Proceeding with planned next step"</template-output>
160
217
  </check>
161
218
 
162
- <check if="calling_workflow != current_workflow AND calling_workflow != next_workflow">
163
- <action>Check if calling_workflow is in optional workflows list</action>
219
+ <check if="calling_workflow in workflow_status list">
220
+ <action>Check the status of calling_workflow in YAML</action>
221
+
222
+ <check if="status is file path">
223
+ <template-output>should_proceed = true</template-output>
224
+ <template-output>warning = "⚠️ Workflow already completed: {{calling_workflow}}"</template-output>
225
+ <template-output>suggestion = "This workflow was already completed. Re-running will overwrite: {{status}}"</template-output>
226
+ </check>
164
227
 
165
- <check if="is optional">
228
+ <check if="status is optional/recommended">
166
229
  <template-output>should_proceed = true</template-output>
167
230
  <template-output>warning = "Running optional workflow {{calling_workflow}}"</template-output>
168
231
  <template-output>suggestion = "This is optional. Expected next: {{next_workflow}}"</template-output>
169
232
  </check>
170
233
 
171
- <check if="not optional">
234
+ <check if="status is required but not next">
172
235
  <template-output>should_proceed = true</template-output>
173
236
  <template-output>warning = "⚠️ Out of sequence: Expected {{next_workflow}}, running {{calling_workflow}}"</template-output>
174
237
  <template-output>suggestion = "Consider running {{next_workflow}} instead, or continue if intentional"</template-output>
@@ -176,14 +239,20 @@ Your choice:</ask>
176
239
 
177
240
  </check>
178
241
 
179
- <template-output>status_file_path = {{path to bmm-workflow-status.md}}</template-output>
242
+ <check if="calling_workflow NOT in workflow_status list">
243
+ <template-output>should_proceed = true</template-output>
244
+ <template-output>warning = "⚠️ Unknown workflow: {{calling_workflow}} not in workflow path"</template-output>
245
+ <template-output>suggestion = "This workflow is not part of the defined path for this project"</template-output>
246
+ </check>
247
+
248
+ <template-output>status_file_path = {{path to bmm-workflow-status.yaml}}</template-output>
180
249
  </check>
181
250
 
182
251
  <action>Return control to calling workflow with all template outputs</action>
183
252
  </step>
184
253
 
185
254
  <step n="20" goal="Data mode - Extract specific information">
186
- <action>Read {output_folder}/bmm-workflow-status.md if exists</action>
255
+ <action>Read {output_folder}/bmm-workflow-status.yaml if exists</action>
187
256
 
188
257
  <check if="status file not found">
189
258
  <template-output>status_exists = false</template-output>
@@ -192,37 +261,46 @@ Your choice:</ask>
192
261
  </check>
193
262
 
194
263
  <check if="status file found">
195
- <action>Parse status file completely</action>
264
+ <action>Parse YAML file completely</action>
196
265
  <template-output>status_exists = true</template-output>
197
266
 
198
267
  <check if="data_request == project_config">
199
- <template-output>project_name = {{PROJECT_NAME}}</template-output>
200
- <template-output>project_type = {{PROJECT_TYPE}}</template-output>
201
- <template-output>project_level = {{PROJECT_LEVEL}}</template-output>
202
- <template-output>field_type = {{FIELD_TYPE}}</template-output>
203
- <template-output>workflow_path = {{WORKFLOW_PATH}}</template-output>
268
+ <template-output>project_name = {{project}}</template-output>
269
+ <template-output>project_type = {{project_type}}</template-output>
270
+ <template-output>project_level = {{project_level}}</template-output>
271
+ <template-output>field_type = {{field_type}}</template-output>
272
+ <template-output>workflow_path = {{workflow_path}}</template-output>
204
273
  </check>
205
274
 
206
- <check if="data_request == phase_status">
207
- <template-output>current_phase = {{CURRENT_PHASE}}</template-output>
208
- <template-output>phase_1_complete = {{PHASE_1_COMPLETE}}</template-output>
209
- <template-output>phase_2_complete = {{PHASE_2_COMPLETE}}</template-output>
210
- <template-output>phase_3_complete = {{PHASE_3_COMPLETE}}</template-output>
211
- <template-output>phase_4_complete = {{PHASE_4_COMPLETE}}</template-output>
275
+ <check if="data_request == workflow_status">
276
+ <action>Parse workflow_status section and return all workflow: status pairs</action>
277
+ <template-output>workflow_status = {{workflow_status_object}}</template-output>
278
+ <action>Calculate completion stats:</action>
279
+ <template-output>total_workflows = {{count all workflows}}</template-output>
280
+ <template-output>completed_workflows = {{count file path statuses}}</template-output>
281
+ <template-output>pending_workflows = {{count required/optional/etc}}</template-output>
282
+ <template-output>skipped_workflows = {{count skipped}}</template-output>
212
283
  </check>
213
284
 
214
285
  <check if="data_request == all">
215
286
  <action>Return all parsed fields as template outputs</action>
287
+ <template-output>project = {{project}}</template-output>
288
+ <template-output>project_type = {{project_type}}</template-output>
289
+ <template-output>project_level = {{project_level}}</template-output>
290
+ <template-output>field_type = {{field_type}}</template-output>
291
+ <template-output>workflow_path = {{workflow_path}}</template-output>
292
+ <template-output>workflow_status = {{workflow_status_object}}</template-output>
293
+ <template-output>generated = {{generated}}</template-output>
216
294
  </check>
217
295
 
218
- <template-output>status_file_path = {{path to bmm-workflow-status.md}}</template-output>
296
+ <template-output>status_file_path = {{path to bmm-workflow-status.yaml}}</template-output>
219
297
  </check>
220
298
 
221
299
  <action>Return control to calling workflow with requested data</action>
222
300
  </step>
223
301
 
224
302
  <step n="30" goal="Init-check mode - Simple existence check">
225
- <action>Check if {output_folder}/bmm-workflow-status.md exists</action>
303
+ <action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
226
304
 
227
305
  <check if="exists">
228
306
  <template-output>status_exists = true</template-output>
@@ -238,7 +316,7 @@ Your choice:</ask>
238
316
  </step>
239
317
 
240
318
  <step n="40" goal="Update mode - Centralized status file updates">
241
- <action>Read {output_folder}/bmm-workflow-status.md</action>
319
+ <action>Read {output_folder}/bmm-workflow-status.yaml</action>
242
320
 
243
321
  <check if="status file not found">
244
322
  <template-output>success = false</template-output>
@@ -247,64 +325,48 @@ Your choice:</ask>
247
325
  </check>
248
326
 
249
327
  <check if="status file found">
250
- <action>Parse all current values from status file</action>
251
- <action>Load workflow path file from WORKFLOW_PATH field</action>
328
+ <action>Parse YAML file completely</action>
329
+ <action>Load workflow path file from workflow_path field</action>
252
330
  <action>Check {{action}} parameter to determine update type</action>
253
331
 
254
332
  <!-- ============================================= -->
255
333
  <!-- ACTION: complete_workflow -->
256
334
  <!-- ============================================= -->
257
335
  <check if="action == complete_workflow">
258
- <action>Get {{workflow_name}} parameter (required)</action>
336
+ <action>Get {{workflow_id}} parameter (required)</action>
337
+ <action>Get {{output_file}} parameter (required - path to created file)</action>
259
338
 
260
- <action>Mark workflow complete:</action>
261
- - Update CURRENT_WORKFLOW to "{{workflow_name}} - Complete"
339
+ <critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
340
+ <action>Update workflow status in YAML:</action>
341
+ - In workflow_status section, update: {{workflow_id}}: {{output_file}}
262
342
 
263
- <action>Find {{workflow_name}} in loaded path YAML</action>
343
+ <action>Find {{workflow_id}} in loaded path YAML</action>
264
344
  <action>Determine next workflow from path sequence</action>
345
+ <action>Find first workflow in workflow_status with status != file path and != skipped</action>
265
346
 
266
- <action>Update Next Action fields:</action>
267
- - NEXT_ACTION: Description from next workflow in path
268
- - NEXT_COMMAND: Command for next workflow
269
- - NEXT_AGENT: Agent for next workflow
270
- - CURRENT_WORKFLOW: Set to next workflow name (or "Complete" if no more)
271
- - CURRENT_AGENT: Set to next agent
272
-
273
- <action>Check if phase complete:</action>
274
- - If {{workflow_name}} is last required workflow in current phase
275
- - Update PHASE_X_COMPLETE to true
276
- - Update CURRENT_PHASE to next phase (if applicable)
277
-
278
- <action>Update LAST_UPDATED to {{date}}</action>
279
- <action>Save status file</action>
347
+ <action>Save updated YAML file preserving ALL structure and comments</action>
280
348
 
281
349
  <template-output>success = true</template-output>
282
350
  <template-output>next_workflow = {{determined next workflow}}</template-output>
283
- <template-output>next_agent = {{determined next agent}}</template-output>
284
- <template-output>phase_complete = {{true/false}}</template-output>
351
+ <template-output>next_agent = {{determined next agent from path file}}</template-output>
352
+ <template-output>completed_workflow = {{workflow_id}}</template-output>
353
+ <template-output>output_file = {{output_file}}</template-output>
285
354
 
286
355
  </check>
287
356
 
288
357
  <!-- ============================================= -->
289
- <!-- ACTION: set_current_workflow (manual override) -->
358
+ <!-- ACTION: skip_workflow -->
290
359
  <!-- ============================================= -->
291
- <check if="action == set_current_workflow">
292
- <action>Get {{workflow_name}} parameter (required)</action>
293
- <action>Get {{agent_name}} parameter (optional)</action>
294
-
295
- <action>Update current workflow:</action>
296
- - CURRENT_WORKFLOW: {{workflow_name}}
297
- - CURRENT_AGENT: {{agent_name or infer from path}}
360
+ <check if="action == skip_workflow">
361
+ <action>Get {{workflow_id}} parameter (required)</action>
298
362
 
299
- <action>Find {{workflow_name}} in path to determine next:</action>
300
- - NEXT_ACTION: Next workflow description
301
- - NEXT_COMMAND: Next workflow command
302
- - NEXT_AGENT: Next workflow agent
363
+ <action>Update workflow status in YAML:</action>
364
+ - In workflow_status section, update: {{workflow_id}}: skipped
303
365
 
304
- <action>Update LAST_UPDATED to {{date}}</action>
305
- <action>Save status file</action>
366
+ <action>Save updated YAML file</action>
306
367
 
307
368
  <template-output>success = true</template-output>
369
+ <template-output>skipped_workflow = {{workflow_id}}</template-output>
308
370
 
309
371
  </check>
310
372
 
@@ -313,7 +375,7 @@ Your choice:</ask>
313
375
  <!-- ============================================= -->
314
376
  <check if="action not recognized">
315
377
  <template-output>success = false</template-output>
316
- <template-output>error = "Unknown action: {{action}}. Valid actions: complete_workflow, set_current_workflow"</template-output>
378
+ <template-output>error = "Unknown action: {{action}}. Valid actions: complete_workflow, skip_workflow"</template-output>
317
379
  </check>
318
380
 
319
381
  </check>
@@ -0,0 +1,49 @@
1
+ # Workflow Status Template
2
+ # This tracks progress through phases 1-3 of the BMM methodology
3
+ # Phase 4 (Implementation) is tracked separately in sprint-status.yaml
4
+
5
+ # generated: 2025-10-29
6
+ # project: Enterprise Customer Portal
7
+ # project_type: software
8
+ # project_level: 3
9
+ # field_type: greenfield
10
+ # workflow_path: greenfield-level-3.yaml
11
+
12
+ # STATUS DEFINITIONS:
13
+ # ==================
14
+ # Initial Status (before completion):
15
+ # - required: Must be completed to progress
16
+ # - optional: Can be completed but not required
17
+ # - recommended: Strongly suggested but not required
18
+ # - conditional: Required only if certain conditions met (e.g., if_has_ui)
19
+ #
20
+ # Completion Status:
21
+ # - {file-path}: File created/found (e.g., "docs/product-brief.md")
22
+ # - skipped: Optional/conditional workflow that was skipped
23
+
24
+ generated: 2025-10-29
25
+ project: Enterprise Customer Portal
26
+ project_type: software
27
+ project_level: 3
28
+ field_type: greenfield
29
+ workflow_path: greenfield-level-3.yaml
30
+
31
+ workflow_status:
32
+ # Phase 1: Analysis
33
+ brainstorm-project: docs/brainstorm-session-2025-10-15.md
34
+ research: docs/research-api-patterns.md
35
+ product-brief: docs/product-brief.md
36
+
37
+ # Phase 2: Planning
38
+ prd: docs/prd.md
39
+ validate-prd: skipped
40
+ create-design: docs/ux-design.md
41
+
42
+ # Phase 3: Solutioning
43
+ create-architecture: required
44
+ validate-architecture: optional
45
+ solutioning-gate-check: recommended
46
+
47
+ # Phase 4: Implementation
48
+ sprint-planning: required
49
+ # Note: Subsequent implementation workflows tracked in sprint-status.yaml
@@ -0,0 +1,31 @@
1
+ # Workflow Status Template
2
+ # This tracks progress through phases 1-3 of the BMM methodology
3
+ # Phase 4 (Implementation) is tracked separately in sprint-status.yaml
4
+
5
+ # generated: {{generated}}
6
+ # project: {{project_name}}
7
+ # project_type: {{project_type}}
8
+ # project_level: {{project_level}}
9
+ # field_type: {{field_type}}
10
+ # workflow_path: {{workflow_path_file}}
11
+
12
+ # STATUS DEFINITIONS:
13
+ # ==================
14
+ # Initial Status (before completion):
15
+ # - required: Must be completed to progress
16
+ # - optional: Can be completed but not required
17
+ # - recommended: Strongly suggested but not required
18
+ # - conditional: Required only if certain conditions met (e.g., if_has_ui)
19
+ #
20
+ # Completion Status:
21
+ # - {file-path}: File created/found (e.g., "docs/product-brief.md")
22
+ # - skipped: Optional/conditional workflow that was skipped
23
+
24
+ generated: "{{generated}}"
25
+ project: "{{project_name}}"
26
+ project_type: "{{project_type}}"
27
+ project_level: "{{project_level}}"
28
+ field_type: "{{field_type}}"
29
+ workflow_path: "{{workflow_path_file}}"
30
+
31
+ workflow_status: "{{workflow_items}}"
@@ -1,6 +1,6 @@
1
1
  # Workflow Status - Master Router and Status Tracker
2
2
  name: workflow-status
3
- description: 'Lightweight status checker - answers "what should I do now?" for any agent. Reads simple key-value status file for instant parsing. Use workflow-init for new projects.'
3
+ description: 'Lightweight status checker - answers "what should I do now?" for any agent. Reads YAML status file for workflow tracking. Use workflow-init for new projects.'
4
4
  author: "BMad"
5
5
 
6
6
  # Critical variables from config
@@ -17,13 +17,13 @@ installed_path: "{project-root}/bmad/bmm/workflows/workflow-status"
17
17
  instructions: "{installed_path}/instructions.md"
18
18
 
19
19
  # Template for status file creation (used by workflow-init)
20
- template: "{installed_path}/workflow-status-template.md"
20
+ template: "{installed_path}/workflow-status-template.yaml"
21
21
 
22
22
  # Path definitions for project types
23
23
  path_files: "{installed_path}/paths/"
24
24
 
25
25
  # Output configuration - reads existing status
26
- default_output_file: "{output_folder}/bmm-workflow-status.md"
26
+ default_output_file: "{output_folder}/bmm-workflow-status.yaml"
27
27
 
28
28
  standalone: true
29
29