# Workflow Init - Project Setup Instructions The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml You MUST have already loaded and processed: workflow-init/workflow.yaml Communicate in {communication_language} with {user_name} Welcome to BMad Method, {user_name}! Quick scan for context (do NOT analyze in depth yet): - Check for codebase: src/, lib/, package.json, .git, etc. - Check for BMM artifacts: PRD, epics, stories, tech-spec, architecture docs - Store what was found but do NOT infer project details yet What's your project called? {{#if project_name}}(Config shows: {{project_name}}){{/if}} Set project_name project_name I found some existing work here. Let me understand what you're working on: **Planning Documents Found:** {{#each artifacts}} - {{artifact_name}} ({{artifact_type}}, {{story_count}} stories, modified {{date}}) {{/each}} **Codebase Found:** - Source code in: {{source_dirs}} - Tech stack: {{detected_tech_stack}} {{#if git_history}} - Git history: {{commit_count}} commits, last commit {{last_commit_date}} {{/if}} Looking at what I found, are these: a) **Works in progress you're finishing** - continuing the work described in these documents b) **Documents from a previous effort** - you're starting something NEW and different now c) **The proposed work you're about to start** - these describe what you want to do d) **None of these** - let me explain what I'm actually working on Your choice [a/b/c/d]: User is continuing old work - analyze artifacts to get details Set continuing_old_work = true Go to Step 2 (Analyze artifacts for details) User is doing NEW work - old artifacts are just context Set continuing_old_work = false Go to Step 3 (Ask about NEW work) Artifacts describe proposed work Set continuing_old_work = true Go to Step 2 (Analyze artifacts for details) User will explain their situation Go to Step 3 (Ask about their work) I don't see any existing code or planning documents. Looks like we're starting fresh! Go to Step 3 (Ask about their work) Analyze found artifacts in detail: Extract project type from content (game vs software) Count stories/epics to estimate level: - Level 0: 1 story - Level 1: 1-10 stories - Level 2: 5-15 stories - Level 3: 12-40 stories - Level 4: 40+ stories Detect field type from codebase presence (greenfield vs brownfield) Based on the artifacts you're continuing, I'm suggesting **Level {{project_level}}** because I found {{story_count}} stories across {{epic_count}} epics. Here's the complexity scale for reference: **{{field_type}} Project Levels:** - **Level 0** - Single atomic change (1 story) - bug fixes, typos, minor updates - **Level 1** - Small feature (1-10 stories) - simple additions, isolated features - **Level 2** - Medium feature set (5-15 stories) - dashboards, multiple related features - **Level 3** - Complex integration (12-40 stories) - platform features, major integrations - **Level 4** - Enterprise expansion (40+ stories) - multi-tenant, ecosystem changes **My suggestion:** Level {{project_level}} {{field_type}} {{project_type}} project Does this match what you're working on? (y/n or tell me what's different) Use analyzed values Go to Step 4 (Load workflow path) Update values based on user corrections Updated to: Level {{project_level}} {{field_type}} {{project_type}}. Correct? (y/n) Go to Step 4 (Load workflow path) project_name project_type project_level field_type Tell me about what you're working on. What's the goal? Analyze user's description using keyword detection: - Level 0 keywords: "fix", "bug", "typo", "small change", "update", "patch", "one file" - Level 1 keywords: "simple", "basic", "small feature", "add", "minor", "single feature" - Level 2 keywords: "dashboard", "several features", "admin panel", "medium", "feature set" - Level 3 keywords: "platform", "integration", "complex", "system", "architecture" - Level 4 keywords: "enterprise", "multi-tenant", "multiple products", "ecosystem", "phased" Make initial determination: - project_type (game or software) - project_level (0-4) - tentative based on keywords - field_type (greenfield or brownfield) - confidence (high/medium/low) - based on clarity of description Thanks! Let me ask a few clarifying questions to make sure I route you correctly: 1. Roughly how many distinct features or changes do you think this involves? - Just one thing (e.g., fix a bug, add one button, update one API) - A small feature (2-5 related changes) - Several features (5-15 related things) - A major addition (15-40 things to do) - A large initiative (40+ changes across many areas) Adjust project_level based on response 2. How much of the existing codebase will this touch? - Single file or small area - One module or component - Multiple modules (2-4 areas) - Many modules with integration needs - System-wide changes Validate and adjust project_level based on scope 3. Is this a game or a software application? Set project_type based on response I see you have existing code here. Are you: 1. **Adding to or modifying** the existing codebase (brownfield) 2. **Starting fresh** - the existing code is just a scaffold/template (greenfield) 3. **Something else** - let me clarify Your choice [1/2/3]: Set field_type = "brownfield" Set field_type = "greenfield" Got it - treating as greenfield despite the scaffold. Please explain your situation: Analyze explanation and set field_type accordingly Build reasoning for suggestion Store detected_indicators (keywords, scope indicators, complexity signals) Based on what you've described, I'm suggesting **Level {{project_level}}** because: {{reasoning}} (detected: {{detected_indicators}}) Here's the complexity scale for reference: **{{field_type}} Project Levels:** - **Level 0** - Single atomic change (1 story) - bug fixes, typos, minor updates, single file changes - **Level 1** - Small feature (1-10 stories) - simple additions, isolated features, one module - **Level 2** - Medium feature set (5-15 stories) - dashboards, multiple related features, several modules - **Level 3** - Complex integration (12-40 stories) - platform features, major integrations, architectural changes - **Level 4** - Enterprise expansion (40+ stories) - multi-tenant, ecosystem changes, system-wide initiatives **My suggestion:** Level {{project_level}} {{field_type}} {{project_type}} project Does this match what you're working on? (y/n or tell me what's different) Use determined values Go to Step 4 (Load workflow path) Update values based on corrections Updated to: Level {{project_level}} {{field_type}} {{project_type}} Does that look right now? (y/n) If yes, go to Step 4. If no, ask what needs adjustment and repeat. project_name project_type project_level field_type Determine path file based on selections: Load {path_files}/game-design.yaml Set workflow_path_file = "game-design.yaml" Build filename: {field_type}-level-{project_level}.yaml Load {path_files}/{field_type}-level-{project_level}.yaml Set workflow_path_file = constructed filename Parse workflow path file to extract phases and workflows workflow_path_file Build workflow from loaded path file Display phases and workflows Set initial values for status file current_phase current_workflow current_agent next_action next_command next_agent Initialize all status values start_date last_updated phase_1_complete phase_2_complete phase_3_complete phase_4_complete Ready to create your workflow status file? (y/n) Save status file to {output_folder}/bmm-workflow-status.md ✅ Status file created! Next up: {{next_agent}} agent, run `{{next_command}}` It is strongly recommended to clear the context or start a new chat and load the next agent to execute the next command from that agents help menu, unless there is something else I can do for you first.