Workflow Status - Master Router and Status Tracker

This is the UNIVERSAL ENTRY POINT for all BMM workflows Can be invoked by bmad-master, analyst, or pm agents Checks for existing workflow status and suggests next actions If no status exists, helps user plan their workflow approach

Search {output_folder}/ for files matching pattern: bmm-workflow-status*.md Use glob or list_files to find all matching files

Find the most recent file (by date in filename: bmm-workflow-status.md) Set status_file_found = true Set status_file_path = most recent file path Go to Step 2 (Read existing status)

Set status_file_found = false Go to Step 3 (Initial workflow planning)

Read {status_file_path}

Extract key information:

Project Context:

Current State:

Phase Completion:

Implementation Progress (if Phase 4):

Next Action:

Analyze the current state to determine recommendation

Display comprehensive status summary

πŸ“Š Current Workflow Status

Project: {{project_name}} Started: {{start_date}} Last Updated: {{last_updated}}

Current Phase: {{current_phase}} ({{progress_percentage}}% complete) Current Workflow: {{current_workflow}}

Phase Completion:

Project Details:

{{#if current_phase == ‘4-Implementation’}} Implementation Progress:


🎯 Recommended Next Action:

{{next_action}}

Command: {{next_command}} Agent: {{next_agent}}

Would you like to:

  1. Proceed with recommended action ({{next_command}})
  2. View detailed status (show full status file)
  3. Change workflow (modify current workflow or start new phase)
  4. Display agent menu (see all available options)
  5. Exit (return to agent)

Select option (1-5):

Suggest loading the recommended agent and running the command To proceed:

Load agent: {{next_agent}} Run command: {{next_command}}

Or tell me: “load {{next_agent}} and {{next_command}}”

Display full status file contents Return to menu

Go to Step 4 (Change workflow)

Go to Step 5 (Display agent menu)

Exit workflow

Display welcome message

πŸš€ Welcome to BMad Method Workflows!

No workflow status file found. Let’s plan your complete workflow journey.

This step will map out your ENTIRE workflow before executing anything Goal: Document planned phases, current step, and next step in status file

Step 1: Project Context

Is this a new or existing codebase? a. Greenfield - Starting from scratch b. Brownfield - Adding to existing codebase

Your choice (a/b):

Capture field_type = “greenfield” or “brownfield”

Step 2: Brownfield Documentation Status

Do you have:

Options: a. Yes - I have good documentation b. No - Codebase is undocumented or poorly documented c. Partial - Some docs exist but incomplete

Your choice (a/b/c):

Capture brownfield_docs_status

⚠️ Documentation Needed

For accurate planning, brownfield projects benefit from codebase documentation. We’ll add document-project to your planned workflow. Set needs_documentation = true

Set needs_documentation = false

Set needs_documentation = false

Step 3: Project Type

What type of project are you building?

  1. Game - Video games for PC, console, mobile, or web
  2. Web Application - Websites, web apps, SPAs
  3. Mobile Application - iOS, Android apps
  4. Desktop Application - Windows, macOS, Linux apps
  5. Backend/API Service - Backend services, APIs, microservices
  6. Library/SDK - Reusable libraries, packages, SDKs
  7. CLI Tool - Command-line tools and utilities
  8. Embedded System - IoT, firmware, embedded devices
  9. Data/ML/Analytics - Data pipelines, ML projects, analytics
  10. Browser Extension - Chrome, Firefox extensions
  11. Infrastructure/DevOps - Terraform, K8s operators, CI/CD
  12. Other - Describe your project type

Your choice (1-12):

Capture project_type_choice

Map choice to project_type_id using project-types.csv:

Set project_type = mapped project_type_id

Step 4: User Interface Components

Does your project involve user-facing UI components?

  1. Yes - Project has user interface elements (web pages, mobile screens, desktop UI, game UI)
  2. No - Backend-only, API, CLI, or no visual interface

Your choice (a/b):

Capture has_ui_components

Set needs_ux_workflow = true βœ… UX Workflow Detected

Since your project has UI components, we’ll include the UX specification workflow in Phase 2. This ensures proper UX/UI design happens between PRD and architecture/implementation.

Set needs_ux_workflow = false

Step 5: Understanding Your Workflow

Before we plan your workflow, let’s determine the scope and complexity of your project.

The BMad Method uses 5 project levels (0-4) that determine which phases you’ll need:

Optional Phase 1 (Analysis): Brainstorming, research, and brief creation can precede any level.

Step 6: Project Scope Assessment

Do you already know your project’s approximate size/scope?

  1. Yes - I can describe the general scope
  2. No - Not sure yet, need help determining it
  3. Want analysis first - Do brainstorming/research before deciding

Your choice (a/b/c):

Capture scope_knowledge

Based on the descriptions above, what level best describes your project?

  1. Single atomic change (bug fix, tiny feature)
  2. Small coherent feature (2-3 stories)
  3. Medium project (multiple features/epics)
  4. Complex system (subsystems, architectural decisions)
  5. Enterprise scale (multiple products/systems)

Your estimated level (0-4):

Capture estimated_level Set level_known = true

Level determination deferred

{{#if scope_knowledge == “b”}} No problem! The plan-project workflow will help you determine the project level through guided questions. {{/if}}

{{#if scope_knowledge == “c”}} Great! Analysis workflows will help clarify scope before determining the level. {{/if}}

We’ll determine your project level during Phase 2 (Planning). Set level_known = false Set estimated_level = “TBD”

Step 7: Choose Your Starting Point

Now let’s determine where you want to begin:

Option A: Full Analysis Phase First

Option B: Skip to Planning

Option C: Just Show Menu

Your choice (A/B/C):

Capture starting_point

Full Analysis - Choose your first workflow:

  1. brainstorm-project (Analyst) - Explore software solution ideas
  2. brainstorm-game (Game Designer) - Game concept ideation
  3. research (Analyst) - Market/technical research
  4. product-brief (Analyst) - Strategic product foundation
  5. game-brief (Game Designer) - Game design foundation

Which workflow? (1-5):

Capture first_workflow Set include_analysis = true

Set include_analysis = false Set first_workflow = “plan-project”

Set include_analysis = false Set first_workflow = “user-choice”

Now build the complete planned workflow

πŸ—ΊοΈ Your Planned Workflow

Based on your responses, here’s your complete workflow journey:

Build planned_workflow array with all phases in order:

Add to planned_workflow: - Phase: “1-Analysis” - Step: “document-project” - Agent: “Analyst” - Description: “Generate brownfield codebase documentation” - Status: “Planned”

Add analysis workflows to planned_workflow based on first_workflow choice

{{#if first_workflow == “brainstorm-project”}} - Phase: “1-Analysis”, Step: “brainstorm-project”, Agent: “Analyst”, Status: “Planned” - Phase: “1-Analysis”, Step: “research (optional)”, Agent: “Analyst”, Status: “Optional” - Phase: “1-Analysis”, Step: “product-brief”, Agent: “Analyst”, Status: “Planned” {{/if}}

{{#if first_workflow == “brainstorm-game”}} - Phase: “1-Analysis”, Step: “brainstorm-game”, Agent: “Game Designer”, Status: “Planned” - Phase: “1-Analysis”, Step: “research (optional)”, Agent: “Analyst”, Status: “Optional” - Phase: “1-Analysis”, Step: “game-brief”, Agent: “Game Designer”, Status: “Planned” {{/if}}

{{#if first_workflow == “research”}} - Phase: “1-Analysis”, Step: “research”, Agent: “Analyst”, Status: “Planned” - Phase: “1-Analysis”, Step: “product-brief or game-brief”, Agent: “Analyst/Game Designer”, Status: “Planned” {{/if}}

{{#if first_workflow == “product-brief”}} - Phase: “1-Analysis”, Step: “product-brief”, Agent: “Analyst”, Status: “Planned” {{/if}}

{{#if first_workflow == “game-brief”}} - Phase: “1-Analysis”, Step: “game-brief”, Agent: “Game Designer”, Status: “Planned” {{/if}}

Always add Phase 2 (required for all levels)

Add UX workflow to Phase 2 planning (runs after PRD, before Phase 3) - Phase: “2-Plan” - Step: “ux-spec” - Agent: “PM” - Description: “UX/UI specification (user flows, wireframes, components)” - Status: “Planned” - Note: “Required for projects with UI components”

Add Phase 3 (required for Level 3-4) - Phase: “3-Solutioning” - Step: “solution-architecture” - Agent: “Architect” - Description: “Design overall architecture” - Status: “Planned”

Add conditional Phase 3 note - Phase: “3-Solutioning” - Step: “TBD - depends on level from Phase 2” - Agent: “Architect” - Description: “Required if Level 3-4, skipped if Level 0-2” - Status: “Conditional”

Always add Phase 4 (implementation)

Display the complete planned workflow

πŸ“‹ Your Complete Planned Workflow:

{{#each planned_workflow}} {{phase}} - {{step}}

{{/each}}


Current Step: Workflow Definition Phase (this workflow) Next Step: {{planned_workflow[0].step}} ({{planned_workflow[0].agent}} agent)

Ready to create your workflow status file?

This will create: bmm-workflow-status.md

The status file will document:

Create status file? (y/n)

Create bmm-workflow-status.md file Set current_phase = “Workflow Definition” Set next_action = planned_workflow[0].step Set next_agent = planned_workflow[0].agent Include complete planned_workflow in status file

βœ… Status file created!

File: bmm-workflow-status.md

To proceed with your first step:

{{#if needs_documentation == true AND planned_workflow[0].step == “document-project”}} Load Analyst: bmad analyst document-project

After documentation is complete, return to check status: bmad analyst workflow-status {{/if}}

{{#if planned_workflow[0].step != “document-project” AND planned_workflow[0].step != “user-choice”}} Load {{planned_workflow[0].agent}}: bmad {{lowercase planned_workflow[0].agent}} {{planned_workflow[0].step}} {{/if}}

{{#if planned_workflow[0].step == “user-choice”}} Your status file is ready! Run workflow-status anytime to see recommendations.

Choose any workflow from the menu to begin. {{/if}}

You can always check your status with: workflow-status

Go to Step 5 (Display agent menu)

Change Workflow Options:

  1. Start new workflow (will archive current status, create new dated file)
  2. Jump to different phase (manual phase override)
  3. Modify current workflow (change current_workflow field)
  4. View phase options (see what’s available for current level)
  5. Cancel (return to status display)

Your choice (1-5):

Handle workflow change based on choice

Start New Workflow

This will:

Continue? (y/n)

To start new workflow:

Load PM agent: bmad pm plan-project

This will create a new workflow status file and guide you through fresh assessment.

Jump to Phase:

Current phase: {{current_phase}}

Available phases:

  1. Phase 1: Analysis
  2. Phase 2: Planning
  3. Phase 3: Solutioning ({{project_level >= 3 ? ‘required for your level’ : ‘skipped for Level ’ + project_level}})
  4. Phase 4: Implementation

Which phase? (1-4)

Provide guidance for jumping to selected phase

Display comprehensive agent menu based on current context

πŸ“‹ BMad Method Agent Menu

{{#if status_file_found}} Current Phase: {{current_phase}} {{/if}}

Available Workflows by Phase:

Phase 1: Analysis (Optional)

Phase 2: Planning (Required)

Phase 3: Solutioning (Level 3-4 Only)

Phase 4: Implementation (Iterative)

Utility Workflows:

{{#if status_file_found}}

🎯 Recommended for Your Current Phase ({{current_phase}}):

{{#if current_phase == ‘1-Analysis’}} Continue analysis or move to plan-project {{/if}}

{{#if current_phase == ‘2-Plan’}} {{#if project_level < 3}} Ready for Phase 4! Run create-story (SM agent) {{else}} Ready for Phase 3! Run solution-architecture (Architect agent) {{/if}} {{/if}}

{{#if current_phase == ‘3-Solutioning’}} Continue with tech-specs or move to Phase 4 create-story {{/if}}

{{#if current_phase == ‘4-Implementation’}} Current Story: {{todo_story_id || current_story_id || ‘Check status file’}} Next Action: {{next_command}} {{/if}}

{{/if}}

Would you like to:

  1. Run a specific workflow (tell me which one)
  2. Return to status display
  3. Exit

Your choice: