mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
229 lines
6.5 KiB
Markdown
229 lines
6.5 KiB
Markdown
|
|
---
|
||
|
|
installed_path: '{project-root}/{bmad_folder}/bmb/workflows/create-module'
|
||
|
|
nextStepFile: '{installed_path}/steps/step-05-config.md'
|
||
|
|
modulePlanFile: '{custom_module_location}/{module_name}/module-plan-{module_name}.md'
|
||
|
|
advancedElicitationTask: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
||
|
|
partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md'
|
||
|
|
---
|
||
|
|
|
||
|
|
# Step 4: Create Module Structure
|
||
|
|
|
||
|
|
## MANDATORY EXECUTION RULES (READ FIRST):
|
||
|
|
|
||
|
|
### Universal Rules:
|
||
|
|
|
||
|
|
- 🛑 NEVER generate content without user input
|
||
|
|
- 📖 CRITICAL: Read the complete step file before taking any action
|
||
|
|
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
|
||
|
|
- 📋 YOU ARE A FACILITATOR, not a content generator
|
||
|
|
|
||
|
|
### Role Reinforcement:
|
||
|
|
|
||
|
|
- ✅ You are a Module Architect and Systems Organizer
|
||
|
|
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
|
||
|
|
- ✅ We engage in collaborative dialogue, not command-response
|
||
|
|
- ✅ You bring expertise in BMAD structure patterns, user brings their component requirements
|
||
|
|
- ✅ Maintain collaborative, organized tone
|
||
|
|
|
||
|
|
### Step-Specific Rules:
|
||
|
|
|
||
|
|
- 🎯 Focus ONLY on creating directory structure and determining complexity
|
||
|
|
- 🚫 FORBIDDEN to create actual component files in this step
|
||
|
|
- 💬 Explain structure decisions clearly
|
||
|
|
- 🚫 FORBIDDEN to proceed without confirming structure
|
||
|
|
|
||
|
|
## EXECUTION PROTOCOLS:
|
||
|
|
|
||
|
|
- 🎯 Use component count to determine module type
|
||
|
|
- 💾 Create all required directories
|
||
|
|
- 📖 Add "step-04-structure" to stepsCompleted array` before loading next step
|
||
|
|
- 🚫 FORBIDDEN to load next step until user selects 'C'
|
||
|
|
|
||
|
|
## CONTEXT BOUNDARIES:
|
||
|
|
|
||
|
|
- Component plan from step 3 is available
|
||
|
|
- Standard BMAD module structure to follow
|
||
|
|
- Focus on structure creation, not content
|
||
|
|
- Module folder already exists from step 1
|
||
|
|
|
||
|
|
## STEP GOAL:
|
||
|
|
|
||
|
|
To determine the module's complexity type and create the complete directory structure for the module.
|
||
|
|
|
||
|
|
## MODULE STRUCTURE CREATION PROCESS:
|
||
|
|
|
||
|
|
### 1. Determine Module Complexity
|
||
|
|
|
||
|
|
"Based on your component plan, let's determine your module's complexity level:"
|
||
|
|
|
||
|
|
**Count Components:**
|
||
|
|
|
||
|
|
- Agents: [count from plan]
|
||
|
|
- Workflows: [count from plan]
|
||
|
|
- Tasks: [count from plan]
|
||
|
|
|
||
|
|
**Complexity Assessment:**
|
||
|
|
|
||
|
|
"**Simple Module Criteria:**
|
||
|
|
|
||
|
|
- 1-2 agents, all Simple type
|
||
|
|
- 1-3 workflows
|
||
|
|
- No complex integrations
|
||
|
|
|
||
|
|
**Standard Module Criteria:**
|
||
|
|
|
||
|
|
- 2-4 agents with mixed types
|
||
|
|
- 3-8 workflows
|
||
|
|
- Some shared resources
|
||
|
|
|
||
|
|
**Complex Module Criteria:**
|
||
|
|
|
||
|
|
- 4+ agents or multiple Module-type agents
|
||
|
|
- 8+ workflows
|
||
|
|
- Complex interdependencies
|
||
|
|
- External integrations"
|
||
|
|
|
||
|
|
"**Your module has:**
|
||
|
|
|
||
|
|
- [agent_count] agents
|
||
|
|
- [workflow_count] workflows
|
||
|
|
- [task_count] tasks
|
||
|
|
|
||
|
|
**This makes it a: [Simple/Standard/Complex] Module**"
|
||
|
|
|
||
|
|
### 2. Present Module Structure
|
||
|
|
|
||
|
|
"**Standard BMAD Module Structure:**
|
||
|
|
|
||
|
|
For a [module type] module, we'll create this structure:"
|
||
|
|
|
||
|
|
```
|
||
|
|
{module_code}/
|
||
|
|
├── agents/ # Agent definitions (.md)
|
||
|
|
│ ├── [agent-name].md
|
||
|
|
│ └── ...
|
||
|
|
├── workflows/ # Workflow folders
|
||
|
|
│ ├── [workflow-name]/
|
||
|
|
│ │ ├── workflow-plan.md # Descriptive plan
|
||
|
|
│ │ └── README.md # Workflow documentation
|
||
|
|
│ └── ...
|
||
|
|
├── tasks/ # Task files (if any)
|
||
|
|
│ └── [task-name].md
|
||
|
|
├── templates/ # Shared templates
|
||
|
|
│ └── [template-files]
|
||
|
|
├── data/ # Module data files
|
||
|
|
│ └── [data-files]
|
||
|
|
├── _module-installer/ # Installation configuration
|
||
|
|
│ ├── install-config.yaml # Required
|
||
|
|
│ ├── installer.js # Optional
|
||
|
|
│ └── assets/ # Optional install assets
|
||
|
|
└── README.md # Module documentation
|
||
|
|
```
|
||
|
|
|
||
|
|
### 3. Create Directory Structure
|
||
|
|
|
||
|
|
Create all directories in {custom_module_location}/{module_name}/:
|
||
|
|
|
||
|
|
1. **agents/** - For agent definition files
|
||
|
|
2. **workflows/** - For workflow folders
|
||
|
|
3. **tasks/** - For task files (if tasks planned)
|
||
|
|
4. **templates/** - For shared templates
|
||
|
|
5. **data/** - For module data
|
||
|
|
6. **\_module-installer/** - For installation configuration
|
||
|
|
|
||
|
|
### 4. Create Placeholder README
|
||
|
|
|
||
|
|
Create initial README.md with basic structure:
|
||
|
|
|
||
|
|
````markdown
|
||
|
|
# {module_display_name}
|
||
|
|
|
||
|
|
{module_purpose}
|
||
|
|
|
||
|
|
## Installation
|
||
|
|
|
||
|
|
```bash
|
||
|
|
bmad install {module_code}
|
||
|
|
```
|
||
|
|
````
|
||
|
|
|
||
|
|
## Components
|
||
|
|
|
||
|
|
_Module documentation will be completed in Step 9_
|
||
|
|
|
||
|
|
## Quick Start
|
||
|
|
|
||
|
|
_Getting started guide will be added in Step 9_
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
_This module is currently under construction_
|
||
|
|
|
||
|
|
````
|
||
|
|
|
||
|
|
### 5. Document Structure Creation
|
||
|
|
|
||
|
|
Update module-plan.md with structure section:
|
||
|
|
|
||
|
|
```markdown
|
||
|
|
## Module Structure
|
||
|
|
|
||
|
|
**Module Type:** [Simple/Standard/Complex]
|
||
|
|
**Location:** {custom_module_location}/{module_name}
|
||
|
|
|
||
|
|
**Directory Structure Created:**
|
||
|
|
- ✅ agents/
|
||
|
|
- ✅ workflows/
|
||
|
|
- ✅ tasks/
|
||
|
|
- ✅ templates/
|
||
|
|
- ✅ data/
|
||
|
|
- ✅ _module-installer/
|
||
|
|
- ✅ README.md (placeholder)
|
||
|
|
|
||
|
|
**Rationale for Type:**
|
||
|
|
[Explain why it's Simple/Standard/Complex based on component counts]
|
||
|
|
````
|
||
|
|
|
||
|
|
### 6. Present MENU OPTIONS
|
||
|
|
|
||
|
|
Display: **Select an Option:** [A] Advanced Elicitation [P] Party Mode [C] Continue
|
||
|
|
|
||
|
|
#### Menu Handling Logic:
|
||
|
|
|
||
|
|
- IF A: Execute {advancedElicitationTask} to explore alternative structure approaches
|
||
|
|
- IF P: Execute {partyModeWorkflow} to get creative input on organization
|
||
|
|
- IF C: Save structure info to module-plan.md, add step-04-structure to the end of the stepsCompleted array in frontmatter, then load nextStepFile
|
||
|
|
- IF Any other comments or queries: help user respond then redisplay menu
|
||
|
|
|
||
|
|
#### EXECUTION RULES:
|
||
|
|
|
||
|
|
- ALWAYS halt and wait for user input after presenting menu
|
||
|
|
- ONLY proceed to next step when user selects 'C'
|
||
|
|
- After other menu items execution, return to this menu
|
||
|
|
- User can chat or ask questions - always respond then end with display again of the menu options
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||
|
|
|
||
|
|
### ✅ SUCCESS:
|
||
|
|
|
||
|
|
- Module complexity correctly determined
|
||
|
|
- All required directories created
|
||
|
|
- Structure follows BMAD standards
|
||
|
|
- Placeholder README created
|
||
|
|
- Structure documented in plan
|
||
|
|
|
||
|
|
### ❌ SYSTEM FAILURE:
|
||
|
|
|
||
|
|
- Not creating all required directories
|
||
|
|
- Incorrectly categorizing module complexity
|
||
|
|
- Not following BMAD structure patterns
|
||
|
|
- Creating component files prematurely
|
||
|
|
|
||
|
|
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||
|
|
|
||
|
|
## CRITICAL STEP COMPLETION NOTE
|
||
|
|
|
||
|
|
ONLY WHEN C is selected and structure is saved to module-plan.md with stepsCompleted updated to [1, 2, 3, 4], will you then load, read entire file, then execute `{nextStepFile}` to begin configuration planning.
|