diff --git a/src/core/tasks/workflow.xml b/src/core/tasks/workflow.xml index c04421f2..8f354e03 100644 --- a/src/core/tasks/workflow.xml +++ b/src/core/tasks/workflow.xml @@ -5,7 +5,7 @@ Always read COMPLETE files - NEVER use offset/limit when reading any workflow related files Instructions are MANDATORY - either as file path, steps or embedded list in YAML, XML or markdown Execute ALL steps in instructions IN EXACT ORDER - Save to template output file after EVERY "template-output" tag + Save to template output file after EVERY "template-output" tag with file= attribute NEVER skip a step - YOU are responsible for every steps execution without fail or excuse @@ -91,6 +91,13 @@ + + + Record the key=value data as workflow output + Continue to next instruction without pausing + + + If no special tags and NOT #yolo: Continue to next step? (y/n/edit) @@ -128,7 +135,8 @@ invoke-protocol - Execute a reusable protocol (e.g., discover_inputs) - template-output - Save content checkpoint + template-output file="path" - Save content to template file (pauses for user) + output - Emit key=value data (no file, no pause) critical - Cannot be skipped example - Show example output diff --git a/src/modules/bmb/workflows-legacy/edit-module/instructions.md b/src/modules/bmb/workflows-legacy/edit-module/instructions.md index 364daf39..df148017 100644 --- a/src/modules/bmb/workflows-legacy/edit-module/instructions.md +++ b/src/modules/bmb/workflows-legacy/edit-module/instructions.md @@ -54,7 +54,7 @@ Be conversational and insightful. Help {user_name} see their module through your Does this match your understanding of what this module should provide? -module_understanding +module_understanding @@ -105,7 +105,7 @@ Don't just list options - discuss them: Let the conversation flow naturally. Build a shared vision of what "better" looks like. -improvement_goals +improvement_goals @@ -230,7 +230,7 @@ Connect improvements to broader BMAD principles without being preachy. - "How does this change affect users of the module?" -improvement_implementation +improvement_implementation @@ -281,7 +281,7 @@ Your module is in great shape." -validation_results +validation_results @@ -334,7 +334,7 @@ Be a helpful guide to what comes next, not just a task completer. - Work on a different module -completion_summary +completion_summary diff --git a/src/modules/bmb/workflows-legacy/module-brief/instructions.md b/src/modules/bmb/workflows-legacy/module-brief/instructions.md index 384fa101..c45ab5db 100644 --- a/src/modules/bmb/workflows-legacy/module-brief/instructions.md +++ b/src/modules/bmb/workflows-legacy/module-brief/instructions.md @@ -35,7 +35,7 @@ If they're stuck, offer creative prompts: - "What repetitive tasks could be automated with agents?" - "What domain expertise could be captured in workflows?" -module_vision +module_vision @@ -63,7 +63,7 @@ Based on the vision, work with user to define: - Should the module have a consistent personality across agents? - Star Trek crew? Fantasy party? Corporate team? Reality show cast? -module_identity +module_identity @@ -84,7 +84,7 @@ Suggest agent archetypes based on module type: - The Creator (generates content) - The Analyzer (processes and evaluates) -agent_architecture +agent_architecture @@ -113,7 +113,7 @@ For each workflow, define: - Input → Process → Output - Complexity (simple/standard/complex) -workflow_ecosystem +workflow_ecosystem @@ -131,7 +131,7 @@ Then walk through how they'd use the module: This validates the module makes sense end-to-end. -user_scenarios +user_scenarios @@ -155,7 +155,7 @@ Assess technical requirements: - Standard (some integrations, moderate complexity) - Complex (multiple systems, advanced features) -technical_planning +technical_planning @@ -173,7 +173,7 @@ Define what success looks like: - Reliability requirements - User experience goals -success_metrics +success_metrics @@ -197,7 +197,7 @@ Create a phased approach: - Optimizations - Nice-to-haves -development_roadmap +development_roadmap @@ -220,7 +220,7 @@ Create a phased approach: - Thematic elements - Consistent universe -creative_features +creative_features @@ -246,7 +246,7 @@ Identify potential challenges: For each risk, note mitigation strategy. -risk_assessment +risk_assessment @@ -262,7 +262,7 @@ For each risk, note mitigation strategy. Inform {user_name} in {communication_language} that this brief can be fed directly into create-module workflow -final_brief +final_brief diff --git a/src/modules/bmm/workflows/4-implementation/sprint-status/instructions.md b/src/modules/bmm/workflows/4-implementation/sprint-status/instructions.md index dc5241c7..4953df74 100644 --- a/src/modules/bmm/workflows/4-implementation/sprint-status/instructions.md +++ b/src/modules/bmm/workflows/4-implementation/sprint-status/instructions.md @@ -168,17 +168,17 @@ If the command targets a story, set `story_key={{next_story_id}}` when prompted. Load and parse {sprint_status_file} same as Step 2 Compute recommendation same as Step 3 - next_workflow_id = {{next_workflow_id}} - next_story_id = {{next_story_id}} - count_backlog = {{count_backlog}} - count_ready = {{count_ready}} - count_in_progress = {{count_in_progress}} - count_review = {{count_review}} - count_done = {{count_done}} - epic_backlog = {{epic_backlog}} - epic_in_progress = {{epic_in_progress}} - epic_done = {{epic_done}} - risks = {{risks}} + next_workflow_id = {{next_workflow_id}} + next_story_id = {{next_story_id}} + count_backlog = {{count_backlog}} + count_ready = {{count_ready}} + count_in_progress = {{count_in_progress}} + count_review = {{count_review}} + count_done = {{count_done}} + epic_backlog = {{epic_backlog}} + epic_in_progress = {{epic_in_progress}} + epic_done = {{epic_done}} + risks = {{risks}} Return to caller @@ -189,20 +189,20 @@ If the command targets a story, set `story_key={{next_story_id}}` when prompted. Check that {sprint_status_file} exists - is_valid = false - error = "sprint-status.yaml missing" - suggestion = "Run sprint-planning to create it" + is_valid = false + error = "sprint-status.yaml missing" + suggestion = "Run sprint-planning to create it" Return Read file and verify it has a development_status section with at least one entry - is_valid = false - error = "development_status missing or empty" - suggestion = "Re-run sprint-planning or repair the file manually" + is_valid = false + error = "development_status missing or empty" + suggestion = "Re-run sprint-planning or repair the file manually" Return - is_valid = true - message = "sprint-status.yaml present and parsable" + is_valid = true + message = "sprint-status.yaml present and parsable" diff --git a/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md b/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md index c88dfb08..431137a6 100644 --- a/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md +++ b/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md @@ -142,7 +142,7 @@ This will read EVERY file in this area. Proceed? [y/n] - Constants: `CONSTANT_NAME: Type` - Description - **Imports/Dependencies:** What it uses and why - **Used By:** Files that import this (dependents) - **Key Implementation Details:** Important logic, algorithms, patterns - **State Management:** If applicable (Redux, Context, local state) - **Side Effects:** API calls, database queries, file I/O, external services - **Error Handling:** Try/catch blocks, error boundaries, validation - **Testing:** Associated test files and coverage - **Comments/TODOs:** Any inline documentation or planned work -comprehensive_file_inventory +comprehensive_file_inventory @@ -160,9 +160,9 @@ This will read EVERY file in this area. Proceed? [y/n] Identify integration points: - External APIs consumed - Internal APIs/services called - Shared state accessed - Events published/subscribed - Database tables accessed -dependency_graph -data_flow_analysis -integration_points +dependency_graph +data_flow_analysis +integration_points @@ -180,8 +180,8 @@ This will read EVERY file in this area. Proceed? [y/n] Find reference implementations: - Similar features in other parts of codebase - Established patterns to follow - Testing approaches used elsewhere -related_code_references -reuse_opportunities +related_code_references +reuse_opportunities @@ -197,7 +197,7 @@ This will read EVERY file in this area. Proceed? [y/n] Write filled template to: {output_folder}/deep-dive-{{sanitized_target_name}}.md Validate deep-dive document completeness -deep_dive_documentation +deep_dive_documentation Update state file: - Add to deep_dive_targets array: {"target_name": "{{target_name}}", "target_path": "{{target_path}}", "files_analyzed": {{file_count}}, "output_file": "deep-dive-{{sanitized_target_name}}.md", "timestamp": "{{now}}"} - Add output to outputs_generated - Update last_updated timestamp @@ -231,7 +231,7 @@ Detailed exhaustive analysis of specific areas: Save updated index.md - updated_index + updated_index diff --git a/src/modules/bmm/workflows/document-project/workflows/full-scan-instructions.md b/src/modules/bmm/workflows/document-project/workflows/full-scan-instructions.md index 1340f75e..4cc3bf45 100644 --- a/src/modules/bmm/workflows/document-project/workflows/full-scan-instructions.md +++ b/src/modules/bmm/workflows/document-project/workflows/full-scan-instructions.md @@ -197,8 +197,8 @@ Is this correct? Should I document each part separately? [y/n] Does this look correct? [y/n/edit] -project_structure -project_parts_metadata +project_structure +project_parts_metadata IMMEDIATELY update state file with step completion: @@ -239,8 +239,8 @@ Are there any other important documents or key areas I should focus on while ana Store user guidance as {{user_context}} -existing_documentation_inventory -user_provided_context +existing_documentation_inventory +user_provided_context Update state file: @@ -269,8 +269,8 @@ Are there any other important documents or key areas I should focus on while ana - Store as {{architecture_pattern}} for each part -technology_stack -architecture_patterns +technology_stack +architecture_patterns Update state file: @@ -329,7 +329,7 @@ findings.batches_completed: [ Validate document has all required sections Update state file with output generated PURGE detailed API data, keep only: "{{api_count}} endpoints documented" -api_contracts\*{part_id} +api_contracts\*{part_id} @@ -350,14 +350,14 @@ findings.batches_completed: [ Validate document completeness Update state file with output generated PURGE detailed schema data, keep only: "{{table_count}} tables documented" -data_models\*{part_id} +data_models\*{part_id} Analyze state management patterns Look for: Redux, Context API, MobX, Vuex, Pinia, Provider patterns Identify: stores, reducers, actions, state structure - state_management_patterns_{part_id} + state_management_patterns_{part_id} @@ -365,7 +365,7 @@ findings.batches_completed: [ Scan: components/, ui/, widgets/, views/ folders Categorize: Layout, Form, Display, Navigation, etc. Identify: Design system, component patterns, reusable elements - ui_component_inventory_{part_id} + ui_component_inventory_{part_id} @@ -379,14 +379,14 @@ findings.batches_completed: [ If yes, please provide paths or links. [Provide paths or type 'none'] Store hardware docs references -hardware*documentation*{part_id} +hardware*documentation*{part_id} Scan and catalog assets using asset_patterns Categorize by: Images, Audio, 3D Models, Sprites, Textures, etc. Calculate: Total size, file counts, formats used - asset_inventory_{part_id} + asset_inventory_{part_id} Scan for additional patterns based on doc requirements: @@ -402,7 +402,7 @@ If yes, please provide paths or links. [Provide paths or type 'none'] Apply scan_level strategy to each pattern scan (quick=glob only, deep/exhaustive=read files) -comprehensive*analysis*{part_id} +comprehensive*analysis*{part_id} Update state file: @@ -451,8 +451,8 @@ project-root/ -source_tree_analysis -critical_folders_summary +source_tree_analysis +critical_folders_summary IMMEDIATELY write source-tree-analysis.md to disk Validate document structure @@ -493,9 +493,9 @@ project-root/ -development_instructions -deployment_configuration -contribution_guidelines +development_instructions +deployment_configuration +contribution_guidelines Update state file: @@ -524,7 +524,7 @@ project-root/ IMMEDIATELY write integration-architecture.md to disk Validate document completeness -integration_architecture +integration_architecture Update state file: @@ -566,7 +566,7 @@ project-root/ - PURGE detailed architecture from context, keep only: "Architecture for {{part_id}} written" -architecture_document +architecture_document Update state file: @@ -680,7 +680,7 @@ project-root/ IMMEDIATELY write to disk -supporting_documentation +supporting_documentation Update state file: @@ -791,7 +791,7 @@ When a document SHOULD be generated but wasn't (due to quick scan, missing data, IMMEDIATELY write index.md to disk with appropriate _(To be generated)_ markers for missing files Validate index has all required sections and links are valid -index +index Update state file: diff --git a/src/modules/bmm/workflows/workflow-status/init/instructions.md b/src/modules/bmm/workflows/workflow-status/init/instructions.md index 6fd628e5..7b632fe0 100644 --- a/src/modules/bmm/workflows/workflow-status/init/instructions.md +++ b/src/modules/bmm/workflows/workflow-status/init/instructions.md @@ -29,7 +29,7 @@ What's your project called? {{#if project_name}}(Config shows: {{project_name}}){{/if}} Store project_name -project_name +project_name @@ -119,8 +119,8 @@ Choice [1/2]: 🚀 **For Quick Flow (minimal planning, straight to code):** Load the **quick-flow-solo-dev** agent instead - use Quick Flow agent for faster development -field_type -selected_track +field_type +selected_track Jump to step 6 (discovery options) @@ -161,8 +161,8 @@ Continue with software workflows? (y/n) Exit workflow -user_description -field_type +user_description +field_type Continue to step 5 @@ -227,7 +227,7 @@ Happy coding! 🚀 Map choice to selected_track -selected_track +selected_track @@ -264,9 +264,9 @@ Enter numbers (e.g., "1,2" or "none"): - product_brief_requested (if applicable) -brainstorm_requested -research_requested -product_brief_requested +brainstorm_requested +research_requested +product_brief_requested 💡 **Note:** For brownfield projects, run document-project workflow first to analyze your codebase. @@ -292,7 +292,7 @@ Enter numbers (e.g., "1,2" or "none"): Choice: Set selected_track -selected_track +selected_track @@ -301,9 +301,9 @@ Choice: Scan for existing completed work and update statuses Set generated date -generated -workflow_path_file -workflow_items +generated +workflow_path_file +workflow_items diff --git a/src/modules/bmm/workflows/workflow-status/instructions.md b/src/modules/bmm/workflows/workflow-status/instructions.md index 28df92b7..7b7f8999 100644 --- a/src/modules/bmm/workflows/workflow-status/instructions.md +++ b/src/modules/bmm/workflows/workflow-status/instructions.md @@ -200,10 +200,10 @@ Your choice: Read {output_folder}/bmm-workflow-status.yaml if exists - status_exists = false - should_proceed = true - warning = "No status file found. Running without progress tracking." - suggestion = "Consider running workflow-init first for progress tracking" + status_exists = false + should_proceed = true + warning = "No status file found. Running without progress tracking." + suggestion = "Consider running workflow-init first for progress tracking" Return to calling workflow @@ -213,48 +213,48 @@ Your choice: Find first non-completed workflow in workflow_status (next workflow) Check if {{calling_workflow}} matches next workflow or is in the workflow list -status_exists = true -project_level = {{project_level}} -project_type = {{project_type}} -field_type = {{field_type}} -next_workflow = {{next_workflow_id}} +status_exists = true +project_level = {{project_level}} +project_type = {{project_type}} +field_type = {{field_type}} +next_workflow = {{next_workflow_id}} - should_proceed = true - warning = "" - suggestion = "Proceeding with planned next step" + should_proceed = true + warning = "" + suggestion = "Proceeding with planned next step" Check the status of calling_workflow in YAML - should_proceed = true - warning = "⚠️ Workflow already completed: {{calling_workflow}}" - suggestion = "This workflow was already completed. Re-running will overwrite: {{status}}" + should_proceed = true + warning = "⚠️ Workflow already completed: {{calling_workflow}}" + suggestion = "This workflow was already completed. Re-running will overwrite: {{status}}" - should_proceed = true - warning = "Running optional workflow {{calling_workflow}}" - suggestion = "This is optional. Expected next: {{next_workflow}}" + should_proceed = true + warning = "Running optional workflow {{calling_workflow}}" + suggestion = "This is optional. Expected next: {{next_workflow}}" - should_proceed = true - warning = "⚠️ Out of sequence: Expected {{next_workflow}}, running {{calling_workflow}}" - suggestion = "Consider running {{next_workflow}} instead, or continue if intentional" + should_proceed = true + warning = "⚠️ Out of sequence: Expected {{next_workflow}}, running {{calling_workflow}}" + suggestion = "Consider running {{next_workflow}} instead, or continue if intentional" - should_proceed = true - warning = "⚠️ Unknown workflow: {{calling_workflow}} not in workflow path" - suggestion = "This workflow is not part of the defined path for this project" + should_proceed = true + warning = "⚠️ Unknown workflow: {{calling_workflow}} not in workflow path" + suggestion = "This workflow is not part of the defined path for this project" -status_file_path = {{path to bmm-workflow-status.yaml}} +status_file_path = {{path to bmm-workflow-status.yaml}} Return control to calling workflow with all template outputs @@ -264,45 +264,45 @@ Your choice: Read {output_folder}/bmm-workflow-status.yaml if exists - status_exists = false - error = "No status file to extract data from" + status_exists = false + error = "No status file to extract data from" Return to calling workflow Parse YAML file completely - status_exists = true + status_exists = true - project_name = {{project}} - project_type = {{project_type}} - project_level = {{project_level}} - field_type = {{field_type}} - workflow_path = {{workflow_path}} + project_name = {{project}} + project_type = {{project_type}} + project_level = {{project_level}} + field_type = {{field_type}} + workflow_path = {{workflow_path}} Parse workflow_status section and return all workflow: status pairs - workflow_status = {{workflow_status_object}} + workflow_status = {{workflow_status_object}} Calculate completion stats: - total_workflows = {{count all workflows}} - completed_workflows = {{count file path statuses}} - pending_workflows = {{count required/optional/etc}} - skipped_workflows = {{count skipped}} + total_workflows = {{count all workflows}} + completed_workflows = {{count file path statuses}} + pending_workflows = {{count required/optional/etc}} + skipped_workflows = {{count skipped}} Return all parsed fields as template outputs - project = {{project}} - project_type = {{project_type}} - project_level = {{project_level}} - field_type = {{field_type}} - workflow_path = {{workflow_path}} - workflow_status = {{workflow_status_object}} - generated = {{generated}} + project = {{project}} + project_type = {{project_type}} + project_level = {{project_level}} + field_type = {{field_type}} + workflow_path = {{workflow_path}} + workflow_status = {{workflow_status_object}} + generated = {{generated}} -status_file_path = {{path to bmm-workflow-status.yaml}} +status_file_path = {{path to bmm-workflow-status.yaml}} Return control to calling workflow with requested data @@ -312,13 +312,13 @@ Your choice: Check if {output_folder}/bmm-workflow-status.yaml exists - status_exists = true - suggestion = "Status file found. Ready to proceed." + status_exists = true + suggestion = "Status file found. Ready to proceed." - status_exists = false - suggestion = "No status file. Run workflow-init to create one (optional for progress tracking)" + status_exists = false + suggestion = "No status file. Run workflow-init to create one (optional for progress tracking)" Return immediately to calling workflow @@ -328,8 +328,8 @@ Your choice: Read {output_folder}/bmm-workflow-status.yaml - success = false - error = "No status file found. Cannot update." + success = false + error = "No status file found. Cannot update." Return to calling workflow @@ -355,11 +355,11 @@ Your choice: Save updated YAML file preserving ALL structure and comments - success = true - next_workflow = {{determined next workflow}} - next_agent = {{determined next agent from path file}} - completed_workflow = {{workflow_id}} - output_file = {{output_file}} + success = true + next_workflow = {{determined next workflow}} + next_agent = {{determined next agent from path file}} + completed_workflow = {{workflow_id}} + output_file = {{output_file}} @@ -374,8 +374,8 @@ Your choice: Save updated YAML file - success = true - skipped_workflow = {{workflow_id}} + success = true + skipped_workflow = {{workflow_id}} @@ -383,8 +383,8 @@ Your choice: - success = false - error = "Unknown action: {{action}}. Valid actions: complete_workflow, skip_workflow" + success = false + error = "Unknown action: {{action}}. Valid actions: complete_workflow, skip_workflow"