some output should be improved and not run together in chat windows

This commit is contained in:
Brian Madison
2025-10-30 08:13:18 -05:00
parent 6d7f42dbec
commit ec111972a0
29 changed files with 1098 additions and 713 deletions

View File

@@ -5,20 +5,20 @@
<workflow>
<step n="1" goal="Validate workflow readiness">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: validate</param>
<param>calling_workflow: brainstorm-game</param>
</invoke-workflow>
<step n="1" goal="Validate workflow readiness" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<check if="status_exists == false">
<output>{{suggestion}}</output>
<output>Note: Game brainstorming is optional. Continuing without progress tracking.</output>
<check if="status file not found">
<output>No workflow status file found. Game brainstorming is optional - you can continue without status tracking.</output>
<action>Set standalone_mode = true</action>
</check>
<check if="status_exists == true">
<action>Store {{status_file_path}} for later updates</action>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "brainstorm-game" workflow</action>
<action>Get project_level from YAML metadata</action>
<action>Find first non-completed workflow (next expected workflow)</action>
<check if="project_type != 'game'">
<output>Note: This is a {{project_type}} project. Game brainstorming is designed for game projects.</output>
@@ -28,10 +28,25 @@
</check>
</check>
<check if="warning != ''">
<output>{{warning}}</output>
<output>Note: Game brainstorming can be valuable at any project stage.</output>
<check if="brainstorm-game status is file path (already completed)">
<output>⚠️ Game brainstorming session already completed: {{brainstorm-game status}}</output>
<ask>Re-running will create a new session. Continue? (y/n)</ask>
<check if="n">
<output>Exiting. Use workflow-status to see your next step.</output>
<action>Exit workflow</action>
</check>
</check>
<check if="brainstorm-game is not the next expected workflow (latter items are completed already in the list)">
<output>⚠️ Next expected workflow: {{next_workflow}}. Game brainstorming is out of sequence.</output>
<ask>Continue with game brainstorming anyway? (y/n)</ask>
<check if="n">
<output>Exiting. Run {{next_workflow}} instead.</output>
<action>Exit workflow</action>
</check>
</check>
<action>Set standalone_mode = false</action>
</check>
</step>
@@ -66,17 +81,16 @@
</invoke-workflow>
</step>
<step n="4" goal="Update status and complete">
<step n="4" goal="Update status and complete" tag="workflow-status">
<check if="standalone_mode != true">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: update</param>
<param>action: complete_workflow</param>
<param>workflow_name: brainstorm-game</param>
</invoke-workflow>
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Find workflow_status key "brainstorm-game"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["brainstorm-game"] = "{output_folder}/bmm-brainstorming-session-{{date}}.md"</action>
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
<check if="success == true">
<output>Status updated! Next: {{next_workflow}}</output>
</check>
<action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
<action>Determine next agent from path file based on next workflow</action>
</check>
<output>**✅ Game Brainstorming Session Complete, {user_name}!**
@@ -88,16 +102,21 @@
{{#if standalone_mode != true}}
**Status Updated:**
- Progress tracking updated
- Progress tracking updated: brainstorm-game marked complete
- Next workflow: {{next_workflow}}
{{else}}
**Note:** Running in standalone mode (no progress tracking)
{{/if}}
**Next Steps:**
- **Next required:** {{next_workflow}} ({{next_agent}} agent)
{{#if standalone_mode != true}}
- **Next workflow:** {{next_workflow}} ({{next_agent}} agent)
- **Optional:** You can run other analysis workflows (research, game-brief) before proceeding
Check status anytime with: `workflow-status`
{{else}}
**Next Steps:**
Since no workflow is in progress:
- Refer to the BMM workflow guide if unsure what to do next

View File

@@ -8,25 +8,40 @@
<workflow>
<step n="1" goal="Validate workflow readiness">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: validate</param>
<param>calling_workflow: brainstorm-project</param>
</invoke-workflow>
<step n="1" goal="Validate workflow readiness" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<check if="status_exists == false">
<output>{{suggestion}}</output>
<output>Note: Brainstorming is optional. Continuing without progress tracking.</output>
<check if="status file not found">
<output>No workflow status file found. Brainstorming is optional - you can continue without status tracking.</output>
<action>Set standalone_mode = true</action>
</check>
<check if="status_exists == true">
<action>Store {{status_file_path}} for later updates</action>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "brainstorm-project" workflow</action>
<action>Get project_level from YAML metadata</action>
<action>Find first non-completed workflow (next expected workflow)</action>
<check if="warning != ''">
<output>{{warning}}</output>
<output>Note: Brainstorming can be valuable at any project stage.</output>
<check if="brainstorm-project status is file path (already completed)">
<output>⚠️ Brainstorming session already completed: {{brainstorm-project status}}</output>
<ask>Re-running will create a new session. Continue? (y/n)</ask>
<check if="n">
<output>Exiting. Use workflow-status to see your next step.</output>
<action>Exit workflow</action>
</check>
</check>
<check if="brainstorm-project is not the next expected workflow (anything after brainstorm-project is completed already)">
<output>⚠️ Next expected workflow: {{next_workflow}}. Brainstorming is out of sequence.</output>
<ask>Continue with brainstorming anyway? (y/n)</ask>
<check if="n">
<output>Exiting. Run {{next_workflow}} instead.</output>
<action>Exit workflow</action>
</check>
</check>
<action>Set standalone_mode = false</action>
</check>
</step>
@@ -51,36 +66,40 @@
</invoke-workflow>
</step>
<step n="4" goal="Update status and complete">
<step n="4" goal="Update status and complete" tag="workflow-status">
<check if="standalone_mode != true">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: update</param>
<param>action: complete_workflow</param>
<param>workflow_name: brainstorm-project</param>
</invoke-workflow>
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Find workflow_status key "brainstorm-project"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["brainstorm-project"] = "{output_folder}/bmm-brainstorming-session-{{date}}.md"</action>
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
<check if="success == true">
<output>Status updated! Next: {{next_workflow}}</output>
</check>
<action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
<action>Determine next agent from path file based on next workflow</action>
</check>
<output>**✅ Brainstorming Session Complete, {user_name}!**
**Session Results:**
- Brainstorming results saved to: {output_folder}/bmm-brainstorming-session-{{date}}.md
{{#if standalone_mode != true}}
**Status Updated:**
- Progress tracking updated
**Next Steps:**
- **Next required:** {{next_workflow}} ({{next_agent}} agent)
- **Optional:** You can run other analysis workflows (research, product-brief) before proceeding
Check status anytime with: `workflow-status`
{{else}}
**Next Steps:**
Since no workflow is in progress:
- Refer to the BMM workflow guide if unsure what to do next
- Or run `workflow-init` to create a workflow path and get guided next steps
{{/if}}

View File

@@ -9,20 +9,20 @@
<workflow>
<step n="0" goal="Validate workflow readiness">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: validate</param>
<param>calling_workflow: game-brief</param>
</invoke-workflow>
<step n="0" goal="Validate workflow readiness" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<check if="status_exists == false">
<output>{{suggestion}}</output>
<output>Note: Game brief is optional. Continuing without progress tracking.</output>
<check if="status file not found">
<output>No workflow status file found. Game brief is optional - you can continue without status tracking.</output>
<action>Set standalone_mode = true</action>
</check>
<check if="status_exists == true">
<action>Store {{status_file_path}} for later updates</action>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "game-brief" workflow</action>
<action>Get project_level from YAML metadata</action>
<action>Find first non-completed workflow (next expected workflow)</action>
<check if="project_type != 'game'">
<output>Note: This is a {{project_type}} project. Game brief is designed for game projects.</output>
@@ -32,10 +32,25 @@
</check>
</check>
<check if="warning != ''">
<output>{{warning}}</output>
<output>Note: Game brief can provide valuable vision clarity at any stage.</output>
<check if="game-brief status is file path (already completed)">
<output>⚠️ Game Brief already completed: {{game-brief status}}</output>
<ask>Re-running will overwrite the existing brief. Continue? (y/n)</ask>
<check if="n">
<output>Exiting. Use workflow-status to see your next step.</output>
<action>Exit workflow</action>
</check>
</check>
<check if="game-brief is not the next expected workflow (latter items are completed already in the list)">
<output>⚠️ Next expected workflow: {{next_workflow}}. Game Brief is out of sequence.</output>
<ask>Continue with Game Brief anyway? (y/n)</ask>
<check if="n">
<output>Exiting. Run {{next_workflow}} instead.</output>
<action>Exit workflow</action>
</check>
</check>
<action>Set standalone_mode = false</action>
</check>
</step>
@@ -309,17 +324,16 @@ This brief will serve as the primary input for creating the Game Design Document
<template-output>executive_brief</template-output>
</step>
<step n="16" goal="Update status and complete">
<step n="16" goal="Update status and complete" tag="workflow-status">
<check if="standalone_mode != true">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: update</param>
<param>action: complete_workflow</param>
<param>workflow_name: game-brief</param>
</invoke-workflow>
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Find workflow_status key "game-brief"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["game-brief"] = "{output_folder}/bmm-game-brief-{{game_name}}-{{date}}.md"</action>
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
<check if="success == true">
<output>Status updated! Next: {{next_workflow}}</output>
</check>
<action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
<action>Determine next agent from path file based on next workflow</action>
</check>
<output>**✅ Game Brief Complete, {user_name}!**
@@ -331,17 +345,17 @@ This brief will serve as the primary input for creating the Game Design Document
{{#if standalone_mode != true}}
**Status Updated:**
- Progress tracking updated
- Progress tracking updated: game-brief marked complete
- Next workflow: {{next_workflow}}
{{else}}
Note: Running in standalone mode (no status file).
To track progress across workflows, run `workflow-init` first.
**Note:** Running in standalone mode (no progress tracking)
{{/if}}
**Next Steps:**
{{#if standalone_mode != true}}
- **Next required:** {{next_workflow}} ({{next_agent}} agent)
- **Next workflow:** {{next_workflow}} ({{next_agent}} agent)
- **Optional:** Consider creating a prototype of core mechanic or validating assumptions with target players before proceeding
Check status anytime with: `workflow-status`

View File

@@ -9,34 +9,45 @@
<workflow>
<step n="0" goal="Validate workflow readiness">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: validate</param>
<param>calling_workflow: product-brief</param>
</invoke-workflow>
<step n="0" goal="Validate workflow readiness" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<check if="status_exists == false">
<output>{{suggestion}}</output>
<output>Note: Product Brief is optional. You can continue without status tracking.</output>
<check if="status file not found">
<output>No workflow status file found. Product Brief is optional - you can continue without status tracking.</output>
<action>Set standalone_mode = true</action>
</check>
<check if="status_exists == true">
<action>Store {{status_file_path}} for later updates</action>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "product-brief" workflow</action>
<action>Get project_level from YAML metadata</action>
<action>Find first non-completed workflow (next expected workflow)</action>
<check if="project_level < 2">
<output>Note: Product Brief is most valuable for Level 2+ projects. Your project is Level {{project_level}}.</output>
<output>You may want to skip directly to technical planning instead.</output>
</check>
<check if="warning != ''">
<output>{{warning}}</output>
<ask>Continue with Product Brief anyway? (y/n)</ask>
<check if="product-brief status is file path (already completed)">
<output>⚠️ Product Brief already completed: {{product-brief status}}</output>
<ask>Re-running will overwrite the existing brief. Continue? (y/n)</ask>
<check if="n">
<output>Exiting. {{suggestion}}</output>
<output>Exiting. Use workflow-status to see your next step.</output>
<action>Exit workflow</action>
</check>
</check>
<check if="product-brief is not the next expected workflow (latter items are completed already in the list)">
<output>⚠️ Next expected workflow: {{next_workflow}}. Product Brief is out of sequence.</output>
<ask>Continue with Product Brief anyway? (y/n)</ask>
<check if="n">
<output>Exiting. Run {{next_workflow}} instead.</output>
<action>Exit workflow</action>
</check>
</check>
<action>Set standalone_mode = false</action>
</check>
</step>
@@ -61,6 +72,7 @@
<ask>How would you like to work through the brief?
**1. Interactive Mode** - We'll work through each section together, discussing and refining as we go
**2. YOLO Mode** - I'll generate a complete draft based on our conversation so far, then we'll refine it together
Which approach works best for you?</ask>
@@ -273,17 +285,16 @@ This brief will serve as the primary input for creating the Product Requirements
<template-output>executive_brief</template-output>
</step>
<step n="16" goal="Update status file on completion">
<step n="16" goal="Update status file on completion" tag="workflow-status">
<check if="standalone_mode != true">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: update</param>
<param>action: complete_workflow</param>
<param>workflow_name: product-brief</param>
</invoke-workflow>
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Find workflow_status key "product-brief"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["product-brief"] = "{output_folder}/bmm-product-brief-{{project_name}}-{{date}}.md"</action>
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
<check if="success == true">
<output>Status updated! Next: {{next_workflow}}</output>
</check>
<action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
<action>Determine next agent from path file based on next workflow</action>
</check>
<output>**✅ Product Brief Complete, {user_name}!**
@@ -295,8 +306,8 @@ This brief will serve as the primary input for creating the Product Requirements
{{#if standalone_mode != true}}
**Status Updated:**
- Progress tracking updated
- Current workflow marked complete
- Progress tracking updated: product-brief marked complete
- Next workflow: {{next_workflow}}
{{else}}
**Note:** Running in standalone mode (no progress tracking)
{{/if}}
@@ -305,7 +316,7 @@ This brief will serve as the primary input for creating the Product Requirements
{{#if standalone_mode != true}}
- **Next required:** {{next_workflow}} ({{next_agent}} agent)
- **Next workflow:** {{next_workflow}} ({{next_agent}} agent)
- **Optional:** Gather additional stakeholder input or run research workflows before proceeding
Check status anytime with: `workflow-status`

View File

@@ -374,60 +374,50 @@ Select option (1-4):</ask>
</step>
<step n="FINAL" goal="Update status file on completion">
<action>Search {output_folder}/ for files matching pattern: bmm-workflow-status.md</action>
<action>Find the most recent file (by date in filename)</action>
<step n="FINAL" goal="Update status file on completion" tag="workflow-status">
<check if="standalone_mode != true">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Find workflow_status key "research"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["research"] = "{output_folder}/bmm-research-deep-prompt-{{date}}.md"</action>
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
<check if="status file exists">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: update</param>
<param>action: complete_workflow</param>
<param>workflow_name: research</param>
</invoke-workflow>
<check if="success == true">
<output>Status updated! Next: {{next_workflow}}</output>
</check>
<action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
<action>Determine next agent from path file based on next workflow</action>
</check>
<output>**✅ Deep Research Prompt Generated**
**Research Prompt:**
- Structured research prompt generated and saved
- Structured research prompt generated and saved to {output_folder}/bmm-research-deep-prompt-{{date}}.md
- Ready to execute with ChatGPT, Claude, Gemini, or Grok
**Status file updated:**
{{#if standalone_mode != true}}
**Status Updated:**
- Current step: research (deep-prompt) ✓
- Progress: {{new_progress_percentage}}%
- Progress tracking updated: research marked complete
- Next workflow: {{next_workflow}}
{{else}}
**Note:** Running in standalone mode (no progress tracking)
{{/if}}
**Next Steps:**
- **Next required:** {{next_workflow}} ({{next_agent}} agent)
{{#if standalone_mode != true}}
- **Next workflow:** {{next_workflow}} ({{next_agent}} agent)
- **Optional:** Execute the research prompt with AI platform, gather findings, or run additional research workflows
Check status anytime with: `workflow-status`
</output>
</check>
<check if="status file not found">
<output>**✅ Deep Research Prompt Generated**
**Research Prompt:**
- Structured research prompt generated and saved
Note: Running in standalone mode (no status file).
**Next Steps:**
{{else}}
Since no workflow is in progress:
- Execute the research prompt with AI platform and gather findings
- Refer to the BMM workflow guide if unsure what to do next
- Or run `workflow-init` to create a workflow path and get guided next steps
{{/if}}
</output>
</check>
</step>
</workflow>

View File

@@ -554,60 +554,49 @@ Create compelling executive summary with:
</step>
<step n="14" goal="Update status file on completion">
<action>Search {output_folder}/ for files matching pattern: bmm-workflow-status.md</action>
<action>Find the most recent file (by date in filename)</action>
<step n="14" goal="Update status file on completion" tag="workflow-status">
<check if="standalone_mode != true">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Find workflow_status key "research"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["research"] = "{output_folder}/bmm-research-{{research_mode}}-{{date}}.md"</action>
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
<check if="status file exists">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: update</param>
<param>action: complete_workflow</param>
<param>workflow_name: research</param>
</invoke-workflow>
<check if="success == true">
<output>Status updated! Next: {{next_workflow}}</output>
</check>
<action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
<action>Determine next agent from path file based on next workflow</action>
</check>
<output>**✅ Research Complete ({{research_mode}} mode)**
**Research Report:**
- Research report generated and saved
- Research report generated and saved to {output_folder}/bmm-research-{{research_mode}}-{{date}}.md
**Status file updated:**
{{#if standalone_mode != true}}
**Status Updated:**
- Current step: research ({{research_mode}}) ✓
- Progress: {{new_progress_percentage}}%
- Progress tracking updated: research marked complete
- Next workflow: {{next_workflow}}
{{else}}
**Note:** Running in standalone mode (no progress tracking)
{{/if}}
**Next Steps:**
- **Next required:** {{next_workflow}} ({{next_agent}} agent)
{{#if standalone_mode != true}}
- **Next workflow:** {{next_workflow}} ({{next_agent}} agent)
- **Optional:** Review findings with stakeholders, or run additional analysis workflows (product-brief, game-brief, etc.)
Check status anytime with: `workflow-status`
</output>
</check>
<check if="status file not found">
<output>**✅ Research Complete ({{research_mode}} mode)**
**Research Report:**
- Research report generated and saved
Note: Running in standalone mode (no status file).
**Next Steps:**
{{else}}
Since no workflow is in progress:
- Review research findings
- Refer to the BMM workflow guide if unsure what to do next
- Or run `workflow-init` to create a workflow path and get guided next steps
{{/if}}
</output>
</check>
</step>
</workflow>

View File

@@ -10,26 +10,42 @@
<critical>This is a ROUTER that directs to specialized research instruction sets</critical>
<step n="1" goal="Validate workflow readiness">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: validate</param>
<param>calling_workflow: research</param>
</invoke-workflow>
<step n="1" goal="Validate workflow readiness" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<check if="status_exists == false">
<output>{{suggestion}}</output>
<output>Note: Research is optional. Continuing without progress tracking.</output>
<check if="status file not found">
<output>No workflow status file found. Research is optional - you can continue without status tracking.</output>
<action>Set standalone_mode = true</action>
</check>
<check if="status_exists == true">
<action>Store {{status_file_path}} for status updates in sub-workflows</action>
<action>Pass status_file_path to loaded instruction set</action>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "research" workflow</action>
<action>Get project_level from YAML metadata</action>
<action>Find first non-completed workflow (next expected workflow)</action>
<action>Pass status context to loaded instruction set for final update</action>
<check if="warning != ''">
<output>{{warning}}</output>
<output>Note: Research can provide valuable insights at any project stage.</output>
<check if="research status is file path (already completed)">
<output>⚠️ Research already completed: {{research status}}</output>
<ask>Re-running will create a new research report. Continue? (y/n)</ask>
<check if="n">
<output>Exiting. Use workflow-status to see your next step.</output>
<action>Exit workflow</action>
</check>
</check>
<check if="research is not the next expected workflow (latter items are completed already in the list)">
<output>⚠️ Next expected workflow: {{next_workflow}}. Research is out of sequence.</output>
<output>Note: Research can provide valuable insights at any project stage.</output>
<ask>Continue with Research anyway? (y/n)</ask>
<check if="n">
<output>Exiting. Run {{next_workflow}} instead.</output>
<action>Exit workflow</action>
</check>
</check>
<action>Set standalone_mode = false</action>
</check>
</step>

View File

@@ -442,60 +442,49 @@ Select option (1-5):</ask>
</step>
<step n="FINAL" goal="Update status file on completion">
<action>Search {output_folder}/ for files matching pattern: bmm-workflow-status.md</action>
<action>Find the most recent file (by date in filename)</action>
<step n="FINAL" goal="Update status file on completion" tag="workflow-status">
<check if="standalone_mode != true">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Find workflow_status key "research"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["research"] = "{output_folder}/bmm-research-technical-{{date}}.md"</action>
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
<check if="status file exists">
<invoke-workflow path="{project-root}/bmad/bmm/workflows/workflow-status">
<param>mode: update</param>
<param>action: complete_workflow</param>
<param>workflow_name: research</param>
</invoke-workflow>
<check if="success == true">
<output>Status updated! Next: {{next_workflow}}</output>
</check>
<action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
<action>Determine next agent from path file based on next workflow</action>
</check>
<output>**✅ Technical Research Complete**
**Research Report:**
- Technical research report generated and saved
- Technical research report generated and saved to {output_folder}/bmm-research-technical-{{date}}.md
**Status file updated:**
{{#if standalone_mode != true}}
**Status Updated:**
- Current step: research (technical) ✓
- Progress: {{new_progress_percentage}}%
- Progress tracking updated: research marked complete
- Next workflow: {{next_workflow}}
{{else}}
**Note:** Running in standalone mode (no progress tracking)
{{/if}}
**Next Steps:**
- **Next required:** {{next_workflow}} ({{next_agent}} agent)
{{#if standalone_mode != true}}
- **Next workflow:** {{next_workflow}} ({{next_agent}} agent)
- **Optional:** Review findings with architecture team, or run additional analysis workflows
Check status anytime with: `workflow-status`
</output>
</check>
<check if="status file not found">
<output>**✅ Technical Research Complete**
**Research Report:**
- Technical research report generated and saved
Note: Running in standalone mode (no status file).
**Next Steps:**
{{else}}
Since no workflow is in progress:
- Review technical research findings
- Refer to the BMM workflow guide if unsure what to do next
- Or run `workflow-init` to create a workflow path and get guided next steps
{{/if}}
</output>
</check>
</step>
</workflow>