bmad-method 6.0.0-alpha.6 → 6.0.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.bmad/_cfg/agent-manifest.csv +11 -0
- package/{bmad → .bmad}/_cfg/files-manifest.csv +170 -157
- package/{bmad → .bmad}/_cfg/ides/claude-code.yaml +2 -2
- package/.bmad/_cfg/manifest.yaml +10 -0
- package/{bmad → .bmad}/_cfg/task-manifest.csv +1 -1
- package/{bmad → .bmad}/_cfg/workflow-manifest.csv +1 -1
- package/{bmad → .bmad}/bmb/agents/bmad-builder.md +12 -12
- package/.bmad/bmb/config.yaml +16 -0
- package/{bmad → .bmad}/bmb/workflows/audit-workflow/checklist.md +2 -2
- package/{bmad → .bmad}/bmb/workflows/audit-workflow/instructions.md +5 -5
- package/{bmad → .bmad}/bmb/workflows/audit-workflow/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmb/workflows/convert-legacy/README.md +5 -5
- package/{bmad → .bmad}/bmb/workflows/convert-legacy/checklist.md +2 -2
- package/{bmad → .bmad}/bmb/workflows/convert-legacy/instructions.md +17 -17
- package/{bmad → .bmad}/bmb/workflows/convert-legacy/workflow.yaml +6 -6
- package/{bmad → .bmad}/bmb/workflows/create-agent/README.md +5 -5
- package/{bmad → .bmad}/bmb/workflows/create-agent/agent-architecture.md +15 -15
- package/{bmad → .bmad}/bmb/workflows/create-agent/agent-command-patterns.md +28 -28
- package/{bmad → .bmad}/bmb/workflows/create-agent/agent-types.md +15 -15
- package/{bmad → .bmad}/bmb/workflows/create-agent/checklist.md +3 -3
- package/{bmad → .bmad}/bmb/workflows/create-agent/instructions.md +34 -18
- package/{bmad → .bmad}/bmb/workflows/create-agent/workflow.yaml +6 -6
- package/{bmad → .bmad}/bmb/workflows/create-module/README.md +1 -1
- package/{bmad → .bmad}/bmb/workflows/create-module/checklist.md +1 -1
- package/{bmad → .bmad}/bmb/workflows/create-module/installer-templates/install-config.yaml +1 -1
- package/{bmad → .bmad}/bmb/workflows/create-module/instructions.md +7 -7
- package/{bmad → .bmad}/bmb/workflows/create-module/module-structure.md +36 -2
- package/{bmad → .bmad}/bmb/workflows/create-module/workflow.yaml +9 -9
- package/{bmad → .bmad}/bmb/workflows/create-workflow/README.md +4 -4
- package/{bmad → .bmad}/bmb/workflows/create-workflow/checklist.md +1 -1
- package/{bmad → .bmad}/bmb/workflows/create-workflow/instructions.md +29 -29
- package/{bmad → .bmad}/bmb/workflows/create-workflow/workflow-creation-guide.md +36 -36
- package/{bmad → .bmad}/bmb/workflows/create-workflow/workflow-template/instructions.md +2 -2
- package/{bmad → .bmad}/bmb/workflows/create-workflow/workflow-template/workflow.yaml +1 -1
- package/{bmad → .bmad}/bmb/workflows/create-workflow/workflow.yaml +5 -5
- package/{bmad → .bmad}/bmb/workflows/edit-agent/checklist.md +1 -1
- package/{bmad → .bmad}/bmb/workflows/edit-agent/instructions.md +2 -2
- package/{bmad → .bmad}/bmb/workflows/edit-agent/workflow.yaml +8 -8
- package/{bmad → .bmad}/bmb/workflows/edit-module/README.md +2 -2
- package/{bmad → .bmad}/bmb/workflows/edit-module/checklist.md +2 -2
- package/{bmad → .bmad}/bmb/workflows/edit-module/instructions.md +4 -4
- package/{bmad → .bmad}/bmb/workflows/edit-module/workflow.yaml +10 -10
- package/{bmad → .bmad}/bmb/workflows/edit-workflow/instructions.md +4 -4
- package/{bmad → .bmad}/bmb/workflows/edit-workflow/workflow.yaml +5 -5
- package/{bmad → .bmad}/bmb/workflows/module-brief/README.md +2 -2
- package/{bmad → .bmad}/bmb/workflows/module-brief/instructions.md +2 -2
- package/{bmad → .bmad}/bmb/workflows/module-brief/workflow.yaml +4 -4
- package/{bmad → .bmad}/bmb/workflows/redoc/README.md +5 -5
- package/{bmad → .bmad}/bmb/workflows/redoc/instructions.md +1 -1
- package/{bmad → .bmad}/bmb/workflows/redoc/workflow.yaml +1 -1
- package/{bmad → .bmad}/bmm/agents/analyst.md +20 -12
- package/{bmad → .bmad}/bmm/agents/architect.md +19 -11
- package/{bmad → .bmad}/bmm/agents/dev.md +10 -10
- package/{bmad → .bmad}/bmm/agents/pm.md +23 -15
- package/{bmad → .bmad}/bmm/agents/sm.md +26 -18
- package/{bmad → .bmad}/bmm/agents/tea.md +25 -17
- package/{bmad → .bmad}/bmm/agents/tech-writer.md +16 -8
- package/{bmad → .bmad}/bmm/agents/ux-designer.md +18 -10
- package/{bmad → .bmad}/bmm/config.yaml +7 -7
- package/.bmad/bmm/docs/README.md +235 -0
- package/.bmad/bmm/docs/agents-guide.md +1056 -0
- package/.bmad/bmm/docs/brownfield-guide.md +754 -0
- package/.bmad/bmm/docs/enterprise-agentic-development.md +680 -0
- package/.bmad/bmm/docs/faq.md +587 -0
- package/.bmad/bmm/docs/glossary.md +320 -0
- package/.bmad/bmm/docs/party-mode.md +224 -0
- package/.bmad/bmm/docs/quick-spec-flow.md +652 -0
- package/.bmad/bmm/docs/quick-start.md +366 -0
- package/.bmad/bmm/docs/scale-adaptive-system.md +599 -0
- package/.bmad/bmm/docs/test-architecture.md +394 -0
- package/.bmad/bmm/docs/workflow-architecture-reference.md +371 -0
- package/.bmad/bmm/docs/workflow-document-project-reference.md +487 -0
- package/.bmad/bmm/docs/workflows-analysis.md +370 -0
- package/.bmad/bmm/docs/workflows-implementation.md +284 -0
- package/.bmad/bmm/docs/workflows-planning.md +601 -0
- package/.bmad/bmm/docs/workflows-solutioning.md +501 -0
- package/{bmad → .bmad}/bmm/tasks/daily-standup.xml +2 -2
- package/.bmad/bmm/teams/default-party.csv +19 -0
- package/{bmad → .bmad}/bmm/teams/team-fullstack.yaml +1 -0
- package/{bmad → .bmad}/bmm/workflows/1-analysis/brainstorm-project/instructions.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +3 -3
- package/{bmad → .bmad}/bmm/workflows/1-analysis/domain-research/instructions.md +1 -1
- package/.bmad/bmm/workflows/1-analysis/domain-research/workflow.yaml +40 -0
- package/{bmad → .bmad}/bmm/workflows/1-analysis/product-brief/instructions.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/1-analysis/product-brief/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/1-analysis/research/instructions-market.md +6 -6
- package/{bmad → .bmad}/bmm/workflows/1-analysis/research/instructions-router.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/1-analysis/research/instructions-technical.md +4 -4
- package/{bmad → .bmad}/bmm/workflows/1-analysis/research/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +3 -7
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/instructions.md +3 -3
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/instructions.md +6 -6
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/tech-spec/instructions-level0-story.md +5 -5
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/tech-spec/instructions-level1-stories.md +6 -6
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/3-solutioning/architecture/instructions.md +6 -6
- package/{bmad → .bmad}/bmm/workflows/3-solutioning/architecture/workflow.yaml +3 -2
- package/{bmad → .bmad}/bmm/workflows/3-solutioning/solutioning-gate-check/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/3-solutioning/solutioning-gate-check/workflow.yaml +4 -4
- package/{bmad → .bmad}/bmm/workflows/4-implementation/code-review/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/code-review/workflow.yaml +4 -13
- package/{bmad → .bmad}/bmm/workflows/4-implementation/correct-course/checklist.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/4-implementation/correct-course/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/correct-course/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/create-story/instructions.md +3 -3
- package/{bmad → .bmad}/bmm/workflows/4-implementation/create-story/workflow.yaml +3 -3
- package/{bmad → .bmad}/bmm/workflows/4-implementation/dev-story/AUDIT-REPORT.md +3 -3
- package/{bmad → .bmad}/bmm/workflows/4-implementation/dev-story/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/dev-story/workflow.yaml +3 -3
- package/{bmad → .bmad}/bmm/workflows/4-implementation/epic-tech-context/checklist.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/4-implementation/epic-tech-context/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/retrospective/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/retrospective/workflow.yaml +4 -4
- package/{bmad → .bmad}/bmm/workflows/4-implementation/sprint-planning/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +3 -3
- package/{bmad → .bmad}/bmm/workflows/4-implementation/story-context/checklist.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/4-implementation/story-context/context-template.xml +1 -1
- package/{bmad → .bmad}/bmm/workflows/4-implementation/story-context/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/4-implementation/story-context/workflow.yaml +4 -4
- package/{bmad → .bmad}/bmm/workflows/4-implementation/story-done/instructions.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/4-implementation/story-done/workflow.yaml +3 -3
- package/{bmad → .bmad}/bmm/workflows/4-implementation/story-ready/instructions.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/4-implementation/story-ready/workflow.yaml +3 -3
- package/{bmad → .bmad}/bmm/workflows/document-project/instructions.md +5 -5
- package/{bmad → .bmad}/bmm/workflows/document-project/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/document-project/workflows/deep-dive.yaml +5 -5
- package/{bmad → .bmad}/bmm/workflows/document-project/workflows/full-scan.yaml +5 -5
- package/{bmad → .bmad}/bmm/workflows/testarch/atdd/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/atdd/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/automate/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/automate/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/ci/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/ci/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/framework/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/framework/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/nfr-assess/instructions.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/testarch/nfr-assess/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/test-design/instructions.md +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/test-design/test-design-template.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/testarch/test-design/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/test-review/instructions.md +1 -1
- package/{bmad → .bmad}/bmm/workflows/testarch/test-review/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/testarch/trace/instructions.md +9 -9
- package/{bmad → .bmad}/bmm/workflows/testarch/trace/workflow.yaml +2 -2
- package/{bmad → .bmad}/bmm/workflows/workflow-status/init/instructions.md +74 -23
- package/{bmad → .bmad}/bmm/workflows/workflow-status/init/workflow.yaml +4 -4
- package/{bmad → .bmad}/bmm/workflows/workflow-status/instructions.md +5 -4
- package/{bmad → .bmad}/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +18 -11
- package/{bmad → .bmad}/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +18 -11
- package/.bmad/bmm/workflows/workflow-status/paths/game-design.yaml +52 -0
- package/{bmad → .bmad}/bmm/workflows/workflow-status/project-levels.yaml +1 -1
- package/{bmad → .bmad}/bmm/workflows/workflow-status/workflow.yaml +2 -2
- package/{bmad → .bmad}/core/agents/bmad-master.md +7 -7
- package/{bmad → .bmad}/core/agents/bmad-web-orchestrator.agent.xml +8 -17
- package/{bmad → .bmad}/core/config.yaml +4 -2
- package/{bmad → .bmad}/core/tasks/adv-elicit.xml +5 -3
- package/{bmad → .bmad}/core/tasks/index-docs.xml +1 -1
- package/{bmad → .bmad}/core/tasks/validate-workflow.xml +1 -1
- package/{bmad → .bmad}/core/tasks/workflow.xml +1 -1
- package/{bmad → .bmad}/core/tools/shard-doc.xml +1 -1
- package/{bmad → .bmad}/core/workflows/brainstorming/README.md +2 -2
- package/{bmad → .bmad}/core/workflows/brainstorming/instructions.md +3 -3
- package/{bmad → .bmad}/core/workflows/brainstorming/workflow.yaml +8 -8
- package/{bmad → .bmad}/core/workflows/party-mode/instructions.md +2 -7
- package/.bmad/core/workflows/party-mode/workflow.yaml +27 -0
- package/.claude/commands/bmad/bmb/agents/bmad-builder.md +12 -12
- package/.claude/commands/bmad/bmm/agents/analyst.md +20 -12
- package/.claude/commands/bmad/bmm/agents/architect.md +19 -11
- package/.claude/commands/bmad/bmm/agents/dev.md +10 -10
- package/.claude/commands/bmad/bmm/agents/pm.md +23 -15
- package/.claude/commands/bmad/bmm/agents/sm.md +26 -18
- package/.claude/commands/bmad/bmm/agents/tea.md +25 -17
- package/.claude/commands/bmad/bmm/agents/tech-writer.md +16 -8
- package/.claude/commands/bmad/bmm/agents/ux-designer.md +18 -10
- package/.claude/commands/bmad/bmm/workflows/domain-research.md +15 -0
- package/.claude/commands/bmad/core/agents/bmad-master.md +7 -7
- package/.claude/commands/bmad/core/tasks/adv-elicit.md +9 -0
- package/.claude/settings.local.json +6 -5
- package/.github/workflows/{lint.yaml → quality.yaml} +19 -2
- package/.husky/pre-commit +4 -0
- package/.vscode/settings.json +2 -1
- package/README.md +59 -1
- package/docs/installers-bundlers/installers-modules-platforms-reference.md +61 -0
- package/package.json +5 -3
- package/src/core/_module-installer/install-config.yaml +15 -9
- package/src/core/_module-installer/installer.js +0 -8
- package/src/core/agents/bmad-master.agent.yaml +5 -5
- package/src/core/agents/bmad-web-orchestrator.agent.xml +8 -17
- package/src/core/tasks/adv-elicit.xml +5 -3
- package/src/core/tasks/index-docs.xml +1 -1
- package/src/core/tasks/validate-workflow.xml +1 -1
- package/src/core/tasks/workflow.xml +1 -1
- package/src/core/tools/shard-doc.xml +1 -1
- package/src/core/workflows/brainstorming/README.md +2 -2
- package/src/core/workflows/brainstorming/instructions.md +3 -3
- package/src/core/workflows/brainstorming/workflow.yaml +8 -8
- package/src/core/workflows/party-mode/instructions.md +2 -7
- package/src/core/workflows/party-mode/workflow.yaml +10 -6
- package/src/modules/bmb/_module-installer/install-config.yaml +9 -4
- package/src/modules/bmb/agents/bmad-builder.agent.yaml +11 -10
- package/src/modules/bmb/workflows/audit-workflow/checklist.md +2 -2
- package/src/modules/bmb/workflows/audit-workflow/instructions.md +5 -5
- package/src/modules/bmb/workflows/audit-workflow/workflow.yaml +2 -2
- package/src/modules/bmb/workflows/convert-legacy/README.md +5 -5
- package/src/modules/bmb/workflows/convert-legacy/checklist.md +2 -2
- package/src/modules/bmb/workflows/convert-legacy/instructions.md +17 -17
- package/src/modules/bmb/workflows/convert-legacy/workflow.yaml +6 -6
- package/src/modules/bmb/workflows/create-agent/README.md +5 -5
- package/src/modules/bmb/workflows/create-agent/agent-architecture.md +15 -15
- package/src/modules/bmb/workflows/create-agent/agent-command-patterns.md +28 -28
- package/src/modules/bmb/workflows/create-agent/agent-types.md +15 -15
- package/src/modules/bmb/workflows/create-agent/checklist.md +3 -3
- package/src/modules/bmb/workflows/create-agent/instructions.md +34 -18
- package/src/modules/bmb/workflows/create-agent/workflow.yaml +12 -12
- package/src/modules/bmb/workflows/create-module/README.md +1 -1
- package/src/modules/bmb/workflows/create-module/checklist.md +1 -1
- package/src/modules/bmb/workflows/create-module/installer-templates/install-config.yaml +1 -1
- package/src/modules/bmb/workflows/create-module/instructions.md +7 -7
- package/src/modules/bmb/workflows/create-module/module-structure.md +36 -2
- package/src/modules/bmb/workflows/create-module/workflow.yaml +9 -9
- package/src/modules/bmb/workflows/create-workflow/README.md +4 -4
- package/src/modules/bmb/workflows/create-workflow/checklist.md +1 -1
- package/src/modules/bmb/workflows/create-workflow/instructions.md +29 -29
- package/src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md +42 -42
- package/src/modules/bmb/workflows/create-workflow/workflow-template/instructions.md +2 -2
- package/src/modules/bmb/workflows/create-workflow/workflow-template/workflow.yaml +12 -12
- package/src/modules/bmb/workflows/create-workflow/workflow.yaml +5 -5
- package/src/modules/bmb/workflows/edit-agent/checklist.md +1 -1
- package/src/modules/bmb/workflows/edit-agent/instructions.md +2 -2
- package/src/modules/bmb/workflows/edit-agent/workflow.yaml +8 -8
- package/src/modules/bmb/workflows/edit-module/README.md +2 -2
- package/src/modules/bmb/workflows/edit-module/checklist.md +2 -2
- package/src/modules/bmb/workflows/edit-module/instructions.md +4 -4
- package/src/modules/bmb/workflows/edit-module/workflow.yaml +10 -10
- package/src/modules/bmb/workflows/edit-workflow/instructions.md +4 -4
- package/src/modules/bmb/workflows/edit-workflow/workflow.yaml +5 -5
- package/src/modules/bmb/workflows/module-brief/README.md +2 -2
- package/src/modules/bmb/workflows/module-brief/instructions.md +2 -2
- package/src/modules/bmb/workflows/module-brief/workflow.yaml +4 -4
- package/src/modules/bmb/workflows/redoc/README.md +5 -5
- package/src/modules/bmb/workflows/redoc/instructions.md +1 -1
- package/src/modules/bmb/workflows/redoc/workflow.yaml +1 -1
- package/src/modules/bmgd/README.md +208 -0
- package/src/modules/bmgd/_module-installer/install-config.yaml +67 -0
- package/src/modules/bmgd/agents/game-architect.agent.yaml +33 -0
- package/src/modules/bmgd/agents/game-designer.agent.yaml +40 -0
- package/src/modules/bmgd/agents/game-dev.agent.yaml +40 -0
- package/src/modules/bmgd/agents/game-scrum-master.agent.yaml +75 -0
- package/src/modules/bmgd/teams/default-party.csv +10 -0
- package/src/modules/{bmm → bmgd}/teams/team-gamedev.yaml +5 -1
- package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/instructions.md +1 -1
- package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/workflow.yaml +10 -10
- package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/instructions.md +1 -1
- package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/workflow.yaml +9 -9
- package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/instructions-gdd.md +8 -8
- package/src/modules/bmgd/workflows/2-design/gdd/workflow.yaml +81 -0
- package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/narrative/instructions-narrative.md +6 -6
- package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/narrative/workflow.yaml +6 -6
- package/src/modules/bmgd/workflows/3-technical/game-architecture/architecture-patterns.yaml +347 -0
- package/src/modules/bmgd/workflows/3-technical/game-architecture/architecture-template.md +103 -0
- package/src/modules/bmgd/workflows/3-technical/game-architecture/checklist.md +244 -0
- package/src/modules/bmgd/workflows/3-technical/game-architecture/decision-catalog.yaml +222 -0
- package/src/modules/bmgd/workflows/3-technical/game-architecture/instructions.md +704 -0
- package/src/modules/bmgd/workflows/3-technical/game-architecture/pattern-categories.csv +13 -0
- package/src/modules/bmgd/workflows/3-technical/game-architecture/workflow.yaml +67 -0
- package/src/modules/bmgd/workflows/4-production/code-review/backlog_template.md +12 -0
- package/src/modules/bmgd/workflows/4-production/code-review/checklist.md +22 -0
- package/src/modules/bmgd/workflows/4-production/code-review/instructions.md +420 -0
- package/src/modules/bmgd/workflows/4-production/code-review/workflow.yaml +67 -0
- package/src/modules/bmgd/workflows/4-production/correct-course/checklist.md +279 -0
- package/src/modules/bmgd/workflows/4-production/correct-course/instructions.md +201 -0
- package/src/modules/bmgd/workflows/4-production/correct-course/workflow.yaml +45 -0
- package/src/modules/bmgd/workflows/4-production/create-story/checklist.md +240 -0
- package/src/modules/bmgd/workflows/4-production/create-story/instructions.md +283 -0
- package/src/modules/bmgd/workflows/4-production/create-story/template.md +51 -0
- package/src/modules/bmgd/workflows/4-production/create-story/workflow.yaml +76 -0
- package/src/modules/bmgd/workflows/4-production/dev-story/AUDIT-REPORT.md +367 -0
- package/src/modules/bmgd/workflows/4-production/dev-story/checklist.md +38 -0
- package/src/modules/bmgd/workflows/4-production/dev-story/instructions.md +262 -0
- package/src/modules/bmgd/workflows/4-production/dev-story/workflow.yaml +28 -0
- package/src/modules/bmgd/workflows/4-production/epic-tech-context/checklist.md +17 -0
- package/src/modules/bmgd/workflows/4-production/epic-tech-context/instructions.md +189 -0
- package/src/modules/bmgd/workflows/4-production/epic-tech-context/template.md +76 -0
- package/src/modules/bmgd/workflows/4-production/epic-tech-context/workflow.yaml +60 -0
- package/src/modules/bmgd/workflows/4-production/retrospective/instructions.md +1460 -0
- package/src/modules/bmgd/workflows/4-production/retrospective/workflow.yaml +73 -0
- package/src/modules/bmgd/workflows/4-production/sprint-planning/checklist.md +33 -0
- package/src/modules/bmgd/workflows/4-production/sprint-planning/instructions.md +238 -0
- package/src/modules/bmgd/workflows/4-production/sprint-planning/sprint-status-template.yaml +55 -0
- package/src/modules/bmgd/workflows/4-production/sprint-planning/workflow.yaml +49 -0
- package/src/modules/bmgd/workflows/4-production/story-context/checklist.md +16 -0
- package/src/modules/bmgd/workflows/4-production/story-context/context-template.xml +34 -0
- package/src/modules/bmgd/workflows/4-production/story-context/instructions.md +234 -0
- package/src/modules/bmgd/workflows/4-production/story-context/workflow.yaml +59 -0
- package/src/modules/bmgd/workflows/4-production/story-done/instructions.md +111 -0
- package/src/modules/bmgd/workflows/4-production/story-done/workflow.yaml +27 -0
- package/src/modules/bmgd/workflows/4-production/story-ready/instructions.md +117 -0
- package/src/modules/bmgd/workflows/4-production/story-ready/workflow.yaml +27 -0
- package/src/modules/bmm/_module-installer/install-config.yaml +10 -24
- package/src/modules/bmm/_module-installer/installer.js +2 -2
- package/src/modules/bmm/agents/analyst.agent.yaml +20 -15
- package/src/modules/bmm/agents/architect.agent.yaml +17 -12
- package/src/modules/bmm/agents/dev.agent.yaml +9 -12
- package/src/modules/bmm/agents/pm.agent.yaml +24 -23
- package/src/modules/bmm/agents/sm.agent.yaml +24 -19
- package/src/modules/bmm/agents/tea.agent.yaml +23 -17
- package/src/modules/bmm/agents/tech-writer.agent.yaml +14 -10
- package/src/modules/bmm/agents/ux-designer.agent.yaml +16 -11
- package/src/modules/bmm/docs/README.md +8 -9
- package/src/modules/bmm/docs/agents-guide.md +4 -5
- package/src/modules/bmm/docs/brownfield-guide.md +9 -13
- package/src/modules/bmm/docs/enterprise-agentic-development.md +3 -3
- package/src/modules/bmm/docs/faq.md +5 -7
- package/src/modules/bmm/docs/glossary.md +0 -1
- package/src/modules/bmm/docs/party-mode.md +3 -3
- package/src/modules/bmm/docs/quick-spec-flow.md +4 -4
- package/src/modules/bmm/docs/quick-start.md +5 -5
- package/src/modules/bmm/docs/scale-adaptive-system.md +5 -5
- package/src/modules/bmm/docs/test-architecture.md +184 -119
- package/src/modules/bmm/docs/workflow-document-project-reference.md +1 -1
- package/src/modules/bmm/docs/workflows-analysis.md +203 -539
- package/src/modules/bmm/docs/workflows-planning.md +326 -850
- package/src/modules/bmm/docs/workflows-solutioning.md +250 -505
- package/src/modules/bmm/sub-modules/claude-code/README.md +1 -1
- package/src/modules/bmm/sub-modules/claude-code/injections.yaml +22 -22
- package/src/modules/bmm/tasks/daily-standup.xml +2 -2
- package/src/modules/bmm/teams/default-party.csv +19 -0
- package/src/modules/bmm/teams/team-fullstack.yaml +1 -0
- package/src/modules/bmm/workflows/1-analysis/brainstorm-project/instructions.md +1 -1
- package/src/modules/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +8 -8
- package/src/modules/bmm/workflows/1-analysis/domain-research/instructions.md +1 -1
- package/src/modules/bmm/workflows/1-analysis/domain-research/workflow.yaml +65 -32
- package/src/modules/bmm/workflows/1-analysis/product-brief/instructions.md +1 -1
- package/src/modules/bmm/workflows/1-analysis/product-brief/workflow.yaml +12 -8
- package/src/modules/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +2 -2
- package/src/modules/bmm/workflows/1-analysis/research/instructions-market.md +6 -6
- package/src/modules/bmm/workflows/1-analysis/research/instructions-router.md +1 -1
- package/src/modules/bmm/workflows/1-analysis/research/instructions-technical.md +4 -4
- package/src/modules/bmm/workflows/1-analysis/research/workflow.yaml +14 -14
- package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +1 -1
- package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +36 -7
- package/src/modules/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/instructions.md +3 -3
- package/src/modules/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/workflow.yaml +6 -6
- package/src/modules/bmm/workflows/2-plan-workflows/prd/instructions.md +6 -6
- package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.yaml +21 -13
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +1 -1
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-level0-story.md +5 -5
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-level1-stories.md +6 -6
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +2 -2
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +15 -9
- package/src/modules/bmm/workflows/3-solutioning/architecture/instructions.md +6 -6
- package/src/modules/bmm/workflows/3-solutioning/architecture/workflow.yaml +49 -2
- package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/instructions.md +2 -2
- package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/workflow.yaml +4 -4
- package/src/modules/bmm/workflows/4-implementation/code-review/instructions.md +38 -38
- package/src/modules/bmm/workflows/4-implementation/code-review/workflow.yaml +6 -23
- package/src/modules/bmm/workflows/4-implementation/correct-course/checklist.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/correct-course/instructions.md +2 -2
- package/src/modules/bmm/workflows/4-implementation/correct-course/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/4-implementation/create-story/instructions.md +38 -40
- package/src/modules/bmm/workflows/4-implementation/create-story/workflow.yaml +6 -19
- package/src/modules/bmm/workflows/4-implementation/dev-story/AUDIT-REPORT.md +3 -3
- package/src/modules/bmm/workflows/4-implementation/dev-story/instructions.md +2 -2
- package/src/modules/bmm/workflows/4-implementation/dev-story/workflow.yaml +3 -3
- package/src/modules/bmm/workflows/4-implementation/epic-tech-context/checklist.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/epic-tech-context/instructions.md +26 -28
- package/src/modules/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +6 -18
- package/src/modules/bmm/workflows/4-implementation/retrospective/instructions.md +11 -11
- package/src/modules/bmm/workflows/4-implementation/retrospective/workflow.yaml +8 -11
- package/src/modules/bmm/workflows/4-implementation/sprint-planning/instructions.md +6 -15
- package/src/modules/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +5 -4
- package/src/modules/bmm/workflows/4-implementation/story-context/checklist.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/story-context/context-template.xml +1 -1
- package/src/modules/bmm/workflows/4-implementation/story-context/instructions.md +8 -9
- package/src/modules/bmm/workflows/4-implementation/story-context/workflow.yaml +6 -14
- package/src/modules/bmm/workflows/4-implementation/story-done/instructions.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/story-done/workflow.yaml +4 -4
- package/src/modules/bmm/workflows/4-implementation/story-ready/instructions.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/story-ready/workflow.yaml +4 -4
- package/src/modules/bmm/workflows/document-project/instructions.md +5 -5
- package/src/modules/bmm/workflows/document-project/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/document-project/workflows/deep-dive.yaml +5 -5
- package/src/modules/bmm/workflows/document-project/workflows/full-scan.yaml +5 -5
- package/src/modules/bmm/workflows/testarch/atdd/instructions.md +2 -2
- package/src/modules/bmm/workflows/testarch/atdd/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/testarch/automate/instructions.md +2 -2
- package/src/modules/bmm/workflows/testarch/automate/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/testarch/ci/instructions.md +2 -2
- package/src/modules/bmm/workflows/testarch/ci/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/testarch/framework/instructions.md +2 -2
- package/src/modules/bmm/workflows/testarch/framework/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/testarch/nfr-assess/instructions.md +1 -1
- package/src/modules/bmm/workflows/testarch/nfr-assess/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/testarch/test-design/instructions.md +2 -2
- package/src/modules/bmm/workflows/testarch/test-design/test-design-template.md +1 -1
- package/src/modules/bmm/workflows/testarch/test-design/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/testarch/test-review/instructions.md +1 -1
- package/src/modules/bmm/workflows/testarch/test-review/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/testarch/trace/instructions.md +9 -9
- package/src/modules/bmm/workflows/testarch/trace/workflow.yaml +2 -2
- package/src/modules/bmm/workflows/workflow-status/init/instructions.md +78 -26
- package/src/modules/bmm/workflows/workflow-status/init/workflow.yaml +5 -4
- package/src/modules/bmm/workflows/workflow-status/instructions.md +5 -4
- package/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +18 -11
- package/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +18 -11
- package/src/modules/bmm/workflows/workflow-status/paths/game-design.yaml +42 -65
- package/src/modules/bmm/workflows/workflow-status/project-levels.yaml +1 -1
- package/src/modules/bmm/workflows/workflow-status/workflow.yaml +2 -2
- package/src/modules/cis/README.md +1 -1
- package/src/modules/cis/_module-installer/install-config.yaml +6 -4
- package/src/modules/cis/agents/README.md +1 -1
- package/src/modules/cis/agents/brainstorming-coach.agent.yaml +13 -8
- package/src/modules/cis/agents/creative-problem-solver.agent.yaml +13 -8
- package/src/modules/cis/agents/design-thinking-coach.agent.yaml +13 -8
- package/src/modules/cis/agents/innovation-strategist.agent.yaml +13 -8
- package/src/modules/cis/agents/storyteller.agent.yaml +13 -8
- package/src/modules/cis/teams/creative-squad.yaml +1 -0
- package/src/modules/cis/teams/default-party.csv +11 -0
- package/src/modules/cis/workflows/README.md +1 -1
- package/src/modules/cis/workflows/design-thinking/instructions.md +2 -2
- package/src/modules/cis/workflows/design-thinking/workflow.yaml +7 -7
- package/src/modules/cis/workflows/innovation-strategy/instructions.md +2 -2
- package/src/modules/cis/workflows/innovation-strategy/workflow.yaml +7 -7
- package/src/modules/cis/workflows/problem-solving/instructions.md +2 -2
- package/src/modules/cis/workflows/problem-solving/workflow.yaml +7 -7
- package/src/modules/cis/workflows/storytelling/instructions.md +2 -2
- package/src/modules/cis/workflows/storytelling/workflow.yaml +7 -7
- package/src/utility/models/action-command-header.md +0 -0
- package/src/utility/models/agent-activation-ide.xml +3 -3
- package/src/utility/models/agent-activation-web.xml +4 -4
- package/src/utility/models/agent-command-header.md +1 -0
- package/src/utility/models/fragments/activation-steps.xml +3 -2
- package/src/utility/models/fragments/handler-validate-workflow.xml +1 -1
- package/src/utility/models/fragments/handler-workflow.xml +1 -1
- package/src/utility/models/fragments/web-bundle-activation-steps.xml +3 -3
- package/test/test-installation-components.js +214 -0
- package/tools/cli/bundlers/web-bundler.js +208 -20
- package/tools/cli/commands/install.js +1 -4
- package/tools/cli/installers/lib/core/config-collector.js +201 -28
- package/tools/cli/installers/lib/core/detector.js +62 -7
- package/tools/cli/installers/lib/core/installer.js +158 -23
- package/tools/cli/installers/lib/core/manifest-generator.js +26 -115
- package/tools/cli/installers/lib/ide/_base-ide.js +57 -3
- package/tools/cli/installers/lib/ide/auggie.js +81 -238
- package/tools/cli/installers/lib/ide/claude-code.js +47 -25
- package/tools/cli/installers/lib/ide/cline.js +15 -18
- package/tools/cli/installers/lib/ide/codex.js +17 -48
- package/tools/cli/installers/lib/ide/crush.js +14 -50
- package/tools/cli/installers/lib/ide/cursor.js +68 -8
- package/tools/cli/installers/lib/ide/gemini.js +87 -37
- package/tools/cli/installers/lib/ide/github-copilot.js +47 -35
- package/tools/cli/installers/lib/ide/iflow.js +13 -30
- package/tools/cli/installers/lib/ide/kilo.js +20 -16
- package/tools/cli/installers/lib/ide/manager.js +15 -0
- package/tools/cli/installers/lib/ide/opencode.js +16 -17
- package/tools/cli/installers/lib/ide/qwen.js +39 -11
- package/tools/cli/installers/lib/ide/roo.js +27 -62
- package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +90 -0
- package/tools/cli/installers/lib/ide/{task-tool-command-generator.js → shared/task-tool-command-generator.js} +1 -1
- package/tools/cli/installers/lib/ide/{workflow-command-generator.js → shared/workflow-command-generator.js} +11 -9
- package/tools/cli/installers/lib/ide/templates/agent-command-template.md +14 -0
- package/tools/cli/installers/lib/ide/templates/gemini-agent-command.toml +14 -0
- package/tools/cli/installers/lib/ide/templates/gemini-task-command.toml +12 -0
- package/tools/cli/installers/lib/ide/{workflow-command-template.md → templates/workflow-command-template.md} +3 -5
- package/tools/cli/installers/lib/ide/trae.js +20 -32
- package/tools/cli/installers/lib/ide/windsurf.js +18 -8
- package/tools/cli/installers/lib/modules/manager.js +207 -7
- package/tools/cli/lib/cli-utils.js +52 -50
- package/tools/cli/lib/ui.js +15 -8
- package/tools/cli/lib/yaml-xml-builder.js +9 -1
- package/tools/schema/agent.js +8 -3
- package/v6-open-items.md +3 -9
- package/web-bundles/bmgd/agents/game-architect.xml +664 -0
- package/web-bundles/bmgd/agents/game-designer.xml +5489 -0
- package/web-bundles/bmgd/agents/game-dev.xml +595 -0
- package/web-bundles/bmgd/agents/game-scrum-master.xml +699 -0
- package/web-bundles/bmgd/teams/team-gamedev.xml +6588 -0
- package/web-bundles/bmm/agents/analyst.xml +5263 -0
- package/web-bundles/bmm/agents/architect.xml +2378 -0
- package/web-bundles/bmm/agents/dev.xml +248 -0
- package/web-bundles/bmm/agents/pm.xml +4137 -0
- package/web-bundles/bmm/agents/sm.xml +708 -0
- package/web-bundles/bmm/agents/tea.xml +759 -0
- package/web-bundles/bmm/agents/tech-writer.xml +624 -0
- package/web-bundles/bmm/agents/ux-designer.xml +2492 -0
- package/web-bundles/bmm/teams/team-fullstack.xml +12369 -0
- package/web-bundles/cis/agents/brainstorming-coach.xml +1069 -0
- package/web-bundles/cis/agents/creative-problem-solver.xml +1060 -0
- package/web-bundles/cis/agents/design-thinking-coach.xml +955 -0
- package/web-bundles/cis/agents/innovation-strategist.xml +1108 -0
- package/web-bundles/cis/agents/storyteller.xml +598 -0
- package/web-bundles/cis/teams/creative-squad.xml +3449 -0
- package/.claude/agents/bmad-analysis/api-documenter.md +0 -102
- package/.claude/agents/bmad-analysis/codebase-analyzer.md +0 -82
- package/.claude/agents/bmad-analysis/data-analyst.md +0 -101
- package/.claude/agents/bmad-analysis/pattern-detector.md +0 -84
- package/.claude/agents/bmad-planning/dependency-mapper.md +0 -83
- package/.claude/agents/bmad-planning/epic-optimizer.md +0 -81
- package/.claude/agents/bmad-planning/requirements-analyst.md +0 -61
- package/.claude/agents/bmad-planning/technical-decisions-curator.md +0 -168
- package/.claude/agents/bmad-planning/trend-spotter.md +0 -115
- package/.claude/agents/bmad-planning/user-journey-mapper.md +0 -123
- package/.claude/agents/bmad-planning/user-researcher.md +0 -72
- package/.claude/agents/bmad-research/market-researcher.md +0 -51
- package/.claude/agents/bmad-research/tech-debt-auditor.md +0 -106
- package/.claude/agents/bmad-review/document-reviewer.md +0 -102
- package/.claude/agents/bmad-review/technical-evaluator.md +0 -68
- package/.claude/agents/bmad-review/test-coverage-analyzer.md +0 -108
- package/.claude/commands/bmad/bmb/workflows/README.md +0 -67
- package/.claude/commands/bmad/bmm/workflows/README.md +0 -132
- package/.claude/commands/bmad/bmm/workflows/narrative.md +0 -15
- package/.claude/commands/bmad/cis/agents/README.md +0 -104
- package/.claude/commands/bmad/cis/agents/brainstorming-coach.md +0 -62
- package/.claude/commands/bmad/cis/agents/creative-problem-solver.md +0 -62
- package/.claude/commands/bmad/cis/agents/design-thinking-coach.md +0 -62
- package/.claude/commands/bmad/cis/agents/innovation-strategist.md +0 -62
- package/.claude/commands/bmad/cis/agents/storyteller.md +0 -59
- package/.claude/commands/bmad/cis/workflows/README.md +0 -37
- package/.claude/commands/bmad/cis/workflows/design-thinking.md +0 -15
- package/.claude/commands/bmad/cis/workflows/innovation-strategy.md +0 -15
- package/.claude/commands/bmad/cis/workflows/problem-solving.md +0 -15
- package/.claude/commands/bmad/cis/workflows/storytelling.md +0 -15
- package/.claude/commands/bmad/core/workflows/README.md +0 -27
- package/bmad/_cfg/agent-manifest.csv +0 -11
- package/bmad/_cfg/manifest.yaml +0 -10
- package/bmad/bmb/config.yaml +0 -14
- package/bmad/bmm/teams/team-gamedev.yaml +0 -14
- package/bmad/bmm/workflows/1-analysis/domain-research/workflow.yaml +0 -36
- package/bmad/bmm/workflows/2-plan-workflows/narrative/instructions-narrative.md +0 -608
- package/bmad/bmm/workflows/2-plan-workflows/narrative/workflow.yaml +0 -29
- package/bmad/bmm/workflows/workflow-status/paths/game-design.yaml +0 -75
- package/bmad/core/workflows/party-mode/workflow.yaml +0 -23
- package/bmd/README.md +0 -193
- package/bmd/agents/cli-chief-sidecar/instructions.md +0 -102
- package/bmd/agents/cli-chief-sidecar/knowledge/README.md +0 -68
- package/bmd/agents/cli-chief-sidecar/knowledge/cli-reference.md +0 -123
- package/bmd/agents/cli-chief-sidecar/memories.md +0 -53
- package/bmd/agents/cli-chief.agent.yaml +0 -126
- package/bmd/agents/doc-keeper-sidecar/instructions.md +0 -177
- package/bmd/agents/doc-keeper-sidecar/knowledge/README.md +0 -81
- package/bmd/agents/doc-keeper-sidecar/memories.md +0 -88
- package/bmd/agents/doc-keeper.agent.yaml +0 -137
- package/bmd/agents/release-chief-sidecar/instructions.md +0 -164
- package/bmd/agents/release-chief-sidecar/knowledge/README.md +0 -82
- package/bmd/agents/release-chief-sidecar/memories.md +0 -73
- package/bmd/agents/release-chief.agent.yaml +0 -127
- package/bmd/bmad-custom-module-installer-plan.md +0 -1176
- package/bmd/config.yaml +0 -12
- package/src/modules/bmm/agents/game-architect.agent.yaml +0 -35
- package/src/modules/bmm/agents/game-designer.agent.yaml +0 -47
- package/src/modules/bmm/agents/game-dev.agent.yaml +0 -35
- package/src/modules/bmm/docs/troubleshooting.md +0 -680
- package/src/modules/bmm/workflows/2-plan-workflows/gdd/workflow.yaml +0 -81
- package/src/modules/bmm/workflows/2-plan-workflows/narrative/checklist.md +0 -139
- package/src/modules/bmm/workflows/2-plan-workflows/narrative/narrative-template.md +0 -195
- package/test/fixtures/agent-schema/invalid/persona/principles-as-string.agent.yaml +0 -23
- /package/{bmad → .bmad}/_cfg/agents/bmb-bmad-builder.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/bmm-analyst.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/bmm-architect.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/bmm-dev.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/bmm-pm.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/bmm-sm.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/bmm-tea.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/bmm-tech-writer.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/bmm-ux-designer.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/agents/core-bmad-master.customize.yaml +0 -0
- /package/{bmad → .bmad}/_cfg/tool-manifest.csv +0 -0
- /package/{bmad → .bmad}/bmb/README.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/audit-workflow/template.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/create-agent/brainstorm-context.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/create-agent/communication-styles.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/create-module/brainstorm-context.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/create-module/installer-templates/installer.js +0 -0
- /package/{bmad → .bmad}/bmb/workflows/create-workflow/brainstorm-context.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/create-workflow/workflow-template/checklist.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/create-workflow/workflow-template/template.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/edit-agent/README.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/edit-workflow/README.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/edit-workflow/checklist.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/module-brief/checklist.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/module-brief/template.md +0 -0
- /package/{bmad → .bmad}/bmb/workflows/redoc/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/README.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/ci-burn-in.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/component-tdd.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/contract-testing.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/data-factories.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/email-auth.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/error-handling.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/feature-flags.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/fixture-architecture.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/network-first.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/nfr-criteria.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/playwright-config.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/probability-impact.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/risk-governance.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/selective-testing.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/selector-resilience.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/test-healing-patterns.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/test-levels-framework.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/test-priorities-matrix.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/test-quality.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/timing-debugging.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/knowledge/visual-debugging.md +0 -0
- /package/{bmad → .bmad}/bmm/testarch/tea-index.csv +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/brainstorm-project/project-context.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/domain-research/template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/product-brief/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/product-brief/template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/research/checklist-deep-prompt.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/research/checklist-technical.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/research/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/research/claude-code/injections.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/research/template-deep-prompt.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/research/template-market.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/1-analysis/research/template-technical.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/create-ux-design/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/create-epics-and-stories/epics-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/prd-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/prd/project-types.csv +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/tech-spec/tech-spec-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/3-solutioning/architecture/architecture-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/3-solutioning/architecture/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/3-solutioning/architecture/decision-catalog.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/3-solutioning/architecture/pattern-categories.csv +0 -0
- /package/{bmad → .bmad}/bmm/workflows/3-solutioning/solutioning-gate-check/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/3-solutioning/solutioning-gate-check/template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/3-solutioning/solutioning-gate-check/validation-criteria.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/4-implementation/code-review/backlog_template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/4-implementation/code-review/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/4-implementation/create-story/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/4-implementation/create-story/template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/4-implementation/dev-story/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/4-implementation/epic-tech-context/template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/4-implementation/sprint-planning/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/documentation-requirements.csv +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/templates/deep-dive-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/templates/index-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/templates/project-overview-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/templates/project-scan-report-schema.json +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/templates/source-tree-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/techdoc/documentation-standards.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/atdd/atdd-checklist-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/atdd/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/automate/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/ci/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/ci/github-actions-template.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/framework/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/nfr-assess/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/test-design/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/test-review/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/test-review/test-review-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/trace/checklist.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/testarch/trace/trace-template.md +0 -0
- /package/{bmad → .bmad}/bmm/workflows/workflow-status/paths/method-brownfield.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/workflow-status/paths/method-greenfield.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/workflow-status/paths/quick-flow-brownfield.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/workflow-status/paths/quick-flow-greenfield.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/workflow-status/sample-level-3-workflow.yaml +0 -0
- /package/{bmad → .bmad}/bmm/workflows/workflow-status/workflow-status-template.yaml +0 -0
- /package/{bmad → .bmad}/core/tasks/adv-elicit-methods.csv +0 -0
- /package/{bmad → .bmad}/core/workflows/brainstorming/brain-methods.csv +0 -0
- /package/{bmad → .bmad}/core/workflows/brainstorming/template.md +0 -0
- /package/{bmad → .bmad}/docs/claude-code-instructions.md +0 -0
- /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/game-brain-methods.csv +0 -0
- /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/game-context.md +0 -0
- /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/checklist.md +0 -0
- /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/template.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/checklist.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/action-platformer.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/adventure.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/card-game.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/fighting.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/horror.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/idle-incremental.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/metroidvania.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/moba.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/party-game.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/puzzle.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/racing.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/rhythm.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/roguelike.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/rpg.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/sandbox.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/shooter.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/simulation.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/sports.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/strategy.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/survival.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/text-based.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/tower-defense.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/turn-based-tactics.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/visual-novel.md +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types.csv +0 -0
- /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/gdd-template.md +0 -0
- /package/{bmad/bmm/workflows/2-plan-workflows → src/modules/bmgd/workflows/2-design}/narrative/checklist.md +0 -0
- /package/{bmad/bmm/workflows/2-plan-workflows → src/modules/bmgd/workflows/2-design}/narrative/narrative-template.md +0 -0
|
@@ -51,8 +51,13 @@ class WebBundler {
|
|
|
51
51
|
console.log(chalk.cyan.bold('═══════════════════════════════════════════════\n'));
|
|
52
52
|
|
|
53
53
|
try {
|
|
54
|
-
//
|
|
54
|
+
// Vendor cross-module workflows FIRST
|
|
55
55
|
const modules = await this.discoverModules();
|
|
56
|
+
for (const module of modules) {
|
|
57
|
+
await this.vendorCrossModuleWorkflows(module);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// Pre-discover all modules to generate complete manifests
|
|
56
61
|
for (const module of modules) {
|
|
57
62
|
await this.preDiscoverModule(module);
|
|
58
63
|
}
|
|
@@ -92,6 +97,9 @@ class WebBundler {
|
|
|
92
97
|
teams: [],
|
|
93
98
|
};
|
|
94
99
|
|
|
100
|
+
// Vendor cross-module workflows first (if not already done by bundleAll)
|
|
101
|
+
await this.vendorCrossModuleWorkflows(moduleName);
|
|
102
|
+
|
|
95
103
|
// Pre-discover all agents and teams for manifest generation
|
|
96
104
|
await this.preDiscoverModule(moduleName);
|
|
97
105
|
|
|
@@ -134,6 +142,9 @@ class WebBundler {
|
|
|
134
142
|
|
|
135
143
|
console.log(chalk.dim(` → Processing: ${agentName}`));
|
|
136
144
|
|
|
145
|
+
// Vendor cross-module workflows first (if not already done)
|
|
146
|
+
await this.vendorCrossModuleWorkflows(moduleName);
|
|
147
|
+
|
|
137
148
|
const agentPath = path.join(this.modulesPath, moduleName, 'agents', agentFile);
|
|
138
149
|
|
|
139
150
|
// Check if agent file exists
|
|
@@ -194,6 +205,18 @@ class WebBundler {
|
|
|
194
205
|
this.stats.warnings.push({ agent: agentName, warnings: dependencyWarnings });
|
|
195
206
|
}
|
|
196
207
|
|
|
208
|
+
// Check for module's default-party.csv and include it as agent manifest
|
|
209
|
+
const defaultPartyPath = path.join(this.modulesPath, moduleName, 'teams', 'default-party.csv');
|
|
210
|
+
if (await fs.pathExists(defaultPartyPath)) {
|
|
211
|
+
const partyContent = await fs.readFile(defaultPartyPath, 'utf8');
|
|
212
|
+
// Process any placeholders in the CSV content
|
|
213
|
+
const processedPartyContent = this.processProjectRootReferences(partyContent);
|
|
214
|
+
// Wrap as text to preserve raw CSV format in CDATA
|
|
215
|
+
const wrappedParty = this.wrapContentInXml(processedPartyContent, 'bmad/_cfg/agent-manifest.csv', 'text');
|
|
216
|
+
dependencies.set('bmad/_cfg/agent-manifest.csv', wrappedParty);
|
|
217
|
+
console.log(chalk.gray(` + Added party manifest from module default-party.csv`));
|
|
218
|
+
}
|
|
219
|
+
|
|
197
220
|
// Remove commands for skipped workflows from agent XML
|
|
198
221
|
if (skippedWorkflows.length > 0) {
|
|
199
222
|
agentXml = this.removeSkippedWorkflowCommands(agentXml, skippedWorkflows);
|
|
@@ -249,6 +272,24 @@ class WebBundler {
|
|
|
249
272
|
const allAgentXmls = [];
|
|
250
273
|
const warnings = [];
|
|
251
274
|
|
|
275
|
+
// Check if team has a party CSV file (agent manifest)
|
|
276
|
+
const hasPartyFile = teamConfig.party && teamConfig.party.endsWith('.csv');
|
|
277
|
+
if (hasPartyFile) {
|
|
278
|
+
// Load the party CSV and add it as bmad/_cfg/agent-manifest.csv
|
|
279
|
+
const partyPath = path.join(path.dirname(teamPath), teamConfig.party.replace(/^\.\//, ''));
|
|
280
|
+
if (await fs.pathExists(partyPath)) {
|
|
281
|
+
const partyContent = await fs.readFile(partyPath, 'utf8');
|
|
282
|
+
// Process any placeholders in the CSV content
|
|
283
|
+
const processedPartyContent = this.processProjectRootReferences(partyContent);
|
|
284
|
+
// Wrap as text/csv to preserve raw CSV format in CDATA
|
|
285
|
+
const wrappedParty = this.wrapContentInXml(processedPartyContent, 'bmad/_cfg/agent-manifest.csv', 'text');
|
|
286
|
+
dependencies.set('bmad/_cfg/agent-manifest.csv', wrappedParty);
|
|
287
|
+
console.log(chalk.gray(` + Added agent manifest from: ${teamConfig.party}`));
|
|
288
|
+
} else {
|
|
289
|
+
console.log(chalk.yellow(` ⚠ Party file not found: ${partyPath}`));
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
|
|
252
293
|
// 1. First, always add the bmad-web-orchestrator (XML file only, no transformation needed)
|
|
253
294
|
const orchestratorXmlPath = path.join(this.sourceDir, 'core', 'agents', 'bmad-web-orchestrator.agent.xml');
|
|
254
295
|
|
|
@@ -433,6 +474,99 @@ class WebBundler {
|
|
|
433
474
|
return parts.join('\n');
|
|
434
475
|
}
|
|
435
476
|
|
|
477
|
+
/**
|
|
478
|
+
* Vendor cross-module workflows for a module
|
|
479
|
+
* Scans source agent YAML files for workflow-install attributes and copies workflows
|
|
480
|
+
*/
|
|
481
|
+
async vendorCrossModuleWorkflows(moduleName) {
|
|
482
|
+
const modulePath = path.join(this.modulesPath, moduleName);
|
|
483
|
+
const agentsPath = path.join(modulePath, 'agents');
|
|
484
|
+
|
|
485
|
+
if (!(await fs.pathExists(agentsPath))) {
|
|
486
|
+
return;
|
|
487
|
+
}
|
|
488
|
+
|
|
489
|
+
// Find all agent YAML files
|
|
490
|
+
const files = await fs.readdir(agentsPath);
|
|
491
|
+
const yamlFiles = files.filter((f) => f.endsWith('.agent.yaml'));
|
|
492
|
+
|
|
493
|
+
for (const agentFile of yamlFiles) {
|
|
494
|
+
const agentPath = path.join(agentsPath, agentFile);
|
|
495
|
+
const agentYaml = yaml.load(await fs.readFile(agentPath, 'utf8'));
|
|
496
|
+
|
|
497
|
+
const menuItems = agentYaml?.agent?.menu || [];
|
|
498
|
+
const workflowInstallItems = menuItems.filter((item) => item['workflow-install']);
|
|
499
|
+
|
|
500
|
+
for (const item of workflowInstallItems) {
|
|
501
|
+
const sourceWorkflowPath = item.workflow;
|
|
502
|
+
const installWorkflowPath = item['workflow-install'];
|
|
503
|
+
|
|
504
|
+
if (!sourceWorkflowPath || !installWorkflowPath) {
|
|
505
|
+
continue;
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
// Parse paths to extract module and workflow location
|
|
509
|
+
// Support both {project-root}/bmad/... and {project-root}/{bmad_folder}/... patterns
|
|
510
|
+
const sourceMatch = sourceWorkflowPath.match(/\{project-root\}\/(?:\{bmad_folder\}|bmad)\/([^/]+)\/workflows\/(.+)/);
|
|
511
|
+
const installMatch = installWorkflowPath.match(/\{project-root\}\/(?:\{bmad_folder\}|bmad)\/([^/]+)\/workflows\/(.+)/);
|
|
512
|
+
|
|
513
|
+
if (!sourceMatch || !installMatch) {
|
|
514
|
+
continue;
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
const sourceModule = sourceMatch[1];
|
|
518
|
+
const sourceWorkflowRelPath = sourceMatch[2];
|
|
519
|
+
const installModule = installMatch[1];
|
|
520
|
+
const installWorkflowRelPath = installMatch[2];
|
|
521
|
+
|
|
522
|
+
// Build actual filesystem paths
|
|
523
|
+
const actualSourceWorkflowPath = path.join(this.modulesPath, sourceModule, 'workflows', sourceWorkflowRelPath);
|
|
524
|
+
const actualDestWorkflowPath = path.join(this.modulesPath, installModule, 'workflows', installWorkflowRelPath);
|
|
525
|
+
|
|
526
|
+
// Check if source workflow exists
|
|
527
|
+
if (!(await fs.pathExists(actualSourceWorkflowPath))) {
|
|
528
|
+
console.log(chalk.yellow(` ⚠ Source workflow not found for vendoring: ${sourceWorkflowPath}`));
|
|
529
|
+
continue;
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
// Check if destination already exists (skip if already vendored)
|
|
533
|
+
if (await fs.pathExists(actualDestWorkflowPath)) {
|
|
534
|
+
continue;
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
// Get workflow directory (workflow.yaml is in a directory with other files)
|
|
538
|
+
const sourceWorkflowDir = path.dirname(actualSourceWorkflowPath);
|
|
539
|
+
const destWorkflowDir = path.dirname(actualDestWorkflowPath);
|
|
540
|
+
|
|
541
|
+
// Copy entire workflow directory
|
|
542
|
+
await fs.copy(sourceWorkflowDir, destWorkflowDir, { overwrite: false });
|
|
543
|
+
|
|
544
|
+
// Update config_source in the vendored workflow.yaml
|
|
545
|
+
const workflowYamlPath = actualDestWorkflowPath;
|
|
546
|
+
if (await fs.pathExists(workflowYamlPath)) {
|
|
547
|
+
await this.updateWorkflowConfigSource(workflowYamlPath, installModule);
|
|
548
|
+
}
|
|
549
|
+
|
|
550
|
+
console.log(chalk.dim(` → Vendored workflow: ${sourceWorkflowRelPath} → ${installModule}/workflows/${installWorkflowRelPath}`));
|
|
551
|
+
}
|
|
552
|
+
}
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
/**
|
|
556
|
+
* Update config_source in a vendored workflow YAML file
|
|
557
|
+
*/
|
|
558
|
+
async updateWorkflowConfigSource(workflowYamlPath, newModuleName) {
|
|
559
|
+
let yamlContent = await fs.readFile(workflowYamlPath, 'utf8');
|
|
560
|
+
|
|
561
|
+
// Replace config_source with new module reference
|
|
562
|
+
// Support both old format (bmad) and new format ({bmad_folder})
|
|
563
|
+
const configSourcePattern = /config_source:\s*["']?\{project-root\}\/(?:\{bmad_folder\}|bmad)\/[^/]+\/config\.yaml["']?/g;
|
|
564
|
+
const newConfigSource = `config_source: "{project-root}/{bmad_folder}/${newModuleName}/config.yaml"`;
|
|
565
|
+
|
|
566
|
+
const updatedYaml = yamlContent.replaceAll(configSourcePattern, newConfigSource);
|
|
567
|
+
await fs.writeFile(workflowYamlPath, updatedYaml, 'utf8');
|
|
568
|
+
}
|
|
569
|
+
|
|
436
570
|
/**
|
|
437
571
|
* Pre-discover all agents and teams in a module for manifest generation
|
|
438
572
|
*/
|
|
@@ -549,7 +683,8 @@ class WebBundler {
|
|
|
549
683
|
/system-prompts="([^"]+)"/g,
|
|
550
684
|
/tools="([^"]+)"/g,
|
|
551
685
|
/knowledge="([^"]+)"/g,
|
|
552
|
-
/{project-root}\/([^"'\s<>]+)/g,
|
|
686
|
+
/{project-root}\/([^"'\s<>]+)/g, // Legacy {project-root} paths
|
|
687
|
+
/\bbmad\/([^"'\s<>]+)/g, // Direct bmad/ paths (after {bmad_folder} replacement)
|
|
553
688
|
];
|
|
554
689
|
|
|
555
690
|
for (const pattern of patterns) {
|
|
@@ -558,9 +693,16 @@ class WebBundler {
|
|
|
558
693
|
let filePath = match[1];
|
|
559
694
|
// Remove {project-root} prefix if present
|
|
560
695
|
filePath = filePath.replace(/^{project-root}\//, '');
|
|
696
|
+
// Remove {bmad_folder} prefix if present (should be rare, mostly replaced already)
|
|
697
|
+
filePath = filePath.replace(/^{bmad_folder}\//, 'bmad/');
|
|
698
|
+
|
|
699
|
+
// For bmad/ pattern, prepend 'bmad/' since it was captured without it
|
|
700
|
+
if (pattern.source.includes(String.raw`\bbmad\/`)) {
|
|
701
|
+
filePath = 'bmad/' + filePath;
|
|
702
|
+
}
|
|
561
703
|
|
|
562
704
|
// Skip obvious placeholder/example paths
|
|
563
|
-
if (filePath && !filePath.includes('path/to/') && !filePath.includes('example')) {
|
|
705
|
+
if (filePath && !filePath.includes('path/to/') && !filePath.includes('example') && !filePath.includes('...')) {
|
|
564
706
|
refs.add(filePath);
|
|
565
707
|
}
|
|
566
708
|
}
|
|
@@ -578,6 +720,8 @@ class WebBundler {
|
|
|
578
720
|
while ((match = pattern.exec(xml)) !== null) {
|
|
579
721
|
let workflowPath = match[1];
|
|
580
722
|
workflowPath = workflowPath.replace(/^{project-root}\//, '');
|
|
723
|
+
// Remove {bmad_folder} prefix if present and replace with bmad
|
|
724
|
+
workflowPath = workflowPath.replace(/^{bmad_folder}\//, 'bmad/');
|
|
581
725
|
|
|
582
726
|
// Skip obvious placeholder/example paths
|
|
583
727
|
if (workflowPath && workflowPath.endsWith('.yaml') && !workflowPath.includes('path/to/') && !workflowPath.includes('example')) {
|
|
@@ -595,16 +739,25 @@ class WebBundler {
|
|
|
595
739
|
removeSkippedWorkflowCommands(agentXml, skippedWorkflows) {
|
|
596
740
|
let modifiedXml = agentXml;
|
|
597
741
|
|
|
598
|
-
// For each skipped workflow, find and remove
|
|
742
|
+
// For each skipped workflow, find and remove menu items and commands
|
|
599
743
|
for (const workflowPath of skippedWorkflows) {
|
|
600
|
-
// Match: <c cmd="..." run-workflow="workflowPath">...</c>
|
|
601
744
|
// Need to escape special regex characters in the path
|
|
602
745
|
const escapedPath = workflowPath.replaceAll(/[.*+?^${}()|[\]\\]/g, String.raw`\$&`);
|
|
603
746
|
|
|
604
|
-
// Pattern
|
|
605
|
-
|
|
747
|
+
// Pattern 1: Remove <item> tags with workflow attribute
|
|
748
|
+
// Match: <item cmd="..." workflow="workflowPath">...</item>
|
|
749
|
+
const itemWorkflowPattern = new RegExp(`\\s*<item\\s+[^>]*workflow="[^"]*${escapedPath}"[^>]*>.*?</item>\\s*`, 'gs');
|
|
750
|
+
modifiedXml = modifiedXml.replace(itemWorkflowPattern, '');
|
|
606
751
|
|
|
607
|
-
|
|
752
|
+
// Pattern 2: Remove <item> tags with run-workflow attribute
|
|
753
|
+
// Match: <item cmd="..." run-workflow="workflowPath">...</item>
|
|
754
|
+
const itemRunWorkflowPattern = new RegExp(`\\s*<item\\s+[^>]*run-workflow="[^"]*${escapedPath}"[^>]*>.*?</item>\\s*`, 'gs');
|
|
755
|
+
modifiedXml = modifiedXml.replace(itemRunWorkflowPattern, '');
|
|
756
|
+
|
|
757
|
+
// Pattern 3: Remove <c> tags with run-workflow attribute (legacy)
|
|
758
|
+
// Match: <c cmd="..." run-workflow="workflowPath">...</c>
|
|
759
|
+
const cPattern = new RegExp(`\\s*<c\\s+[^>]*run-workflow="[^"]*${escapedPath}"[^>]*>.*?</c>\\s*`, 'gs');
|
|
760
|
+
modifiedXml = modifiedXml.replace(cPattern, '');
|
|
608
761
|
}
|
|
609
762
|
|
|
610
763
|
return modifiedXml;
|
|
@@ -614,6 +767,11 @@ class WebBundler {
|
|
|
614
767
|
* Process a file dependency recursively
|
|
615
768
|
*/
|
|
616
769
|
async processFileDependency(filePath, dependencies, processed, moduleName, warnings = []) {
|
|
770
|
+
// Skip workflow YAML files - they're handled by processWorkflowDependency
|
|
771
|
+
if (filePath.includes('/workflow') && filePath.endsWith('workflow.yaml')) {
|
|
772
|
+
return;
|
|
773
|
+
}
|
|
774
|
+
|
|
617
775
|
// Skip if already processed
|
|
618
776
|
if (processed.has(filePath)) {
|
|
619
777
|
return;
|
|
@@ -655,7 +813,8 @@ class WebBundler {
|
|
|
655
813
|
const deps = depMatch[1].match(/['"]([^'"]+)['"]/g);
|
|
656
814
|
if (deps) {
|
|
657
815
|
for (const dep of deps) {
|
|
658
|
-
|
|
816
|
+
let depPath = dep.replaceAll(/['"]/g, '').replace(/^{project-root}\//, '');
|
|
817
|
+
depPath = depPath.replace(/^{bmad_folder}\//, 'bmad/');
|
|
659
818
|
if (depPath && !processed.has(depPath)) {
|
|
660
819
|
await this.processFileDependency(depPath, dependencies, processed, moduleName, warnings);
|
|
661
820
|
}
|
|
@@ -668,7 +827,8 @@ class WebBundler {
|
|
|
668
827
|
const templates = templateMatch[1].match(/['"]([^'"]+)['"]/g);
|
|
669
828
|
if (templates) {
|
|
670
829
|
for (const template of templates) {
|
|
671
|
-
|
|
830
|
+
let templatePath = template.replaceAll(/['"]/g, '').replace(/^{project-root}\//, '');
|
|
831
|
+
templatePath = templatePath.replace(/^{bmad_folder}\//, 'bmad/');
|
|
672
832
|
if (templatePath && !processed.has(templatePath)) {
|
|
673
833
|
await this.processFileDependency(templatePath, dependencies, processed, moduleName, warnings);
|
|
674
834
|
}
|
|
@@ -856,8 +1016,13 @@ class WebBundler {
|
|
|
856
1016
|
bundleYamlContent = yamlContent;
|
|
857
1017
|
}
|
|
858
1018
|
|
|
1019
|
+
// Process {project-root} and {bmad_folder} references in the YAML content
|
|
1020
|
+
bundleYamlContent = this.processProjectRootReferences(bundleYamlContent);
|
|
1021
|
+
|
|
859
1022
|
// Include the YAML file with only web_bundle content, wrapped in XML
|
|
860
|
-
|
|
1023
|
+
// Process the workflow path to create a clean ID
|
|
1024
|
+
let yamlId = workflowPath.replace(/^{project-root}\//, '');
|
|
1025
|
+
yamlId = yamlId.replace(/^{bmad_folder}\//, 'bmad/');
|
|
861
1026
|
const wrappedYaml = this.wrapContentInXml(bundleYamlContent, yamlId, 'yaml');
|
|
862
1027
|
dependencies.set(yamlId, wrappedYaml);
|
|
863
1028
|
|
|
@@ -874,7 +1039,11 @@ class WebBundler {
|
|
|
874
1039
|
const bundleFiles = workflowConfig.web_bundle.web_bundle_files;
|
|
875
1040
|
|
|
876
1041
|
for (const bundleFilePath of bundleFiles) {
|
|
877
|
-
if
|
|
1042
|
+
// Process the file path to create a clean ID for checking if already processed
|
|
1043
|
+
let cleanFilePath = bundleFilePath.replace(/^{project-root}\//, '');
|
|
1044
|
+
cleanFilePath = cleanFilePath.replace(/^{bmad_folder}\//, 'bmad/');
|
|
1045
|
+
|
|
1046
|
+
if (processed.has(cleanFilePath)) {
|
|
878
1047
|
continue;
|
|
879
1048
|
}
|
|
880
1049
|
|
|
@@ -891,15 +1060,18 @@ class WebBundler {
|
|
|
891
1060
|
await this.processWorkflowDependency(bundleFilePath, dependencies, processed, moduleName, warnings);
|
|
892
1061
|
} else {
|
|
893
1062
|
// Regular file - process normally
|
|
894
|
-
processed.add(
|
|
1063
|
+
processed.add(cleanFilePath);
|
|
895
1064
|
|
|
896
1065
|
// Read the file content
|
|
897
|
-
|
|
1066
|
+
let fileContent = await fs.readFile(bundleActualPath, 'utf8');
|
|
898
1067
|
const fileExt = path.extname(bundleActualPath).toLowerCase().replace('.', '');
|
|
899
1068
|
|
|
1069
|
+
// Process {project-root} references before wrapping
|
|
1070
|
+
fileContent = this.processProjectRootReferences(fileContent);
|
|
1071
|
+
|
|
900
1072
|
// Wrap in XML with proper escaping
|
|
901
|
-
const wrappedContent = this.wrapContentInXml(fileContent,
|
|
902
|
-
dependencies.set(
|
|
1073
|
+
const wrappedContent = this.wrapContentInXml(fileContent, cleanFilePath, fileExt);
|
|
1074
|
+
dependencies.set(cleanFilePath, wrappedContent);
|
|
903
1075
|
}
|
|
904
1076
|
}
|
|
905
1077
|
}
|
|
@@ -925,7 +1097,9 @@ class WebBundler {
|
|
|
925
1097
|
return;
|
|
926
1098
|
}
|
|
927
1099
|
|
|
928
|
-
|
|
1100
|
+
let fileContent = await fs.readFile(actualPath, 'utf8');
|
|
1101
|
+
// Process {project-root} and {bmad_folder} references
|
|
1102
|
+
fileContent = this.processProjectRootReferences(fileContent);
|
|
929
1103
|
const wrappedContent = this.wrapContentInXml(fileContent, coreWorkflowPath, 'xml');
|
|
930
1104
|
dependencies.set(coreWorkflowPath, wrappedContent);
|
|
931
1105
|
}
|
|
@@ -949,7 +1123,9 @@ class WebBundler {
|
|
|
949
1123
|
continue;
|
|
950
1124
|
}
|
|
951
1125
|
|
|
952
|
-
|
|
1126
|
+
let fileContent = await fs.readFile(actualPath, 'utf8');
|
|
1127
|
+
// Process {project-root} and {bmad_folder} references
|
|
1128
|
+
fileContent = this.processProjectRootReferences(fileContent);
|
|
953
1129
|
const fileExt = path.extname(actualPath).toLowerCase().replace('.', '');
|
|
954
1130
|
const wrappedContent = this.wrapContentInXml(fileContent, filePath, fileExt);
|
|
955
1131
|
dependencies.set(filePath, wrappedContent);
|
|
@@ -982,6 +1158,8 @@ class WebBundler {
|
|
|
982
1158
|
async processWildcardDependency(pattern, dependencies, processed, moduleName, warnings = []) {
|
|
983
1159
|
// Remove {project-root} prefix
|
|
984
1160
|
pattern = pattern.replace(/^{project-root}\//, '');
|
|
1161
|
+
// Replace {bmad_folder} with bmad
|
|
1162
|
+
pattern = pattern.replace(/^{bmad_folder}\//, 'bmad/');
|
|
985
1163
|
|
|
986
1164
|
// Get directory and file pattern
|
|
987
1165
|
const lastSlash = pattern.lastIndexOf('/');
|
|
@@ -1049,6 +1227,9 @@ class WebBundler {
|
|
|
1049
1227
|
resolveFilePath(filePath, moduleName) {
|
|
1050
1228
|
// Remove {project-root} prefix
|
|
1051
1229
|
filePath = filePath.replace(/^{project-root}\//, '');
|
|
1230
|
+
// Replace {bmad_folder} with bmad
|
|
1231
|
+
filePath = filePath.replace(/^{bmad_folder}\//, 'bmad/');
|
|
1232
|
+
filePath = filePath.replace(/^{bmad_folder}$/, 'bmad');
|
|
1052
1233
|
|
|
1053
1234
|
// Check temp directory first for _cfg files
|
|
1054
1235
|
if (filePath.startsWith('bmad/_cfg/')) {
|
|
@@ -1115,13 +1296,15 @@ class WebBundler {
|
|
|
1115
1296
|
}
|
|
1116
1297
|
|
|
1117
1298
|
/**
|
|
1118
|
-
* Process and remove {project-root} references
|
|
1299
|
+
* Process and remove {project-root} references and replace {bmad_folder} with bmad
|
|
1119
1300
|
*/
|
|
1120
1301
|
processProjectRootReferences(content) {
|
|
1121
1302
|
// Remove {project-root}/ prefix (with slash)
|
|
1122
1303
|
content = content.replaceAll('{project-root}/', '');
|
|
1123
1304
|
// Also remove {project-root} without slash
|
|
1124
1305
|
content = content.replaceAll('{project-root}', '');
|
|
1306
|
+
// Replace {bmad_folder} with bmad
|
|
1307
|
+
content = content.replaceAll('{bmad_folder}', 'bmad');
|
|
1125
1308
|
return content;
|
|
1126
1309
|
}
|
|
1127
1310
|
|
|
@@ -1447,7 +1630,10 @@ class WebBundler {
|
|
|
1447
1630
|
}
|
|
1448
1631
|
|
|
1449
1632
|
// Display warnings summary
|
|
1450
|
-
if
|
|
1633
|
+
// Check if there are actually any warnings with content
|
|
1634
|
+
const hasActualWarnings = this.stats.warnings.some((w) => w && w.warnings && w.warnings.length > 0);
|
|
1635
|
+
|
|
1636
|
+
if (hasActualWarnings) {
|
|
1451
1637
|
console.log(chalk.yellow('\n⚠ Missing Dependencies by Agent:'));
|
|
1452
1638
|
|
|
1453
1639
|
// Group and display warnings by agent
|
|
@@ -1461,6 +1647,8 @@ class WebBundler {
|
|
|
1461
1647
|
}
|
|
1462
1648
|
}
|
|
1463
1649
|
}
|
|
1650
|
+
} else {
|
|
1651
|
+
console.log(chalk.green('\n✓ No missing dependencies'));
|
|
1464
1652
|
}
|
|
1465
1653
|
|
|
1466
1654
|
// Final status
|
|
@@ -56,10 +56,7 @@ module.exports = {
|
|
|
56
56
|
// Check if installation succeeded
|
|
57
57
|
if (result && result.success) {
|
|
58
58
|
console.log(chalk.green('\n✨ Installation complete!'));
|
|
59
|
-
console.log(
|
|
60
|
-
chalk.cyan('BMAD Core and Selected Modules have been installed to:'),
|
|
61
|
-
chalk.bold(result.path || path.resolve(config.directory, 'bmad')),
|
|
62
|
-
);
|
|
59
|
+
console.log(chalk.cyan('BMAD Core and Selected Modules have been installed to:'), chalk.bold(result.path));
|
|
63
60
|
console.log(chalk.yellow('\nThank you for helping test the early release version of the new BMad Core and BMad Method!'));
|
|
64
61
|
console.log(chalk.cyan('Stable Beta coming soon - please read the full readme.md and linked documentation to get started!'));
|
|
65
62
|
process.exit(0);
|