mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
feat: Extract BMGD module and implement workflow vendoring
This commit extracts game development functionality from BMM into a standalone BMGD (BMad Game Development) module and implements workflow vendoring to enable module independence. BMGD Module Creation: - Moved agents: game-designer, game-dev, game-architect from BMM to BMGD - Moved team config: team-gamedev - Created new Game Dev Scrum Master agent using workflow vendoring pattern - Reorganized workflows into industry-standard game dev phases: * Phase 1 (Preproduction): brainstorm-game, game-brief * Phase 2 (Design): gdd, narrative * Phase 3 (Technical): game-architecture * Phase 4 (Production): vendored from BMM workflows - Updated all module metadata and config_source references Workflow Vendoring Feature: - Enables modules to copy workflows from other modules during installation - Build-time process that updates config_source in vendored workflows - New agent YAML attribute: workflow-install (build-time metadata) - Final compiled agents use workflow-install value for workflow attribute - Implementation in module manager: vendorCrossModuleWorkflows() - Allows standalone module installation without forced dependencies Technical Changes: - tools/cli/lib/yaml-xml-builder.js: Use workflow-install for workflow attribute - tools/cli/installers/lib/modules/manager.js: Add vendoring functions - tools/schema/agent.js: Add workflow-install to menu item schema - Updated 3 documentation files with workflow vendoring details BMM Workflow Updates: - workflow-status/init: Added game detection checkpoint - workflow-status/paths/game-design.yaml: Redirect to BMGD module - prd/instructions.md: Route game projects to BMGD - research/instructions-market.md: Reference BMGD for game development Documentation: - Created comprehensive BMGD module README - Added workflow vendoring documentation - Updated BMB agent creation and module creation guides
This commit is contained in:
@@ -317,6 +317,56 @@ Your choice [1/2/3]:</ask>
|
||||
- Default to "software" if not clearly a game
|
||||
</action>
|
||||
|
||||
<check if="project_type == game">
|
||||
<output>
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
🎮 **GAME DEVELOPMENT DETECTED**
|
||||
|
||||
Game development workflows are now part of the **BMad Game Development (BMGD)** module.
|
||||
|
||||
The BMM module is designed for software development. For game development, you'll need
|
||||
the BMGD module which provides specialized game development workflows and agents.
|
||||
|
||||
**Would you like to:**
|
||||
a) Install BMGD module now (recommended for game projects)
|
||||
b) Continue with BMM workflows (for software projects only)
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
</output>
|
||||
|
||||
<ask>Your choice [a/b]:</ask>
|
||||
|
||||
<check if="choice == a">
|
||||
<output>
|
||||
Please run the following command to install the BMGD module:
|
||||
|
||||
```bash
|
||||
bmad install bmgd
|
||||
```
|
||||
|
||||
After installation, you can start your game development workflow with the Game Designer agent.
|
||||
|
||||
This workflow-init will now exit. Re-run it after installing BMGD.
|
||||
</output>
|
||||
<action>Exit workflow with success status</action>
|
||||
|
||||
</check>
|
||||
|
||||
<check if="choice == b">
|
||||
<output>
|
||||
⚠️ **Warning:** BMM workflows are optimized for software development, not game development.
|
||||
|
||||
You may encounter mismatched terminology and workflows. Consider installing BMGD for
|
||||
a better game development experience.
|
||||
|
||||
Continuing with software development workflows...
|
||||
</output>
|
||||
<action>Set project_type = "software" (override game detection)</action>
|
||||
|
||||
</check>
|
||||
</check>
|
||||
|
||||
<template-output>user_description</template-output>
|
||||
<template-output>field_type</template-output>
|
||||
<template-output>project_type</template-output>
|
||||
|
||||
Reference in New Issue
Block a user