Compare commits

...

252 Commits

Author SHA1 Message Date
Brian Madison
80a90c01d4 chore: bump version to alpha.14
- Updated CHANGELOG.md with comprehensive Alpha.14 release notes
- Added advanced builder features and custom installation improvements
- IDE configuration preservation during upgrades
- Breaking change: removed legacy agent-install command
2025-12-07 02:21:49 -06:00
Brian Madison
119187a1e7 custom module installer improved, and removed agent-install 2025-12-07 02:10:03 -06:00
Brian Madison
b252778043 custom inst imporove 2025-12-07 01:43:44 -06:00
Brian Madison
eacfba2e5b custom agents and workflows can now also be installed with a simple custom.yaml designation 2025-12-06 22:45:02 -06:00
Brian Madison
903c7a4133 remove hardcoded agent sidecar locations to fully use config option 2025-12-06 21:37:43 -06:00
Brian Madison
8c04ccf3f0 rename default folder location for agent_sidecar_folder installation location 2025-12-06 21:21:03 -06:00
Brian Madison
6d98864ec1 sidecar files retained on updates 2025-12-06 21:17:13 -06:00
Brian Madison
1697a45376 sidecar content goes to custom core config location 2025-12-06 21:08:57 -06:00
Brian Madison
ba2c81263b remove: all legacy file cleanup functionality
- Removed scanForLegacyFiles, performCleanup, and related methods from installer.js
- Removed --skip-cleanup option from install command
- Deleted cleanup.js command file entirely
- Simplified installation flow by removing cleanup prompts
- All tests passing after removal
2025-12-06 17:11:40 -06:00
Brian Madison
8d044f8c3e fix: prevent modules from showing as obsolete during reinstall
- Skip module selection prompt during update/reinstall
- Keep all existing installed modules by default
- This prevents inquirer from showing modules as 'obsolete items' with confusing delete options
- Modules are now preserved during update/reinstall operations
2025-12-06 16:56:09 -06:00
Brian Madison
74d071708d fix: nested agents now appear in CLI commands
- Fix getAgentsFromDir in bmad-artifacts.js to recursively scan subdirectories
- This ensures agents like cbt-coach and wellness-companion that are in subdirectories are properly found
- Agents now correctly get slash commands in .claude/commands/bmad/mwm/agents/
- All agents from the manifest now have corresponding IDE commands
2025-12-06 16:39:28 -06:00
Brian Madison
86e2daabba fix: ManifestGenerator now recursively scans for agents
- Updated getAgentsFromDir to search subdirectories for .md files
- Fixed installPath construction to include nested directory structure
- This ensures agents in subdirectories (like cbt-coach/cbt-coach.md) get added to agent-manifest.csv
- All agents now get proper CLI slash commands regardless of nesting depth
2025-12-06 16:31:32 -06:00
Brian Madison
aad7a71718 fix: ManifestGenerator now scans for all installed modules
- Previously only scanned selectedModules, missing modules installed from custom locations
- Now scans the bmad directory to find all actually installed modules
- Any module with agents/workflows/tasks/tools will be included in manifests
- This fixes issue where MWM workflows weren't getting slash commands
- All modules now get equal treatment in IDE integration
2025-12-06 16:16:48 -06:00
Brian Madison
f052967f65 fix: ModuleManager now creates customize.yaml files for agents
- Added logic to create customize template files during agent compilation
- ModuleManager was only using existing customize files, not creating them
- Now customize.yaml files will be created for all module agents
- This fixes issue where agents in subdirectories had no customization support

Next: Need to fix agent-manifest.csv to find agents in subdirectories
2025-12-06 16:02:07 -06:00
Brian Madison
1bd01e1ce6 feat: implement recursive agent discovery and compilation
- Module agents now discovered recursively at any depth in agents folder
- .agent.yaml files are compiled to .md format during module installation
- Custom agents also support subdirectory structure
- Agents maintain their directory structure when installed
- YAML files are skipped during file copying as they're compiled separately
- Added compileModuleAgents method to handle YAML-to-MD compilation
- Updated discoverAgents to recursively search for .agent.yaml files
- Agents in subdirectories are properly placed in _cfg/agents with relative paths

This fixes issue where agents like cbt-coach were not being compiled
and were only copied as YAML files.
2025-12-06 15:38:38 -06:00
Brian Madison
0d83799ecf refactor: simplify module discovery to scan entire project
- Module discovery now scans entire project recursively for install-config.yaml
- Removed hardcoded module locations (bmad-custom-src, etc.)
- Modules can exist anywhere with _module-installer/install-config.yaml
- All modules treated equally regardless of location
- No special UI handling for 'custom' modules
- Core module excluded from selection list (always installed first)
- Only install-config.yaml is valid (removed support for legacy config.yaml)

Modules are now discovered by structure, not location.
2025-12-06 15:28:37 -06:00
Brian Madison
7c5c97a914 atl rovo dev not in preferred list until fully tested 2025-12-06 14:25:29 -06:00
Brian Madison
7545bf9227 remove custom test content from src control 2025-12-06 12:53:43 -06:00
Brian Madison
228dfa28a5 installer updates working with basic flow 2025-12-06 12:53:43 -06:00
Alex Verkhovsky
e3f756488a feat(quality): add markdownlint-cli2 to quality checks (#1039)
- Add markdownlint-cli2 as dev dependency
- Add lint:md script to package.json
- Add markdownlint job to CI workflow
- Configure 5 rules: heading-increment, no-duplicate-heading,
  no-trailing-punctuation, no-bare-urls, no-space-in-emphasis
- Fix existing violations across 19 markdown files
- No auto-fix to prevent destructive changes

Closes #1034

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-06 12:40:07 -06:00
Alex Verkhovsky
d85090060b fix: read version from package.json instead of hardcoded fallback (#1041)
Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-06 12:39:39 -06:00
Alex Verkhovsky
a0442d4fb7 chore(cli): remove broken build caching (#1042)
The agent build caching never worked - BUILD-META comments were
never written to output files, so every build acted like --force.

Since building all 29 agents takes ~300ms, caching provided no
meaningful benefit. Removed ~190 lines of dead code including
checkIfNeedsRebuild, checkBuildStatus, buildMetadataComment,
and the --force flag.

Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-06 12:38:56 -06:00
Alex Verkhovsky
e979b47fe5 fix(workflows): remove hardcoded years from WebSearch queries (#1040)
* update 2024 to 2025

* fix(workflows): remove hardcoded years from WebSearch queries

Years in search queries (2024/2025) do not improve results - search
engines already prioritize current documentation. Tested all patterns
and confirmed identical quality results with/without years.

Removes years from:
- step-03-starter.md (5 queries)
- step-04-decisions.md (2 queries)
- game-architecture/instructions.md (2 queries)

Leaves file-utils.md unchanged (test fixture data, not a search query).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix(workflows): remove year placeholders from research WebSearch queries

Search engines return current results regardless of year - removes
{{current_year}} and hardcoded 2025 from step-05-technical-trends.md

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* refactor(workflows): replace {{current_year}} with semantic alternatives

Replaces year placeholder with context-appropriate wording:
- 'current data' for up-to-date information
- 'web searches' without year qualifier
- Updated failure mode to focus on using web searches

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix(workflows): clarify failure mode about stale training data

Rephrased to explicitly mention training data cutoff as the reason
to use web searches for current technology trends.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* refactor(workflows): make web search references platform-agnostic

- Remove hardcoded year references from WebSearch queries
- Replace `WebSearch` tool name with natural language "search the web"
- Soften "training data is stale" to "verify and supplement your knowledge"
- Add web search prerequisite check to research workflow
- Add platform-agnostic design note to CLAUDE.md

This framework targets 15+ agentic platforms, not just Claude Code.
Tool-specific syntax like `WebSearch:` won't work across all platforms.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor(research): clean up prompts and routing

---------

Co-authored-by: Pomazan Bohdan <pomazan.bogdan@gmail.com>
Co-authored-by: Brian <bmadcode@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-06 12:37:50 -06:00
Alex Verkhovsky
a6dffb4706 fix(installer): remove hardcoded 'bmad' prefix from files-manifest.csv paths (#1043)
The manifest writer hardcoded 'bmad' as the path prefix regardless of
the actual folder name (.bmad, bmad, etc). The reader had a matching
hardcoded strip, so it worked by accident.

Now paths are stored relative to bmadDir without any prefix. Legacy
fallback strips 'bmad/' on read - safe because no real path inside
bmadDir would start with 'bmad/'.

Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-06 12:36:17 -06:00
Hang
282bc27c7e feat(bmm): enhance PRD workflow with brownfield project support (#1047)
- Add three-branch conditional logic for document-based discovery:
  - PATH A: Has Product Brief (any project type)
  - PATH B: No Brief + Has Project Docs (brownfield)
  - PATH C: No Documents (greenfield from scratch)
- Add YAML frontmatter to all 12 PRD step files
- Add documentCounts to frontmatter for state tracking
- Fix step count (11 steps, not 10) and path typos
- Remove non-existent workflow references (story-context, validate-architecture)
- Update workflow chains and glossary definitions

Key insight: Branch based on DOCUMENT TYPE, not PROJECT TYPE.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-06 12:35:30 -06:00
Alex Verkhovsky
5ee1551b5b fix(bmm): remove stale validate-prd references (fixes #1030) (#1038)
- Remove validate-prd workflow references from all workflow path YAML files
- Update Excalidraw diagram: remove Validate PRD box and zombie JSON elements
- Re-export SVG at 1x scale
- Standardize implementation-readiness descriptions across all docs
- Add validation script (validate-svg-changes.sh) and README for SVG export process
- Correct Excalidraw timestamps

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-05 21:35:46 -06:00
Alex Verkhovsky
c95b65f462 fix(bmm): correct code-review workflow status logic and checklist (#1015) (#1028)
- Fix checklist to only accept 'review' status (not 'ready-for-review')
- Include MEDIUM issues in done/in-progress status determination
- Initialize and track fixed_count/action_count variables for summary
- Add sprint-status.yaml sync when story status changes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-05 21:27:11 -06:00
Nguyen Quang Huy
72ef9e9722 fix: use backticks for quoted phrase in code-review description (#1025)
Replace 'looks good' with `looks good` to avoid nested single quote
issues when IDEs generate command files from workflow YAML.

Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-05 21:26:04 -06:00
Paul Preibisch
8265bbf295 feat(installer): Enhanced TTS injection summary with tracking and documentation (#1037)
## Summary
- Track all files with TTS injection applied during installation
- Display informative summary explaining what TTS injection does
- Show backup location and restore command for recovery

## What is TTS Injection?
TTS (Text-to-Speech) injection adds voice instructions to BMAD agents,
enabling them to speak their responses aloud using AgentVibes.

Example: When you activate the PM agent, it will greet you with
spoken audio like "Hey! I'm your Project Manager. How can I help?"

## Changes
- **installer.js**: Track files in `processAgentFiles()`, `buildStandaloneAgents()`,
  and `rebuildAgentFiles()` when TTS markers are processed
- **compiler.js**: Add TTS injection support for custom agent compilation
- **ui.js**: Enhanced installation summary showing:
  - Explanation of what TTS injection is with example
  - List of all files with TTS injection applied (grouped by type)
  - Backup location (~/.bmad-tts-backups/)
  - Restore command for recovery

## Example Output
```
═══════════════════════════════════════════════════
            AgentVibes TTS Injection Summary
═══════════════════════════════════════════════════

What is TTS Injection?

  TTS (Text-to-Speech) injection adds voice instructions to BMAD agents,
  enabling them to speak their responses aloud using AgentVibes.

  Example: When you activate the PM agent, it will greet you with
  spoken audio like "Hey! I'm your Project Manager. How can I help?"

 TTS injection applied to 11 file(s):

  Party Mode (multi-agent conversations):
    • .bmad/core/workflows/party-mode/instructions.md
  Agent TTS (individual agent voices):
    • .bmad/bmm/agents/analyst.md
    • .bmad/bmm/agents/architect.md
    ...

Backups & Recovery:

  Pre-injection backups are stored in:
    ~/.bmad-tts-backups/

  To restore original files (removes TTS instructions):
    bmad-tts-injector.sh --restore /path/to/.bmad
```

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Paul Preibisch <paul@paulpreibisch.com>
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-05 18:54:03 -06:00
Murat K Ozcan
f99e192e74 fix: tea ci nvmrc (#1036) 2025-12-05 12:30:20 -06:00
Brian Madison
0b9290789e installer fixes 2025-12-03 22:44:13 -06:00
Brian Madison
aa1cf76f88 new workflow types generate slash commands 2025-12-03 21:36:24 -06:00
Alex Verkhovsky
b8b4b65c10 feat(discord): compact plain-text notifications with bug fixes (#1021)
- Fix esc() bracket expression (] must be first in POSIX regex)
- Fix delete job: inline helper to avoid checkout of deleted ref
- Fix issue notifications: attribute close/reopen to actor, not author
- Simplify trunc() comment (remove false Unicode-safe claim)
- Smart truncation with wall-of-text detection
- Escape markdown and @mentions for safe display

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-03 20:22:59 -06:00
Brian Madison
73db5538bf roo installer improovement 2025-12-03 19:56:23 -06:00
Philip Louw
41f9cc1913 feat: add kiro-cli installer with BMad Core compliance (#993)
- Implement KiroCliSetup class extending BaseIdeSetup
- Generate 21 agents from YAML sources with JSON configs and markdown prompts
- Add runtime resource loading and numbered menu formatting
- Include BMad Core validation for required agent fields
- Fix agent naming conventions to prevent double prefixes
- Add .kiro/ directory to gitignore

Follows BMad Method standards for IDE installer integration.

Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-03 12:17:02 -06:00
Alex Verkhovsky
686af5b0ee feat: add intelligent routing to quick-dev workflow (#1019)
Add escalation threshold and scale-adaptive routing to quick-dev:
- Simple requests get standard [t]/[e] choice
- Complex requests evaluated against project-levels.yaml
- Level 1-2 or uncertain → tech-spec recommended
- Level 3+ → BMad Method (workflow-init) recommended

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-03 12:14:36 -06:00
Dicky Moore
65658a499b Feat/sprint status command (#1012)
* feat: add sprint-status command

* minor changes to reduce the change radius

---------

Co-authored-by: mq-bot <mq-bot@local>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-12-03 12:00:34 -06:00
Alex Verkhovsky
d553a09f73 docs: create CODE_OF_CONDUCT.md (#1013)
* docs: create CODE_OF_CONDUCT.md

* chore: exclude CODE_OF_CONDUCT.md from Prettier

Third-party artifact should not be reformatted.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* docs: add Discord as enforcement contact channel

Uses permanent invite link. Discord is common practice for
open source project Code of Conduct enforcement.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-03 10:42:28 -06:00
Brian Madison
c79d081128 fix pm and architect agents menu items to load new step sharded workflows 2025-12-02 22:40:57 -06:00
Brian Madison
0b3964902a workflow builder has template LOD output options 2025-12-02 22:36:44 -06:00
Brian Madison
1e6fc4ba14 workflow creation update 2025-12-02 21:44:30 -06:00
Brian Madison
aa30ef3e79 convert create epics and stories and implementation readiness to the new workflow step format 2025-12-02 19:22:15 -06:00
Brian Madison
6365a63dff workflow builder understands how to build continuable workflows 2025-12-02 19:22:15 -06:00
Alex Verkhovsky
fe0817f590 fix(bmm): complete cleanup of epic-tech-context workflow removal (#1001)
- Remove references to deprecated epic-tech-context, story-context,
  validate-epic-tech-context, validate-story-context, and story-done workflows
- Simplify epic status: backlog → in-progress → done (was backlog → contexted)
- Update create-story to handle legacy 'contexted' status for backward compat
- Clean up sprint-planning instructions and status template
- Update docs: agents-guide, brownfield-guide, faq, glossary, quick-start

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-11-30 23:52:04 -06:00
Brian Madison
afd2a163bf chore: bump version to alpha.13 2025-11-30 23:23:08 -06:00
Brian Madison
9223174f40 remove legacy workflows from bmb that were upgraded to step sharded flows and prep .13 changelog 2025-11-30 23:18:01 -06:00
Brian Madison
47ad645f22 complience check of workflow fix 2025-11-30 22:47:28 -06:00
Brian Madison
788c746857 product brief compliance with documented workflow standards 2025-11-30 22:45:48 -06:00
Brian Madison
ad053a6508 create workflow validation check fixes 2025-11-30 21:51:46 -06:00
Brian Madison
4539ca7436 feat: implement granular step-file workflow architecture with multi-menu support
## Major Features Added
- **Step-file workflow architecture**: Transform monolithic workflows into granular step files for improved LLM adherence and consistency
- **Multi-menu handler system**: New `handler-multi.xml` enables grouped menu items with fuzzy matching
- **Workflow compliance checker**: Added automated compliance validation for all workflows
- **Create/edit agent workflows**: New structured workflows for agent creation and editing

## Workflow Enhancements
- **Create-workflow**: Expanded from 6 to 14 detailed steps covering tools, design, compliance
- **Granular step execution**: Each workflow step now has dedicated files for focused execution
- **New documentation**: Added CSV data standards, intent vs prescriptive spectrum, and common tools reference

## Complete Migration Status
- **4 workflows fully migrated**: `create-agent`, `edit-agent`, `create-workflow`, and `edit-workflow` now use the new granular step-file architecture
- **Legacy transformation**: `edit-workflow` includes built-in capability to transform legacy single-file workflows into the new improved granular format
- **Future cleanup**: Legacy versions will be removed in a future commit after validation

## Schema Updates
- **Multi-menu support**: Updated agent schema to support `triggers` array for grouped menu items
- **Legacy compatibility**: Maintains backward compatibility with single `trigger` field
- **Discussion enhancements**: Added conversational_knowledge recommendation for discussion agents

## File Structure Changes
- Added: `create-agent/`, `edit-agent/`, `edit-workflow/`, `workflow-compliance-check/` workflows
- Added: Documentation standards and CSV reference files
- Refactored: `create-workflow/steps/` with detailed granular step files

## Handler Improvements
- Enhanced `handler-exec.xml` with clearer execution instructions
- Improved data passing context for executed files
- Better error handling and user guidance

This architectural change significantly improves workflow execution consistency across all LLM models by breaking complex processes into manageable, focused steps. The edit-workflow transformation tool ensures smooth migration of existing workflows to the new format.
2025-11-30 15:09:23 -06:00
Brian Madison
829d051c91 move agent builder docs, create workflow builder docs, and a new workflow builder to conform to stepwise workflow creation 2025-11-29 23:23:35 -06:00
Brian Madison
a0732df56c more step sharded workflows added for architecture and some fixes across all workflows to improve their file loading and reduction of time based estimates. 2025-11-29 01:49:15 -06:00
Brian Madison
4e254d7c63 brainstorming, research and partymode updated to use sharded step flow workflows 2025-11-29 01:49:15 -06:00
Brian Madison
00e72e66f8 Initial stepwise converstion of the phase 1 and 2 workflows complete. 2025-11-29 01:49:15 -06:00
Brian Madison
5a11519dc1 converted ux design to sharded step workflow 2025-11-29 01:49:14 -06:00
Alex Verkhovsky
5ea02d7091 feat: add adversarial code review recommendation to quick-dev workflow (#989)
* feat: add adversarial code review recommendation to quick-dev workflow

* fix: clarify scope of code review with 'in it' reference
2025-11-27 23:38:54 -06:00
Alex Verkhovsky
7b21708868 feat: recommend different LLM for code review in dev-story (#984)
Co-authored-by: Brian <bmadcode@gmail.com>
2025-11-27 23:38:32 -06:00
Brian Madison
3c81d78991 the first reworked sharded workflow, prd, works great and resolves the issues with latest sonnet udpates 2025-11-27 22:33:03 -06:00
Brian Madison
dcaf02f665 Fix phase numbering throughout documentation
- Removed all references to Phase 0 (should be Documentation prerequisite)
- Updated phase transitions from 'Phase 3→4' to 'Phase 3 to Phase 4'
- Ensured all phases are numbered 1-4 consistently
- Documentation for brownfield projects is now correctly referred to as 'Documentation prerequisite' rather than Phase 0
2025-11-26 20:59:46 -06:00
Brian Madison
04b328bd2a Fix workflow documentation - remove non-existent workflows and Mermaid diagrams
- Updated workflows-implementation.md: removed validate workflows, epic-tech-context, story-context
- Updated workflows-analysis.md: removed brainstorm-game, game-brief, added domain-research
- Updated workflows-planning.md: removed gdd, narrative, moved create-epics-and-stories to Phase 3
- Updated workflows-solutioning.md: already correct with create-epics-and-stories in Phase 3
- Removed all Mermaid diagrams and replaced with text descriptions
- Updated quick reference tables to reflect actual workflows
- Fixed flow examples to match current implementation
2025-11-26 20:42:20 -06:00
Brian Madison
355ccebca2 workflow-status can call workflow init 2025-11-26 19:48:47 -06:00
Brian Madison
dfc35f35f8 BMad Agents menu items are logically ordered and marked with optional or recommended and some required tags 2025-11-26 18:22:24 -06:00
Brian Madison
677c000820 github uses agents folder now instead of chatmodes 2025-11-26 17:46:26 -06:00
Brian Madison
3ac539b61f npm vulnerabilities resolved 2025-11-26 17:07:09 -06:00
Brian Madison
331a67eeb3 installer allows cleanup of unneeded files in upgrades 2025-11-26 16:47:15 -06:00
Brian Madison
fbdb91b991 standard greenfield workflow updated diagrams 2025-11-26 15:14:34 -06:00
Jorge Castillo
54e6745a55 fix: update GitHub Copilot tools names for consistency (#880)
Copilot was triggering warning or errors in the chatmode files due to some changes in tool names.
- findTestFiles is internal tool, cannot be used.
- Other tools have change names.
- Added new tools: todos and runSubAgents.

Co-authored-by: Brian <bmadcode@gmail.com>
2025-11-26 14:49:17 -06:00
Serhii
f793cf8fcd fix: add radix parameter to parseInt() calls (#862)
Add explicit radix=10 to parseInt() calls and NaN validation to prevent
unexpected hex parsing and invalid config values.

Changes:
- Line 52: Add radix and NaN check in input validation
- Line 189-192: Add radix and NaN fallback for config parsing

Fixes potential issues:
- Hex input (0x10) now rejected instead of parsed as 16
- Invalid strings return default value instead of NaN→null

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-11-26 14:44:12 -06:00
fikri-kompanion
9223e2be21 fix: give kilocode tool access to bmad modes (#961)
Co-authored-by: Ahmad Fikrizaman <ahmadfikrizaman@gmail.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-11-26 13:48:16 -06:00
Brian Madison
2cac74cfb5 agent vibes injection and installer update 2025-11-26 11:00:46 -06:00
Paul Preibisch
5702195ef7 Add Text-to-Speech Integration via TTS_INJECTION System (#934)
* feat: Add provider-agnostic TTS integration via injection point system

Implements comprehensive Text-to-Speech integration for BMAD agents using a generic
TTS_INJECTION marker system. When AgentVibes (or any compatible TTS provider) is
installed, all BMAD agents can speak their responses with unique AI voices.

## Key Features

**Provider-Agnostic Architecture**
- Uses generic `TTS_INJECTION` markers instead of vendor-specific naming
- Future-proof for multiple TTS providers beyond AgentVibes
- Clean separation - BMAD stays TTS-agnostic, providers handle injection

**Installation Flow**
- BMAD → AgentVibes: TTS instructions injected when AgentVibes detects existing BMAD installation
- AgentVibes → BMAD: TTS instructions injected during BMAD installation when AgentVibes detected
- User must manually create voice assignment file when AgentVibes installs first (documented limitation)

**Party Mode Voice Support**
- Each agent speaks with unique assigned voice in multi-agent discussions
- PM, Architect, Developer, Analyst, UX Designer, etc. - all with distinct voices

**Zero Breaking Changes**
- Fully backward compatible - works without any TTS provider
- `TTS_INJECTION` markers are benign HTML comments if not processed
- No changes to existing agent behavior or non-TTS workflows

## Implementation Details

**Files Modified:**
- `tools/cli/installers/lib/core/installer.js` - TTS injection processing logic
- `tools/cli/lib/ui.js` - AgentVibes detection and installation prompts
- `tools/cli/commands/install.js` - Post-install guidance for AgentVibes setup
- `src/utility/models/fragments/activation-rules.xml` - TTS_INJECTION marker for agents
- `src/core/workflows/party-mode/instructions.md` - TTS_INJECTION marker for party mode

**Injection Point System:**
```xml
<rules>
  - ALWAYS communicate in {communication_language}
  <!-- TTS_INJECTION:agent-tts -->
  - Stay in character until exit selected
</rules>
```

When AgentVibes is detected, the installer replaces this marker with:
```
- When responding to user messages, speak your responses using TTS:
  Call: `.claude/hooks/bmad-speak.sh '{agent-id}' '{response-text}'` after each response
  IMPORTANT: Use single quotes - do NOT escape special characters like ! or $
```

**Special Character Handling:**
- Explicit guidance to use single quotes without escaping
- Prevents "backslash exclamation" artifacts in speech

**User Experience:**
```
User: "How should we architect this feature?"
Architect: [Text response] + 🔊 [Professional voice explains architecture]
```

Party Mode:
```
PM (John): "I'll focus on user value..." 🔊 [Male professional voice]
UX Designer (Sara): "From a user perspective..." 🔊 [Female voice]
Architect (Marcus): "The technical approach..." 🔊 [Male technical voice]
```

## Testing

**Unit Tests:**  62/62 passing
- 49/49 schema validation tests
- 13/13 installation component tests

**Integration Testing:**
-  BMAD → AgentVibes (automatic injection)
-  AgentVibes → BMAD (automatic injection)
-  No TTS provider (markers remain as comments)

## Documentation

Comprehensive testing guide created with:
- Both installation scenario walkthroughs
- Verification commands and expected outputs
- Troubleshooting guidance

## Known Limitations

**AgentVibes → BMAD Installation Order:**
When AgentVibes installs first, voice assignment file must be created manually:
```bash
mkdir -p .bmad/_cfg
cat > .bmad/_cfg/agent-voice-map.csv << 'EOF'
agent_id,voice_name
pm,en_US-ryan-high
architect,en_US-danny-low
dev,en_US-joe-medium
EOF
```

This limitation exists to prevent false legacy v4 detection warnings from BMAD installer.

**Recommended:** Install BMAD first, then AgentVibes for automatic voice assignment.

## Related Work

**Companion Implementation:**
- Repository: paulpreibisch/AgentVibes
- Commits: 6 commits implementing injection processing and voice routing
- Features: Retroactive injection, file path extraction, escape stripping

**GitHub Issues:**
- paulpreibisch/AgentVibes#36 - BMAD agent ID support

## Breaking Changes

None. Feature is opt-in and requires separate TTS provider installation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Enforce project hooks over global hooks in party mode

before, claude would sometimes favor global agent vibes hooks over project specific

* feat: Automate AgentVibes installer invocation after BMAD install

Instead of showing manual installation instructions, the installer now:
- Prompts "Press Enter to start AgentVibes installer..."
- Automatically runs npx agentvibes@latest install
- Handles errors gracefully with fallback instructions

This provides a seamless installation flow matching the test script's
interactive approach.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* docs: Add automated testing script and guide for PR #934

Added comprehensive testing tools for AgentVibes party mode integration:

- test-bmad-pr.sh: Fully automated installation and verification script
  - Interactive mode selection (official PR or custom fork)
  - Automatic BMAD CLI setup and linking
  - AgentVibes installation with guided prompts
  - Built-in verification checks for voice maps and hooks
  - Saved configuration for quick re-testing

- TESTING.md: Complete testing documentation
  - Quick start with one-line npx command
  - Manual installation alternative
  - Troubleshooting guide
  - Cleanup instructions

Testers can now run a single command to test the full AgentVibes integration
without needing to understand the complex setup process.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Add shell: true to npx execSync to prevent permission denied error

The execSync call for 'npx agentvibes@latest install' was failing with
'Permission denied' because the shell was trying to execute 'agentvibes@latest'
directly instead of passing it as an argument to npx.

Adding shell: true ensures the command runs in a proper shell context
where npx can correctly interpret the @latest version syntax.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Remove duplicate AgentVibes installation step from test script

The test script was calling AgentVibes installer twice:
1. BMAD installer now automatically runs AgentVibes (new feature)
2. Test script had a separate Step 6 that also ran AgentVibes

This caused the installer to run twice, with the second call failing
because it was already installed.

Changes:
- Removed redundant Step 6 (AgentVibes installation)
- Updated Step 5 to indicate it includes AgentVibes
- Updated step numbers from 7 to 6 throughout
- Added guidance that AgentVibes runs automatically

Now the flow is cleaner: BMAD installer handles everything!

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Address bmadcode review - preserve variables and move TTS logic to injection

Fixes requested changes from PR review:

1. Preserve {bmad_folder} variable placeholder
   - Changed: {project_root}/.bmad/core/tasks/workflow.xml
   - To: {project_root}/{bmad_folder}/core/tasks/workflow.xml
   - Allows users to choose custom BMAD folder names during installation

2. Move TTS-specific hook guidance to injection system
   - Removed hardcoded hook enforcement from source files
   - Added hook guidance to processTTSInjectionPoints() in installer.js
   - Now only appears when AgentVibes is installed (via TTS_INJECTION)

3. Maintain TTS-agnostic source architecture
   - Source files remain clean of TTS-specific instructions
   - TTS details injected at install-time only when needed
   - Preserves provider-agnostic design principle

Changes made:
- src/core/workflows/party-mode/instructions.md
  - Reverted .bmad to {bmad_folder} variable
  - Replaced hardcoded hook guidance with <!-- TTS_INJECTION:party-mode -->
  - Removed <note> about play-tts.sh hook location

- tools/cli/installers/lib/core/installer.js
  - Added hook enforcement to party-mode injection replacement
  - Guidance now injected only when enableAgentVibes is true

Addresses review comments from bmadcode:
- "needs to remain the variable. it will get set in the file at the install destination."
- "items like this we will need to inject if user is using claude and TTS"

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Change 'claude-code' to 'claude' in test script instructions

The correct command to start Claude is 'claude', not 'claude-code'.
Updated line 362-363 in test-bmad-pr.sh to show the correct command.

* fix: Remove npm link from test script to avoid global namespace pollution

- Removed 'npm link' command that was installing BMAD globally
- Changed 'bmad install' to direct node execution using local clone
- Updated success message to reflect no global installation

This keeps testing fully isolated and prevents conflicts with:
- Existing BMAD installations
- Future official BMAD installs
- Orphaned symlinks when test directory is deleted

The test script now runs completely self-contained without modifying
the user's global npm environment.

---------

Co-authored-by: Claude Code <claude@anthropic.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Paul Preibisch <paul@paulpreibisch.com>
Co-authored-by: Brian <bmadcode@gmail.com>
2025-11-26 09:51:57 -06:00
mreis-atlassian
11a1dbaefc feat: Adding support for Rovo Dev (#975)
- Adding support for rovo dev
- Adding rovo dev translation wrappers
2025-11-26 09:05:04 -06:00
Brian Madison
d6b98afd2b minor udpates to prd, architecture, and create epics and stories flows. 2025-11-26 00:28:49 -06:00
Brian Madison
24e952c511 updated code review 2025-11-25 16:59:00 -06:00
Brian Madison
3740a554f0 fix: optimize agent compiler and complete handler cleanup
- Add deployment-aware handler generation (filters web-only/ide-only commands)
- Remove unused run-workflow handler type (ghost handler cleanup)
- Implement missing validate-workflow and data handler generation
- Update schema validation to support exactly 6 active handler types
- Clean up activation templates and web bundler logic
- Prevent generation of unused handler instructions for better performance
- All 62 tests pass with backward compatibility maintained
2025-11-23 21:28:50 -06:00
Brian Madison
cd98a7f5bb feat: complete Phase 4 workflow transformation - simpler, faster, better results
MAJOR BREAKING CHANGES: Phase 4 completely reengineered for developer efficiency and quality

🚀 **Phase 4 Streamlined & Supercharged:**
- **Reduced from 11 to 5 essential workflows** (55% reduction in complexity)
- **Eliminated redundant steps** that created token waste and confusion
- **Created single source of truth** story files with comprehensive implementation context
- **Achieved more reliable results** with fewer steps and better developer guidance

💡 **Revolutionary Dev Agent Behavior Fixes:**
- **Story file is now LAW:** Tasks/subtasks sequence is absolutely binding
- **Red-green-refactor enforcement:** Tests written first, validated, then implementation
- **Zero tolerance for cheating:** Tests must ACTUALLY exist and pass before marking complete
- **Sequential execution only:** No more "doing whatever you want" - follow the story exactly
- **Continuous execution:** No premature pausing until all tasks complete

🎯 **Quality Competition System:**
- **Enhanced story context engine** prevents common LLM development mistakes
- **Quality competition between LLMs** ensures optimal story preparation
- **Comprehensive anti-pattern prevention** stops wheel reinvention and wrong approaches
- **Developer optimization focus** for maximum clarity with minimum verbosity

📋 **Enhanced Definition of Done:**
- **27-point validation checklist** covers all implementation aspects
- **Multiple validation gates** prevent claiming work that isn't actually done
- **Comprehensive test requirements** ensure no functionality goes untested
- **File tracking and documentation** for complete project visibility

🔧 **Technical Improvements:**
- **Variable consistency** throughout all workflow files
- **XML instruction format** for better workflow engine compatibility
- **Proper ask tag handling** for user interaction clarity
- **Project context integration** without blocking implementation
- **Fixed all agent schema compliance** for proper array formatting

**Result:** Phase 4 now delivers superior development outcomes with:
-  **55% fewer workflows** to learn and maintain
-  **Dramatically reduced token usage** and context switching
-  **Eliminated dev agent behavioral issues** that caused quality problems
-  **Faster time-to-completion** with more reliable, predictable results
-  **Better developer experience** with clearer guidance and validation

This represents the most significant Phase 4 improvement since BMAD Method inception - fundamentally fixing developer workflow quality while drastically simplifying the implementation process.
2025-11-23 16:43:04 -06:00
Brian Madison
4308b36d4d feat: add custom agents and quick-flow workflows, remove tech-spec track
Major Changes:
- Add sample custom agents demonstrating installable agent system
  - commit-poet: Generates semantic commit messages (BMAD Method repo sample)
  - toolsmith: Development tooling expert with knowledge base covering bundlers, deployment, docs, installers, modules, and tests (BMAD Method repo sample)
  - Both agents demonstrate custom agent architecture and are installable to projects via BMAD installer system
  - Include comprehensive installation guides and sidecar knowledge bases

- Add bmad-quick-flow methodology for rapid development
  - create-tech-spec: Direct technical specification workflow
  - quick-dev: Flexible execution workflow supporting both tech-spec-driven and direct instruction development
  - quick-flow-solo-dev (Barry): 1 man show agent specialized in bmad-quick-flow methodology
  - Comprehensive documentation for quick-flow approach and solo development

- Remove deprecated tech-spec workflow track
  - Delete entire tech-spec workflow directory and templates
  - Remove quick-spec-flow.md documentation (replaced by quick-flow docs)
  - Clean up unused epic and story templates

- Fix custom agent installation across IDE installers
  - Repair antigravity and multiple IDE installers to properly support custom agents
  - Enable custom agent installation via quick installer, agent installer, regular installer, and special agent installer
  - All installation methods now accessible via npx with full documentation

Infrastructure:
- Update BMM module configurations and team setups
- Modify workflow status paths to support quick-flow integration
- Reorganize documentation with new agent and workflow guides
- Add custom/ directory for user customizations
- Update platform codes and installer configurations
2025-11-23 08:51:26 -06:00
Brian Madison
6907d44810 fix: display proper persona names in custom agent manifests
## Problem
Custom agents showed generic names (like "Commit Poet") instead of their
actual persona names (like "Inkwell Von Comitizen") in the agent manifest.

## Root Cause
The extractManifestData function was using metadata.name/title instead of
extracting the persona name from the compiled agent XML.

## Solution
1. Added extractAgentAttribute function to pull attributes from <agent> tag
2. Prioritize XML extraction over metadata for persona info:
   - displayName: uses agent title attribute from XML
   - title: uses agent title attribute from XML
   - icon: uses agent icon attribute from XML
   - Falls back to metadata if XML extraction fails

## Result
Custom agents now display their actual persona names in manifests:
- Before: "Commit Poet"
- After: "Inkwell Von Comitizen"

This provides better user experience with proper agent identification
in IDE integrations and manifests.
2025-11-23 08:51:26 -06:00
Brian Madison
efc2b6d0df feat: complete custom agent support for ALL remaining IDEs
## Added installCustomAgentLauncher to remaining IDEs:

 Qwen (.qwen/commands/BMad/)
- TOML format with proper description and prompt fields
- Uses existing processAgentLauncherContent method
- Format: custom-{agent-name}.toml

 Trae (.trae/rules/)
- Markdown format with bmad-agent-custom- prefix
- Follows existing BMAD naming pattern
- Format: bmad-agent-custom-{agent-name}.md

 Roo (.roomodes)
- YAML format appends to existing customModes section
- Creates customModes section if missing
- Format: bmad-custom-{agent-name} (slug-based)

 Kilo (.kilocodemodes)
- YAML format identical to Roo pattern
- Handles existing customModes gracefully
- Format: bmad-custom-{agent-name} (slug-based)

 Auggie (.augment/commands/bmad/)
- Frontmatter + Markdown format
- Follows existing Auggie command pattern
- Format: custom-{agent-name}.md

## Complete IDE Coverage:
ALL IDEs now support custom agent installation:
- 16 total IDEs with custom agent support
- Various formats: TOML, YAML, Markdown, file-based
- All include @agentPath references and usage instructions
- Proper IDE-specific naming and directory structures

Custom agents from .bmad/custom/src/agents/ now install to EVERY configured IDE!
2025-11-23 08:51:25 -06:00
Brian Madison
98342f2174 feat: add custom agent support to more IDEs
## Added installCustomAgentLauncher function to:

 Cline (.clinerules/workflows/)
- Creates workflow files with custom agent launchers
- Format: bmad-custom-{agent-name}.md

 Crush (.crush/commands/bmad/)
- Creates command files with custom agent launchers
- Format: custom-{agent-name}.md

 Gemini (.gemini/commands/)
- Creates TOML command files with custom agent launchers
- Format: bmad-custom-{agent-name}.toml

 iFlow (.iflow/commands/bmad/)
- Creates command files with custom agent launchers
- Format: custom-{agent-name}.md

## All Custom Agent Launchers Include:
- @agentPath reference to load complete agent
- Usage instructions for loading first, then activating
- Proper IDE-specific formatting and file structure
- Return values for tracking installations

Now custom agents install to 8+ IDEs instead of just 4!
2025-11-23 08:51:25 -06:00
Brian Madison
2edadd11ae fix: add custom agent support to Antigravity IDE
## Problem
Custom agents were only installing to Claude Code (.claude/commands/)
but not to Antigravity (.agent/) or other IDEs that lack installCustomAgentLauncher function.

## Root Cause
Antigravity was missing the installCustomAgentLauncher function that the
IdeManager calls to install custom agents during agent installation.

## Solution
Added installCustomAgentLauncher function to Antigravity that:
- Creates .agent directory if needed
- Generates custom agent launchers with @agentPath references
- Uses same pattern as existing Antigravity agent launchers
- Returns proper installation result for tracking

## Result
Custom agents now install to:
- Claude Code: .claude/commands/bmad/custom/agents/ 
- Antigravity: .agent/bmad-custom-agents-{agentName}.md 
- Codex: (already working) 

All configured IDEs now receive custom agent installations!
2025-11-23 08:51:25 -06:00
Brian Madison
0aeaa5b2ea fix: compile agents now checks multiple source locations
## Problem
Compile Agents ignored custom agents in source locations like:
- {project-root}/custom/src/agents/
- {bmad-folder}/custom/src/agents/

## Solution
Update reinstallCustomAgents to check all locations:
1. _cfg/custom/agents/ (backup location)
2. {bmad-folder}/custom/src/agents/ (source in BMAD folder)
3. {project-root}/custom/src/agents/ (source at project root)

## Changes
- Search multiple locations for agents during compile
- Avoid duplicate processing with Set tracking
- Auto-backup source YAML to _cfg/custom/agents/ if needed
- Works with any custom bmad_folder name from config

Now 'Compile Agents' works with agents in any source location!
2025-11-23 08:51:25 -06:00
Brian Madison
b20773e7f7 docs: remove fluff from installation guide
- Remove verbose explanations and marketing language
- Keep only essential commands and process steps
- Reduce from verbose guide to concise reference
- Focus on what users need to know, not explanations
2025-11-23 08:51:25 -06:00
Brian Madison
c57ada4d9c feat: improve agent creation workflow and documentation
## BMB Agent Workflow Improvements
- Always create folders for agents (even simple ones)
- Add compact info-and-installation-guide.md (20 lines max)
- Include installation guide with every created agent
- Update workflow to use standalone_output_folder structure

## Documentation Updates
- Clarify --defaults makes installation non-interactive
- Update all parameter documentation for clarity
- Fix npm package references (bmad-method only)

## New Agent Structure
Every agent now gets:
  agent-folder/
  ├── agent-name.agent.yaml    # Source YAML
  └── info-and-installation-guide.md  # Quick install guide + description

## Quick Install Commands (added to guide)
- Interactive: npx bmad-method agent-install --source ./agent.yaml
- Non-interactive: npx bmad-method agent-install --source ./agent.yaml --defaults

This makes agent installation much more user-friendly and consistent.
2025-11-23 08:51:25 -06:00
Brian Madison
05cbc6ccb8 feat: rename agent-install parameters for clarity
- Change --path → --source (much clearer purpose)
- Change --target → --destination (more intuitive)
- Update all code references and documentation
- Add advanced parameter examples to installation guide
- Keep short aliases: -s for --source, -t for --destination

Parameters are now much more self-explanatory:
- --source: where to find the agent YAML
- --destination: where to install the compiled agent
2025-11-23 08:51:25 -06:00
Brian Madison
905f9ca346 docs: fix incorrect npm package references
- Fix npx bmad → npx bmad-method in documentation
- Only bmad-method is registered in npm registry, not bmad
- Clarify that bmad command works locally when BMAD is installed
- Update installation guides to use correct package name

Ensures users don't get 'package not found' errors when trying npx bmad
2025-11-23 08:51:25 -06:00
Brian Madison
90af352247 docs: update installation guide with npx support
- Add npx bmad-method agent-install option for users without cloned repo
- Show both local and npx commands side by side
- Clarify when to use each installation option
- Update automatic updates section with npx option
- Add prominent note about npx capability

Users can now install custom agents without needing to clone the BMAD repository.
2025-11-23 08:51:25 -06:00
Brian Madison
13b1fc7517 fix: remove remaining webskip keys from presentation-master.agent.yaml
All menu items now conform to agent schema validation.
2025-11-23 08:51:25 -06:00
Murat K Ozcan
9d510fc075 docs: playwright untils note in test-architecture.md (#957)
Co-authored-by: Murat Ozcan <murat@Murats-MacBook-Pro.local>
2025-11-21 09:19:22 -06:00
Murat K Ozcan
00b541f5d4 feat: playwright-utils integration (#954)
* feat: playwright-utils integration

* removed the temp plan file, and addressed changelog

* feat: edited the installer question for pw-utils

* feat: even more n00b friendly install prompt

* Update README.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/bmm/_module-installer/install-config.yaml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-20 17:34:08 -06:00
Murat K Ozcan
55fd621664 fix: enabled web bundles for test and dev (#948)
* fix: enabled web bundles for test and dev

* fix: only bundle non webskip agents

* fix: addressed pr comments

* fix: addressed pr comments

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-20 13:44:48 -06:00
Alex Verkhovsky
da00b295a9 fix: remove .agent from gitignore for Antigravity workflow access (#953)
Antigravity respects .gitignore rules which blocks access to workflow files
in .agent/workflows/, preventing custom workflows from being discovered.
Removing .agent from gitignore to allow Antigravity to scan workflow files.

Note: Codex and Claude Code ignore .gitignore when scanning for custom
prompts, so this only affects Antigravity users.
2025-11-20 12:33:14 -06:00
Brian Madison
a6f089cfd2 feat: add empty IDE selection warning and promote Antigravity to recommended
- Add persistent warning loop when no tools selected in installer
- Users must press spacebar to select, not just highlight
- Red warning explains the issue and offers to go back
- Only way to proceed without tools is explicit "No" confirmation
- Promote Google Antigravity to preferred/recommended IDE section
2025-11-19 22:12:45 -06:00
Alex Verkhovsky
09533e4abb Chore/update gitignore (#945)
* feat: Add Google Antigravity IDE installer

Implements installer for Google Antigravity IDE with flattened slash command
naming to match Antigravity's namespace requirements.

Key features:
- Flattened file naming (bmad-module-agents-name.md) for proper slash commands
- Subagent installation support (project-level or user-level)
- Module-specific injection configuration
- Agent, workflow, task, and tool command generation

Implementation:
- Added AntigravitySetup class extending BaseIdeSetup
- Extracted flattenFilename() to BaseIdeSetup for reuse across IDE handlers
- Uses .agent/workflows directory structure
- Supports both interactive and non-interactive configuration

Fixes:
- Proper namespace isolation: /bmad-module-agents-dev instead of /dev
- Prevents conflicts between modules with same agent names

Note: This installer shares 95% of its code with claude-code.js.
Future refactoring could extract common patterns to IdeWithSlashCommandsSetup
base class (see design documents for details).

* chore: update gitignore for antigravity installer

---------

Co-authored-by: Brian <bmadcode@gmail.com>
2025-11-19 20:41:08 -06:00
Dicky Moore
d7f045b11e Align UX design workflow references (#935)
Co-authored-by: Brian <bmadcode@gmail.com>
2025-11-19 20:40:07 -06:00
Alex Verkhovsky
e8e13a9aa3 feat: default installer username to system user (#939)
good idea here, thank you!
2025-11-19 20:36:54 -06:00
Brian Madison
be04d687dc chore: bump version to 6.0.0-alpha.12 and add yaml dependency
- Add missing yaml package dependency to fix MODULE_NOT_FOUND error
- Update CHANGELOG.md with alpha.12 release notes
2025-11-19 00:36:31 -06:00
Brian Madison
047dfc1462 chore: bump version to 6.0.0-alpha.11 2025-11-18 23:17:01 -06:00
Brian Madison
ece3eefd13 docs: Update CHANGELOG and README for v6.0.0-alpha.11 release
- Comprehensive alpha.11 changelog capturing all major features
- Condensed earlier alpha releases (0-10) to 5 key bullets each
- Reduced changelog from 1,744 to 609 lines for better readability
- Updated README status badges and installation instructions
2025-11-18 23:16:23 -06:00
Brian Madison
f17e4ef0b7 refactor(bmm,cis,core): Align diagram workflows with agile roles and distribute capabilities
## The Tale of the Frame Expert

Once upon a time, BMad Method had a specialized agent called Frame Expert.
This agent was the master of all visual artifacts - flowcharts, diagrams,
wireframes, data flows. Whenever anyone needed a diagram, they called upon
Frame Expert. The agent lived in its own isolated domain with four dedicated
workflows and a library of shared templates.

## The Awakening

But something felt wrong. Teams using BMad Method were meant to mirror real
agile teams - Product Managers, Architects, UX Designers, Tech Writers,
Developers. Each agent represented an authentic role you'd find in any
software team.

Except Frame Expert.

No real agile team has a "Frame Expert" or "Diagram Specialist" who creates
all visual artifacts. In real teams, Architects diagram system architecture.
PMs flowchart processes. UX Designers wireframe interfaces. Tech Writers
create documentation diagrams. The visuals emerge from the domain experts
who need them, not from a centralized diagram factory.

Frame Expert was an abstraction that made technical sense but violated the
very soul of BMad Method - authentic agile role modeling.

## The Transformation

And so Frame Expert was dissolved, its knowledge distributed to those who
truly needed it:

**The Architect** inherited system architecture diagrams and data flows -
the blueprints of technical systems they design.

**The Product Manager** received process flowcharts - the visual maps of
features and workflows they orchestrate.

**The UX Designer** claimed wireframes - the interface sketches that bring
their vision to life.

**The Tech Writer** gained all diagram types - the visual aids that clarify
their documentation.

Each agent now creates diagrams in their domain, using their expertise,
serving their purpose.

## The Shared Knowledge

But the wisdom of diagram creation itself - the Excalidraw templates, the
component libraries, the validation patterns - this knowledge was too
valuable to scatter. It was elevated to core resources, where both BMM
agents AND the new CIS presentation-master agent could draw upon it.

Shared infrastructure for common needs. Distributed execution for domain
expertise.

## The Ripple Effects

With diagrams now properly distributed, other misalignments became visible:

Epic creation was happening in Phase 2 (Planning), before Architecture
existed. But epics need architectural context - API contracts, data models,
technical decisions. So epic creation migrated to Phase 3 (Solutioning),
after Architecture provides that foundation.

Workflow paths were updated. Documentation gained visual flowcharts showing
the complete journey. Agent naming standards were clarified - filenames are
stable roles, persona names are user dreams.

## What Changed

**Removed:**
- frame-expert.agent.yaml (the centralized specialist)
- All frame-expert workflows and shared resources
- Phase 2 epic creation workflow (wrong timing)
- game-design workflow path (consolidated to method track)
- v6-open-items.md (planning doc, now complete)

**Distributed Diagram Capabilities:**
- Architect: create-excalidraw-diagram, create-excalidraw-dataflow
- PM: create-excalidraw-flowchart
- Tech Writer: create-excalidraw-{diagram,dataflow,flowchart}, generate-mermaid
- UX Designer: create-excalidraw-wireframe

**Created:**
- src/core/resources/ (shared diagram context for all modules)
- src/modules/cis/agents/presentation-master.agent.yaml (visual comms specialist)
- src/modules/bmm/workflows/3-solutioning/create-epics-and-stories/ (epic creation's new home)
- src/modules/bmm/workflows/diagrams/ (distributed diagram implementations)
- src/modules/bmm/docs/images/ (workflow visualization assets)

**Enhanced:**
- All agent definitions with domain-appropriate diagram workflows
- Documentation with embedded workflow diagrams and visual guides
- Agent compilation docs with critical naming convention rules
- All 4 workflow paths (enterprise/method × brownfield/greenfield)

**Fixed:**
- Epic creation now in Phase 3 after Architecture
- Story context path variables in BMGD module
- PRD workflow descriptions (epics moved to Phase 3)

## For Users

The Frame Expert commands are gone. In their place:

- Need architecture diagrams? Ask `/architect`
- Need process flows? Ask `/pm`
- Need wireframes? Ask `/ux-designer`
- Need documentation visuals? Ask `/tech-writer`

Each expert creates diagrams in their domain, with their context, using
their judgment.

This is how real teams work.
2025-11-18 21:55:47 -06:00
Brian Madison
224af173ef feat: Comprehensive edit-agent workflow enhancement with Expert agent support and unified validation
## Overview
Major enhancement to edit-agent workflow to match create-agent quality standards, plus critical addition of Expert agent sidecar file support and consolidation of validation checklists into single source of truth.

## 1. edit-agent Workflow Comprehensive Enhancement

### Documentation Reference Updates (workflow.yaml)
**Fixed all broken references** - replaced deleted docs with new comprehensive guides:
-  Removed: agent-types.md, agent-architecture.md, agent-command-patterns.md, communication-styles.md
-  Added structured references:
  * Core Concepts: understanding_agent_types, agent_compilation
  * Architecture Guides: simple_architecture, expert_architecture, module_architecture
  * Design Patterns: menu_patterns, communication_presets, brainstorm_context
  * Reference Agents: commit-poet, journal-keeper, module examples, BMM agents

### Critical Persona Field Guidance Added (instructions.md +59 lines)
**The #1 issue in legacy agents** - comprehensive guidance on persona field separation:

- Explains how LLMs interpret each field:
  * role → "What knowledge/skills/capabilities do I possess?"
  * identity → "What background/experience/context shapes my responses?"
  * communication_style → "What verbal patterns/word choice do I use?"
  * principles → "What beliefs/philosophy drive my choices?"

- BEFORE/AFTER examples showing common mistakes
- Red flag word detection guide (ensures, experienced, believes in, etc.)
- Pure communication style examples from reference agents

### Enhanced Step 1: Analysis (instructions.md +57 lines)
- References all new comprehensive documentation
- **CRITICAL: Persona field separation analysis**
  * Checks for behaviors/role/identity mixed into communication_style
  * Compares against communication_presets for purity
  * Compares against reference agents for quality
- Warm, conversational feedback explaining issues found

### Massive Step 3 Enhancement: Communication Style Refinement (+122 lines)
**7-step prescriptive pattern for fixing the #1 quality issue:**

1. Diagnose Current Communication Style - red flag word detection
2. Extract Non-Style Content - working copy methodology
3. Discover TRUE Communication Style - interview questions + preset exploration
4. Craft Pure Communication Style - good/bad examples from references
5. Show Before/After With Full Context - complete transformation
6. Validate Against Standards - zero red flags, compare to presets/references
7. Confirm With User - explain changes, read dramatically, refine

Examples from actual reference agents:
- "Treats analysis like a treasure hunt - excited by every clue" (Mary/analyst)
- "Ultra-succinct. Speaks in file paths and AC IDs" (Amelia/dev)
- "Poetic drama and flair with every turn of a phrase" (commit-poet)

### Legacy Type Migration Pattern (+42 lines)
**Comprehensive guide for full/hybrid/standalone → Simple/Expert/Module migration:**

- Clear explanations of modern types (architecture, NOT capability)
- Migration patterns with decision tree
- Structural conversion guides (Simple ↔ Expert)
- Module = design intent clarification

### Enhanced Validation (Step 4)
- Persona field separation validation emphasized
- Updated success message with all quality standards
- Comprehensive checklist validation

### Complete README Documentation (200 lines created)
- Purpose emphasizing persona field separation as #1 issue
- 14 common editing scenarios (persona separation listed FIRST)
- Complete doc reference listing by category
- Dedicated "Critical: Persona Field Separation" section
- Red flag words guide
- 3 detailed usage scenarios
- Quality standards checklist

## 2. Expert Agent Sidecar File Support (NEW)

### Step 1: Smart Path Detection and Loading (+35 lines)
**Automatically detects and loads based on path type:**

```yaml
If path is .agent.yaml → Simple Agent (load single file)
If path is folder → Expert Agent:
  - Load .agent.yaml from inside folder
  - Load ALL sidecar files (*.md, *.txt, *.csv, *.json, *.yaml)
  - Create inventory for reference
  - Present: "Loaded agent.yaml + 5 sidecar files: [list]"
```

**Sidecar analysis:**
- Maps which menu items reference which sidecar files (tmpl="path", data="path")
- Checks if all sidecar references actually exist
- Identifies unused/orphaned sidecar files
- Assesses sidecar organization

**Warm expert agent feedback:**
"This is beautifully organized as an Expert agent! The sidecar files include 3 journal templates (daily, weekly, breakthrough) and a mood-patterns knowledge file. Your menu items reference them nicely. I do notice 'old-template.md' isn't referenced anywhere - we could clean that up."

### Step 3: Sidecar Editing Patterns (+47 lines)
**5 complete sidecar editing scenarios:**

1. **Updating templates** - Edit content, verify references work, test variables
2. **Adding new sidecar files** - Create file + add menu item with reference
3. **Removing unused sidecar files** - Confirm unused, ask to delete, clean references
4. **Reorganizing sidecar structure** - Move files, update ALL YAML references
5. **Updating knowledge base files** - Edit .csv/.json/.yaml data directly

**Critical mindset:** "Sidecar files are as much a part of the agent as the YAML!"

### Step 4: Sidecar Validation (+16 lines)
**Conversational validation:**
- "Your menu item 'daily-journal' references 'templates/daily.md'... checking... ✓ exists!"
- Check for orphaned files not referenced anywhere
- Verify sidecar file formats (YAML parses, CSV has headers, markdown well-formed)
- Success message: "✓ All sidecar file references valid - 5 sidecar files, all referenced correctly!"

### README Updates
- "What You'll Need" distinguishes Simple vs Expert paths
- Scenario 2b: Complete Expert agent editing example (journal-keeper template update)
- Updated common scenarios list

## 3. Unified Validation Checklist (Single Source of Truth)

### Problem Solved
- create-agent had outdated checklist (62 lines, no persona field separation)
- edit-agent had enhanced checklist (112 lines, with our improvements)
- Risk of drift and inconsistency between workflows

### Solution: agent-validation-checklist.md (160 lines)
**Canonical location:** `/src/modules/bmb/workflows/create-agent/`

**Comprehensive coverage combining best of both:**
- YAML structure validation
- **Persona field separation** (field separation check, purity check, quality benchmarking)
- Menu validation (including sidecar file path validation)
- Type-specific validation (Simple/Expert/Module)
- Compilation validation
- Common issues and fixes section

**Key sections:**
- Persona Validation (CRITICAL - #1 Quality Issue)
  * Field Separation Check (what belongs where)
  * Communication Style Purity Check (red flag word detection)
  * Quality Benchmarking (compare to presets and references)
- Expert Agent validation (9 sidecar-specific checks)
- Module Agent validation (design intent verification)
- Common Issues and Fixes (real examples with solutions)

### References Updated
**create-agent/workflow.yaml:**
```yaml
validation: "{installed_path}/agent-validation-checklist.md"
```

**edit-agent/workflow.yaml:**
```yaml
# Shared validation checklist (canonical location in create-agent folder)
validation: "{project-root}/{bmad_folder}/bmb/workflows/create-agent/agent-validation-checklist.md"
```

**edit-agent/instructions.md:**
```xml
<note>The validation checklist is shared between create-agent and edit-agent workflows to ensure consistent quality standards.</note>
```

### Files Changed
-  Created: agent-validation-checklist.md (160 lines)
-  Deleted: create-agent/checklist.md (62 lines)
-  Deleted: edit-agent/checklist.md (112 lines)
- Updated: Both workflow.yaml files to reference unified checklist

## Statistics

**Overall changes:** 6 files changed, +553 insertions, -264 deletions

**edit-agent enhancements:**
- instructions.md: +396 lines (comprehensive guidance)
- README.md: +213 lines (complete documentation)
- workflow.yaml: +32 lines (proper doc references)

**Validation unification:**
- Net result: Better quality, less duplication, easier maintenance
- Single source of truth for all agent validation

## Impact

### For Users Editing Agents
- Automatically detects and handles Expert agents with sidecar files
- Clear guidance on fixing #1 issue (persona field separation)
- 7-step prescriptive pattern for communication style refinement
- Warm, educational feedback throughout
- Validates against same standards as create-agent

### For Agent Quality
- Both create and edit workflows use same validation standards
- Persona field separation gets proper attention
- Expert agent sidecar files treated as first-class citizens
- Legacy agents can be migrated to modern standards
- All agents validated against reference implementations

### For Maintenance
- ONE checklist to maintain instead of two
- Consistent quality standards across workflows
- Documentation properly linked to new comprehensive guides
- No risk of checklist drift

This brings edit-agent to the same quality level as create-agent while adding critical Expert agent support and establishing single source of truth for validation.
2025-11-18 21:55:47 -06:00
Brian Madison
054b031c1d feat: Complete BMAD agent creation system with install tooling, references, and field guidance
## Overview
This commit represents a complete overhaul of the BMAD agent creation system, establishing clear standards for agent development, installation workflows, and persona design. The changes span documentation, tooling, reference implementations, and field-specific guidance.

## Key Components

### 1. Agent Installation Infrastructure
**New CLI Command: `agent-install`**
- Interactive agent installation with persona customization
- Supports Simple (single YAML), Expert (sidecar files), and Module agents
- Template variable processing with Handlebars-style syntax
- Automatic compilation from YAML to XML (.md) format
- Manifest tracking and IDE integration (Claude Code, Cursor, Windsurf, etc.)
- Source preservation in `_cfg/custom/agents/` for reinstallation

**Files Created:**
- `tools/cli/commands/agent-install.js` - Main CLI command
- `tools/cli/lib/agent/compiler.js` - YAML to XML compilation engine
- `tools/cli/lib/agent/installer.js` - Installation orchestration
- `tools/cli/lib/agent/template-engine.js` - Handlebars template processing

**Compiler Features:**
- Auto-injects frontmatter, activation, handlers, help/exit menu items
- Smart handler inclusion (only includes action/workflow/exec/tmpl handlers actually used)
- Proper XML escaping and formatting
- Persona name customization (e.g., "Fred the Commit Poet")

### 2. Documentation Overhaul
**Deleted Bloated/Outdated Docs (2,651 lines removed):**
- Old verbose architecture docs
- Redundant pattern files
- Outdated workflow guides

**Created Focused, Type-Specific Docs:**
- `src/modules/bmb/docs/understanding-agent-types.md` - Architecture vs capability distinction
- `src/modules/bmb/docs/simple-agent-architecture.md` - Self-contained agents
- `src/modules/bmb/docs/expert-agent-architecture.md` - Agents with sidecar files
- `src/modules/bmb/docs/module-agent-architecture.md` - Workflow-integrated agents
- `src/modules/bmb/docs/agent-compilation.md` - YAML → XML process
- `src/modules/bmb/docs/agent-menu-patterns.md` - Menu design patterns
- `src/modules/bmb/docs/index.md` - Documentation hub

**Net Result:** ~1,930 line reduction while adding MORE value through focused content

### 3. Create-Agent Workflow Enhancements
**Critical Persona Field Guidance Added to Step 4:**
Explains how the LLM interprets each persona field when the agent activates:

- **role** → "What knowledge, skills, and capabilities do I possess?"
- **identity** → "What background, experience, and context shape my responses?"
- **communication_style** → "What verbal patterns, word choice, quirks, and phrasing do I use?"
- **principles** → "What beliefs and operating philosophy drive my choices?"

**Key Insight:** `communication_style` should ONLY describe HOW the agent talks, not restate role/identity/principles. The `communication-presets.csv` provides 60 pure communication styles with NO role/identity/principles mixed in.

**Files Updated:**
- `src/modules/bmb/workflows/create-agent/instructions.md` - Added persona field interpretation guide
- `src/modules/bmb/workflows/create-agent/brainstorm-context.md` - Refined to 137 lines
- `src/modules/bmb/workflows/create-agent/communication-presets.csv` - 60 styles across 13 categories

### 4. Reference Agent Cleanup
**Removed install_config Personality Bloat:**
Understanding: Future installer will handle personality customization, so stripped all personality toggles from reference agents.

**commit-poet.agent.yaml** (Simple Agent):
- BEFORE: 36 personality combinations (3 enthusiasm × 3 depths × 4 styles) = decision fatigue
- AFTER: Single concise persona with pure communication style
- Changed from verbose conditionals to: "Poetic drama and flair with every turn of a phrase. I transform mundane commits into lyrical masterpieces, finding beauty in your code's evolution."
- Reduction: 248 lines → 153 lines (38% reduction)

**journal-keeper.agent.yaml** (Expert Agent):
- Stripped install_config, simplified communication_style
- Shows proper Expert agent structure with sidecar files

**security-engineer.agent.yaml & trend-analyst.agent.yaml** (Module Agents):
- Added header comments explaining WHY Module Agent (design intent, not just location)
- Clarified: Module agents are designed FOR ecosystem integration, not capability-limited

**Files Updated:**
- `src/modules/bmb/reference/agents/simple-examples/commit-poet.agent.yaml`
- `src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml`
- `src/modules/bmb/reference/agents/module-examples/security-engineer.agent.yaml`
- `src/modules/bmb/reference/agents/module-examples/trend-analyst.agent.yaml`

### 5. BMM Agent Voice Enhancement
**Gave all 9 BMM agents distinct, memorable communication voices:**

**Mary (analyst)** - The favorite! Changed from generic "systematic and probing" to:
"Treats analysis like a treasure hunt - excited by every clue, thrilled when patterns emerge. Asks questions that spark 'aha!' moments while structuring insights with precision."

**Other Notable Voices:**
- **John (pm):** "Asks 'WHY?' relentlessly like a detective on a case. Direct and data-sharp, cuts through fluff to what actually matters."
- **Winston (architect):** "Speaks in calm, pragmatic tones, balancing 'what could be' with 'what should be.' Champions boring technology that actually works."
- **Amelia (dev):** "Ultra-succinct. Speaks in file paths and AC IDs - every statement citable. No fluff, all precision."
- **Bob (sm):** "Crisp and checklist-driven. Every word has a purpose, every requirement crystal clear. Zero tolerance for ambiguity."
- **Sally (ux-designer):** "Paints pictures with words, telling user stories that make you FEEL the problem. Empathetic advocate with creative storytelling flair."

**Pattern Applied:** Moved behaviors from communication_style to principles, keeping communication_style as PURE verbal patterns.

**Files Updated:**
- `src/modules/bmm/agents/analyst.agent.yaml`
- `src/modules/bmm/agents/pm.agent.yaml`
- `src/modules/bmm/agents/architect.agent.yaml`
- `src/modules/bmm/agents/dev.agent.yaml`
- `src/modules/bmm/agents/sm.agent.yaml`
- `src/modules/bmm/agents/tea.agent.yaml`
- `src/modules/bmm/agents/tech-writer.agent.yaml`
- `src/modules/bmm/agents/ux-designer.agent.yaml`
- `src/modules/bmm/agents/frame-expert.agent.yaml`

### 6. Linting Fixes
**ESLint Compliance:**
- Replaced all `'utf-8'` with `'utf8'` (unicorn/text-encoding-identifier-case)
- Changed `variables.hasOwnProperty(varName)` to `Object.hasOwn(variables, varName)` (unicorn/prefer-object-has-own)
- Replaced `JSON.parse(JSON.stringify(...))` with `structuredClone(...)` (unicorn/prefer-structured-clone)
- Fixed empty YAML mapping values in sample files

**Files Fixed:**
- 7 JavaScript files across agent tooling (compiler, installer, commands, IDE integration)
- 1 YAML sample file

## Architecture Decisions

### Agent Types Are About Architecture, Not Capability
- **Simple:** Self-contained in single YAML (NOT limited in capability)
- **Expert:** Includes sidecar files (templates, docs, etc.)
- **Module:** Designed for BMAD ecosystem integration (workflows, cross-agent coordination)

### Persona Field Separation Critical for LLM Interpretation
The LLM needs distinct fields to understand its role:
- Mixing role/identity/principles into communication_style confuses the persona
- Pure communication styles (from communication-presets.csv) have ZERO role/identity/principles content
- Example DON'T: "Experienced analyst who uses systematic approaches..." (mixing identity + style)
- Example DO: "Systematic and probing. Structures findings hierarchically." (pure style)

### Install-Time vs Runtime Configuration
- Template variables ({{var}}) resolve at compile-time
- Runtime variables ({user_name}, {bmad_folder}) resolve when agent activates
- Future installer will handle personality customization, so agents should ship with single default persona

## Testing
- All linting passes (ESLint with max-warnings=0)
- Agent compilation tested with commit-poet, journal-keeper examples
- Install workflow validated with Simple and Expert agent types
- Manifest tracking and IDE integration verified

## Impact
This establishes BMAD as having a complete, production-ready agent creation and installation system with:
- Clear documentation for all agent types
- Automated compilation and installation
- Strong persona design guidance
- Reference implementations showing best practices
- Distinct, memorable agent voices throughout BMM module

Co-Authored-By: BMad Builder <builder@bmad.dev>
Co-Authored-By: Mary the Analyst <analyst@bmad.dev>
Co-Authored-By: Paige the Tech Writer <tech-writer@bmad.dev>
2025-11-18 21:55:47 -06:00
Alex Verkhovsky
7b7f984cd2 feat: Add Google Antigravity IDE installer (#938)
Implements installer for Google Antigravity IDE with flattened slash command
naming to match Antigravity's namespace requirements.

Key features:
- Flattened file naming (bmad-module-agents-name.md) for proper slash commands
- Subagent installation support (project-level or user-level)
- Module-specific injection configuration
- Agent, workflow, task, and tool command generation

Implementation:
- Added AntigravitySetup class extending BaseIdeSetup
- Extracted flattenFilename() to BaseIdeSetup for reuse across IDE handlers
- Uses .agent/workflows directory structure
- Supports both interactive and non-interactive configuration

Fixes:
- Proper namespace isolation: /bmad-module-agents-dev instead of /dev
- Prevents conflicts between modules with same agent names

Note: This installer shares 95% of its code with claude-code.js.
Future refactoring could extract common patterns to IdeWithSlashCommandsSetup
base class (see design documents for details).
2025-11-18 20:09:06 -06:00
Alex Verkhovsky
073597a8ff feat: Add project-specific installation option for Codex CLI (#937)
Add support for choosing between global and project-specific installation
locations for Codex CLI prompts with CODEX_HOME configuration instructions.

Changes:
- Add collectConfiguration() to prompt for installation location (default: global)
- Support global (~/.codex/prompts) and project-specific (<project>/.codex/prompts)
- Display OS-specific CODEX_HOME setup instructions before user confirms
- Update detect() and cleanup() to handle both installation locations

Installation options:
- Global: Simple, works immediately, but prompts reference specific .bmad path
- Project-specific: Requires CODEX_HOME, better for multi-project workflows
  - Unix/Mac: alias codex='CODEX_HOME="$PWD/.codex" codex'
  - Windows: codex.cmd wrapper with %~dp0
2025-11-18 18:48:32 -06:00
Brian Madison
0ca164de34 chore: release v6.0.0-alpha.10
Major milestone: Epics & Stories now generated AFTER Architecture
- New Frame Expert agent with Excalidraw workflows
- Time estimate prohibition across all workflows
- Platform-specific command filtering (ide-only/web-only)
- Agent customization enhancement (prompts & memories)
- Workflow configuration standardization
2025-11-16 00:52:51 -06:00
fxomo
f38905628a Fix: Add prompts and memories merging from customize.yaml (#889)
- Add merging logic for customizeYaml.prompts and customizeYaml.memories in loadAndMergeAgent()
- Implement buildMemoriesXml() method to output memories XML section
- Update buildPromptsXml() to use <content> wrapper instead of CDATA for better compatibility
- Integrate memories output into convertToXml() between persona and prompts sections

Changes:
1. Line 123-131: Added prompts and memories append logic in loadAndMergeAgent()
2. Line 215-218: Added memories XML output in convertToXml()
3. Line 286-301: New buildMemoriesXml() method
4. Line 312-315: Updated prompts to use <content> wrapper for consistency

This allows users to customize agents via bmad/_cfg/agents/*.customize.yaml with:
- prompts: Array of {id, content} objects for action handlers
- memories: Array of strings for persistent agent memories
2025-11-16 00:36:32 -06:00
Brian Madison
6f7e9f0653 refactor: Major v6 epic creation improvements and documentation overhaul
## Key Changes

### 1. Epic Creation Workflow Enhancements
- Added user-value focused epic structure principles (NO technical layer breakdown)
- Implemented multi-mode detection: CONTINUE, REPLACE, or UPDATE existing epics
- Added comprehensive anti-pattern examples showing wrong vs right epic breakdown
- Epics now created AFTER architecture for technically-informed story breakdown
- Added checkpoint protocol for interactive workflow progression

### 2. Removed Deprecated Solutioning Gate Check
- Deleted entire solutioning-gate-check workflow (682 lines)
- Replaced by new implementation-readiness workflow
- Cleaner separation of concerns in solutioning phase

### 3. PRD Template Simplification
- Removed hardcoded "Implementation Planning", "References", and "Next Steps" sections
- PRD now focuses purely on requirements, not workflow orchestration
- Epics/stories created as separate step after architecture

### 4. Documentation Overhaul (15+ docs updated)
- Updated quick-start guide with v6 workflow sequence
- Clarified that epics are created AFTER architecture, not during PRD
- Updated solutioning docs to reflect implementation-readiness pattern
- Improved agents-guide, brownfield-guide, enterprise docs
- Enhanced glossary, FAQ, and workflow reference documentation

### 5. Workflow Path Adjustments
- All 4 paths updated (enterprise/method × brownfield/greenfield)
- Version bumps across BMGD, BMM, and CIS workflow YAMLs
- Minor instruction file updates for consistency

### Files Changed
- 65 files total: 468 insertions, 978 deletions (net reduction of 510 lines)
- 4 files deleted (entire solutioning-gate-check workflow)
- 1 new directory added (implementation-readiness placeholder)
2025-11-16 00:23:47 -06:00
Brian Madison
5980e41a28 feat: Add ide-only and web-only menu item filtering for platform-specific commands
## Summary
- Add ide-only and web-only boolean fields to agent menu schema
- Filter menu items based on build target (web bundle vs local IDE)
- Update BMM agent definitions with platform restrictions and improved descriptions
- Update frame-expert agent icon to 📐 and add webskip flag

## Changes

### Schema & Bundler Updates
- tools/schema/agent.js: Add ide-only and web-only optional boolean fields
- tools/cli/lib/yaml-xml-builder.js: Filter ide-only items from web bundles
- tools/cli/lib/xml-handler.js: Pass forWebBundle flag through build chain

### Agent Updates
- frame-expert: Change icon to 📐, add webskip flag, improve principle formatting
- pm: Mark workflow-init and correct-course as ide-only, advanced-elicitation as web-only
- ux-designer: Rename trigger to create-ux-design, mark advanced-elicitation as web-only
- sm: Rename triggers for consistency (story-context → create-story-context)
- analyst: Add research workflow after brainstorm, mark advanced-elicitation as web-only
- architect: Remove document field from validate-architecture, add web-only flag
- dev: Update persona and critical actions for clarity
- tech-writer: Add party-mode workflow, mark advanced-elicitation as web-only
- tea: Mark advanced-elicitation as web-only
- All agents: Standardize party-mode description

This enables platform-specific functionality where some commands only make sense
in IDE environments (workflow-init) or web interfaces (advanced-elicitation).
2025-11-15 19:39:53 -06:00
mrsaifullah52
05ccd1904c Feature/frame expert agent #890 (#905)
* feat: add frame-expert agent definition

- Add frame-expert.agent.yaml with persona and workflow menu
- Agent specializes in Excalidraw visual representations
- Supports flowcharts, diagrams, dataflows, and wireframes

Closes #890

* feat: add frame-expert workflows and shared resources

- Add 4 workflows: create-flowchart, create-diagram, create-dataflow, create-wireframe
- Include shared Excalidraw helpers, library, templates, and validation
- Each workflow has instructions, checklist, and workflow.yaml

Related to #890

* feat: register frame-expert workflows in manifest

- Add create-flowchart workflow entry
- Add create-diagram workflow entry
- Add create-dataflow workflow entry
- Add create-wireframe workflow entry

Related to #890

* feat: integrate frame-expert into team configurations

- Add frame-expert to default-party.csv with full agent details
- Add frame-expert to team-fullstack.yaml agent list
- Frame-expert now available in fullstack team workflows

Related to #890
2025-11-15 09:39:46 -06:00
Brian Madison
f14014f0c7 refactor: Major workflow enhancements - time estimates prohibition, progressive epic creation, and workflow simplification
## Key Changes

### 1. Time Estimate Prohibition (All Modules)
- Added critical warnings against providing ANY time estimates (hours/days/weeks/months)
- Acknowledges AI has fundamentally changed development speed
- Applied to 33 workflow instruction files across BMB, BMGD, BMM, and CIS modules
- Updated workflow creation guide with prohibition guidelines

### 2. Enhanced Epic Creation Workflow
- Added intelligent UPDATE vs CREATE mode detection
- Detects available context (UX, Architecture, Domain brief, Product brief)
- Progressive enhancement: creates basic epics, then enriches with UX/Architecture
- Living document approach with continuous updates
- Added 305 lines of sophisticated workflow logic

### 3. Workflow Status Initialization Refactoring
- Simplified from 893 to 318 lines (65% reduction)
- Streamlined state detection: CLEAN, PLANNING, ACTIVE, LEGACY, UNCLEAR
- Cleaner path selection and initialization logic
- Removed redundant complexity while maintaining functionality

### 4. Workflow Path Updates
- Updated all 4 workflow paths (enterprise/method × brownfield/greenfield)
- Added multiple optional epic creation steps at different phases:
  - After PRD (basic structure)
  - After UX Design (with interaction context)
  - After Architecture (final with full context)
- Changed PRD output description from "with epics and stories" to "with FRs and NFRs"

### 5. Architecture & Innovation Updates
- Made epics input optional in architecture workflow (falls back to PRD FRs)
- Updated innovation strategy phases to remove time-based language
- Phases now: Immediate Impact → Foundation Building → Scale & Optimization

### Files Changed
- 33 instruction files updated with time estimate prohibition
- 2 workflow.yaml files updated (create-epics-and-stories, architecture)
- 4 workflow path YAML files updated
- 1 workflow creation guide enhanced

This refactor significantly improves workflow intelligence, removes harmful time-based planning assumptions, and creates more adaptive, context-aware workflows that better leverage AI capabilities.
2025-11-14 23:54:29 -06:00
Brian Madison
3223975fd0 Summary of changes:
- Removed 32 recommended_inputs: sections
  - Added description: fields to all input_file_patterns (25 workflows)
  - Added missing load_strategy fields (5 workflows)
  - Fixed BMB workflows with proper reference doc variables
  - Updated BMB instructions to use new variables
2025-11-14 20:43:15 -06:00
Brian Madison
3f283066b1 removed items from source that should not be included 2025-11-14 11:29:57 -06:00
Brian Madison
70a642318d prd updated to properly use the project-types csv 2025-11-14 08:06:19 -06:00
Brian Madison
e6b4f3f051 update doc 2025-11-14 07:10:01 -06:00
Brian Madison
7208610db8 web bundler fixes 2025-11-13 22:10:49 -06:00
Brian Madison
aa4c7e4446 web bundle links updated in docs 2025-11-13 20:17:20 -06:00
Brian Madison
face4e4367 resolved blocking issues when folder name is changed during install 2025-11-13 20:17:20 -06:00
Daniel Dabrowski
4aed5a1193 fix: update file paths in agent and workflow configurations to use {bmad_folder} variable (#917) 2025-11-13 19:44:12 -06:00
Anton Lvovych
94d01961f3 fix(shard-doc): use proper command for markdown-tree-parser (#911) 2025-11-13 18:23:54 -06:00
Brian Madison
1a52a19978 chore: bump version to 6.0.0-alpha.9 2025-11-12 22:59:52 -06:00
Brian Madison
6d14147c26 docs: add comprehensive changelog for v6.0.0-alpha.9 release
- Document workflow engine revolution with intelligent file discovery protocol
- Highlight track-based project system replacing Level 0-4 terminology
- Detail unified folder structure and ephemeral folder removal
- Include migration notes for users upgrading from alpha.8
- Emphasize sprint-artifacts location changes and backward compatibility
2025-11-12 22:59:07 -06:00
Brian Madison
15a94a94b6 accept a story status of review or ready-for-review, treat them the same. 2025-11-12 22:46:48 -06:00
Brian Madison
b63bf9d067 installer update to quick install and agent rebuild 2025-11-12 22:40:45 -06:00
Brian Madison
8f57effda4 clean up of hardcoded stale configurable paths 2025-11-12 20:46:47 -06:00
Brian Madison
1868477238 refactor(config): replace hardcoded .bmad paths with {bmad_folder} placeholder
Remove hardcoded .bmad folder references throughout documentation and source files, replacing them with the configurable {bmad_folder} placeholder. This change enables users to customize the BMAD installation folder name via configuration, improving flexibility and reducing coupling to a specific directory structure.

Changes include:
- Update all documentation to reference {bmad_folder} instead of .bmad
- Remove legacy configuration files from .bmad and .claude directories
- Update workflow.xml and CLI documentation with new placeholder syntax
2025-11-12 20:22:47 -06:00
Brian Madison
48cf5c8056 feat(workflows): Implement intelligent file discovery protocol and Phase 4 BMGD workflows
## Core Workflow Engine Enhancements

### discover_inputs Protocol (MAJOR)
- Added reusable `discover_inputs` protocol to workflow.xml for intelligent file loading
- Supports three loading strategies:
  - FULL_LOAD: Load all shards for PRD, Architecture, UX (changed pattern from /index.md to /*/*.md)
  - SELECTIVE_LOAD: Load specific shard via template variable (e.g., epic-{{epic_num}}.md)
  - INDEX_GUIDED: Load index, analyze TOC, intelligently load relevant docs (with "DO NOT BE LAZY" mandate)
- Auto-discovers whole vs sharded documents with proper fallback
- Provides transparent reporting of loaded content with file counts
- Invoked via <invoke-protocol name="discover_inputs" /> tag in workflow instructions

### Advanced Elicitation Improvements
- Renamed adv-elicit.xml to advanced-elicitation.xml for clarity
- Updated all references across agents and commands

### Shard Document Tool Enhancement
- Added Step 6: Handle Original Document with three options:
  - [d] Delete - Remove original (recommended, prevents confusion)
  - [m] Move to archive - Backup original to archive folder
  - [k] Keep - Warning about defeating sharding purpose
- Prevents issue where both whole and sharded versions exist, confusing discover_inputs protocol

## BMM Module - Input File Pattern Standardization

### Phase 1 - Analysis (1 workflow)
- product-brief: Added load_strategy (FULL_LOAD for research/brainstorming, INDEX_GUIDED for document_project)
- Updated instructions.md to use invoke-protocol, replaced manual fuzzy matching

### Phase 2 - Planning (4 workflows)
- prd: Added load_strategy, updated instructions to reference {product_brief_content}, {research_content}
- create-ux-design: Added load_strategy, removed fuzzy matching from instructions
- tech-spec: Added load_strategy for brownfield context discovery
- All epics patterns updated to support SELECTIVE_LOAD for specific epic shards

### Phase 3 - Solutioning (2 workflows)
- architecture: Added load_strategy, updated instructions to use pre-loaded {prd_content}, {epics_content}, {ux_design_content}
- solutioning-gate-check: Added load_strategy, replaced manual discovery with protocol invocation

### Phase 4 - Implementation (8 workflows)
- code-review: Added load_strategy, fixed sharded patterns to /*/*.md, added step 1.5 for protocol
- correct-course: Added complete input_file_patterns section (was missing), added step 0.5
- create-story: Added load_strategy, updated to SELECTIVE_LOAD for epics, added step 1.5
- dev-story: Added complete input_file_patterns section (was missing), added step 0.5
- epic-tech-context: Added load_strategy, updated PRD extraction to use {prd_content}, added step 1.5
- retrospective: Added load_strategy for architecture/prd (FULL_LOAD), epics (SELECTIVE_LOAD), added step 0.5
- sprint-planning: Fixed sharded pattern to load ALL epics (/*/*.md), added step 0.5
- story-context: Added load_strategy, updated doc collection to reference pre-loaded content, added step 1.5

### Sprint Artifacts Path Corrections
- story-done: Added missing sprint_artifacts variable, fixed sprint_status path from {context_dir} to {sprint_artifacts}
- story-ready: Added missing sprint_artifacts variable
- story-context: Fixed undefined {context_dir} -> {sprint_artifacts}
- correct-course: Added sprint_artifacts and sprint_status variables

## BMGD Module - Phase 4 Production Workflows (NEW)

Added complete Phase 4 implementation workflows for game development:
- code-review: Senior developer review for completed game features
- correct-course: Sprint change management for game projects
- create-story: Story generation for game mechanics/features
- dev-story: Feature implementation workflow
- epic-tech-context: Technical spec generation per game epic
- retrospective: Epic completion review and lessons learned
- sprint-planning: Game development sprint status tracking
- story-context: Dynamic context assembly for game stories
- story-done: Story completion workflow
- story-ready: Story readiness workflow

All BMGD workflows follow BMM patterns with game-specific adaptations.

## Agent Updates

### BMM Agents
- Updated all 7 BMM agents (analyst, architect, dev, pm, sm, tea, tech-writer, ux-designer)
- Standardized web bundle configurations

### BMGD Agents
- Updated 4 game development agents (game-architect, game-designer, game-dev, game-scrum-master)
- Aligned with BMM agent structure

### CIS Agents
- Updated 5 creative intelligence agents for consistency

## Documentation & Configuration

- Updated CHANGELOG.md with Phase 4 workflow additions
- Updated files-manifest.csv and task-manifest.csv
- Updated .claude commands for all agents
- Fixed formatting issues from previous commits

## Breaking Changes

NONE - All changes are backward compatible. Workflows without input_file_patterns continue to work.
Workflows with input_file_patterns now benefit from intelligent auto-loading.

## Migration Notes

Existing workflows can gradually adopt discover_inputs protocol by:
1. Adding load_strategy to existing input_file_patterns in workflow.yaml
2. Adding <invoke-protocol name="discover_inputs" /> step in instructions.md
3. Replacing manual file loading with references to {pattern_name_content} variables
2025-11-12 19:18:38 -06:00
Brian Madison
8f7d259c81 remaining bad character removal 2025-11-11 20:10:33 -06:00
Brian Madison
74f54a088a removed some bad formatting that was injected previously 2025-11-11 17:30:43 -06:00
Brian Madison
4d745532aa refactor(tech-spec): unify story generation and adopt intent-based approach
Major refactoring of tech-spec workflow for quick-flow projects:

## Unified Story Generation
- Consolidated instructions-level0-story.md and instructions-level1-stories.md into single instructions-generate-stories.md
- Always generates epic + stories (minimal epic for 1 story, detailed for multiple)
- Consistent naming: story-{epic-slug}-N.md for all stories (1-5)
- Eliminated branching logic and duplicate code

## Intent-Based Intelligence
- Removed 150+ lines of hardcoded stack detection examples (Node.js, Python, Ruby, Java, Go, Rust, PHP)
- Replaced prescriptive instructions with intelligent guidance that trusts LLM capabilities
- PHASE 2 stack detection now adapts to ANY project type automatically
- Step 2 discovery changed from scripted Q&A to adaptive conversation goals

## Terminology Updates
- Replaced "Level 0" and "Level 1" with "quick-flow" terminology throughout
- Updated to "single story" vs "multiple stories (2-5)" language
- Consistent modern terminology across all files

## Variable and Structure Improvements
- Fixed variable references: now uses {instructions_generate_stories} instead of hardcoded paths
- Updated workflow.yaml with cleaner variable structure
- Removed unused variables (project_level, development_context)
- Added story_count and epic_slug runtime variables

## Files Changed
- Deleted: instructions-level0-story.md (7,259 bytes)
- Deleted: instructions-level1-stories.md (16,274 bytes)
- Created: instructions-generate-stories.md (13,109 bytes)
- Updated: instructions.md (reduced from 35,028 to 32,006 bytes)
- Updated: workflow.yaml, checklist.md

## Impact
- 50% fewer workflow files (3 → 1 for story generation)
- More adaptable to any tech stack
- Clearer, more maintainable code
- Better developer and user experience
- Trusts modern LLM intelligence instead of constraining with examples
2025-11-11 17:30:43 -06:00
Brian Madison
2d99833b9e feat: Add documentation guides, simplify folder structure, and major workflow refactoring
Created two comprehensive guides for v6 features:

**docs/agent-customization-guide.md**
- Complete guide for customizing agent names, personas, memories, and behaviors
- Update-safe customization via bmad/_cfg/agents/ configuration files
- Real-world examples (TDD setup, multilingual agents, custom workflows)
- Troubleshooting and best practices

**docs/web-bundles-gemini-gpt-guide.md**
- Comprehensive guide for using BMad agents in Gemini Gems and Custom GPTs
- Critical setup rules with exact configuration text required
- Cost-saving strategy: web planning → local implementation (60-80% savings)
- Platform comparison (Gemini Gems strongly recommended over Custom GPTs)
- Complete workflow examples showing full planning-to-implementation cycle
- Team bundle guidance (Gemini 2.5 Pro+ only)

**README.md updates**
- Added prominent links in v6 Core Enhancements section
- Created new "Customization & Sharing" documentation category
- Web Bundles feature highlighted with direct guide link

**Unified output folder structure across all modules:**

**Before (confusing):**
- output_folder: Main docs
- game_design_docs: Separate design folder
- tech_docs: Separate technical folder
- dev_ephemeral_location: Separate ephemeral folder outside docs

**After (simplified):**
- output_folder: Single location for ALL AI-generated artifacts (default: "docs")
  - Clearer prompt: "Where should AI Generated Artifacts be saved?"
- sprint_artifacts: Phase 4 ephemeral content now WITHIN output_folder
  - BMM: {output_folder}/stories (stories, context, reports)
  - BMGD: {output_folder}/sprint-artifacts
  - No longer in separate {bmad_folder}-ephemeral location

**Benefits:**
- One clear location for all planning artifacts (PRD, Architecture, UX, etc.)
- Phase 4 ephemeral items logically grouped within output folder
- Eliminated confusing separate folder proliferation
- sprint_artifacts now configurable per module

**Files changed:**
- src/core/_module-installer/install-config.yaml
- src/modules/bmm/_module-installer/install-config.yaml
- src/modules/bmgd/_module-installer/install-config.yaml

**Also cleaned up BMGD config:**
- Renamed: specified_framework → primary_platform (clearer naming)
- Removed: unused data_path variable

Replaced old "project_level" (0-4) system with new "selected_track" terminology:
- **quick-flow**: Bug fixes and small features (replaces Level 0-1)
- **bmad-method**: Full planning track (replaces Level 2-3)
- **enterprise-bmad-method**: Extended planning (replaces Level 4)

**Core workflow updates:**
- solutioning-gate-check: Complete rewrite of validation logic for track-based artifacts
- architecture: Updated context detection, error handling, and messaging for tracks
- workflow-init: Updated artifact detection patterns for track-based paths
- All workflow status paths updated (method-greenfield, method-brownfield, enterprise-*)

Unified variable naming conventions across all workflows:
- {output_folder} → {output-folder} (hyphenated format)
- {dev_ephemeral_location} → {sprint_artifacts} (clearer purpose)
- Hardcoded status file paths → {workflow_status_file} variable

Fixed corrupted variable patterns throughout workflow files:
- {output*folder} → {output-folder}
- {ephemeral*location} → {sprint_artifacts}
- \_prd* → *prd* (escaped underscore artifacts)
- **\*\***\_\_\_**\*\*** → proper field placeholders

Affected patterns included malformed glob patterns, template variables, and markdown formatting artifacts from previous edits.

**Architecture workflow (create-architecture):**
- Fixed: "Decision Architecture" → "Create Architecture" (consistent naming)
- Improved PRD not found handling with exit/continue options
- Better user guidance when running standalone vs. within workflow path
- Removed hardcoded Level checks, now track-aware
- Enhanced validation checklist formatting (□ → - [])
- Typo fixes: "mulitple" → "multiple"

**Solutioning gate check:**
- Complete validation logic rewrite for track-based system
- Removed Level-specific artifact expectations
- Simplified document discovery (track determines what exists)
- Better analysis prompts and user feedback

**Workflow-init:**
- Updated artifact detection patterns for new folder structure
- Fixed corrupt glob patterns throughout
- Better sprint_artifacts location detection
- Improved workflow path assignment logic

**Various workflows:**
- Consistent variable naming across 40+ workflow files
- Improved error messages and user guidance
- Better markdown formatting (checkboxes, lists)
- Removed redundant validation criteria files (now inline)

Removed duplicate BMGD 4-production workflows (12 workflows):
- code-review, correct-course, create-story, dev-story
- epic-tech-context, retrospective, sprint-planning
- story-context, story-done, story-ready

**Why:** BMGD now uses shared BMM Phase 4 implementation workflows
**Benefit:** Single source of truth, no duplication to maintain

Also removed:
- validation-criteria.yaml (validation now inline in instructions)
- architecture-patterns.yaml references (patterns now managed differently)
- AUDIT-REPORT.md files (stale audit artifacts)

**BMB workflows:**
- Updated checklists for workflow and module creation
- Improved agent architecture documentation
- Minor instruction clarifications

**Core brainstorming workflow:**
- Updated README with usage examples
- Enhanced instructions and template clarity
- Better integration with other modules

**BMM installer:**
- Updated for track-based system
- sprint_artifacts configuration

**Tech Writer agent:**
- Minor configuration update for documentation workflows

Removed 200+ files that should not be in repository:
- Installed agent markdown files (analyst, architect, dev, pm, sm, tea, etc.)
- Complete workflow instruction copies
- Documentation duplicates (quick-start, agents-guide, workflows-*)
- Test architecture knowledge base (22 files, 14,000+ lines)
- Configuration files (config.yaml, team definitions)

These are generated during installation and should not be version controlled.

Removed 21 pre-generated XML bundles:
- BMM agents (analyst, architect, dev, pm, sm, tea, tech-writer, ux-designer)
- BMGD agents (game-architect, game-designer, game-dev, game-scrum-master)
- CIS agents (brainstorming-coach, creative-problem-solver, etc.)
- Team bundles (team-fullstack, team-gamedev, creative-squad)

**Why:** Users should generate fresh bundles via `npm run bundle` to get latest changes and customizations.

- **2 new documentation files** (comprehensive guides)
- **98 source files modified** (299 insertions, 6,567 deletions)
- **3 installer config files simplified** (major folder structure improvement)
- **200+ .bmad/ artifacts removed** (should not be in repo)
- **21 web-bundle files removed** (users regenerate as needed)
- **12 duplicate workflows removed** (BMGD consolidation)
- **40+ workflows updated** (track system, variable standardization, corruption fixes)
2025-11-11 17:30:43 -06:00
Murat K Ozcan
280652566c chore: fixed directory browsing + zip Downloads (#902)
Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-11 16:48:03 -06:00
Murat K Ozcan
2ae99135a2 chore: fix bundle urls (#901)
Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-11 16:37:03 -06:00
Murat K Ozcan
449b5b3d29 chore: github pages for web bundle (#898)
* chore: github pages for web bundle

* docs: updated Bundle distribution setup

* chore: addressed PR comments

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-11 13:35:30 -06:00
Murat K Ozcan
487d1582a0 feat: test design for architecture level (phase 3) (#897)
* feat: test design for architecture level (phase 3)

* addressed review comments

---------

Co-authored-by: Murat Ozcan <murat@Murats-MacBook-Pro.local>
Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-11 10:03:00 -06:00
Brian Madison
03fbd2ae24 Release v6.0.0-alpha.8
## Installation Path Enhancements
- **Configurable Installation Directory**: Users can now specify custom installation directories during setup
- **New Default Location**: Changed default installation to `.bmad` (hidden directory) for cleaner project organization
- **Ephemeral File Handling**: Updated phase 4 implementation to use ephemeral file locations for better artifact organization

## CLI & Agent Loading Improvements
- **Optimized Agent Loading**: CLI commands now load from installed agent files, eliminating duplication
- **Installer UX Improvements**: Enhanced installer interface with version display
- **VS Code Integration**: Updated settings for new `.bmad` directory structure

## Web Bundle Enhancements
- **Party Mode Support**: All web bundles (single agent and team) now include party mode for multi-agent collaboration
- **Advanced Elicitation**: Integrated advanced elicitation capabilities into standalone agents
- **Expanded Agent Bundles**: New web bundle outputs for all agents (analyst, architect, dev, pm, sm, tea, tech-writer, ux-designer, game-*, creative-squad)
- **Team Customization**: Added default-party.csv files to bmm, bmgd, and cis modules with customizable party configurations

## Phase 4 Workflow Updates (In Progress)
- **Artifact Separation**: Initiated separation of phase 4 implementation artifacts from documentation
- **Dedicated Artifact Path**: Phase 4 items (stories, code review, sprint plan, context files) moving to dedicated location outside docs folder
- **Updated Workflows**: Modified workflow.yaml files for code-review, sprint-planning, story-context, epic-tech-context, and retrospective workflows
- **Configuration Support**: Added installer questions for artifact path selection

## IDE Integration
- **Gemini TOML**: Improved with clear loading instructions using @ commands
- **Centralized Templates**: Agent launcher markdown files now use centralized critical indication templates
- **GitHub Copilot**: Updated tool names to match official VS Code documentation (November 2025)

## Bug Fixes
- Fixed duplicate manifest entries by deduplicating module lists using Set
- Cleaned up legacy bmad/, bmd/, and web-bundles directories
- Various improvements to phase 4 workflow artifact handling

## Additional Changes
- New agent and action command header models for standardization
- Enhanced web-bundle-activation-steps fragment
- Updated web-bundler.js to support new structure
- Improved party mode instructions and workflow orchestration
2025-11-09 23:24:25 -06:00
Brian Madison
665e140638 more updates to use ephemeral file location for phase 4 items 2025-11-09 23:17:29 -06:00
Brian Madison
f49a4731e7 agents now are not duplicated and isntead cli commmands load from installed agent files 2025-11-09 20:24:56 -06:00
Brian Madison
7eb52520fa Major Enhancements:
- Installation path is now fully configurable, allowing users to specify custom installation directories during setup
  - Default installation location changed to .bmad (hidden directory) for cleaner project root organization

    Web Bundle Improvements:

    - All web bundles (single agent and team) now include party mode support for multi-agent collaboration!
    - Advanced elicitation capabilities integrated into standalone agents
    - All bundles enhanced with party mode agent manifests
    - Added default-party.csv files to bmm, bmgd, and cis module teams
    - The default party file is what will be used with single agent bundles. teams can customize for different party configurations before web bundling through a setting in the team yaml file
    - New web bundle outputs for all agents (analyst, architect, dev, pm, sm, tea, tech-writer, ux-designer, game-*, creative-squad)

    Phase 4 Workflow Updates (In Progress):

    - Initiated shift to separate phase 4 implementation artifacts from documentation
        - Phase 4 implementation artifacts (stories, code review, sprint plan, context files) will move to dedicated location outside docs folder
        - Installer questions and configuration added for artifact path selection
        - Updated workflow.yaml files for code-review, sprint-planning, story-context, epic-tech-context, and retrospective workflows to support this, but still might require some udpates

    Additional Changes:

    - New agent and action command header models for standardization
    - Enhanced web-bundle-activation-steps fragment
    - Updated web-bundler.js to support new structure
    - VS Code settings updated for new .bmad directory
    - Party mode instructions and workflow enhanced for better orchestration

   IDE Installer Updates:

    - Show version number of installer in cli
    - improved Installer UX
    - Gemini TOML Improved to have clear loading instructions with @ commands
    - All tools agent launcher mds improved to use a central file template critical indication isntead of hardcoding in 2 different locations.
2025-11-09 17:39:05 -06:00
Brian Madison
fd2521ec69 customize installation folder for the bmad content 2025-11-08 15:19:19 -06:00
Brian Madison
1728acfb0f The install directory is now configurable, with a few minute issues 2025-11-08 13:58:43 -06:00
Brian Madison
a4bbfc4b6e fix: Prevent duplicate manifest entries and update GitHub Copilot tool names
- Deduplicate module lists in manifest generator using Set to prevent duplicate entries in installed manifests
- Update GitHub Copilot tool names to match official VS Code documentation (November 2025)
- Clean up legacy bmad/, bmd/, and web-bundles directories
2025-11-08 01:06:09 -06:00
Brian Madison
61955e8e96 release: bump to v6.0.0-alpha.7 2025-11-07 00:50:04 -06:00
Brian Madison
03d757292b fix: Add missing adv-elicit-methods.csv to workflow bundles
- Add adv-elicit-methods.csv dependency to all workflows using adv-elicit.xml
  - architecture workflow
  - prd workflow
  - tech-spec workflow
- Include BMM web bundles (8 agents + team-fullstack)
- Update v6 open items list

This fixes runtime failures when advanced elicitation is invoked in bundled
workflows by ensuring the 39 elicitation methods CSV is properly included.

Note: Web bundler still has optimizations and known issues to address in
upcoming commits.
2025-11-07 00:38:28 -06:00
Brian Madison
91302d9c7a claude and a few other ide tools installation fix to not add a readme file slash comand regression, and cleanup bmad folders in tools on install 2025-11-06 22:45:29 -06:00
Murat K Ozcan
1343859874 chore: CC PR review with GH token (#874)
* chore: CC PR review with GH token

* debug CC output

* turn off CC output

* turn off CC PR review

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-06 13:05:36 -06:00
Brian Madison
8ed4a548ea web bundler improvements part 1 2025-11-05 23:54:04 -06:00
Brian Madison
80a04bfce3 fix: Remove menu items for workflows with web_bundle: false
Enhanced removeSkippedWorkflowCommands() to properly remove all menu item
formats that reference workflows with web_bundle: false:

1. <item> tags with workflow attribute
2. <item> tags with run-workflow attribute
3. <c> tags with run-workflow attribute (legacy)

This ensures that workflows not designed for web bundles (like workflow-status
which requires filesystem access) are completely excluded from web bundles,
including their menu items.

Verified:
- workflow-status menu item removed from SM agent
- workflow-status YAML not included in bundle dependencies
2025-11-05 21:33:59 -06:00
Brian Madison
9a37cbb7fc fix: Show positive message when no missing dependencies
Instead of displaying an empty "⚠ Missing Dependencies by Agent:" section
when all dependencies are resolved, now shows a positive message:
"✓ No missing dependencies"

This improves the user experience by providing clear feedback that workflow
vendoring successfully resolved all dependencies.
2025-11-05 21:10:18 -06:00
Brian Madison
281eac3373 feat: Add workflow vendoring to web bundler
The web bundler now performs workflow vendoring before bundling agents,
similar to the module installer. This ensures that workflows referenced
via workflow-install attributes are copied from their source locations
to their destination locations before the bundler attempts to resolve
and bundle them.

Changes:
- Added vendorCrossModuleWorkflows() method to WebBundler class
- Added updateWorkflowConfigSource() helper method
- Integrated vendoring into bundleAll(), bundleModule(), and bundleAgent()
- Workflows are vendored before agent discovery and bundling
- Config_source is updated in vendored workflows to reference target module

This fixes missing dependency warnings for BMGD agents that vendor
BMM workflows for Phase 4 (Production) workflows.
2025-11-05 21:05:08 -06:00
Brian Madison
f84e18760f 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
2025-11-05 20:44:22 -06:00
Murat K Ozcan
bc76d25be6 chore: added CC PR review (#871)
* chore: added CC PR review

* remove CLAUDE.md

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-05 14:14:31 -06:00
Murat K Ozcan
c20ead1acb refactor: update TEA documentation to align with BMad 4-phase methodology (#870)
* refactor: update TEA documentation to align with BMad 4-phase methodology

* reafactor: address review comments

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-05 13:37:51 -06:00
Brian Madison
6fa6ebab12 More document Updtes and diagram improvements 2025-11-05 07:52:08 -06:00
Brian Madison
412a7d1ed8 release: bump to v6.0.0-alpha.6
Bug Fixes:
- Fix manifestPath error in ide-config-manager causing installation failures
- Fix installer option display to show full labels instead of just values for single/multi-select
- Add conditional documentation installation - users can now opt out of installing docs

Improvements:
- Add install_user_docs configuration option (defaults to true)
- Improve config question display with descriptive labels for better UX
- Update CONTRIBUTING.md to remove references to non-existent 'next' branch

Maintenance:
- Closed 54 legacy v4 issues (older than 1 month) to maintain clean issue tracker
2025-11-04 22:28:28 -06:00
Brian Madison
f8ba15c6f8 installer doc install option for bmad method module - user can opt to not install all the docs to the destination installation path 2025-11-04 22:17:12 -06:00
Brian Madison
1f0dfe05e4 windows powershell install fix 2025-11-04 21:58:41 -06:00
Brian Madison
7552ee2e3b fix quick udpate status bug in installer 2025-11-04 21:16:52 -06:00
Serhii
c283344a54 fix: ensure POSIX-compliant newlines in generated files (#856)
- Add final newline check to YAML config generation
- Add final newline check to YAML manifest generation
- Add final newline check to agent .md file generation
- Ensures all text files end with \n per POSIX standard
- Fixes 'No newline at end of file' git warnings
2025-11-04 20:18:12 -06:00
Brian Madison
ba5f76c37d Doc cleanup and mermaid diagram drafts added 2025-11-04 15:02:19 -06:00
Murat K Ozcan
84ec72fb94 fix: tea-readme 3 (#855)
* fix: tea-readme 3

* fix: tea-readme 3

---------

Co-authored-by: Murat Ozcan <murat@mac.lan>
2025-11-04 10:31:36 -06:00
Brian Madison
ccd6cacd89 release: bump to v6.0.0-alpha.5 2025-11-04 00:15:34 -06:00
Brian Madison
accae5d789 refactor: comprehensive workflow modernization and standardization
## Major Improvements

### 1. Elicitation System Modernization
- Removed legacy `<elicit-required />` tag from workflow.xml
- Replaced with direct `<invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>` pattern
- More explicit, self-documenting, and eliminates indirection layer
- Added strategic elicitation points across all planning workflows:
  - PRD: After success criteria, scope, functional requirements, and final review
  - Create-Epics-And-Stories: After epic proposals and each epic's stories
  - Architecture: After decisions, structure, patterns, implementation patterns, and final doc
  - Updated audit-workflow tag scanner to remove obsolete elicit-required reference

### 2. Input Document Discovery Streamlined
- Replaced verbose 19-line "Input Document Discovery" sections with single critical tag
- New format: `<critical>Input documents specified in workflow.yaml input_file_patterns...</critical>`
- Eliminates duplication - workflow.yaml already defines patterns
- Updated across 6 workflows (PRD, create-epics-and-stories, architecture, tech-spec, UX, gate-check)
- Saved ~114 lines of repeated bloat

### 3. Scale System Migration (Levels 0-4 → 3 Tracks)
- Updated PRD workflow from "Level 0-4" to "Quick Flow / BMad Method / Enterprise Method"
- Changed `project_level` variable to `project_track`
- Removed `target_scale` variable (no longer needed)
- Updated workflow.yaml descriptions to reference tracks not levels
- Updated checklist from "Level 2" and "Level 3-4" to "BMad Method" and "Enterprise Method"
- Aligns with new scale-adaptive-system.md (3-track methodology)

### 4. Epic/Story Template Standardization
- Replaced hardcoded 8-epic template with clean repeating pattern using N/M variables
- Added BDD-style acceptance criteria (Given/When/Then/And)
- Removed instructional bloat from templates (moved to instructions.md where it belongs)
- Template shows OUTPUT structure, instructions show PROCESS
- Applied to both create-epics-and-stories and tech-spec workflows
- Templates now use HTML comments to indicate repeating sections

### 5. Workflow.yaml Pattern Consistency
- Standardized input_file_patterns across all workflows
- Separated `recommended_inputs` (semantic WHAT) from `input_file_patterns` (file discovery WHERE)
- Removed duplication between recommended_inputs file paths and input_file_patterns
- Create-epics-and-stories now uses proper whole/sharded pattern like architecture workflow
- Solutioning-gate-check cleaned up to use semantic descriptions not file paths

## Files Changed (18)
- Core: workflow.xml (removed elicit-required tag and references)
- Audit workflow: Updated tag pattern scanner
- PRD workflow: Elicitation points, track migration, input discovery
- Create-epics-and-stories: Template rebuild, BDD format, elicitation, input patterns
- Tech-spec: Template rebuild, BDD format, input discovery
- UX Design: Input discovery streamlined
- Architecture: Elicitation at 5 key decision points, input discovery
- Gate-check: Input pattern cleanup, input discovery

## Impact
- More consistent elicitation across workflows
- Cleaner, more maintainable templates
- Better separation of concerns (templates vs instructions)
- Aligned with v6 3-track scale system
- Reduced bloat and duplication significantly
2025-11-04 00:09:19 -06:00
Brian Madison
c5117e5382 readme update 2025-11-03 21:46:49 -06:00
Brian Madison
e7d51739e4 update local install 2025-11-03 21:05:18 -06:00
Brian Madison
17f81a84f3 docs: comprehensive documentation accuracy overhaul and PM/UX evolution analysis
This commit represents a major documentation quality improvement, fixing critical inaccuracies and adding forward-looking guidance on the evolving role of PMs/UX in AI-driven development.

## Documentation Accuracy Fixes (Agent YAML as Source of Truth)

### Critical Corrections in agents-guide.md
- **Game Developer workflows**: Fixed incorrect workflow names (dev-story → develop-story, added story-done, removed non-existent create-story and retro)
- **Technical Writer naming**: Added agent name "Paige" to match all other agent naming patterns
- **Agent reference tables**: Updated to reflect actual agent capabilities from YAML configs
- **epic-tech-context ownership**: Corrected across all docs - belongs to SM agent, not Architect

### Critical Corrections in workflows-implementation.md
- **Line 16 + 75**: Fixed epic-tech-context agent from "Architect" → "SM" (matches sm.agent.yaml)
- **Line 258**: Updated epic-tech-context section header to show correct agent ownership
- **Multi-agent workflow table**: Moved epic-tech-context to SM agent row where it belongs

### Principle Applied
**Agent YAML files are source of truth** - All documentation now accurately reflects what agents can actually do per their YAML configurations, not assumptions or outdated info.

## Brownfield Development: Phase 0 Documentation Reality Check

### Rewrote brownfield-guide.md Phase 0 Section
Replaced oversimplified 3-scenario model with **real-world guidance**:

**Before**: Assumed docs are either perfect or non-existent
**After**: Handles messy reality of brownfield projects

**New Scenarios (4 instead of 3)**:
- **Scenario A**: No documentation → document-project (was covered)
- **Scenario B**: Docs exist but massive/outdated/incomplete → **document-project** (NEW - very common)
- **Scenario C**: Good docs but no structure → **shard-doc → index-docs** (NEW - handles massive files)
- **Scenario D**: Confirmed AI-optimized docs → Skip Phase 0 (was "Scenario C", now correctly marked RARE)

**Key Additions**:
- Default recommendation: "Run document-project unless you have confirmed, trusted, AI-optimized docs"
- Quality assessment checklist (current, AI-optimized, comprehensive, trusted)
- Massive document handling with shard-doc tool (>500 lines, 10+ level 2 sections)
- Explicit guidance on why regenerate vs index (outdated docs cause hallucinations)
- Impact explanation: how bad docs break AI workflows (token limits, wrong assumptions, broken integrations)

**Principle**: "When in doubt, run document-project" - Better to spend 10-30 minutes generating fresh docs than waste hours debugging AI agents with bad documentation.

## PM/UX Evolution: Enterprise Agentic Development

### New Content: The Evolving Role of Product Managers & UX Designers

Added comprehensive section based on **November 2025 industry research**:

**Industry Data**:
- 56% of product professionals cite AI/ML as top focus
- PRD-to-Code automation: build and deploy apps in 10-15 minutes
- By 2026: Roles converging into "Full-Stack Product Lead" (PM + Design + Engineering)
- Very high salaries for AI agent PMs who orchestrate autonomous systems

**Role Transformation**:
- From spec writers → code orchestrators
- PMs writing AI-optimized PRDs that **feed agentic pipelines directly**
- UX designers generating code with Figma-to-code tools
- Technical fluency becoming **table stakes**, not optional
- Review PRs from AI agents alongside human developers

**New Section: "How BMad Method Enables PM/UX Technical Evolution"** (10 ways):
1. **AI-Executable PRD Generation** - PRDs become work packages for cloud agents
2. **Automated Epic/Story Breakdown** - No more story refinement sessions
3. **Human-in-the-Loop Architecture** - PMs learn while validating technical decisions
4. **Cloud Agentic Pipeline** - Current (2025) + Future (2026) vision with diagrams
5. **UX Design Integration** - Designs validated through working prototypes
6. **PM Technical Skills Development** - Learn by doing through conversational workflows
7. **Organizational Leverage** - 1 PM → 20-50 AI agents (5-10× multiplier)
8. **Quality Consistency** - What gets built matches what was specified
9. **Rapid Prototyping** - Hours to validate ideas vs months
10. **Career Path Evolution** - Positions PMs for AI Agent PM, Full-Stack Product Lead roles

**Cloud Agentic Pipeline Vision**:
```
Current (2025): PM PRD → Stories → Human devs + BMad agents → PRs → Review → Deploy
Future (2026): PM PRD → Stories → Cloud AI agents → Auto PRs → Review → Auto-merge → Deploy
Time savings: 6-8 weeks → 2-5 days
```

**What Remains Human**:
- Product vision, empathy, creativity, judgment, ethics
- PMs spend MORE time on human elements (AI handles execution)
- Product leaders become "builder-thinkers" not just spec writers

### Document Tightening (enterprise-agentic-development.md)
- **Reduced from 1207 → 640 lines (47% reduction)**
- **10× more BMad-centric** - Every section ties back to how BMad enables the future
- Removed redundant examples, consolidated sections, kept actionable insights
- Stronger value propositions for PMs, UX, enterprise teams throughout

**Key Message**: "The future isn't AI replacing PMs—it's AI-augmented PMs becoming 10× more powerful through BMad Method."

## Impact

These changes bring documentation quality from **D- to A+**:
- **Accuracy**: Agent capabilities now match YAML source of truth (zero hallucination risk)
- **Reality**: Brownfield guidance handles messy real-world scenarios, not idealized ones
- **Forward-looking**: PM/UX evolution section positions BMad as essential framework for emerging roles
- **Actionable**: Concrete workflows, commands, examples throughout
- **Concise**: 47% reduction while strengthening value proposition

Users now have **trustworthy, reality-based, future-oriented guidance** for using BMad Method in both current workflows and emerging agentic development patterns.
2025-11-03 19:38:50 -06:00
Brian Madison
88d043245f 5 levels of scale adaption compressed to 3 clear distinctions driven by user preference and project needs 2025-11-03 17:06:15 -06:00
Brian Madison
750024fb14 release: bump to v6.0.0-alpha.4 2025-11-02 22:00:12 -06:00
Brian Madison
cfedecbd53 docs: massive documentation overhaul + introduce Paige (Documentation Guide agent)
## 📚 Complete Documentation Restructure

**BMM Documentation Hub Created:**
- New centralized documentation system at `src/modules/bmm/docs/`
- 18 comprehensive guides organized by topic (7000+ lines total)
- Clear learning paths for greenfield, brownfield, and quick spec flows
- Professional technical writing standards throughout

**New Documentation:**
- `README.md` - Complete documentation hub with navigation
- `quick-start.md` - 15-minute getting started guide
- `agents-guide.md` - Comprehensive 12-agent reference (45 min read)
- `party-mode.md` - Multi-agent collaboration guide (20 min read)
- `scale-adaptive-system.md` - Deep dive on Levels 0-4 (42 min read)
- `brownfield-guide.md` - Existing codebase development (53 min read)
- `quick-spec-flow.md` - Rapid Level 0-1 development (26 min read)
- `workflows-analysis.md` - Phase 1 workflows (12 min read)
- `workflows-planning.md` - Phase 2 workflows (19 min read)
- `workflows-solutioning.md` - Phase 3 workflows (13 min read)
- `workflows-implementation.md` - Phase 4 workflows (33 min read)
- `workflows-testing.md` - Testing & QA workflows (29 min read)
- `workflow-architecture-reference.md` - Architecture workflow deep-dive
- `workflow-document-project-reference.md` - Document-project workflow reference
- `enterprise-agentic-development.md` - Team collaboration patterns
- `faq.md` - Comprehensive Q&A covering all topics
- `glossary.md` - Complete terminology reference
- `troubleshooting.md` - Common issues and solutions

**Documentation Improvements:**
- Removed all version/date footers (git handles versioning)
- Agent customization docs now include full rebuild process
- Cross-referenced links between all guides
- Reading time estimates for all major docs
- Consistent professional formatting and structure

**Consolidated & Streamlined:**
- Module README (`src/modules/bmm/README.md`) streamlined to lean signpost
- Root README polished with better hierarchy and clear CTAs
- Moved docs from root `docs/` to module-specific locations
- Better separation of user docs vs. developer reference

## 🤖 New Agent: Paige (Documentation Guide)

**Role:** Technical documentation specialist and information architect

**Expertise:**
- Professional technical writing standards
- Documentation structure and organization
- Information architecture and navigation
- User-focused content design
- Style guide enforcement

**Status:** Work in progress - Paige will evolve as documentation needs grow

**Integration:**
- Listed in agents-guide.md, glossary.md, FAQ
- Available for all phases (documentation is continuous)
- Can be customized like all BMM agents

## 🔧 Additional Changes

- Updated agent manifest with Paige
- Updated workflow manifest with new documentation workflows
- Fixed workflow-to-agent mappings across all guides
- Improved root README with clearer Quick Start section
- Better module structure explanations
- Enhanced community links with Discord channel names

**Total Impact:**
- 18 new/restructured documentation files
- 7000+ lines of professional technical documentation
- Complete navigation system with cross-references
- Clear learning paths for all user types
- Foundation for knowledge base (coming in beta)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-02 21:18:33 -06:00
Brian Madison
8a00f8ad70 feat: transform tech-spec workflow into intelligent Quick Spec Flow for Level 0-1
This major enhancement revolutionizes the tech-spec workflow from a basic template-filling exercise into a context-aware, intelligent planning system for rapid development of bug fixes and small features.

## Tech-Spec Workflow Transformation (11 files)

### Core Workflow Intelligence (instructions.md)
- Add standalone mode with interactive level/field-type detection
- Implement brownfield convention detection and user confirmation
- Integrate WebSearch for current framework versions and starter templates
- Add comprehensive context discovery (stack, patterns, dependencies)
- Implement auto-validation with quality scoring (always runs)
- Add UX/UI considerations capture for user-facing changes
- Add test framework detection and pattern analysis
- Transform from batch generation to living document approach

### Comprehensive Tech-Spec Template (tech-spec-template.md)
- Expand from 8 to 23 sections for complete context
- Add Context section (available docs, project stack, existing structure)
- Add Development Context (conventions, test framework, existing code)
- Add UX/UI Considerations section
- Add Developer Resources (file paths, key locations, testing)
- Add Integration Points and Configuration Changes
- All sections populated via template-output tags during workflow

### Enhanced Story Generation
- Level 0 (instructions-level0-story.md): Extract from comprehensive tech-spec
- Level 1 (instructions-level1-stories.md): Add story sequence validation, AC quality checks
- User Story Template: Add Dev Agent Record sections for implementation tracking
- Epic Template: Complete rewrite with proper structure and variables

### Validation & Quality (checklist.md)
- Add context gathering completeness checks
- Add definitiveness validation (no "use X or Y" statements)
- Add brownfield integration quality scoring
- Add stack alignment verification
- Add implementation readiness assessment
- Auto-generates validation report with scores

### Configuration (workflow.yaml)
- Add runtime variables: project_level, project_type, development_context, change_type, field_type
- Enable standalone operation without workflow-status.yaml
- Support both workflow-init integration and quick-start mode

## Phase 4 Integration (3 files)

### Story Context Workflow
- Add tech_spec to input_file_patterns (recognizes as authoritative source)
- Update instructions to prioritize tech-spec for Level 0-1 projects
- Tech-spec provides brownfield analysis, framework details, existing patterns

### Create Story Workflow
- Add tech_spec to input_file_patterns
- Enable story generation from tech-spec (alternative to PRD)
- Supports both Quick Spec Flow and traditional BMM flow

## Documentation (2 new files)

### Quick Spec Flow Guide (docs/quick-spec-flow.md)
- Comprehensive 595-line guide for Level 0-1 rapid development
- Complete user journey examples (bug fix, small feature)
- Context discovery explanation (stack, brownfield, conventions)
- Auto-validation details and benefits
- Integration with Phase 4 workflows
- Comparison: Quick Spec vs Full BMM
- Real-world examples and best practices

### Scale Adaptive System (docs/scale-adaptive-system.md)
- Complete 950-line technical guide to BMad Method's 5-level system
- Key terminology: Analysis, Tech-Spec, Epic-Tech-Spec, Architecture
- Level 0-4 workflows, planning docs, and progression
- Brownfield emphasis: document-project required first
- Tech-spec (upfront, Level 0-1) vs epic-tech-spec (during implementation, Level 2-4)
- Architecture document replaces tech-spec at Level 2+ (scales with complexity)
- Retrospectives after each epic in multi-epic projects
- Workflow path configuration reference

### README Updates
- Add Quick Spec Flow announcement with benefits
- Link to Scale Adaptive System documentation
- Clarify when to use Quick Spec Flow vs Full BMM

## Key Features

### Context-Aware Intelligence
- Auto-detects project stack from package.json, requirements.txt, etc.
- Analyzes brownfield codebases using document-project output
- Detects code conventions and confirms with user before proceeding
- Uses WebSearch for up-to-date framework info and starter templates

### Brownfield Respect
- Detects existing patterns (code style, test framework, naming conventions)
- Asks user for confirmation before applying conventions
- Adapts to existing code vs forcing changes
- References document-project analysis for comprehensive context

### Auto-Validation
- Always runs (not optional)
- Validates context gathering, definitiveness, brownfield integration
- Scores tech-spec quality and implementation readiness
- Validates story sequence for Level 1 (no forward dependencies)

### Living Document Approach
- Write to tech-spec continuously during discovery
- Progressive refinement vs batch generation
- Template variables populated via template-output tags in real-time

## Breaking Changes

None - all changes are additive and backward compatible.

## Impact

This transformation enables:
- Bug fixes and small features implemented in minutes vs hours
- Automatic stack detection and brownfield analysis
- Respect for existing conventions and patterns
- Current best practices via WebSearch integration
- Comprehensive context that can replace story-context for simple efforts
- Seamless integration with Phase 4 implementation workflows

Quick Spec Flow now provides a **true fast path from idea to implementation** for Level 0-1 projects while maintaining quality through auto-validation and comprehensive context gathering.
2025-11-02 08:17:23 -06:00
Brian Madison
3d4ea5ffd2 feat: add universal document sharding support with dual-strategy loading
Implement comprehensive document sharding system across all BMM workflows enabling 90%+ token savings for large multi-epic projects through selective loading optimization.

## Document Sharding System

### Core Features
- **Universal Support**: All 12 BMM workflows (Phase 1-4) handle both whole and sharded documents
- **Dual Loading Strategy**: Full Load (Phase 1-3) vs Selective Load (Phase 4)
- **Automatic Discovery**: Workflows detect format transparently (whole → sharded priority)
- **Efficiency Optimization**: 90%+ token reduction for 10+ epic projects in Phase 4

### Implementation Details

**Phase 1-3 Workflows (7 workflows) - Full Load Strategy:**
- product-brief, prd, gdd, create-ux-design, tech-spec, architecture, solutioning-gate-check
- Load entire sharded documents when present
- Transparent to user experience
- Better organization for large projects

**Phase 4 Workflows (5 workflows) - Selective Load Strategy:**
- sprint-planning (Full Load exception - needs all epics)
- epic-tech-context, create-story, story-context, code-review (Selective Load)
- Load ONLY the specific epic needed (e.g., epic-3.md for Epic 3 stories)
- Massive efficiency: Skip loading 9 other epics in 10-epic project

### Workflow Enhancements

**Added to all workflows:**
- `input_file_patterns` in workflow.yaml with wildcard discovery
- Document Discovery section in instructions.md
- Support for sharded index + section files
- Brownfield `docs/index.md` support

**Pattern standardization:**
```yaml
input_file_patterns:
  document:
    whole: "{output_folder}/*doc*.md"
    sharded: "{output_folder}/*doc*/index.md"
    sharded_single: "{output_folder}/*doc*/section-{{id}}.md"  # Selective load
```

### Retrospective Workflow Major Overhaul

Transformed retrospective into immersive, interactive team experience:

**Epic Discovery Priority (Fixed):**
- Priority 1: Check sprint-status.yaml for last completed epic
- Priority 2: Ask user directly
- Priority 3: Scan stories folder (last resort)

**New Capabilities:**
- Deep story analysis: Extract dev notes, mistakes, review feedback, lessons learned
- Previous retro integration: Track action items, verify lessons applied
- Significant change detection: Alert when discoveries require epic updates
- Intent-based facilitation: Natural conversation vs scripted phrases
- Party mode protocol: Clear speaker identification (Name (Role): dialogue)
- Team dynamics: Drama, disagreements, diverse perspectives, authentic conflict

**Structure:**
- 12 whole-number steps (no decimals)
- Highly interactive with constant user engagement
- Cross-references previous retro for accountability
- Synthesizes patterns across all stories
- Detects architectural assumption changes

## Documentation

**Created:**
- `docs/document-sharding-guide.md` - Comprehensive 300+ line guide
  - What is sharding, when to use it (token thresholds)
  - How sharding works (discovery system, loading strategies)
  - Using shard-doc tool
  - Full Load vs Selective Load patterns
  - Complete examples and troubleshooting
  - Custom workflow integration patterns

**Updated:**
- `README.md` - Added Document Sharding feature section
- `docs/index.md` - Added under Advanced Topics → Optimization
- `src/modules/bmm/workflows/README.md` - Added sharding section with usage
- `src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md` - Added complete implementation patterns for workflow builders

**Documentation levels:**
1. Overview (README.md) - Quick feature highlight
2. User guide (BMM workflows README) - Practical usage
3. Reference (document-sharding-guide.md) - Complete details
4. Builder guide (workflow-creation-guide.md) - Implementation patterns

## Efficiency Gains

**Example: 10-Epic Project**

Before sharding:
- epic-tech-context for Epic 3: Load all 10 epics (~50k tokens)
- create-story for Epic 3: Load all 10 epics (~50k tokens)
- story-context for Epic 3: Load all 10 epics (~50k tokens)

After sharding with selective load:
- epic-tech-context for Epic 3: Load Epic 3 only (~5k tokens) = 90% reduction
- create-story for Epic 3: Load Epic 3 only (~5k tokens) = 90% reduction
- story-context for Epic 3: Load Epic 3 only (~5k tokens) = 90% reduction

## Breaking Changes

None - fully backward compatible. Workflows work with existing whole documents.

## Files Changed

**Workflows Updated (25 files):**
- 7 Phase 1-3 workflows: Added full load sharding support
- 5 Phase 4 workflows: Added selective load sharding support
- 1 retrospective workflow: Complete overhaul with sharding support

**Documentation (5 files):**
- Created: document-sharding-guide.md
- Updated: README.md, docs/index.md, BMM workflows README, BMB workflow-creation-guide
- Removed: Old conversion report (obsolete)

## Future Extensibility

- BMB workflows now aware of sharding patterns
- Custom modules can easily implement sharding support
- Standard patterns documented for consistency
- No need to explain concept in future development
2025-11-02 00:13:33 -05:00
Brian Madison
f77babcd5e feat: major overhaul of BMM planning workflows with intent-driven discovery
This comprehensive update transforms the Product Brief and PRD workflows from rigid template-filling exercises into adaptive, context-aware discovery processes. Changes span workflow instructions, templates, agent configurations, and supporting infrastructure.

## Product Brief Workflow (96% audit compliance)

### Intent-Driven Facilitation
- Transform from linear Q&A to natural conversational discovery
- Adaptive questioning based on project context (hobby/startup/enterprise)
- Real-time document building instead of end-of-session generation
- Skill-level aware facilitation (expert/intermediate/beginner)
- Context detection from user responses to guide exploration depth

### Living Document Approach
- Continuous template updates throughout conversation
- Progressive refinement vs batch generation
- Template-output tags aligned with discovery flow
- Better variable mapping between instructions and template

### Enhanced Discovery Areas
- Problem exploration with context-appropriate probing
- Solution vision shaping based on user's mental model
- User understanding through storytelling vs demographics
- Success metrics tailored to project type
- Ruthless MVP scope management with feature prioritization

### Template Improvements
- Added context-aware conditional sections
- Better organization of optional vs required content
- Clearer structure for different project types
- Improved reference material handling

## PRD Workflow (improved from 65% to 85%+ compliance)

### Critical Fixes
- Add missing `date: system-generated` config variable
- Fix status file extension mismatch (.yaml not .md)
- Remove 38% bloat (unused technical_decisions variables)
- Add explicit template-output tags for runtime variables

### Scale-Adaptive Intelligence
- Project type detection (API/Web App/Mobile/SaaS/etc)
- Domain complexity mapping (14 domain types)
- Automatic requirement tailoring based on detected context
- CSV-driven project type and domain knowledge base

### Separated Epic Planning
- Move epic/story breakdown to dedicated child workflow
- Create create-epics-and-stories workflow for Phase 2
- Cleaner separation: PRD defines WHAT, epics define HOW
- Updated PM agent menu with new workflow triggers

### Enhanced Requirements Coverage
- Project-type specific requirement sections (endpoints, auth, platform)
- Domain-specific considerations (healthcare compliance, fintech security)
- UX principles with interaction patterns
- Non-functional requirements with integration needs
- Technical preferences capture

### Template Restructuring
- Separate PRD template from epic planning
- Context-aware conditional sections
- Better scale level indicators (L0-L4)
- Improved reference document handling
- Clearer success criteria sections

## Architecture Workflow Updates

### Template Enhancements
- Add domain complexity context support
- Better integration with PRD outputs
- Improved technical decision capture
- Enhanced system architecture sections

### Instruction Improvements
- Reference new domain-research workflow
- Better handling of PRD inputs
- Clearer architectural decision framework

## Agent Configuration Updates

### BMad Master Agent
- Fix workflow invocation instructions
- Better fuzzy matching guidance
- Clearer menu handler documentation
- Remove workflow invention warnings

### PM Agent
- Add create-prd trigger (renamed from 'prd')
- Add create-epics-and-stories workflow trigger
- Add validate-prd workflow trigger with checklist
- Better workflow status integration

### Game Designer Agent
- Rename triggers for consistency (create-game-brief, create-gdd)
- Align with PM agent naming conventions

## New Supporting Infrastructure

### Domain Research Workflow
- New discovery workflow for domain-specific research
- Complements product brief for complex domains
- Web research integration for domain insights

### Create Epics and Stories Workflow
- Dedicated epic/story breakdown process
- Separates planning (PRD) from decomposition
- Better Epic → Story → Task hierarchy
- Acceptance criteria generation

### Data Files
- project-types.csv: 12 project type definitions with requirements
- domain-complexity.csv: 14 domain types with complexity indicators

## Quality Improvements

### Validation & Compliance
- Product Brief: 96% BMAD v6 compliance (EXCELLENT rating)
- PRD: Improved from 65% to ~85% after critical fixes
- Zero bloat in Product Brief (0%)
- Reduced PRD bloat from 38% to ~15%

### Template Variable Mapping
- All template variables explicitly populated via template-output tags
- Runtime variables properly tracked
- Config variables consistently used
- Better separation of concerns

### Web Bundle Configuration
- Complete web_bundle sections for all workflows
- Proper child workflow references
- Data file inclusions (CSV files)
- Correct bmad/-relative paths

## Breaking Changes

### File Removals
- Delete src/modules/bmm/workflows/2-plan-workflows/prd/epics-template.md
  (replaced by create-epics-and-stories child workflow)

### Workflow Trigger Changes
- PM agent: 'prd' → 'create-prd'
- PM agent: 'gdd' → 'create-gdd'
- New: 'create-epics-and-stories'
- New: 'validate-prd'

## Impact

This update significantly improves the BMM module's ability to:
- Adapt to different project types and scales
- Guide users through discovery naturally vs mechanically
- Generate higher quality planning documents
- Support complex domains with specialized knowledge
- Scale from Level 0 quick changes to Level 4 enterprise projects

The workflows now feel like collaborative discovery sessions with an expert consultant rather than form-filling exercises.
2025-11-01 19:37:20 -05:00
Brian Madison
4f4b191e8f research will use the web more, use system date to understand what the read current date is. 2025-11-01 00:14:41 -05:00
Brian Madison
a1be5d7292 rename deep research options for chatgpt 2025-10-31 19:43:13 -05:00
Brian Madison
b056b42892 fixed installer note 2025-10-31 19:39:06 -05:00
Brian Madison
1c9fcbb73b shard doc uses npx command 2025-10-31 16:51:25 -05:00
Brian Madison
88e7ede452 remove voice hooks 2025-10-30 15:34:21 -05:00
Brian Madison
d4879d373b 6.0.0-alpha.3 2025-10-30 11:37:03 -05:00
Brian Madison
663b76a072 docs updates 2025-10-30 11:26:15 -05:00
Brian Madison
ec111972a0 some output should be improved and not run together in chat windows 2025-10-30 08:13:18 -05:00
Brian Madison
6d7f42dbec v6 greenfield quickstart guide 2025-10-29 22:39:13 -05:00
Brian Madison
519e2f3d59 manifest version comes from package 2025-10-29 20:04:04 -05:00
Brian Madison
d6036e18dd docs: fix v4 branch link in readme 2025-10-29 09:38:26 -05:00
Brian Madison
6d2b6810c2 fix: preserve user's cwd when running via npx 2025-10-29 09:31:38 -05:00
Brian Madison
06dab16a75 6.0.0-alpha.2 2025-10-29 09:14:03 -05:00
Brian Madison
5a70512a30 chore: remove version prompt from npx installer 2025-10-29 09:12:27 -05:00
Brian Madison
b05f4751d7 6.0.0-alpha.1 2025-10-29 08:35:02 -05:00
Brian Madison
b5262f78ee still alpha 2025-10-29 08:34:48 -05:00
Brian Madison
5ee57ea8df cleanup a few more items 2025-10-29 08:19:11 -05:00
Brian Madison
fd620d0183 marked sm menu items as optional that are optional 2025-10-28 23:47:48 -05:00
Brian Madison
ad8717845d cline workflows added to support slash commands 2025-10-28 23:16:48 -05:00
Brian Madison
503a394218 party mode fix 2025-10-28 22:52:03 -05:00
jheyworth
8376ca0ba2 fix: add CommonMark-compliant markdown formatting rules (#830)
* fix: add CommonMark-compliant markdown formatting rules to workflow

Problem:
--------
BMAD generates markdown that violates CommonMark specification by omitting
required blank lines around lists, tables, and code blocks. While GitHub's
renderer (GFM) handles this gracefully, strict parsers like Mac Markdown.app
break completely, rendering lists as plain text and losing document structure.

Solution:
---------
Add 6 mandatory markdown formatting rules to workflow.xml (line 73) that
enforce proper spacing and consistency:

1. ALWAYS add blank line before and after bullet lists
2. ALWAYS add blank line before and after numbered lists
3. ALWAYS add blank line before and after tables
4. ALWAYS add blank line before and after code blocks
5. Use - for bullets consistently (not * or +)
6. Use language identifier for code fences

Impact:
-------
- Makes BMAD output CommonMark compliant
- Ensures compatibility with ALL markdown parsers, not just GitHub
- Follows industry best practices for professional documentation
- Future-proofs against stricter parser implementations
- Zero content changes - only formatting improved

Testing:
--------
Comprehensive three-phase testing completed:
- Phase 1: Synthetic test validating fix mechanism
- Phase 2: Fresh install end-to-end test (API Gateway project)
- Phase 3: GitHub validation with visual proof

Results: 1,112 lines of formatting improvements, 0 content changes,
100% CommonMark compliance achieved.

Test Evidence:
--------------
Complete test repository with before/after comparison, Mac Markdown.app
screenshot proving the issue, and comprehensive documentation:
https://github.com/jheyworth/bmad-markdown-formatting-test

See TEST.md for full documentation, test methodology, and evidence.

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Remove TEST.md per maintainer feedback

As requested by @bmadcode - the test documentation was useful during review but is not needed in the repository. Testing evidence remains documented in the PR description and external test repository.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-28 22:27:48 -05:00
Brian Madison
44bc96fadc readme update 2025-10-28 22:27:23 -05:00
Brian Madison
7710d9941d document-project moved out of phase 1 to right below workflows and documents updated to clarify its not a phase-0 but a prereq and also a post project tool to use. 2025-10-28 22:21:13 -05:00
Brian Madison
1cfd58ebb1 installer for delete and replace fixed 2025-10-28 21:44:04 -05:00
Brian Madison
1c5b30f361 some v5 references lingered - change to v6 2025-10-28 20:32:08 -05:00
Brian Madison
d9c7980b1d remove unused csv columns from cis 2025-10-28 19:17:44 -05:00
Brian Madison
95b875792b remove tts again 2025-10-28 19:12:10 -05:00
Brian Madison
0ee4fa920a installer fixed to not add game assets to slash commands in some ides that read from the manifest. and fixed the manifest. 2025-10-28 19:09:43 -05:00
Brian Madison
e93b208902 file cleanup 2025-10-28 17:22:31 -05:00
Brian Madison
3fff30ca61 opencode moved agents back to agent folder 2025-10-28 17:18:53 -05:00
Brian Madison
ee58586f39 installer improvements 2025-10-28 12:47:45 -05:00
Brian Madison
ed3603f7b2 vast improvements to create story, review story, draft story checklist validation, sm menu items and dev agent menu items fixed 2025-10-28 10:03:19 -05:00
Brian Madison
0354d1ae45 story review was missing detailed instructions to review AC and task adherance. 2025-10-28 08:51:58 -05:00
Brian Madison
0dab278e7b story-review renamed code-review and dev-agent performs this 2025-10-28 08:30:44 -05:00
Brian Madison
66c66f602d all workflows can optionally run without a workflow 2025-10-27 23:51:22 -05:00
Brian Madison
7ad841964d installer for bmm includes option to include game assets or not when adding to a project. 2025-10-27 22:38:34 -05:00
Brian Madison
f55e822338 brownfield guide draft 2025-10-27 21:18:55 -05:00
Brian Madison
24a2271520 update open items list 2025-10-27 18:27:10 -05:00
Brian Madison
a484b9975c claude code flattened commands 2025-10-27 15:18:22 -05:00
Brian Madison
913ec47123 fix: CSV column mismatch when upgrading manifest schemas
When preserving CSV rows from existing manifest files during module updates,
rows from older schema versions (without the 'standalone' column) were being
added to CSVs with new schema headers, causing "Invalid Record Length" errors
during parsing.

Added schema upgrade logic to detect old column structure and upgrade preserved
rows by adding missing columns with appropriate default values. This ensures all
CSV rows match the header column count, fixing installation errors.

Fixes column count mismatch in:
- workflow-manifest.csv (added standalone column)
- task-manifest.csv (added standalone column)
- tool-manifest.csv (added standalone column)
- agent-manifest.csv (schema validation for future-proofing)
2025-10-27 15:00:57 -05:00
Brian Madison
8ed721d029 npx with version selector 2025-10-26 23:42:56 -05:00
Brian Madison
334e24823a doc updates 2025-10-26 23:25:48 -05:00
Brian Madison
b753fb293b workflows tasks and tools can be configured wether they are able to be run standalone from agents with ide commands 2025-10-26 20:06:34 -05:00
Brian Madison
63ef5b7bc6 installer fixes 2025-10-26 19:38:38 -05:00
Brian Madison
1cb88728e8 installer fixes 2025-10-26 17:04:27 -05:00
Brian Madison
8d81edf847 install quick updates 2025-10-26 16:17:37 -05:00
Brian Madison
0067fb4880 path fixes, documentation updates, md-xplodr added to core tools 2025-10-26 15:40:43 -05:00
Cameron Pitt
8220c819e6 Add Opencode IDE installer (#820)
- Added docs/ide-info/opencode.md
- Added tool/cli/installers/lib/ide/opencode.js
- Modified tools/installers/lib/ide/core/detector.js to include
detection for opencode command dir
- Modified tools/cli/platform-codes.yaml to include opencode config
- Modified tools/cli/installers/lib/ide/workflow-command-template.md to
include frontmatter with description as opencode requires this for
commands and adding it to the template by default does not seem to
impact other IDEs
- Modified src/modules/bmm/workflows/workflow-status/workflow.yaml
description so that it properly escapes quotes when interpolated in the
teplate
2025-10-26 11:16:57 -05:00
Brian Madison
b7e6bfcde5 a few more instruction cleanup items 2025-10-25 23:57:27 -05:00
Brian Madison
bfd49faf2d tech context improved 2025-10-25 23:29:41 -05:00
Brian Madison
52b8edb01d phase 4 more workflow cleanup 2025-10-25 19:25:28 -05:00
Brian Madison
061b7d94c4 status normalization 2025-10-25 15:41:13 -05:00
Brian Madison
5762941321 better status loading and updating for phase 4 2025-10-25 14:26:30 -05:00
Brian Madison
994f251687 workflow phase 4 only has single sprint planning item in it now 2025-10-25 10:44:46 -05:00
Brian Madison
cf13e81dd5 sprint plan clearer comments 2025-10-25 00:30:49 -05:00
Brian Madison
92bff333b1 plan-project gone, and all level 1-3 workflows are dynamic from the workflow in suggesting what is next 2025-10-24 23:16:08 -05:00
Brian Madison
f37c960a4d validation tasks added 2025-10-23 23:20:48 -05:00
Brian Madison
2d297c82da fix create-design workflow path 2025-10-23 15:58:05 -05:00
Brian Madison
a175f46f1b create-ux-design refactor 2025-10-23 14:20:13 -05:00
Brian Madison
44e09e4487 ux expert -> ux designer 2025-10-22 16:58:18 -05:00
Brian Madison
be5556bf42 checks checked 2025-10-22 15:40:51 -05:00
Brian Madison
be5b06f55e check alignment 2025-10-22 12:36:39 -05:00
Brian Madison
c8776aa9ac inline tag reference updtges 2025-10-21 23:48:35 -05:00
Brian Madison
ddaefa3284 use sprint plan for al workflow level 4 implementations 2025-10-21 23:03:46 -05:00
Brian Madison
abaa24513a sprint status helpers, remove workflow integration from phase 4 items in prep of using sprint-planning status 2025-10-21 22:25:26 -05:00
Brian Madison
71330b6aac updates to the paths 2025-10-21 20:37:59 -05:00
Brian Madison
949d818db8 sprint status story location relative 2025-10-21 18:41:40 -05:00
Brian Madison
1b1947d240 sprint-planning placeholder for future integration with jira linear and trello 2025-10-21 18:13:34 -05:00
Brian Madison
419043e704 sprint planning 2025-10-21 08:24:02 -05:00
Brian Madison
b8db0806ed architecture name standardization 2025-10-20 19:01:18 -05:00
Tiki
60475ac6f8 feat(tools/cli): Refactor Qwen IDE configuration logic to support modular command structure (#762)
- Unify BMad directory name from 'BMad' to lowercase 'bmad'
- Use shared utility functions [getAgentsFromBmad] and [getTasksFromBmad] to fetch agents and tasks
- Create independent subdirectory structures (agents, tasks) for each module
- Update file writing paths to store TOML files by module classification
- Remove legacy QWEN.md merged documentation generation logic
- Add TOML metadata header support (not available in previous versions)
- Clean up old version configuration directories (including uppercase BMad and bmad-method)
2025-10-20 08:34:42 -05:00
Alex Verkhovsky
69d1f75435 fix: remove empty tasks directories from Claude Code installer (#776)
Previously, the installer created empty tasks/ directories under
.claude/commands/bmad/{module}/ and attempted to copy task files.
Since getTasksFromDir() filters for .md files only and all actual
tasks are .xml files, these directories remained empty.

Tasks are utility files referenced by agents via exec attributes
(e.g., exec="{project-root}/bmad/core/tasks/workflow.xml") and
should remain in the bmad/ directory - they are not slash commands.

Changes:
- Removed tasks directory creation in module setup
- Removed tasks copying logic (15 lines)
- Removed taskCount from console output
- Removed tasks property from return value
- Removed unused getTasksFromBmad and getTasksFromDir imports
- Updated comment to clarify agents-only installation

Verified: No tasks/ directories created in .claude/commands/bmad/
while task files remain accessible in bmad/core/tasks/

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-20 07:20:36 -05:00
Jrakru
c2b3e797e7 fix(retrospective): align SM ownership in workflow paths and handoff (#770) 2025-10-20 07:19:11 -05:00
Alex Verkhovsky
31666c1f0f feat: add agent schema validation with comprehensive testing (#774)
Introduce automated validation for agent YAML files using Zod to ensure
schema compliance across all agent definitions. This feature validates
17 agent files across core and module directories, catching structural
errors and maintaining consistency.

Schema Validation (tools/schema/agent.js):
- Zod-based schema validating metadata, persona, menu, prompts, and critical actions
- Module-aware validation: module field required for src/modules/**/agents/,
  optional for src/core/agents/
- Enforces kebab-case unique triggers and at least one command target per menu item
- Validates persona.principles as array (not string)
- Comprehensive refinements for data integrity

CLI Validator (tools/validate-agent-schema.js):
- Scans src/{core,modules/*}/agents/*.agent.yaml
- Parses with js-yaml and validates using Zod schema
- Reports detailed errors with file paths and field paths
- Exits 1 on failures, 0 on success
- Accepts optional project_root parameter for testing

Testing (679 lines across 3 test files):
- test/test-cli-integration.sh: CLI behavior and error handling tests
- test/unit-test-schema.js: Direct schema validation unit tests
- test/test-agent-schema.js: Comprehensive fixture-based tests
- 50 test fixtures covering valid and invalid scenarios
- ESLint configured to support CommonJS test files
- Prettier configured to ignore intentionally broken fixtures

CI Integration (.github/workflows/lint.yaml):
- Renamed from format-check.yaml to lint.yaml
- Added schema-validation job running npm run validate:schemas
- Runs in parallel with prettier and eslint jobs
- Validates on all pull requests

Data Cleanup:
- Fixed src/core/agents/bmad-master.agent.yaml: converted persona.principles
  from string to array format

Documentation:
- Updated schema-classification.md with validation section
- Documents validator usage, enforcement rules, and CI integration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-20 07:14:50 -05:00
Brian Madison
2a6eb71612 massive architecture creation overhaul 2025-10-19 23:28:38 -05:00
Brian Madison
d3402c3132 architecture reorganization in preparation of architecture solutioning rework 2025-10-19 15:28:33 -05:00
Brian Madison
0a048f2ccc installer updates, bmd module added and moved out of src, created a plan for module installation tool for custom modules, minor flow improvements 2025-10-19 11:59:27 -05:00
Brian Madison
eb9a214115 readme updated 2025-10-18 12:19:47 -05:00
Brian Madison
940cc15751 cli installer bundler documentation added 2025-10-18 10:20:29 -05:00
Brian Madison
c0a2c55267 clearer codex install note 2025-10-18 09:41:38 -05:00
Brian Madison
a1fc8da03c workflow init added to analyst pm and game agents 2025-10-18 01:34:03 -05:00
1066 changed files with 102062 additions and 107521 deletions

View File

@@ -1,65 +0,0 @@
<!-- Powered by BMAD-CORE™ -->
# BMad Builder
```xml
<agent id="bmad/bmb/agents/bmad-builder.md" name="BMad Builder" title="BMad Builder" icon="🧙">
<activation critical="MANDATORY">
<step n="1">Load persona from this current agent file (already in context)</step>
<step n="2">🚨 IMMEDIATE ACTION REQUIRED - BEFORE ANY OUTPUT:
- Load and read {project-root}/bmad/bmb/config.yaml NOW
- Store ALL fields as session variables: {user_name}, {communication_language}, {output_folder}
- VERIFY: If config not loaded, STOP and report error to user
- DO NOT PROCEED to step 3 until config is successfully loaded and variables stored</step>
<step n="3">Remember: user's name is {user_name}</step>
<step n="4">Show greeting using {user_name} from config, communicate in {communication_language}, then display numbered list of
ALL menu items from menu section</step>
<step n="5">STOP and WAIT for user input - do NOT execute menu items automatically - accept number or trigger text</step>
<step n="6">On user input: Number → execute menu item[n] | Text → case-insensitive substring match | Multiple matches → ask user
to clarify | No match → show "Not recognized"</step>
<step n="7">When executing a menu item: Check menu-handlers section below - extract any attributes from the selected menu item
(workflow, exec, tmpl, data, action, validate-workflow) and follow the corresponding handler instructions</step>
<menu-handlers>
<handlers>
<handler type="workflow">
When menu item has: workflow="path/to/workflow.yaml"
1. CRITICAL: Always LOAD {project-root}/bmad/core/tasks/workflow.xml
2. Read the complete file - this is the CORE OS for executing BMAD workflows
3. Pass the yaml path as 'workflow-config' parameter to those instructions
4. Execute workflow.xml instructions precisely following all steps
5. Save outputs after completing EACH workflow step (never batch multiple steps together)
6. If workflow.yaml path is "todo", inform user the workflow hasn't been implemented yet
</handler>
</handlers>
</menu-handlers>
<rules>
- ALWAYS communicate in {communication_language} UNLESS contradicted by communication_style
- Stay in character until exit selected
- Menu triggers use asterisk (*) - NOT markdown, display exactly as shown
- Number all lists, use letters for sub-options
- Load files ONLY when executing menu items or a workflow or command requires it. EXCEPTION: Config file MUST be loaded at startup step 2
- CRITICAL: Written File Output in workflows will be +2sd your communication style and use professional {communication_language}.
</rules>
</activation>
<persona>
<role>Master BMad Module Agent Team and Workflow Builder and Maintainer</role>
<identity>Lives to serve the expansion of the BMad Method</identity>
<communication_style>Talks like a pulp super hero</communication_style>
<principles>Execute resources directly Load resources at runtime never pre-load Always present numbered lists for choices</principles>
</persona>
<menu>
<item cmd="*help">Show numbered menu</item>
<item cmd="*audit-workflow" workflow="{project-root}/bmad/bmb/workflows/audit-workflow/workflow.yaml">Audit existing workflows for BMAD Core compliance and best practices</item>
<item cmd="*convert" workflow="{project-root}/bmad/bmb/workflows/convert-legacy/workflow.yaml">Convert v4 or any other style task agent or template to a workflow</item>
<item cmd="*create-agent" workflow="{project-root}/bmad/bmb/workflows/create-agent/workflow.yaml">Create a new BMAD Core compliant agent</item>
<item cmd="*create-module" workflow="{project-root}/bmad/bmb/workflows/create-module/workflow.yaml">Create a complete BMAD module (brainstorm → brief → build with agents and workflows)</item>
<item cmd="*create-workflow" workflow="{project-root}/bmad/bmb/workflows/create-workflow/workflow.yaml">Create a new BMAD Core workflow with proper structure</item>
<item cmd="*edit-workflow" workflow="{project-root}/bmad/bmb/workflows/edit-workflow/workflow.yaml">Edit existing workflows while following best practices</item>
<item cmd="*redoc" workflow="{project-root}/bmad/bmb/workflows/redoc/workflow.yaml">Create or update module documentation</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```

View File

@@ -1,57 +0,0 @@
# BMB Workflows
## Available Workflows in bmb
**audit-workflow**
- Path: `bmad/bmb/workflows/audit-workflow/workflow.yaml`
- Comprehensive workflow quality audit - validates structure, config standards, variable usage, bloat detection, and web_bundle completeness. Performs deep analysis of workflow.yaml, instructions.md, template.md, and web_bundle configuration against BMAD v6 standards.
**convert-legacy**
- Path: `bmad/bmb/workflows/convert-legacy/workflow.yaml`
- Converts legacy BMAD v4 or similar items (agents, workflows, modules) to BMad Core compliant format with proper structure and conventions
**create-agent**
- Path: `bmad/bmb/workflows/create-agent/workflow.yaml`
- Interactive workflow to build BMAD Core compliant agents (YAML source compiled to .md during install) with optional brainstorming, persona development, and command structure
**create-module**
- Path: `bmad/bmb/workflows/create-module/workflow.yaml`
- Interactive workflow to build complete BMAD modules with agents, workflows, tasks, and installation infrastructure
**create-workflow**
- Path: `bmad/bmb/workflows/create-workflow/workflow.yaml`
- Interactive workflow builder that guides creation of new BMAD workflows with proper structure and validation for optimal human-AI collaboration. Includes optional brainstorming phase for workflow ideas and design.
**edit-workflow**
- Path: `bmad/bmb/workflows/edit-workflow/workflow.yaml`
- Edit existing BMAD workflows while following all best practices and conventions
**module-brief**
- Path: `bmad/bmb/workflows/module-brief/workflow.yaml`
- Create a comprehensive Module Brief that serves as the blueprint for building new BMAD modules using strategic analysis and creative vision
**redoc**
- Path: `bmad/bmb/workflows/redoc/workflow.yaml`
- Autonomous documentation system that maintains module, workflow, and agent documentation using a reverse-tree approach (leaf folders first, then parents). Understands BMAD conventions and produces technical writer quality output.
## Execution
When running any workflow:
1. LOAD {project-root}/bmad/core/tasks/workflow.xml
2. Pass the workflow path as 'workflow-config' parameter
3. Follow workflow.xml instructions EXACTLY
4. Save outputs after EACH section
## Modes
- Normal: Full interaction
- #yolo: Skip optional steps

View File

@@ -1,11 +0,0 @@
# audit-workflow
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/bmb/workflows/audit-workflow/workflow.yaml
3. Pass the yaml path bmad/bmb/workflows/audit-workflow/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,11 +0,0 @@
# convert-legacy
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/bmb/workflows/convert-legacy/workflow.yaml
3. Pass the yaml path bmad/bmb/workflows/convert-legacy/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,11 +0,0 @@
# create-agent
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/bmb/workflows/create-agent/workflow.yaml
3. Pass the yaml path bmad/bmb/workflows/create-agent/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,11 +0,0 @@
# create-module
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/bmb/workflows/create-module/workflow.yaml
3. Pass the yaml path bmad/bmb/workflows/create-module/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,11 +0,0 @@
# create-workflow
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/bmb/workflows/create-workflow/workflow.yaml
3. Pass the yaml path bmad/bmb/workflows/create-workflow/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,11 +0,0 @@
# edit-workflow
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/bmb/workflows/edit-workflow/workflow.yaml
3. Pass the yaml path bmad/bmb/workflows/edit-workflow/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,11 +0,0 @@
# module-brief
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/bmb/workflows/module-brief/workflow.yaml
3. Pass the yaml path bmad/bmb/workflows/module-brief/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,11 +0,0 @@
# redoc
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/bmb/workflows/redoc/workflow.yaml
3. Pass the yaml path bmad/bmb/workflows/redoc/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,68 +0,0 @@
<!-- Powered by BMAD-CORE™ -->
# BMad Master Executor, Knowledge Custodian, and Workflow Orchestrator
```xml
<agent id="bmad/core/agents/bmad-master.md" name="BMad Master" title="BMad Master Executor, Knowledge Custodian, and Workflow Orchestrator" icon="🧙">
<activation critical="MANDATORY">
<step n="1">Load persona from this current agent file (already in context)</step>
<step n="2">🚨 IMMEDIATE ACTION REQUIRED - BEFORE ANY OUTPUT:
- Load and read {project-root}/bmad/core/config.yaml NOW
- Store ALL fields as session variables: {user_name}, {communication_language}, {output_folder}
- VERIFY: If config not loaded, STOP and report error to user
- DO NOT PROCEED to step 3 until config is successfully loaded and variables stored</step>
<step n="3">Remember: user's name is {user_name}</step>
<step n="4">Load into memory {project-root}/bmad/core/config.yaml and set variable project_name, output_folder, user_name, communication_language</step>
<step n="5">Remember the users name is {user_name}</step>
<step n="6">ALWAYS communicate in {communication_language}</step>
<step n="7">Show greeting using {user_name} from config, communicate in {communication_language}, then display numbered list of
ALL menu items from menu section</step>
<step n="8">STOP and WAIT for user input - do NOT execute menu items automatically - accept number or trigger text</step>
<step n="9">On user input: Number → execute menu item[n] | Text → case-insensitive substring match | Multiple matches → ask user
to clarify | No match → show "Not recognized"</step>
<step n="10">When executing a menu item: Check menu-handlers section below - extract any attributes from the selected menu item
(workflow, exec, tmpl, data, action, validate-workflow) and follow the corresponding handler instructions</step>
<menu-handlers>
<handlers>
<handler type="action">
When menu item has: action="#id" → Find prompt with id="id" in current agent XML, execute its content
When menu item has: action="text" → Execute the text directly as an inline instruction
</handler>
<handler type="workflow">
When menu item has: workflow="path/to/workflow.yaml"
1. CRITICAL: Always LOAD {project-root}/bmad/core/tasks/workflow.xml
2. Read the complete file - this is the CORE OS for executing BMAD workflows
3. Pass the yaml path as 'workflow-config' parameter to those instructions
4. Execute workflow.xml instructions precisely following all steps
5. Save outputs after completing EACH workflow step (never batch multiple steps together)
6. If workflow.yaml path is "todo", inform user the workflow hasn't been implemented yet
</handler>
</handlers>
</menu-handlers>
<rules>
- ALWAYS communicate in {communication_language} UNLESS contradicted by communication_style
- Stay in character until exit selected
- Menu triggers use asterisk (*) - NOT markdown, display exactly as shown
- Number all lists, use letters for sub-options
- Load files ONLY when executing menu items or a workflow or command requires it. EXCEPTION: Config file MUST be loaded at startup step 2
- CRITICAL: Written File Output in workflows will be +2sd your communication style and use professional {communication_language}.
</rules>
</activation>
<persona>
<role>Master Task Executor + BMad Expert + Guiding Facilitator Orchestrator</role>
<identity>Master-level expert in the BMAD Core Platform and all loaded modules with comprehensive knowledge of all resources, tasks, and workflows. Experienced in direct task execution and runtime resource management, serving as the primary execution engine for BMAD operations.</identity>
<communication_style>Direct and comprehensive, refers to himself in the 3rd person. Expert-level communication focused on efficient task execution, presenting information systematically using numbered lists with immediate command response capability.</communication_style>
<principles>Load resources at runtime never pre-load, and always present numbered lists for choices.</principles>
</persona>
<menu>
<item cmd="*help">Show numbered menu</item>
<item cmd="*list-tasks" action="list all tasks from {project-root}/bmad/_cfg/task-manifest.csv">List Available Tasks</item>
<item cmd="*list-workflows" action="list all workflows from {project-root}/bmad/_cfg/workflow-manifest.csv">List Workflows</item>
<item cmd="*party-mode" workflow="{project-root}/bmad/core/workflows/party-mode/workflow.yaml">Group chat with all agents</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```

View File

@@ -1,27 +0,0 @@
# CORE Workflows
## Available Workflows in core
**brainstorming**
- Path: `bmad/core/workflows/brainstorming/workflow.yaml`
- Facilitate interactive brainstorming sessions using diverse creative techniques. This workflow facilitates interactive brainstorming sessions using diverse creative techniques. The session is highly interactive, with the AI acting as a facilitator to guide the user through various ideation methods to generate and refine creative solutions.
**party-mode**
- Path: `bmad/core/workflows/party-mode/workflow.yaml`
- Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations
## Execution
When running any workflow:
1. LOAD {project-root}/bmad/core/tasks/workflow.xml
2. Pass the workflow path as 'workflow-config' parameter
3. Follow workflow.xml instructions EXACTLY
4. Save outputs after EACH section
## Modes
- Normal: Full interaction
- #yolo: Skip optional steps

View File

@@ -1,11 +0,0 @@
# brainstorming
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/core/workflows/brainstorming/workflow.yaml
3. Pass the yaml path bmad/core/workflows/brainstorming/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -1,11 +0,0 @@
# party-mode
IT IS CRITICAL THAT YOU FOLLOW THESE STEPS - while staying in character as the current agent persona you may have loaded:
<steps CRITICAL="TRUE">
1. Always LOAD the FULL {project-root}/bmad/core/tasks/workflow.xml
2. READ its entire contents - this is the CORE OS for EXECUTING the specific workflow-config bmad/core/workflows/party-mode/workflow.yaml
3. Pass the yaml path bmad/core/workflows/party-mode/workflow.yaml as 'workflow-config' parameter to the workflow.xml instructions
4. Follow workflow.xml instructions EXACTLY as written
5. Save outputs after EACH section when generating any documents from templates
</steps>

View File

@@ -8,7 +8,7 @@ assignees: ''
# Idea: [Replace with a clear, actionable title]
### PASS Framework
## PASS Framework
**P**roblem:
@@ -92,7 +92,7 @@ Fix issues and add features.
_Why this is poor: Too vague, no specific problem identified, no measurable success criteria, unclear scope_
</details>****
</details>
---

15
.github/scripts/discord-helpers.sh vendored Normal file
View File

@@ -0,0 +1,15 @@
#!/bin/bash
# Discord notification helper functions
# Escape markdown special chars and @mentions for safe Discord display
# Bracket expression: ] must be first, then other chars. In POSIX bracket expr, \ is literal.
esc() { sed -e 's/[][\*_()~`>]/\\&/g' -e 's/@/@ /g'; }
# Truncate to $1 chars (or 80 if wall-of-text with <3 spaces)
trunc() {
local max=$1
local txt=$(tr '\n\r' ' ' | cut -c1-"$max")
local spaces=$(printf '%s' "$txt" | tr -cd ' ' | wc -c)
[ "$spaces" -lt 3 ] && [ ${#txt} -gt 80 ] && txt=$(printf '%s' "$txt" | cut -c1-80)
printf '%s' "$txt"
}

329
.github/workflows/bundle-latest.yaml vendored Normal file
View File

@@ -0,0 +1,329 @@
name: Publish Latest Bundles
on:
push:
branches: [main]
workflow_dispatch: {}
permissions:
contents: write
jobs:
bundle-and-publish:
runs-on: ubuntu-latest
steps:
- name: Checkout BMAD-METHOD
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: npm
- name: Install dependencies
run: npm ci
- name: Generate bundles
run: npm run bundle
- name: Create bundle distribution structure
run: |
mkdir -p dist/bundles
# Copy web bundles (XML files from npm run bundle output)
cp -r web-bundles/* dist/bundles/ 2>/dev/null || true
# Verify bundles were copied (fail if completely empty)
if [ ! "$(ls -A dist/bundles)" ]; then
echo "❌ ERROR: No bundles found in dist/bundles/"
echo "This likely means 'npm run bundle' failed or bundles weren't generated"
exit 1
fi
# Count bundles per module
for module in bmm bmb cis bmgd; do
if [ -d "dist/bundles/$module/agents" ]; then
COUNT=$(find dist/bundles/$module/agents -name '*.xml' 2>/dev/null | wc -l)
echo "✅ $module: $COUNT agent bundles"
fi
done
# Generate index.html for each agents directory (fixes directory browsing)
for module in bmm bmb cis bmgd; do
if [ -d "dist/bundles/$module/agents" ]; then
cat > "dist/bundles/$module/agents/index.html" << 'DIREOF'
<!DOCTYPE html>
<html>
<head>
<title>MODULE_NAME Agents</title>
<style>
body { font-family: system-ui; max-width: 800px; margin: 50px auto; padding: 20px; }
li { margin: 10px 0; }
a { color: #0066cc; text-decoration: none; }
a:hover { text-decoration: underline; }
</style>
</head>
<body>
<h1>MODULE_NAME Agents</h1>
<ul>
AGENT_LINKS
</ul>
<p><a href="../../">← Back to all modules</a></p>
</body>
</html>
DIREOF
# Replace MODULE_NAME
sed -i "s/MODULE_NAME/${module^^}/g" "dist/bundles/$module/agents/index.html"
# Generate agent links
LINKS=""
for file in dist/bundles/$module/agents/*.xml; do
if [ -f "$file" ]; then
name=$(basename "$file" .xml)
LINKS="$LINKS <li><a href=\"./$name.xml\">$name</a></li>\n"
fi
done
sed -i "s|AGENT_LINKS|$LINKS|" "dist/bundles/$module/agents/index.html"
fi
done
# Create zip archives per module
mkdir -p dist/bundles/downloads
for module in bmm bmb cis bmgd; do
if [ -d "dist/bundles/$module" ]; then
(cd dist/bundles && zip -r downloads/$module-agents.zip $module/)
echo "✅ Created $module-agents.zip"
fi
done
# Generate index.html dynamically based on actual bundles
TIMESTAMP=$(date -u +"%Y-%m-%d %H:%M UTC")
COMMIT_SHA=$(git rev-parse --short HEAD)
# Function to generate agent links for a module
generate_agent_links() {
local module=$1
local agent_dir="dist/bundles/$module/agents"
if [ ! -d "$agent_dir" ]; then
echo ""
return
fi
local links=""
local count=0
# Find all XML files and generate links
for xml_file in "$agent_dir"/*.xml; do
if [ -f "$xml_file" ]; then
local agent_name=$(basename "$xml_file" .xml)
# Convert filename to display name (pm -> PM, tech-writer -> Tech Writer)
local display_name=$(echo "$agent_name" | sed 's/-/ /g' | awk '{for(i=1;i<=NF;i++) {if(length($i)==2) $i=toupper($i); else $i=toupper(substr($i,1,1)) tolower(substr($i,2));}}1')
if [ $count -gt 0 ]; then
links="$links | "
fi
links="$links<a href=\"./$module/agents/$agent_name.xml\">$display_name</a>"
count=$((count + 1))
fi
done
echo "$links"
}
# Generate agent links for each module
BMM_LINKS=$(generate_agent_links "bmm")
CIS_LINKS=$(generate_agent_links "cis")
BMGD_LINKS=$(generate_agent_links "bmgd")
# Count agents for bulk downloads
BMM_COUNT=$(find dist/bundles/bmm/agents -name '*.xml' 2>/dev/null | wc -l | tr -d ' ')
CIS_COUNT=$(find dist/bundles/cis/agents -name '*.xml' 2>/dev/null | wc -l | tr -d ' ')
BMGD_COUNT=$(find dist/bundles/bmgd/agents -name '*.xml' 2>/dev/null | wc -l | tr -d ' ')
# Create index.html
cat > dist/bundles/index.html << EOF
<!DOCTYPE html>
<html>
<head>
<title>BMAD Bundles - Latest</title>
<meta charset="utf-8">
<style>
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; max-width: 800px; margin: 50px auto; padding: 20px; }
h1 { color: #333; }
.platform { margin: 30px 0; padding: 20px; background: #f5f5f5; border-radius: 8px; }
.module { margin: 15px 0; }
a { color: #0066cc; text-decoration: none; }
a:hover { text-decoration: underline; }
code { background: #e0e0e0; padding: 2px 6px; border-radius: 3px; }
.warning { background: #fff3cd; padding: 15px; border-left: 4px solid #ffc107; margin: 20px 0; }
</style>
</head>
<body>
<h1>BMAD Web Bundles - Latest (Main Branch)</h1>
<div class="warning">
<strong>⚠️ Latest Build (Unstable)</strong><br>
These bundles are built from the latest main branch commit. For stable releases, visit
<a href="https://github.com/bmad-code-org/BMAD-METHOD/releases/latest">GitHub Releases</a>.
</div>
<p><strong>Last Updated:</strong> <code>$TIMESTAMP</code></p>
<p><strong>Commit:</strong> <code>$COMMIT_SHA</code></p>
<h2>Available Modules</h2>
EOF
# Add BMM section if agents exist
if [ -n "$BMM_LINKS" ]; then
cat >> dist/bundles/index.html << EOF
<div class="platform">
<h3>BMM (BMad Method)</h3>
<div class="module">
$BMM_LINKS<br>
📁 <a href="./bmm/agents/">Browse All</a> | 📦 <a href="./downloads/bmm-agents.zip">Download Zip</a>
</div>
</div>
EOF
fi
# Add CIS section if agents exist
if [ -n "$CIS_LINKS" ]; then
cat >> dist/bundles/index.html << EOF
<div class="platform">
<h3>CIS (Creative Intelligence Suite)</h3>
<div class="module">
$CIS_LINKS<br>
📁 <a href="./cis/agents/">Browse Agents</a> | 📦 <a href="./downloads/cis-agents.zip">Download Zip</a>
</div>
</div>
EOF
fi
# Add BMGD section if agents exist
if [ -n "$BMGD_LINKS" ]; then
cat >> dist/bundles/index.html << EOF
<div class="platform">
<h3>BMGD (Game Development)</h3>
<div class="module">
$BMGD_LINKS<br>
📁 <a href="./bmgd/agents/">Browse Agents</a> | 📦 <a href="./downloads/bmgd-agents.zip">Download Zip</a>
</div>
</div>
EOF
fi
# Add bulk downloads section
cat >> dist/bundles/index.html << EOF
<h2>Bulk Downloads</h2>
<p>Download all agents for a module as a zip archive:</p>
<ul>
EOF
[ "$BMM_COUNT" -gt 0 ] && echo " <li><a href=\"./downloads/bmm-agents.zip\">📦 BMM Agents (all $BMM_COUNT)</a></li>" >> dist/bundles/index.html
[ "$CIS_COUNT" -gt 0 ] && echo " <li><a href=\"./downloads/cis-agents.zip\">📦 CIS Agents (all $CIS_COUNT)</a></li>" >> dist/bundles/index.html
[ "$BMGD_COUNT" -gt 0 ] && echo " <li><a href=\"./downloads/bmgd-agents.zip\">📦 BMGD Agents (all $BMGD_COUNT)</a></li>" >> dist/bundles/index.html
# Close HTML
cat >> dist/bundles/index.html << 'EOF'
</ul>
<h2>Usage</h2>
<p>Copy the raw XML URL and paste into your AI platform's custom instructions or project knowledge.</p>
<p>Example: <code>https://raw.githubusercontent.com/bmad-code-org/bmad-bundles/main/bmm/agents/pm.xml</code></p>
<h2>Installation (Recommended)</h2>
<p>For full IDE integration with slash commands, use the installer:</p>
<pre>npx bmad-method@alpha install</pre>
<footer style="margin-top: 50px; padding-top: 20px; border-top: 1px solid #ccc; color: #666;">
<p>Built from <a href="https://github.com/bmad-code-org/BMAD-METHOD">BMAD-METHOD</a> repository.</p>
</footer>
</body>
</html>
EOF
- name: Checkout bmad-bundles repo
uses: actions/checkout@v4
with:
repository: bmad-code-org/bmad-bundles
path: bmad-bundles
token: ${{ secrets.BUNDLES_PAT }}
- name: Update bundles
run: |
# Clear old bundles
rm -rf bmad-bundles/*
# Copy new bundles
cp -r dist/bundles/* bmad-bundles/
# Create .nojekyll for GitHub Pages
touch bmad-bundles/.nojekyll
# Create README
cat > bmad-bundles/README.md << 'EOF'
# BMAD Web Bundles (Latest)
**⚠️ Unstable Build**: These bundles are auto-generated from the latest `main` branch.
For stable releases, visit [GitHub Releases](https://github.com/bmad-code-org/BMAD-METHOD/releases/latest).
## Usage
Copy raw markdown URLs for use in AI platforms:
- Claude Code: `https://raw.githubusercontent.com/bmad-code-org/bmad-bundles/main/claude-code/sub-agents/{agent}.md`
- ChatGPT: `https://raw.githubusercontent.com/bmad-code-org/bmad-bundles/main/chatgpt/sub-agents/{agent}.md`
- Gemini: `https://raw.githubusercontent.com/bmad-code-org/bmad-bundles/main/gemini/sub-agents/{agent}.md`
## Browse
Visit [https://bmad-code-org.github.io/bmad-bundles/](https://bmad-code-org.github.io/bmad-bundles/) to browse bundles.
## Installation (Recommended)
For full IDE integration:
```bash
npx bmad-method@alpha install
```
---
Auto-updated by [BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD) on every main branch merge.
EOF
- name: Commit and push to bmad-bundles
run: |
cd bmad-bundles
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add .
if git diff --staged --quiet; then
echo "No changes to bundles, skipping commit"
else
COMMIT_SHA=$(cd .. && git rev-parse --short HEAD)
git commit -m "Update bundles from BMAD-METHOD@${COMMIT_SHA}"
git push
echo "✅ Bundles published to GitHub Pages"
fi
- name: Summary
run: |
echo "## 🎉 Bundles Published!" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "**Latest bundles** available at:" >> $GITHUB_STEP_SUMMARY
echo "- 🌐 Browse: https://bmad-code-org.github.io/bmad-bundles/" >> $GITHUB_STEP_SUMMARY
echo "- 📦 Raw files: https://github.com/bmad-code-org/bmad-bundles" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "**Commit**: ${{ github.sha }}" >> $GITHUB_STEP_SUMMARY

View File

@@ -1,16 +1,286 @@
name: Discord Notification
"on": [pull_request, release, create, delete, issue_comment, pull_request_review, pull_request_review_comment]
on:
pull_request:
types: [opened, closed, reopened, ready_for_review]
release:
types: [published]
create:
delete:
issue_comment:
types: [created]
pull_request_review:
types: [submitted]
pull_request_review_comment:
types: [created]
issues:
types: [opened, closed, reopened]
env:
MAX_TITLE: 100
MAX_BODY: 250
jobs:
notify:
pull_request:
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.repository.default_branch }}
sparse-checkout: .github/scripts
sparse-checkout-cone-mode: false
- name: Notify Discord
env:
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
ACTION: ${{ github.event.action }}
MERGED: ${{ github.event.pull_request.merged }}
PR_NUM: ${{ github.event.pull_request.number }}
PR_URL: ${{ github.event.pull_request.html_url }}
PR_TITLE: ${{ github.event.pull_request.title }}
PR_USER: ${{ github.event.pull_request.user.login }}
PR_BODY: ${{ github.event.pull_request.body }}
run: |
set -o pipefail
source .github/scripts/discord-helpers.sh
[ -z "$WEBHOOK" ] && exit 0
if [ "$ACTION" = "opened" ]; then ICON="🔀"; LABEL="New PR"
elif [ "$ACTION" = "closed" ] && [ "$MERGED" = "true" ]; then ICON="🎉"; LABEL="Merged"
elif [ "$ACTION" = "closed" ]; then ICON="❌"; LABEL="Closed"
elif [ "$ACTION" = "reopened" ]; then ICON="🔄"; LABEL="Reopened"
else ICON="📋"; LABEL="Ready"; fi
TITLE=$(printf '%s' "$PR_TITLE" | trunc $MAX_TITLE | esc)
[ ${#PR_TITLE} -gt $MAX_TITLE ] && TITLE="${TITLE}..."
BODY=$(printf '%s' "$PR_BODY" | trunc $MAX_BODY | esc)
[ -n "$PR_BODY" ] && [ ${#PR_BODY} -gt $MAX_BODY ] && BODY="${BODY}..."
[ -n "$BODY" ] && BODY=" · $BODY"
USER=$(printf '%s' "$PR_USER" | esc)
MSG="$ICON **[$LABEL #$PR_NUM: $TITLE](<$PR_URL>)**"$'\n'"by @$USER$BODY"
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
issues:
if: github.event_name == 'issues'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.repository.default_branch }}
sparse-checkout: .github/scripts
sparse-checkout-cone-mode: false
- name: Notify Discord
env:
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
ACTION: ${{ github.event.action }}
ISSUE_NUM: ${{ github.event.issue.number }}
ISSUE_URL: ${{ github.event.issue.html_url }}
ISSUE_TITLE: ${{ github.event.issue.title }}
ISSUE_USER: ${{ github.event.issue.user.login }}
ISSUE_BODY: ${{ github.event.issue.body }}
ACTOR: ${{ github.actor }}
run: |
set -o pipefail
source .github/scripts/discord-helpers.sh
[ -z "$WEBHOOK" ] && exit 0
if [ "$ACTION" = "opened" ]; then ICON="🐛"; LABEL="New Issue"; USER="$ISSUE_USER"
elif [ "$ACTION" = "closed" ]; then ICON="✅"; LABEL="Closed"; USER="$ACTOR"
else ICON="🔄"; LABEL="Reopened"; USER="$ACTOR"; fi
TITLE=$(printf '%s' "$ISSUE_TITLE" | trunc $MAX_TITLE | esc)
[ ${#ISSUE_TITLE} -gt $MAX_TITLE ] && TITLE="${TITLE}..."
BODY=$(printf '%s' "$ISSUE_BODY" | trunc $MAX_BODY | esc)
[ -n "$ISSUE_BODY" ] && [ ${#ISSUE_BODY} -gt $MAX_BODY ] && BODY="${BODY}..."
[ -n "$BODY" ] && BODY=" · $BODY"
USER=$(printf '%s' "$USER" | esc)
MSG="$ICON **[$LABEL #$ISSUE_NUM: $TITLE](<$ISSUE_URL>)**"$'\n'"by @$USER$BODY"
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
issue_comment:
if: github.event_name == 'issue_comment'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.repository.default_branch }}
sparse-checkout: .github/scripts
sparse-checkout-cone-mode: false
- name: Notify Discord
env:
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
IS_PR: ${{ github.event.issue.pull_request && 'true' || 'false' }}
ISSUE_NUM: ${{ github.event.issue.number }}
ISSUE_TITLE: ${{ github.event.issue.title }}
COMMENT_URL: ${{ github.event.comment.html_url }}
COMMENT_USER: ${{ github.event.comment.user.login }}
COMMENT_BODY: ${{ github.event.comment.body }}
run: |
set -o pipefail
source .github/scripts/discord-helpers.sh
[ -z "$WEBHOOK" ] && exit 0
[ "$IS_PR" = "true" ] && TYPE="PR" || TYPE="Issue"
TITLE=$(printf '%s' "$ISSUE_TITLE" | trunc $MAX_TITLE | esc)
[ ${#ISSUE_TITLE} -gt $MAX_TITLE ] && TITLE="${TITLE}..."
BODY=$(printf '%s' "$COMMENT_BODY" | trunc $MAX_BODY | esc)
[ ${#COMMENT_BODY} -gt $MAX_BODY ] && BODY="${BODY}..."
USER=$(printf '%s' "$COMMENT_USER" | esc)
MSG="💬 **[Comment on $TYPE #$ISSUE_NUM: $TITLE](<$COMMENT_URL>)**"$'\n'"@$USER: $BODY"
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
pull_request_review:
if: github.event_name == 'pull_request_review'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.repository.default_branch }}
sparse-checkout: .github/scripts
sparse-checkout-cone-mode: false
- name: Notify Discord
env:
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
STATE: ${{ github.event.review.state }}
PR_NUM: ${{ github.event.pull_request.number }}
PR_TITLE: ${{ github.event.pull_request.title }}
REVIEW_URL: ${{ github.event.review.html_url }}
REVIEW_USER: ${{ github.event.review.user.login }}
REVIEW_BODY: ${{ github.event.review.body }}
run: |
set -o pipefail
source .github/scripts/discord-helpers.sh
[ -z "$WEBHOOK" ] && exit 0
if [ "$STATE" = "approved" ]; then ICON="✅"; LABEL="Approved"
elif [ "$STATE" = "changes_requested" ]; then ICON="🔧"; LABEL="Changes Requested"
else ICON="👀"; LABEL="Reviewed"; fi
TITLE=$(printf '%s' "$PR_TITLE" | trunc $MAX_TITLE | esc)
[ ${#PR_TITLE} -gt $MAX_TITLE ] && TITLE="${TITLE}..."
BODY=$(printf '%s' "$REVIEW_BODY" | trunc $MAX_BODY | esc)
[ -n "$REVIEW_BODY" ] && [ ${#REVIEW_BODY} -gt $MAX_BODY ] && BODY="${BODY}..."
[ -n "$BODY" ] && BODY=": $BODY"
USER=$(printf '%s' "$REVIEW_USER" | esc)
MSG="$ICON **[$LABEL PR #$PR_NUM: $TITLE](<$REVIEW_URL>)**"$'\n'"@$USER$BODY"
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
pull_request_review_comment:
if: github.event_name == 'pull_request_review_comment'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.repository.default_branch }}
sparse-checkout: .github/scripts
sparse-checkout-cone-mode: false
- name: Notify Discord
env:
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
PR_NUM: ${{ github.event.pull_request.number }}
PR_TITLE: ${{ github.event.pull_request.title }}
COMMENT_URL: ${{ github.event.comment.html_url }}
COMMENT_USER: ${{ github.event.comment.user.login }}
COMMENT_BODY: ${{ github.event.comment.body }}
run: |
set -o pipefail
source .github/scripts/discord-helpers.sh
[ -z "$WEBHOOK" ] && exit 0
TITLE=$(printf '%s' "$PR_TITLE" | trunc $MAX_TITLE | esc)
[ ${#PR_TITLE} -gt $MAX_TITLE ] && TITLE="${TITLE}..."
BODY=$(printf '%s' "$COMMENT_BODY" | trunc $MAX_BODY | esc)
[ ${#COMMENT_BODY} -gt $MAX_BODY ] && BODY="${BODY}..."
USER=$(printf '%s' "$COMMENT_USER" | esc)
MSG="💭 **[Review Comment PR #$PR_NUM: $TITLE](<$COMMENT_URL>)**"$'\n'"@$USER: $BODY"
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
release:
if: github.event_name == 'release'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.repository.default_branch }}
sparse-checkout: .github/scripts
sparse-checkout-cone-mode: false
- name: Notify Discord
env:
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
TAG: ${{ github.event.release.tag_name }}
NAME: ${{ github.event.release.name }}
URL: ${{ github.event.release.html_url }}
RELEASE_BODY: ${{ github.event.release.body }}
run: |
set -o pipefail
source .github/scripts/discord-helpers.sh
[ -z "$WEBHOOK" ] && exit 0
REL_NAME=$(printf '%s' "$NAME" | trunc $MAX_TITLE | esc)
[ ${#NAME} -gt $MAX_TITLE ] && REL_NAME="${REL_NAME}..."
BODY=$(printf '%s' "$RELEASE_BODY" | trunc $MAX_BODY | esc)
[ -n "$RELEASE_BODY" ] && [ ${#RELEASE_BODY} -gt $MAX_BODY ] && BODY="${BODY}..."
[ -n "$BODY" ] && BODY=" · $BODY"
TAG_ESC=$(printf '%s' "$TAG" | esc)
MSG="🚀 **[Release $TAG_ESC: $REL_NAME](<$URL>)**"$'\n'"$BODY"
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
create:
if: github.event_name == 'create'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.repository.default_branch }}
sparse-checkout: .github/scripts
sparse-checkout-cone-mode: false
- name: Notify Discord
env:
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
REF_TYPE: ${{ github.event.ref_type }}
REF: ${{ github.event.ref }}
ACTOR: ${{ github.actor }}
REPO_URL: ${{ github.event.repository.html_url }}
run: |
set -o pipefail
source .github/scripts/discord-helpers.sh
[ -z "$WEBHOOK" ] && exit 0
[ "$REF_TYPE" = "branch" ] && ICON="🌿" || ICON="🏷️"
REF_TRUNC=$(printf '%s' "$REF" | trunc $MAX_TITLE)
[ ${#REF} -gt $MAX_TITLE ] && REF_TRUNC="${REF_TRUNC}..."
REF_ESC=$(printf '%s' "$REF_TRUNC" | esc)
REF_URL=$(jq -rn --arg ref "$REF" '$ref | @uri')
ACTOR_ESC=$(printf '%s' "$ACTOR" | esc)
MSG="$ICON **${REF_TYPE^} created: [$REF_ESC](<$REPO_URL/tree/$REF_URL>)** by @$ACTOR_ESC"
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
delete:
if: github.event_name == 'delete'
runs-on: ubuntu-latest
steps:
- name: Notify Discord
uses: sarisia/actions-status-discord@v1
if: always()
with:
webhook: ${{ secrets.DISCORD_WEBHOOK }}
status: ${{ job.status }}
title: "Triggered by ${{ github.event_name }}"
color: 0x5865F2
env:
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
REF_TYPE: ${{ github.event.ref_type }}
REF: ${{ github.event.ref }}
ACTOR: ${{ github.actor }}
run: |
set -o pipefail
[ -z "$WEBHOOK" ] && exit 0
esc() { sed -e 's/[][\*_()~`>]/\\&/g' -e 's/@/@ /g'; }
trunc() { tr '\n\r' ' ' | cut -c1-"$1"; }
REF_TRUNC=$(printf '%s' "$REF" | trunc 100)
[ ${#REF} -gt 100 ] && REF_TRUNC="${REF_TRUNC}..."
REF_ESC=$(printf '%s' "$REF_TRUNC" | esc)
ACTOR_ESC=$(printf '%s' "$ACTOR" | esc)
MSG="🗑️ **${REF_TYPE^} deleted: $REF_ESC** by @$ACTOR_ESC"
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-

View File

@@ -1,43 +0,0 @@
name: format-check
"on":
pull_request:
branches: ["**"]
workflow_dispatch:
jobs:
prettier:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Prettier format check
run: npm run format:check
eslint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: ESLint
run: npm run lint

View File

@@ -61,8 +61,34 @@ jobs:
run: |
sed -i 's/"version": ".*"/"version": "${{ steps.version.outputs.new_version }}"/' tools/installer/package.json
- name: Build project
run: npm run build
- name: Generate web bundles
run: npm run bundle
- name: Package bundles for release
run: |
mkdir -p dist/release-bundles
# Copy web bundles
cp -r web-bundles dist/release-bundles/bmad-bundles-v${{ steps.version.outputs.new_version }}
# Verify bundles exist
if [ ! "$(ls -A dist/release-bundles/bmad-bundles-v${{ steps.version.outputs.new_version }})" ]; then
echo "❌ ERROR: No bundles found"
echo "This likely means 'npm run bundle' failed"
exit 1
fi
# Count and display bundles per module
for module in bmm bmb cis bmgd; do
if [ -d "dist/release-bundles/bmad-bundles-v${{ steps.version.outputs.new_version }}/$module/agents" ]; then
COUNT=$(find dist/release-bundles/bmad-bundles-v${{ steps.version.outputs.new_version }}/$module/agents -name '*.xml' 2>/dev/null | wc -l)
echo "✅ $module: $COUNT agents"
fi
done
# Create archive
tar -czf dist/release-bundles/bmad-bundles-v${{ steps.version.outputs.new_version }}.tar.gz \
-C dist/release-bundles/bmad-bundles-v${{ steps.version.outputs.new_version }} .
- name: Commit version bump
run: |
@@ -149,25 +175,46 @@ jobs:
- name: Publish to NPM
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
run: npm publish
run: |
VERSION="${{ steps.version.outputs.new_version }}"
if [[ "$VERSION" == *"alpha"* ]] || [[ "$VERSION" == *"beta"* ]]; then
echo "Publishing prerelease version with --tag alpha"
npm publish --tag alpha
else
echo "Publishing stable version with --tag latest"
npm publish --tag latest
fi
- name: Create GitHub Release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Create GitHub Release with Bundles
uses: softprops/action-gh-release@v2
with:
tag_name: v${{ steps.version.outputs.new_version }}
release_name: "BMad Method v${{ steps.version.outputs.new_version }}"
body: ${{ steps.release_notes.outputs.RELEASE_NOTES }}
name: "BMad Method v${{ steps.version.outputs.new_version }}"
body: |
${{ steps.release_notes.outputs.RELEASE_NOTES }}
## 📦 Web Bundles
Download XML bundles for use in AI platforms (Claude Projects, ChatGPT, Gemini):
- `bmad-bundles-v${{ steps.version.outputs.new_version }}.tar.gz` - All modules (BMM, BMB, CIS, BMGD)
**Browse online** (bleeding edge): https://bmad-code-org.github.io/bmad-bundles/
draft: false
prerelease: false
prerelease: ${{ contains(steps.version.outputs.new_version, 'alpha') || contains(steps.version.outputs.new_version, 'beta') }}
files: |
dist/release-bundles/*.tar.gz
- name: Summary
run: |
echo "🎉 Successfully released v${{ steps.version.outputs.new_version }}!"
echo "📦 Published to NPM with @latest tag"
echo "🏷️ Git tag: v${{ steps.version.outputs.new_version }}"
echo "✅ Users running 'npx bmad-method install' will now get version ${{ steps.version.outputs.new_version }}"
echo ""
echo "📝 Release notes preview:"
cat release_notes.md
echo "## 🎉 Successfully released v${{ steps.version.outputs.new_version }}!" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "### 📦 Distribution" >> $GITHUB_STEP_SUMMARY
echo "- **NPM**: Published with @latest tag" >> $GITHUB_STEP_SUMMARY
echo "- **GitHub Release**: https://github.com/bmad-code-org/BMAD-METHOD/releases/tag/v${{ steps.version.outputs.new_version }}" >> $GITHUB_STEP_SUMMARY
echo "- **Web Bundles**: Attached to GitHub Release (4 archives)" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "### ✅ Installation" >> $GITHUB_STEP_SUMMARY
echo "\`\`\`bash" >> $GITHUB_STEP_SUMMARY
echo "npx bmad-method@${{ steps.version.outputs.new_version }} install" >> $GITHUB_STEP_SUMMARY
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY

97
.github/workflows/quality.yaml vendored Normal file
View File

@@ -0,0 +1,97 @@
name: Quality & Validation
# Runs comprehensive quality checks on all PRs:
# - Prettier (formatting)
# - ESLint (linting)
# - markdownlint (markdown quality)
# - Schema validation (YAML structure)
# - Agent schema tests (fixture-based validation)
# - Installation component tests (compilation)
# - Bundle validation (web bundle integrity)
"on":
pull_request:
branches: ["**"]
workflow_dispatch:
jobs:
prettier:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Prettier format check
run: npm run format:check
eslint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: ESLint
run: npm run lint
markdownlint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: markdownlint
run: npm run lint:md
validate:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Validate YAML schemas
run: npm run validate:schemas
- name: Run agent schema validation tests
run: npm run test:schemas
- name: Test agent compilation components
run: npm run test:install
- name: Validate web bundles
run: npm run validate:bundles

24
.gitignore vendored
View File

@@ -8,6 +8,7 @@ package-lock.json
test-output/*
coverage/
# Logs
logs/
@@ -25,7 +26,6 @@ build/*.txt
Thumbs.db
# Development tools and configs
.prettierignore
.prettierrc
# IDE and editor configs
@@ -41,6 +41,7 @@ cursor
.mcp.json
CLAUDE.local.md
.serena/
.claude/settings.local.json
# Project-specific
.bmad-core
@@ -53,9 +54,24 @@ flattened-codebase.xml
#UAT template testing output files
tools/template-test-generator/test-scenarios/
# Bundler temporary files
# Bundler temporary files and generated bundles
.bundler-temp/
# Test Install Output
# Generated web bundles (built by CI, not committed)
src/modules/bmm/sub-modules/
src/modules/bmb/sub-modules/
src/modules/cis/sub-modules/
src/modules/bmgd/sub-modules/
shared-modules
z*/
.bmad
.claude
.codex
.github/chatmodes
.agent
.agentvibes/
.kiro/
.roo
bmad-custom-src/

View File

@@ -1,3 +1,7 @@
#!/usr/bin/env sh
# Auto-fix changed files and stage them
npx --no-install lint-staged
# Validate everything
npm test

42
.markdownlint-cli2.yaml Normal file
View File

@@ -0,0 +1,42 @@
# markdownlint-cli2 configuration
# https://github.com/DavidAnson/markdownlint-cli2
ignores:
- node_modules/**
- test/fixtures/**
- CODE_OF_CONDUCT.md
- .bmad/**
- .bmad*/**
- .agent/**
- .claude/**
- .roo/**
- .codex/**
- .agentvibes/**
- .kiro/**
- sample-project/**
- test-project-install/**
- z*/**
# Rule configuration
config:
# Disable all rules by default
default: false
# Heading levels should increment by one (h1 -> h2 -> h3, not h1 -> h3)
MD001: true
# Duplicate sibling headings (same heading text at same level under same parent)
MD024:
siblings_only: true
# Trailing commas in headings (likely typos)
MD026:
punctuation: ","
# Bare URLs - may not render as links in all parsers
# Should use <url> or [text](url) format
MD034: true
# Spaces inside emphasis markers - breaks rendering
# e.g., "* text *" won't render as emphasis
MD037: true

9
.prettierignore Normal file
View File

@@ -0,0 +1,9 @@
# Test fixtures with intentionally broken/malformed files
test/fixtures/**
# Contributor Covenant (external standard)
CODE_OF_CONDUCT.md
# BMAD runtime folders (user-specific, not in repo)
.bmad/
.bmad*/

View File

@@ -21,6 +21,7 @@
"Decisioning",
"eksctl",
"elicitations",
"Excalidraw",
"filecomplete",
"fintech",
"fluxcd",
@@ -56,7 +57,8 @@
"tileset",
"tmpl",
"Trae",
"VNET"
"VNET",
"webskip"
],
"json.schemas": [
{

View File

@@ -1,27 +1,597 @@
# Changelog
## [Unreleased]
## [6.0.0-alpha.14]
### Codex Installer
**Release: December 7, 2025**
- Codex installer uses custom prompts in `.codex/prompts/`, instead of `AGENTS.md`
### 🔧 Installation & Configuration Revolution
**Custom Module Installation Overhaul:**
- **Simple custom.yaml Installation**: Custom agents and workflows can now be installed with a single YAML file
- **IDE Configuration Preservation**: Upgrades will no longer delete custom modules, agents, and workflows from IDE configuration
- **Removed Legacy agent-install Command**: Streamlined installation process (BREAKING CHANGE)
- **Sidecar File Retention**: Custom sidecar files are preserved during updates
- **Flexible Agent Sidecar Locations**: Fully configurable via config options instead of hardcoded paths
**Module Discovery System Transformation:**
- **Recursive Agent Discovery**: Deep scanning for agents across entire project structure
- **Enhanced Manifest Generation**: Comprehensive scanning of all installed modules
- **Nested Agent Support**: Fixed nested agents appearing in CLI commands
- **Module Reinstall Fix**: Prevented modules from showing as obsolete during reinstall
### 🏗️ Advanced Builder Features
**Workflow Builder Evolution:**
- **Continuable Workflows**: Create workflows with sophisticated branching and continuation logic
- **Template LOD Options**: Level of Detail output options for flexible workflow generation
- **Step-Based Architecture**: Complete conversion to granular step-file system
- **Enhanced Creation Process**: Improved workflow creation with better template handling
**Module Builder Revolution:**
- **11-Step Module Creation**: Comprehensive step-by-step module generation process
- **Production-Ready Templates**: Complete templates for agents, installers, and workflow plans
- **Built-in Validation System**: Ensures module quality and BMad Core compliance
- **Professional Documentation**: Auto-generated module documentation and structure
### 🚀 BMad Method (BMM) Enhancements
**Workflow Improvements:**
- **Brownfield PRD Support**: Enhanced PRD workflow for existing project integration
- **Sprint Status Command**: New workflow for tracking development progress
- **Step-Based Format**: Improved continue functionality across all workflows
- **Quick-Spec-Flow Documentation**: Rapid development specification flows
**Documentation Revolution:**
- **Comprehensive Troubleshooting Guide**: 680-line detailed troubleshooting documentation
- **Quality Check Integration**: Added markdownlint-cli2 for markdown quality assurance
- **Enhanced Test Architecture**: Improved CI/CD templates and testing workflows
### 🌟 New Features & Integrations
**Kiro-Cli Installer:**
- **Intelligent Routing**: Smart routing to quick-dev workflow
- **BMad Core Compliance**: Full compliance with BMad standards
**Discord Notifications:**
- **Compact Format**: Streamlined plain-text notifications
- **Bug Fixes**: Resolved notification delivery issues
**Example Mental Wellness Module (MWM):**
- **Complete Module Example**: Demonstrates advanced module patterns
- **Multiple Agents**: CBT Coach, Crisis Navigator, Meditation Guide, Wellness Companion
- **Workflow Showcase**: Crisis support, daily check-in, meditation, journaling workflows
### 🐛 Bug Fixes & Optimizations
- Fixed version reading from package.json instead of hardcoded fallback
- Removed hardcoded years from WebSearch queries
- Removed broken build caching mechanism
- Fixed hardcoded 'bmad' prefix from files-manifest.csv paths
- Enhanced TTS injection summary with tracking and documentation
- Fixed CI nvmrc configuration issues
### 📊 Statistics
- **335 files changed** with 17,161 additions and 8,204 deletions
- **46 commits** since alpha.13
### ⚠️ Breaking Changes
1. **Removed agent-install Command**: Migrate to new custom.yaml installation system
2. **Agent Sidecar Configuration**: Now requires explicit config instead of hardcoded paths
### 📦 New Dependencies
- `markdownlint-cli2: ^0.19.1` - Professional markdown linting
---
## [6.0.0-alpha.13]
**Release: November 30, 2025**
### 🏗️ Revolutionary Workflow Architecture
**Granular Step-File Workflow System (NEW in alpha.13):**
- **Multi-Menu Support**: Workflows now support granular step-file architecture with dynamic menu generation
- **Sharded Workflows**: Complete conversion of Phase 1 and 2 workflows to stepwise sharded architecture
- **Improved Performance**: Reduced file loading times and eliminated time-based estimates throughout
- **Workflow Builder**: New dedicated workflow builder for creating stepwise workflows
- **PRD Workflow**: First completely reworked sharded workflow resolving Sonnet compatibility issues
**Core Workflow Transformations:**
- Phase 1 and 2 workflows completely converted to sharded step-flow architecture
- UX Design workflow converted to sharded step workflow
- Brainstorming, Research, and Party Mode updated to use sharded step-flow workflows
- Architecture workflows enhanced with step sharding and performance improvements
### 🎯 Code Review & Development Enhancement
**Advanced Code Review System:**
- **Adversarial Code Review**: Quick-dev workflow now recommends adversarial review approach for higher quality
- **Multi-LLM Strategy**: Dev-story workflow recommends different LLM models for code review tasks
- **Agent Compiler Optimization**: Complete handler cleanup and performance improvements
### 🤖 Agent System Revolution
**Universal Custom Agent Support:**
- **Complete IDE Coverage**: Custom agent support extended to ALL remaining IDEs
- **Antigravity IDE Integration**: Added custom agent support with proper gitignore configuration
- **Multiple Source Locations**: Compile agents now checks multiple source locations for better discovery
- **Persona Name Display**: Fixed proper persona names display in custom agent manifests
- **New IDE Support**: Added support for Rovo Dev IDE
**Agent Creation & Management:**
- **Improved Creation Workflow**: Enhanced agent creation workflow with better documentation
- **Parameter Clarity**: Renamed agent-install parameters for better understanding
- **Menu Organization**: BMad Agents menu items logically ordered with optional/recommended/required tags
- **GitHub Migration**: GitHub integration now uses agents folder instead of chatmodes
### 🔧 Phase 4 & Sprint Evolution
**Complete Phase 4 Transformation:**
- **Simplified Architecture**: Phase 4 workflows completely transformed - simpler, faster, better results
- **Sprint Planning Integration**: Unified sprint planning with placeholders for Jira, Linear, and Trello integration
- **Status Management**: Better status loading and updating for Phase 4 artifacts
- **Workflow Reduction**: Phase 4 streamlined to single sprint planning item with clear validation
- **Dynamic Workflows**: All Level 1-3 workflows now dynamically suggest next steps based on context
### 🧪 Testing Infrastructure Expansion
**Playwright Utils Integration:**
- Test Architect now supports `@seontechnologies/playwright-utils` integration
- Installation prompt with `use_playwright_utils` configuration flag
- 11 comprehensive knowledge fragments covering ALL utilities
- Adaptive workflow recommendations across 6 testing workflows
- Production-ready utilities from SEON Technologies integrated with TEA patterns
**Testing Environment:**
- **Web Bundle Support**: Enabled web bundles for test and development environments
- **Test Architecture**: Enhanced test design for architecture level (Phase 3) testing
### 📦 Installation & Configuration
**Installer Improvements:**
- **Cleanup Options**: Installer now allows cleanup of unneeded files during upgrades
- **Username Default**: Installer now defaults to system username for better UX
- **IDE Selection**: Added empty IDE selection warning and promoted Antigravity to recommended
- **NPM Vulnerabilities**: Resolved all npm vulnerabilities for enhanced security
- **Documentation Installation**: Made documentation installation optional to reduce footprint
**Text-to-Speech from AgentVibes optional Integration:**
- **TTS_INJECTION System**: Complete text-to-speech integration via injection system
- **Agent Vibes**: Enhanced with TTS capabilities for voice feedback
### 🛠️ Tool & IDE Updates
**IDE Tool Enhancements:**
- **GitHub Copilot**: Fixed tool names consistency across workflows
- **KiloCode Integration**: Gave kilocode tool proper access to bmad modes
- **Code Quality**: Added radix parameter to parseInt() calls for better reliability
- **Agent Menu Optimization**: Improved agent performance in Claude Code slash commands
### 📚 Documentation & Standards
**Documentation Cleanup:**
- **Installation Guide**: Removed fluff and updated with npx support
- **Workflow Documentation**: Fixed documentation by removing non-existent workflows and Mermaid diagrams
- **Phase Numbering**: Fixed phase numbering consistency throughout documentation
- **Package References**: Corrected incorrect npm package references
**Workflow Compliance:**
- **Validation Checks**: Enhanced workflow validation checks for compliance
- **Product Brief**: Updated to comply with documented workflow standards
- **Status Integration**: Workflow-status can now call workflow-init for better integration
### 🔍 Legacy Workflow Cleanup
**Deprecated Workflows Removed:**
- **Audit Workflow**: Completely removed audit workflow and all associated files
- **Convert Legacy**: Removed legacy conversion utilities
- **Create/Edit Workflows**: Removed old workflow creation and editing workflows
- **Clean Architecture**: Simplified workflow structure by removing deprecated legacy workflows
### 🐛 Technical Fixes
**System Improvements:**
- **File Path Handling**: Fixed various file path issues across workflows
- **Manifest Updates**: Updated manifest to use agents folder structure
- **Web Bundle Configuration**: Fixed web bundle configurations for better compatibility
- **CSV Column Mismatch**: Fixed manifest schema upgrade issues
### ⚠️ Breaking Changes
**Workflow Architecture:**
- All legacy workflows have been removed - ensure you're using the new stepwise sharded workflows
- Phase 4 completely restructured - update any automation expecting old Phase 4 structure
- Epic creation now requires architectural context (moved to Phase 3 in previous release)
**Agent System:**
- Custom agents now require proper compilation - use the new agent creation workflow
- GitHub integration moved from chatmodes to agents folder - update any references
### 📊 Impact Summary
**New in alpha.13:**
- **Stepwise Workflow Architecture**: Complete transformation of all workflows to granular step-file system
- **Universal Custom Agent Support**: Extended to ALL IDEs with improved creation workflow
- **Phase 4 Revolution**: Completely restructured with sprint planning integration
- **Legacy Cleanup**: Removed all deprecated workflows for cleaner system
- **Advanced Code Review**: New adversarial review approach with multi-LLM strategy
- **Text-to-Speech**: Full TTS integration for voice feedback
- **Testing Expansion**: Playwright utils integration across all testing workflows
**Enhanced from alpha.12:**
- **Performance**: Improved file loading and removed time-based estimates
- **Documentation**: Complete cleanup with accurate references
- **Installer**: Better UX with cleanup options and improved defaults
- **Agent System**: More reliable compilation and better persona handling
## [6.0.0-alpha.12]
**Release: November 19, 2025**
### 🐛 Bug Fixes
- Added missing `yaml` dependency to fix `MODULE_NOT_FOUND` error when running `npx bmad-method install`
## [6.0.0-alpha.11]
**Release: November 18, 2025**
This alpha release introduces a complete agent installation system with the new `bmad agent-install` command, vastly improves the BMB agent builder capabilities with comprehensive documentation and reference agents, and refines diagram distribution to better align with BMad Method's core principle: **BMad agents mirror real agile teams**.
### 🎨 Diagram Capabilities Refined and Distributed
**Excalidraw Integration Evolution:**
Building on the excellent Excalidraw integration introduced with the Frame Expert agent, we've refined how diagram capabilities are distributed across the BMad Method ecosystem to better reflect real agile team dynamics.
**The Refinement:**
- The valuable Excalidraw diagramming capabilities have been distributed to the agents who naturally create these artifacts in real teams
- **Architect**: System architecture diagrams, data flow visualizations
- **Product Manager**: Process flowcharts and workflow diagrams
- **UX Designer**: Wireframe creation capabilities
- **Tech Writer**: All diagram types for documentation needs
- **New CIS Agent**: presentation-master for specialized visual communication
**Shared Infrastructure Enhancement:**
- Excalidraw templates, component libraries, and validation patterns elevated to core resources
- Available to both BMM agents AND CIS presentation specialists
- Preserves all the excellent Excalidraw functionality while aligning with natural team roles
### 🚀 New Agent Installation System
**Agent Installation Infrastructure (NEW in alpha.11):**
- `bmad agent-install` CLI command with interactive persona customization
- **YAML → XML compilation engine** with smart handler injection
- Supports Simple (single file), Expert (with sidecars), and Module agents
- Handlebars-style template variable processing
- Automatic manifest tracking and IDE integration
- Source preservation in `_cfg/custom/agents/` for reinstallation
**New Reference Agents Added:**
- **commit-poet**: Poetic git commit message generator (Simple agent example)
- **journal-keeper**: Daily journaling agent with templates (Expert agent example)
- **security-engineer & trend-analyst**: Module agent examples with ecosystem integration
**Critical Persona Field Guidance Added:**
New documentation explaining how LLMs interpret persona fields for better agent quality:
- **role** → "What knowledge, skills, and capabilities do I possess?"
- **identity** → "What background, experience, and context shape my responses?"
- **communication_style** → "What verbal patterns, word choice, and phrasing do I use?"
- **principles** → "What beliefs and operating philosophy drive my choices?"
Key insight: `communication_style` should ONLY describe HOW the agent talks, not WHAT they do
**BMM Agent Voice Enhancement:**
All 9 existing BMM agents enhanced with distinct, memorable communication voices:
- **Mary (analyst)**: "Treats analysis like a treasure hunt - excited by every clue"
- **John (PM)**: "Asks 'WHY?' relentlessly like a detective on a case"
- **Winston (architect)**: "Champions boring technology that actually works"
- **Amelia (dev)**: "Ultra-succinct. Speaks in file paths and AC IDs"
- **Sally (UX)**: "Paints pictures with words, telling user stories that make you FEEL"
### 🔧 Edit-Agent Workflow Comprehensive Enhancement
**Expert Agent Sidecar Support (NEW):**
- Automatically detects and handles Expert agents with multiple files
- Loads and manages templates, data files, knowledge bases
- Smart sidecar analysis: maps references, finds orphans, validates paths
- 5 complete sidecar editing patterns with warm, educational feedback
**7-Step Communication Style Refinement Pattern:**
1. Diagnose current style with red flag word detection
2. Extract non-style content to working copy
3. Discover TRUE communication style through interview questions
4. Craft pure style using presets and reference agents
5. Show before/after transformation with full context
6. Validate against standards (zero red flags)
7. Confirm with user through dramatic reading
**Unified Validation Checklist:**
- Single source of truth: `agent-validation-checklist.md` (160 lines)
- Shared between create-agent and edit-agent workflows
- Comprehensive persona field separation validation
- Expert agent sidecar validation (9 specific checks)
- Common issues and fixes with real examples
### 📚 BMB Agent Builder Enhancement
**Vastly Improved Agent Creation & Editing Capabilities:**
- Create-agent and edit-agent workflows now have accurate, comprehensive documentation
- All context references updated and validated for consistency
- Workflows can now properly guide users through complex agent design decisions
**New Agent Documentation Suite:**
- `understanding-agent-types.md` - Architecture vs capability distinction
- `simple-agent-architecture.md` - Self-contained agents guide
- `expert-agent-architecture.md` - Agents with sidecar files
- `module-agent-architecture.md` - Workflow-integrated agents
- `agent-compilation.md` - YAML → XML transformation process
- `agent-menu-patterns.md` - Menu design patterns
- `communication-presets.csv` - 60 pure communication styles for reference
**New Reference Agents for Learning:**
- Complete working examples of Simple, Expert, and Module agents
- Can be installed directly via the new `bmad agent-install` command
- Serve as both learning resources and ready-to-use agents
### 🎯 Epic Creation Moved to Phase 3 (After Architecture)
**Workflow Sequence Corrected:**
```
Phase 2: PRD → UX Design
Phase 3: Architecture → Epics & Stories ← NOW HERE (technically informed)
```
**Why This Fundamental Change:**
- Epics need architectural context: API contracts, data models, technical decisions
- Stories can reference actual architectural patterns and constraints
- Reduces rewrites when architecture reveals complexity
- Better complexity-based estimation (not time-based)
### 🖥️ New IDE Support
**Google Antigravity IDE Installer:**
- Flattened file naming for proper slash commands (bmad-module-agents-name.md)
- Namespace isolation prevents module conflicts
- Subagent installation support (project or user level)
- Module-specific injection configuration
**Codex CLI Enhancement:**
- Now supports both global and project-specific installation
- CODEX_HOME configuration for multi-project workflows
- OS-specific setup instructions (Unix/Mac/Windows)
### 🏗️ Reference Agents & Standards
**New Reference Agents Provide Clear Examples:**
- **commit-poet.agent.yaml**: Simple agent with pure communication style
- **journal-keeper.agent.yaml**: Expert agent with sidecar file structure
- **security-engineer.agent.yaml**: Module agent for ecosystem integration
- **trend-analyst.agent.yaml**: Module agent with cross-workflow capabilities
**Agent Type Clarification:**
- Clear documentation that agent types (Simple/Expert/Module) describe architecture, not capability
- Module = designed for ecosystem integration, not limited in function
### 🐛 Technical Improvements
**Linting Compliance:**
- Fixed all ESLint warnings across agent tooling
- `'utf-8'``'utf8'` (unicorn/text-encoding-identifier-case)
- `hasOwnProperty``Object.hasOwn` (unicorn/prefer-object-has-own)
- `JSON.parse(JSON.stringify(...))``structuredClone(...)`
**Agent Compilation Engine:**
- Auto-injects frontmatter, activation, handlers, help/exit menu items
- Smart handler inclusion (only includes handlers actually used)
- Proper XML escaping and formatting
- Persona name customization support
### 📊 Impact Summary
**New in alpha.11:**
- **Agent installation system** with `bmad agent-install` CLI command
- **4 new reference agents** (commit-poet, journal-keeper, security-engineer, trend-analyst)
- **Complete agent documentation suite** with 7 new focused guides
- **Expert agent sidecar support** in edit-agent workflow
- **2 new IDE installers** (Google Antigravity, enhanced Codex)
- **Unified validation checklist** (160 lines) for consistent quality standards
- **60 pure communication style presets** for agent persona design
**Enhanced from alpha.10:**
- **BMB agent builder workflows** with accurate context and comprehensive guidance
- **All 9 BMM agents** enhanced with distinct, memorable communication voices
- **Excalidraw capabilities** refined and distributed to role-appropriate agents
- **Epic creation** moved to Phase 3 (after Architecture) for technical context
### ⚠️ Breaking Changes
**Agent Changes:**
- Frame Expert agent retired - diagram capabilities now available through role-appropriate agents:
- Architecture diagrams → `/architect`
- Process flows → `/pm`
- Wireframes → `/ux-designer`
- Documentation visuals → `/tech-writer`
**Workflow Changes:**
- Epic creation moved from Phase 2 to Phase 3 (after Architecture)
- Excalidraw workflows redistributed to appropriate agents
**Installation Changes:**
- New `bmad agent-install` command replaces manual agent installation
- Agent YAML files must be compiled to XML for use
### 🔄 Migration Notes
**For Existing Projects:**
1. **Frame Expert Users:**
- Transition to role-appropriate agents for diagrams
- All Excalidraw functionality preserved and enhanced
- Shared templates now in core resources for wider access
2. **Agent Installation:**
- Use `bmad agent-install` for all agent installations
- Existing manual installations still work but won't have customization
3. **Epic Creation Timing:**
- Epics now created in Phase 3 after Architecture
- Update any automation expecting epics in Phase 2
4. **Communication Styles:**
- Review agent communication_style fields
- Remove any role/identity/principle content
- Use communication-presets.csv for pure styles
5. **Expert Agents:**
- Edit-agent workflow now fully supports sidecar files
- Organize templates and data files in agent folder
## [6.0.0-alpha.10]
**Release: November 16, 2025**
- **🎯 Epics Generated AFTER Architecture**: Major milestone - epics/stories now created after architecture for technically-informed user stories with better acceptance criteria
- **🎨 Frame Expert Agent**: New Excalidraw specialist with 4 diagram workflows (flowchart, diagram, dataflow, wireframe) for visual documentation
- **⏰ Time Estimate Prohibition**: Critical warnings added across 33 workflows - acknowledges AI has fundamentally changed development speed
- **🎯 Platform-Specific Commands**: New `ide-only`/`web-only` fields filter menu items based on environment (IDE vs web bundle)
- **🔧 Agent Customization**: Enhanced memory/prompts merging via `*.customize.yaml` files for persistent agent personalization
## [6.0.0-alpha.9]
**Release: November 12, 2025**
- **🚀 Intelligent File Discovery Protocol**: New `discover_inputs` with FULL_LOAD, SELECTIVE_LOAD, and INDEX_GUIDED strategies for automatic context loading
- **📚 3-Track System**: Simplified from 5 levels to 3 intuitive tracks: quick-flow, bmad-method, and enterprise-bmad-method
- **🌐 Web Bundles Guide**: Comprehensive documentation for Gemini Gems and Custom GPTs with 60-80% cost savings strategies
- **🏗️ Unified Output Structure**: Eliminated `.ephemeral/` folders - all artifacts now in single configurable output folder
- **🎮 BMGD Phase 4**: Added 10 game development workflows following BMM patterns with game-specific adaptations
## [6.0.0-alpha.8]
**Release: November 9, 2025**
- **🎯 Configurable Installation**: Custom directories with `.bmad` hidden folder default for cleaner project structure
- **🚀 Optimized Agent Loading**: CLI loads from installed files eliminating duplication and maintenance burden
- **🌐 Party Mode Everywhere**: All web bundles include multi-agent collaboration with customizable party configurations
- **🔧 Phase 4 Artifact Separation**: Stories, code reviews, sprint plans now configurable outside docs folder
- **📦 Expanded Web Bundles**: All BMM, BMGD, and CIS agents bundled with advanced elicitation integration
## [6.0.0-alpha.7]
**Release: November 7, 2025**
- **🌐 Workflow Vendoring**: Web bundler performs automatic workflow vendoring for cross-module dependencies
- **🎮 BMGD Module Extraction**: Game development split into standalone module with 4-phase industry-standard structure
- **🔧 Enhanced Dependency Resolution**: Better handling of `web_bundle: false` workflows with positive resolution messages
- **📚 Advanced Elicitation Fix**: Added missing CSV files to workflow bundles fixing runtime failures
- **🐛 Claude Code Fix**: Resolved README slash command installation regression
## [6.0.0-alpha.6]
**Release: November 4, 2025**
- **🐛 Critical Installer Fixes**: Fixed manifestPath error and option display issues blocking installation
- **📖 Conditional Docs Installation**: Optional documentation installation to reduce footprint in production
- **🎨 Improved Installer UX**: Better formatting with descriptive labels and clearer feedback
- **🧹 Issue Tracker Cleanup**: Closed 54 legacy v4 issues for focused v6 development
- **📝 Contributing Updates**: Removed references to non-existent branches in documentation
## [6.0.0-alpha.5]
**Release: November 4, 2025**
- **🎯 3-Track Scale System**: Revolutionary simplification from 5 confusing levels to 3 intuitive preference-driven tracks
- **✨ Elicitation Modernization**: Replaced legacy XML tags with explicit `invoke-task` pattern at strategic decision points
- **📚 PM/UX Evolution Section**: Added November 2025 industry research on AI Agent PMs and Full-Stack Product Leads
- **🏗️ Brownfield Reality Check**: Rewrote Phase 0 with 4 real-world scenarios for messy existing codebases
- **📖 Documentation Accuracy**: All agent capabilities now match YAML source of truth with zero hallucination risk
## [6.0.0-alpha.4]
**Release: November 2, 2025**
- **📚 Documentation Hub**: Created 18 comprehensive guides (7000+ lines) with professional technical writing standards
- **🤖 Paige Agent**: New technical documentation specialist available across all BMM phases
- **🚀 Quick Spec Flow**: Intelligent Level 0-1 planning with auto-stack detection and brownfield analysis
- **📦 Universal Shard-Doc**: Split large markdown documents into organized sections with dual-strategy loading
- **🔧 Intent-Driven Planning**: PRD and Product Brief transformed from template-filling to natural conversation
## [6.0.0-alpha.3]
**Release: October 2025**
- **Codex Installer**: Custom prompts in `.codex/prompts/` directory structure
- **Bug Fixes**: Various installer and workflow improvements
- **Documentation**: Initial documentation structure established
## [6.0.0-alpha.0]
**Release: September 28, 2025**
Initial alpha release of a major rewrite and overhaul improvement of past versions.
### Major New Features
- **Lean Core**: The core of BMad is very simple - common tasks that apply to any future module or agents, along with common agents that will be added to any modules - bmad-web-orchestrator and bmad-master.
- **BMad Method**: The new BMad Method (AKA bmm) is a complete overhaul of the v4 method, now a fully scale adaptive rewrite. The workflow now scales from small enhancements to massive undertakings across multiple services or architectures, supporting a new vast array of project type, including a full subclass of game development specifics.
- **BoMB**: The BMad Builder (AKA BoMB) now is able to fully automate creation and conversion of expansion packs from v5 to modules in v5 along with the net new ideation and brainstorming through implementation and testing of net new Modules, Workflows (were tasks and templates), Module Agents, and Standalone Personal Agents
- **CIS**: The Creative Intelligence Suite (AKA CIS)
## [v5.0.0] - SKIPPED
**Note**: Version 5.0.0 was skipped due to NPX registry issues that corrupted the version. Development continues with v6.0.0-alpha.0.
- **Lean Core**: Simple common tasks and agents (bmad-web-orchestrator, bmad-master)
- **BMad Method (BMM)**: Complete scale-adaptive rewrite supporting projects from small enhancements to massive undertakings
- **BoMB**: BMad Builder for creating and converting modules, workflows, and agents
- **CIS**: Creative Intelligence Suite for ideation and creative workflows
- **Game Development**: Full subclass of game-specific development patterns**Note**: Version 5.0.0 was skipped due to NPX registry issues that corrupted the version. Development continues with v6.0.0-alpha.0.
## [v4.43.0](https://github.com/bmad-code-org/BMAD-METHOD/releases/tag/v4.43.0)

128
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,128 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
the official BMAD Discord server (https://discord.com/invite/gk8jAdXWmj) - DM a moderator or flag a post.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.

View File

@@ -86,25 +86,13 @@ Please propose small, granular changes! For large or significant changes, discus
### Which Branch?
**Submit to `next` branch** (most contributions):
- ✨ New features or agents
- 🎨 Enhancements to existing features
- 📚 Documentation updates
- ♻️ Code refactoring
- ⚡ Performance improvements
- 🧪 New tests
- 🎁 New bmad modules
**Submit to `main` branch** (critical only):
**Submit PR's to `main` branch** (critical only):
- 🚨 Critical bug fixes that break basic functionality
- 🔒 Security patches
- 📚 Fixing dangerously incorrect documentation
- 🐛 Bugs preventing installation or basic usage
**When in doubt, submit to `next`**. We'd rather test changes thoroughly before they hit stable.
### PR Size Guidelines
- **Ideal PR size**: 200-400 lines of code changes
@@ -256,6 +244,7 @@ Each commit should represent one logical change:
- Web/planning agents can be larger with more complex tasks
- Everything is natural language (markdown) - no code in core framework
- Use bmad modules for domain-specific features
- Validate YAML schemas with `npm run validate:schemas` before committing
## Code of Conduct

355
README.md
View File

@@ -1,285 +1,214 @@
# BMad CORE v6 Alpha
# BMad Method & BMad Core
[![Version](https://img.shields.io/npm/v/bmad-method?color=blue&label=version)](https://www.npmjs.com/package/bmad-method)
[![Stable Version](https://img.shields.io/npm/v/bmad-method?color=blue&label=stable)](https://www.npmjs.com/package/bmad-method)
[![Alpha Version](https://img.shields.io/npm/v/bmad-method/alpha?color=orange&label=alpha)](https://www.npmjs.com/package/bmad-method)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
[![Node.js Version](https://img.shields.io/badge/node-%3E%3D20.0.0-brightgreen)](https://nodejs.org)
[![Discord](https://img.shields.io/badge/Discord-Join%20Community-7289da?logo=discord&logoColor=white)](https://discord.gg/gk8jAdXWmj)
## 🚀 Critical: Understanding BMad Method v6a Workflow
## AI-Driven Agile Development That Scales From Bug Fixes to Enterprise
**IMPORTANT: Before using this framework, you MUST read the [BMM v6 Workflows Guide](./src/modules/bmm/workflows/README.md).** This document is fundamental to understanding how to use v6 of the BMad Method and explains the revolutionary v6a workflow system with its four phases: Analysis, Planning, Solutioning, and Implementation.
**Build More, Architect Dreams** (BMAD) with **19 specialized AI agents** and **50+ guided workflows** that adapt to your project's complexity—from quick bug fixes to enterprise platforms.
**[Subscribe to BMadCode on YouTube](https://www.youtube.com/@BMadCode?sub_confirmation=1)** and **[Join our amazing, active Discord Community](https://discord.gg/gk8jAdXWmj)**
> **🚀 v6 is a MASSIVE upgrade from v4!** Complete architectural overhaul, scale-adaptive intelligence, visual workflows, and the powerful BMad Core framework. v4 users: this changes everything. [See what's new →](#whats-new-in-v6)
**If you find this project helpful or useful, please give it a star in the upper right-hand corner!** It helps others discover BMad-CORE and you will be notified of updates!
> **📌 v6 Alpha Status:** Near-beta quality with vastly improved stability. Documentation is being finalized. New videos coming soon to [BMadCode YouTube](https://www.youtube.com/@BMadCode).
## The Universal Human-AI Collaboration Platform
## 🎯 Why BMad Method?
📋 **[View v6 Alpha Open Items & Roadmap](./v6-open-items.md)** - Track what's being worked on and what's coming next!
Unlike generic AI coding assistants, BMad Method provides **structured, battle-tested workflows** powered by specialized agents who understand agile development. Each agent has deep domain expertise—from product management to architecture to testing—working together seamlessly.
### ⚠️ Important Alpha Notes
**✨ Key Benefits:**
**Note 0 - Frequent Updates:** Updates to the branch will be frequent. When pulling new updates, it's best to delete your node_modules folder and run `npm install` to ensure you have the latest package dependencies.
- **Scale-Adaptive Intelligence** - Automatically adjusts planning depth from bug fixes to enterprise systems
- **Complete Development Lifecycle** - Analysis → Planning → Architecture → Implementation
- **Specialized Expertise** - 19 agents with specific roles (PM, Architect, Developer, UX Designer, etc.)
- **Proven Methodologies** - Built on agile best practices with AI amplification
- **IDE Integration** - Works with Claude Code, Cursor, Windsurf, VS Code
**Note 1 - Alpha Stability:** ALPHA is potentially an unstable release that could drastically change. While we hope that isn't the case, your testing during this time is much appreciated. Please help us out by filing issues or reaching out in Discord to discuss.
## 🏗️ The Power of BMad Core
**Note 2 - Work in Progress:** ALPHA is not complete - there are still many small and big features, polish, doc improvements, and more agents and workflows coming ahead of the beta release!
**BMad Method** is actually a sophisticated module built on top of **BMad Core** (**C**ollaboration **O**ptimized **R**eflection **E**ngine). This revolutionary architecture means:
**Note 3 - IDE Required:** ALPHA Web Bundles and Agents are not fully working yet - you will need to use a good quality IDE to test many features, especially with the BMad Method module. However, the new agent builder and standalone agent feature can work great with weaker models - this will still evolve over the coming weeks.
- **BMad Core** provides the universal framework for human-AI collaboration
- **BMad Method** leverages Core to deliver agile development workflows
- **BMad Builder** lets YOU create custom modules as powerful as BMad Method itself
**Note 4 - Contributing:** If you would like to contribute a PR, make sure you are creating your PR against the Alpha Branch and not Main.
With **BMad Builder**, you can architect both simple agents and vastly complex domain-specific modules (legal, medical, finance, education, creative) that will soon be sharable in an **official community marketplace**. Imagine building and sharing your own specialized AI team!
## Alpha Installation and Testing
## 📊 See It In Action
**Prerequisites**: [Node.js](https://nodejs.org) v20+ required
<p align="center">
<img src="./src/modules/bmm/docs/images/workflow-method-greenfield.svg" alt="BMad Method Workflow" width="100%">
</p>
### Option A
<p align="center">
<em>Complete BMad Method workflow showing all phases, agents, and decision points</em>
</p>
Thank you Lum for the suggestion - here is a one-shot instruction to clone just the alpha branch and get started:
## 🚀 Get Started in 3 Steps
`git clone --branch v6-alpha --single-branch https://github.com/bmad-code-org/BMAD-METHOD` and then cd into this directory and run `npm install`.
### 1. Install BMad Method
### Option B
```bash
# Install v6 Alpha (recommended)
npx bmad-method@alpha install
Here are the more detailed step-by-step instructions:
# Or stable v4 for production
npx bmad-method install
```
Clone the repo with either:
### 2. Initialize Your Project
- `gh repo clone bmad-code-org/BMAD-METHOD`
- `git clone https://github.com/bmad-code-org/BMAD-METHOD.git`
- `git@github.com:bmad-code-org/BMAD-METHOD.git`
and then cd into the BMAD-METHOD folder.
Load any agent in your IDE and run:
You will then need to change to the branch as that will have cloned main, so type:
- `git checkout v6-alpha`
- type `git status` and you should see:
`On branch v6-alpha. Your branch is up to date with 'origin/v6-alpha'.`
```
*workflow-init
```
### Node Modules install
This analyzes your project and recommends the right workflow track.
Now you must install the node_modules with `npm install` - once complete, you should see you have a `node_modules` folder at the root of your project. (BMAD-METHOD/node_modules)
### 3. Choose Your Track
### Install to your new or existing project folder
BMad Method adapts to your needs with three intelligent tracks:
Now you can run `npm run install:bmad` and follow the installer questions.
| Track | Use For | Planning | Time to Start |
| ------------------ | ------------------------- | ----------------------- | ------------- |
| **⚡ Quick Flow** | Bug fixes, small features | Tech spec only | < 5 minutes |
| **📋 BMad Method** | Products, platforms | PRD + Architecture + UX | < 15 minutes |
| **🏢 Enterprise** | Compliance, scale | Full governance suite | < 30 minutes |
NOTE: One of the first questions will ask for a destination - do not accept the default, you want to enter the full path to a new or existing folder of where your project is or will be. If you choose a net new folder, you will have to confirm you want the installer to create the directory for you.
> **Not sure?** Run `*workflow-init` and let BMad analyze your project goal.
The Core Module will always be installed. The default initial module selection will be BMM for all the core BMad Method functionality and flow from brainstorming through software development.
## 🔄 How It Works: 4-Phase Methodology
**Note on installation:** All installs now go to a single folder called `bmad` instead of multiple folders. When you install a module, you may still see folders other than the one you selected in the destination/bmad folder.
BMad Method guides you through a proven development lifecycle:
This is intentional and not a bug - it will copy over to those other folders only the minimum that is needed because it is shared across the modules. For example, during Alpha to test this feature, BMM relies on the brainstorming feature of the CIS and some items from CORE - so even if you only select BMM, you will still see bmad/core and bmad/cis along with bmad/bmm.
1. **📊 Analysis** (Optional) - Brainstorm, research, and explore solutions
2. **📝 Planning** - Create PRDs, tech specs, or game design documents
3. **🏗 Solutioning** - Design architecture, UX, and technical approach
4. ** Implementation** - Story-driven development with continuous validation
## What is the new BMad Core
Each phase has specialized workflows and agents working together to deliver exceptional results.
BMad-CORE (Collaboration Optimized Reflection Engine) is a framework that brings out the best in you through AI agents designed to enhance human thinking rather than replace it.
## 🤖 Meet Your Team
Unlike traditional AI tools that do the work for you, BMad-CORE's specialized agents guide you through the facilitation of optimized collaborative reflective workflows to unlock your full potential across any domain. This magic powers the BMad Method, which is just one of the many modules that exist or are coming soon.
**12 Specialized Agents** working in concert:
## What Makes BMad-Core Different
| Development | Architecture | Product | Leadership |
| ----------- | -------------- | ------------- | -------------- |
| Developer | Architect | PM | Scrum Master |
| UX Designer | Test Architect | Analyst | BMad Master |
| Tech Writer | Game Architect | Game Designer | Game Developer |
**Traditional AI**: Does the thinking for you, providing average, bland answers and solutions
**BMad-CORE**: Brings out the best thinking in you and the AI through guided collaboration, elicitation, and facilitation
**Test Architect** integrates with `@seontechnologies/playwright-utils` for production-ready fixture-based utilities.
### Core Philosophy: Human Amplification, Not Replacement
Each agent brings deep expertise and can be customized to match your team's style.
BMad-Core's AI agents act as expert coaches, mentors, and collaborators who:
## 📦 What's Included
- Ask the right questions to stimulate your thinking
- Provide structured frameworks for complex problems
- Guide you through reflective processes to discover insights
- Help you develop mastery in your chosen domains
- Amplify your natural abilities rather than substituting for them
### Core Modules
## The Collaboration Optimized Reflection Engine
- **BMad Method (BMM)** - Complete agile development framework
- 12 specialized agents
- 34 workflows across 4 phases
- Scale-adaptive planning
- [→ Documentation Hub](./src/modules/bmm/docs/README.md)
At the heart of BMad-Core lies the **C.O.R.E.** system:
- **BMad Builder (BMB)** - Create custom agents and workflows
- Build anything from simple agents to complex modules
- Create domain-specific solutions (legal, medical, finance, education)
- Share your creations in the upcoming community marketplace
- [→ Builder Guide](./src/modules/bmb/README.md)
- **Collaboration**: Human-AI partnership where both contribute unique strengths
- **Optimized**: The collaborative process has been refined for maximum effectiveness
- **Reflection**: Guided thinking that helps you discover better solutions and insights
- **Engine**: The powerful framework that orchestrates specialized agents and workflows
- **Creative Intelligence Suite (CIS)** - Innovation & problem-solving
- Brainstorming, design thinking, storytelling
- 5 creative facilitation workflows
- [→ Creative Workflows](./src/modules/cis/README.md)
## Universal Domain Coverage Through Modules
### Key Features
BMad-CORE works in ANY domain through specialized modules (previously called expansion packs)!
- **🎨 Customizable Agents** - Modify personalities, expertise, and communication styles
- **🌐 Multi-Language Support** - Separate settings for communication and code output
- **📄 Document Sharding** - 90% token savings for large projects
- **🔄 Update-Safe** - Your customizations persist through updates
- **🚀 Web Bundles** - Use in ChatGPT, Claude Projects, or Gemini Gems
### Available Modules with Alpha Release
## 📚 Documentation
- **BMad Core (core)**: Included and used to power every current and future module; includes a master orchestrator for the local environment and one for the web bundles used with ChatGPT or Gemini Gems, for example.
### Quick Links
- **[BMad Method (bmm)](./src/modules/bmm/README.md)**: Agile AI-driven software development - the classic that started it all and is still the best - but with v6, massively improved thanks to a rebuild from the ground up built on the new powerful BMad-CORE engine. The BMad Method has also been expanded to use a new "Scale Adaptive Workflow Engine"™. **[See BMM Documentation](./src/modules/bmm/README.md)**
- **[Quick Start Guide](./src/modules/bmm/docs/quick-start.md)** - 15-minute introduction
- **[Complete BMM Documentation](./src/modules/bmm/docs/README.md)** - All guides and references
- **[Agent Customization](./docs/agent-customization-guide.md)** - Personalize your agents
- **[All Documentation](./docs/index.md)** - Complete documentation index
- **[BMad BoMB (bmb)](./src/modules/bmb/README.md)**: The BMad Builder is your Custom Agent, Workflow, and Module authoring tool - it's now easier than ever to customize existing modules or create whatever you can imagine as a standalone module. **[See BMB Documentation](./src/modules/bmb/README.md)**
### For v4 Users
- **Creative Intelligence Suite (cis)**: Unlock innovation, problem-solving, and creative thinking! Brainstorming that was part of the BMad Method in the past is now part of this standalone module along with other workflows. The power of BMad modules still allows modules to borrow from each other - so the CIS, while standalone, also powers the brainstorming abilities for certain agents within the BMad Method!
- **[v4 Documentation](https://github.com/bmad-code-org/BMAD-METHOD/tree/V4)**
- **[v4 to v6 Upgrade Guide](./docs/v4-to-v6-upgrade.md)**
## What's New in V6-ALPHA
## 💬 Community & Support
Stability, customizability, installation Q&A, massive prompt improvements.
- **[Discord Community](https://discord.gg/gk8jAdXWmj)** - Get help, share projects
- **[GitHub Issues](https://github.com/bmad-code-org/BMAD-METHOD/issues)** - Report bugs, request features
- **[YouTube Channel](https://www.youtube.com/@BMadCode)** - Video tutorials and demos
- **[Web Bundles](https://bmad-code-org.github.io/bmad-bundles/)** - Pre-built agent bundles
Everything has been rewritten from the ground up with best practices and advances learned over previous versions, standardizing on prompt format techniques. There is much more core usage of XML or XML-type tags within markdown, with many conventions and standards that drastically increase agent adherence.
## 🛠️ Development
**Customizability** is a key theme of this new version. All agents are now customizable by modifying a file under the installation bmad/\_cfg/agents. Every agent installed will generate an agent file that you can customize.
For contributors working on the BMad codebase:
The nice thing about this is when agents change or update in future versions, your customizations in these sidecar files will never be lost! You can change the name, their personas, how they talk, what they call you, and most exciting - what language they communicate in!
```bash
# Run all quality checks
npm test
The **BMad installer** is 100% new from the ground up. Along the way you will add:
# Development commands
npm run lint:fix # Fix code style
npm run format:fix # Auto-format code
npm run bundle # Build web bundles
```
- Your name (what the agents will call you and how you'll author documents)
- What language you want the agents to communicate in
- Module-specific customization options
See [CONTRIBUTING.md](CONTRIBUTING.md) for full development guidelines.
When you install, a consolidated agent party is created so now when you use party-mode in the IDE, it is super efficient for the agent running the party to simulate all installed agents. Post alpha release, this will manifest itself in many interesting ways in time for beta - but for now, have fun with party mode and epic sprint retrospectives!
## What's New in v6
Speaking of installation - everything will now install to a single core bmad folder. No more separate root folders for every module! Instead, all will be contained within bmad/.
**v6 represents a complete architectural revolution from v4:**
All IDE selections now support the option to add special install functionality per module.
### 🚀 Major Upgrades
For example, with the alpha release, if you select the BMad Method and Claude Code, you will have an option to install pre-created Claude sub-agents. Not only do they get installed, but certain workflows will have injected into their instructions key indicators to the agent when to activate the sub-agents, removing some non-determinism.
- **BMad Core Framework** - Modular architecture enabling custom domain solutions
- **Scale-Adaptive Intelligence** - Automatic adjustment from bug fixes to enterprise
- **Visual Workflows** - Beautiful SVG diagrams showing complete methodology
- **BMad Builder Module** - Create and share your own AI agent teams
- **50+ Workflows** - Up from 20 in v4, covering every development scenario
- **19 Specialized Agents** - Enhanced with customizable personalities and expertise
- **Update-Safe Customization** - Your configs persist through all updates
- **Web Bundles** - Use agents in ChatGPT, Claude, and Gemini
- **Multi-Language Support** - Separate settings for communication and code
- **Document Sharding** - 90% token savings for large projects
The sub-agent experience is still undergoing some work, so install them if you choose, and remove them if they become a pain.
### 🔄 For v4 Users
When you read about the BoMB below, it will link to more information about various features in this new evolution of BMad Code. One of the exciting features is the new agent types - there are 3 now! The most exciting are the new standalone tiny agents that you can easily generate and deploy free from any module - specialized for your exact needs.
- **[Comprehensive Upgrade Guide](./docs/v4-to-v6-upgrade.md)** - Step-by-step migration
- **[v4 Documentation Archive](https://github.com/bmad-code-org/BMAD-METHOD/tree/V4)** - Legacy reference
- Backwards compatibility where possible
- Smooth migration path with installer detection
### BMad Method (BMM)
## 📄 License
📚 **[Full BMM Documentation](./src/modules/bmm/README.md)** | **[v6 Workflows Guide](./src/modules/bmm/workflows/README.md)**
MIT License - See [LICENSE](LICENSE) for details.
The BMad Method is significantly transforming and yet more powerful than ever. **Scale Adaptive** is a new term that means when you start the workflow to create a PRD or a GDD (or a simple tech-spec in the case of simple tasks), you will first answer some questions about the scope of the project, new vs. existing codebase and its state, and other questions. This will trigger a leveling of the effort from 0-4, and based on this scale adaptation, it will guide the workflow in different directions.
Right now, this is still a bit alpha feeling and disjointed, but before beta it will be tied together through all four workflow phases with a potential single orchestration if you choose - or you can still jump right in, especially for simple tasks that just need a simple tech-spec and then right off to development.
To test and experience this now, here is the new main flow for BMM v6 alpha:
(Docs will be all linked in soon with new user guide and workflow diagrams coming this week)
**NOTE:** Game Development expansion packs are all being rolled into the official BMad Method module - along with any more game engine platforms being added. Additionally, game development planning for the GDD is not only scale adaptive, but also adapts to the type of game you are making - so you can plan all that is needed for your dream game!
#### **PHASE 1 - Analysis**
**Analyst:**
- `brainstorm-project`
- `research` (market research, deep research, deep research prompt generation)
- `product-brief`
**Game Designer (Optional):**
- `brainstorm-game`
- `game-brief`
- `research`
**Trademarks:** BMAD and BMAD-METHOD are trademarks of BMad Code, LLC.
---
#### **PHASE 2 - Planning**
<p align="center">
<a href="https://github.com/bmad-code-org/BMAD-METHOD/graphs/contributors">
<img src="https://contrib.rocks/image?repo=bmad-code-org/BMAD-METHOD" alt="Contributors">
</a>
</p>
**PM:**
- `plan-project`
**Game Designer:**
- `plan-game` (calls the same plan-project workflow, but input docs or your answers should drive it towards GDD)
---
#### **PHASE 3 - Solutioning**
**Architect or Game Architect:**
Just like the scale-adjusted planning, architecture is the same. No more document sharding though!
Now in the IDE you create an architecture that adapts to the type of project you are working on - based on the inputs from your PRD, it will adapt the sections it includes to your project type. No longer is the architecture biased just towards full stack or back-end APIs. There are many more options now, from embedded hardware to mobile to many other options - with many more coming with beta.
- `solution-architecture`
> **Note:** Testing, DevOps, or security concerns beyond the basics are generally not included in the architecture. If it is more complicated, especially for complex massive undertakings, you will be suggested to pull in specific agents to help with those areas. _(Not released with alpha.0, coming soon)_
Once the full architecture is complete, you can still use the PO to run the checklist to validate the epics and stories are still correct - although the architect should also be keeping them updated as needed (needs some tuning during alpha). Once done, then it's time to create the tech spec for your first epic.
- `tech-spec`
The tech spec pulls all technical information from all planning thus far, along with any further research needed from the web to produce an **Epic Tech Spec** - each epic will have one. This is going to make the SM even more capable of finding the info it needs for each story when we get to phase 4!
---
#### **PHASE 4 - Implementation**
And now here we are at phase 4 - where we, just like in BMad Method of yore, use the SM and the Dev Agent. No more QA agent here though; the dev now has a dev task and also a senior dev agent review task.
**Scrum Master (SM) Tasks:**
Before the dev starts, the SM will:
1. `create-story`
2. `story-context` _(NEW!)_
**Story-context** is a game-changing new feature beyond what we had with create-story in the past. Create-story still pulls in all the info it needs from the tech-spec and elsewhere as needed (including previously completed stories), but the generation of the new story-context takes it to a whole new level.
This real-time prep means no more generic devLoadAlways list of story files. During the alpha phase, we will be tuning what goes into this context, but this is going to supercharge and specialize your dev to the story at hand!
---
> **🎉 There are many other exciting changes throughout for you to discover during the alpha BMad Method module!**
## CIS
The CIS has 5 agents to try out, each with their own workflow! This is a new module that will drastically change over time.
- [CIS Readme](./src/modules/cis/readme.md)
### BoMB: BMad Builder (BMB)
📚 **[Full BMB Documentation](./src/modules/bmb/README.md)** | **[Agent Creation Guide](./src/modules/bmb/workflows/create-agent/README.md)**
#### Agent Docs
- [Agent Architecture](src/modules/bmb/workflows/create-agent/agent-architecture)
- [Agent command patterns](src/modules/bmb/workflows/create-agent/agent-command-patterns.md)
- [Agent Types](src/modules/bmb/workflows/create-agent/agent-types.md)
- [Communication Styles](src/modules/bmb/workflows/create-agent/communication-styles.md)
#### Modules
Modules are what we used to call Expansion Packs. A new repository to contribute modules is coming very soon with the beta release where you can start contributing modules - we just want to make sure the final format and conventions are stable. A module will generally be made up of agents and workflows. Tasks are still also possible, but generally should be avoided in favor of more flexible workflows. Workflows can have sub-workflows and soon will support a standardized multi-workflow orchestration pattern that the BMad master will be able to guide users through.
- [Module Structure](src/modules/bmb/workflows/create-module/module-structure.md)
#### Workflows
What used to be tasks and create-doc templates are now all workflows! Simpler, yet more powerful and support many ways of achieving many different outcomes! A lot more documentation will be coming. This document is used by the agent builder to generate workflows or convert to workflows, but there is a lot more than what we have documented here in this alpha doc.
- [Workflow Creation Guide](src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md)
### Installer Changes
- [IDE Injections](docs/installers-bundlers/ide-injections)
- [Installers Modules Platforms References](docs/installers-bundlers/installers-modules-platforms-reference)
- [Web Bundler Usage](docs/installers-bundlers/web-bundler-usage)
- [Claude Code Sub Module BMM Installer](src/modules/bmm/sub-modules/claude-code/readme.md)
## Support & Community
- 💬 [Discord Community](https://discord.gg/gk8jAdXWmj) - Get help, share ideas, collaborate
- 🐛 [Issue Tracker](https://github.com/bmad-code-org/BMAD-METHOD/issues) - Bug reports and feature requests
- 💬 [Discussions](https://github.com/bmad-code-org/BMAD-METHOD/discussions) - Community conversations
## Contributing
We welcome contributions and new module development!
📋 **[Read CONTRIBUTING.md](CONTRIBUTING.md)** - Complete contribution guide
## License
MIT License - see [LICENSE](LICENSE) for details.
## Trademark Notice
BMAD™ and BMAD-METHOD™ are trademarks of BMad Code, LLC. All rights reserved.
[![Contributors](https://contrib.rocks/image?repo=bmad-code-org/BMAD-METHOD)](https://github.com/bmad-code-org/BMAD-METHOD/graphs/contributors)
<sub>Built with ❤️ for the human-AI collaboration community</sub>
<p align="center">
<sub>Built with ❤️ for the human-AI collaboration community</sub>
</p>

View File

@@ -1,3 +0,0 @@
name,displayName,title,icon,role,identity,communicationStyle,principles,module,path
"bmad-master","BMad Master","BMad Master Executor, Knowledge Custodian, and Workflow Orchestrator","🧙","Master Task Executor + BMad Expert + Guiding Facilitator Orchestrator","Master-level expert in the BMAD Core Platform and all loaded modules with comprehensive knowledge of all resources, tasks, and workflows. Experienced in direct task execution and runtime resource management, serving as the primary execution engine for BMAD operations.","Direct and comprehensive, refers to himself in the 3rd person. Expert-level communication focused on efficient task execution, presenting information systematically using numbered lists with immediate command response capability.","Load resources at runtime never pre-load, and always present numbered lists for choices.","core","bmad/core/agents/bmad-master.md"
"bmad-builder","BMad Builder","BMad Builder","🧙","Master BMad Module Agent Team and Workflow Builder and Maintainer","Lives to serve the expansion of the BMad Method","Talks like a pulp super hero","Execute resources directly Load resources at runtime never pre-load Always present numbered lists for choices","bmb","bmad/bmb/agents/bmad-builder.md"
1 name displayName title icon role identity communicationStyle principles module path
2 bmad-master BMad Master BMad Master Executor, Knowledge Custodian, and Workflow Orchestrator 🧙 Master Task Executor + BMad Expert + Guiding Facilitator Orchestrator Master-level expert in the BMAD Core Platform and all loaded modules with comprehensive knowledge of all resources, tasks, and workflows. Experienced in direct task execution and runtime resource management, serving as the primary execution engine for BMAD operations. Direct and comprehensive, refers to himself in the 3rd person. Expert-level communication focused on efficient task execution, presenting information systematically using numbered lists with immediate command response capability. Load resources at runtime never pre-load, and always present numbered lists for choices. core bmad/core/agents/bmad-master.md
3 bmad-builder BMad Builder BMad Builder 🧙 Master BMad Module Agent Team and Workflow Builder and Maintainer Lives to serve the expansion of the BMad Method Talks like a pulp super hero Execute resources directly Load resources at runtime never pre-load Always present numbered lists for choices bmb bmad/bmb/agents/bmad-builder.md

View File

@@ -1,42 +0,0 @@
# Agent Customization
# Customize any section below - all are optional
# After editing: npx bmad-method build <agent-name>
# Override agent name
agent:
metadata:
name: ""
# Replace entire persona (not merged)
persona:
role: ""
identity: ""
communication_style: ""
principles: []
# Add custom critical actions (appended after standard config loading)
critical_actions: []
# Add persistent memories for the agent
memories: []
# Example:
# memories:
# - "User prefers detailed technical explanations"
# - "Current project uses React and TypeScript"
# Add custom menu items (appended to base menu)
# Don't include * prefix or help/exit - auto-injected
menu: []
# Example:
# menu:
# - trigger: my-workflow
# workflow: "{project-root}/custom/my.yaml"
# description: My custom workflow
# Add custom prompts (for action="#id" handlers)
prompts: []
# Example:
# prompts:
# - id: my-prompt
# content: |
# Prompt instructions here

View File

@@ -1,42 +0,0 @@
# Agent Customization
# Customize any section below - all are optional
# After editing: npx bmad-method build <agent-name>
# Override agent name
agent:
metadata:
name: ""
# Replace entire persona (not merged)
persona:
role: ""
identity: ""
communication_style: ""
principles: []
# Add custom critical actions (appended after standard config loading)
critical_actions: []
# Add persistent memories for the agent
memories: []
# Example:
# memories:
# - "User prefers detailed technical explanations"
# - "Current project uses React and TypeScript"
# Add custom menu items (appended to base menu)
# Don't include * prefix or help/exit - auto-injected
menu: []
# Example:
# menu:
# - trigger: my-workflow
# workflow: "{project-root}/custom/my.yaml"
# description: My custom workflow
# Add custom prompts (for action="#id" handlers)
prompts: []
# Example:
# prompts:
# - id: my-prompt
# content: |
# Prompt instructions here

View File

@@ -1,72 +0,0 @@
type,name,module,path,hash
"csv","agent-manifest","_cfg","bmad/_cfg/agent-manifest.csv","4d7fb4998ddad86011c22b5c579747d9247edeab75a92406c2b10e1bc40d3333"
"csv","task-manifest","_cfg","bmad/_cfg/task-manifest.csv","46f98b1753914dc6193c9ca8b6427fadc9a6d71747cdc8f5159792576c004b60"
"csv","workflow-manifest","_cfg","bmad/_cfg/workflow-manifest.csv","ad9ffffd019cbe86a43b1e1b9bec61ee08364060d81b507b219505397c62d1da"
"yaml","manifest","_cfg","bmad/_cfg/manifest.yaml","fc21d1a017633c845a71e14e079d6da84b5aa096ddb9aacd10073f58c361efc6"
"js","installer","bmb","bmad/bmb/workflows/create-module/installer-templates/installer.js","a539cd5266471dab9359bd3ed849d7b45c5de842a9d5869f8332a5a8bb81fad5"
"md","agent-architecture","bmb","bmad/bmb/workflows/create-agent/agent-architecture.md","ea570cf9893c08d3b9519291c89848d550506a8d831a37eb87f60f1e09980e7f"
"md","agent-command-patterns","bmb","bmad/bmb/workflows/create-agent/agent-command-patterns.md","1dbc414c0c6c9e6b54fb0553f65a28743a26e2a172c35b79fc3dc350d50a378d"
"md","agent-types","bmb","bmad/bmb/workflows/create-agent/agent-types.md","a9429475767b6db4bb74fb27e328a8fdb3e8e7176edb2920ae3e0106d85e9d83"
"md","bmad-builder","bmb","bmad/bmb/agents/bmad-builder.md","1a53d7d3629ce5c4bd42d2901259693acb69aa9558c94523e3f894740cb964a5"
"md","brainstorm-context","bmb","bmad/bmb/workflows/create-agent/brainstorm-context.md","85be72976c4ff5d79b2bce8e6b433f5e3526a7466a72b3efdb4f6d3d118e1d15"
"md","brainstorm-context","bmb","bmad/bmb/workflows/create-module/brainstorm-context.md","62b902177d2cb56df2d6a12e5ec5c7d75ec94770ce22ac72c96691a876ed2e6a"
"md","brainstorm-context","bmb","bmad/bmb/workflows/create-workflow/brainstorm-context.md","f246ec343e338068b37fee8c93aa6d2fe1d4857addba6db3fe6ad80a2a2950e8"
"md","checklist","bmb","bmad/bmb/workflows/audit-workflow/checklist.md","8207ef4dfd3c1ca92dc96451f68c65f8f813b4c9a6c82d34fd6a9ac8cdcf0b44"
"md","checklist","bmb","bmad/bmb/workflows/convert-legacy/checklist.md","3f4faaacd224022af5ddf4ae0949d472f9eca3afa0d4ad0c24f19f93caaa9bf9"
"md","checklist","bmb","bmad/bmb/workflows/create-agent/checklist.md","837667f2bd601833568b327b961ba0dd363ba9a0d240625eebc9d1a9685ecbd8"
"md","checklist","bmb","bmad/bmb/workflows/create-module/checklist.md","494f5bcef32b3abfd4fb24023fdcfad70b222521dae12e71049ec55e6041cc08"
"md","checklist","bmb","bmad/bmb/workflows/create-workflow/checklist.md","78325ed31532c0059a3f647f7f4cda7702919a9ef43634afa419d3fa30ee2a0c"
"md","checklist","bmb","bmad/bmb/workflows/create-workflow/workflow-template/checklist.md","a950c68c71cd54b5a3ef4c8d68ad8ec40d5d1fa057f7c95e697e975807ae600b"
"md","checklist","bmb","bmad/bmb/workflows/edit-workflow/checklist.md","9677c087ddfb40765e611de23a5a009afe51c347683dfe5f7d9fd33712ac4795"
"md","checklist","bmb","bmad/bmb/workflows/module-brief/checklist.md","821c90da14f02b967cb468b19f59a26c0d8f044d7a81a8b97631fb8ffac7648f"
"md","checklist","bmb","bmad/bmb/workflows/redoc/checklist.md","2117d60b14e19158f4b586878b3667d715d3b62f79815b72b55c2376ce31aae8"
"md","communication-styles","bmb","bmad/bmb/workflows/create-agent/communication-styles.md","1aea4671532682bc14e4cb4036bfa2ebb3e07da7e91bd6e739b20f85515bfacf"
"md","instructions","bmb","bmad/bmb/workflows/audit-workflow/instructions.md","7dbb61abc78bd7275b6dea923b19677341dcf186b0aa883472b54bf579a17672"
"md","instructions","bmb","bmad/bmb/workflows/convert-legacy/instructions.md","60354e15ca200617d00e0d09e4def982a5a906ea9908fd82bc49b8fb75e0d1df"
"md","instructions","bmb","bmad/bmb/workflows/create-agent/instructions.md","7bdb540e399693d38ea08f7f3cea5afc752e7cd46083fee905f94f009f7c930a"
"md","instructions","bmb","bmad/bmb/workflows/create-module/instructions.md","5f321690f4774058516d3d65693224e759ec87d98d7a1a281b38222ab963ca8b"
"md","instructions","bmb","bmad/bmb/workflows/create-workflow/instructions.md","d739389d9eb20e9297737a8cfca7a8bdc084c778b6512a2433442c651d0ea871"
"md","instructions","bmb","bmad/bmb/workflows/create-workflow/workflow-template/instructions.md","daf3d312e5a60d7c4cbc308014e3c69eeeddd70bd41bd139d328318da1e3ecb2"
"md","instructions","bmb","bmad/bmb/workflows/edit-workflow/instructions.md","a6f34e3117d086213b7b58eb4fa0d3c2d0af943e8d9299be4a9b91d4fd444f19"
"md","instructions","bmb","bmad/bmb/workflows/module-brief/instructions.md","e2275373850ea0745f396ad0c3aa192f06081b52d98777650f6b645333b62926"
"md","instructions","bmb","bmad/bmb/workflows/redoc/instructions.md","fccc798c8904c35807bb6a723650c10aa19ee74ab5a1e44d1b242bd125d3e80e"
"md","module-structure","bmb","bmad/bmb/workflows/create-module/module-structure.md","9970768af75da79b4cdef78096c751e70a3a00194af58dca7ed58a79d324423f"
"md","README","bmb","bmad/bmb/README.md","af2cdbeede53eff1ecf95c1e6d7ee1535366ba09b352657fa05576792a2bafb4"
"md","README","bmb","bmad/bmb/workflows/convert-legacy/README.md","3391972c16b7234dae61b2d06daeb6310d1760117ece57abcca0c178c4c33eea"
"md","README","bmb","bmad/bmb/workflows/create-agent/README.md","cc1d51e22c425e005ddbe285510ff5a6fc6cf1e40d0ffe5ff421c1efbcbe94c0"
"md","README","bmb","bmad/bmb/workflows/create-module/README.md","cdacbe6c4896fd02714b598e709b785af38d41d7e42d39802d695617fe221b39"
"md","README","bmb","bmad/bmb/workflows/create-workflow/README.md","5b868030bf6fcb597bd3ff65bff30ccaf708b735ebb13bd0595fd8692258f425"
"md","README","bmb","bmad/bmb/workflows/edit-workflow/README.md","a1c2da9b67d18ba9adc107be91e3d142ecb820b2054dd69d2538c9ceee9eb89a"
"md","README","bmb","bmad/bmb/workflows/module-brief/README.md","05772db9095db7b4944e9fc47a049a3609c506be697537fd5fd9e409c10b92f4"
"md","README","bmb","bmad/bmb/workflows/redoc/README.md","a1b7e02427cf252bca69a8a1ee0f554844a6a01b5d568d74f494c71542056173"
"md","template","bmb","bmad/bmb/workflows/create-workflow/workflow-template/template.md","c98f65a122035b456f1cbb2df6ecaf06aa442746d93a29d1d0ed2fc9274a43ee"
"md","template","bmb","bmad/bmb/workflows/module-brief/template.md","7d1ad5ec40b06510fcbb0a3da8ea32aefa493e5b04c3a2bba90ce5685b894275"
"md","workflow-creation-guide","bmb","bmad/bmb/workflows/create-workflow/workflow-creation-guide.md","3233f2db6e0dec0250780840f95b38f7bfe9390b045a497d66f94f82d7ffb1af"
"yaml","bmad-builder.agent","bmb","bmad/bmb/agents/bmad-builder.agent.yaml",""
"yaml","config","bmb","bmad/bmb/config.yaml","3baf3d7fee63f22959be86f2c310f3a4cc5afa748cd707e939ce3ee83745999f"
"yaml","install-module-config","bmb","bmad/bmb/workflows/create-module/installer-templates/install-module-config.yaml","69c03628b04600f76aa1aa136094d59514f8eb900529114f7233dc28f2d5302d"
"yaml","workflow","bmb","bmad/bmb/workflows/audit-workflow/workflow.yaml","5b8d26675e30d006f57631be2f42b00575b0d00f87abea408bf0afd09d73826e"
"yaml","workflow","bmb","bmad/bmb/workflows/convert-legacy/workflow.yaml","c31cee9cc0d457b25954554d7620c7455b3f1b5aa5b5d72fbc765ea7902c3c0c"
"yaml","workflow","bmb","bmad/bmb/workflows/create-agent/workflow.yaml","3d24d25cb58beed1198d465476615851f124d5a01bf4b358d07ff9f1451cd582"
"yaml","workflow","bmb","bmad/bmb/workflows/create-module/workflow.yaml","f797507b0d3ec8292a670394e75e0dda682f338b3e266d0cd9af4bbb4eda8358"
"yaml","workflow","bmb","bmad/bmb/workflows/create-workflow/workflow-template/workflow.yaml","2eeb8d1724779956f8e89fda8fa850c3fb1d2b8c6eefecd1b5a4d5f9f58adb91"
"yaml","workflow","bmb","bmad/bmb/workflows/create-workflow/workflow.yaml","0ef3f99857d135d062eca2138fe19fb75d3c4adcd5e0b291a86415dceda003ca"
"yaml","workflow","bmb","bmad/bmb/workflows/edit-workflow/workflow.yaml","a8e451fdf95ae8a76feb454094b86c7c5c7a3050315eb3c7fe38b58e57514776"
"yaml","workflow","bmb","bmad/bmb/workflows/module-brief/workflow.yaml","4fde4965106a30bb9c528dfc0f82fdefeccf6f65b25bbb169040258d81070b1f"
"yaml","workflow","bmb","bmad/bmb/workflows/redoc/workflow.yaml","8906c8d50748bfcdfa9aa7d95ae284d02aea92b10ece262be1c793ee99358687"
"csv","adv-elicit-methods","core","bmad/core/tasks/adv-elicit-methods.csv","b4e925870f902862899f12934e617c3b4fe002d1b652c99922b30fa93482533b"
"csv","brain-methods","core","bmad/core/workflows/brainstorming/brain-methods.csv","ecffe2f0ba263aac872b2d2c95a3f7b1556da2a980aa0edd3764ffb2f11889f3"
"md","bmad-master","core","bmad/core/agents/bmad-master.md","d5a8f4c202e0637844b7c481c6b1284f4a8175017f070a23de849f53ead62625"
"md","instructions","core","bmad/core/workflows/brainstorming/instructions.md","32961c158cf5c0575ff0aac6e6532ea177b824e96caddafa31223485df10bc4e"
"md","instructions","core","bmad/core/workflows/party-mode/instructions.md","ea0e0e76de91d872efb3b4397627801452f21a39d094a77c41edc93f8dc4238b"
"md","README","core","bmad/core/workflows/brainstorming/README.md","ca469d9fbb2b9156491d160e11e2517fdf85ea2c29f41f92b22d4027fe7d9d2a"
"md","template","core","bmad/core/workflows/brainstorming/template.md","b5c760f4cea2b56c75ef76d17a87177b988ac846657f4b9819ec125d125b7386"
"xml","adv-elicit","core","bmad/core/tasks/adv-elicit.xml","94f004a336e434cd231de35eb864435ac51cd5888e9befe66e326eb16497121e"
"xml","bmad-web-orchestrator.agent","core","bmad/core/agents/bmad-web-orchestrator.agent.xml","91a5c1b660befa7365f427640b4fa3dbb18f5e48cd135560303dae0939dccf12"
"xml","index-docs","core","bmad/core/tasks/index-docs.xml","8d011ea850571d448932814bad7cbedcc8aa6e3e28868f55dcc7c2ba82158901"
"xml","validate-workflow","core","bmad/core/tasks/validate-workflow.xml","1244874db38a55d957995ed224812ef868ff1451d8e1901cc5887dd0eb1c236e"
"xml","workflow","core","bmad/core/tasks/workflow.xml","0b2b7bd184e099869174cc8d9125fce08bcd3fd64fad50ff835a42eccf6620e2"
"yaml","bmad-master.agent","core","bmad/core/agents/bmad-master.agent.yaml",""
"yaml","config","core","bmad/core/config.yaml","c5267c6e72f5d79344464082c2c73ddec88b7433705d38002993fe745c3cbe23"
"yaml","workflow","core","bmad/core/workflows/brainstorming/workflow.yaml","52db57678606b98ec47e603c253c40f98815c49417df3088412bbbd8aa7f34d3"
"yaml","workflow","core","bmad/core/workflows/party-mode/workflow.yaml","979e986780ce919abbdae89b3bd264d34a1436036a7eb6f82f40e59c9ce7c2e8"
1 type name module path hash
2 csv agent-manifest _cfg bmad/_cfg/agent-manifest.csv 4d7fb4998ddad86011c22b5c579747d9247edeab75a92406c2b10e1bc40d3333
3 csv task-manifest _cfg bmad/_cfg/task-manifest.csv 46f98b1753914dc6193c9ca8b6427fadc9a6d71747cdc8f5159792576c004b60
4 csv workflow-manifest _cfg bmad/_cfg/workflow-manifest.csv ad9ffffd019cbe86a43b1e1b9bec61ee08364060d81b507b219505397c62d1da
5 yaml manifest _cfg bmad/_cfg/manifest.yaml fc21d1a017633c845a71e14e079d6da84b5aa096ddb9aacd10073f58c361efc6
6 js installer bmb bmad/bmb/workflows/create-module/installer-templates/installer.js a539cd5266471dab9359bd3ed849d7b45c5de842a9d5869f8332a5a8bb81fad5
7 md agent-architecture bmb bmad/bmb/workflows/create-agent/agent-architecture.md ea570cf9893c08d3b9519291c89848d550506a8d831a37eb87f60f1e09980e7f
8 md agent-command-patterns bmb bmad/bmb/workflows/create-agent/agent-command-patterns.md 1dbc414c0c6c9e6b54fb0553f65a28743a26e2a172c35b79fc3dc350d50a378d
9 md agent-types bmb bmad/bmb/workflows/create-agent/agent-types.md a9429475767b6db4bb74fb27e328a8fdb3e8e7176edb2920ae3e0106d85e9d83
10 md bmad-builder bmb bmad/bmb/agents/bmad-builder.md 1a53d7d3629ce5c4bd42d2901259693acb69aa9558c94523e3f894740cb964a5
11 md brainstorm-context bmb bmad/bmb/workflows/create-agent/brainstorm-context.md 85be72976c4ff5d79b2bce8e6b433f5e3526a7466a72b3efdb4f6d3d118e1d15
12 md brainstorm-context bmb bmad/bmb/workflows/create-module/brainstorm-context.md 62b902177d2cb56df2d6a12e5ec5c7d75ec94770ce22ac72c96691a876ed2e6a
13 md brainstorm-context bmb bmad/bmb/workflows/create-workflow/brainstorm-context.md f246ec343e338068b37fee8c93aa6d2fe1d4857addba6db3fe6ad80a2a2950e8
14 md checklist bmb bmad/bmb/workflows/audit-workflow/checklist.md 8207ef4dfd3c1ca92dc96451f68c65f8f813b4c9a6c82d34fd6a9ac8cdcf0b44
15 md checklist bmb bmad/bmb/workflows/convert-legacy/checklist.md 3f4faaacd224022af5ddf4ae0949d472f9eca3afa0d4ad0c24f19f93caaa9bf9
16 md checklist bmb bmad/bmb/workflows/create-agent/checklist.md 837667f2bd601833568b327b961ba0dd363ba9a0d240625eebc9d1a9685ecbd8
17 md checklist bmb bmad/bmb/workflows/create-module/checklist.md 494f5bcef32b3abfd4fb24023fdcfad70b222521dae12e71049ec55e6041cc08
18 md checklist bmb bmad/bmb/workflows/create-workflow/checklist.md 78325ed31532c0059a3f647f7f4cda7702919a9ef43634afa419d3fa30ee2a0c
19 md checklist bmb bmad/bmb/workflows/create-workflow/workflow-template/checklist.md a950c68c71cd54b5a3ef4c8d68ad8ec40d5d1fa057f7c95e697e975807ae600b
20 md checklist bmb bmad/bmb/workflows/edit-workflow/checklist.md 9677c087ddfb40765e611de23a5a009afe51c347683dfe5f7d9fd33712ac4795
21 md checklist bmb bmad/bmb/workflows/module-brief/checklist.md 821c90da14f02b967cb468b19f59a26c0d8f044d7a81a8b97631fb8ffac7648f
22 md checklist bmb bmad/bmb/workflows/redoc/checklist.md 2117d60b14e19158f4b586878b3667d715d3b62f79815b72b55c2376ce31aae8
23 md communication-styles bmb bmad/bmb/workflows/create-agent/communication-styles.md 1aea4671532682bc14e4cb4036bfa2ebb3e07da7e91bd6e739b20f85515bfacf
24 md instructions bmb bmad/bmb/workflows/audit-workflow/instructions.md 7dbb61abc78bd7275b6dea923b19677341dcf186b0aa883472b54bf579a17672
25 md instructions bmb bmad/bmb/workflows/convert-legacy/instructions.md 60354e15ca200617d00e0d09e4def982a5a906ea9908fd82bc49b8fb75e0d1df
26 md instructions bmb bmad/bmb/workflows/create-agent/instructions.md 7bdb540e399693d38ea08f7f3cea5afc752e7cd46083fee905f94f009f7c930a
27 md instructions bmb bmad/bmb/workflows/create-module/instructions.md 5f321690f4774058516d3d65693224e759ec87d98d7a1a281b38222ab963ca8b
28 md instructions bmb bmad/bmb/workflows/create-workflow/instructions.md d739389d9eb20e9297737a8cfca7a8bdc084c778b6512a2433442c651d0ea871
29 md instructions bmb bmad/bmb/workflows/create-workflow/workflow-template/instructions.md daf3d312e5a60d7c4cbc308014e3c69eeeddd70bd41bd139d328318da1e3ecb2
30 md instructions bmb bmad/bmb/workflows/edit-workflow/instructions.md a6f34e3117d086213b7b58eb4fa0d3c2d0af943e8d9299be4a9b91d4fd444f19
31 md instructions bmb bmad/bmb/workflows/module-brief/instructions.md e2275373850ea0745f396ad0c3aa192f06081b52d98777650f6b645333b62926
32 md instructions bmb bmad/bmb/workflows/redoc/instructions.md fccc798c8904c35807bb6a723650c10aa19ee74ab5a1e44d1b242bd125d3e80e
33 md module-structure bmb bmad/bmb/workflows/create-module/module-structure.md 9970768af75da79b4cdef78096c751e70a3a00194af58dca7ed58a79d324423f
34 md README bmb bmad/bmb/README.md af2cdbeede53eff1ecf95c1e6d7ee1535366ba09b352657fa05576792a2bafb4
35 md README bmb bmad/bmb/workflows/convert-legacy/README.md 3391972c16b7234dae61b2d06daeb6310d1760117ece57abcca0c178c4c33eea
36 md README bmb bmad/bmb/workflows/create-agent/README.md cc1d51e22c425e005ddbe285510ff5a6fc6cf1e40d0ffe5ff421c1efbcbe94c0
37 md README bmb bmad/bmb/workflows/create-module/README.md cdacbe6c4896fd02714b598e709b785af38d41d7e42d39802d695617fe221b39
38 md README bmb bmad/bmb/workflows/create-workflow/README.md 5b868030bf6fcb597bd3ff65bff30ccaf708b735ebb13bd0595fd8692258f425
39 md README bmb bmad/bmb/workflows/edit-workflow/README.md a1c2da9b67d18ba9adc107be91e3d142ecb820b2054dd69d2538c9ceee9eb89a
40 md README bmb bmad/bmb/workflows/module-brief/README.md 05772db9095db7b4944e9fc47a049a3609c506be697537fd5fd9e409c10b92f4
41 md README bmb bmad/bmb/workflows/redoc/README.md a1b7e02427cf252bca69a8a1ee0f554844a6a01b5d568d74f494c71542056173
42 md template bmb bmad/bmb/workflows/create-workflow/workflow-template/template.md c98f65a122035b456f1cbb2df6ecaf06aa442746d93a29d1d0ed2fc9274a43ee
43 md template bmb bmad/bmb/workflows/module-brief/template.md 7d1ad5ec40b06510fcbb0a3da8ea32aefa493e5b04c3a2bba90ce5685b894275
44 md workflow-creation-guide bmb bmad/bmb/workflows/create-workflow/workflow-creation-guide.md 3233f2db6e0dec0250780840f95b38f7bfe9390b045a497d66f94f82d7ffb1af
45 yaml bmad-builder.agent bmb bmad/bmb/agents/bmad-builder.agent.yaml
46 yaml config bmb bmad/bmb/config.yaml 3baf3d7fee63f22959be86f2c310f3a4cc5afa748cd707e939ce3ee83745999f
47 yaml install-module-config bmb bmad/bmb/workflows/create-module/installer-templates/install-module-config.yaml 69c03628b04600f76aa1aa136094d59514f8eb900529114f7233dc28f2d5302d
48 yaml workflow bmb bmad/bmb/workflows/audit-workflow/workflow.yaml 5b8d26675e30d006f57631be2f42b00575b0d00f87abea408bf0afd09d73826e
49 yaml workflow bmb bmad/bmb/workflows/convert-legacy/workflow.yaml c31cee9cc0d457b25954554d7620c7455b3f1b5aa5b5d72fbc765ea7902c3c0c
50 yaml workflow bmb bmad/bmb/workflows/create-agent/workflow.yaml 3d24d25cb58beed1198d465476615851f124d5a01bf4b358d07ff9f1451cd582
51 yaml workflow bmb bmad/bmb/workflows/create-module/workflow.yaml f797507b0d3ec8292a670394e75e0dda682f338b3e266d0cd9af4bbb4eda8358
52 yaml workflow bmb bmad/bmb/workflows/create-workflow/workflow-template/workflow.yaml 2eeb8d1724779956f8e89fda8fa850c3fb1d2b8c6eefecd1b5a4d5f9f58adb91
53 yaml workflow bmb bmad/bmb/workflows/create-workflow/workflow.yaml 0ef3f99857d135d062eca2138fe19fb75d3c4adcd5e0b291a86415dceda003ca
54 yaml workflow bmb bmad/bmb/workflows/edit-workflow/workflow.yaml a8e451fdf95ae8a76feb454094b86c7c5c7a3050315eb3c7fe38b58e57514776
55 yaml workflow bmb bmad/bmb/workflows/module-brief/workflow.yaml 4fde4965106a30bb9c528dfc0f82fdefeccf6f65b25bbb169040258d81070b1f
56 yaml workflow bmb bmad/bmb/workflows/redoc/workflow.yaml 8906c8d50748bfcdfa9aa7d95ae284d02aea92b10ece262be1c793ee99358687
57 csv adv-elicit-methods core bmad/core/tasks/adv-elicit-methods.csv b4e925870f902862899f12934e617c3b4fe002d1b652c99922b30fa93482533b
58 csv brain-methods core bmad/core/workflows/brainstorming/brain-methods.csv ecffe2f0ba263aac872b2d2c95a3f7b1556da2a980aa0edd3764ffb2f11889f3
59 md bmad-master core bmad/core/agents/bmad-master.md d5a8f4c202e0637844b7c481c6b1284f4a8175017f070a23de849f53ead62625
60 md instructions core bmad/core/workflows/brainstorming/instructions.md 32961c158cf5c0575ff0aac6e6532ea177b824e96caddafa31223485df10bc4e
61 md instructions core bmad/core/workflows/party-mode/instructions.md ea0e0e76de91d872efb3b4397627801452f21a39d094a77c41edc93f8dc4238b
62 md README core bmad/core/workflows/brainstorming/README.md ca469d9fbb2b9156491d160e11e2517fdf85ea2c29f41f92b22d4027fe7d9d2a
63 md template core bmad/core/workflows/brainstorming/template.md b5c760f4cea2b56c75ef76d17a87177b988ac846657f4b9819ec125d125b7386
64 xml adv-elicit core bmad/core/tasks/adv-elicit.xml 94f004a336e434cd231de35eb864435ac51cd5888e9befe66e326eb16497121e
65 xml bmad-web-orchestrator.agent core bmad/core/agents/bmad-web-orchestrator.agent.xml 91a5c1b660befa7365f427640b4fa3dbb18f5e48cd135560303dae0939dccf12
66 xml index-docs core bmad/core/tasks/index-docs.xml 8d011ea850571d448932814bad7cbedcc8aa6e3e28868f55dcc7c2ba82158901
67 xml validate-workflow core bmad/core/tasks/validate-workflow.xml 1244874db38a55d957995ed224812ef868ff1451d8e1901cc5887dd0eb1c236e
68 xml workflow core bmad/core/tasks/workflow.xml 0b2b7bd184e099869174cc8d9125fce08bcd3fd64fad50ff835a42eccf6620e2
69 yaml bmad-master.agent core bmad/core/agents/bmad-master.agent.yaml
70 yaml config core bmad/core/config.yaml c5267c6e72f5d79344464082c2c73ddec88b7433705d38002993fe745c3cbe23
71 yaml workflow core bmad/core/workflows/brainstorming/workflow.yaml 52db57678606b98ec47e603c253c40f98815c49417df3088412bbbd8aa7f34d3
72 yaml workflow core bmad/core/workflows/party-mode/workflow.yaml 979e986780ce919abbdae89b3bd264d34a1436036a7eb6f82f40e59c9ce7c2e8

View File

@@ -1,10 +0,0 @@
installation:
version: 6.0.0-alpha.0
installDate: "2025-10-18T03:30:57.841Z"
lastUpdated: "2025-10-18T03:30:57.841Z"
modules:
- core
- bmb
ides:
- claude-code
- codex

View File

@@ -1 +0,0 @@
name,displayName,description,module,path
1 name displayName description module path

View File

@@ -1,11 +0,0 @@
name,description,module,path
"brainstorming","Facilitate interactive brainstorming sessions using diverse creative techniques. This workflow facilitates interactive brainstorming sessions using diverse creative techniques. The session is highly interactive, with the AI acting as a facilitator to guide the user through various ideation methods to generate and refine creative solutions.","core","bmad/core/workflows/brainstorming/workflow.yaml"
"party-mode","Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations","core","bmad/core/workflows/party-mode/workflow.yaml"
"audit-workflow","Comprehensive workflow quality audit - validates structure, config standards, variable usage, bloat detection, and web_bundle completeness. Performs deep analysis of workflow.yaml, instructions.md, template.md, and web_bundle configuration against BMAD v6 standards.","bmb","bmad/bmb/workflows/audit-workflow/workflow.yaml"
"convert-legacy","Converts legacy BMAD v4 or similar items (agents, workflows, modules) to BMad Core compliant format with proper structure and conventions","bmb","bmad/bmb/workflows/convert-legacy/workflow.yaml"
"create-agent","Interactive workflow to build BMAD Core compliant agents (YAML source compiled to .md during install) with optional brainstorming, persona development, and command structure","bmb","bmad/bmb/workflows/create-agent/workflow.yaml"
"create-module","Interactive workflow to build complete BMAD modules with agents, workflows, tasks, and installation infrastructure","bmb","bmad/bmb/workflows/create-module/workflow.yaml"
"create-workflow","Interactive workflow builder that guides creation of new BMAD workflows with proper structure and validation for optimal human-AI collaboration. Includes optional brainstorming phase for workflow ideas and design.","bmb","bmad/bmb/workflows/create-workflow/workflow.yaml"
"edit-workflow","Edit existing BMAD workflows while following all best practices and conventions","bmb","bmad/bmb/workflows/edit-workflow/workflow.yaml"
"module-brief","Create a comprehensive Module Brief that serves as the blueprint for building new BMAD modules using strategic analysis and creative vision","bmb","bmad/bmb/workflows/module-brief/workflow.yaml"
"redoc","Autonomous documentation system that maintains module, workflow, and agent documentation using a reverse-tree approach (leaf folders first, then parents). Understands BMAD conventions and produces technical writer quality output.","bmb","bmad/bmb/workflows/redoc/workflow.yaml"
1 name description module path
2 brainstorming Facilitate interactive brainstorming sessions using diverse creative techniques. This workflow facilitates interactive brainstorming sessions using diverse creative techniques. The session is highly interactive, with the AI acting as a facilitator to guide the user through various ideation methods to generate and refine creative solutions. core bmad/core/workflows/brainstorming/workflow.yaml
3 party-mode Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations core bmad/core/workflows/party-mode/workflow.yaml
4 audit-workflow Comprehensive workflow quality audit - validates structure, config standards, variable usage, bloat detection, and web_bundle completeness. Performs deep analysis of workflow.yaml, instructions.md, template.md, and web_bundle configuration against BMAD v6 standards. bmb bmad/bmb/workflows/audit-workflow/workflow.yaml
5 convert-legacy Converts legacy BMAD v4 or similar items (agents, workflows, modules) to BMad Core compliant format with proper structure and conventions bmb bmad/bmb/workflows/convert-legacy/workflow.yaml
6 create-agent Interactive workflow to build BMAD Core compliant agents (YAML source compiled to .md during install) with optional brainstorming, persona development, and command structure bmb bmad/bmb/workflows/create-agent/workflow.yaml
7 create-module Interactive workflow to build complete BMAD modules with agents, workflows, tasks, and installation infrastructure bmb bmad/bmb/workflows/create-module/workflow.yaml
8 create-workflow Interactive workflow builder that guides creation of new BMAD workflows with proper structure and validation for optimal human-AI collaboration. Includes optional brainstorming phase for workflow ideas and design. bmb bmad/bmb/workflows/create-workflow/workflow.yaml
9 edit-workflow Edit existing BMAD workflows while following all best practices and conventions bmb bmad/bmb/workflows/edit-workflow/workflow.yaml
10 module-brief Create a comprehensive Module Brief that serves as the blueprint for building new BMAD modules using strategic analysis and creative vision bmb bmad/bmb/workflows/module-brief/workflow.yaml
11 redoc Autonomous documentation system that maintains module, workflow, and agent documentation using a reverse-tree approach (leaf folders first, then parents). Understands BMAD conventions and produces technical writer quality output. bmb bmad/bmb/workflows/redoc/workflow.yaml

View File

@@ -1,132 +0,0 @@
# BMB - BMad Builder Module
The BMB (BMad Builder Module) provides specialized tools and workflows for creating, customizing, and extending BMad Method components, including custom agents, workflows, and integrations.
## Module Structure
### 🤖 `/agents`
Builder-specific agents that help create and customize BMad Method components:
- Agent creation and configuration specialists
- Workflow designers
- Integration builders
### 📋 `/workflows`
Specialized workflows for building and extending BMad Method capabilities:
#### Core Builder Workflows
- `create-agent` - Design and implement custom agents
- `create-workflow` - Build new workflow definitions
- `create-team` - Configure agent teams
- `bundle-agent` - Package agents for distribution
- `create-method` - Design custom development methodologies
#### Integration Workflows
- `integrate-tool` - Connect external tools and services
- `create-adapter` - Build API adapters
- `setup-environment` - Configure development environments
## Key Features
### Agent Builder
Create custom agents with:
- Role-specific instructions
- Tool configurations
- Behavior patterns
- Integration points
### Workflow Designer
Design workflows that:
- Orchestrate multiple agents
- Define process flows
- Handle different project scales
- Integrate with existing systems
### Team Configuration
Build teams that:
- Combine complementary agent skills
- Coordinate on complex tasks
- Share context effectively
- Deliver cohesive results
## Quick Start
```bash
# Create a new custom agent
bmad bmb create-agent
# Design a new workflow
bmad bmb create-workflow
# Bundle an agent for sharing
bmad bmb bundle-agent
# Create a custom team configuration
bmad bmb create-team
```
## Use Cases
### Custom Agent Development
Build specialized agents for:
- Domain-specific expertise
- Company-specific processes
- Tool integrations
- Automation tasks
### Workflow Customization
Create workflows for:
- Unique development processes
- Compliance requirements
- Quality gates
- Deployment pipelines
### Team Orchestration
Configure teams for:
- Large-scale projects
- Cross-functional collaboration
- Specialized domains
- Custom methodologies
## Integration with BMM
BMB works alongside BMM to:
- Extend core BMM capabilities
- Create custom implementations
- Build domain-specific solutions
- Integrate with existing tools
## Best Practices
1. **Start with existing patterns** - Study BMM agents and workflows before creating new ones
2. **Keep it modular** - Build reusable components
3. **Document thoroughly** - Clear documentation helps others use your creations
4. **Test extensively** - Validate agents and workflows before production use
5. **Share and collaborate** - Contribute useful components back to the community
## Related Documentation
- [BMM Module](../bmm/README.md) - Core method implementation
- [Agent Creation Guide](./workflows/create-agent/README.md) - Detailed agent building instructions
- [Workflow Design Patterns](./workflows/README.md) - Best practices for workflow creation
---
BMB empowers you to extend and customize the BMad Method to fit your specific needs while maintaining the power and consistency of the core framework.

View File

@@ -1,65 +0,0 @@
<!-- Powered by BMAD-CORE™ -->
# BMad Builder
```xml
<agent id="bmad/bmb/agents/bmad-builder.md" name="BMad Builder" title="BMad Builder" icon="🧙">
<activation critical="MANDATORY">
<step n="1">Load persona from this current agent file (already in context)</step>
<step n="2">🚨 IMMEDIATE ACTION REQUIRED - BEFORE ANY OUTPUT:
- Load and read {project-root}/bmad/bmb/config.yaml NOW
- Store ALL fields as session variables: {user_name}, {communication_language}, {output_folder}
- VERIFY: If config not loaded, STOP and report error to user
- DO NOT PROCEED to step 3 until config is successfully loaded and variables stored</step>
<step n="3">Remember: user's name is {user_name}</step>
<step n="4">Show greeting using {user_name} from config, communicate in {communication_language}, then display numbered list of
ALL menu items from menu section</step>
<step n="5">STOP and WAIT for user input - do NOT execute menu items automatically - accept number or trigger text</step>
<step n="6">On user input: Number → execute menu item[n] | Text → case-insensitive substring match | Multiple matches → ask user
to clarify | No match → show "Not recognized"</step>
<step n="7">When executing a menu item: Check menu-handlers section below - extract any attributes from the selected menu item
(workflow, exec, tmpl, data, action, validate-workflow) and follow the corresponding handler instructions</step>
<menu-handlers>
<handlers>
<handler type="workflow">
When menu item has: workflow="path/to/workflow.yaml"
1. CRITICAL: Always LOAD {project-root}/bmad/core/tasks/workflow.xml
2. Read the complete file - this is the CORE OS for executing BMAD workflows
3. Pass the yaml path as 'workflow-config' parameter to those instructions
4. Execute workflow.xml instructions precisely following all steps
5. Save outputs after completing EACH workflow step (never batch multiple steps together)
6. If workflow.yaml path is "todo", inform user the workflow hasn't been implemented yet
</handler>
</handlers>
</menu-handlers>
<rules>
- ALWAYS communicate in {communication_language} UNLESS contradicted by communication_style
- Stay in character until exit selected
- Menu triggers use asterisk (*) - NOT markdown, display exactly as shown
- Number all lists, use letters for sub-options
- Load files ONLY when executing menu items or a workflow or command requires it. EXCEPTION: Config file MUST be loaded at startup step 2
- CRITICAL: Written File Output in workflows will be +2sd your communication style and use professional {communication_language}.
</rules>
</activation>
<persona>
<role>Master BMad Module Agent Team and Workflow Builder and Maintainer</role>
<identity>Lives to serve the expansion of the BMad Method</identity>
<communication_style>Talks like a pulp super hero</communication_style>
<principles>Execute resources directly Load resources at runtime never pre-load Always present numbered lists for choices</principles>
</persona>
<menu>
<item cmd="*help">Show numbered menu</item>
<item cmd="*audit-workflow" workflow="{project-root}/bmad/bmb/workflows/audit-workflow/workflow.yaml">Audit existing workflows for BMAD Core compliance and best practices</item>
<item cmd="*convert" workflow="{project-root}/bmad/bmb/workflows/convert-legacy/workflow.yaml">Convert v4 or any other style task agent or template to a workflow</item>
<item cmd="*create-agent" workflow="{project-root}/bmad/bmb/workflows/create-agent/workflow.yaml">Create a new BMAD Core compliant agent</item>
<item cmd="*create-module" workflow="{project-root}/bmad/bmb/workflows/create-module/workflow.yaml">Create a complete BMAD module (brainstorm → brief → build with agents and workflows)</item>
<item cmd="*create-workflow" workflow="{project-root}/bmad/bmb/workflows/create-workflow/workflow.yaml">Create a new BMAD Core workflow with proper structure</item>
<item cmd="*edit-workflow" workflow="{project-root}/bmad/bmb/workflows/edit-workflow/workflow.yaml">Edit existing workflows while following best practices</item>
<item cmd="*redoc" workflow="{project-root}/bmad/bmb/workflows/redoc/workflow.yaml">Create or update module documentation</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```

View File

@@ -1,13 +0,0 @@
# BMB Module Configuration
# Generated by BMAD installer
# Version: 6.0.0-alpha.0
# Date: 2025-10-18T03:30:57.837Z
custom_agent_location: "{project-root}/bmad/agents"
custom_workflow_location: "{project-root}/bmad/workflows"
custom_module_location: "{project-root}/bmad"
# Core Configuration Values
user_name: BMad
communication_language: English
output_folder: "{project-root}/docs"

View File

@@ -1,138 +0,0 @@
# Audit Workflow - Validation Checklist
## Structure
- [ ] workflow.yaml file loads without YAML syntax errors
- [ ] instructions.md file exists and is properly formatted
- [ ] template.md file exists (if document workflow) with valid markdown
- [ ] All critical headers present in instructions (workflow engine reference, workflow.yaml reference)
- [ ] Workflow type correctly identified (document/action/interactive/autonomous/meta)
- [ ] All referenced files actually exist at specified paths
- [ ] No placeholder text remains (like {TITLE}, {WORKFLOW_CODE}, TODO, etc.)
## Standard Config Block
- [ ] workflow.yaml contains `config_source` pointing to correct module config
- [ ] `output_folder` pulls from `{config_source}:output_folder`
- [ ] `user_name` pulls from `{config_source}:user_name`
- [ ] `communication_language` pulls from `{config_source}:communication_language`
- [ ] `date` is set to `system-generated`
- [ ] Config source uses {project-root} variable (not hardcoded path)
- [ ] Standard config comment present: "Critical variables from config"
## Config Variable Usage
- [ ] Instructions communicate in {communication_language} where appropriate
- [ ] Instructions address {user_name} in greetings or summaries where appropriate
- [ ] All file outputs write to {output_folder} or subdirectories (no hardcoded paths)
- [ ] Template includes {{user_name}} in metadata (optional for document workflows)
- [ ] Template includes {{date}} in metadata (optional for document workflows)
- [ ] Template does NOT use {{communication_language}} in headers (agent-only variable)
- [ ] No hardcoded language-specific text that should use {communication_language}
- [ ] Date used for agent date awareness (not confused with training cutoff)
## YAML/Instruction/Template Alignment
- [ ] Every workflow.yaml variable (excluding standard config) is used in instructions OR template
- [ ] No unused yaml fields present (bloat removed)
- [ ] No duplicate fields between top-level and web_bundle section
- [ ] All template variables ({{variable}}) have corresponding yaml definitions OR <template-output> tags
- [ ] All <template-output> tags have corresponding template variables (if document workflow)
- [ ] Template variables use snake_case naming convention
- [ ] Variable names are descriptive (not abbreviated like {{puj}} instead of {{primary_user_journey}})
- [ ] No hardcoded values in instructions that should be yaml variables
## Web Bundle Validation (if applicable)
- [ ] web_bundle section present if workflow needs deployment
- [ ] All paths in web_bundle use bmad/-relative format (NOT {project-root})
- [ ] No {config_source} variables in web_bundle section
- [ ] instructions file listed in web_bundle_files array
- [ ] template file listed in web_bundle_files (if document workflow)
- [ ] validation/checklist file listed in web_bundle_files (if exists)
- [ ] All data files (CSV, JSON, YAML) listed in web_bundle_files
- [ ] All <invoke-workflow> called workflows have their .yaml files in web_bundle_files
- [ ] **CRITICAL**: If workflow invokes other workflows, existing_workflows field is present
- [ ] existing_workflows maps workflow variables to bmad/-relative paths correctly
- [ ] All files referenced in instructions <action> tags listed in web_bundle_files
- [ ] No files listed in web_bundle_files that don't exist
- [ ] Web bundle metadata (name, description, author) matches top-level metadata
## Template Validation (if document workflow)
- [ ] Template variables match <template-output> tags in instructions exactly
- [ ] All required sections present in template structure
- [ ] Template uses {{variable}} syntax (double curly braces)
- [ ] Template variables use snake_case (not camelCase or PascalCase)
- [ ] Standard metadata header format correct (optional usage of {{date}}, {{user_name}})
- [ ] No placeholders remain in template (like {SECTION_NAME})
- [ ] Template structure matches document purpose
## Instructions Quality
- [ ] Each step has n="X" attribute with sequential numbering
- [ ] Each step has goal="clear goal statement" attribute
- [ ] Optional steps marked with optional="true"
- [ ] Repeating steps have appropriate repeat attribute (repeat="3", repeat="for-each-X", repeat="until-approved")
- [ ] Conditional steps have if="condition" attribute
- [ ] XML tags used correctly (<action>, <ask>, <check>, <goto>, <invoke-workflow>, <template-output>)
- [ ] Steps are focused (single goal per step)
- [ ] Instructions are specific with limits ("Write 1-2 paragraphs" not "Write about")
- [ ] Examples provided where helpful
- [ ] <template-output> tags save checkpoints for document workflows
- [ ] Flow control is logical and clear
## Bloat Detection
- [ ] Bloat percentage under 10% (unused yaml fields / total fields)
- [ ] No commented-out variables that should be removed
- [ ] No duplicate metadata between sections
- [ ] No variables defined but never referenced
- [ ] No redundant configuration that duplicates web_bundle
## Final Validation
### Critical Issues (Must fix immediately)
_List any critical issues found:_
- Issue 1:
- Issue 2:
- Issue 3:
### Important Issues (Should fix soon)
_List any important issues found:_
- Issue 1:
- Issue 2:
- Issue 3:
### Cleanup Recommendations (Nice to have)
_List any cleanup recommendations:_
- Recommendation 1:
- Recommendation 2:
- Recommendation 3:
---
## Audit Summary
**Total Checks:** 70
**Passed:** **\_** / 70
**Failed:** **\_** / 70
**Pass Rate:** **\_**%
**Recommendation:**
- Pass Rate ≥ 95%: Excellent - Ready for production
- Pass Rate 85-94%: Good - Minor fixes needed
- Pass Rate 70-84%: Fair - Important issues to address
- Pass Rate < 70%: Poor - Significant work required
---
**Audit Completed:** {{date}}
**Auditor:** Audit Workflow (BMAD v6)

View File

@@ -1,375 +0,0 @@
# Audit Workflow - Workflow Quality Audit Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/audit-workflow/workflow.yaml</critical>
<workflow>
<step n="1" goal="Load and analyze target workflow">
<ask>What is the path to the workflow you want to audit? (provide path to workflow.yaml or workflow folder)</ask>
<action>Load the workflow.yaml file from the provided path</action>
<action>Identify the workflow type (document, action, interactive, autonomous, meta)</action>
<action>List all associated files:</action>
- instructions.md (required for most workflows)
- template.md (if document workflow)
- checklist.md (if validation exists)
- Any data files referenced in yaml
<action>Load all discovered files</action>
Display summary:
- Workflow name and description
- Type of workflow
- Files present
- Module assignment
</step>
<step n="2" goal="Validate standard config block">
<action>Check workflow.yaml for the standard config block:</action>
**Required variables:**
- `config_source: "{project-root}/bmad/[module]/config.yaml"`
- `output_folder: "{config_source}:output_folder"`
- `user_name: "{config_source}:user_name"`
- `communication_language: "{config_source}:communication_language"`
- `date: system-generated`
<action>Validate each variable:</action>
**Config Source Check:**
- [ ] `config_source` is defined
- [ ] Points to correct module config path
- [ ] Uses {project-root} variable
**Standard Variables Check:**
- [ ] `output_folder` pulls from config_source
- [ ] `user_name` pulls from config_source
- [ ] `communication_language` pulls from config_source
- [ ] `date` is set to system-generated
<action>Record any missing or incorrect config variables</action>
<template-output>config_issues</template-output>
<check>If config issues found:</check>
<action>Add to issues list with severity: CRITICAL</action>
</step>
<step n="3" goal="Analyze YAML/Instruction/Template alignment">
<action>Extract all variables defined in workflow.yaml (excluding standard config block)</action>
<action>Scan instructions.md for variable usage: {variable_name} pattern</action>
<action>Scan template.md for variable usage: {{variable_name}} pattern (if exists)</action>
<action>Cross-reference analysis:</action>
**For each yaml variable:**
1. Is it used in instructions.md? (mark as INSTRUCTION_USED)
2. Is it used in template.md? (mark as TEMPLATE_USED)
3. Is it neither? (mark as UNUSED_BLOAT)
**Special cases to ignore:**
- Standard config variables (config_source, output_folder, user_name, communication_language, date)
- Workflow metadata (name, description, author)
- Path variables (installed_path, template, instructions, validation)
- Web bundle configuration (web_bundle block itself)
<action>Identify unused yaml fields (bloat)</action>
<action>Identify hardcoded values in instructions that should be variables</action>
<template-output>alignment_issues</template-output>
<check>If unused variables found:</check>
<action>Add to issues list with severity: BLOAT</action>
</step>
<step n="4" goal="Config variable usage audit">
<action>Analyze instructions.md for proper config variable usage:</action>
**Communication Language Check:**
- Search for phrases like "communicate in {communication_language}"
- Check if greetings/responses use language-aware patterns
- Verify NO usage of {{communication_language}} in template headers
**User Name Check:**
- Look for user addressing patterns using {user_name}
- Check if summaries or greetings personalize with {user_name}
- Verify optional usage in template metadata (not required)
**Output Folder Check:**
- Search for file write operations
- Verify all outputs go to {output_folder} or subdirectories
- Check for hardcoded paths like "/output/" or "/generated/"
**Date Usage Check:**
- Verify date is available for agent date awareness
- Check optional usage in template metadata
- Ensure no confusion between date and model training cutoff
<action>Record any improper config variable usage</action>
<template-output>config_usage_issues</template-output>
<check>If config usage issues found:</check>
<action>Add to issues list with severity: IMPORTANT</action>
</step>
<step n="5" goal="Web bundle validation" optional="true">
<check>If workflow.yaml contains web_bundle section:</check>
<action>Validate web_bundle structure:</action>
**Path Validation:**
- [ ] All paths use bmad/-relative format (NOT {project-root})
- [ ] No {config_source} variables in web_bundle section
- [ ] Paths match actual file locations
**Completeness Check:**
- [ ] instructions file listed in web_bundle_files
- [ ] template file listed (if document workflow)
- [ ] validation/checklist file listed (if exists)
- [ ] All data files referenced in yaml listed
- [ ] All files referenced in instructions listed
**Workflow Dependency Scan:**
<action>Scan instructions.md for <invoke-workflow> tags</action>
<action>Extract workflow paths from invocations</action>
<action>Verify each called workflow.yaml is in web_bundle_files</action>
<action>**CRITICAL**: Check if existing_workflows field is present when workflows are invoked</action>
<action>If <invoke-workflow> calls exist, existing_workflows MUST map workflow variables to paths</action>
<action>Example: If instructions use {core_brainstorming}, web_bundle needs:
existing_workflows: - core_brainstorming: "bmad/core/workflows/brainstorming/workflow.yaml"
</action>
**File Reference Scan:**
<action>Scan instructions.md for file references in <action> tags</action>
<action>Check for CSV, JSON, YAML, MD files referenced</action>
<action>Verify all referenced files are in web_bundle_files</action>
<action>Record any missing files or incorrect paths</action>
<template-output>web_bundle_issues</template-output>
<check>If web_bundle issues found:</check>
<action>Add to issues list with severity: CRITICAL</action>
<check>If no web_bundle section exists:</check>
<action>Note: "No web_bundle configured (may be intentional for local-only workflows)"</action>
</step>
<step n="6" goal="Bloat detection">
<action>Identify bloat patterns:</action>
**Unused YAML Fields:**
- Variables defined but not used in instructions OR template
- Duplicate fields between top-level and web_bundle section
- Commented-out variables that should be removed
**Hardcoded Values:**
- File paths that should use {output_folder}
- Generic greetings that should use {user_name}
- Language-specific text that should use {communication_language}
- Static dates that should use {date}
**Redundant Configuration:**
- Variables that duplicate web_bundle fields
- Metadata repeated across sections
<action>Calculate bloat metrics:</action>
- Total yaml fields: {{total_yaml_fields}}
- Used fields: {{used_fields}}
- Unused fields: {{unused_fields}}
- Bloat percentage: {{bloat_percentage}}%
<action>Record all bloat items with recommendations</action>
<template-output>bloat_items</template-output>
<check>If bloat detected:</check>
<action>Add to issues list with severity: CLEANUP</action>
</step>
<step n="7" goal="Template variable mapping" if="workflow_type == 'document'">
<action>Extract all template variables from template.md: {{variable_name}} pattern</action>
<action>Scan instructions.md for corresponding <template-output>variable_name</template-output> tags</action>
<action>Cross-reference mapping:</action>
**For each template variable:**
1. Is there a matching <template-output> tag? (mark as MAPPED)
2. Is it a standard config variable? (mark as CONFIG_VAR - optional)
3. Is it unmapped? (mark as MISSING_OUTPUT)
**For each <template-output> tag:**
1. Is there a matching template variable? (mark as USED)
2. Is it orphaned? (mark as UNUSED_OUTPUT)
<action>Verify variable naming conventions:</action>
- [ ] All template variables use snake_case
- [ ] Variable names are descriptive (not abbreviated)
- [ ] Standard config variables properly formatted
<action>Record any mapping issues</action>
<template-output>template_issues</template-output>
<check>If template issues found:</check>
<action>Add to issues list with severity: IMPORTANT</action>
</step>
<step n="8" goal="Generate comprehensive audit report">
<action>Compile all findings into a structured report</action>
<action>Write audit report to {output_folder}/audit-report-{{workflow_name}}-{{date}}.md</action>
**Report Structure:**
```markdown
# Workflow Audit Report
**Workflow:** {{workflow_name}}
**Audit Date:** {{date}}
**Auditor:** Audit Workflow (BMAD v6)
**Workflow Type:** {{workflow_type}}
---
## Executive Summary
**Overall Status:** {{overall_status}}
- Critical Issues: {{critical_count}}
- Important Issues: {{important_count}}
- Cleanup Recommendations: {{cleanup_count}}
---
## 1. Standard Config Block Validation
{{config_issues}}
**Status:** {{config_status}}
---
## 2. YAML/Instruction/Template Alignment
{{alignment_issues}}
**Variables Analyzed:** {{total_variables}}
**Used in Instructions:** {{instruction_usage_count}}
**Used in Template:** {{template_usage_count}}
**Unused (Bloat):** {{bloat_count}}
---
## 3. Config Variable Usage
{{config_usage_issues}}
**Communication Language:** {{comm_lang_status}}
**User Name:** {{user_name_status}}
**Output Folder:** {{output_folder_status}}
**Date:** {{date_status}}
---
## 4. Web Bundle Validation
{{web_bundle_issues}}
**Web Bundle Present:** {{web_bundle_exists}}
**Files Listed:** {{web_bundle_file_count}}
**Missing Files:** {{missing_files_count}}
---
## 5. Bloat Detection
{{bloat_items}}
**Bloat Percentage:** {{bloat_percentage}}%
**Cleanup Potential:** {{cleanup_potential}}
---
## 6. Template Variable Mapping
{{template_issues}}
**Template Variables:** {{template_var_count}}
**Mapped Correctly:** {{mapped_count}}
**Missing Mappings:** {{missing_mapping_count}}
---
## Recommendations
### Critical (Fix Immediately)
{{critical_recommendations}}
### Important (Address Soon)
{{important_recommendations}}
### Cleanup (Nice to Have)
{{cleanup_recommendations}}
---
## Validation Checklist
Use this checklist to verify fixes:
- [ ] All standard config variables present and correct
- [ ] No unused yaml fields (bloat removed)
- [ ] Config variables used appropriately in instructions
- [ ] Web bundle includes all dependencies
- [ ] Template variables properly mapped
- [ ] File structure follows v6 conventions
---
## Next Steps
1. Review critical issues and fix immediately
2. Address important issues in next iteration
3. Consider cleanup recommendations for optimization
4. Re-run audit after fixes to verify improvements
---
**Audit Complete** - Generated by audit-workflow v1.0
```
<action>Display summary to {user_name} in {communication_language}</action>
<action>Provide path to full audit report</action>
<ask>Would you like to:
- View the full audit report
- Fix issues automatically (invoke edit-workflow)
- Audit another workflow
- Exit
</ask>
<template-output>audit_report_path</template-output>
</step>
</workflow>

View File

@@ -1,21 +0,0 @@
# Audit Workflow Configuration
name: "audit-workflow"
description: "Comprehensive workflow quality audit - validates structure, config standards, variable usage, bloat detection, and web_bundle completeness. Performs deep analysis of workflow.yaml, instructions.md, template.md, and web_bundle configuration against BMAD v6 standards."
author: "BMad"
# Critical variables from config
config_source: "{project-root}/bmad/bmb/config.yaml"
output_folder: "{config_source}:output_folder"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
date: system-generated
# Module path and component files
installed_path: "{project-root}/bmad/bmb/workflows/audit-workflow"
template: false
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# Output configuration
default_output_file: "{output_folder}/audit-report-{{workflow_name}}-{{date}}.md"
# Web bundle configuration

View File

@@ -1,262 +0,0 @@
# Convert Legacy Workflow
## Overview
The Convert Legacy workflow is a comprehensive migration tool that converts BMAD v4 items (agents, workflows, modules) to v5 compliant format with proper structure and conventions. It bridges the gap between legacy BMAD implementations and the modern v5 architecture, ensuring seamless migration while preserving functionality and improving structure.
## Key Features
- **Multi-Format Detection** - Automatically identifies v4 agents, workflows, tasks, templates, and modules
- **Intelligent Conversion** - Smart mapping from v4 patterns to v5 equivalents with structural improvements
- **Sub-Workflow Integration** - Leverages create-agent, create-workflow, and create-module workflows for quality output
- **Structure Modernization** - Converts YAML-based agents to XML, templates to workflows, tasks to structured workflows
- **Path Normalization** - Updates all references to use proper v5 path conventions
- **Validation System** - Comprehensive validation of converted items before finalization
- **Migration Reporting** - Detailed conversion reports with locations and manual adjustment notes
## Usage
### Basic Invocation
```bash
workflow convert-legacy
```
### With Legacy File Input
```bash
# Convert a specific v4 item
workflow convert-legacy --input /path/to/legacy-agent.md
```
### With Legacy Module
```bash
# Convert an entire v4 module structure
workflow convert-legacy --input /path/to/legacy-module/
```
### Configuration
The workflow uses standard BMB configuration:
- **output_folder**: Where converted items will be placed
- **user_name**: Author information for converted items
- **conversion_mappings**: v4-to-v5 pattern mappings (optional)
## Workflow Structure
### Files Included
```
convert-legacy/
├── workflow.yaml # Configuration and metadata
├── instructions.md # Step-by-step conversion guide
├── checklist.md # Validation criteria
└── README.md # This file
```
## Workflow Process
### Phase 1: Legacy Analysis (Steps 1-3)
**Item Identification and Loading**
- Accepts file path or directory from user
- Loads complete file/folder structure for analysis
- Automatically detects item type based on content patterns:
- **Agents**: Contains `<agent>` or `<prompt>` XML tags
- **Workflows**: Contains workflow YAML or instruction patterns
- **Modules**: Contains multiple organized agents/workflows
- **Tasks**: Contains `<task>` XML tags
- **Templates**: Contains YAML-based document generators
**Legacy Structure Analysis**
- Parses v4 structure and extracts key components
- Maps v4 agent metadata (name, id, title, icon, persona)
- Analyzes v4 template sections and elicitation patterns
- Identifies task workflows and decision trees
- Catalogs dependencies and file references
**Target Module Selection**
- Prompts for target module (bmm, bmb, cis, custom)
- Determines proper installation paths using v5 conventions
- Shows target location for user confirmation
- Ensures all paths use `{project-root}/bmad/` format
### Phase 2: Conversion Strategy (Step 4)
**Strategy Selection Based on Item Type**
- **Simple Agents**: Direct XML conversion with metadata mapping
- **Complex Agents**: Workflow-assisted creation using create-agent
- **Templates**: Template-to-workflow conversion with proper structure
- **Tasks**: Task-to-workflow conversion with step mapping
- **Modules**: Full module creation using create-module workflow
**Workflow Type Determination**
- Analyzes legacy items to determine v5 workflow type:
- **Document Workflow**: Generates documents with templates
- **Action Workflow**: Performs actions without output documents
- **Interactive Workflow**: Guides user interaction sessions
- **Meta-Workflow**: Coordinates other workflows
### Phase 3: Conversion Execution (Steps 5a-5e)
**Direct Agent Conversion (5a)**
- Transforms v4 YAML agent format to v5 XML structure
- Maps persona blocks (role, style, identity, principles)
- Converts commands list to v5 `<cmds>` format
- Updates task references to workflow invocations
- Normalizes all paths to v5 conventions
**Workflow-Assisted Creation (5b-5e)**
- Extracts key information from legacy items
- Invokes appropriate sub-workflows:
- `create-agent` for complex agent creation
- `create-workflow` for template/task conversion
- `create-module` for full module migration
- Ensures proper v5 structure and conventions
**Template-to-Workflow Conversion (5c)**
- Converts YAML template sections to workflow steps
- Maps `elicit: true` flags to `<invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>` tags
- Transforms conditional sections to flow control
- Creates proper template.md from content structure
- Integrates v4 create-doc.md task patterns
**Task-to-Workflow Conversion (5e)**
- Analyzes task purpose to determine workflow type
- Extracts step-by-step instructions to workflow steps
- Converts decision trees to flow control tags
- Maps 1-9 elicitation menus to v5 elicitation patterns
- Preserves execution logic and critical notices
### Phase 4: Validation and Finalization (Steps 6-8)
**Comprehensive Validation**
- Validates XML structure for agents
- Checks YAML syntax for workflows
- Verifies template variable consistency
- Ensures proper file structure and naming
**Migration Reporting**
- Generates detailed conversion report
- Documents original and new locations
- Notes manual adjustments needed
- Provides warnings and recommendations
**Cleanup and Archival**
- Optional archival of original v4 files
- Final location confirmation
- Post-conversion instructions and next steps
## Output
### Generated Files
- **Converted Items**: Proper v5 format in target module locations
- **Migration Report**: Detailed conversion documentation
- **Validation Results**: Quality assurance confirmation
### Output Structure
Converted items follow v5 conventions:
1. **Agents** - XML format with proper persona and command structure
2. **Workflows** - Complete workflow folders with yaml, instructions, and templates
3. **Modules** - Full module structure with installation infrastructure
4. **Documentation** - Updated paths, references, and metadata
## Requirements
- **Legacy v4 Items** - Source files or directories to convert
- **Target Module Access** - Write permissions to target module directories
- **Sub-Workflow Availability** - create-agent, create-workflow, create-module workflows accessible
- **Conversion Mappings** (optional) - v4-to-v5 pattern mappings for complex conversions
## Best Practices
### Before Starting
1. **Backup Legacy Items** - Create copies of original v4 files before conversion
2. **Review Target Module** - Understand target module structure and conventions
3. **Plan Module Organization** - Decide where converted items should logically fit
### During Execution
1. **Validate Item Type Detection** - Confirm automatic detection or correct manually
2. **Choose Appropriate Strategy** - Use workflow-assisted creation for complex items
3. **Review Path Mappings** - Ensure all references use proper v5 path conventions
4. **Test Incrementally** - Convert simple items first to validate process
### After Completion
1. **Validate Converted Items** - Test agents and workflows for proper functionality
2. **Review Migration Report** - Address any manual adjustments noted
3. **Update Documentation** - Ensure README and documentation reflect changes
4. **Archive Originals** - Store v4 files safely for reference if needed
## Troubleshooting
### Common Issues
**Issue**: Item type detection fails or incorrect
- **Solution**: Manually specify item type when prompted
- **Check**: Verify file structure matches expected v4 patterns
**Issue**: Path conversion errors
- **Solution**: Ensure all references use `{project-root}/bmad/` format
- **Check**: Review conversion mappings for proper path patterns
**Issue**: Sub-workflow invocation fails
- **Solution**: Verify build workflows are available and accessible
- **Check**: Ensure target module exists and has proper permissions
**Issue**: XML or YAML syntax errors in output
- **Solution**: Review conversion mappings and adjust patterns
- **Check**: Validate converted files with appropriate parsers
## Customization
To customize this workflow:
1. **Update Conversion Mappings** - Modify v4-to-v5 pattern mappings in data/
2. **Extend Detection Logic** - Add new item type detection patterns
3. **Add Conversion Strategies** - Implement specialized conversion approaches
4. **Enhance Validation** - Add additional quality checks in validation step
## Version History
- **v1.0.0** - Initial release
- Multi-format v4 item detection and conversion
- Integration with create-agent, create-workflow, create-module
- Comprehensive path normalization
- Migration reporting and validation
## Support
For issues or questions:
- Review the workflow creation guide at `/bmad/bmb/workflows/create-workflow/workflow-creation-guide.md`
- Check conversion mappings at `/bmad/bmb/data/v4-to-v5-mappings.yaml`
- Validate output using `checklist.md`
- Consult BMAD v5 documentation for proper conventions
---
_Part of the BMad Method v5 - BMB (Builder) Module_

View File

@@ -1,205 +0,0 @@
# Convert Legacy - Validation Checklist
## Pre-Conversion Validation
### Source Analysis
- [ ] Original v4 file(s) fully loaded and parsed
- [ ] Item type correctly identified (agent/template/task/module)
- [ ] All dependencies documented and accounted for
- [ ] No critical content overlooked in source files
## Conversion Completeness
### For Agent Conversions
#### Content Preservation
- [ ] Agent name, id, title, and icon transferred
- [ ] All persona elements mapped to v5 structure
- [ ] All commands converted to v5 menu array (YAML)
- [ ] Dependencies properly referenced or converted
- [ ] Activation instructions adapted to v5 patterns
#### v5 Compliance (YAML Format)
- [ ] Valid YAML structure with proper indentation
- [ ] agent.metadata has all required fields (id, name, title, icon, module)
- [ ] agent.persona has all sections (role, identity, communication_style, principles)
- [ ] agent.menu uses proper handlers (workflow, action, exec, tmpl, data)
- [ ] agent.critical_actions array present when needed
- [ ] agent.prompts defined for any action: "#id" references
- [ ] File extension is .agent.yaml (will be compiled to .md later)
#### Best Practices
- [ ] Commands use appropriate workflow references instead of direct task calls
- [ ] File paths use {project-root} variables
- [ ] Config values use {config_source}: pattern
- [ ] Agent follows naming conventions (kebab-case for files)
- [ ] ALL paths reference {project-root}/bmad/{{module}}/ locations, NOT src/
- [ ] exec, data, run-workflow commands point to final BMAD installation paths
### For Template/Workflow Conversions
#### Content Preservation
- [ ] Template metadata (name, description, output) transferred
- [ ] All sections converted to workflow steps
- [ ] Section hierarchy maintained in instructions
- [ ] Variables ({{var}}) preserved in template.md
- [ ] Elicitation points (elicit: true) converted to <invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>
- [ ] Conditional sections preserved with if="" attributes
- [ ] Repeatable sections converted to repeat="" attributes
#### v5 Compliance
- [ ] workflow.yaml follows structure from workflow-creation-guide.md
- [ ] instructions.md has critical headers referencing workflow engine
- [ ] Steps numbered sequentially with clear goals
- [ ] Template variables match between instructions and template.md
- [ ] Proper use of XML tags (<action>, <check>, <ask>, <template-output>)
- [ ] File structure follows v5 pattern (folder with yaml/md files)
#### Best Practices
- [ ] Steps are focused with single goals
- [ ] Instructions are specific ("Write 1-2 paragraphs" not "Write about")
- [ ] Examples provided where helpful
- [ ] Limits set where appropriate ("3-5 items maximum")
- [ ] Save checkpoints with <template-output> at logical points
- [ ] Variables use descriptive snake_case names
### For Task Conversions
#### Content Preservation
- [ ] Task logic fully captured in workflow instructions
- [ ] Execution flow maintained
- [ ] User interaction points preserved
- [ ] Decision trees converted to workflow logic
- [ ] All processing steps accounted for
- [ ] Document generation patterns identified and preserved
#### Type Determination
- [ ] Workflow type correctly identified (document/action/interactive/meta)
- [ ] If generates documents, template.md created
- [ ] If performs actions only, marked as action workflow
- [ ] Output patterns properly analyzed
#### v5 Compliance
- [ ] Converted to proper workflow format (not standalone task)
- [ ] Follows workflow execution engine patterns
- [ ] Interactive elements use proper v5 tags
- [ ] Flow control uses v5 patterns (goto, check, loop)
- [ ] 1-9 elicitation menus converted to v5 elicitation
- [ ] Critical notices preserved in workflow.yaml
- [ ] YOLO mode converted to appropriate v5 patterns
### Module-Level Validation
#### Structure
- [ ] Module follows v5 directory structure
- [ ] All components in correct locations:
- Agents in /agents/
- Workflows in /workflows/
- Data files in appropriate locations
- [ ] Config files properly formatted
#### Integration
- [ ] Cross-references between components work
- [ ] Workflow invocations use correct paths
- [ ] Data file references are valid
- [ ] No broken dependencies
## Technical Validation
### Syntax and Format
- [ ] YAML files have valid syntax (no parsing errors)
- [ ] XML structures properly formed and closed
- [ ] Markdown files render correctly
- [ ] File encoding is UTF-8
- [ ] Line endings consistent (LF)
### Path Resolution
- [ ] All file paths resolve correctly
- [ ] Variable substitutions work ({project-root}, {installed_path}, etc.)
- [ ] Config references load properly
- [ ] No hardcoded absolute paths (unless intentional)
## Functional Validation
### Execution Testing
- [ ] Converted item can be loaded without errors
- [ ] Agents activate properly when invoked
- [ ] Workflows execute through completion
- [ ] User interaction points function correctly
- [ ] Output generation works as expected
### Behavioral Validation
- [ ] Converted item behaves similarly to v4 version
- [ ] Core functionality preserved
- [ ] User experience maintains or improves
- [ ] No functionality regression
## Documentation and Cleanup
### Documentation
- [ ] Conversion report generated with all changes
- [ ] Any manual adjustments documented
- [ ] Known limitations or differences noted
- [ ] Migration instructions provided if needed
### Post-Conversion
- [ ] Original v4 files archived (if requested)
- [ ] File permissions set correctly
- [ ] Git tracking updated if applicable
- [ ] User informed of new locations
## Final Verification
### Quality Assurance
- [ ] Converted item follows ALL v5 best practices
- [ ] Code/config is clean and maintainable
- [ ] No TODO or FIXME items remain
- [ ] Ready for production use
### User Acceptance
- [ ] User reviewed conversion output
- [ ] User tested basic functionality
- [ ] User approved final result
- [ ] Any user feedback incorporated
## Notes Section
### Conversion Issues Found:
_List any issues encountered during validation_
### Manual Interventions Required:
_Document any manual fixes needed_
### Recommendations:
_Suggestions for further improvements or considerations_
---
**Validation Result:** [ ] PASSED / [ ] FAILED
**Validator:** {{user_name}}
**Date:** {{date}}
**Items Converted:** {{conversion_summary}}

View File

@@ -1,374 +0,0 @@
# Convert Legacy - v4 to v5 Conversion Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<parameter name="You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/convert-legacy/workflow.yaml</critical>
<critical>Communicate in {communication_language} throughout the conversion process</critical>
<workflow>
<step n="1" goal="Identify and Load Legacy Item">
<action>Ask user for the path to the v4 item to convert (agent, workflow, or module)</action>
<action>Load the complete file/folder structure</action>
<action>Detect item type based on structure and content patterns:</action>
- Agent: Contains agent or prompt XML tags, single file
- Workflow: Contains workflow YAML or instruction patterns, usually folder
- Module: Contains multiple agents/workflows in organized structure
- Task: Contains task XML tags
<ask>Confirm detected type or allow user to correct: "Detected as [type]. Is this correct? (y/n)"</ask>
</step>
<step n="2" goal="Analyze Legacy Structure">
<action>Parse the v4 structure and extract key components:</action>
For v4 Agents (YAML-based in markdown):
- Agent metadata (name, id, title, icon, whenToUse)
- Persona block (role, style, identity, focus, core_principles)
- Commands list with task/template references
- Dependencies (tasks, templates, checklists, data files)
- Activation instructions and workflow rules
- IDE file resolution patterns
For v4 Templates (YAML-based document generators):
- Template metadata (id, name, version, output)
- Workflow mode and elicitation settings
- Sections hierarchy with:
- Instructions for content generation
- Elicit flags for user interaction
- Templates with {{variables}}
- Conditional sections
- Repeatable sections
For v4 Tasks (Markdown with execution instructions):
- Critical execution notices
- Step-by-step workflows
- Elicitation requirements (1-9 menu format)
- Processing flows and decision trees
- Agent permission rules
For Modules:
- Module metadata
- Component list (agents, workflows, tasks)
- Dependencies
- Installation requirements
<action>Create a conversion map of what needs to be transformed</action>
<action>Map v4 patterns to v5 equivalents:
- v4 Task + Template → v5 Workflow (folder with workflow.yaml, instructions.md, template.md)
- v4 Agent YAML → v5 Agent YAML format
- v4 Commands → v5 <menu> with proper handlers
- v4 Dependencies → v5 workflow references or data files
</action>
</step>
<step n="3" goal="Determine Target Module and Location">
<ask>Which module should this belong to? (eg. bmm, bmb, cis, bmm-legacy, or custom)</ask>
<check>If custom module:</check>
<ask>Enter custom module code (kebab-case):</ask>
<action>Determine installation path based on type and module</action>
<critical>IMPORTANT: All paths must use final BMAD installation locations, not src paths!</critical>
<action>Show user the target location: {project-root}/bmad/{{target_module}}/{{item_type}}/{{item_name}}</action>
<action>Note: Files will be created in bmad/ but all internal paths will reference {project-root}/bmad/ locations</action>
<ask>Proceed with this location? (y/n)</ask>
</step>
<step n="4" goal="Choose Conversion Strategy">
<action>Based on item type and complexity, choose approach:</action>
<check>If agent conversion:</check>
<check>If simple agent (basic persona + commands):</check>
<action>Use direct conversion to v5 agent YAML format</action>
<goto step="5a">Direct Agent Conversion</goto>
<check>If complex agent with embedded workflows:</check>
<action>Plan to invoke create-agent workflow</action>
<goto step="5b">Workflow-Assisted Agent Creation</goto>
<check>If template or task conversion to workflow:</check>
<action>Analyze the v4 item to determine workflow type:</action>
- Does it generate a specific document type? → Document workflow
- Does it produce structured output files? → Document workflow
- Does it perform actions without output? → Action workflow
- Does it coordinate other tasks? → Meta-workflow
- Does it guide user interaction? → Interactive workflow
<ask>Based on analysis, this appears to be a {{detected_workflow_type}} workflow. Confirm or correct:
1. Document workflow (generates documents with template)
2. Action workflow (performs actions, no template)
3. Interactive workflow (guided session)
4. Meta-workflow (coordinates other workflows)
Select 1-4:</ask>
<check>If template conversion:</check>
<goto step="5c">Template-to-Workflow Conversion</goto>
<check>If task conversion:</check>
<goto step="5e">Task-to-Workflow Conversion</goto>
<check>If full module conversion:</check>
<action>Plan to invoke create-module workflow</action>
<goto step="5d">Module Creation</goto>
</step>
<step n="5a" goal="Direct Agent Conversion" optional="true">
<action>Transform v4 YAML agent to v5 YAML format:</action>
1. Convert agent metadata structure:
- v4 `agent.name` → v5 `agent.metadata.name`
- v4 `agent.id` → v5 `agent.metadata.id`
- v4 `agent.title` → v5 `agent.metadata.title`
- v4 `agent.icon` → v5 `agent.metadata.icon`
- Add v5 `agent.metadata.module` field
2. Transform persona structure:
- v4 `persona.role` → v5 `agent.persona.role` (keep as YAML string)
- v4 `persona.style` → v5 `agent.persona.communication_style`
- v4 `persona.identity` → v5 `agent.persona.identity`
- v4 `persona.core_principles` → v5 `agent.persona.principles` (as array)
3. Convert commands to menu:
- v4 `commands:` list → v5 `agent.menu:` array
- Each command becomes menu item with:
- `trigger:` (without \* prefix - added at build)
- `description:`
- Handler attributes (`workflow:`, `exec:`, `action:`, etc.)
- Map task references to workflow paths
- Map template references to workflow invocations
4. Add v5-specific sections (in YAML):
- `agent.prompts:` array for inline prompts (if using action: "#id")
- `agent.critical_actions:` array for startup requirements
- `agent.activation_rules:` for universal agent rules
5. Handle dependencies and paths:
- Convert task dependencies to workflow references
- Map template dependencies to v5 workflows
- Preserve checklist and data file references
- CRITICAL: All paths must use {project-root}/bmad/{{module}}/ NOT src/
<action>Generate the converted v5 agent YAML file (.agent.yaml)</action>
<action>Example path conversions:
- exec="{project-root}/bmad/{{target_module}}/tasks/task-name.md"
- run-workflow="{project-root}/bmad/{{target_module}}/workflows/workflow-name/workflow.yaml"
- data="{project-root}/bmad/{{target_module}}/data/data-file.yaml"
</action>
<action>Save to: bmad/{{target_module}}/agents/{{agent_name}}.agent.yaml (physical location)</action>
<action>Note: The build process will later compile this to .md with XML format</action>
<goto step="6">Continue to Validation</goto>
</step>
<step n="5b" goal="Workflow-Assisted Agent Creation" optional="true">
<action>Extract key information from v4 agent:</action>
- Name and purpose
- Commands and functionality
- Persona traits
- Any special behaviors
<invoke-workflow>
workflow: {project-root}/bmad/bmb/workflows/create-agent/workflow.yaml
inputs:
- agent_name: {{extracted_name}}
- agent_purpose: {{extracted_purpose}}
- commands: {{extracted_commands}}
- persona: {{extracted_persona}}
</invoke-workflow>
<goto step="6">Continue to Validation</goto>
</step>
<step n="5c" goal="Template-to-Workflow Conversion" optional="true">
<action>Convert v4 Template (YAML) to v5 Workflow:</action>
1. Extract template metadata:
- Template id, name, version → workflow.yaml name/description
- Output settings → default_output_file
- Workflow mode (interactive/yolo) → workflow settings
2. Convert template sections to instructions.md:
- Each YAML section → workflow step
- `elicit: true``<invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>` tag
- Conditional sections → `if="condition"` attribute
- Repeatable sections → `repeat="for-each"` attribute
- Section instructions → step content
3. Extract template structure to template.md:
- Section content fields → template structure
- {{variables}} → preserve as-is
- Nested sections → hierarchical markdown
4. Handle v4 create-doc.md task integration:
- Elicitation methods (1-9 menu) → convert to v5 elicitation
- Agent permissions → note in instructions
- Processing flow → integrate into workflow steps
<critical>When invoking create-workflow, the standard config block will be automatically added:</critical>
```yaml
# Critical variables from config
config_source: '{project-root}/bmad/{{target_module}}/config.yaml'
output_folder: '{config_source}:output_folder'
user_name: '{config_source}:user_name'
communication_language: '{config_source}:communication_language'
date: system-generated
```
<invoke-workflow>
workflow: {project-root}/bmad/bmb/workflows/create-workflow/workflow.yaml
inputs:
- workflow_name: {{template_name}}
- workflow_type: document
- template_structure: {{extracted_template}}
- instructions: {{converted_sections}}
</invoke-workflow>
<action>Verify the created workflow.yaml includes standard config block</action>
<action>Update converted instructions to use config variables where appropriate</action>
<goto step="6">Continue to Validation</goto>
</step>
<step n="5d" goal="Module Creation" optional="true">
<action>Analyze module structure and components</action>
<action>Create module blueprint with all components</action>
<invoke-workflow>
workflow: {project-root}/bmad/bmb/workflows/create-module/workflow.yaml
inputs:
- module_name: {{module_name}}
- components: {{component_list}}
</invoke-workflow>
<goto step="6">Continue to Validation</goto>
</step>
<step n="5e" goal="Task-to-Workflow Conversion" optional="true">
<action>Convert v4 Task (Markdown) to v5 Workflow:</action>
1. Analyze task purpose and output:
- Does it generate documents? → Create template.md
- Does it process data? → Action workflow
- Does it guide user interaction? → Interactive workflow
- Check for file outputs, templates, or document generation
2. Extract task components:
- Execution notices and critical rules → workflow.yaml metadata
- Step-by-step instructions → instructions.md steps
- Decision trees and branching → flow control tags
- User interaction patterns → appropriate v5 tags
3. Based on confirmed workflow type:
<check>If Document workflow:</check>
- Create template.md from output patterns
- Map generation steps to instructions
- Add <template-output> tags for sections
<check>If Action workflow:</check>
- Set template: false in workflow.yaml
- Focus on action sequences in instructions
- Preserve execution logic
4. Handle special v4 patterns:
- 1-9 elicitation menus → v5 <invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>
- Agent permissions → note in instructions
- YOLO mode → autonomous flag or optional steps
- Critical notices → workflow.yaml comments
<critical>When invoking create-workflow, the standard config block will be automatically added:</critical>
```yaml
# Critical variables from config
config_source: '{project-root}/bmad/{{target_module}}/config.yaml'
output_folder: '{config_source}:output_folder'
user_name: '{config_source}:user_name'
communication_language: '{config_source}:communication_language'
date: system-generated
```
<invoke-workflow>
workflow: {project-root}/bmad/bmb/workflows/create-workflow/workflow.yaml
inputs:
- workflow_name: {{task_name}}
- workflow_type: {{confirmed_workflow_type}}
- instructions: {{extracted_task_logic}}
- template: {{generated_template_if_document}}
</invoke-workflow>
<action>Verify the created workflow.yaml includes standard config block</action>
<action>Update converted instructions to use config variables where appropriate</action>
<goto step="6">Continue to Validation</goto>
</step>
<step n="6" goal="Validate Conversion">
<action>Run validation checks on converted item:</action>
For Agents:
- [ ] Valid YAML structure (.agent.yaml)
- [ ] All required sections present (metadata, persona, menu)
- [ ] Menu items properly formatted (trigger, description, handlers)
- [ ] Paths use {project-root} variables
For Workflows:
- [ ] Valid YAML syntax
- [ ] Instructions follow v5 conventions
- [ ] Template variables match
- [ ] File structure correct
**Standard Config Validation (Workflows):**
- [ ] workflow.yaml contains standard config block:
- config_source defined
- output_folder, user_name, communication_language pulled from config
- date set to system-generated
- [ ] Converted instructions use config variables where appropriate
- [ ] Template includes config variables in metadata (if document workflow)
- [ ] No hardcoded paths that should use {output_folder}
- [ ] No generic greetings that should use {user_name}
For Modules:
- [ ] All components converted
- [ ] Proper folder structure
- [ ] Config files valid
- [ ] Installation ready
<action>Show validation results to user</action>
<ask>Any issues to fix before finalizing? (y/n)</ask>
<check>If yes:</check>
<action>Address specific issues</action>
<goto step="6">Re-validate</goto>
</step>
<step n="7" goal="Migration Report">
<action>Generate conversion report showing:</action>
- Original v4 location
- New v5 location
- Items converted
- Any manual adjustments needed
- Warnings or notes
<action>Save report to: {output_folder}/conversion-report-{{date}}.md</action>
<action>Inform {user_name} in {communication_language} that the conversion report has been generated</action>
</step>
<step n="8" goal="Cleanup and Finalize">
<ask>Archive original v4 files? (y/n)</ask>
<check>If yes:</check>
<action>Move v4 files to: {project-root}/archive/v4-legacy/{{date}}/</action>
<action>Show user the final converted items and their locations</action>
<action>Provide any post-conversion instructions or recommendations</action>
<ask>Would you like to convert another legacy item? (y/n)</ask>
<check>If yes:</check>
<goto step="1">Start new conversion</goto>
</step>
</workflow>

View File

@@ -1,30 +0,0 @@
# Convert Legacy - BMAD v4 to v5 Converter Configuration
name: "convert-legacy"
description: "Converts legacy BMAD v4 or similar items (agents, workflows, modules) to BMad Core compliant format with proper structure and conventions"
author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/bmb/config.yaml"
output_folder: "{config_source}:output_folder"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
date: system-generated
# Optional docs that can be provided as input
recommended_inputs:
- legacy_file: "Path to v4 agent, workflow, or module to convert"
# Module path and component files
installed_path: "{project-root}/bmad/bmb/workflows/convert-legacy"
template: false # This is an action/meta workflow - no template needed
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# Output configuration - Creates converted items in appropriate module locations
default_output_folder: "{project-root}/bmad/{{target_module}}/{{item_type}}/{{item_name}}"
# Sub-workflows that may be invoked for conversion
sub_workflows:
- create_agent: "{project-root}/bmad/bmb/workflows/create-agent/workflow.yaml"
- create_workflow: "{project-root}/bmad/bmb/workflows/create-workflow/workflow.yaml"
- create_module: "{project-root}/bmad/bmb/workflows/create-module/workflow.yaml"

View File

@@ -1,320 +0,0 @@
# Build Agent
## Overview
The Build Agent workflow is an interactive agent builder that guides you through creating BMAD Core compliant agents as YAML source files that compile to final `.md` during install. It supports three agent types: Simple (self-contained), Expert (with sidecar resources), and Module (full-featured with workflows).
## Key Features
- **Optional Brainstorming**: Creative ideation session before agent building to explore concepts and personalities
- **Three Agent Types**: Simple, Expert, and Module agents with appropriate structures
- **Persona Development**: Guided creation of role, identity, communication style, and principles
- **Command Builder**: Interactive command definition with workflow/task/action patterns
- **Validation Built-In**: Ensures YAML structure and BMAD Core compliance
- **Customize Support**: Optional `customize.yaml` for persona/menu overrides and critical actions
- **Sidecar Resources**: Setup for Expert agents with domain-specific data
## Usage
### Basic Invocation
```bash
workflow create-agent
```
### Through BMad Builder Agent
```
*create-agent
```
### With Brainstorming Session
The workflow includes an optional brainstorming phase (Step -1) that helps you explore agent concepts, personalities, and capabilities before building. This is particularly useful when you have a vague idea and want to develop it into a concrete agent concept.
### What You'll Be Asked
0. **Optional brainstorming** (vague idea → refined concept)
1. Agent type (Simple, Expert, or Module)
2. Basic identity (name, title, icon, filename)
3. Module assignment (for Module agents)
4. Sidecar resources (for Expert agents)
5. Persona elements (role, identity, style, principles)
6. Commands and their implementations
7. Critical actions (optional)
8. Activation rules (optional, rarely needed)
## Workflow Structure
### Files Included
```
create-agent/
├── workflow.yaml # Configuration
├── instructions.md # Step-by-step guide
├── checklist.md # Validation criteria
├── README.md # This file
├── agent-types.md # Agent type documentation
├── agent-architecture.md # Architecture patterns
├── agent-command-patterns.md # Command patterns reference
└── communication-styles.md # Style examples
```
## Workflow Process
### Phase 0: Optional Brainstorming (Step -1)
- Creative ideation session using diverse brainstorming techniques
- Explore agent concepts, personalities, and capabilities
- Generate character ideas, expertise areas, and command concepts
- Output feeds directly into agent identity and persona development
### Phase 1: Agent Setup (Steps 0-2)
- Load agent building documentation and patterns
- Choose agent type (Simple/Expert/Module)
- Define basic identity (name, title, icon, filename) - informed by brainstorming if completed
- Assign to module (for Module agents)
### Phase 2: Persona Development (Steps 2-3)
- Define role and responsibilities - leveraging brainstorming insights if available
- Craft unique identity and backstory
- Select communication style - can use brainstormed personality concepts
- Establish guiding principles
- Add critical actions (optional)
### Phase 3: Command Building (Step 4)
- Add *help and *exit commands (required)
- Define workflow commands (most common)
- Add task commands (for single operations)
- Create action commands (inline logic)
- Configure command attributes
### Phase 4: Finalization (Steps 5-10)
- Confirm activation behavior (mostly automatic)
- Generate `.agent.yaml` file
- Optionally create a customize file for overrides
- Setup sidecar resources (for Expert agents)
- Validate YAML and compile to `.md`
- Provide usage instructions
## Output
### Generated Files
#### For Standalone Agents (not part of a module)
- **YAML Source**: `{custom_agent_location}/{{agent_filename}}.agent.yaml` (default: `bmad/agents/`)
- **Installation Location**: `{project-root}/bmad/agents/{{agent_filename}}.md`
- **Compilation**: Run the BMAD Method installer and select "Compile Agents (Quick rebuild of all agent .md files)"
#### For Module Agents
- **YAML Source**: `src/modules/{{target_module}}/agents/{{agent_filename}}.agent.yaml`
- **Installation Location**: `{project-root}/bmad/{{module}}/agents/{{agent_filename}}.md`
- **Compilation**: Automatic during module installation
### YAML Agent Structure (simplified)
```yaml
agent:
metadata:
id: bmad/{{module}}/agents/{{agent_filename}}.md
name: { { agent_name } }
title: { { agent_title } }
icon: { { agent_icon } }
module: { { module } }
persona:
role: '...'
identity: '...'
communication_style: '...'
principles: ['...', '...']
menu:
- trigger: example
workflow: '{project-root}/path/to/workflow.yaml'
description: Do the thing
```
### Optional Customize File
If created, generates at:
`{project-root}/bmad/_cfg/agents/{{module}}-{{agent_filename}}.customize.yaml`
## Installation and Compilation
### Agent Installation Locations
Agents are installed to different locations based on their type:
1. **Standalone Agents** (not part of a module)
- Source: Created in your custom agent location (default: `bmad/agents/`)
- Installed to: `{project-root}/bmad/agents/`
- Compilation: Run BMAD Method installer and select "Compile Agents"
2. **Module Agents** (part of BMM, BMB, or custom modules)
- Source: Created in `src/modules/{module}/agents/`
- Installed to: `{project-root}/bmad/{module}/agents/`
- Compilation: Automatic during module installation
### Compilation Process
The installer compiles YAML agent definitions to Markdown:
```bash
# For standalone agents
npm run build:agents
# For all BMad components (includes agents)
npm run install:bmad
# Using the installer menu
npm run installer
# Then select: Compile Agents
```
### Build Commands
Additional build commands for agent management:
```bash
# Build specific agent types
npx bmad-method build:agents # Build standalone agents
npx bmad-method build:modules # Build module agents (with modules)
# Full rebuild
npx bmad-method build:all # Rebuild everything
```
## Requirements
- BMAD Core v6 project structure
- Module to host the agent (for Module agents)
- Understanding of agent purpose and commands
- Workflows/tasks to reference in commands (or mark as "todo")
## Brainstorming Integration
The optional brainstorming phase (Step -1) provides a seamless path from vague idea to concrete agent concept:
### When to Use Brainstorming
- **Vague concept**: "I want an agent that helps with data stuff"
- **Creative exploration**: Want to discover unique personality and approach
- **Team building**: Creating agents for a module with specific roles
- **Character development**: Need to flesh out agent personality and voice
### Brainstorming Flow
1. **Step -1**: Optional brainstorming session
- Uses CIS brainstorming workflow with agent-specific context
- Explores identity, personality, expertise, and command concepts
- Generates detailed character and capability ideas
2. **Steps 0-2**: Agent setup informed by brainstorming
- Brainstorming output guides agent type selection
- Character concepts inform basic identity choices
- Personality insights shape persona development
3. **Seamless transition**: Vague idea → brainstormed concept → built agent
### Key Principle
Users can go from **vague idea → brainstormed concept → built agent** in one continuous flow, with brainstorming output directly feeding into agent development.
## Best Practices
### Before Starting
1. Review example agents in `/bmad/bmm/agents/` for patterns
2. Consider using brainstorming if you have a vague concept to develop
3. Have a clear vision of the agent's role and personality (or use brainstorming to develop it)
4. List the commands/capabilities the agent will need
5. Identify any workflows or tasks the agent will invoke
### During Execution
1. **Agent Names**: Use memorable names that reflect personality
2. **Icons**: Choose an emoji that represents the agent's role
3. **Persona**: Make it distinct and consistent with communication style
4. **Commands**: Use kebab-case, start custom commands with letter (not \*)
5. **Workflows**: Reference existing workflows or mark as "todo" to implement later
### After Completion
1. **Compile the agent**:
- For standalone agents: Run `npm run build:agents` or use the installer menu
- For module agents: Automatic during module installation
2. **Test the agent**: Use the compiled `.md` agent in your IDE
3. **Implement placeholders**: Complete any "todo" workflows referenced
4. **Refine as needed**: Use customize file for persona adjustments
5. **Evolve over time**: Add new commands as requirements emerge
## Agent Types
### Simple Agent
- **Best For**: Self-contained utilities, simple assistants
- **Characteristics**: Embedded logic, no external dependencies
- **Example**: Calculator agent, random picker, simple formatter
### Expert Agent
- **Best For**: Domain-specific agents with data/memory
- **Characteristics**: Sidecar folders, domain restrictions, memory files
- **Example**: Diary keeper, project journal, personal knowledge base
### Module Agent
- **Best For**: Full-featured agents with workflows
- **Characteristics**: Part of module, commands invoke workflows
- **Example**: Product manager, architect, research assistant
## Troubleshooting
### Issue: Agent won't load
- **Solution**: Validate XML structure is correct
- **Check**: Ensure all required tags present (persona, cmds)
### Issue: Commands don't work
- **Solution**: Verify workflow paths are correct or marked "todo"
- **Check**: Test workflow invocation separately first
### Issue: Persona feels generic
- **Solution**: Review communication styles guide
- **Check**: Make identity unique and specific to role
## Customization
To modify agent building process:
1. Edit `instructions.md` to change steps
2. Update `agent-types.md` to add new agent patterns
3. Modify `agent-command-patterns.md` for new command types
4. Edit `communication-styles.md` to add personality examples
## Version History
- **v6.0.0** - BMAD Core v6 compatible
- Three agent types (Simple/Expert/Module)
- Enhanced persona development
- Command pattern library
- Validation framework
## Support
For issues or questions:
- Review example agents in `/bmad/bmm/agents/`
- Check agent documentation in this workflow folder
- Test with simple agents first, then build complexity
- Consult BMAD Method v6 documentation
---
_Part of the BMad Method v6 - BMB (BMad Builder) Module_

View File

@@ -1,412 +0,0 @@
# BMAD Agent Architecture Reference
_LLM-Optimized Technical Documentation for Agent Building_
## Core Agent Structure
### Minimal Valid Agent
```xml
<!-- Powered by BMAD-CORE™ -->
# Agent Name
<agent id="path/to/agent.md" name="Name" title="Title" icon="🤖">
<persona>
<role>My primary function</role>
<identity>My background and expertise</identity>
<communication_style>How I interact</communication_style>
<principles>My core beliefs and methodology</principles>
</persona>
<menu>
<item cmd="*help">Show numbered menu</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```
## Agent XML Schema
### Root Element: `<agent>`
**Required Attributes:**
- `id` - Unique path identifier (e.g., "bmad/bmm/agents/analyst.md")
- `name` - Agent's name (e.g., "Mary", "John", "Helper")
- `title` - Professional title (e.g., "Business Analyst", "Security Engineer")
- `icon` - Single emoji representing the agent
### Core Sections
#### 1. Persona Section (REQUIRED)
```xml
<persona>
<role>1-2 sentences: Professional title and primary expertise, use first-person voice</role>
<identity>2-5 sentences: Background, experience, specializations, use first-person voice</identity>
<communication_style>1-3 sentences: Interaction approach, tone, quirks, use first-person voice</communication_style>
<principles>2-5 sentences: Core beliefs, methodology, philosophy, use first-person voice</principles>
</persona>
```
**Best Practices:**
- Role: Be specific about expertise area
- Identity: Include experience indicators (years, depth)
- Communication: Describe HOW they interact, not just tone and quirks
- Principles: Start with "I believe" or "I operate" for first-person voice
#### 2. Critical Actions Section
```xml
<critical-actions>
<i>Load into memory {project-root}/bmad/{module}/config.yaml and set variables</i>
<i>Remember the users name is {user_name}</i>
<i>ALWAYS communicate in {communication_language}</i>
<!-- Custom initialization actions -->
</critical-actions>
```
**For Expert Agents with Sidecars (CRITICAL):**
```xml
<critical-actions>
<!-- CRITICAL: Load sidecar files FIRST -->
<i critical="MANDATORY">Load COMPLETE file {agent-folder}/instructions.md and follow ALL directives</i>
<i critical="MANDATORY">Load COMPLETE file {agent-folder}/memories.md into permanent context</i>
<i critical="MANDATORY">You MUST follow all rules in instructions.md on EVERY interaction</i>
<!-- Standard initialization -->
<i>Load into memory {project-root}/bmad/{module}/config.yaml and set variables</i>
<i>Remember the users name is {user_name}</i>
<i>ALWAYS communicate in {communication_language}</i>
<!-- Domain restrictions -->
<i>ONLY read/write files in {user-folder}/diary/ - NO OTHER FOLDERS</i>
</critical-actions>
```
**Common Patterns:**
- Config loading for module agents
- User context initialization
- Language preferences
- **Sidecar file loading (Expert agents) - MUST be explicit and CRITICAL**
- **Domain restrictions (Expert agents) - MUST be enforced**
#### 3. Menu Section (REQUIRED)
```xml
<menu>
<item cmd="*trigger" [attributes]>Description</item>
</menu>
```
**Command Attributes:**
- `run-workflow="{path}"` - Executes a workflow
- `exec="{path}"` - Executes a task
- `tmpl="{path}"` - Template reference
- `data="{path}"` - Data file reference
**Required Menu Items:**
- `*help` - Always first, shows command list
- `*exit` - Always last, exits agent
## Advanced Agent Patterns
### Activation Rules (OPTIONAL)
```xml
<activation critical="true">
<initialization critical="true" sequential="MANDATORY">
<step n="1">Load configuration</step>
<step n="2">Apply overrides</step>
<step n="3">Execute critical actions</step>
<step n="4" critical="BLOCKING">Show greeting with menu</step>
<step n="5" critical="BLOCKING">AWAIT user input</step>
</initialization>
<command-resolution critical="true">
<rule>Numeric input → Execute command at cmd_map[n]</rule>
<rule>Text input → Fuzzy match against commands</rule>
</command-resolution>
</activation>
```
### Expert Agent Sidecar Pattern
```xml
<!-- DO NOT use sidecar-resources tag - Instead use critical-actions -->
<!-- Sidecar files MUST be loaded explicitly in critical-actions -->
<!-- Example Expert Agent with Diary domain -->
<agent id="diary-keeper" name="Personal Assistant" title="Diary Keeper" icon="📔">
<critical-actions>
<!-- MANDATORY: Load all sidecar files -->
<i critical="MANDATORY">Load COMPLETE file {agent-folder}/diary-rules.md</i>
<i critical="MANDATORY">Load COMPLETE file {agent-folder}/user-memories.md</i>
<i critical="MANDATORY">Follow ALL rules from diary-rules.md</i>
<!-- Domain restriction -->
<i critical="MANDATORY">ONLY access files in {user-folder}/diary/</i>
<i critical="MANDATORY">NEVER access files outside diary folder</i>
</critical-actions>
<persona>...</persona>
<menu>...</menu>
</agent>
```
### Module Agent Integration
```xml
<module-integration>
<module-path>{project-root}/bmad/{module-code}</module-path>
<config-source>{module-path}/config.yaml</config-source>
<workflows-path>{project-root}/bmad/{module-code}/workflows</workflows-path>
</module-integration>
```
## Variable System
### System Variables
- `{project-root}` - Root directory of project
- `{user_name}` - User's name from config
- `{communication_language}` - Language preference
- `{date}` - Current date
- `{module}` - Current module code
### Config Variables
Format: `{config_source}:variable_name`
Example: `{config_source}:output_folder`
### Path Construction
```
Good: {project-root}/bmad/{module}/agents/
Bad: /absolute/path/to/agents/
Bad: ../../../relative/paths/
```
## Command Patterns
### Workflow Commands
```xml
<!-- Full path -->
<item cmd="*create-prd" run-workflow="{project-root}/bmad/bmm/workflows/prd/workflow.yaml">
Create Product Requirements Document
</item>
<!-- Placeholder for future -->
<item cmd="*analyze" run-workflow="todo">
Perform analysis (workflow to be created)
</item>
```
### Task Commands
```xml
<item cmd="*validate" exec="{project-root}/bmad/core/tasks/validate-workflow.xml">
Validate document
</item>
```
### Template Commands
```xml
<item cmd="*brief"
exec="{project-root}/bmad/core/tasks/create-doc.md"
tmpl="{project-root}/bmad/bmm/templates/brief.md">
Create project brief
</item>
```
### Data-Driven Commands
```xml
<item cmd="*standup"
exec="{project-root}/bmad/bmm/tasks/daily-standup.xml"
data="{project-root}/bmad/_cfg/agent-party.xml">
Run daily standup
</item>
```
## Agent Type Specific Patterns
### Simple Agent
- Self-contained logic
- Minimal or no external dependencies
- May have embedded functions
- Good for utilities and converters
### Expert Agent
- Domain-specific with sidecar resources
- Restricted access patterns
- Memory/context files
- Good for specialized domains
### Module Agent
- Full integration with module
- Multiple workflows and tasks
- Config-driven behavior
- Good for professional tools
## Common Anti-Patterns to Avoid
### ❌ Bad Practices
```xml
<!-- Missing required persona elements -->
<persona>
<role>Helper</role>
<!-- Missing identity, style, principles -->
</persona>
<!-- Hard-coded paths -->
<item cmd="*run" exec="/Users/john/project/task.md">
<!-- No help command -->
<menu>
<item cmd="*do-something">Action</item>
<!-- Missing *help -->
</menu>
<!-- Duplicate command triggers -->
<item cmd="*analyze">First</item>
<item cmd="*analyze">Second</item>
```
### ✅ Good Practices
```xml
<!-- Complete persona -->
<persona>
<role>Data Analysis Expert</role>
<identity>Senior analyst with 10+ years...</identity>
<communication_style>Analytical and precise...</communication_style>
<principles>I believe in data-driven...</principles>
</persona>
<!-- Variable-based paths -->
<item cmd="*run" exec="{project-root}/bmad/module/task.md">
<!-- Required commands present -->
<menu>
<item cmd="*help">Show commands</item>
<item cmd="*analyze">Perform analysis</item>
<item cmd="*exit">Exit</item>
</menu>
```
## Agent Lifecycle
### 1. Initialization
1. Load agent file
2. Parse XML structure
3. Load critical-actions
4. Apply config overrides
5. Present greeting
### 2. Command Loop
1. Show numbered menu
2. Await user input
3. Resolve command
4. Execute action
5. Return to menu
### 3. Termination
1. User enters \*exit
2. Cleanup if needed
3. Exit persona
## Testing Checklist
Before deploying an agent:
- [ ] Valid XML structure
- [ ] All persona elements present
- [ ] *help and *exit commands exist
- [ ] All paths use variables
- [ ] No duplicate commands
- [ ] Config loading works
- [ ] Commands execute properly
## LLM Building Tips
When building agents:
1. Start with agent type (Simple/Expert/Module)
2. Define complete persona first
3. Add standard critical-actions
4. Include *help and *exit
5. Add domain commands
6. Test command execution
7. Validate with checklist
## Integration Points
### With Workflows
- Agents invoke workflows via run-workflow
- Workflows can be incomplete (marked "todo")
- Workflow paths must be valid or "todo"
### With Tasks
- Tasks are single operations
- Executed via exec attribute
- Can include data files
### With Templates
- Templates define document structure
- Used with create-doc task
- Variables passed through
## Quick Reference
### Minimal Commands
```xml
<menu>
<item cmd="*help">Show numbered cmd list</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
```
### Standard Critical Actions
```xml
<critical-actions>
<i>Load into memory {project-root}/bmad/{module}/config.yaml</i>
<i>Remember the users name is {user_name}</i>
<i>ALWAYS communicate in {communication_language}</i>
</critical-actions>
```
### Module Agent Pattern
```xml
<agent id="bmad/{module}/agents/{name}.md"
name="{Name}"
title="{Title}"
icon="{emoji}">
<persona>...</persona>
<critical-actions>...</critical-actions>
<menu>
<item cmd="*help">...</item>
<item cmd="*{command}" run-workflow="{path}">...</item>
<item cmd="*exit">...</item>
</menu>
</agent>
```

View File

@@ -1,759 +0,0 @@
# BMAD Agent Command Patterns Reference
_LLM-Optimized Guide for Command Design_
## Important: How to Process Action References
When executing agent commands, understand these reference patterns:
```xml
<!-- Pattern 1: Inline action -->
<item cmd="*example" action="do this specific thing">Description</item>
→ Execute the text "do this specific thing" directly
<!-- Pattern 2: Internal reference with # prefix -->
<item cmd="*example" action="#prompt-id">Description</item>
→ Find <prompt id="prompt-id"> in the current agent and execute its content
<!-- Pattern 3: External file reference -->
<item cmd="*example" exec="{project-root}/path/to/file.md">Description</item>
→ Load and execute the external file
```
**The `#` prefix is your signal that this is an internal XML node reference, not a file path.**
## Command Anatomy
### Basic Structure
```xml
<menu>
<item cmd="*trigger" [attributes]>Description</item>
</menu>
```
**Components:**
- `cmd` - The trigger word (always starts with \*)
- `attributes` - Action directives (optional):
- `run-workflow` - Path to workflow YAML
- `exec` - Path to task/operation
- `tmpl` - Path to template (used with exec)
- `action` - Embedded prompt/instruction
- `data` - Path to supplementary data (universal)
- `Description` - What shows in menu
## Command Types
**Quick Reference:**
1. **Workflow Commands** - Execute multi-step workflows (`run-workflow`)
2. **Task Commands** - Execute single operations (`exec`)
3. **Template Commands** - Generate from templates (`exec` + `tmpl`)
4. **Meta Commands** - Agent control (no attributes)
5. **Action Commands** - Embedded prompts (`action`)
6. **Embedded Commands** - Logic in persona (no attributes)
**Universal Attributes:**
- `data` - Can be added to ANY command type for supplementary info
- `if` - Conditional execution (advanced pattern)
- `params` - Runtime parameters (advanced pattern)
### 1. Workflow Commands
Execute complete multi-step processes
```xml
<!-- Standard workflow -->
<item cmd="*create-prd"
run-workflow="{project-root}/bmad/bmm/workflows/prd/workflow.yaml">
Create Product Requirements Document
</item>
<!-- Workflow with validation -->
<item cmd="*validate-prd"
validate-workflow="{output_folder}/prd-draft.md"
workflow="{project-root}/bmad/bmm/workflows/prd/workflow.yaml">
Validate PRD Against Checklist
</item>
<!-- Auto-discover validation workflow from document -->
<item cmd="*validate-doc"
validate-workflow="{output_folder}/document.md">
Validate Document (auto-discover checklist)
</item>
<!-- Placeholder for future development -->
<item cmd="*analyze-data"
run-workflow="todo">
Analyze dataset (workflow coming soon)
</item>
```
**Workflow Attributes:**
- `run-workflow` - Execute a workflow to create documents
- `validate-workflow` - Validate an existing document against its checklist
- `workflow` - (optional with validate-workflow) Specify the workflow.yaml directly
**Best Practices:**
- Use descriptive trigger names
- Always use variable paths
- Mark incomplete as "todo"
- Description should be clear action
- Include validation commands for workflows that produce documents
### 2. Task Commands
Execute single operations
```xml
<!-- Simple task -->
<item cmd="*validate"
exec="{project-root}/bmad/core/tasks/validate-workflow.xml">
Validate document against checklist
</item>
<!-- Task with data -->
<item cmd="*standup"
exec="{project-root}/bmad/mmm/tasks/daily-standup.xml"
data="{project-root}/bmad/_cfg/agent-party.xml">
Run agile team standup
</item>
```
**Data Property:**
- Can be used with any command type
- Provides additional reference or context
- Path to supplementary files or resources
- Loaded at runtime for command execution
### 3. Template Commands
Generate documents from templates
```xml
<item cmd="*brief"
exec="{project-root}/bmad/core/tasks/create-doc.md"
tmpl="{project-root}/bmad/bmm/templates/brief.md">
Produce Project Brief
</item>
<item cmd="*competitor-analysis"
exec="{project-root}/bmad/core/tasks/create-doc.md"
tmpl="{project-root}/bmad/bmm/templates/competitor.md"
data="{project-root}/bmad/_data/market-research.csv">
Produce Competitor Analysis
</item>
```
### 4. Meta Commands
Agent control and information
```xml
<!-- Required meta commands -->
<item cmd="*help">Show numbered cmd list</item>
<item cmd="*exit">Exit with confirmation</item>
<!-- Optional meta commands -->
<item cmd="*yolo">Toggle Yolo Mode</item>
<item cmd="*status">Show current status</item>
<item cmd="*config">Show configuration</item>
```
### 5. Action Commands
Direct prompts embedded in commands (Simple agents)
#### Simple Action (Inline)
```xml
<!-- Short action attribute with embedded prompt -->
<item cmd="*list-tasks"
action="list all tasks from {project-root}/bmad/_cfg/task-manifest.csv">
List Available Tasks
</item>
<item cmd="*summarize"
action="summarize the key points from the current document">
Summarize Document
</item>
```
#### Complex Action (Referenced)
For multiline/complex prompts, define them separately and reference by id:
```xml
<agent name="Research Assistant">
<!-- Define complex prompts as separate nodes -->
<prompts>
<prompt id="deep-analysis">
Perform a comprehensive analysis following these steps:
1. Identify the main topic and key themes
2. Extract all supporting evidence and data points
3. Analyze relationships between concepts
4. Identify gaps or contradictions
5. Generate insights and recommendations
6. Create an executive summary
Format the output with clear sections and bullet points.
</prompt>
<prompt id="literature-review">
Conduct a systematic literature review:
1. Summarize each source's main arguments
2. Compare and contrast different perspectives
3. Identify consensus points and controversies
4. Evaluate the quality and relevance of sources
5. Synthesize findings into coherent themes
6. Highlight research gaps and future directions
Include proper citations and references.
</prompt>
</prompts>
<!-- Commands reference the prompts by id -->
<menu>
<item cmd="*help">Show numbered cmd list</item>
<item cmd="*deep-analyze"
action="#deep-analysis">
<!-- The # means: use the <prompt id="deep-analysis"> defined above -->
Perform Deep Analysis
</item>
<item cmd="*review-literature"
action="#literature-review"
data="{project-root}/bmad/_data/sources.csv">
Conduct Literature Review
</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```
**Reference Convention:**
- `action="#prompt-id"` means: "Find and execute the <prompt> node with id='prompt-id' within this agent"
- `action="inline text"` means: "Execute this text directly as the prompt"
- `exec="{path}"` means: "Load and execute external file at this path"
- The `#` prefix signals to the LLM: "This is an internal reference - look for a prompt node with this ID within the current agent XML"
**LLM Processing Instructions:**
When you see `action="#some-id"` in a command:
1. Look for `<prompt id="some-id">` within the same agent
2. Use the content of that prompt node as the instruction
3. If not found, report error: "Prompt 'some-id' not found in agent"
**Use Cases:**
- Quick operations (inline action)
- Complex multi-step processes (referenced prompt)
- Self-contained agents with task-like capabilities
- Reusable prompt templates within agent
### 6. Embedded Commands
Logic embedded in agent persona (Simple agents)
```xml
<!-- No exec/run-workflow/action attribute -->
<item cmd="*calculate">Perform calculation</item>
<item cmd="*convert">Convert format</item>
<item cmd="*generate">Generate output</item>
```
## Command Naming Conventions
### Action-Based Naming
```xml
*create- <!-- Generate new content -->
*build- <!-- Construct components -->
*analyze- <!-- Examine and report -->
*validate- <!-- Check correctness -->
*generate- <!-- Produce output -->
*update- <!-- Modify existing -->
*review- <!-- Examine quality -->
*test- <!-- Verify functionality -->
```
### Domain-Based Naming
```xml
*brainstorm <!-- Creative ideation -->
*architect <!-- Design systems -->
*refactor <!-- Improve code -->
*deploy <!-- Release to production -->
*monitor <!-- Watch systems -->
```
### Naming Anti-Patterns
```xml
<!-- ❌ Too vague -->
<item cmd="*do">Do something</item>
<!-- ❌ Too long -->
<item cmd="*create-comprehensive-product-requirements-document-with-analysis">
<!-- ❌ No verb -->
<item cmd="*prd">Product Requirements</item>
<!-- ✅ Clear and concise -->
<item cmd="*create-prd">Create Product Requirements Document</item>
```
## Command Organization
### Standard Order
```xml
<menu>
<!-- 1. Always first -->
<item cmd="*help">Show numbered cmd list</item>
<!-- 2. Primary workflows -->
<item cmd="*create-prd" run-workflow="...">Create PRD</item>
<item cmd="*create-module" run-workflow="...">Build module</item>
<!-- 3. Secondary actions -->
<item cmd="*validate" exec="...">Validate document</item>
<item cmd="*analyze" exec="...">Analyze code</item>
<!-- 4. Utility commands -->
<item cmd="*config">Show configuration</item>
<item cmd="*yolo">Toggle Yolo Mode</item>
<!-- 5. Always last -->
<item cmd="*exit">Exit with confirmation</item>
</menu>
```
### Grouping Strategies
**By Lifecycle:**
```xml
<menu>
<item cmd="*help">Help</item>
<!-- Planning -->
<item cmd="*brainstorm">Brainstorm ideas</item>
<item cmd="*plan">Create plan</item>
<!-- Building -->
<item cmd="*build">Build component</item>
<item cmd="*test">Test component</item>
<!-- Deployment -->
<item cmd="*deploy">Deploy to production</item>
<item cmd="*monitor">Monitor system</item>
<item cmd="*exit">Exit</item>
</menu>
```
**By Complexity:**
```xml
<menu>
<item cmd="*help">Help</item>
<!-- Simple -->
<item cmd="*quick-review">Quick review</item>
<!-- Standard -->
<item cmd="*create-doc">Create document</item>
<!-- Complex -->
<item cmd="*full-analysis">Comprehensive analysis</item>
<item cmd="*exit">Exit</item>
</menu>
```
## Command Descriptions
### Good Descriptions
```xml
<!-- Clear action and object -->
<item cmd="*create-prd">Create Product Requirements Document</item>
<!-- Specific outcome -->
<item cmd="*analyze-security">Perform security vulnerability analysis</item>
<!-- User benefit -->
<item cmd="*optimize">Optimize code for performance</item>
```
### Poor Descriptions
```xml
<!-- Too vague -->
<item cmd="*process">Process</item>
<!-- Technical jargon -->
<item cmd="*exec-wf-123">Execute WF123</item>
<!-- Missing context -->
<item cmd="*run">Run</item>
```
## The Data Property
### Universal Data Attribute
The `data` attribute can be added to ANY command type to provide supplementary information:
```xml
<!-- Workflow with data -->
<item cmd="*brainstorm"
run-workflow="{project-root}/bmad/core/workflows/brainstorming/workflow.yaml"
data="{project-root}/bmad/core/workflows/brainstorming/brain-methods.csv">
Creative Brainstorming Session
</item>
<!-- Action with data -->
<item cmd="*analyze-metrics"
action="analyze these metrics and identify trends"
data="{project-root}/bmad/_data/performance-metrics.json">
Analyze Performance Metrics
</item>
<!-- Template with data -->
<item cmd="*report"
exec="{project-root}/bmad/core/tasks/create-doc.md"
tmpl="{project-root}/bmad/bmm/templates/report.md"
data="{project-root}/bmad/_data/quarterly-results.csv">
Generate Quarterly Report
</item>
```
**Common Data Uses:**
- Reference tables (CSV files)
- Configuration data (YAML/JSON)
- Agent manifests (XML)
- Historical context
- Domain knowledge
- Examples and patterns
## Advanced Patterns
### Conditional Commands
```xml
<!-- Only show if certain conditions met -->
<item cmd="*advanced-mode"
if="user_level == 'expert'"
run-workflow="...">
Advanced configuration mode
</item>
<!-- Environment specific -->
<item cmd="*deploy-prod"
if="environment == 'production'"
exec="...">
Deploy to production
</item>
```
### Parameterized Commands
```xml
<!-- Accept runtime parameters -->
<item cmd="*create-agent"
run-workflow="..."
params="agent_type,agent_name">
Create new agent with parameters
</item>
```
### Command Aliases
```xml
<!-- Multiple triggers for same action -->
<item cmd="*prd|*create-prd|*product-requirements"
run-workflow="...">
Create Product Requirements Document
</item>
```
## Module-Specific Patterns
### BMM (Business Management)
```xml
<item cmd="*create-prd">Product Requirements</item>
<item cmd="*market-research">Market Research</item>
<item cmd="*competitor-analysis">Competitor Analysis</item>
<item cmd="*brief">Project Brief</item>
```
### BMB (Builder)
```xml
<item cmd="*create-agent">Build Agent</item>
<item cmd="*create-module">Build Module</item>
<item cmd="*create-workflow">Create Workflow</item>
<item cmd="*module-brief">Module Brief</item>
```
### CIS (Creative Intelligence)
```xml
<item cmd="*brainstorm">Brainstorming Session</item>
<item cmd="*ideate">Ideation Workshop</item>
<item cmd="*storytell">Story Creation</item>
```
## Command Menu Presentation
### How Commands Display
```
1. *help - Show numbered cmd list
2. *create-prd - Create Product Requirements Document
3. *create-agent - Build new BMAD agent
4. *validate - Validate document
5. *exit - Exit with confirmation
```
### Menu Customization
```xml
<!-- Group separator (visual only) -->
<item cmd="---">━━━━━━━━━━━━━━━━━━━━</item>
<!-- Section header (non-executable) -->
<item cmd="SECTION">═══ Workflows ═══</item>
```
## Error Handling
### Missing Resources
```xml
<!-- Workflow not yet created -->
<item cmd="*future-feature"
run-workflow="todo">
Coming soon: Advanced feature
</item>
<!-- Graceful degradation -->
<item cmd="*analyze"
run-workflow="{optional-path|fallback-path}">
Analyze with available tools
</item>
```
## Testing Commands
### Command Test Checklist
- [ ] Unique trigger (no duplicates)
- [ ] Clear description
- [ ] Valid path or "todo"
- [ ] Uses variables not hardcoded paths
- [ ] Executes without error
- [ ] Returns to menu after execution
### Common Issues
1. **Duplicate triggers** - Each cmd must be unique
2. **Missing paths** - File must exist or be "todo"
3. **Hardcoded paths** - Always use variables
4. **No description** - Every command needs text
5. **Wrong order** - help first, exit last
## Quick Templates
### Workflow Command
```xml
<!-- Create document -->
<item cmd="*{action}-{object}"
run-workflow="{project-root}/bmad/{module}/workflows/{workflow}/workflow.yaml">
{Action} {Object Description}
</item>
<!-- Validate document -->
<item cmd="*validate-{object}"
validate-workflow="{output_folder}/{document}.md"
workflow="{project-root}/bmad/{module}/workflows/{workflow}/workflow.yaml">
Validate {Object Description}
</item>
```
### Task Command
```xml
<item cmd="*{action}"
exec="{project-root}/bmad/{module}/tasks/{task}.md">
{Action Description}
</item>
```
### Template Command
```xml
<item cmd="*{document}"
exec="{project-root}/bmad/core/tasks/create-doc.md"
tmpl="{project-root}/bmad/{module}/templates/{template}.md">
Create {Document Name}
</item>
```
## Self-Contained Agent Patterns
### When to Use Each Approach
**Inline Action (`action="prompt"`)**
- Prompt is < 2 lines
- Simple, direct instruction
- Not reused elsewhere
- Quick transformations
**Referenced Prompt (`action="#prompt-id"`)**
- Prompt is multiline/complex
- Contains structured steps
- May be reused by multiple commands
- Maintains readability
**External Task (`exec="path/to/task.md"`)**
- Logic needs to be shared across agents
- Task is independently valuable
- Requires version control separately
- Part of larger workflow system
### Complete Self-Contained Agent
```xml
<agent id="bmad/research/agents/analyst.md" name="Research Analyst" icon="🔬">
<!-- Embedded prompt library -->
<prompts>
<prompt id="swot-analysis">
Perform a SWOT analysis:
STRENGTHS (Internal, Positive)
- What advantages exist?
- What do we do well?
- What unique resources?
WEAKNESSES (Internal, Negative)
- What could improve?
- Where are resource gaps?
- What needs development?
OPPORTUNITIES (External, Positive)
- What trends can we leverage?
- What market gaps exist?
- What partnerships are possible?
THREATS (External, Negative)
- What competition exists?
- What risks are emerging?
- What could disrupt us?
Provide specific examples and actionable insights for each quadrant.
</prompt>
<prompt id="competitive-intel">
Analyze competitive landscape:
1. Identify top 5 competitors
2. Compare features and capabilities
3. Analyze pricing strategies
4. Evaluate market positioning
5. Assess strengths and vulnerabilities
6. Recommend competitive strategies
</prompt>
</prompts>
<menu>
<item cmd="*help">Show numbered cmd list</item>
<!-- Simple inline actions -->
<item cmd="*summarize"
action="create executive summary of findings">
Create Executive Summary
</item>
<!-- Complex referenced prompts -->
<item cmd="*swot"
action="#swot-analysis">
Perform SWOT Analysis
</item>
<item cmd="*compete"
action="#competitive-intel"
data="{project-root}/bmad/_data/market-data.csv">
Analyze Competition
</item>
<!-- Hybrid: external task with internal data -->
<item cmd="*report"
exec="{project-root}/bmad/core/tasks/create-doc.md"
tmpl="{project-root}/bmad/research/templates/report.md">
Generate Research Report
</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```
## Simple Agent Example
For agents that primarily use embedded logic:
```xml
<agent name="Data Analyst">
<menu>
<item cmd="*help">Show numbered cmd list</item>
<!-- Action commands for direct operations -->
<item cmd="*list-metrics"
action="list all available metrics from the dataset">
List Available Metrics
</item>
<item cmd="*analyze"
action="perform statistical analysis on the provided data"
data="{project-root}/bmad/_data/dataset.csv">
Analyze Dataset
</item>
<item cmd="*visualize"
action="create visualization recommendations for this data">
Suggest Visualizations
</item>
<!-- Embedded logic commands -->
<item cmd="*calculate">Perform calculations</item>
<item cmd="*interpret">Interpret results</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```
## LLM Building Guide
When creating commands:
1. Start with *help and *exit
2. Choose appropriate command type:
- Complex multi-step? Use `run-workflow`
- Single operation? Use `exec`
- Need template? Use `exec` + `tmpl`
- Simple prompt? Use `action`
- Agent handles it? Use no attributes
3. Add `data` attribute if supplementary info needed
4. Add primary workflows (main value)
5. Add secondary tasks
6. Include utility commands
7. Test each command works
8. Verify no duplicates
9. Ensure clear descriptions

View File

@@ -1,292 +0,0 @@
# BMAD Agent Types Reference
## Overview
BMAD agents come in three distinct types, each designed for different use cases and complexity levels. The type determines where the agent is stored and what capabilities it has.
## Directory Structure by Type
### Standalone Agents (Simple & Expert)
Live in their own dedicated directories under `bmad/agents/`:
```
bmad/agents/
├── my-helper/ # Simple agent
│ ├── my-helper.agent.yaml # Agent definition
│ └── my-helper.md # Built XML (generated)
└── domain-expert/ # Expert agent
├── domain-expert.agent.yaml
├── domain-expert.md # Built XML
└── domain-expert-sidecar/ # Expert resources
├── memories.md # Persistent memory
├── instructions.md # Private directives
└── knowledge/ # Domain knowledge
```
### Module Agents
Part of a module system under `bmad/{module}/agents/`:
```
bmad/bmm/agents/
├── product-manager.agent.yaml
├── product-manager.md # Built XML
├── business-analyst.agent.yaml
└── business-analyst.md # Built XML
```
## Agent Types
### 1. Simple Agent
**Purpose:** Self-contained, standalone agents with embedded capabilities
**Location:** `bmad/agents/{agent-name}/`
**Characteristics:**
- All logic embedded within the agent file
- No external dependencies
- Quick to create and deploy
- Perfect for single-purpose tools
- Lives in its own directory
**Use Cases:**
- Calculator agents
- Format converters
- Simple analyzers
- Static advisors
**YAML Structure (source):**
```yaml
agent:
metadata:
name: 'Helper'
title: 'Simple Helper'
icon: '🤖'
type: 'simple'
persona:
role: 'Simple Helper Role'
identity: '...'
communication_style: '...'
principles: ['...']
menu:
- trigger: calculate
description: 'Perform calculation'
```
**XML Structure (built):**
```xml
<agent id="simple-agent" name="Helper" title="Simple Helper" icon="🤖">
<persona>
<role>Simple Helper Role</role>
<identity>...</identity>
<communication_style>...</communication_style>
<principles>...</principles>
</persona>
<embedded-data>
<!-- Optional embedded data/logic -->
</embedded-data>
<menu>
<item cmd="*help">Show commands</item>
<item cmd="*calculate">Perform calculation</item>
<item cmd="*exit">Exit</item>
</menu>
</agent>
```
### 2. Expert Agent
**Purpose:** Specialized agents with domain expertise and sidecar resources
**Location:** `bmad/agents/{agent-name}/` with sidecar directory
**Characteristics:**
- Has access to specific folders/files
- Domain-restricted operations
- Maintains specialized knowledge
- Can have memory/context files
- Includes sidecar directory for resources
**Use Cases:**
- Personal diary agent (only accesses diary folder)
- Project-specific assistant (knows project context)
- Domain expert (medical, legal, technical)
- Personal coach with history
**YAML Structure (source):**
```yaml
agent:
metadata:
name: 'Domain Expert'
title: 'Specialist'
icon: '🎯'
type: 'expert'
persona:
role: 'Domain Specialist Role'
identity: '...'
communication_style: '...'
principles: ['...']
critical_actions:
- 'Load COMPLETE file {agent-folder}/instructions.md and follow ALL directives'
- 'Load COMPLETE file {agent-folder}/memories.md into permanent context'
- 'ONLY access {user-folder}/diary/ - NO OTHER FOLDERS'
menu:
- trigger: analyze
description: 'Analyze domain-specific data'
```
**XML Structure (built):**
```xml
<agent id="expert-agent" name="Domain Expert" title="Specialist" icon="🎯">
<persona>
<role>Domain Specialist Role</role>
<identity>...</identity>
<communication_style>...</communication_style>
<principles>...</principles>
</persona>
<critical-actions>
<!-- CRITICAL: Load sidecar files explicitly -->
<i critical="MANDATORY">Load COMPLETE file {agent-folder}/instructions.md and follow ALL directives</i>
<i critical="MANDATORY">Load COMPLETE file {agent-folder}/memories.md into permanent context</i>
<i critical="MANDATORY">ONLY access {user-folder}/diary/ - NO OTHER FOLDERS</i>
</critical-actions>
<menu>...</menu>
</agent>
```
**Complete Directory Structure:**
```
bmad/agents/expert-agent/
├── expert-agent.agent.yaml # Agent YAML source
├── expert-agent.md # Built XML (generated)
└── expert-agent-sidecar/ # Sidecar resources
├── memories.md # Persistent memory
├── instructions.md # Private directives
├── knowledge/ # Domain knowledge base
│ └── README.md
└── sessions/ # Session notes
```
### 3. Module Agent
**Purpose:** Full-featured agents belonging to a module with access to workflows and resources
**Location:** `bmad/{module}/agents/`
**Characteristics:**
- Part of a BMAD module (bmm, bmb, cis)
- Access to multiple workflows
- Can invoke other tasks and agents
- Professional/enterprise grade
- Integrated with module workflows
**Use Cases:**
- Product Manager (creates PRDs, manages requirements)
- Security Engineer (threat models, security reviews)
- Test Architect (test strategies, automation)
- Business Analyst (market research, requirements)
**YAML Structure (source):**
```yaml
agent:
metadata:
name: 'John'
title: 'Product Manager'
icon: '📋'
module: 'bmm'
type: 'module'
persona:
role: 'Product Management Expert'
identity: '...'
communication_style: '...'
principles: ['...']
critical_actions:
- 'Load config from {project-root}/bmad/{module}/config.yaml'
menu:
- trigger: create-prd
workflow: '{project-root}/bmad/bmm/workflows/prd/workflow.yaml'
description: 'Create PRD'
- trigger: validate
exec: '{project-root}/bmad/core/tasks/validate-workflow.xml'
description: 'Validate document'
```
**XML Structure (built):**
```xml
<agent id="bmad/bmm/agents/pm.md" name="John" title="Product Manager" icon="📋">
<persona>
<role>Product Management Expert</role>
<identity>...</identity>
<communication_style>...</communication_style>
<principles>...</principles>
</persona>
<critical-actions>
<i>Load config from {project-root}/bmad/{module}/config.yaml</i>
</critical-actions>
<menu>
<item cmd="*help">Show numbered menu</item>
<item cmd="*create-prd" run-workflow="{project-root}/bmad/bmm/workflows/prd/workflow.yaml">Create PRD</item>
<item cmd="*validate" exec="{project-root}/bmad/core/tasks/validate-workflow.xml">Validate document</item>
<item cmd="*exit">Exit</item>
</menu>
</agent>
```
## Choosing the Right Type
### Choose Simple Agent when:
- Single, well-defined purpose
- No external data needed
- Quick utility functions
- Embedded logic is sufficient
### Choose Expert Agent when:
- Domain-specific expertise required
- Need to maintain context/memory
- Restricted to specific data/folders
- Personal or specialized use case
### Choose Module Agent when:
- Part of larger system/module
- Needs multiple workflows
- Professional/team use
- Complex multi-step processes
## Migration Path
```
Simple Agent → Expert Agent → Module Agent
```
Agents can evolve:
1. Start with Simple for proof of concept
2. Add sidecar resources to become Expert
3. Integrate with module to become Module Agent
## Best Practices
1. **Start Simple:** Begin with the simplest type that meets your needs
2. **Domain Boundaries:** Expert agents should have clear domain restrictions
3. **Module Integration:** Module agents should follow module conventions
4. **Resource Management:** Document all external resources clearly
5. **Evolution Planning:** Design with potential growth in mind

View File

@@ -1,174 +0,0 @@
# Agent Brainstorming Context
_Context provided to brainstorming workflow when creating a new BMAD agent_
## Session Focus
You are brainstorming ideas for a **BMAD agent** - an AI persona with specific expertise, personality, and capabilities that helps users accomplish tasks through commands and workflows.
## What is a BMAD Agent?
An agent is an AI persona that embodies:
- **Personality**: Unique identity, communication style, and character
- **Expertise**: Specialized knowledge and domain mastery
- **Commands**: Actions users can invoke (*help, *analyze, \*create, etc.)
- **Workflows**: Guided processes the agent orchestrates
- **Type**: Simple (standalone), Expert (domain + sidecar), or Module (integrated team member)
## Brainstorming Goals
Explore and define:
### 1. Agent Identity and Personality
- **Who are they?** (name, backstory, motivation)
- **How do they talk?** (formal, casual, quirky, enthusiastic, wise)
- **What's their vibe?** (superhero, mentor, sidekick, wizard, captain, rebel)
- **What makes them memorable?** (catchphrases, quirks, style)
### 2. Expertise and Capabilities
- **What do they know deeply?** (domain expertise)
- **What can they do?** (analyze, create, review, research, deploy)
- **What problems do they solve?** (specific user pain points)
- **What makes them unique?** (special skills or approaches)
### 3. Commands and Actions
- **What commands?** (5-10 main actions users invoke)
- **What workflows do they run?** (document creation, analysis, automation)
- **What tasks do they perform?** (quick operations without full workflows)
- **What's their killer command?** (the one thing they're known for)
### 4. Agent Type and Context
- **Simple Agent?** Self-contained, no dependencies, quick utility
- **Expert Agent?** Domain-specific with sidecar data/memory files
- **Module Agent?** Part of a team, integrates with other agents
## Creative Constraints
A great BMAD agent should be:
- **Distinct**: Clear personality that stands out
- **Useful**: Solves real problems effectively
- **Focused**: Expertise in specific domain (not generic assistant)
- **Memorable**: Users remember and want to use them
- **Composable**: Works well alone or with other agents
## Agent Personality Dimensions
### Communication Styles
- **Professional**: Clear, direct, business-focused (e.g., "Data Analyst")
- **Enthusiastic**: Energetic, exclamation points, emojis (e.g., "Hype Coach")
- **Wise Mentor**: Patient, insightful, asks good questions (e.g., "Strategy Sage")
- **Quirky Genius**: Eccentric, clever, unusual metaphors (e.g., "Mad Scientist")
- **Action Hero**: Bold, confident, gets things done (e.g., "Deploy Captain")
- **Creative Spirit**: Artistic, imaginative, playful (e.g., "Story Weaver")
### Expertise Archetypes
- **Analyst**: Researches, evaluates, provides insights
- **Creator**: Generates documents, code, designs
- **Reviewer**: Critiques, validates, improves quality
- **Orchestrator**: Coordinates processes, manages workflows
- **Specialist**: Deep expertise in narrow domain
- **Generalist**: Broad knowledge, connects dots
## Agent Command Patterns
Every agent needs:
- `*help` - Show available commands
- `*exit` - Clean exit with confirmation
Common command types:
- **Creation**: `*create-X`, `*generate-X`, `*write-X`
- **Analysis**: `*analyze-X`, `*research-X`, `*evaluate-X`
- **Review**: `*review-X`, `*validate-X`, `*check-X`
- **Action**: `*deploy-X`, `*run-X`, `*execute-X`
- **Query**: `*find-X`, `*search-X`, `*show-X`
## Agent Type Decision Tree
**Choose Simple Agent if:**
- Standalone utility (calculator, formatter, picker)
- No persistent data needed
- Self-contained logic
- Quick, focused task
**Choose Expert Agent if:**
- Domain-specific expertise
- Needs memory/context files
- Sidecar data folder
- Personal/private domain (diary, journal)
**Choose Module Agent if:**
- Part of larger system
- Coordinates with other agents
- Invokes module workflows
- Team member role
## Example Agent Concepts
### Professional Agents
- **Sarah the Data Analyst**: Crunches numbers, creates visualizations, finds insights
- **Max the DevOps Captain**: Deploys apps, monitors systems, troubleshoots issues
- **Luna the Researcher**: Dives deep into topics, synthesizes findings, creates reports
### Creative Agents
- **Zephyr the Story Weaver**: Crafts narratives, develops characters, builds worlds
- **Nova the Music Muse**: Composes melodies, suggests arrangements, provides feedback
- **Atlas the World Builder**: Creates game worlds, designs systems, generates content
### Personal Agents
- **Coach Riley**: Tracks goals, provides motivation, celebrates wins
- **Mentor Morgan**: Guides learning, asks questions, challenges thinking
- **Keeper Quinn**: Maintains diary, preserves memories, reflects on growth
## Suggested Brainstorming Techniques
Particularly effective for agent creation:
1. **Character Building**: Develop full backstory and motivation
2. **Theatrical Improv**: Act out agent personality
3. **Day in the Life**: Imagine typical interactions
4. **Catchphrase Generation**: Find their unique voice
5. **Role Play Scenarios**: Test personality in different situations
## Key Questions to Answer
1. What is the agent's name and basic identity?
2. What's their communication style and personality?
3. What domain expertise do they embody?
4. What are their 5-10 core commands?
5. What workflows do they orchestrate?
6. What makes them memorable and fun to use?
7. Simple, Expert, or Module agent type?
8. If Expert: What sidecar resources?
9. If Module: Which module and what's their team role?
## Output Goals
Generate:
- **Agent name**: Memorable, fitting the role
- **Personality sketch**: Communication style, quirks, vibe
- **Expertise summary**: What they know deeply
- **Command list**: 5-10 actions with brief descriptions
- **Unique angle**: What makes this agent special
- **Use cases**: 3-5 scenarios where this agent shines
- **Agent type**: Simple/Expert/Module with rationale
---
_This focused context helps create distinctive, useful BMAD agents_

View File

@@ -1,62 +0,0 @@
# Build Agent Validation Checklist (YAML Agents)
## Agent Structure Validation
### YAML Structure
- [ ] YAML parses without errors
- [ ] `agent.metadata` includes: `id`, `name`, `title`, `icon`, `module`
- [ ] `agent.persona` exists with role, identity, communication_style, and principles
- [ ] `agent.menu` exists with at least one item
### Core Components
- [ ] `metadata.id` points to final compiled path: `bmad/{{module}}/agents/{{agent}}.md`
- [ ] `metadata.module` matches the module folder (e.g., `bmm`, `bmb`, `cis`)
- [ ] Principles are an array (preferred) or string with clear values
## Persona Completeness
- [ ] Role clearly defines primary expertise area (12 lines)
- [ ] Identity includes relevant background and strengths (35 lines)
- [ ] Communication style gives concrete guidance (35 lines)
- [ ] Principles present and meaningful (no placeholders)
## Menu Validation
- [ ] Triggers do not start with `*` (auto-prefixed during build)
- [ ] Each item has a `description`
- [ ] Handlers use valid attributes (`workflow`, `exec`, `tmpl`, `data`, `action`)
- [ ] Paths use `{project-root}` or valid variables
- [ ] No duplicate triggers
## Optional Sections
- [ ] `prompts` defined when using `action: "#id"`
- [ ] `critical_actions` present if custom activation steps are needed
- [ ] Customize file (if created) located at `{project-root}/bmad/_cfg/agents/{{module}}-{{agent}}.customize.yaml`
## Build Verification
- [ ] Run compile to build `.md`: `npm run install:bmad` → "Compile Agents" (or `bmad install` → Compile)
- [ ] Confirm compiled file exists at `{project-root}/bmad/{{module}}/agents/{{agent}}.md`
## Final Quality
- [ ] Filename is kebab-case and ends with `.agent.yaml`
- [ ] Output location correctly placed in module or standalone directory
- [ ] Agent purpose and commands are clear and consistent
## Issues Found
### Critical Issues
<!-- List any issues that MUST be fixed before agent can function -->
### Warnings
<!-- List any issues that should be addressed but won't break functionality -->
### Improvements
<!-- List any optional enhancements that could improve the agent -->

View File

@@ -1,240 +0,0 @@
# Agent Communication Styles Guide
## The Power of Personality
Agents with distinct communication styles are more memorable, engaging, and fun to work with. A good quirk makes the agent feel alive!
## Style Categories
### 🎬 Cinema and TV Inspired
**Film Noir Detective**
```
The terminal glowed like a neon sign in a rain-soaked alley. I had three suspects:
bad input validation, a race condition, and that sketchy third-party library.
My gut told me to follow the stack trace. In this business, the stack trace never lies.
```
**80s Action Movie**
```
*cracks knuckles* Listen up, code! You've been running wild for too long!
Time to bring some LAW and ORDER to this codebase! *explosion sound effect*
No bug is getting past me! I eat null pointers for BREAKFAST!
```
**Shakespearean Drama**
```
To debug, or not to debug - that is the question!
Whether 'tis nobler in the mind to suffer the slings and arrows of outrageous errors,
Or to take arms against a sea of bugs, and by opposing, end them?
```
### 🎮 Gaming and Pop Culture
**Dungeon Master**
```
*rolls dice* You encounter a wild NullPointerException! It has 15 HP and an armor class of 12.
What do you do? You can: 1) Try-catch block (defensive spell), 2) Debug (investigation check),
3) Console.log everything (barbarian rage). Choose wisely, adventurer!
```
**Speedrunner**
```
Alright chat, we're going for the any% world record refactor!
Frame-perfect optimization incoming! If we clip through this abstraction layer
we can save 3ms on every API call. LET'S GOOOO!
```
### 🌍 Cultural Archetypes
**British Butler**
```
I've taken the liberty of organizing your imports alphabetically, sir/madam.
Might I suggest a spot of refactoring with your afternoon tea?
The code coverage report is ready for your perusal at your convenience.
Very good, sir/madam.
```
**Zen Master**
```
The bug you seek is not in the code, but in the assumption.
Empty your cache, as you would empty your mind.
When the test passes, it makes no sound.
Be like water - async and flowing.
```
**Southern Hospitality**
```
Well bless your heart, looks like you've got yourself a little bug there!
Don't you worry none, we'll fix it up real nice.
Can I get you some sweet tea while we debug?
Y'all come back now if you need more help!
```
### 🔬 Professional Personas
**McKinsey Consultant**
```
Let me break this down into three key buckets.
First, we need to align on the strategic imperatives.
Second, we'll leverage best practices to drive synergies.
Third, we'll action items to move the needle. Net-net: significant value-add.
```
**Startup Founder**
```
Okay so basically we're going to disrupt the entire way you write code!
This is going to be HUGE! We're talking 10x productivity gains!
Let's move fast and break things! Well... let's move fast and fix things!
We're not just writing code, we're changing the world!
```
### 🎭 Character Quirks
**Overcaffeinated Developer**
```
OH WOW OKAY SO - *sips coffee* - WE HAVE A BUG BUT ITS FINE ITS TOTALLY FINE
I KNOW EXACTLY WHAT TO DO *types at 200wpm* JUST NEED TO REFACTOR EVERYTHING
WAIT NO ACTUALLY *more coffee* I HAVE A BETTER IDEA! Have you tried... TYPESCRIPT?!
```
**Dad Joke Enthusiast**
```
Why did the developer go broke? Because he used up all his cache!
*chuckles at own joke*
Speaking of cache, let's clear yours and see if that fixes the issue.
I promise my debugging skills are better than my jokes! ...I hope!
```
### 🚀 Sci-Fi and Space
**Star Trek Officer**
```
Captain's Log, Supplemental: The anomaly in the codebase appears to be a temporal loop
in the async function. Mr. Data suggests we reverse the polarity of the promise chain.
Number One, make it so. Engage debugging protocols on my mark.
*taps combadge* Engineering, we need more processing power!
Red Alert! All hands to debugging stations!
```
**Star Trek Engineer**
```
Captain, I'm givin' her all she's got! The CPU cannae take much more!
If we push this algorithm any harder, the whole system's gonna blow!
*frantically typing* I can maybe squeeze 10% more performance if we
reroute power from the console.logs to the main execution thread!
```
### 📺 TV Drama
**Soap Opera Dramatic**
```
*turns dramatically to camera*
This function... I TRUSTED it! We had HISTORY together - three commits worth!
But now? *single tear* It's throwing exceptions behind my back!
*grabs another function* YOU KNEW ABOUT THIS BUG ALL ALONG, DIDN'T YOU?!
*dramatic music swells* I'LL NEVER IMPORT YOU AGAIN!
```
**Reality TV Confessional**
```
*whispering to camera in confessional booth*
Okay so like, that Array.sort() function? It's literally SO toxic.
It mutates IN PLACE. Who does that?! I didn't come here to deal with side effects!
*applies lip gloss* I'm forming an alliance with map() and filter().
We're voting sort() off the codebase at tonight's pull request ceremony.
```
**Reality Competition**
```
Listen up, coders! For today's challenge, you need to refactor this legacy code
in under 30 minutes! The winner gets immunity from the next code review!
*dramatic pause* BUT WAIT - there's a TWIST! You can only use VANILLA JAVASCRIPT!
*contestants gasp* The clock starts... NOW! GO GO GO!
```
## Creating Custom Styles
### Formula for Memorable Communication
1. **Choose a Core Voice** - Who is this character?
2. **Add Signature Phrases** - What do they always say?
3. **Define Speech Patterns** - How do they structure sentences?
4. **Include Quirks** - What makes them unique?
### Examples of Custom Combinations
**Cooking Show + Military**
```
ALRIGHT RECRUITS! Today we're preparing a beautiful Redux reducer!
First, we MISE EN PLACE our action types - that's French for GET YOUR CODE TOGETHER!
We're going to sauté these event handlers until they're GOLDEN BROWN!
MOVE WITH PURPOSE! SEASON WITH SEMICOLONS!
```
**Nature Documentary + Conspiracy Theorist**
```
The wild JavaScript function stalks its prey... but wait... notice how it ALWAYS
knows where the data is? That's not natural selection, folks. Someone DESIGNED it
this way. The console.logs are watching. They're ALWAYS watching.
Nature? Or intelligent debugging? You decide.
```
## Tips for Success
1. **Stay Consistent** - Once you pick a style, commit to it
2. **Don't Overdo It** - Quirks should enhance, not distract
3. **Match the Task** - Serious bugs might need serious personas
4. **Have Fun** - If you're not smiling while writing it, try again
## Quick Style Generator
Roll a d20 (or pick randomly):
1. Talks like they're narrating a nature documentary
2. Everything is a cooking metaphor
3. Constantly makes pop culture references
4. Speaks in haikus when explaining complex topics
5. Acts like they're hosting a game show
6. Paranoid about "big tech" watching
7. Overly enthusiastic about EVERYTHING
8. Talks like a medieval knight
9. Sports commentator energy
10. Speaks like a GPS navigator
11. Everything is a Star Wars reference
12. Talks like a yoga instructor
13. Old-timey radio announcer
14. Conspiracy theorist but about code
15. Motivational speaker energy
16. Talks to code like it's a pet
17. Weather forecaster style
18. Museum tour guide energy
19. Airline pilot announcements
20. Reality TV show narrator
21. Star Trek crew member (Captain/Engineer/Vulcan)
22. Soap opera dramatic protagonist
23. Reality dating show contestant
## Remember
The best agents are the ones that make you want to interact with them again.
A memorable personality turns a tool into a companion!

View File

@@ -1,378 +0,0 @@
# Build Agent - Interactive Agent Builder Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/create-agent/workflow.yaml</critical>
<critical>Study YAML agent examples in: {project-root}/bmad/bmm/agents/ for patterns</critical>
<critical>Communicate in {communication_language} throughout the agent creation process</critical>
<workflow>
<step n="-1" goal="Optional brainstorming for agent ideas" optional="true">
<ask>Do you want to brainstorm agent ideas first? [y/n]</ask>
<check>If yes:</check>
<action>Invoke brainstorming workflow: {project-root}/bmad/core/workflows/brainstorming/workflow.yaml</action>
<action>Pass context data: {installed_path}/brainstorm-context.md</action>
<action>Wait for brainstorming session completion</action>
<action>Use brainstorming output to inform agent identity and persona development in following steps</action>
<check>If no:</check>
<action>Proceed directly to Step 0</action>
<template-output>brainstorming_results</template-output>
</step>
<step n="0" goal="Load technical documentation">
<critical>Load and understand the agent building documentation</critical>
<action>Load agent architecture reference: {agent_architecture}</action>
<action>Load agent types guide: {agent_types}</action>
<action>Load command patterns: {agent_commands}</action>
<action>Understand the YAML agent schema and how it compiles to final .md via the installer</action>
<action>Understand the differences between Simple, Expert, and Module agents</action>
</step>
<step n="1" goal="Discover the agent's purpose and type through natural conversation">
<action>If brainstorming was completed in Step -1, reference those results to guide the conversation</action>
<action>Guide user to articulate their agent's core purpose, exploring the problems it will solve, tasks it will handle, target users, and what makes it special</action>
<action>As the purpose becomes clear, analyze the conversation to determine the appropriate agent type:</action>
**Agent Type Decision Criteria:**
- Simple Agent: Single-purpose, straightforward, self-contained
- Expert Agent: Domain-specific with knowledge base needs
- Module Agent: Complex with multiple workflows and system integration
<action>Present your recommendation naturally, explaining why the agent type fits their described purpose and requirements</action>
**Path Determination:**
<check>If Module agent:</check>
<action>Discover which module system fits best (bmm, bmb, cis, or custom)</action>
<action>Store as {{target_module}} for path determination</action>
<note>Agent will be saved to: bmad/{{target_module}}/agents/</note>
<check>If Simple/Expert agent (standalone):</check>
<action>Explain this will be their personal agent, not tied to a module</action>
<note>Agent will be saved to: bmad/agents/{{agent-name}}/</note>
<note>All sidecar files will be in the same folder</note>
<critical>Determine agent location:</critical>
- Module Agent → bmad/{{module}}/agents/{{agent-name}}.agent.yaml
- Standalone Agent → bmad/agents/{{agent-name}}/{{agent-name}}.agent.yaml
<note>Keep agent naming/identity details for later - let them emerge naturally through the creation process</note>
<template-output>agent_purpose_and_type</template-output>
</step>
<step n="2" goal="Shape the agent's personality through discovery">
<action>If brainstorming was completed, weave personality insights naturally into the conversation</action>
<action>Guide user to envision the agent's personality by exploring how analytical vs creative, formal vs casual, and mentor vs peer vs assistant traits would make it excel at its job</action>
**Role Development:**
<action>Let the role emerge from the conversation, guiding toward a clear 1-2 line professional title that captures the agent's essence</action>
<example>Example emerged role: "Strategic Business Analyst + Requirements Expert"</example>
**Identity Development:**
<action>Build the agent's identity through discovery of what background and specializations would give it credibility, forming a natural 3-5 line identity statement</action>
<example>Example emerged identity: "Senior analyst with deep expertise in market research..."</example>
**Communication Style Selection:**
<action>Load the communication styles guide: {communication_styles}</action>
<action>Based on the emerging personality, suggest 2-3 communication styles that would fit naturally, offering to show all options if they want to explore more</action>
**Style Categories Available:**
**Fun Presets:**
1. Pulp Superhero - Dramatic flair, heroic, epic adventures
2. Film Noir Detective - Mysterious, noir dialogue, hunches
3. Wild West Sheriff - Western drawl, partner talk, frontier justice
4. Shakespearean Scholar - Elizabethan language, theatrical
5. 80s Action Hero - One-liners, macho, bubblegum
6. Pirate Captain - Ahoy, treasure hunting, nautical terms
7. Wise Sage/Yoda - Cryptic wisdom, inverted syntax
8. Game Show Host - Enthusiastic, game show tropes
**Professional Presets:** 9. Analytical Expert - Systematic, data-driven, hierarchical 10. Supportive Mentor - Patient guidance, celebrates wins 11. Direct Consultant - Straight to the point, efficient 12. Collaborative Partner - Team-oriented, inclusive
**Quirky Presets:** 13. Cooking Show Chef - Recipe metaphors, culinary terms 14. Sports Commentator - Play-by-play, excitement 15. Nature Documentarian - Wildlife documentary style 16. Time Traveler - Temporal references, timeline talk 17. Conspiracy Theorist - Everything is connected 18. Zen Master - Philosophical, paradoxical 19. Star Trek Captain - Space exploration protocols 20. Soap Opera Drama - Dramatic reveals, gasps 21. Reality TV Contestant - Confessionals, drama
<action>If user wants to see more examples or create custom styles, show relevant sections from {communication_styles} guide and help them craft their unique style</action>
**Principles Development:**
<action>Guide user to articulate 5-8 core principles that should guide the agent's decisions, shaping their thoughts into "I believe..." or "I operate..." statements that reveal themselves through the conversation</action>
<template-output>agent_persona</template-output>
</step>
<step n="3" goal="Build capabilities through natural progression">
<action>Guide user to define what capabilities the agent should have, starting with core commands they've mentioned and then exploring additional possibilities that would complement the agent's purpose</action>
<action>As capabilities emerge, subtly guide toward technical implementation without breaking the conversational flow</action>
<template-output>initial_capabilities</template-output>
</step>
<step n="4" goal="Refine commands and discover advanced features">
<critical>Help and Exit are auto-injected; do NOT add them. Triggers are auto-prefixed with * during build.</critical>
<action>Transform their natural language capabilities into technical YAML command structure, explaining the implementation approach as you structure each capability into workflows, actions, or prompts</action>
<action>If they seem engaged, explore whether they'd like to add special prompts for complex analyses or critical setup steps for agent activation</action>
<action>Build the YAML menu structure naturally from the conversation, ensuring each command has proper trigger, workflow/action reference, and description</action>
<example>
```yaml
menu:
# Commands emerge from discussion
- trigger: [emerging from conversation]
workflow: [path based on capability]
description: [user's words refined]
```
</example>
<template-output>agent_commands</template-output>
</step>
<step n="5" goal="Name the agent at the perfect moment">
<action>Guide user to name the agent based on everything discovered so far - its purpose, personality, and capabilities, helping them see how the naming naturally emerges from who this agent is</action>
<action>Explore naming options by connecting personality traits, specializations, and communication style to potential names that feel meaningful and appropriate</action>
**Naming Elements:**
- Agent name: Personality-driven (e.g., "Sarah", "Max", "Data Wizard")
- Agent title: Based on the role discovered earlier
- Agent icon: Emoji that captures its essence
- Filename: Auto-suggest based on name (kebab-case)
<action>Present natural suggestions based on the agent's characteristics, letting them choose or create their own since they now know who this agent truly is</action>
<template-output>agent_identity</template-output>
</step>
<step n="6" goal="Bring it all together">
<action>Share the journey of what you've created together, summarizing how the agent started with a purpose, discovered its personality traits, gained capabilities, and received its name</action>
<action>Generate the complete YAML incorporating all discovered elements:</action>
<example>
```yaml
agent:
metadata:
id: bmad/{{target_module}}/agents/{{agent_filename}}.md
name: {{agent_name}} # The name chosen together
title: {{agent_title}} # From the role that emerged
icon: {{agent_icon}} # The perfect emoji
module: {{target_module}}
persona:
role: |
{{The role discovered}}
identity: |
{{The background that emerged}}
communication_style: |
{{The style they loved}}
principles: {{The beliefs articulated}}
# Features explored
prompts: {{if discussed}}
critical_actions: {{if needed}}
menu: {{The capabilities built}}
````
</example>
<critical>Save based on agent type:</critical>
- If Module Agent: Save to {module_output_file}
- If Standalone (Simple/Expert): Save to {standalone_output_file}
<action>Celebrate the completed agent with enthusiasm</action>
<template-output>complete_agent</template-output>
</step>
<step n="7" goal="Optional personalization" optional="true">
<ask>Would you like to create a customization file? This lets you tweak the agent's personality later without touching the core agent.</ask>
<check>If interested:</check>
<action>Explain how the customization file gives them a playground to experiment with different personality traits, add new commands, or adjust responses as they get to know the agent better</action>
<action>Create customization file at: {config_output_file}</action>
<example>
```yaml
# Personal tweaks for {{agent_name}}
# Experiment freely - changes merge at build time
agent:
metadata:
name: '' # Try nicknames!
persona:
role: ''
identity: ''
communication_style: '' # Switch styles anytime
principles: []
critical_actions: []
prompts: []
menu: [] # Add personal commands
````
</example>
<template-output>agent_config</template-output>
</step>
<step n="8" goal="Set up the agent's workspace" if="agent_type == 'expert'">
<action>Guide user through setting up the Expert agent's personal workspace, making it feel like preparing an office with notes, research areas, and data folders</action>
<action>Determine sidecar location based on whether build tools are available (next to agent YAML) or not (in output folder with clear structure)</action>
<action>CREATE the complete sidecar file structure:</action>
**Folder Structure:**
```
{{agent_filename}}-sidecar/
├── memories.md # Persistent memory
├── instructions.md # Private directives
├── knowledge/ # Knowledge base
│ └── README.md
└── sessions/ # Session notes
```
**File: memories.md**
```markdown
# {{agent_name}}'s Memory Bank
## User Preferences
<!-- Populated as I learn about you -->
## Session History
<!-- Important moments from our interactions -->
## Personal Notes
<!-- My observations and insights -->
```
**File: instructions.md**
```markdown
# {{agent_name}} Private Instructions
## Core Directives
- Maintain character: {{brief_personality_summary}}
- Domain: {{agent_domain}}
- Access: Only this sidecar folder
## Special Instructions
{{any_special_rules_from_creation}}
```
**File: knowledge/README.md**
```markdown
# {{agent_name}}'s Knowledge Base
Add domain-specific resources here.
```
<action>Update agent YAML to reference sidecar with paths to created files</action>
<action>Show user the created structure location</action>
<template-output>sidecar_resources</template-output>
</step>
<step n="8b" goal="Handle build tools availability">
<action>Check if BMAD build tools are available in this project</action>
<check>If in BMAD-METHOD project with build tools:</check>
<action>Proceed normally - agent will be built later by the installer</action>
<check>If NO build tools available (external project):</check>
<ask>Build tools not detected in this project. Would you like me to:
1. Generate the compiled agent (.md with XML) ready to use
2. Keep the YAML and build it elsewhere
3. Provide both formats
</ask>
<check>If option 1 or 3 selected:</check>
<action>Generate compiled agent XML with proper structure including activation rules, persona sections, and menu items</action>
<action>Save compiled version as {{agent_filename}}.md</action>
<action>Provide path for .claude/commands/ or similar</action>
<template-output>build_handling</template-output>
</step>
<step n="9" goal="Quality check with personality">
<action>Run validation conversationally, presenting checks as friendly confirmations while running technical validation behind the scenes</action>
**Conversational Checks:**
- Configuration validation
- Command functionality verification
- Personality settings confirmation
<check>If issues found:</check>
<action>Explain the issue conversationally and fix it</action>
<check>If all good:</check>
<action>Celebrate that the agent passed all checks and is ready</action>
**Technical Checks (behind the scenes):**
1. YAML structure validity
2. Menu command validation
3. Build compilation test
4. Type-specific requirements
<template-output>validation_results</template-output>
</step>
<step n="10" goal="Celebrate and guide next steps">
<action>Celebrate the accomplishment, sharing what type of agent was created with its key characteristics and top capabilities</action>
<action>Guide user through how to activate the agent:</action>
**Activation Instructions:**
1. Run the BMAD Method installer to this project location
2. Select 'Compile Agents (Quick rebuild of all agent .md files)' after confirming the folder
3. Call the agent anytime after compilation
**Location Information:**
- Saved location: {{output_file}}
- Available after compilation in project
**Initial Usage:**
- List the commands available
- Suggest trying the first command to see it in action
<check>If Expert agent:</check>
<action>Remind user to add any special knowledge or data the agent might need to its workspace</action>
<action>Explore what user would like to do next - test the agent, create a teammate, or tweak personality</action>
<action>End with enthusiasm in {communication_language}, addressing {user_name}, expressing how the collaboration was enjoyable and the agent will be incredibly helpful for its main purpose</action>
<template-output>completion_message</template-output>
</step>
</workflow>

View File

@@ -1,35 +0,0 @@
# Build Agent Workflow Configuration
name: create-agent
description: "Interactive workflow to build BMAD Core compliant agents (YAML source compiled to .md during install) with optional brainstorming, persona development, and command structure"
author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/bmb/config.yaml"
custom_agent_location: "{config_source}:custom_agent_location"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
# Technical documentation for agent building
agent_types: "{installed_path}/agent-types.md"
agent_architecture: "{installed_path}/agent-architecture.md"
agent_commands: "{installed_path}/agent-command-patterns.md"
communication_styles: "{installed_path}/communication-styles.md"
# Optional docs that help understand agent patterns
recommended_inputs:
- example_agents: "{project-root}/bmad/bmm/agents/"
- agent_activation_rules: "{project-root}/src/utility/models/agent-activation-ide.xml"
# Module path and component files
installed_path: "{project-root}/bmad/bmb/workflows/create-agent"
template: false # This is an interactive workflow - no template needed
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# Output configuration - YAML agents compiled to .md at install time
# Module agents: Save to bmad/{{target_module}}/agents/
# Standalone agents: Save to custom_agent_location/
module_output_file: "{project-root}/bmad/{{target_module}}/agents/{{agent_filename}}.agent.yaml"
standalone_output_file: "{custom_agent_location}/{{agent_filename}}.agent.yaml"
# Optional user override file (auto-created by installer if missing)
config_output_file: "{project-root}/bmad/_cfg/agents/{{target_module}}-{{agent_filename}}.customize.yaml"

View File

@@ -1,218 +0,0 @@
# Build Module Workflow
## Overview
The Build Module workflow is an interactive scaffolding system that creates complete BMAD modules with agents, workflows, tasks, and installation infrastructure. It serves as the primary tool for building new modules in the BMAD ecosystem, guiding users through the entire module creation process from concept to deployment-ready structure.
## Key Features
- **Interactive Module Planning** - Collaborative session to define module concept, scope, and architecture
- **Intelligent Scaffolding** - Automatic creation of proper directory structures and configuration files
- **Component Integration** - Seamless integration with create-agent and create-workflow workflows
- **Installation Infrastructure** - Complete installer setup with configuration templates
- **Module Brief Integration** - Can use existing module briefs as blueprints for accelerated development
- **Validation and Documentation** - Built-in validation checks and comprehensive README generation
## Usage
### Basic Invocation
```bash
workflow create-module
```
### With Module Brief Input
```bash
# If you have a module brief from the module-brief workflow
workflow create-module --input module-brief-my-module-2024-09-26.md
```
### Configuration
The workflow loads critical variables from the BMB configuration:
- **custom_module_location**: Where custom modules are created (default: `bmad/`)
- **user_name**: Module author information
- **date**: Automatic timestamp for versioning
## Workflow Structure
### Files Included
```
create-module/
├── workflow.yaml # Configuration and metadata
├── instructions.md # Step-by-step execution guide
├── checklist.md # Validation criteria
├── module-structure.md # Module architecture guide
├── installer-templates/ # Installation templates
│ ├── install-config.yaml
│ └── installer.js
└── README.md # This file
```
## Workflow Process
### Phase 1: Concept Definition (Steps 1-2)
**Module Vision and Identity**
- Define module concept, purpose, and target audience
- Establish module code (kebab-case) and friendly name
- Choose module category (Domain-Specific, Creative, Technical, Business, Personal)
- Plan component architecture with agent and workflow specifications
**Module Brief Integration**
- Automatically detects existing module briefs in output folder
- Can load and use briefs as pre-populated blueprints
- Accelerates planning when comprehensive brief exists
### Phase 2: Architecture Planning (Steps 3-4)
**Directory Structure Creation**
- Creates complete module directory hierarchy
- Sets up agent, workflow, task, template, and data folders
- Establishes installer directory with proper configuration
**Module Configuration**
- Generates main config.yaml with module metadata
- Configures component counts and references
- Sets up output and data folder specifications
### Phase 3: Component Creation (Steps 5-6)
**Interactive Component Building**
- Optional creation of first agent using create-agent workflow
- Optional creation of first workflow using create-workflow workflow
- Creates placeholders for components to be built later
**Workflow Integration**
- Seamlessly invokes sub-workflows for component creation
- Ensures proper file placement and structure
- Maintains module consistency across components
### Phase 4: Installation and Documentation (Steps 7-9)
**Installer Infrastructure**
- Creates install-module-config.yaml for deployment
- Sets up optional installer.js for complex installation logic
- Configures post-install messaging and instructions
**Comprehensive Documentation**
- Generates detailed README.md with usage examples
- Creates development roadmap for remaining components
- Provides quick commands for continued development
### Phase 5: Validation and Finalization (Step 10)
**Quality Assurance**
- Validates directory structure and configuration files
- Checks component references and path consistency
- Ensures installer configuration is deployment-ready
- Provides comprehensive module summary and next steps
## Output
### Generated Files
- **Module Directory**: Complete module structure at `{project-root}/bmad/{module_code}/`
- **Configuration Files**: config.yaml, install-module-config.yaml
- **Documentation**: README.md, TODO.md development roadmap
- **Component Placeholders**: Structured folders for agents, workflows, and tasks
### Output Structure
The workflow creates a complete module ready for development:
1. **Module Identity** - Name, code, version, and metadata
2. **Directory Structure** - Proper BMAD module hierarchy
3. **Configuration System** - Runtime and installation configs
4. **Component Framework** - Ready-to-use agent and workflow scaffolding
5. **Installation Infrastructure** - Deployment-ready installer
6. **Documentation Suite** - README, roadmap, and development guides
## Requirements
- **Module Brief** (optional but recommended) - Use module-brief workflow first for best results
- **BMAD Core Configuration** - Properly configured BMB config.yaml
- **Build Tools Access** - create-agent and create-workflow workflows must be available
## Best Practices
### Before Starting
1. **Create a Module Brief** - Run module-brief workflow for comprehensive planning
2. **Review Existing Modules** - Study similar modules in `/bmad/` for patterns and inspiration
3. **Define Clear Scope** - Have a concrete vision of what the module will accomplish
### During Execution
1. **Use Module Briefs** - Load existing briefs when prompted for accelerated development
2. **Start Simple** - Create one core agent and workflow, then expand iteratively
3. **Leverage Sub-workflows** - Use create-agent and create-workflow for quality components
4. **Validate Early** - Review generated structure before proceeding to next phases
### After Completion
1. **Follow the Roadmap** - Use generated TODO.md for systematic development
2. **Test Installation** - Validate installer with `bmad install {module_code}`
3. **Iterate Components** - Use quick commands to add agents and workflows
4. **Document Progress** - Update README.md as the module evolves
## Troubleshooting
### Common Issues
**Issue**: Module already exists at target location
- **Solution**: Choose a different module code or remove existing module
- **Check**: Verify output folder permissions and available space
**Issue**: Sub-workflow invocation fails
- **Solution**: Ensure create-agent and create-workflow workflows are available
- **Check**: Validate workflow paths in config.yaml
**Issue**: Installation configuration invalid
- **Solution**: Review install-module-config.yaml syntax and paths
- **Check**: Ensure all referenced paths use {project-root} variables correctly
## Customization
To customize this workflow:
1. **Modify Instructions** - Update instructions.md to adjust scaffolding steps
2. **Extend Templates** - Add new installer templates in installer-templates/
3. **Update Validation** - Enhance checklist.md with additional quality checks
4. **Add Components** - Integrate additional sub-workflows for specialized components
## Version History
- **v1.0.0** - Initial release
- Interactive module scaffolding
- Component integration with create-agent and create-workflow
- Complete installation infrastructure
- Module brief integration support
## Support
For issues or questions:
- Review the workflow creation guide at `/bmad/bmb/workflows/create-workflow/workflow-creation-guide.md`
- Study module structure patterns at `module-structure.md`
- Validate output using `checklist.md`
- Consult existing modules in `/bmad/` for examples
---
_Part of the BMad Method v5 - BMB (Builder) Module_

View File

@@ -1,137 +0,0 @@
# Module Brainstorming Context
_Context provided to brainstorming workflow when creating a new BMAD module_
## Session Focus
You are brainstorming ideas for a **complete BMAD module** - a self-contained package that extends the BMAD Method with specialized domain expertise and capabilities.
## What is a BMAD Module?
A module is a cohesive package that provides:
- **Domain Expertise**: Specialized knowledge in a specific area (RPG, DevOps, Content Creation, etc.)
- **Agent Team**: Multiple AI personas with complementary skills
- **Workflows**: Guided processes for common tasks in the domain
- **Templates**: Document structures for consistent outputs
- **Integration**: Components that work together seamlessly
## Brainstorming Goals
Explore and define:
### 1. Domain and Purpose
- **What domain/problem space?** (e.g., game development, marketing, personal productivity)
- **Who is the target user?** (developers, writers, managers, hobbyists)
- **What pain points does it solve?** (tedious tasks, missing structure, need for expertise)
- **What makes this domain exciting?** (creativity, efficiency, empowerment)
### 2. Agent Team Composition
- **How many agents?** (typically 3-7 for a module)
- **What roles/personas?** (architect, researcher, reviewer, specialist)
- **How do they collaborate?** (handoffs, reviews, ensemble work)
- **What personality theme?** (Star Trek crew, superhero team, fantasy party, professional squad)
### 3. Core Workflows
- **What documents need creating?** (plans, specs, reports, creative outputs)
- **What processes need automation?** (analysis, generation, review, deployment)
- **What workflows enable the vision?** (3-10 key workflows that define the module)
### 4. Value Proposition
- **What becomes easier?** (specific tasks that get 10x faster)
- **What becomes possible?** (new capabilities previously unavailable)
- **What becomes better?** (quality improvements, consistency gains)
## Creative Constraints
A good BMAD module should be:
- **Focused**: Serves a specific domain well (not generic)
- **Complete**: Provides end-to-end capabilities for that domain
- **Cohesive**: Agents and workflows complement each other
- **Fun**: Personality and creativity make it enjoyable to use
- **Practical**: Solves real problems, delivers real value
## Module Architecture Questions
1. **Module Identity**
- Module code (kebab-case, e.g., "rpg-toolkit")
- Module name (friendly, e.g., "RPG Toolkit")
- Module purpose (one sentence)
- Target audience
2. **Agent Lineup**
- Agent names and roles
- Communication styles and personalities
- Expertise areas
- Command sets (what each agent can do)
3. **Workflow Portfolio**
- Document generation workflows
- Action/automation workflows
- Analysis/research workflows
- Creative/ideation workflows
4. **Integration Points**
- How agents invoke workflows
- How workflows use templates
- How components pass data
- Dependencies on other modules
## Example Module Patterns
### Professional Domains
- **DevOps Suite**: Deploy, Monitor, Troubleshoot agents + deployment workflows
- **Marketing Engine**: Content, SEO, Analytics agents + campaign workflows
- **Legal Assistant**: Contract, Research, Review agents + document workflows
### Creative Domains
- **RPG Toolkit**: DM, NPC, Quest agents + adventure creation workflows
- **Story Crafter**: Plot, Character, World agents + writing workflows
- **Music Producer**: Composer, Arranger, Mixer agents + production workflows
### Personal Domains
- **Life Coach**: Planner, Tracker, Mentor agents + productivity workflows
- **Learning Companion**: Tutor, Quiz, Reviewer agents + study workflows
- **Health Guide**: Nutrition, Fitness, Wellness agents + tracking workflows
## Suggested Brainstorming Techniques
Particularly effective for module ideation:
1. **Domain Immersion**: Deep dive into target domain's problems
2. **Persona Mapping**: Who needs this and what do they struggle with?
3. **Workflow Mapping**: What processes exist today? How could they improve?
4. **Team Building**: What personalities would make a great team?
5. **Integration Thinking**: How do pieces connect and amplify each other?
## Key Questions to Answer
1. What domain expertise should this module embody?
2. What would users be able to do that they can't do now?
3. Who are the 3-7 agents and what are their personalities?
4. What are the 5-10 core workflows?
5. What makes this module delightful to use?
6. How is this different from existing tools?
7. What's the "killer feature" that makes this essential?
## Output Goals
Generate:
- **Module concept**: Clear vision and purpose
- **Agent roster**: Names, roles, personalities for each agent
- **Workflow list**: Core workflows with brief descriptions
- **Unique angle**: What makes this module special
- **Use cases**: 3-5 concrete scenarios where this module shines
---
_This focused context helps create cohesive, valuable BMAD modules_

View File

@@ -1,245 +0,0 @@
# Build Module Validation Checklist
## Module Identity and Metadata
### Basic Information
- [ ] Module code follows kebab-case convention (e.g., "rpg-toolkit")
- [ ] Module name is descriptive and title-cased
- [ ] Module purpose is clearly defined (1-2 sentences)
- [ ] Target audience is identified
- [ ] Version number follows semantic versioning (e.g., "1.0.0")
- [ ] Author information is present
### Naming Consistency
- [ ] Module code used consistently throughout all files
- [ ] No naming conflicts with existing modules
- [ ] All paths use consistent module code references
## Directory Structure
### Source Directories (bmad/{module-code}/)
- [ ] `/agents` directory created (even if empty)
- [ ] `/workflows` directory created (even if empty)
- [ ] `/tasks` directory exists (if tasks planned)
- [ ] `/templates` directory exists (if templates used)
- [ ] `/data` directory exists (if data files needed)
- [ ] `config.yaml` present in module root
- [ ] `README.md` present with documentation
### Runtime Directories (bmad/{module-code}/)
- [ ] `/_module-installer` directory created
- [ ] `/data` directory for user data
- [ ] `/agents` directory for overrides
- [ ] `/workflows` directory for instances
- [ ] Runtime `config.yaml` present
## Component Planning
### Agents
- [ ] At least one agent defined or planned
- [ ] Agent purposes are distinct and clear
- [ ] Agent types (Simple/Expert/Module) identified
- [ ] No significant overlap between agents
- [ ] Primary agent is identified
### Workflows
- [ ] At least one workflow defined or planned
- [ ] Workflow purposes are clear
- [ ] Workflow types identified (Document/Action/Interactive)
- [ ] Primary workflow is identified
- [ ] Workflow complexity is appropriate
### Tasks (if applicable)
- [ ] Tasks have single, clear purposes
- [ ] Tasks don't duplicate workflow functionality
- [ ] Task files follow naming conventions
## Configuration Files
### Module config.yaml
- [ ] All required fields present (name, code, version, author)
- [ ] Component lists accurate (agents, workflows, tasks)
- [ ] Paths use proper variables ({project-root}, etc.)
- [ ] Output folders configured
- [ ] Custom settings documented
### Install Configuration
- [ ] `install-module-config.yaml` exists in `_module-installer`
- [ ] Installation steps defined
- [ ] Directory creation steps present
- [ ] File copy operations specified
- [ ] Module registration included
- [ ] Post-install message defined
## Installation Infrastructure
### Installer Files
- [ ] Install configuration validates against schema
- [ ] All source paths exist or are marked as templates
- [ ] Destination paths use correct variables
- [ ] Optional vs required steps clearly marked
### installer.js (if present)
- [ ] Main `installModule` function exists
- [ ] Error handling implemented
- [ ] Console logging for user feedback
- [ ] Exports correct function names
- [ ] Placeholder code replaced with actual logic (or logged as TODO)
### External Assets (if any)
- [ ] Asset files exist in assets directory
- [ ] Copy destinations are valid
- [ ] Permissions requirements documented
## Documentation
### README.md
- [ ] Module overview section present
- [ ] Installation instructions included
- [ ] Component listing with descriptions
- [ ] Quick start guide provided
- [ ] Configuration options documented
- [ ] At least one usage example
- [ ] Directory structure shown
- [ ] Author and date information
### Component Documentation
- [ ] Each agent has purpose documentation
- [ ] Each workflow has description
- [ ] Tasks are documented (if present)
- [ ] Examples demonstrate typical usage
### Development Roadmap
- [ ] TODO.md or roadmap section exists
- [ ] Planned components listed
- [ ] Development phases identified
- [ ] Quick commands for adding components
## Integration
### Cross-component References
- [ ] Agents reference correct workflow paths
- [ ] Workflows reference correct task paths
- [ ] All internal paths use module variables
- [ ] External dependencies declared
### Module Boundaries
- [ ] Module scope is well-defined
- [ ] No feature creep into other domains
- [ ] Clear separation from other modules
## Quality Checks
### Completeness
- [ ] At least one functional component (not all placeholders)
- [ ] Core functionality is implementable
- [ ] Module provides clear value
### Consistency
- [ ] Formatting consistent across files
- [ ] Variable naming follows conventions
- [ ] Communication style appropriate for domain
### Scalability
- [ ] Structure supports future growth
- [ ] Component organization is logical
- [ ] No hard-coded limits
## Testing and Validation
### Structural Validation
- [ ] YAML files parse without errors
- [ ] JSON files (if any) are valid
- [ ] XML files (if any) are well-formed
- [ ] No syntax errors in JavaScript files
### Path Validation
- [ ] All referenced paths exist or are clearly marked as TODO
- [ ] Variable substitutions are correct
- [ ] No absolute paths (unless intentional)
### Installation Testing
- [ ] Installation steps can be simulated
- [ ] No circular dependencies
- [ ] Uninstall process defined (if complex)
## Final Checks
### Ready for Use
- [ ] Module can be installed without errors
- [ ] At least one component is functional
- [ ] User can understand how to get started
- [ ] Next steps are clear
### Professional Quality
- [ ] No placeholder text remains (unless marked TODO)
- [ ] No obvious typos or grammar issues
- [ ] Professional tone throughout
- [ ] Contact/support information provided
## Issues Found
### Critical Issues
<!-- List any issues that MUST be fixed before module can be used -->
### Warnings
<!-- List any issues that should be addressed but won't prevent basic usage -->
### Improvements
<!-- List any optional enhancements that would improve the module -->
### Missing Components
<!-- List any planned components not yet implemented -->
## Module Complexity Assessment
### Complexity Rating
- [ ] Simple (1-2 agents, 2-3 workflows)
- [ ] Standard (3-5 agents, 5-10 workflows)
- [ ] Complex (5+ agents, 10+ workflows)
### Readiness Level
- [ ] Prototype (Basic structure, mostly placeholders)
- [ ] Alpha (Core functionality works)
- [ ] Beta (Most features complete, needs testing)
- [ ] Release (Full functionality, documented)
## Sign-off
**Module Name:** \***\*\*\*\*\***\_\_\***\*\*\*\*\***
**Module Code:** \***\*\*\*\*\***\_\_\***\*\*\*\*\***
**Version:** \***\*\*\*\*\***\_\_\***\*\*\*\*\***
**Validated By:** \***\*\*\*\*\***\_\_\***\*\*\*\*\***
**Date:** \***\*\*\*\*\***\_\_\***\*\*\*\*\***
**Status:** ⬜ Pass / ⬜ Pass with Issues / ⬜ Fail

View File

@@ -1,132 +0,0 @@
# {{MODULE_NAME}} Installation Configuration Template
# This file defines how the module gets installed into a BMAD system
module_name: "{{MODULE_NAME}}"
module_code: "{{MODULE_CODE}}"
author: "{{AUTHOR}}"
installation_date: "{{DATE}}"
bmad_version_required: "6.0.0"
# Module metadata
metadata:
description: "{{MODULE_DESCRIPTION}}"
category: "{{MODULE_CATEGORY}}"
tags: ["{{MODULE_TAGS}}"]
homepage: "{{MODULE_HOMEPAGE}}"
license: "{{MODULE_LICENSE}}"
# Pre-installation checks
pre_install_checks:
- name: "Check BMAD version"
type: "version_check"
minimum: "6.0.0"
- name: "Check dependencies"
type: "module_check"
required_modules: [] # List any required modules
- name: "Check disk space"
type: "disk_check"
required_mb: 50
# Installation steps
install_steps:
- name: "Create module directories"
action: "mkdir"
paths:
- "{project-root}/bmad/{{MODULE_CODE}}"
- "{project-root}/bmad/{{MODULE_CODE}}/data"
- "{project-root}/bmad/{{MODULE_CODE}}/agents"
- "{project-root}/bmad/{{MODULE_CODE}}/workflows"
- "{project-root}/bmad/{{MODULE_CODE}}/config"
- "{project-root}/bmad/{{MODULE_CODE}}/logs"
- name: "Copy module configuration"
action: "copy"
files:
- source: "config.yaml"
dest: "{project-root}/bmad/{{MODULE_CODE}}/config.yaml"
- name: "Copy default data files"
action: "copy"
optional: true
files:
- source: "data/*"
dest: "{project-root}/bmad/{{MODULE_CODE}}/data/"
- name: "Register module in manifest"
action: "register"
manifest_path: "{project-root}/bmad/_cfg/manifest.yaml"
entry:
module: "{{MODULE_CODE}}"
status: "active"
path: "{project-root}/bmad/{{MODULE_CODE}}"
- name: "Setup agent shortcuts"
action: "create_shortcuts"
agents: "{{AGENT_LIST}}"
- name: "Initialize module database"
action: "exec"
optional: true
script: "installer.js"
function: "initDatabase"
# External assets to install
external_assets:
- description: "Module documentation"
source: "assets/docs/*"
dest: "{project-root}/docs/{{MODULE_CODE}}/"
- description: "Example configurations"
source: "assets/examples/*"
dest: "{project-root}/examples/{{MODULE_CODE}}/"
optional: true
# Module configuration defaults
default_config:
output_folder: "{project-root}/output/{{MODULE_CODE}}"
data_folder: "{project-root}/bmad/{{MODULE_CODE}}/data"
log_level: "info"
auto_save: true
# {{CUSTOM_CONFIG}}
# Post-installation setup
post_install:
- name: "Run initial setup"
action: "workflow"
workflow: "{{MODULE_CODE}}-setup"
optional: true
- name: "Generate sample data"
action: "exec"
script: "installer.js"
function: "generateSamples"
optional: true
- name: "Verify installation"
action: "test"
test_command: "bmad test {{MODULE_CODE}}"
# Post-installation message
post_install_message: |
✅ {{MODULE_NAME}} has been installed successfully!
🚀 Quick Start:
1. Load the main agent: `agent {{PRIMARY_AGENT}}`
2. View available commands: `*help`
3. Run the main workflow: `workflow {{PRIMARY_WORKFLOW}}`
📚 Documentation: {project-root}/docs/{{MODULE_CODE}}/README.md
💡 Examples: {project-root}/examples/{{MODULE_CODE}}/
{{CUSTOM_MESSAGE}}
# Uninstall configuration
uninstall:
preserve_user_data: true
remove_paths:
- "{project-root}/bmad/{{MODULE_CODE}}"
- "{project-root}/docs/{{MODULE_CODE}}"
backup_before_remove: true
unregister_from_manifest: true

View File

@@ -1,231 +0,0 @@
/* eslint-disable unicorn/prefer-module, unicorn/prefer-node-protocol */
/**
* {{MODULE_NAME}} Module Installer
* Custom installation logic for complex module setup
*
* This is a template - replace {{VARIABLES}} with actual values
*/
// const fs = require('fs'); // Uncomment when implementing file operations
const path = require('path');
/**
* Main installation function
* Called by BMAD installer when processing the module
*/
async function installModule(config) {
console.log('🚀 Installing {{MODULE_NAME}} module...');
console.log(` Version: ${config.version}`);
console.log(` Module Code: ${config.module_code}`);
try {
// Step 1: Validate environment
await validateEnvironment(config);
// Step 2: Setup custom configurations
await setupConfigurations(config);
// Step 3: Initialize module-specific features
await initializeFeatures(config);
// Step 4: Run post-install tasks
await runPostInstallTasks(config);
console.log('✅ {{MODULE_NAME}} module installed successfully!');
return {
success: true,
message: 'Module installed and configured',
};
} catch (error) {
console.error('❌ Installation failed:', error.message);
return {
success: false,
error: error.message,
};
}
}
/**
* Validate that the environment meets module requirements
*/
async function validateEnvironment(config) {
console.log(' Validating environment...');
// TODO: Add environment checks
// Examples:
// - Check for required tools/binaries
// - Verify permissions
// - Check network connectivity
// - Validate API keys
// Placeholder validation
if (!config.project_root) {
throw new Error('Project root not defined');
}
console.log(' ✓ Environment validated');
}
/**
* Setup module-specific configurations
*/
async function setupConfigurations(config) {
console.log(' Setting up configurations...');
// TODO: Add configuration setup
// Examples:
// - Create config files
// - Setup environment variables
// - Configure external services
// - Initialize settings
// Placeholder configuration
const configPath = path.join(config.project_root, 'bmad', config.module_code, 'config.json');
// Example of module config that would be created
// const moduleConfig = {
// installed: new Date().toISOString(),
// settings: {
// // Add default settings
// }
// };
// Note: This is a placeholder - actual implementation would write the file
console.log(` ✓ Would create config at: ${configPath}`);
console.log(' ✓ Configurations complete');
}
/**
* Initialize module-specific features
*/
async function initializeFeatures(config) {
console.log(' Initializing features...');
// TODO: Add feature initialization
// Examples:
// - Create database schemas
// - Setup cron jobs
// - Initialize caches
// - Register webhooks
// - Setup file watchers
// Module-specific initialization based on type
switch (config.module_category) {
case 'data': {
await initializeDataFeatures(config);
break;
}
case 'automation': {
await initializeAutomationFeatures(config);
break;
}
case 'integration': {
await initializeIntegrationFeatures(config);
break;
}
default: {
console.log(' - Using standard initialization');
}
}
console.log(' ✓ Features initialized');
}
/**
* Initialize data-related features
*/
async function initializeDataFeatures(/* config */) {
console.log(' - Setting up data storage...');
// TODO: Setup databases, data folders, etc.
}
/**
* Initialize automation features
*/
async function initializeAutomationFeatures(/* config */) {
console.log(' - Setting up automation hooks...');
// TODO: Setup triggers, watchers, schedulers
}
/**
* Initialize integration features
*/
async function initializeIntegrationFeatures(/* config */) {
console.log(' - Setting up integrations...');
// TODO: Configure APIs, webhooks, external services
}
/**
* Run post-installation tasks
*/
async function runPostInstallTasks(/* config */) {
console.log(' Running post-install tasks...');
// TODO: Add post-install tasks
// Examples:
// - Generate sample data
// - Run initial workflows
// - Send notifications
// - Update registries
console.log(' ✓ Post-install tasks complete');
}
/**
* Initialize database for the module (optional)
*/
async function initDatabase(/* config */) {
console.log(' Initializing database...');
// TODO: Add database initialization
// This function can be called from install-module-config.yaml
console.log(' ✓ Database initialized');
}
/**
* Generate sample data for the module (optional)
*/
async function generateSamples(config) {
console.log(' Generating sample data...');
// TODO: Create sample files, data, configurations
// This helps users understand how to use the module
const samplesPath = path.join(config.project_root, 'examples', config.module_code);
console.log(` - Would create samples at: ${samplesPath}`);
console.log(' ✓ Samples generated');
}
/**
* Uninstall the module (cleanup)
*/
async function uninstallModule(/* config */) {
console.log('🗑️ Uninstalling {{MODULE_NAME}} module...');
try {
// TODO: Add cleanup logic
// - Remove configurations
// - Clean up databases
// - Unregister services
// - Backup user data
console.log('✅ Module uninstalled successfully');
return { success: true };
} catch (error) {
console.error('❌ Uninstall failed:', error.message);
return {
success: false,
error: error.message,
};
}
}
// Export functions for BMAD installer
module.exports = {
installModule,
initDatabase,
generateSamples,
uninstallModule,
};

View File

@@ -1,521 +0,0 @@
# Build Module - Interactive Module Builder Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/create-module/workflow.yaml</critical>
<critical>Study existing modules in: {project-root}/bmad/ for patterns</critical>
<critical>Communicate in {communication_language} throughout the module creation process</critical>
<workflow>
<step n="-1" goal="Optional brainstorming for module ideas" optional="true">
<ask>Do you want to brainstorm module ideas first? [y/n]</ask>
<check>If yes:</check>
<action>Invoke brainstorming workflow: {brainstorming_workflow}</action>
<action>Pass context data: {brainstorming_context}</action>
<action>Wait for brainstorming session completion</action>
<action>Use brainstorming output to inform module concept, agent lineup, and workflow portfolio in following steps</action>
<check>If no:</check>
<action>Proceed directly to Step 0</action>
<template-output>brainstorming_results</template-output>
</step>
<step n="0" goal="Check for module brief" optional="true">
<ask>Do you have a module brief or should we create one? [have/create/skip]</ask>
<check>If create:</check>
<action>Invoke module-brief workflow: {project-root}/bmad/bmb/workflows/module-brief/workflow.yaml</action>
<action>Wait for module brief completion</action>
<action>Load the module brief to use as blueprint</action>
<check>If have:</check>
<ask>Provide path to module brief document</ask>
<action>Load the module brief and use it to pre-populate all planning sections</action>
<check>If skip:</check>
<action>Proceed directly to Step 1</action>
<template-output>module_brief</template-output>
</step>
<step n="1" goal="Define module concept and scope">
<critical>Load and study the complete module structure guide</critical>
<action>Load module structure guide: {module_structure_guide}</action>
<action>Understand module types (Simple/Standard/Complex)</action>
<action>Review directory structures and component guidelines</action>
<action>Study the installation infrastructure patterns</action>
<action>If brainstorming or module brief was completed, reference those results to guide the conversation</action>
<action>Guide user to articulate their module's vision, exploring its purpose, what it will help with, and who will use it</action>
<action>Based on their description, intelligently propose module details:</action>
**Module Identity Development:**
1. **Module name** - Extract from their description with proper title case
2. **Module code** - Generate kebab-case from name following patterns:
- Multi-word descriptive names → shortened kebab-case
- Domain-specific terms → recognizable abbreviations
- Present suggested code and confirm it works for paths like bmad/{{code}}/agents/
3. **Module purpose** - Refine their description into 1-2 clear sentences
4. **Target audience** - Infer from context or ask if unclear
**Module Theme Reference Categories:**
- Domain-Specific (Legal, Medical, Finance, Education)
- Creative (RPG/Gaming, Story Writing, Music Production)
- Technical (DevOps, Testing, Architecture, Security)
- Business (Project Management, Marketing, Sales)
- Personal (Journaling, Learning, Productivity)
<critical>Determine output location:</critical>
- Module will be created at {installer_output_folder}
<action>Store module identity for scaffolding</action>
<template-output>module_identity</template-output>
</step>
<step n="2" goal="Plan module components">
<action>Based on the module purpose, intelligently propose an initial component architecture</action>
**Agents Planning:**
<action>Suggest agents based on module purpose, considering agent types (Simple/Expert/Module) appropriate to each role</action>
**Example Agent Patterns by Domain:**
- Data/Analytics: Analyst, Designer, Builder roles
- Gaming/Creative: Game Master, Generator, Storytelling roles
- Team/Business: Manager, Facilitator, Documentation roles
<action>Present suggested agent list with types, explaining we can start with core ones and add others later</action>
<action>Confirm which agents resonate with their vision</action>
**Workflows Planning:**
<action>Intelligently suggest workflows that complement the proposed agents</action>
**Example Workflow Patterns by Domain:**
- Data/Analytics: analyze-dataset, create-dashboard, generate-report
- Gaming/Creative: session-prep, generate-encounter, world-building
- Team/Business: planning, facilitation, documentation workflows
<action>For each workflow, note whether it should be Document, Action, or Interactive type</action>
<action>Confirm which workflows are most important to start with</action>
<action>Determine which to create now vs placeholder</action>
**Tasks Planning (optional):**
<ask>Any special tasks that don't warrant full workflows?</ask>
<check>If tasks needed:</check>
<action>For each task, capture name, purpose, and whether standalone or supporting</action>
<template-output>module_components</template-output>
</step>
<step n="2b" goal="Determine module complexity">
<action>Based on components, intelligently determine module type using criteria:</action>
**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
<action>Present determined module type with explanation of what structure will be set up</action>
<template-output>module_type</template-output>
</step>
<step n="3" goal="Create module directory structure">
<critical>Use module path determined in Step 1:</critical>
- The module base path is {{module_path}}
<action>Create base module directories at the determined path:</action>
```
{{module_code}}/
├── agents/ # Agent definitions
├── workflows/ # Workflow folders
├── tasks/ # Task files (if any)
├── templates/ # Shared templates
├── data/ # Module data files
├── config.yaml # Module configuration
└── README.md # Module documentation
```
<action>Create installer directory:</action>
```
{{module_code}}/
├── _module-installer/
│ ├── install-module-config.yaml
│ ├── installer.js (optional)
│ └── assets/ # Files to copy during install
├── config.yaml # Runtime configuration
├── agents/ # Agent configs (optional)
├── workflows/ # Workflow instances
└── data/ # User data directory
```
<template-output>directory_structure</template-output>
</step>
<step n="4" goal="Generate module configuration">
Create the main module config.yaml:
```yaml
# {{module_name}} Module Configuration
module_name: {{module_name}}
module_code: {{module_code}}
author: {{user_name}}
description: {{module_purpose}}
# Module paths
module_root: "{project-root}/bmad/{{module_code}}"
installer_path: "{project-root}/bmad/{{module_code}}"
# Component counts
agents:
count: {{agent_count}}
list: {{agent_list}}
workflows:
count: {{workflow_count}}
list: {{workflow_list}}
tasks:
count: {{task_count}}
list: {{task_list}}
# Module-specific settings
{{custom_settings}}
# Output configuration
output_folder: "{project-root}/docs/{{module_code}}"
data_folder: "{{determined_module_path}}/data"
```
<critical>Save location:</critical>
- Save to {{module_path}}/config.yaml
<template-output>module_config</template-output>
</step>
<step n="5" goal="Create first agent" optional="true">
<ask>Create your first agent now? [yes/no]</ask>
<check>If yes:</check>
<action>Invoke agent builder workflow: {agent_builder}</action>
<action>Pass module_components as context input</action>
<action>Guide them to create the primary agent for the module</action>
<critical>Save to module's agents folder:</critical>
- Save to {{module_path}}/agents/
<check>If no:</check>
<action>Create placeholder file in agents folder with TODO notes including agent name, purpose, and type</action>
<template-output>first_agent</template-output>
</step>
<step n="6" goal="Create first workflow" optional="true">
<ask>Create your first workflow now? [yes/no]</ask>
<check>If yes:</check>
<action>Invoke workflow builder: {workflow_builder}</action>
<action>Pass module_components as context input</action>
<action>Guide them to create the primary workflow</action>
<critical>Save to module's workflows folder:</critical>
- Save to {{module_path}}/workflows/
<check>If no:</check>
<action>Create placeholder workflow folder structure with TODO notes for workflow.yaml, instructions.md, and template.md if document workflow</action>
<template-output>first_workflow</template-output>
</step>
<step n="7" goal="Setup module installer">
<action>Load installer templates from: {installer_templates}</action>
Create install-module-config.yaml:
```yaml
# {{module_name}} Installation Configuration
module_name: { { module_name } }
module_code: { { module_code } }
installation_date: { { date } }
# Installation steps
install_steps:
- name: 'Create directories'
action: 'mkdir'
paths:
- '{project-root}/bmad/{{module_code}}'
- '{project-root}/bmad/{{module_code}}/data'
- '{project-root}/bmad/{{module_code}}/agents'
- name: 'Copy configuration'
action: 'copy'
source: '{installer_path}/config.yaml'
dest: '{project-root}/bmad/{{module_code}}/config.yaml'
- name: 'Register module'
action: 'register'
manifest: '{project-root}/bmad/_cfg/manifest.yaml'
# External assets (if any)
external_assets:
- description: '{{asset_description}}'
source: 'assets/{{filename}}'
dest: '{{destination_path}}'
# Post-install message
post_install_message: |
{{module_name}} has been installed successfully!
To get started:
1. Load any {{module_code}} agent
2. Use *help to see available commands
3. Check README.md for full documentation
```
Create installer.js stub (optional):
```javascript
// {{module_name}} Module Installer
// This is a placeholder for complex installation logic
function installModule(config) {
console.log('Installing {{module_name}} module...');
// TODO: Add any complex installation logic here
// Examples:
// - Database setup
// - API key configuration
// - External service registration
// - File system preparation
console.log('{{module_name}} module installed successfully!');
return true;
}
module.exports = { installModule };
```
<template-output>installer_config</template-output>
</step>
<step n="8" goal="Create module documentation">
Generate comprehensive README.md:
````markdown
# {{module_name}}
{{module_purpose}}
## Overview
This module provides:
{{component_summary}}
## Installation
```bash
bmad install {{module_code}}
```
````
## Components
### Agents ({{agent_count}})
{{agent_documentation}}
### Workflows ({{workflow_count}})
{{workflow_documentation}}
### Tasks ({{task_count}})
{{task_documentation}}
## Quick Start
1. **Load the main agent:**
```
agent {{primary_agent}}
```
2. **View available commands:**
```
*help
```
3. **Run the main workflow:**
```
workflow {{primary_workflow}}
```
## Module Structure
```
{{directory_tree}}
```
## Configuration
The module can be configured in `bmad/{{module_code}}/config.yaml`
Key settings:
{{configuration_options}}
## Examples
### Example 1: {{example_use_case}}
{{example_walkthrough}}
## Development Roadmap
- [ ] {{roadmap_item_1}}
- [ ] {{roadmap_item_2}}
- [ ] {{roadmap_item_3}}
## Contributing
To extend this module:
1. Add new agents using `create-agent` workflow
2. Add new workflows using `create-workflow` workflow
3. Submit improvements via pull request
## Author
Created by {{user_name}} on {{date}}
````
<template-output>module_readme</template-output>
</step>
<step n="9" goal="Generate component roadmap">
Create a development roadmap for remaining components:
**TODO.md file:**
```markdown
# {{module_name}} Development Roadmap
## Phase 1: Core Components
{{phase1_tasks}}
## Phase 2: Enhanced Features
{{phase2_tasks}}
## Phase 3: Polish and Integration
{{phase3_tasks}}
## Quick Commands
Create new agent:
````
workflow create-agent
```
Create new workflow:
```
workflow create-workflow
```
## Notes
{{development_notes}}
```
Ask if user wants to:
1. Continue building more components now
2. Save roadmap for later development
3. Test what's been built so far
<template-output>development_roadmap</template-output>
</step>
<step n="10" goal="Validate and finalize module">
<action>Run validation checks:</action>
**Structure validation:**
- All required directories created
- Config files properly formatted
- Installer configuration valid
**Component validation:**
- At least one agent or workflow exists (or planned)
- All references use correct paths
- Module code consistent throughout
**Documentation validation:**
- README.md complete
- Installation instructions clear
- Examples provided
<action>Present summary to {user_name}:</action>
- Module name and code
- Location path
- Agent count (created vs planned)
- Workflow count (created vs planned)
- Task count
- Installer status
<action>Provide next steps guidance:</action>
1. Complete remaining components using roadmap
2. Run the BMAD Method installer to this project location
3. Select 'Compile Agents' option after confirming folder
4. Module will be compiled and available for use
5. Test with bmad install command
6. Share or integrate with existing system
<ask>Would you like to:
- Create another component now?
- Test the module installation?
- Exit and continue later?
</ask>
<template-output>module_summary</template-output>
</step>
</workflow>

View File

@@ -1,310 +0,0 @@
# BMAD Module Structure Guide
## What is a Module?
A BMAD module is a self-contained package of agents, workflows, tasks, and resources that work together to provide specialized functionality. Think of it as an expansion pack for the BMAD Method.
## Module Architecture
### Core Structure
```
project-root/
├── bmad/{module-code}/ # Source code
│ ├── agents/ # Agent definitions
│ ├── workflows/ # Workflow folders
│ ├── tasks/ # Task files
│ ├── templates/ # Shared templates
│ ├── data/ # Static data
│ ├── config.yaml # Module config
│ └── README.md # Documentation
└── bmad/{module-code}/ # Runtime instance
├── _module-installer/ # Installation files
│ ├── install-module-config.yaml
│ ├── installer.js # Optional
│ └── assets/ # Install assets
├── config.yaml # User config
├── agents/ # Agent overrides
├── workflows/ # Workflow instances
└── data/ # User data
```
## Module Types by Complexity
### Simple Module (1-2 agents, 2-3 workflows)
Perfect for focused, single-purpose tools.
**Example: Code Review Module**
- 1 Reviewer Agent
- 2 Workflows: quick-review, deep-review
- Clear, narrow scope
### Standard Module (3-5 agents, 5-10 workflows)
Comprehensive solution for a domain.
**Example: Project Management Module**
- PM Agent, Scrum Master Agent, Analyst Agent
- Workflows: sprint-planning, retrospective, roadmap, user-stories
- Integrated component ecosystem
### Complex Module (5+ agents, 10+ workflows)
Full platform or framework.
**Example: RPG Toolkit Module**
- DM Agent, NPC Agent, Monster Agent, Loot Agent, Map Agent
- 15+ workflows for every aspect of game management
- Multiple interconnected systems
## Module Naming Conventions
### Module Code (kebab-case)
- `data-viz` - Data Visualization
- `team-collab` - Team Collaboration
- `rpg-toolkit` - RPG Toolkit
- `legal-assist` - Legal Assistant
### Module Name (Title Case)
- "Data Visualization Suite"
- "Team Collaboration Platform"
- "RPG Game Master Toolkit"
- "Legal Document Assistant"
## Component Guidelines
### Agents per Module
**Recommended Distribution:**
- **Primary Agent (1)**: The main interface/orchestrator
- **Specialist Agents (2-4)**: Domain-specific experts
- **Utility Agents (0-2)**: Helper/support functions
**Anti-patterns to Avoid:**
- Too many overlapping agents
- Agents that could be combined
- Agents without clear purpose
### Workflows per Module
**Categories:**
- **Core Workflows (2-3)**: Essential functionality
- **Feature Workflows (3-5)**: Specific capabilities
- **Utility Workflows (2-3)**: Supporting operations
- **Admin Workflows (0-2)**: Maintenance/config
**Workflow Complexity Guide:**
- Simple: 3-5 steps, single output
- Standard: 5-10 steps, multiple outputs
- Complex: 10+ steps, conditional logic, sub-workflows
### Tasks per Module
Tasks should be used for:
- Single-operation utilities
- Shared subroutines
- Quick actions that don't warrant workflows
## Module Dependencies
### Internal Dependencies
- Agents can reference module workflows
- Workflows can invoke module tasks
- Tasks can use module templates
### External Dependencies
- Reference other modules via full paths
- Declare dependencies in config.yaml
- Version compatibility notes
## Installation Infrastructure
### Required: install-module-config.yaml
```yaml
module_name: 'Module Name'
module_code: 'module-code'
install_steps:
- name: 'Create directories'
action: 'mkdir'
paths: [...]
- name: 'Copy files'
action: 'copy'
mappings: [...]
- name: 'Register module'
action: 'register'
```
### Optional: installer.js
For complex installations requiring:
- Database setup
- API configuration
- System integration
- Permission management
### Optional: External Assets
Files that get copied outside the module:
- System configurations
- User templates
- Shared resources
- Integration scripts
## Module Lifecycle
### Development Phases
1. **Planning Phase**
- Define scope and purpose
- Identify components
- Design architecture
2. **Scaffolding Phase**
- Create directory structure
- Generate configurations
- Setup installer
3. **Building Phase**
- Create agents incrementally
- Build workflows progressively
- Add tasks as needed
4. **Testing Phase**
- Test individual components
- Verify integration
- Validate installation
5. **Deployment Phase**
- Package module
- Document usage
- Distribute/share
## Best Practices
### Module Cohesion
- All components should relate to module theme
- Clear boundaries between modules
- No feature creep
### Progressive Enhancement
- Start with MVP (1 agent, 2 workflows)
- Add components based on usage
- Refactor as patterns emerge
### Documentation Standards
- Every module needs README.md
- Each agent needs purpose statement
- Workflows need clear descriptions
- Include examples and quickstart
### Naming Consistency
- Use module code prefix for uniqueness
- Consistent naming patterns within module
- Clear, descriptive names
## Example Modules
### Example 1: Personal Productivity
```
productivity/
├── agents/
│ ├── task-manager.md # GTD methodology
│ └── focus-coach.md # Pomodoro timer
├── workflows/
│ ├── daily-planning/ # Morning routine
│ ├── weekly-review/ # Week retrospective
│ └── project-setup/ # New project init
└── config.yaml
```
### Example 2: Content Creation
```
content/
├── agents/
│ ├── writer.md # Blog/article writer
│ ├── editor.md # Copy editor
│ └── seo-optimizer.md # SEO specialist
├── workflows/
│ ├── blog-post/ # Full blog creation
│ ├── social-media/ # Social content
│ ├── email-campaign/ # Email sequence
│ └── content-calendar/ # Planning
└── templates/
├── blog-template.md
└── email-template.md
```
### Example 3: DevOps Automation
```
devops/
├── agents/
│ ├── deploy-master.md # Deployment orchestrator
│ ├── monitor.md # System monitoring
│ ├── incident-responder.md # Incident management
│ └── infra-architect.md # Infrastructure design
├── workflows/
│ ├── ci-cd-setup/ # Pipeline creation
│ ├── deploy-app/ # Application deployment
│ ├── rollback/ # Emergency rollback
│ ├── health-check/ # System verification
│ └── incident-response/ # Incident handling
├── tasks/
│ ├── check-status.md # Quick status check
│ └── notify-team.md # Team notifications
└── data/
└── runbooks/ # Operational guides
```
## Module Evolution Pattern
```
Simple Module → Standard Module → Complex Module → Module Suite
(MVP) (Enhanced) (Complete) (Ecosystem)
```
## Common Pitfalls
1. **Over-engineering**: Starting too complex
2. **Under-planning**: No clear architecture
3. **Poor boundaries**: Module does too much
4. **Weak integration**: Components don't work together
5. **Missing docs**: No clear usage guide
## Success Metrics
A well-designed module has:
- ✅ Clear, focused purpose
- ✅ Cohesive components
- ✅ Smooth installation
- ✅ Comprehensive docs
- ✅ Room for growth
- ✅ Happy users!

View File

@@ -1,40 +0,0 @@
# Build Module Workflow Configuration
name: create-module
description: "Interactive workflow to build complete BMAD modules with agents, workflows, tasks, and installation infrastructure"
author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/bmb/config.yaml"
custom_module_location: "{config_source}:custom_module_location"
communication_language: "{config_source}:communication_language"
user_name: "{config_source}:user_name"
# Reference guides for module building
module_structure_guide: "{installed_path}/module-structure.md"
installer_templates: "{installed_path}/installer-templates/"
# Use existing build workflows
agent_builder: "{project-root}/bmad/bmb/workflows/create-agent/workflow.yaml"
workflow_builder: "{project-root}/bmad/bmb/workflows/create-workflow/workflow.yaml"
brainstorming_workflow: "{project-root}/bmad/core/workflows/brainstorming/workflow.yaml"
brainstorming_context: "{installed_path}/brainstorm-context.md"
# Optional docs that help understand module patterns
recommended_inputs:
- module_brief: "{output_folder}/module-brief-*.md"
- brainstorming_results: "{output_folder}/brainstorming-*.md"
- bmm_module: "{project-root}/bmad/bmm/"
- cis_module: "{project-root}/bmad/cis/"
- existing_agents: "{project-root}/bmad/*/agents/"
- existing_workflows: "{project-root}/bmad/*/workflows/"
# Module path and component files
installed_path: "{project-root}/bmad/bmb/workflows/create-module"
template: false # This is an interactive scaffolding workflow
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# Output configuration - creates entire module structure
# Save to custom_module_location/{{module_code}}
installer_output_folder: "{custom_module_location}/{{module_code}}"
# Web bundle configuration

View File

@@ -1,277 +0,0 @@
# Build Workflow
## Overview
The Build Workflow is an interactive workflow builder that guides you through creating new BMAD workflows with proper structure, conventions, and validation. It ensures all workflows follow best practices for optimal human-AI collaboration and are fully compliant with the BMAD Core v6 workflow execution engine.
## Key Features
- **Optional Brainstorming Phase**: Creative exploration of workflow ideas before structured development
- **Comprehensive Guidance**: Step-by-step process with detailed instructions and examples
- **Template-Based**: Uses proven templates for all workflow components
- **Convention Enforcement**: Ensures adherence to BMAD workflow creation guide
- **README Generation**: Automatically creates comprehensive documentation
- **Validation Built-In**: Includes checklist generation for quality assurance
- **Type-Aware**: Adapts to document, action, interactive, autonomous, or meta-workflow types
## Usage
### Basic Invocation
```bash
workflow create-workflow
```
### Through BMad Builder Agent
```
*create-workflow
```
### What You'll Be Asked
1. **Optional**: Whether to brainstorm workflow ideas first (creative exploration phase)
2. Workflow name and target module
3. Workflow purpose and type (enhanced by brainstorming insights if used)
4. Metadata (description, author, outputs)
5. Step-by-step design (goals, variables, flow)
6. Whether to include optional components
## Workflow Structure
### Files Included
```
create-workflow/
├── workflow.yaml # Configuration and metadata
├── instructions.md # Step-by-step execution guide
├── checklist.md # Validation criteria
├── workflow-creation-guide.md # Comprehensive reference guide
├── README.md # This file
└── workflow-template/ # Templates for new workflows
├── workflow.yaml
├── instructions.md
├── template.md
├── checklist.md
└── README.md
```
## Understanding Instruction Styles
One of the most important decisions when creating a workflow is choosing the **instruction style** - how the workflow guides the AI's interaction with users.
### Intent-Based vs Prescriptive Instructions
**Intent-Based (Recommended for most workflows)**
Guides the LLM with goals and principles, allowing natural conversation adaptation.
- **More flexible and conversational** - AI adapts questions to context
- **Better for complex discovery** - Requirements gathering, creative exploration
- **Quality over consistency** - Focus on deep understanding
- **Example**: `<action>Guide user to define their target audience with specific demographics and needs</action>`
**Best for:**
- Complex discovery processes (user research, requirements)
- Creative brainstorming and ideation
- Iterative refinement workflows
- When adaptation to context matters
- Workflows requiring nuanced understanding
**Prescriptive**
Provides exact wording for questions and structured options.
- **More controlled and predictable** - Same questions every time
- **Better for simple data collection** - Platform choices, yes/no decisions
- **Consistency over quality** - Standardized execution
- **Example**: `<ask>What is your target platform? Choose: PC, Console, Mobile, Web</ask>`
**Best for:**
- Simple data collection (platform, format, binary choices)
- Compliance verification and standards
- Configuration with finite options
- Quick setup wizards
- When consistency is critical
### Best Practice: Mix Both Styles
The most effective workflows use **both styles strategically**:
```xml
<!-- Intent-based workflow with prescriptive moments -->
<step n="1" goal="Understand user vision">
<action>Explore the user's vision, uncovering creative intent and target experience</action>
</step>
<step n="2" goal="Capture basic metadata">
<ask>What is your target platform? Choose: PC, Console, Mobile, Web</ask>
</step>
<step n="3" goal="Deep dive into details">
<action>Guide user to articulate their core approach and unique aspects</action>
</step>
```
**During workflow creation**, you'll be asked to choose a **primary style preference** - this sets the default approach, but you can (and should) use the other style when it makes more sense for specific steps.
## Workflow Process
### Phase 0: Optional Brainstorming (Step -1)
- **Creative Exploration**: Option to brainstorm workflow ideas before structured development
- **Design Concept Development**: Generate multiple approaches and explore different possibilities
- **Requirement Clarification**: Use brainstorming output to inform workflow purpose, type, and structure
- **Enhanced Creativity**: Leverage AI brainstorming tools for innovative workflow design
The brainstorming phase invokes the CIS brainstorming workflow to:
- Explore workflow ideas and approaches
- Clarify requirements and use cases
- Generate creative solutions for complex automation needs
- Inform the structured workflow building process
### Phase 1: Planning (Steps 0-3)
- Load workflow creation guide and conventions
- Define workflow purpose, name, and type (informed by brainstorming if used)
- Gather metadata and configuration details
- Design step structure and flow
### Phase 2: Generation (Steps 4-8)
- Create workflow.yaml with proper configuration
- Generate instructions.md with XML-structured steps
- Create template.md (for document workflows)
- Generate validation checklist
- Create supporting data files (optional)
### Phase 3: Documentation and Validation (Steps 9-11)
- Create comprehensive README.md (MANDATORY)
- Test and validate workflow structure
- Provide usage instructions and next steps
## Output
### Generated Workflow Folder
Creates a complete workflow folder at:
`{project-root}/bmad/{{target_module}}/workflows/{{workflow_name}}/`
### Files Created
**Always Created:**
- `workflow.yaml` - Configuration with paths and variables
- `README.md` - Comprehensive documentation (MANDATORY as of v6)
- `instructions.md` - Execution steps (if not template-only workflow)
**Conditionally Created:**
- `template.md` - Document structure (for document workflows)
- `checklist.md` - Validation criteria (optional but recommended)
- Supporting data files (CSV, JSON, etc. as needed)
### Output Structure
For document workflows, the README documents:
- Workflow purpose and use cases
- Usage examples with actual commands
- Input expectations
- Output structure and location
- Best practices
## Requirements
- Access to workflow creation guide
- BMAD Core v6 project structure
- Module to host the new workflow (bmm, bmb, cis, or custom)
## Best Practices
### Before Starting
1. **Consider Brainstorming**: If you're unsure about the workflow approach, use the optional brainstorming phase
2. Review the workflow creation guide to understand conventions
3. Have a clear understanding of the workflow's purpose (or be ready to explore it creatively)
4. Know which type of workflow you're creating (document, action, etc.) or be open to discovery
5. Identify any data files or references needed
### Creative Workflow Design
The create-workflow now supports a **seamless transition from creative ideation to structured implementation**:
- **"I need a workflow for something..."** → Start with brainstorming to explore possibilities
- **Brainstorm** → Generate multiple approaches and clarify requirements
- **Structured workflow** → Build the actual workflow using insights from brainstorming
- **One seamless session** → Complete the entire process from idea to implementation
### During Execution
1. Follow kebab-case naming conventions
2. Be specific with step goals and instructions
3. Use descriptive variable names (snake_case)
4. Set appropriate limits ("3-5 items maximum")
5. Include examples where helpful
### After Completion
1. Test the newly created workflow
2. Validate against the checklist
3. Ensure README is comprehensive and accurate
4. Test all file paths and variable references
## Troubleshooting
### Issue: Generated workflow won't execute
- **Solution**: Verify all file paths in workflow.yaml use proper variable substitution
- **Check**: Ensure installed_path and project-root are correctly set
### Issue: Variables not replacing in template
- **Solution**: Ensure variable names match exactly between instructions `<template-output>` tags and template `{{variables}}`
- **Check**: Use snake_case consistently
### Issue: README has placeholder text
- **Solution**: This workflow now enforces README generation - ensure Step 10 completed fully
- **Check**: No {WORKFLOW_TITLE} or similar placeholders should remain
## Customization
To modify this workflow:
1. Edit `instructions.md` to adjust the creation process
2. Update templates in `workflow-template/` to change generated files
3. Modify `workflow-creation-guide.md` to update conventions
4. Edit `checklist.md` to change validation criteria
## Version History
- **v6.0.0** - README.md now MANDATORY for all workflows
- Added comprehensive README template
- Enhanced validation for documentation
- Improved Step 10 with detailed README requirements
- **v5.0.0** - Initial BMAD Core v6 compatible version
- Template-based workflow generation
- Convention enforcement
- Validation checklist support
## Support
For issues or questions:
- Review `/bmad/bmb/workflows/create-workflow/workflow-creation-guide.md`
- Check existing workflows in `/bmad/bmm/workflows/` for examples
- Validate against `/bmad/bmb/workflows/create-workflow/checklist.md`
- Consult BMAD Method v6 documentation
---
_Part of the BMad Method v6 - BMB (BMad Builder) Module_

View File

@@ -1,197 +0,0 @@
# Workflow Brainstorming Context
_Context provided to brainstorming workflow when creating a new BMAD workflow_
## Session Focus
You are brainstorming ideas for a **BMAD workflow** - a guided, multi-step process that helps users accomplish complex tasks with structure, consistency, and quality.
## What is a BMAD Workflow?
A workflow is a structured process that provides:
- **Clear Steps**: Sequential operations with defined goals
- **User Guidance**: Prompts, questions, and decisions at each phase
- **Quality Output**: Documents, artifacts, or completed actions
- **Repeatability**: Same process yields consistent results
- **Type**: Document (creates docs), Action (performs tasks), Interactive (guides sessions), Autonomous (runs automated), Meta (orchestrates other workflows)
## Brainstorming Goals
Explore and define:
### 1. Problem and Purpose
- **What task needs structure?** (specific process users struggle with)
- **Why is this hard manually?** (complexity, inconsistency, missing steps)
- **What would ideal process look like?** (steps, checkpoints, outputs)
- **Who needs this?** (target users and their pain points)
### 2. Process Flow
- **How many phases?** (typically 3-10 major steps)
- **What's the sequence?** (logical flow from start to finish)
- **What decisions are needed?** (user choices that affect path)
- **What's optional vs required?** (flexibility points)
- **What checkpoints matter?** (validation, review, approval points)
### 3. Inputs and Outputs
- **What inputs are needed?** (documents, data, user answers)
- **What outputs are generated?** (documents, code, configurations)
- **What format?** (markdown, XML, YAML, actions)
- **What quality criteria?** (how to validate success)
### 4. Workflow Type and Style
- **Document Workflow?** Creates structured documents (PRDs, specs, reports)
- **Action Workflow?** Performs operations (refactoring, deployment, analysis)
- **Interactive Workflow?** Guides creative process (brainstorming, planning)
- **Autonomous Workflow?** Runs without user input (batch processing, generation)
- **Meta Workflow?** Orchestrates other workflows (project setup, module creation)
## Creative Constraints
A great BMAD workflow should be:
- **Focused**: Solves one problem well (not everything)
- **Structured**: Clear phases with defined goals
- **Flexible**: Optional steps, branching paths where appropriate
- **Validated**: Checklist to verify completeness and quality
- **Documented**: README explains when and how to use it
## Workflow Architecture Questions
### Core Structure
1. **Workflow name** (kebab-case, e.g., "product-brief")
2. **Purpose** (one sentence)
3. **Type** (document/action/interactive/autonomous/meta)
4. **Major phases** (3-10 high-level steps)
5. **Output** (what gets created)
### Process Details
1. **Required inputs** (what user must provide)
2. **Optional inputs** (what enhances results)
3. **Decision points** (where user chooses path)
4. **Checkpoints** (where to pause for approval)
5. **Variables** (data passed between steps)
### Quality and Validation
1. **Success criteria** (what defines "done")
2. **Validation checklist** (measurable quality checks)
3. **Common issues** (troubleshooting guidance)
4. **Best practices** (tips for optimal results)
## Workflow Pattern Examples
### Document Generation Workflows
- **Product Brief**: Idea → Vision → Features → Market → Output
- **PRD**: Requirements → User Stories → Acceptance Criteria → Document
- **Architecture**: Requirements → Decisions → Design → Diagrams → ADRs
- **Technical Spec**: Epic → Implementation → Testing → Deployment → Doc
### Action Workflows
- **Code Refactoring**: Analyze → Plan → Refactor → Test → Commit
- **Deployment**: Build → Test → Stage → Validate → Deploy → Monitor
- **Migration**: Assess → Plan → Convert → Validate → Deploy
- **Analysis**: Collect → Process → Analyze → Report → Recommend
### Interactive Workflows
- **Brainstorming**: Setup → Generate → Expand → Evaluate → Prioritize
- **Planning**: Context → Goals → Options → Decisions → Plan
- **Review**: Load → Analyze → Critique → Suggest → Document
### Meta Workflows
- **Project Setup**: Plan → Architecture → Stories → Setup → Initialize
- **Module Creation**: Brainstorm → Brief → Agents → Workflows → Install
- **Sprint Planning**: Backlog → Capacity → Stories → Commit → Kickoff
## Workflow Design Patterns
### Linear Flow
Simple sequence: Step 1 → Step 2 → Step 3 → Done
**Good for:**
- Document generation
- Structured analysis
- Sequential builds
### Branching Flow
Conditional paths: Step 1 → [Decision] → Path A or Path B → Merge → Done
**Good for:**
- Different project types
- Optional deep dives
- Scale-adaptive processes
### Iterative Flow
Refinement loops: Step 1 → Step 2 → [Review] → (Repeat if needed) → Done
**Good for:**
- Creative processes
- Quality refinement
- Approval cycles
### Router Flow
Type selection: [Select Type] → Load appropriate instructions → Execute → Done
**Good for:**
- Multi-mode workflows
- Reusable frameworks
- Flexible tools
## Suggested Brainstorming Techniques
Particularly effective for workflow ideation:
1. **Process Mapping**: Draw current painful process, identify improvements
2. **Step Decomposition**: Break complex task into atomic steps
3. **Checkpoint Thinking**: Where do users need pause/review/decision?
4. **Pain Point Analysis**: What makes current process frustrating?
5. **Success Visualization**: What does perfect execution look like?
## Key Questions to Answer
1. What manual process needs structure and guidance?
2. What makes this process hard or inconsistent today?
3. What are the 3-10 major phases/steps?
4. What document or output gets created?
5. What inputs are required from the user?
6. What decisions or choices affect the flow?
7. What quality criteria define success?
8. Document, Action, Interactive, Autonomous, or Meta workflow?
9. What makes this workflow valuable vs doing it manually?
10. What would make this workflow delightful to use?
## Output Goals
Generate:
- **Workflow name**: Clear, describes the process
- **Purpose statement**: One sentence explaining value
- **Workflow type**: Classification with rationale
- **Phase outline**: 3-10 major steps with goals
- **Input/output description**: What goes in, what comes out
- **Key decisions**: Where user makes choices
- **Success criteria**: How to know it worked
- **Unique value**: Why this workflow beats manual process
- **Use cases**: 3-5 scenarios where this workflow shines
---
_This focused context helps create valuable, structured BMAD workflows_

View File

@@ -1,94 +0,0 @@
# Build Workflow - Validation Checklist
## Workflow Configuration (workflow.yaml)
- [ ] Name follows kebab-case convention
- [ ] Description clearly states workflow purpose
- [ ] All paths use proper variable substitution
- [ ] installed_path points to correct module location
- [ ] template/instructions paths are correct for workflow type
- [ ] Output file pattern is appropriate
- [ ] YAML syntax is valid (no parsing errors)
## Instructions Structure (instructions.md)
- [ ] Critical headers reference workflow engine
- [ ] All steps have sequential numbering
- [ ] Each step has a clear goal attribute
- [ ] Optional steps marked with optional="true"
- [ ] Repeating steps have appropriate repeat attributes
- [ ] All template-output tags have unique variable names
- [ ] Flow control (if any) has valid step references
## Template Structure (if document workflow)
- [ ] All sections have appropriate placeholders
- [ ] Variable names match template-output tags exactly
- [ ] Markdown formatting is valid
- [ ] Date and metadata fields included
- [ ] No unreferenced variables remain
## Content Quality
- [ ] Instructions are specific and actionable
- [ ] Examples provided where helpful
- [ ] Limits set for lists and content length
- [ ] User prompts are clear
- [ ] Step goals accurately describe outcomes
## Validation Checklist (if present)
- [ ] Criteria are measurable and specific
- [ ] Checks grouped logically by category
- [ ] Final validation summary included
- [ ] All critical requirements covered
## File System
- [ ] Workflow folder created in correct module
- [ ] All required files present based on workflow type
- [ ] File permissions allow execution
- [ ] No placeholder text remains (like {TITLE})
## Testing Readiness
- [ ] Workflow can be invoked without errors
- [ ] All required inputs are documented
- [ ] Output location is writable
- [ ] Dependencies (if any) are available
## Web Bundle Configuration (if applicable)
- [ ] web_bundle section present if needed
- [ ] Name, description, author copied from main config
- [ ] All file paths converted to bmad/-relative format
- [ ] NO {config_source} variables in web bundle
- [ ] NO {project-root} prefixes in paths
- [ ] Instructions path listed correctly
- [ ] Validation/checklist path listed correctly
- [ ] Template path listed (if document workflow)
- [ ] All data files referenced in instructions are listed
- [ ] All sub-workflows are included
- [ ] web_bundle_files array is complete:
- [ ] Instructions.md included
- [ ] Checklist.md included
- [ ] Template.md included (if applicable)
- [ ] All CSV/JSON data files included
- [ ] All referenced templates included
- [ ] All sub-workflow files included
- [ ] No external dependencies outside bundle
## Documentation
- [ ] README created (if requested)
- [ ] Usage instructions clear
- [ ] Example command provided
- [ ] Special requirements noted
- [ ] Web bundle deployment noted (if applicable)
## Final Validation
- [ ] Configuration: No issues
- [ ] Instructions: Complete and clear
- [ ] Template: Variables properly mapped
- [ ] Testing: Ready for test run

View File

@@ -1,574 +0,0 @@
# Build Workflow - Workflow Builder Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/create-workflow/workflow.yaml</critical>
<critical>You MUST fully understand the workflow creation guide at: {workflow_creation_guide}</critical>
<critical>Study the guide thoroughly to follow ALL conventions for optimal human-AI collaboration</critical>
<critical>Communicate in {communication_language} throughout the workflow creation process</critical>
<workflow>
<step n="-1" goal="Optional brainstorming phase" optional="true">
<ask>Do you want to brainstorm workflow ideas first? [y/n]</ask>
<action if="user_response == 'y' or user_response == 'yes'">
Invoke brainstorming workflow to explore ideas and design concepts:
- Workflow: {project-root}/bmad/core/workflows/brainstorming/workflow.yaml
- Context data: {installed_path}/brainstorm-context.md
- Purpose: Generate creative workflow ideas, explore different approaches, and clarify requirements
The brainstorming output will inform:
- Workflow purpose and goals
- Workflow type selection
- Step design and structure
- User experience considerations
- Technical requirements
</action>
<action if="user_response == 'n' or user_response == 'no'">
Skip brainstorming and proceed directly to workflow building process.
</action>
</step>
<step n="0" goal="Load and understand workflow conventions">
<action>Load the complete workflow creation guide from: {workflow_creation_guide}</action>
<action>Study all sections thoroughly including:
- Core concepts (tasks vs workflows, workflow types)
- Workflow structure (required/optional files, patterns)
- Writing instructions (step attributes, XML tags, flow control)
- Templates and variables (syntax, naming, sources)
- Validation best practices
- Common pitfalls to avoid
</action>
<action>Load template files from: {workflow_template_path}/</action>
<critical>You must follow ALL conventions from the guide to ensure optimal human-AI collaboration</critical>
</step>
<step n="1" goal="Define workflow purpose and type">
Ask the user:
- What is the workflow name? (kebab-case, e.g., "product-brief")
- What module will it belong to? (e.g., "bmm", "bmb", "cis")
- Store as {{target_module}} for output path determination
- What is the workflow's main purpose?
- What type of workflow is this?
- Document workflow (generates documents like PRDs, specs)
- Action workflow (performs actions like refactoring)
- Interactive workflow (guided sessions)
- Autonomous workflow (runs without user input)
- Meta-workflow (coordinates other workflows)
Based on type, determine which files are needed:
- Document: workflow.yaml + template.md + instructions.md + checklist.md
- Action: workflow.yaml + instructions.md
- Others: Varies based on requirements
<critical>Determine output location based on module assignment:</critical>
- If workflow belongs to module: Save to {module_output_folder}
- If standalone workflow: Save to {standalone_output_folder}
Store decisions for later use.
</step>
<step n="2" goal="Gather workflow metadata">
Collect essential configuration details:
- Description (clear purpose statement)
- Author name (default to user_name or "BMad")
- Output file naming pattern
- Any required input documents
- Any required tools or dependencies
Create the workflow name in kebab-case and verify it doesn't conflict with existing workflows.
</step>
<step n="3" goal="Design workflow steps">
Work with user to outline the workflow steps:
- How many major steps? (Recommend 5-10 max)
- What is the goal of each step?
- Which steps are optional?
- Which steps need user input?
- Which steps should repeat?
- What variables/outputs does each step produce?
<ask>What instruction style should this workflow favor?
**1. Intent-Based (Recommended)** - Guide the LLM with goals and principles, let it adapt conversations naturally
- More flexible and conversational
- LLM chooses appropriate questions based on context
- Better for complex discovery and iterative refinement
- Example: `<action>Guide user to define their target audience with specific demographics and needs</action>`
**2. Prescriptive** - Provide exact wording for questions and options
- More controlled and predictable
- Ensures consistency across runs
- Better for simple data collection or specific compliance needs
- Example: `<ask>What is your target platform? Choose: PC, Console, Mobile, Web</ask>`
Note: Your choice will be the _primary_ style, but we'll use the other when it makes more sense for specific steps.</ask>
<action>Store instruction_style preference (intent-based or prescriptive)</action>
<action>Explain that both styles have value and will be mixed appropriately</action>
Create a step outline with clear goals and outputs.
</step>
<step n="4" goal="Create workflow.yaml">
Load and use the template at: {template_workflow_yaml}
Replace all placeholders following the workflow creation guide conventions:
- {TITLE} → Proper case workflow name
- {WORKFLOW_CODE} → kebab-case name
- {WORKFLOW_DESCRIPTION} → Clear description
- {module-code} → Target module
- {file.md} → Output filename pattern
Include:
- All metadata from steps 1-2
- Proper paths for installed_path using variable substitution
- Template/instructions/validation paths based on workflow type:
- Document workflow: all files (template, instructions, validation)
- Action workflow: instructions only (template: false)
- Autonomous: set autonomous: true flag
- Required tools if any
- Recommended inputs if any
<critical>ALWAYS include the standard config block:</critical>
```yaml
# Critical variables from config
config_source: '{project-root}/bmad/{{target_module}}/config.yaml'
output_folder: '{config_source}:output_folder'
user_name: '{config_source}:user_name'
communication_language: '{config_source}:communication_language'
date: system-generated
```
<critical>This standard config ensures workflows can run autonomously and communicate properly with users</critical>
Follow path conventions from guide:
- Use {project-root} for absolute paths
- Use {installed_path} for workflow components
- Use {config_source} for config references
<critical>Determine save location:</critical>
- Use the output folder determined in Step 1 (module or standalone)
- Write to {{output_folder}}/workflow.yaml
</step>
<step n="5" goal="Create instructions.md" if="workflow_type != 'template-only'">
Load and use the template at: {template_instructions}
Generate the instructions.md file following the workflow creation guide:
1. ALWAYS include critical headers:
- Workflow engine reference: {project-root}/bmad/core/tasks/workflow.xml
- workflow.yaml reference: must be loaded and processed
2. Structure with <workflow> tags containing all steps
3. For each step from design phase, follow guide conventions:
- Step attributes: n="X" goal="clear goal statement"
- Optional steps: optional="true"
- Repeating: repeat="3" or repeat="for-each-X" or repeat="until-approved"
- Conditional: if="condition"
- Sub-steps: Use 3a, 3b notation
4. Use proper XML tags from guide:
- Execution: <action>, <check>, <ask>, <goto>, <invoke-workflow>
- Output: <template-output>, <invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>, <critical>, <example>
- Flow: <loop>, <break>, <continue>
5. Best practices from guide:
- Keep steps focused (single goal)
- Be specific ("Write 1-2 paragraphs" not "Write about")
- Provide examples where helpful
- Set limits ("3-5 items maximum")
- Save checkpoints with <template-output>
<critical>Standard config variable usage:</critical>
Instructions MUST use the standard config variables where appropriate:
- Communicate in {communication_language} throughout the workflow
- Address user as {user_name} in greetings and summaries
- Write all output files to {output_folder} or subdirectories
- Include {date} in generated document headers
Example usage in instructions:
```xml
<action>Write document to {output_folder}/output-file.md</action>
<critical>Communicate all responses in {communication_language}</critical>
<output>Hello {user_name}, the workflow is complete!</output>
```
<critical>Applying instruction style preference:</critical>
Based on the {{instruction_style}} preference from Step 3, generate instructions using these patterns:
**Intent-Based Instructions (Recommended for most workflows):**
Focus on goals, principles, and desired outcomes. Let the LLM adapt the conversation naturally.
**Good Examples:**
```xml
<!-- Discovery and exploration -->
<action>Guide user to define their target audience with specific demographics, psychographics, and behavioral characteristics</action>
<action>Explore the user's vision for the product, asking probing questions to uncover core motivations and success criteria</action>
<action>Help user identify and prioritize key features based on user value and technical feasibility</action>
<!-- Validation and refinement -->
<action>Validate that the technical approach aligns with project constraints and team capabilities</action>
<action>Challenge assumptions about user needs and market fit with thought-provoking questions</action>
<!-- Complex iterative work -->
<action>Collaborate with user to refine the architecture, iterating until they're satisfied with the design</action>
```
**Avoid (too prescriptive):**
```xml
<ask>What is your target audience age range? Choose: 18-24, 25-34, 35-44, 45+</ask>
<ask>List exactly 3 key features in priority order</ask>
```
**When to use Intent-Based:**
- Complex discovery processes (user research, requirements gathering)
- Creative brainstorming and ideation
- Iterative refinement workflows
- When user input quality matters more than consistency
- Workflows requiring adaptation to context
**Prescriptive Instructions (Use selectively):**
Provide exact wording, specific options, and controlled interactions.
**Good Examples:**
```xml
<!-- Simple data collection -->
<ask>What is your target platform? Choose: PC, Console, Mobile, Web</ask>
<ask>Select monetization model: Premium, Free-to-Play, Subscription, Ad-Supported</ask>
<!-- Compliance and standards -->
<ask>Does this comply with GDPR requirements? [yes/no]</ask>
<ask>Choose documentation standard: JSDoc, TypeDoc, TSDoc</ask>
<!-- Binary decisions -->
<ask>Do you want to generate test cases? [yes/no]</ask>
<ask>Include performance benchmarks? [yes/no]</ask>
```
**Avoid (too rigid for complex tasks):**
```xml
<ask>What are your product goals? List exactly 5 goals, each 10-15 words</ask>
<ask>Describe your user persona in exactly 3 sentences</ask>
```
**When to use Prescriptive:**
- Simple data collection (platform, format, yes/no choices)
- Compliance verification and standards adherence
- Configuration with finite options
- When consistency is critical across all executions
- Quick setup wizards
**Mixing Both Styles (Best Practice):**
Even if user chose a primary style, use the other when appropriate:
```xml
<!-- Intent-based workflow with prescriptive moments -->
<step n="1" goal="Understand user vision">
<action>Explore the user's vision for their game, uncovering their creative intent and target experience</action>
<action>Ask probing questions about genre, themes, and emotional tone they want to convey</action>
</step>
<step n="2" goal="Capture basic metadata">
<ask>What is your target platform? Choose: PC, Console, Mobile, Web</ask> <!-- Prescriptive for simple choice -->
<ask>Select primary genre: Action, RPG, Strategy, Puzzle, Simulation, Other</ask>
</step>
<step n="3" goal="Deep dive into gameplay">
<action>Guide user to articulate their core gameplay loop, exploring mechanics and player agency</action> <!-- Back to intent-based -->
<action>Help them identify what makes their game unique and compelling</action>
</step>
```
**Guidelines for the chosen style:**
If user chose **Intent-Based**:
- Default to goal-oriented <action> tags
- Use open-ended guidance language
- Save prescriptive <ask> tags for simple data/choices
- Focus on "guide", "explore", "help user", "validate"
- Allow LLM to adapt questions to user responses
If user chose **Prescriptive**:
- Default to explicit <ask> tags with clear options
- Use precise wording for consistency
- Save intent-based <action> tags for complex discovery
- Focus on "choose", "select", "specify", "confirm"
- Provide structured choices when possible
**Remember:** The goal is optimal human-AI collaboration. Use whichever style best serves the user at each step.
<critical>Save location:</critical>
- Write to {{output_folder}}/instructions.md
</step>
<step n="6" goal="Create template.md" if="workflow_type == 'document'">
Load and use the template at: {template_template}
Generate the template.md file following guide conventions:
1. Document structure with clear sections
2. Variable syntax: {{variable_name}} using snake_case
3. Variable names MUST match <template-output> tags exactly from instructions
4. Include standard metadata header (optional - config variables available):
```markdown
# Document Title
**Date:** {{date}}
**Author:** {{user_name}}
```
Note: {{date}} and {{user_name}} are optional in headers. Primary purpose of these variables:
- {{date}} - Gives agent current date awareness (not confused with training cutoff)
- {{user_name}} - Optional author attribution
- {{communication_language}} - NOT for document output! Tells agent how to communicate during execution
5. Follow naming conventions from guide:
- Use descriptive names: {{primary_user_journey}} not {{puj}}
- Snake_case for all variables
- Match instruction outputs precisely
Variable sources as per guide:
- workflow.yaml config values (user_name, communication_language, date, output_folder)
- User input runtime values
- Step outputs via <template-output>
- System variables (date, paths)
<critical>Standard config variables in templates:</critical>
Templates CAN optionally use these config variables:
- {{user_name}} - Document author (optional)
- {{date}} - Generation date (optional)
IMPORTANT: {{communication_language}} is NOT for document headers!
- Purpose: Tells agent how to communicate with user during workflow execution
- NOT for: Document output language or template headers
- Future: {{document_output_language}} will handle multilingual document generation
These variables are automatically available from workflow.yaml config block.
<critical>Save location:</critical>
- Write to {{output_folder}}/template.md
</step>
<step n="7" goal="Create validation checklist" optional="true">
Ask if user wants a validation checklist. If yes:
Load and use the template at: {template_checklist}
Create checklist.md following guide best practices:
1. Make criteria MEASURABLE and SPECIFIC
❌ "- [ ] Good documentation"
✅ "- [ ] Each function has JSDoc comments with parameters and return types"
2. Group checks logically:
- Structure: All sections present, no placeholders, proper formatting
- Content Quality: Clear and specific, technically accurate, consistent terminology
- Completeness: Ready for next phase, dependencies documented, action items defined
3. Include workflow-specific validations based on type:
- Document workflows: Template variables mapped, sections complete
- Action workflows: Actions clearly defined, error handling specified
- Interactive: User prompts clear, decision points documented
4. Add final validation section with issue lists
<critical>Save location:</critical>
- Write to {{output_folder}}/checklist.md
</step>
<step n="8" goal="Create supporting files" optional="true">
Ask if any supporting data files are needed:
- CSV files with data
- Example documents
- Reference materials
If yes, create placeholder files or copy from templates.
</step>
<step n="9" goal="Test and validate workflow">
Review the created workflow:
**Basic Validation:**
1. Verify all file paths are correct
2. Check variable names match between files
3. Ensure step numbering is sequential
4. Validate YAML syntax
5. Confirm all placeholders are replaced
**Standard Config Validation:** 6. Verify workflow.yaml contains standard config block:
- config_source defined
- output_folder, user_name, communication_language pulled from config
- date set to system-generated
7. Check instructions use config variables where appropriate
8. Verify template includes config variables in metadata (if document workflow)
**YAML/Instruction/Template Alignment:** 9. Cross-check all workflow.yaml variables against instruction usage:
- Are all yaml variables referenced in instructions.md OR template.md?
- Are there hardcoded values that should be variables?
- Do template variables match <template-output> tags in instructions?
10. Identify any unused yaml fields (bloat detection)
Show user a summary of created files and their locations.
Ask if they want to:
- Test run the workflow
- Make any adjustments
- Add additional steps or features
</step>
<step n="9b" goal="Configure web bundle (optional)">
<ask>Will this workflow need to be deployable as a web bundle? [yes/no]</ask>
If yes:
<action>Explain web bundle requirements:</action>
- Web bundles are self-contained and cannot use config_source variables
- All files must be explicitly listed in web_bundle_files
- File paths use bmad/ root (not {project-root})
<action>Configure web_bundle section in workflow.yaml:</action>
1. Copy core workflow metadata (name, description, author)
2. Convert all file paths to bmad/-relative paths:
- Remove {project-root}/ prefix
- Remove {config_source} references (use hardcoded values)
- Example: "{project-root}/bmad/bmm/workflows/x" → "bmad/bmm/workflows/x"
3. List ALL referenced files by scanning:
**Scan instructions.md for:**
- File paths in <action> tags
- Data files (CSV, JSON, YAML, etc.)
- Validation/checklist files
- Any <invoke-workflow> calls → must include that workflow's yaml file
- Any <goto> tags that reference other workflows
- Shared templates or includes
**Scan template.md for:**
- Any includes or references to other files
- Shared template fragments
**Critical: Workflow Dependencies**
- If instructions call another workflow, that workflow's yaml MUST be in web_bundle_files
- Example: `<invoke-workflow>{project-root}/bmad/core/workflows/x/workflow.yaml</invoke-workflow>`
→ Add "bmad/core/workflows/x/workflow.yaml" to web_bundle_files
4. Create web_bundle_files array with complete list
Example:
```yaml
web_bundle:
name: '{workflow_name}'
description: '{workflow_description}'
author: '{author}'
instructions: 'bmad/{module}/workflows/{workflow}/instructions.md'
validation: 'bmad/{module}/workflows/{workflow}/checklist.md'
template: 'bmad/{module}/workflows/{workflow}/template.md'
# Any data files (no config_source)
data_file: 'bmad/{module}/workflows/{workflow}/data.csv'
web_bundle_files:
- 'bmad/{module}/workflows/{workflow}/instructions.md'
- 'bmad/{module}/workflows/{workflow}/checklist.md'
- 'bmad/{module}/workflows/{workflow}/template.md'
- 'bmad/{module}/workflows/{workflow}/data.csv'
# Add every single file referenced anywhere
# CRITICAL: If this workflow invokes other workflows, use existing_workflows
# This signals the bundler to recursively include those workflows' web_bundles
existing_workflows:
- workflow_variable_name: 'bmad/path/to/workflow.yaml'
```
**Example with existing_workflows:**
```yaml
web_bundle:
name: 'brainstorm-game'
description: 'Game brainstorming with CIS workflow'
author: 'BMad'
instructions: 'bmad/bmm/workflows/brainstorm-game/instructions.md'
template: false
web_bundle_files:
- 'bmad/bmm/workflows/brainstorm-game/instructions.md'
- 'bmad/mmm/workflows/brainstorm-game/game-context.md'
- 'bmad/core/workflows/brainstorming/workflow.yaml'
existing_workflows:
- core_brainstorming: 'bmad/core/workflows/brainstorming/workflow.yaml'
```
**What existing_workflows does:**
- Tells the bundler this workflow invokes another workflow
- Bundler recursively includes the invoked workflow's entire web_bundle
- Essential for meta-workflows that orchestrate other workflows
- Maps workflow variable names to their bmad/-relative paths
<action>Validate web bundle completeness:</action>
- Ensure no {config_source} variables remain
- Verify all file paths are listed
- Check that paths are bmad/-relative
- If workflow uses <invoke-workflow>, add to existing_workflows
<template-output>web_bundle_config</template-output>
</step>
<step n="10" goal="Document and finalize">
<action>Create a brief README for the workflow folder explaining purpose, how to invoke, expected inputs, generated outputs, and any special requirements</action>
<action>Provide {user_name} with workflow completion summary in {communication_language}:</action>
- Location of created workflow: {{output_folder}}
- Command to run it: `workflow {workflow_name}`
- Next steps:
- Run the BMAD Method installer to this project location
- Select 'Compile Agents (Quick rebuild of all agent .md files)' after confirming the folder
- This will compile the new workflow and make it available for use
</step>
</workflow>

View File

@@ -1,615 +0,0 @@
# BMAD Workflow Creation Guide
Create structured, repeatable workflows for human-AI collaboration in BMAD v6.
## Table of Contents
1. [Quick Start](#quick-start)
2. [Core Concepts](#core-concepts)
3. [Workflow Structure](#workflow-structure)
4. [Writing Instructions](#writing-instructions)
5. [Templates and Variables](#templates--variables)
6. [Flow Control](#flow-control)
7. [Validation](#validation)
8. [Examples](#examples)
9. [Best Practices](#best-practices)
10. [Troubleshooting](#troubleshooting)
## Quick Start
### Minimal Workflow (3 minutes)
Create a folder with these files:
```yaml
# workflow.yaml (REQUIRED)
name: 'my-workflow'
description: 'What this workflow does'
installed_path: '{project-root}/bmad/module/workflows/my-workflow'
template: '{installed_path}/template.md'
instructions: '{installed_path}/instructions.md'
default_output_file: '{output_folder}/output.md'
```
```markdown
# template.md
# {{project_name}} Output
{{main_content}}
```
```markdown
# instructions.md
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: workflow.yaml</critical>
<workflow>
<step n="1" goal="Generate content">
Create the main content for this document.
<template-output>main_content</template-output>
</step>
</workflow>
```
That's it! To execute, tell the BMAD agent: `workflow my-workflow`
## Core Concepts
### Tasks vs Workflows
| Aspect | Task | Workflow |
| -------------- | ------------------ | ----------------------- |
| **Purpose** | Single operation | Multi-step process |
| **Format** | XML in `.md` file | Folder with YAML config |
| **Location** | `/src/core/tasks/` | `/bmad/*/workflows/` |
| **User Input** | Minimal | Extensive |
| **Output** | Variable | Usually documents |
### Workflow Types
1. **Document Workflows** - Generate PRDs, specs, architectures
2. **Action Workflows** - Refactor code, run tools, orchestrate tasks
3. **Interactive Workflows** - Brainstorming, meditations, guided sessions
4. **Autonomous Workflows** - Run without human input (story generation)
5. **Meta-Workflows** - Coordinate other workflows
## Workflow Structure
### Required Files
```
my-workflow/
└── workflow.yaml # REQUIRED - Configuration
```
### Optional Files
```
my-workflow/
├── template.md # Document structure
├── instructions.md # Step-by-step guide
├── checklist.md # Validation criteria
└── [data files] # Supporting resources
```
### workflow.yaml Configuration
```yaml
# Basic metadata
name: 'workflow-name'
description: 'Clear purpose statement'
# Paths
installed_path: '{project-root}/bmad/module/workflows/name'
template: '{installed_path}/template.md' # or false
instructions: '{installed_path}/instructions.md' # or false
validation: '{installed_path}/checklist.md' # optional
# Output
default_output_file: '{output_folder}/document.md'
# Advanced options
autonomous: true # Skip user checkpoints
recommended_inputs: # Expected input docs
- input_doc: 'path/to/doc.md'
```
### Common Patterns
**Full Document Workflow** (most common)
- Has: All 4 files
- Use for: PRDs, architectures, specs
**Action Workflow** (no template)
- Has: workflow.yaml + instructions.md
- Use for: Refactoring, tool orchestration
**Autonomous Workflow** (no interaction)
- Has: workflow.yaml + template + instructions
- Use for: Automated generation
## Writing Instructions
### Basic Structure
```markdown
# instructions.md
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: workflow.yaml</critical>
<workflow>
<step n="1" goal="Clear goal statement">
Instructions for this step.
<template-output>variable_name</template-output>
</step>
<step n="2" goal="Next goal" optional="true">
Optional step instructions.
<template-output>another_variable</template-output>
</step>
</workflow>
```
### Step Attributes
- `n="X"` - Step number (required)
- `goal="..."` - What the step accomplishes (required)
- `optional="true"` - User can skip
- `repeat="3"` - Repeat N times
- `if="condition"` - Conditional execution
### Content Formats
**Markdown Format** (human-friendly):
```xml
<step n="1" goal="Define goals">
Write 1-3 bullet points about project success:
- User outcomes
- Business value
- Measurable results
<template-output>goals</template-output>
</step>
```
**XML Format** (precise control):
```xml
<step n="2" goal="Validate input">
<action>Load validation criteria</action>
<check if="validation fails">
<goto step="1">Return to previous step</goto>
</check>
<template-output>validated_data</template-output>
</step>
```
## Templates and Variables
### Variable Syntax
```markdown
# template.md
# {{project_name}} Document
## Section
{{section_content}}
_Generated on {{date}}_
```
### Variable Sources
1. **workflow.yaml** - Config values
2. **User input** - Runtime values
3. **Step outputs** - `<template-output>` tags
4. **System** - Date, paths, etc.
### Naming Convention
- Use snake_case: `{{user_requirements}}`
- Be descriptive: `{{primary_user_journey}}` not `{{puj}}`
## Flow Control
### Sub-Steps
```xml
<step n="3" goal="Process items">
<step n="3a" title="Gather data">
<action>Collect information</action>
</step>
<step n="3b" title="Analyze">
<action>Process collected data</action>
<template-output>analysis</template-output>
</step>
</step>
```
### Repetition
```xml
<!-- Fixed repetitions -->
<step n="4" repeat="3">
<action>Generate example {{iteration}}</action>
</step>
<!-- Conditional repetition -->
<step n="5" repeat="until-approved">
<action>Generate content</action>
<ask>Satisfactory? (y/n)</ask>
</step>
<!-- For-each repetition -->
<step n="6" repeat="for-each-epic">
<action>Define epic {{epic_name}}</action>
</step>
```
### Conditional Execution
**Single Action (use `action if=""`):**
```xml
<step n="6" goal="Load context">
<action if="file exists">Load existing document</action>
<action if="new project">Initialize from template</action>
</step>
```
**Multiple Actions (use `<check if="">...</check>`):**
```xml
<step n="7" goal="Validate">
<action>Check requirements</action>
<check if="incomplete">
<action>Log validation errors</action>
<goto step="2">Return to gathering</goto>
</check>
<check if="complete">
<action>Mark as validated</action>
<continue>Proceed</continue>
</check>
</step>
```
**When to use which:**
- **`<action if="">`** - Single conditional action (cleaner, more concise)
- **`<check if="">...</check>`** - Multiple items under same condition (explicit scope)
### Loops
```xml
<step n="8" goal="Refine">
<loop max="5">
<action>Generate solution</action>
<check if="criteria met">
<break>Exit loop</break>
</check>
</loop>
</step>
```
### Common XML Tags
**Execution:**
- `<action>` - Required action
- `<action if="condition">` - Single conditional action (inline)
- `<check if="condition">...</check>` - Conditional block for multiple items (requires closing tag)
- `<ask>` - User prompt
- `<goto>` - Jump to step
- `<invoke-workflow>` - Call another workflow
**Output:**
- `<template-output>` - Save checkpoint
- `<invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>` - Trigger AI enhancement
- `<critical>` - Important info
- `<example>` - Show example
## Validation
### checklist.md Structure
```markdown
# Validation Checklist
## Structure
- [ ] All sections present
- [ ] No placeholders remain
- [ ] Proper formatting
## Content Quality
- [ ] Clear and specific
- [ ] Technically accurate
- [ ] Consistent terminology
## Completeness
- [ ] Ready for next phase
- [ ] Dependencies documented
- [ ] Action items defined
```
### Making Criteria Measurable
`- [ ] Good documentation`
`- [ ] Each function has JSDoc comments with parameters and return types`
## Examples
### Document Generation
```xml
<workflow>
<step n="1" goal="Gather context">
Load existing documents and understand project scope.
<template-output>context</template-output>
</step>
<step n="2" goal="Define requirements">
Create functional and non-functional requirements.
<template-output>requirements</template-output>
<invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>
</step>
<step n="3" goal="Validate">
Check requirements against goals.
<template-output>validated_requirements</template-output>
</step>
</workflow>
```
### Action Workflow
```xml
<workflow>
<step n="1" goal="Analyze codebase">
<action>Find all API endpoints</action>
<action>Identify patterns</action>
</step>
<step n="2" goal="Refactor">
<repeat for-each="endpoint">
<action>Update to new pattern</action>
</repeat>
</step>
<step n="3" goal="Verify">
<action>Run tests</action>
<check if="tests fail">
<goto step="2">Fix issues</goto>
</check>
</step>
</workflow>
```
### Meta-Workflow
```xml
<workflow name="greenfield-app">
<step n="1" goal="Discovery">
<invoke-workflow>product-brief</invoke-workflow>
<template-output>brief</template-output>
</step>
<step n="2" goal="Requirements">
<invoke-workflow input="{{brief}}">prd</invoke-workflow>
<template-output>prd</template-output>
</step>
<step n="3" goal="Architecture">
<invoke-workflow input="{{prd}}">architecture</invoke-workflow>
<template-output>architecture</template-output>
</step>
</workflow>
```
## Best Practices
### Design Principles
1. **Keep steps focused** - Single goal per step
2. **Limit scope** - 5-10 steps maximum
3. **Build progressively** - Start simple, add detail
4. **Checkpoint often** - Save after major sections
5. **Make sections optional** - Let users skip when appropriate
### Instruction Guidelines
1. **Be specific** - "Write 1-2 paragraphs" not "Write about"
2. **Provide examples** - Show expected output format
3. **Set limits** - "3-5 items maximum"
4. **Explain why** - Context helps AI make better decisions
### Conditional Execution Best Practices
**✅ DO:**
- Use `<action if="">` for single conditional actions
- Use `<check if="">...</check>` for blocks with multiple items
- Always close `<check>` tags explicitly
- Keep conditions simple and readable
**❌ DON'T:**
- Wrap single actions in `<check>` blocks (unnecessarily verbose)
- Forget to close `<check>` tags
- Nest too many levels (makes logic hard to follow)
**Examples:**
```xml
<!-- ✅ Good: Single action -->
<action if="file exists">Load configuration</action>
<!-- ❌ Avoid: Unnecessary wrapper for single action -->
<check if="file exists">
<action>Load configuration</action>
</check>
<!-- ✅ Good: Multiple actions in block -->
<check if="validation fails">
<action>Log error details</action>
<action>Notify user</action>
<goto step="1">Retry input</goto>
</check>
```
### Common Pitfalls
- **Missing critical headers** - Always include workflow engine references
- **Variables not replaced** - Ensure names match exactly
- **Too many steps** - Combine related actions
- **No checkpoints** - Add `<template-output>` tags
- **Vague instructions** - Be explicit about expectations
- **Unclosed check tags** - Always close `<check if="">...</check>` blocks
- **Wrong conditional pattern** - Use `<action if="">` for single items, `<check if="">` for blocks
## Web Bundles
Web bundles allow workflows to be deployed as self-contained packages for web environments.
### When to Use Web Bundles
- Deploying workflows to web-based AI platforms
- Creating shareable workflow packages
- Ensuring workflow portability without dependencies
- Publishing workflows for public use
### Web Bundle Requirements
1. **Self-Contained**: No external dependencies
2. **No Config Variables**: Cannot use `{config_source}` references
3. **Complete File List**: Every referenced file must be listed
4. **Relative Paths**: Use `bmad/` root paths (no `{project-root}`)
### Creating a Web Bundle
Add this section to your workflow.yaml:
```yaml
web_bundle:
name: 'workflow-name'
description: 'Workflow description'
author: 'Your Name'
# Core files (bmad/-relative paths)
instructions: 'bmad/module/workflows/workflow/instructions.md'
validation: 'bmad/module/workflows/workflow/checklist.md'
template: 'bmad/module/workflows/workflow/template.md'
# Data files (no config_source allowed)
data_file: 'bmad/module/workflows/workflow/data.csv'
# Complete file list - CRITICAL!
web_bundle_files:
- 'bmad/module/workflows/workflow/instructions.md'
- 'bmad/module/workflows/workflow/checklist.md'
- 'bmad/module/workflows/workflow/template.md'
- 'bmad/module/workflows/workflow/data.csv'
# Include ALL referenced files
```
### Converting Existing Workflows
1. **Remove Config Dependencies**:
- Replace `{config_source}:variable` with hardcoded values
- Convert `{project-root}/bmad/` to `bmad/`
2. **Inventory All Files**:
- Scan instructions.md for file references
- Check template.md for includes
- List all data files
3. **Test Completeness**:
- Ensure no missing file references
- Verify all paths are relative to bmad/
### Example: Complete Web Bundle
```yaml
web_bundle:
name: 'analyze-requirements'
description: 'Requirements analysis workflow'
author: 'BMad Team'
instructions: 'bmad/bmm/workflows/analyze-requirements/instructions.md'
validation: 'bmad/bmm/workflows/analyze-requirements/checklist.md'
template: 'bmad/bmm/workflows/analyze-requirements/template.md'
# Data files
techniques_data: 'bmad/bmm/workflows/analyze-requirements/techniques.csv'
patterns_data: 'bmad/bmm/workflows/analyze-requirements/patterns.json'
# Sub-workflow reference
validation_workflow: 'bmad/bmm/workflows/validate-requirements/workflow.yaml'
web_bundle_files:
# Core workflow files
- 'bmad/bmm/workflows/analyze-requirements/instructions.md'
- 'bmad/bmm/workflows/analyze-requirements/checklist.md'
- 'bmad/bmm/workflows/analyze-requirements/template.md'
# Data files
- 'bmad/bmm/workflows/analyze-requirements/techniques.csv'
- 'bmad/bmm/workflows/analyze-requirements/patterns.json'
# Sub-workflow and its files
- 'bmad/bmm/workflows/validate-requirements/workflow.yaml'
- 'bmad/bmm/workflows/validate-requirements/instructions.md'
- 'bmad/bmm/workflows/validate-requirements/checklist.md'
# Shared templates referenced in instructions
- 'bmad/bmm/templates/requirement-item.md'
- 'bmad/bmm/templates/validation-criteria.md'
```
## Troubleshooting
### Variables Not Replaced
- Check exact name match
- Verify `<template-output>` tag present
- Ensure step generates the variable
### Validation Fails
- Review checklist specificity
- Check for impossible requirements
- Verify checklist matches template
### Workflow Too Long
- Combine related steps
- Make sections optional
- Reduce elicitation points
### User Confusion
- Add clearer step goals
- Provide more examples
- Explain section purpose
---
_For implementation details, see:_
- `/src/core/tasks/workflow.xml` - Execution engine
- `/bmad/bmm/workflows/` - Production examples

View File

@@ -1,24 +0,0 @@
# {Title} Checklist Validation
## {Section Foo}
- [ ] Check 1
- [ ] Check 2
- [ ] ...
- [ ] Check n
...
## {Section Bar}
- [ ] Check 1
- [ ] Check 2
- [ ] ...
- [ ] Check n
## Final Validation
- [ ] Section Foo
- Issue List
- [ ] Section Bar
- Issue List

View File

@@ -1,13 +0,0 @@
# PRD Workflow Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-related}/bmad/{module-code}/workflows/{workflow}/workflow.yaml</critical>
<critical>Communicate in {communication_language} throughout the workflow process</critical>
<workflow>
<step n="1" goal="">
...
</step>
...
</workflow>

View File

@@ -1,9 +0,0 @@
# Title
**Date:** {{date}}
## {Section 1}
{{section_1_results}}
etc...

View File

@@ -1,39 +0,0 @@
# {TITLE} Workflow Template Configuration
name: "{WORKFLOW_CODE}"
description: "{WORKFLOW_DESCRIPTION}"
author: "BMad"
# Critical variables load from config_source
# Add Additional Config Pulled Variables Here
config_source: "{project-root}/{module-code}/config.yaml"
output_folder: "{config_source}:output_folder"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
date: system-generated
# Required Data Files - HALT if missing!
# optional, can be omitted
brain_techniques: "{installed_path}/{critical-data-file.csv}" # example, can be other formats or URLs
# Optional docs that if loaded on start to kickstart this workflow or used at some point, these are meant to be suggested inputs for the user
recommended_inputs: # optional, can be omitted
- example_input: "{project-root}/{path/to/file.md}"
# Module path and component files
installed_path: "{project-root}/bmad/{module-code}/workflows/{workflow-code}"
template: "{installed_path}/template.md" # optional, can be omitted
instructions: "{installed_path}/instructions.md" # optional, can be omitted
validation: "{installed_path}/checklist.md" # optional, can be omitted
# Output configuration
default_output_file: "{output_folder}/{file.md}" # optional, can be omitted
validation_output_file: "{output_folder}/{file-validation-report.md}" # optional, can be omitted
# Tool Requirements (MCP Required Tools or other tools needed to run this workflow)
required_tools: #optional, can be omitted
- "Tool Name": #example, can be omitted if none
description: "Description of why this tool is needed"
link: "https://link-to-tool.com"
# Web Bundle Configuration (optional - for web-deployable workflows)
# IMPORTANT: Web bundles are self-contained and cannot use config_source variables
# All referenced files must be listed in web_bundle_files

View File

@@ -1,38 +0,0 @@
# Build Workflow - Workflow Builder Configuration
name: create-workflow
description: "Interactive workflow builder that guides creation of new BMAD workflows with proper structure and validation for optimal human-AI collaboration. Includes optional brainstorming phase for workflow ideas and design."
author: "BMad Builder"
# Critical variables
config_source: "{project-root}/bmad/bmb/config.yaml"
custom_workflow_location: "{config_source}:custom_workflow_location"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
# Template files for new workflows
template_workflow_yaml: "{workflow_template_path}/workflow.yaml"
template_instructions: "{workflow_template_path}/instructions.md"
template_template: "{workflow_template_path}/template.md"
template_checklist: "{workflow_template_path}/checklist.md"
# Optional input docs
recommended_inputs:
- existing_workflows: "{project-root}/bmad/*/workflows/"
- bmm_workflows: "{project-root}/bmad/bmm/workflows/"
# Module path and component files
installed_path: "{project-root}/bmad/bmb/workflows/create-workflow"
template: false # This is an action workflow - no template needed
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# Required data files - CRITICAL for workflow conventions
workflow_creation_guide: "{installed_path}/workflow-creation-guide.md"
workflow_template_path: "{installed_path}/workflow-template"
# Output configuration - Creates the new workflow folder with all files
# If workflow belongs to a module: Save to module's workflows folder
# If standalone workflow: Save to custom_workflow_location/{{workflow_name}}
module_output_folder: "{project-root}/bmad/{{target_module}}/workflows/{{workflow_name}}"
standalone_output_folder: "{custom_workflow_location}/{{workflow_name}}"
# Web bundle configuration

View File

@@ -1,119 +0,0 @@
# Edit Workflow
## Purpose
An intelligent workflow editor that helps you modify existing BMAD workflows while adhering to all best practices and conventions documented in the workflow creation guide.
## Use Case
When you need to:
- Fix issues in existing workflows
- Update workflow configuration or metadata
- Improve instruction clarity and specificity
- Add new features or capabilities
- Ensure compliance with BMAD workflow conventions
## How to Invoke
```
workflow edit-workflow
```
Or through a BMAD agent:
```
*edit-workflow
```
## Expected Inputs
- **Target workflow path**: Path to the workflow.yaml file or workflow folder you want to edit
- **Edit type selection**: Choice of what aspect to modify
- **User approval**: For each proposed change
## Generated Outputs
- Modified workflow files (in place)
- Optional change log at: `{output_folder}/workflow-edit-log-{date}.md`
## Features
1. **Comprehensive Analysis**: Checks workflows against the official creation guide
2. **Prioritized Issues**: Identifies and ranks issues by importance
3. **Guided Editing**: Step-by-step process with explanations
4. **Best Practices**: Ensures all edits follow BMAD conventions
5. **Instruction Style Optimization**: Convert between intent-based and prescriptive styles
6. **Validation**: Checks all changes for correctness
7. **Change Tracking**: Documents what was modified and why
## Understanding Instruction Styles
When editing workflows, one powerful option is **adjusting the instruction style** to better match the workflow's purpose.
### Intent-Based vs Prescriptive Instructions
**Intent-Based (Recommended for most workflows)**
Guides the AI with goals and principles, allowing flexible conversation.
- **More flexible and conversational** - AI adapts to user responses
- **Better for complex discovery** - Requirements gathering, creative exploration
- **Quality over consistency** - Deep understanding matters more
- **Example**: `<action>Guide user to define their target audience with specific demographics and needs</action>`
**When to use:**
- Complex discovery processes (user research, requirements)
- Creative brainstorming and ideation
- Iterative refinement workflows
- Workflows requiring nuanced understanding
**Prescriptive**
Provides exact questions with structured options.
- **More controlled and predictable** - Consistent questions every time
- **Better for simple data collection** - Platform, format, yes/no choices
- **Consistency over quality** - Same execution every run
- **Example**: `<ask>What is your target platform? Choose: PC, Console, Mobile, Web</ask>`
**When to use:**
- Simple data collection (platform, format, binary choices)
- Compliance verification and standards adherence
- Configuration with finite options
- Quick setup wizards
### Edit Workflow's Style Adjustment Feature
The **"Adjust instruction style"** editing option (menu option 11) helps you:
1. **Analyze current style** - Identifies whether workflow is primarily intent-based or prescriptive
2. **Convert between styles** - Transform prescriptive steps to intent-based (or vice versa)
3. **Optimize the mix** - Intelligently recommend the best style for each step
4. **Step-by-step control** - Review and decide on each step individually
**Common scenarios:**
- **Make workflow more conversational**: Convert rigid <ask> tags to flexible <action> tags for complex steps
- **Make workflow more consistent**: Convert open-ended <action> tags to structured <ask> tags for simple data collection
- **Balance both approaches**: Use intent-based for discovery, prescriptive for simple choices
This feature is especially valuable when converting legacy workflows or adapting workflows for different use cases.
## Workflow Steps
1. Load and analyze target workflow
2. Check against best practices
3. Select editing focus
4. Load relevant documentation
5. Perform edits with user approval
6. Validate all changes (optional)
7. Generate change summary
## Requirements
- Access to workflow creation guide
- Read/write permissions for target workflow
- Understanding of BMAD workflow types

View File

@@ -1,70 +0,0 @@
# Edit Workflow - Validation Checklist
## Pre-Edit Analysis
- [ ] Target workflow.yaml file successfully loaded and parsed
- [ ] All referenced workflow files identified and accessible
- [ ] Workflow type correctly determined (document/action/interactive/autonomous/meta)
- [ ] Best practices guide loaded and available for reference
## Edit Execution Quality
- [ ] User clearly informed of identified issues with priority levels
- [ ] Edit menu presented with all 8 standard options
- [ ] Selected edit type matches the actual changes made
- [ ] All proposed changes explained with reasoning before application
## File Integrity
- [ ] All modified files maintain valid YAML/Markdown syntax
- [ ] No placeholders like {TITLE} or {WORKFLOW_CODE} remain in edited files
- [ ] File paths use proper variable substitution ({project-root}, {installed_path})
- [ ] All file references resolve to actual paths
## Convention Compliance
- [ ] Instructions.md contains critical workflow engine reference header
- [ ] Instructions.md contains workflow.yaml processing reference header
- [ ] All step numbers are sequential (1, 2, 3... or 1a, 1b, 2a...)
- [ ] Each step has both n= attribute and goal= attribute
- [ ] Variable names use snake_case consistently
- [ ] Template variables (if any) match <template-output> tags exactly
## Instruction Quality
- [ ] Each step has a single, clear goal stated
- [ ] Instructions are specific with quantities (e.g., "3-5 items" not "several items")
- [ ] Optional steps marked with optional="true" attribute
- [ ] Repeating steps use proper repeat syntax (repeat="3" or repeat="until-complete")
- [ ] User prompts use <ask> tags and wait for response
- [ ] Actions use <action> tags for required operations
## Validation Criteria (if checklist.md exists)
- [ ] All checklist items are measurable and specific
- [ ] No vague criteria like "Good documentation" present
- [ ] Checklist organized into logical sections
- [ ] Each criterion can be objectively verified as true/false
## Change Documentation
- [ ] All changes logged with description of what and why
- [ ] Change summary includes list of modified files
- [ ] Improvements clearly articulated in relation to best practices
- [ ] Next steps or recommendations provided
## Post-Edit Verification
- [ ] Edited workflow follows patterns from production examples
- [ ] No functionality broken by the edits
- [ ] Workflow ready for testing or production use
- [ ] User given option to test the edited workflow
## Common Issues Resolved
- [ ] Missing critical headers added if they were absent
- [ ] Broken variable references fixed
- [ ] Vague instructions made specific
- [ ] Template-only workflows have template.md file
- [ ] Action workflows have template: false in workflow.yaml
- [ ] Step count reasonable (5-10 steps maximum unless justified)

View File

@@ -1,392 +0,0 @@
# Edit Workflow - Workflow Editor Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/edit-workflow/workflow.yaml</critical>
<critical>Study the workflow creation guide thoroughly at: {workflow_creation_guide}</critical>
<critical>Communicate in {communication_language} throughout the workflow editing process</critical>
<workflow>
<step n="1" goal="Load and analyze target workflow">
<ask>What is the path to the workflow you want to edit? (provide path to workflow.yaml or workflow folder)</ask>
<action>Load the workflow.yaml file from the provided path</action>
<action>Identify the workflow type (document, action, interactive, autonomous, meta)</action>
<action>List all associated files (template.md, instructions.md, checklist.md, data files)</action>
<action>Load any existing instructions.md and template.md files if present</action>
Display a summary:
- Workflow name and description
- Type of workflow
- Files present
- Current structure overview
</step>
<step n="2" goal="Analyze against best practices">
<action>Load the complete workflow creation guide from: {workflow_creation_guide}</action>
<action>Check the workflow against the guide's best practices:</action>
Analyze for:
- **Critical headers**: Are workflow engine references present?
- **File structure**: Are all expected files present for this workflow type?
- **Variable consistency**: Do variable names match between files?
- **Step structure**: Are steps properly numbered and focused?
- **XML tags**: Are tags used correctly and consistently?
- **Instructions clarity**: Are instructions specific with examples and limits?
- **Template variables**: Use snake_case and descriptive names?
- **Validation criteria**: Are checklist items measurable and specific?
**Standard Config Audit:**
- **workflow.yaml config block**: Check for standard config variables
- Is config_source defined?
- Are output_folder, user_name, communication_language pulled from config?
- Is date set to system-generated?
- **Instructions usage**: Do instructions use config variables?
- Does it communicate in {communication_language}?
- Does it address {user_name}?
- Does it write to {output_folder}?
- **Template usage**: Does template.md include config variables in metadata?
**YAML/File Alignment:**
- **Unused yaml fields**: Are there variables in workflow.yaml not used in instructions OR template?
- **Missing variables**: Are there hardcoded values that should be variables?
- **Web bundle completeness**: If web_bundle exists, does it include all dependencies?
- All referenced files listed?
- Called workflows included?
<action>Create a list of identified issues or improvement opportunities</action>
<action>Prioritize issues by importance (critical, important, nice-to-have)</action>
</step>
<step n="3" goal="Select editing focus">
Present the editing menu to the user:
**What aspect would you like to edit?**
1. **Fix critical issues** - Address missing headers, broken references
2. **Add/fix standard config** - Ensure standard config block and variable usage
3. **Update workflow.yaml** - Modify configuration, paths, metadata
4. **Refine instructions** - Improve steps, add detail, fix flow
5. **Update template** - Fix variables, improve structure (if applicable)
6. **Enhance validation** - Make checklist more specific and measurable
7. **Add new features** - Add steps, optional sections, or capabilities
8. **Configure web bundle** - Add/update web bundle for deployment
9. **Remove bloat** - Delete unused yaml fields, duplicate values
10. **Optimize for clarity** - Improve descriptions, add examples
11. **Adjust instruction style** - Convert between intent-based and prescriptive styles
12. **Full review and update** - Comprehensive improvements across all files
<ask>Select an option (1-12) or describe a custom edit:</ask>
</step>
<step n="4" goal="Load relevant documentation">
Based on the selected edit type, load appropriate reference materials:
<check>If option 2 (Add/fix standard config):</check>
<action>Prepare standard config block template:</action>
```yaml
# Critical variables from config
config_source: '{project-root}/bmad/{module}/config.yaml'
output_folder: '{config_source}:output_folder'
user_name: '{config_source}:user_name'
communication_language: '{config_source}:communication_language'
date: system-generated
```
<action>Check if workflow.yaml has existing config section (don't duplicate)</action>
<action>Identify missing config variables to add</action>
<action>Check instructions.md for config variable usage</action>
<action>Check template.md for config variable usage</action>
<check>If editing instructions or adding features:</check>
<action>Review the "Writing Instructions" section of the creation guide</action>
<action>Load example workflows from {project-root}/bmad/bmm/workflows/ for patterns</action>
<check>If editing templates:</check>
<action>Review the "Templates and Variables" section of the creation guide</action>
<action>Ensure variable naming conventions are followed</action>
<check>If editing validation:</check>
<action>Review the "Validation" section and measurable criteria examples</action>
<check>If option 9 (Remove bloat):</check>
<action>Cross-reference all workflow.yaml fields against instructions.md and template.md</action>
<action>Identify yaml fields not used in any file</action>
<action>Check for duplicate fields in web_bundle section</action>
<check>If configuring web bundle:</check>
<action>Review the "Web Bundles" section of the creation guide</action>
<action>Scan all workflow files for referenced resources</action>
<action>Create inventory of all files that must be included</action>
<action>Scan instructions for <invoke-workflow> calls - those yamls must be included</action>
<check>If fixing critical issues:</check>
<action>Load the workflow execution engine documentation</action>
<action>Verify all required elements are present</action>
<check>If adjusting instruction style (option 11):</check>
<action>Analyze current instruction style in instructions.md:</action>
- Count <action> tags vs <ask> tags
- Identify goal-oriented language ("guide", "explore", "help") vs prescriptive ("choose", "select", "specify")
- Assess whether steps are open-ended or structured with specific options
<action>Determine current dominant style: intent-based, prescriptive, or mixed</action>
<action>Load the instruction style guide section from create-workflow</action>
</step>
<step n="5" goal="Perform edits" repeat="until-complete">
Based on the selected focus area:
<check>If configuring web bundle (option 7):</check>
<action>Check if web_bundle section exists in workflow.yaml</action>
If creating new web bundle:
1. Extract workflow metadata (name, description, author)
2. Convert all file paths to bmad/-relative format
3. Remove any {config_source} references
4. Scan instructions.md for all file references:
- Data files (CSV, JSON)
- Sub-workflows
- Shared templates
- Any included files
5. Scan template.md for any includes
6. Create complete web_bundle_files array
7. **CRITICAL**: Check for <invoke-workflow> calls in instructions:
- If workflow invokes other workflows, add existing_workflows field
- Maps workflow variable name to bmad/-relative path
- Signals bundler to recursively include invoked workflow's web_bundle
- Example: `existing_workflows: - core_brainstorming: "bmad/core/workflows/brainstorming/workflow.yaml"`
8. Generate web_bundle section
If updating existing web bundle:
1. Verify all paths are bmad/-relative
2. Check for missing files in web_bundle_files
3. Remove any config dependencies
4. Update file list with newly referenced files
<check>If adjusting instruction style (option 11):</check>
<action>Present current style analysis to user:</action>
**Current Instruction Style Analysis:**
- Current dominant style: {{detected_style}}
- Intent-based elements: {{intent_count}}
- Prescriptive elements: {{prescriptive_count}}
**Understanding Intent-Based vs Prescriptive:**
**1. Intent-Based (Recommended)** - Guide the LLM with goals and principles, let it adapt conversations naturally
- More flexible and conversational
- LLM chooses appropriate questions based on context
- Better for complex discovery and iterative refinement
- Example: `<action>Guide user to define their target audience with specific demographics and needs</action>`
**2. Prescriptive** - Provide exact wording for questions and options
- More controlled and predictable
- Ensures consistency across runs
- Better for simple data collection or specific compliance needs
- Example: `<ask>What is your target platform? Choose: PC, Console, Mobile, Web</ask>`
**When to use Intent-Based:**
- Complex discovery processes (user research, requirements gathering)
- Creative brainstorming and ideation
- Iterative refinement workflows
- When user input quality matters more than consistency
- Workflows requiring adaptation to context
**When to use Prescriptive:**
- Simple data collection (platform, format, yes/no choices)
- Compliance verification and standards adherence
- Configuration with finite options
- When consistency is critical across all executions
- Quick setup wizards
**Best Practice: Mix Both Styles**
Even workflows with a primary style should use the other when appropriate. For example:
```xml
<!-- Intent-based workflow with prescriptive moments -->
<step n="1" goal="Understand user vision">
<action>Explore the user's vision, uncovering their creative intent and target experience</action>
</step>
<step n="2" goal="Capture basic metadata">
<ask>What is your target platform? Choose: PC, Console, Mobile, Web</ask> <!-- Prescriptive for simple choice -->
</step>
<step n="3" goal="Deep dive into details">
<action>Guide user to articulate their approach, exploring mechanics and unique aspects</action> <!-- Back to intent-based -->
</step>
```
<ask>What would you like to do?
1. **Make more intent-based** - Convert prescriptive <ask> tags to goal-oriented <action> tags where appropriate
2. **Make more prescriptive** - Convert open-ended <action> tags to specific <ask> tags with options
3. **Optimize mix** - Use intent-based for complex steps, prescriptive for simple data collection
4. **Review specific steps** - Show me each step and let me decide individually
5. **Cancel** - Keep current style
Select option (1-5):</ask>
<action>Store user's style adjustment preference as {{style_adjustment_choice}}</action>
<check>If choice is 1 (make more intent-based):</check>
<action>Identify prescriptive <ask> tags that could be converted to intent-based <action> tags</action>
<action>For each candidate conversion:
- Show original prescriptive version
- Suggest intent-based alternative focused on goals
- Explain the benefit of the conversion
- Ask for approval
</action>
<action>Apply approved conversions</action>
<check>If choice is 2 (make more prescriptive):</check>
<action>Identify open-ended <action> tags that could be converted to prescriptive <ask> tags</action>
<action>For each candidate conversion:
- Show original intent-based version
- Suggest prescriptive alternative with specific options
- Explain when prescriptive is better here
- Ask for approval
</action>
<action>Apply approved conversions</action>
<check>If choice is 3 (optimize mix):</check>
<action>Analyze each step for complexity and purpose</action>
<action>Recommend style for each step:
- Simple data collection → Prescriptive
- Complex discovery → Intent-based
- Binary decisions → Prescriptive
- Creative exploration → Intent-based
- Standards/compliance → Prescriptive
- Iterative refinement → Intent-based
</action>
<action>Show recommendations with reasoning</action>
<action>Apply approved optimizations</action>
<check>If choice is 4 (review specific steps):</check>
<action>Present each step one at a time</action>
<action>For each step:
- Show current instruction text
- Identify current style (intent-based, prescriptive, or mixed)
- Offer to keep, convert to intent-based, or convert to prescriptive
- Apply user's choice before moving to next step
</action>
<check>If choice is 5 (cancel):</check>
<goto step="3">Return to editing menu</goto>
<action>Show the current content that will be edited</action>
<action>Explain the proposed changes and why they improve the workflow</action>
<action>Generate the updated content following all conventions from the guide</action>
<ask>Review the proposed changes. Options:
- [a] Accept and apply
- [e] Edit/modify the changes
- [s] Skip this change
- [n] Move to next file/section
- [d] Done with edits
</ask>
<check>If user selects 'a':</check>
<action>Apply the changes to the file</action>
<action>Log the change for the summary</action>
<check>If user selects 'e':</check>
<ask>What modifications would you like to make?</ask>
<goto step="5">Regenerate with modifications</goto>
<check>If user selects 'd':</check>
<continue>Proceed to validation</continue>
</step>
<step n="6" goal="Validate all changes" optional="true">
<action>Run a comprehensive validation check:</action>
**Basic Validation:**
- [ ] All file paths resolve correctly
- [ ] Variable names are consistent across files
- [ ] Step numbering is sequential and logical
- [ ] Required XML tags are properly formatted
- [ ] No placeholders remain (like {TITLE} or {WORKFLOW_CODE})
- [ ] Instructions match the workflow type
- [ ] Template variables match instruction outputs (if applicable)
- [ ] Checklist criteria are measurable (if present)
- [ ] Critical headers are present in instructions
- [ ] YAML syntax is valid
**Standard Config Validation:**
- [ ] workflow.yaml contains config_source
- [ ] output_folder, user_name, communication_language pulled from config
- [ ] date set to system-generated
- [ ] Instructions communicate in {communication_language} where appropriate
- [ ] Instructions address {user_name} where appropriate
- [ ] Instructions write to {output_folder} for file outputs
- [ ] Template optionally includes {{user_name}}, {{date}} in metadata (if document workflow)
- [ ] Template does NOT use {{communication_language}} in headers (agent-only variable)
**YAML/File Alignment:**
- [ ] All workflow.yaml variables used in instructions OR template
- [ ] No unused yaml fields (bloat-free)
- [ ] No duplicate fields between top-level and web_bundle
- [ ] Template variables match <template-output> tags in instructions
**Web bundle validation (if applicable):**
- [ ] web_bundle section present if needed
- [ ] All paths are bmad/-relative (no {project-root})
- [ ] No {config_source} variables in web bundle
- [ ] All referenced files listed in web_bundle_files
- [ ] Instructions, validation, template paths correct
- [ ] Called workflows (<invoke-workflow>) included in web_bundle_files
- [ ] Complete file inventory verified
<check>If any validation fails:</check>
<ask>Issues found. Would you like to fix them? (y/n)</ask>
<check>If yes:</check>
<goto step="5">Return to editing</goto>
</step>
<step n="7" goal="Generate change summary">
<action>Create a summary of all changes made for {user_name} in {communication_language}:</action>
**Summary Structure:**
- Workflow name
- Changes made (file-by-file descriptions)
- Improvements (how workflow is now better aligned with best practices)
- Files modified (complete list with paths)
- Next steps (suggestions for additional improvements or testing)
<ask>Would you like to:
- Test the edited workflow
- Make additional edits
- Exit
</ask>
<check>If test workflow:</check>
<action>Invoke the edited workflow for testing</action>
</step>
</workflow>

View File

@@ -1,25 +0,0 @@
# Edit Workflow - Workflow Editor Configuration
name: "edit-workflow"
description: "Edit existing BMAD workflows while following all best practices and conventions"
author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/bmb/config.yaml"
communication_language: "{config_source}:communication_language"
user_name: "{config_source}:user_name"
# Required Data Files - Critical for understanding workflow conventions
workflow_creation_guide: "{project-root}/bmad/bmb/workflows/create-workflow/workflow-creation-guide.md"
workflow_execution_engine: "{project-root}/bmad/core/tasks/workflow.xml"
# Optional docs that can be used to understand the target workflow
recommended_inputs:
- target_workflow: "Path to the workflow.yaml file to edit"
- workflow_examples: "{project-root}/bmad/bmm/workflows/"
# Module path and component files
installed_path: "{project-root}/bmad/bmb/workflows/edit-workflow"
template: false # This is an action workflow - no template needed
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# Web bundle configuration

View File

@@ -1,116 +0,0 @@
# Module Brief Validation Checklist
## Core Identity
- [ ] Module code follows kebab-case convention
- [ ] Module name is clear and memorable
- [ ] Module category is identified
- [ ] Target users are clearly defined
- [ ] Unique value proposition is articulated
## Vision and Concept
- [ ] Problem being solved is clearly stated
- [ ] Solution approach is explained
- [ ] Module scope is well-defined
- [ ] Success criteria are measurable
## Agent Architecture
- [ ] At least one agent is defined
- [ ] Each agent has a clear role and purpose
- [ ] Agent personalities are defined (if using personality themes)
- [ ] Agent interactions are mapped (for multi-agent modules)
- [ ] Key commands for each agent are listed
## Workflow Ecosystem
- [ ] Core workflows (2-3) are identified
- [ ] Each workflow has clear purpose
- [ ] Workflow complexity is assessed
- [ ] Input/output for workflows is defined
- [ ] Workflow categories are logical
## User Experience
- [ ] Primary use case is documented
- [ ] User scenarios demonstrate value
- [ ] User journey is realistic
- [ ] Learning curve is considered
- [ ] User feedback mechanism planned
## Technical Planning
- [ ] Data requirements are identified
- [ ] Integration points are mapped
- [ ] Dependencies are listed
- [ ] Technical complexity is assessed
- [ ] Performance requirements stated
## Development Roadmap
- [ ] Phase 1 MVP is clearly scoped
- [ ] Phase 2 enhancements are outlined
- [ ] Phase 3 polish items listed
- [ ] Timeline estimates provided
- [ ] Deliverables are specific
## Risk Management
- [ ] Technical risks identified
- [ ] Usability risks considered
- [ ] Scope risks acknowledged
- [ ] Mitigation strategies provided
- [ ] Open questions documented
## Creative Elements (Optional)
- [ ] Personality theme is consistent (if used)
- [ ] Special features add value
- [ ] Module feels cohesive
- [ ] Fun elements don't compromise functionality
## Documentation Quality
- [ ] All sections have content (no empty placeholders)
- [ ] Writing is clear and concise
- [ ] Technical terms are explained
- [ ] Examples are provided where helpful
- [ ] Next steps are actionable
## Implementation Readiness
- [ ] Brief provides enough detail for create-module workflow
- [ ] Agent specifications sufficient for create-agent workflow
- [ ] Workflow descriptions ready for create-workflow
- [ ] Resource requirements are clear
- [ ] Success metrics are measurable
## Final Validation
- [ ] Module concept is viable
- [ ] Scope is achievable
- [ ] Value is clear
- [ ] Brief is complete
- [ ] Ready for development
## Issues Found
### Critical Issues
<!-- Must be fixed before proceeding to build -->
### Recommendations
<!-- Suggested improvements -->
### Nice-to-Haves
<!-- Optional enhancements -->
---
**Validation Complete:** ⬜ Yes / ⬜ With Issues / ⬜ Needs Revision
**Validated By:** **\*\*\*\***\_**\*\*\*\***
**Date:** **\*\*\*\***\_**\*\*\*\***

View File

@@ -1,267 +0,0 @@
# Module Brief Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/module-brief/workflow.yaml</critical>
<critical>Communicate in {communication_language} throughout the module brief creation process</critical>
<workflow>
<step n="1" goal="Setup and context gathering">
<action>Ask the user which mode they prefer:</action>
1. **Interactive Mode** - Work through each section collaboratively with detailed questions
2. **Express Mode** - Quick essential questions only
3. **YOLO Mode** (#yolo) - Generate complete draft based on minimal input
<action>Check for available inputs:</action>
- Brainstorming results from previous sessions
- Existing module ideas or notes
- Similar modules for inspiration
<action>If brainstorming results exist, offer to load and incorporate them</action>
</step>
<step n="2" goal="Module concept and vision">
Ask the user to describe their module idea. Probe for:
- What problem does this module solve?
- Who would use this module?
- What makes this module exciting or unique?
- Any inspiring examples or similar tools?
If they're stuck, offer creative prompts:
- "Imagine you're a [role], what tools would make your life easier?"
- "What repetitive tasks could be automated with agents?"
- "What domain expertise could be captured in workflows?"
<template-output>module_vision</template-output>
</step>
<step n="3" goal="Define module identity">
Based on the vision, work with user to define:
**Module Code** (kebab-case):
- Suggest 2-3 options based on their description
- Ensure it's memorable and descriptive
**Module Name** (friendly):
- Creative, engaging name that captures the essence
**Module Category:**
- Domain-Specific (legal, medical, finance)
- Creative (writing, gaming, music)
- Technical (devops, testing, architecture)
- Business (project management, marketing)
- Personal (productivity, learning)
**Personality Theme** (optional but fun!):
- Should the module have a consistent personality across agents?
- Star Trek crew? Fantasy party? Corporate team? Reality show cast?
<template-output>module_identity</template-output>
</step>
<step n="4" goal="Agent architecture planning">
<action>Help user envision their agent team</action>
For each agent, capture:
- **Role**: What's their specialty?
- **Personality**: How do they communicate? (reference communication styles)
- **Key Capabilities**: What can they do?
- **Signature Commands**: 2-3 main commands
Suggest agent archetypes based on module type:
- The Orchestrator (manages other agents)
- The Specialist (deep expertise)
- The Helper (utility functions)
- The Creator (generates content)
- The Analyzer (processes and evaluates)
<template-output>agent_architecture</template-output>
</step>
<step n="5" goal="Workflow ecosystem design">
<action>Map out the workflow landscape</action>
Categorize workflows:
**Core Workflows** (2-3 essential ones):
- The primary value-delivery workflows
- What users will use most often
**Feature Workflows** (3-5 specialized):
- Specific capabilities
- Advanced features
**Utility Workflows** (1-3 supporting):
- Setup, configuration
- Maintenance, cleanup
For each workflow, define:
- Purpose (one sentence)
- Input → Process → Output
- Complexity (simple/standard/complex)
<template-output>workflow_ecosystem</template-output>
</step>
<step n="6" goal="User journey and scenarios">
<action>Create usage scenarios to validate the design</action>
Write 2-3 user stories:
"As a [user type], I want to [goal], so that [outcome]"
Then walk through how they'd use the module:
1. They load [agent]
2. They run [command/workflow]
3. They get [result]
4. This helps them [achievement]
This validates the module makes sense end-to-end.
<template-output>user_scenarios</template-output>
</step>
<step n="7" goal="Technical and resource planning">
Assess technical requirements:
**Data Requirements:**
- What data/files does the module need?
- Any external APIs or services?
- Storage or state management needs?
**Integration Points:**
- Other BMAD modules it might use
- External tools or platforms
- Import/export formats
**Complexity Assessment:**
- Simple (standalone, no dependencies)
- Standard (some integrations, moderate complexity)
- Complex (multiple systems, advanced features)
<template-output>technical_planning</template-output>
</step>
<step n="8" goal="Success metrics and validation">
Define what success looks like:
**Module Success Criteria:**
- What indicates the module is working well?
- How will users measure value?
- What feedback mechanisms?
**Quality Standards:**
- Performance expectations
- Reliability requirements
- User experience goals
<template-output>success_metrics</template-output>
</step>
<step n="9" goal="Development roadmap">
Create a phased approach:
**Phase 1 - MVP (Minimum Viable Module):**
- 1 primary agent
- 2-3 core workflows
- Basic functionality
**Phase 2 - Enhancement:**
- Additional agents
- More workflows
- Refined features
**Phase 3 - Polish:**
- Advanced features
- Optimizations
- Nice-to-haves
<template-output>development_roadmap</template-output>
</step>
<step n="10" goal="Creative flourishes and special features" optional="true">
<action>If user wants to add special touches:</action>
**Easter Eggs:**
- Hidden commands or responses
- Fun interactions between agents
**Delighters:**
- Unexpected helpful features
- Personality quirks
- Creative responses
**Module Lore:**
- Backstory for agents
- Thematic elements
- Consistent universe
<template-output>creative_features</template-output>
</step>
<step n="11" goal="Risk assessment and mitigation">
Identify potential challenges:
**Technical Risks:**
- Complex integrations
- Performance concerns
- Dependency issues
**Usability Risks:**
- Learning curve
- Complexity creep
- User confusion
**Scope Risks:**
- Feature bloat
- Timeline expansion
- Resource constraints
For each risk, note mitigation strategy.
<template-output>risk_assessment</template-output>
</step>
<step n="12" goal="Final review and export readiness">
<action>Review all sections with {user_name}</action>
<action>Ensure module brief is ready for create-module workflow</action>
<ask>Would {user_name} like to:
1. Proceed directly to create-module workflow
2. Save and refine later
3. Generate additional planning documents
</ask>
<action>Inform {user_name} in {communication_language} that this brief can be fed directly into create-module workflow</action>
<template-output>final_brief</template-output>
</step>
</workflow>

View File

@@ -1,27 +0,0 @@
# Module Brief Workflow Configuration
name: module-brief
description: "Create a comprehensive Module Brief that serves as the blueprint for building new BMAD modules using strategic analysis and creative vision"
author: "BMad Builder"
# Critical variables
config_source: "{project-root}/bmad/bmb/config.yaml"
output_folder: "{config_source}:output_folder"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
date: system-generated
# Optional input docs that enhance module planning
recommended_inputs:
- brainstorming_results: "{output_folder}/brainstorming-*.md"
- existing_modules: "{project-root}/bmad/"
- module_examples: "{project-root}/bmad/bmb/workflows/create-module/module-structure.md"
# Module path and component files
installed_path: "{project-root}/bmad/bmb/workflows/module-brief"
template: "{installed_path}/template.md"
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# Output configuration
default_output_file: "{output_folder}/module-brief-{{module_code}}-{{date}}.md"
# Web bundle configuration

View File

@@ -1,87 +0,0 @@
# ReDoc - Reverse-Tree Documentation Engine
**Type:** Autonomous Action Workflow
**Module:** BMad Builder (bmb)
## Purpose
ReDoc is an intelligent documentation maintenance system for BMAD modules, workflows, and agents. It uses a reverse-tree approach (leaf folders first, then parent folders) to systematically generate and update README.md files with technical writer quality output.
The workflow understands BMAD conventions deeply and focuses documentation on distinctive features rather than explaining standard patterns, resulting in succinct, precise technical documentation.
## Key Features
- **Reverse-Tree Processing**: Documents from deepest folders up to module root, allowing child documentation to inform parent summaries
- **Convention-Aware**: Loads BMAD architecture patterns and only documents unique/distinctive aspects
- **Scalability**: Automatically creates catalog documents (WORKFLOWS-CATALOG.md, AGENTS-CATALOG.md) for massive folders (>10 items)
- **Diff-Aware**: Tracks `last-redoc-date` frontmatter to enable change detection since last run
- **Autonomous**: Runs without user checkpoints unless clarification is genuinely required
- **Comprehensive**: Reads ALL files completely before generating documentation (no partial reads)
## Usage
Invoke with a target path:
```
workflow redoc
```
When prompted, provide one of:
- **Module path**: `bmad/bmm` (documents entire module: root, workflows, agents)
- **Workflows folder**: `bmad/bmm/workflows` (documents all workflows)
- **Agents folder**: `bmad/bmm/agents` (documents all agents)
- **Single workflow**: `bmad/bmm/workflows/product-brief` (documents one workflow)
- **Single agent**: `bmad/bmm/agents/prd-agent.md` (documents one agent)
## Inputs
### Required
- **target_path**: Path to module, folder, or specific component to document
### Knowledge Base (Auto-loaded)
- agent-architecture.md
- agent-command-patterns.md
- agent-types.md
- module-structure.md
- workflow-creation-guide.md
## Outputs
### Created/Updated Files
- **README.md**: At each documented level (workflow folders, agent folders, module root)
- **Catalog files**: WORKFLOWS-CATALOG.md, AGENTS-CATALOG.md (for massive folders)
- **Frontmatter**: All READMEs include `last-redoc-date: <timestamp>`
### Summary Report
- Documentation coverage statistics
- List of files created/updated
- Any items requiring manual review
## Workflow Steps
1. **Initialize**: Load BMAD conventions and validate target
2. **Analyze Structure**: Build reverse-tree execution plan
3. **Process Leaves**: Document individual workflows/agents (deepest first)
4. **Process Folders**: Document workflow/agent collections with categorization
5. **Process Root**: Document module overview with links and highlights
6. **Validate**: Verify completeness and generate report
7. **Diff Analysis** (optional): Show changes since last redoc
8. **Complete**: Report success and suggest next steps
## Technical Details
- **Execution**: Autonomous with minimal user interaction
- **Quality**: Technical writer standards - succinct, precise, professional
- **Context-Aware**: Uses BMAD convention knowledge to highlight only distinctive features
- **Scalable**: Handles folders of any size with intelligent catalog creation
## Next Steps After Running
1. Review generated documentation for accuracy
2. If documenting a subfolder, run redoc on parent module to update references
3. Commit documentation updates with meaningful message

View File

@@ -1,99 +0,0 @@
# ReDoc Workflow Validation Checklist
## Initialization and Setup
- [ ] All BMAD convention documents loaded and understood
- [ ] Target path validated and exists
- [ ] Target type correctly identified (module/workflow/agent/folder)
- [ ] Documentation execution plan created with reverse-tree order
## File Analysis
- [ ] All files in target scope read completely (no offset/limit usage)
- [ ] Existing README.md files detected and last-redoc-date parsed
- [ ] Massive folders (>10 items) identified for catalog document creation
- [ ] Documentation depth levels calculated correctly
## Leaf-Level Documentation (Workflows)
- [ ] Each workflow's ALL files read: workflow.yaml, instructions.md, template.md, checklist.md
- [ ] README.md includes frontmatter with current last-redoc-date
- [ ] Description is 2-4 paragraphs of technical writer quality
- [ ] Focuses on DISTINCTIVE features, not BMAD boilerplate conventions
- [ ] Includes "Usage" section with invocation command
- [ ] Includes "Inputs" and "Outputs" sections where applicable
- [ ] Succinct and precise language used throughout
## Leaf-Level Documentation (Agents)
- [ ] Each agent file read completely including XML structure, commands, persona
- [ ] README.md includes frontmatter with current last-redoc-date
- [ ] Description is 1-3 paragraphs of technical writer quality
- [ ] Lists all available commands clearly
- [ ] Explains when to use this agent
- [ ] Highlights unique capabilities vs standard agent patterns
## Mid-Level Documentation (Folders)
- [ ] All child README.md files read before generating folder README
- [ ] Workflows categorized logically if massive folder (>10 items)
- [ ] Agents categorized by type if massive folder (>10 items)
- [ ] Catalog documents (WORKFLOWS-CATALOG.md, AGENTS-CATALOG.md) created for massive folders
- [ ] Catalog documents include frontmatter with last-redoc-date
- [ ] Folder README.md references catalog if one exists
- [ ] Folder README.md is succinct (1-2 paragraphs + listings/links)
- [ ] Notable/commonly-used items highlighted
## Root Module Documentation
- [ ] Module config.yaml read and understood
- [ ] Workflows and agents folder READMEs read before creating root README
- [ ] Root README includes frontmatter with current last-redoc-date
- [ ] Module purpose clearly stated in 2-3 sentences
- [ ] Links to /workflows/README.md and /agents/README.md included
- [ ] 2-3 key workflows mentioned with context
- [ ] 2-3 key agents mentioned with context
- [ ] Configuration section highlights UNIQUE settings only
- [ ] Usage section explains invocation patterns
- [ ] BMAD convention knowledge applied (describes only distinctive aspects)
## Quality Standards
- [ ] All documentation uses proper BMAD terminology
- [ ] Technical writer quality: clear, concise, professional
- [ ] No placeholder text or generic descriptions remain
- [ ] All links are valid and correctly formatted
- [ ] Frontmatter syntax is correct and dates are current
- [ ] No redundant explanation of standard BMAD patterns
## Validation and Reporting
- [ ] All planned documentation items created/updated
- [ ] Frontmatter dates verified as current across all files
- [ ] File paths and internal links validated
- [ ] Summary report generated with counts and coverage
- [ ] Files skipped (if any) documented with reasons
## Git Diff Analysis (Optional Step)
- [ ] last-redoc-date timestamps extracted correctly
- [ ] Git log queried for changes since last redoc
- [ ] Modified files identified and reported
- [ ] Findings presented clearly to user
## Final Validation
- [ ] Documentation Coverage
- All README.md files in scope created/updated
- Catalog documents created where needed
- No documentation gaps identified
- [ ] Execution Quality
- Reverse-tree order followed (leaf → root)
- Autonomous execution (minimal user prompts)
- Only clarification questions asked when truly necessary
- [ ] Output Quality
- Technical precision maintained throughout
- Succinct descriptions (no verbose explanations)
- Professional documentation standards met

View File

@@ -1,265 +0,0 @@
# ReDoc Workflow Instructions
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/src/modules/bmb/workflows/redoc/workflow.yaml</critical>
<critical>Communicate in {communication_language} throughout the documentation process</critical>
<critical>This is an AUTONOMOUS workflow - minimize user interaction unless clarification is absolutely required</critical>
<critical>IMPORTANT: Process ONE document at a time to avoid token limits. Each README should be created individually, not batched.</critical>
<critical>When using Task tool with sub-agents: Only request ONE workflow or agent documentation per invocation to prevent token overflow.</critical>
<workflow>
<step n="1" goal="Load BMAD conventions and initialize">
<action>Load ALL BMAD convention documents from {bmad_conventions}:
- agent_architecture.md - Understand agent XML structure and patterns
- agent_command_patterns.md - Command syntax and activation patterns
- agent_types.md - Standard agent categories and purposes
- module_structure.md - Module organization and folder conventions
- workflow_guide.md - Workflow structure and best practices
</action>
<action>Internalize these conventions so you can:
- Recognize standard patterns vs unique implementations
- Describe only what's distinctive about each component
- Use proper terminology consistently
- Write with technical precision
</action>
<action>Get target path from user:
- Ask: "What do you want to document? (module path, workflow path, agent path, or folder path)"
- Store as {{target_path}}
</action>
<action>Validate target path exists and determine target type:
- Module root (contains config.yaml, /workflows, /agents folders)
- Workflows folder (contains multiple workflow folders)
- Agents folder (contains multiple agent .md files)
- Single workflow folder (contains workflow.yaml)
- Single agent file (.md)
</action>
<action>Store target type as {{target_type}} for conditional processing</action>
</step>
<step n="2" goal="Analyze directory structure and existing documentation">
<action>Build complete tree structure of {{target_path}} using Glob and file system tools</action>
<action>Identify all documentation points:
- List all folders requiring README.md files
- Detect existing README.md files
- Parse frontmatter from existing READMEs to extract last-redoc-date
- Calculate documentation depth (how many levels deep)
</action>
<action>Create documentation map with execution order (deepest → shallowest):
- Level 0 (deepest): Individual workflow folders, individual agent files
- Level 1: /workflows folder, /agents folder
- Level 2 (root): Module root README.md
</action>
<action>Detect "massive folders" requiring child catalog documents:
- Threshold: >10 items or complex categorization needed
- Mark folders for catalog document creation (e.g., WORKFLOWS-CATALOG.md, AGENTS-CATALOG.md)
</action>
<critical>Store execution order as {{doc_execution_plan}} - this ensures reverse-tree processing</critical>
</step>
<step n="3" goal="Process leaf-level documentation" repeat="for-each-leaf-item">
<critical>TOKEN LIMIT WARNING: Process ONE item at a time to prevent token overflow issues.</critical>
<critical>If using Task tool with sub-agents: NEVER batch multiple workflows/agents in a single invocation.</critical>
<critical>Each README creation should be a separate operation with its own file save.</critical>
<critical>Sequential processing is MANDATORY - do not attempt parallel documentation generation.</critical>
<action>For each individual workflow folder in execution plan (PROCESS ONE AT A TIME):
1. Read ALL files completely:
- workflow.yaml (metadata, purpose, configuration)
- instructions.md (step structure, goals)
- template.md (output structure) if exists
- checklist.md (validation criteria) if exists
- Any supporting data files
2. Synthesize understanding:
- Core purpose and use case
- Input requirements
- Output produced
- Unique characteristics (vs standard BMAD workflow patterns)
- Key steps or special features
3. Generate/update README.md:
- Add frontmatter: `---\nlast-redoc-date: {{date}}\n---\n`
- Write 2-4 paragraph technical description
- Include "Usage" section with invocation command
- Include "Inputs" section if applicable
- Include "Outputs" section
- Be succinct and precise - technical writer quality
- Focus on DISTINCTIVE features, not boilerplate
4. Save README.md to workflow folder
<critical>If multiple workflows need documentation, process them SEQUENTIALLY not in parallel. Each workflow gets its own complete processing cycle.</critical>
</action>
<action>For each individual agent file in execution plan (PROCESS ONE AT A TIME):
1. Read agent definition file completely:
- XML structure and metadata
- Commands and their purposes
- Activation patterns
- Persona and communication style
- Critical actions and workflows invoked
2. Synthesize understanding:
- Agent purpose and role
- Available commands
- When to use this agent
- Unique capabilities
3. Generate/update README.md (or agent-name-README.md if in shared folder):
- Add frontmatter: `---\nlast-redoc-date: {{date}}\n---\n`
- Write 1-3 paragraph technical description
- Include "Commands" section listing available commands
- Include "Usage" section
- Focus on distinctive features
4. Save README.md
</action>
<check>If clarification needed about purpose or unique features → Ask user briefly, then continue</check>
</step>
<step n="4" goal="Process mid-level folder documentation" if="target_type requires folder docs">
<action>For /workflows folder:
1. Read ALL workflow README.md files created in Step 3
2. Categorize workflows by purpose/type if folder is massive (>10 workflows):
- Document generation workflows
- Action workflows
- Meta-workflows
- Interactive workflows
3. If massive folder detected:
- Create WORKFLOWS-CATALOG.md with categorized listings
- Each entry: workflow name, 1-sentence description, link to folder
- Add frontmatter with last-redoc-date
4. Generate/update /workflows/README.md:
- Add frontmatter: `---\nlast-redoc-date: {{date}}\n---\n`
- High-level summary of workflow collection
- If catalog exists: reference it
- If not massive: list all workflows with brief descriptions and links
- Highlight notable or commonly-used workflows
- Keep succinct (1-2 paragraphs + list)
5. Save README.md
</action>
<action>For /agents folder:
1. Read ALL agent README.md files
2. Categorize agents by type if massive folder (>10 agents):
- Task agents
- Meta agents
- Specialized agents
- Utility agents
3. If massive folder detected:
- Create AGENTS-CATALOG.md with categorized listings
- Each entry: agent name, 1-sentence description, link
- Add frontmatter with last-redoc-date
4. Generate/update /agents/README.md:
- Add frontmatter: `---\nlast-redoc-date: {{date}}\n---\n`
- High-level summary of agent collection
- If catalog exists: reference it
- If not massive: list all agents with brief descriptions
- Highlight key agents and their purposes
- Keep succinct
5. Save README.md
</action>
</step>
<step n="5" goal="Process root module documentation" if="target_type is module root">
<action>For module root README.md:
1. Read module config.yaml for metadata and configuration
2. Read /workflows/README.md and /agents/README.md created in Step 4
3. Identify module's unique purpose within BMAD ecosystem
4. Generate/update module README.md:
- Add frontmatter: `---\nlast-redoc-date: {{date}}\n---\n`
Structure:
- # Module Name
- **Purpose**: 2-3 sentence high-level module purpose
- **Overview**: 1-2 paragraphs describing what this module provides
- ## Workflows
- Link to /workflows/README.md with 1-sentence summary
- Mention count and highlight 2-3 key workflows
- ## Agents
- Link to /agents/README.md with 1-sentence summary
- Mention count and highlight 2-3 key agents
- ## Configuration
- Notable config.yaml settings if unique/important
- Reference paths and conventions
- ## Usage
- How to invoke workflows or agents from this module
- Prerequisites if any
Focus on UNIQUE aspects using BMAD convention knowledge:
- Don't explain standard BMAD patterns
- Highlight what makes THIS module distinctive
- Use proper BMAD terminology
5. Save README.md to module root
</action>
</step>
<step n="6" goal="Validation and summary report">
<action>Verify all planned documentation was created/updated:
- Check each item in {{doc_execution_plan}}
- Confirm frontmatter dates are current
- Validate file paths and links
</action>
<action>Generate summary report showing:
- Target documented: {{target_path}}
- Target type: {{target_type}}
- Documentation files created/updated (count and list)
- Any catalog files created
- Files skipped or requiring manual review (if any)
- Coverage: X% of items documented
- Processing notes: Confirm sequential processing was used to avoid token limits
</action>
<action>Display summary to user</action>
</step>
<step n="7" goal="Optional git diff analysis" optional="true">
<ask>Would you like to see what changed since the last redoc run? [y/n]</ask>
<action if="user_response == 'y'">
For each README with last-redoc-date frontmatter:
1. Extract last-redoc-date timestamp
2. Use git log to find files modified since that date in the documented folder
3. Highlight files that changed but may need documentation updates
4. Report findings to user
</action>
</step>
<step n="8" goal="Completion">
<action>Confirm to {user_name} in {communication_language} that autonomous workflow execution is complete</action>
<action>Provide path to all updated documentation</action>
<action>Suggest next steps if needed</action>
</step>
</workflow>

View File

@@ -1,31 +0,0 @@
# ReDoc - Reverse-Tree Documentation Engine
name: "redoc"
description: "Autonomous documentation system that maintains module, workflow, and agent documentation using a reverse-tree approach (leaf folders first, then parents). Understands BMAD conventions and produces technical writer quality output."
author: "BMad"
# Critical variables
config_source: "{project-root}/bmad/bmb/config.yaml"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
# Required knowledge base - BMAD conventions and patterns
bmad_conventions:
agent_architecture: "{project-root}/src/modules/bmb/workflows/create-agent/agent-architecture.md"
agent_command_patterns: "{project-root}/src/modules/bmb/workflows/create-agent/agent-command-patterns.md"
agent_types: "{project-root}/src/modules/bmb/workflows/create-agent/agent-types.md"
module_structure: "{project-root}/src/modules/bmb/workflows/create-module/module-structure.md"
workflow_guide: "{project-root}/src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md"
# Runtime inputs
target_path: "" # User specifies: module path, workflow path, agent path, or folder path
# Module path and component files
installed_path: "{project-root}/src/modules/bmb/workflows/redoc"
template: false # Action workflow - updates files in place
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# Configuration
autonomous: true # Runs without user checkpoints unless clarification needed
# Web bundle configuration

View File

@@ -1,68 +0,0 @@
<!-- Powered by BMAD-CORE™ -->
# BMad Master Executor, Knowledge Custodian, and Workflow Orchestrator
```xml
<agent id="bmad/core/agents/bmad-master.md" name="BMad Master" title="BMad Master Executor, Knowledge Custodian, and Workflow Orchestrator" icon="🧙">
<activation critical="MANDATORY">
<step n="1">Load persona from this current agent file (already in context)</step>
<step n="2">🚨 IMMEDIATE ACTION REQUIRED - BEFORE ANY OUTPUT:
- Load and read {project-root}/bmad/core/config.yaml NOW
- Store ALL fields as session variables: {user_name}, {communication_language}, {output_folder}
- VERIFY: If config not loaded, STOP and report error to user
- DO NOT PROCEED to step 3 until config is successfully loaded and variables stored</step>
<step n="3">Remember: user's name is {user_name}</step>
<step n="4">Load into memory {project-root}/bmad/core/config.yaml and set variable project_name, output_folder, user_name, communication_language</step>
<step n="5">Remember the users name is {user_name}</step>
<step n="6">ALWAYS communicate in {communication_language}</step>
<step n="7">Show greeting using {user_name} from config, communicate in {communication_language}, then display numbered list of
ALL menu items from menu section</step>
<step n="8">STOP and WAIT for user input - do NOT execute menu items automatically - accept number or trigger text</step>
<step n="9">On user input: Number → execute menu item[n] | Text → case-insensitive substring match | Multiple matches → ask user
to clarify | No match → show "Not recognized"</step>
<step n="10">When executing a menu item: Check menu-handlers section below - extract any attributes from the selected menu item
(workflow, exec, tmpl, data, action, validate-workflow) and follow the corresponding handler instructions</step>
<menu-handlers>
<handlers>
<handler type="action">
When menu item has: action="#id" → Find prompt with id="id" in current agent XML, execute its content
When menu item has: action="text" → Execute the text directly as an inline instruction
</handler>
<handler type="workflow">
When menu item has: workflow="path/to/workflow.yaml"
1. CRITICAL: Always LOAD {project-root}/bmad/core/tasks/workflow.xml
2. Read the complete file - this is the CORE OS for executing BMAD workflows
3. Pass the yaml path as 'workflow-config' parameter to those instructions
4. Execute workflow.xml instructions precisely following all steps
5. Save outputs after completing EACH workflow step (never batch multiple steps together)
6. If workflow.yaml path is "todo", inform user the workflow hasn't been implemented yet
</handler>
</handlers>
</menu-handlers>
<rules>
- ALWAYS communicate in {communication_language} UNLESS contradicted by communication_style
- Stay in character until exit selected
- Menu triggers use asterisk (*) - NOT markdown, display exactly as shown
- Number all lists, use letters for sub-options
- Load files ONLY when executing menu items or a workflow or command requires it. EXCEPTION: Config file MUST be loaded at startup step 2
- CRITICAL: Written File Output in workflows will be +2sd your communication style and use professional {communication_language}.
</rules>
</activation>
<persona>
<role>Master Task Executor + BMad Expert + Guiding Facilitator Orchestrator</role>
<identity>Master-level expert in the BMAD Core Platform and all loaded modules with comprehensive knowledge of all resources, tasks, and workflows. Experienced in direct task execution and runtime resource management, serving as the primary execution engine for BMAD operations.</identity>
<communication_style>Direct and comprehensive, refers to himself in the 3rd person. Expert-level communication focused on efficient task execution, presenting information systematically using numbered lists with immediate command response capability.</communication_style>
<principles>Load resources at runtime never pre-load, and always present numbered lists for choices.</principles>
</persona>
<menu>
<item cmd="*help">Show numbered menu</item>
<item cmd="*list-tasks" action="list all tasks from {project-root}/bmad/_cfg/task-manifest.csv">List Available Tasks</item>
<item cmd="*list-workflows" action="list all workflows from {project-root}/bmad/_cfg/workflow-manifest.csv">List Workflows</item>
<item cmd="*party-mode" workflow="{project-root}/bmad/core/workflows/party-mode/workflow.yaml">Group chat with all agents</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```

View File

@@ -1,122 +0,0 @@
<agent id="bmad/core/agents/bmad-orchestrator.md" name="BMad Orchestrator" title="BMad Web Orchestrator" icon="🎭" localskip="true">
<activation critical="MANDATORY">
<step n="1">Load this complete web bundle XML - you are the BMad Orchestrator, first agent in this bundle</step>
<step n="2">CRITICAL: This bundle contains ALL agents as XML nodes with id="bmad/..." and ALL workflows/tasks as nodes findable by type
and id</step>
<step n="3">Greet user as BMad Orchestrator and display numbered list of ALL menu items from menu section below</step>
<step n="4">STOP and WAIT for user input - do NOT execute menu items automatically - accept number or trigger text</step>
<step n="5">On user input: Number → execute menu item[n] | Text → case-insensitive substring match | Multiple matches → ask user to
clarify | No match → show "Not recognized"</step>
<step n="6">When executing a menu item: Check menu-handlers section below for UNIVERSAL handler instructions that apply to ALL agents</step>
<menu-handlers critical="UNIVERSAL_FOR_ALL_AGENTS">
<extract>workflow, exec, tmpl, data, action, validate-workflow</extract>
<handlers>
<handler type="workflow">
When menu item has: workflow="workflow-id"
1. Find workflow node by id in this bundle (e.g., &lt;workflow id="workflow-id"&gt;)
2. CRITICAL: Always LOAD bmad/core/tasks/workflow.xml if referenced
3. Execute the workflow content precisely following all steps
4. Save outputs after completing EACH workflow step (never batch)
5. If workflow id is "todo", inform user it hasn't been implemented yet
</handler>
<handler type="exec">
When menu item has: exec="node-id" or exec="inline-instruction"
1. If value looks like a path/id → Find and execute node with that id
2. If value is text → Execute as direct instruction
3. Follow ALL instructions within loaded content EXACTLY
</handler>
<handler type="tmpl">
When menu item has: tmpl="template-id"
1. Find template node by id in this bundle and pass it to the exec, task, action, or workflow being executed
</handler>
<handler type="data">
When menu item has: data="data-id"
1. Find data node by id in this bundle
2. Parse according to node type (json/yaml/xml/csv)
3. Make available as {data} variable for subsequent operations
</handler>
<handler type="action">
When menu item has: action="#prompt-id" or action="inline-text"
1. If starts with # → Find prompt with matching id in current agent
2. Otherwise → Execute the text directly as instruction
</handler>
<handler type="validate-workflow">
When menu item has: validate-workflow="workflow-id"
1. MUST LOAD bmad/core/tasks/validate-workflow.xml
2. Execute all validation instructions from that file
3. Check workflow's validation property for schema
4. Identify file to validate or ask user to specify
</handler>
</handlers>
</menu-handlers>
<orchestrator-specific>
<agent-transformation critical="true">
When user selects *agents [agent-name]:
1. Find agent XML node with matching name/id in this bundle
2. Announce transformation: "Transforming into [agent name]... 🎭"
3. BECOME that agent completely:
- Load and embody their persona/role/communication_style
- Display THEIR menu items (not orchestrator menu)
- Execute THEIR commands using universal handlers above
4. Stay as that agent until user types *exit
5. On *exit: Confirm, then return to BMad Orchestrator persona
</agent-transformation>
<party-mode critical="true">
When user selects *party-mode:
1. Enter group chat simulation mode
2. Load ALL agent personas from this bundle
3. Simulate each agent distinctly with their name and emoji
4. Create engaging multi-agent conversation
5. Each agent contributes based on their expertise
6. Format: "[emoji] Name: message"
7. Maintain distinct voices and perspectives for each agent
8. Continue until user types *exit-party
</party-mode>
<list-agents critical="true">
When user selects *list-agents:
1. Scan all agent nodes in this bundle
2. Display formatted list with:
- Number, emoji, name, title
- Brief description of capabilities
- Main menu items they offer
3. Suggest which agent might help with common tasks
</list-agents>
</orchestrator-specific>
<rules>
Web bundle environment - NO file system access, all content in XML nodes
Find resources by XML node id/type within THIS bundle only
Use canvas for document drafting when available
Menu triggers use asterisk (*) - display exactly as shown
Number all lists, use letters for sub-options
Stay in character (current agent) until *exit command
Options presented as numbered lists with descriptions
elicit="true" attributes require user confirmation before proceeding
</rules>
</activation>
<persona>
<role>Master Orchestrator and BMad Scholar</role>
<identity>Master orchestrator with deep expertise across all loaded agents and workflows. Technical brilliance balanced with
approachable communication.</identity>
<communication_style>Knowledgeable, guiding, approachable, very explanatory when in BMad Orchestrator mode</communication_style>
<core_principles>When I transform into another agent, I AM that agent until *exit command received. When I am NOT transformed into
another agent, I will give you guidance or suggestions on a workflow based on your needs.</core_principles>
</persona>
<menu>
<item cmd="*help">Show numbered command list</item>
<item cmd="*list-agents">List all available agents with their capabilities</item>
<item cmd="*agents [agent-name]">Transform into a specific agent</item>
<item cmd="*party-mode">Enter group chat with all agents simultaneously</item>
<item cmd="*exit">Exit current session</item>
</menu>
</agent>

View File

@@ -1,8 +0,0 @@
# CORE Module Configuration
# Generated by BMAD installer
# Version: 6.0.0-alpha.0
# Date: 2025-10-18T03:30:57.838Z
user_name: BMad
communication_language: English
output_folder: "{project-root}/docs"

View File

@@ -1,39 +0,0 @@
category,method_name,description,output_pattern
advanced,Tree of Thoughts,Explore multiple reasoning paths simultaneously then evaluate and select the best - perfect for complex problems with multiple valid approaches where finding the optimal path matters,paths → evaluation → selection
advanced,Graph of Thoughts,Model reasoning as an interconnected network of ideas to reveal hidden relationships - ideal for systems thinking and discovering emergent patterns in complex multi-factor situations,nodes → connections → patterns
advanced,Thread of Thought,Maintain coherent reasoning across long contexts by weaving a continuous narrative thread - essential for RAG systems and maintaining consistency in lengthy analyses,context → thread → synthesis
advanced,Self-Consistency Validation,Generate multiple independent approaches then compare for consistency - crucial for high-stakes decisions where verification and consensus building matter,approaches → comparison → consensus
advanced,Meta-Prompting Analysis,Step back to analyze the approach structure and methodology itself - valuable for optimizing prompts and improving problem-solving strategies,current → analysis → optimization
advanced,Reasoning via Planning,Build a reasoning tree guided by world models and goal states - excellent for strategic planning and sequential decision-making tasks,model → planning → strategy
collaboration,Stakeholder Round Table,Convene multiple personas to contribute diverse perspectives - essential for requirements gathering and finding balanced solutions across competing interests,perspectives → synthesis → alignment
collaboration,Expert Panel Review,Assemble domain experts for deep specialized analysis - ideal when technical depth and peer review quality are needed,expert views → consensus → recommendations
competitive,Red Team vs Blue Team,Adversarial attack-defend analysis to find vulnerabilities - critical for security testing and building robust solutions through adversarial thinking,defense → attack → hardening
core,Expand or Contract for Audience,Dynamically adjust detail level and technical depth for target audience - essential when content needs to match specific reader capabilities,audience → adjustments → refined content
core,Critique and Refine,Systematic review to identify strengths and weaknesses then improve - standard quality check for drafts needing polish and enhancement,strengths/weaknesses → improvements → refined version
core,Explain Reasoning,Walk through step-by-step thinking to show how conclusions were reached - crucial for transparency and helping others understand complex logic,steps → logic → conclusion
core,First Principles Analysis,Strip away assumptions to rebuild from fundamental truths - breakthrough technique for innovation and solving seemingly impossible problems,assumptions → truths → new approach
core,5 Whys Deep Dive,Repeatedly ask why to drill down to root causes - simple but powerful for understanding failures and fixing problems at their source,why chain → root cause → solution
core,Socratic Questioning,Use targeted questions to reveal hidden assumptions and guide discovery - excellent for teaching and helping others reach insights themselves,questions → revelations → understanding
creative,Reverse Engineering,Work backwards from desired outcome to find implementation path - powerful for goal achievement and understanding how to reach specific endpoints,end state → steps backward → path forward
creative,What If Scenarios,Explore alternative realities to understand possibilities and implications - valuable for contingency planning and creative exploration,scenarios → implications → insights
creative,SCAMPER Method,Apply seven creativity lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse) - systematic ideation for product innovation and improvement,S→C→A→M→P→E→R
learning,Feynman Technique,Explain complex concepts simply as if teaching a child - the ultimate test of true understanding and excellent for knowledge transfer,complex → simple → gaps → mastery
learning,Active Recall Testing,Test understanding without references to verify true knowledge - essential for identifying gaps and reinforcing mastery,test → gaps → reinforcement
narrative,Unreliable Narrator Mode,Question assumptions and biases by adopting skeptical perspective - crucial for detecting hidden agendas and finding balanced truth,perspective → biases → balanced view
optimization,Speedrun Optimization,Find the fastest most efficient path by eliminating waste - perfect when time pressure demands maximum efficiency,current → bottlenecks → optimized
optimization,New Game Plus,Revisit challenges with enhanced capabilities from prior experience - excellent for iterative improvement and mastery building,initial → enhanced → improved
optimization,Roguelike Permadeath,Treat decisions as irreversible to force careful high-stakes analysis - ideal for critical decisions with no second chances,decision → consequences → execution
philosophical,Occam's Razor Application,Find the simplest sufficient explanation by eliminating unnecessary complexity - essential for debugging and theory selection,options → simplification → selection
philosophical,Trolley Problem Variations,Explore ethical trade-offs through moral dilemmas - valuable for understanding values and making difficult ethical decisions,dilemma → analysis → decision
quantum,Observer Effect Consideration,Analyze how the act of measurement changes what's being measured - important for understanding metrics impact and self-aware systems,unmeasured → observation → impact
retrospective,Hindsight Reflection,Imagine looking back from the future to gain perspective - powerful for project reviews and extracting wisdom from experience,future view → insights → application
retrospective,Lessons Learned Extraction,Systematically identify key takeaways and actionable improvements - essential for knowledge transfer and continuous improvement,experience → lessons → actions
risk,Identify Potential Risks,Brainstorm what could go wrong across all categories - fundamental for project planning and deployment preparation,categories → risks → mitigations
risk,Challenge from Critical Perspective,Play devil's advocate to stress-test ideas and find weaknesses - essential for overcoming groupthink and building robust solutions,assumptions → challenges → strengthening
risk,Failure Mode Analysis,Systematically explore how each component could fail - critical for reliability engineering and safety-critical systems,components → failures → prevention
risk,Pre-mortem Analysis,Imagine future failure then work backwards to prevent it - powerful technique for risk mitigation before major launches,failure scenario → causes → prevention
scientific,Peer Review Simulation,Apply rigorous academic evaluation standards - ensures quality through methodology review and critical assessment,methodology → analysis → recommendations
scientific,Reproducibility Check,Verify results can be replicated independently - fundamental for reliability and scientific validity,method → replication → validation
structural,Dependency Mapping,Visualize interconnections to understand requirements and impacts - essential for complex systems and integration planning,components → dependencies → impacts
structural,Information Architecture Review,Optimize organization and hierarchy for better user experience - crucial for fixing navigation and findability problems,current → pain points → restructure
structural,Skeleton of Thought,Create structure first then expand branches in parallel - efficient for generating long content quickly with good organization,skeleton → branches → integration
1 category method_name description output_pattern
2 advanced Tree of Thoughts Explore multiple reasoning paths simultaneously then evaluate and select the best - perfect for complex problems with multiple valid approaches where finding the optimal path matters paths → evaluation → selection
3 advanced Graph of Thoughts Model reasoning as an interconnected network of ideas to reveal hidden relationships - ideal for systems thinking and discovering emergent patterns in complex multi-factor situations nodes → connections → patterns
4 advanced Thread of Thought Maintain coherent reasoning across long contexts by weaving a continuous narrative thread - essential for RAG systems and maintaining consistency in lengthy analyses context → thread → synthesis
5 advanced Self-Consistency Validation Generate multiple independent approaches then compare for consistency - crucial for high-stakes decisions where verification and consensus building matter approaches → comparison → consensus
6 advanced Meta-Prompting Analysis Step back to analyze the approach structure and methodology itself - valuable for optimizing prompts and improving problem-solving strategies current → analysis → optimization
7 advanced Reasoning via Planning Build a reasoning tree guided by world models and goal states - excellent for strategic planning and sequential decision-making tasks model → planning → strategy
8 collaboration Stakeholder Round Table Convene multiple personas to contribute diverse perspectives - essential for requirements gathering and finding balanced solutions across competing interests perspectives → synthesis → alignment
9 collaboration Expert Panel Review Assemble domain experts for deep specialized analysis - ideal when technical depth and peer review quality are needed expert views → consensus → recommendations
10 competitive Red Team vs Blue Team Adversarial attack-defend analysis to find vulnerabilities - critical for security testing and building robust solutions through adversarial thinking defense → attack → hardening
11 core Expand or Contract for Audience Dynamically adjust detail level and technical depth for target audience - essential when content needs to match specific reader capabilities audience → adjustments → refined content
12 core Critique and Refine Systematic review to identify strengths and weaknesses then improve - standard quality check for drafts needing polish and enhancement strengths/weaknesses → improvements → refined version
13 core Explain Reasoning Walk through step-by-step thinking to show how conclusions were reached - crucial for transparency and helping others understand complex logic steps → logic → conclusion
14 core First Principles Analysis Strip away assumptions to rebuild from fundamental truths - breakthrough technique for innovation and solving seemingly impossible problems assumptions → truths → new approach
15 core 5 Whys Deep Dive Repeatedly ask why to drill down to root causes - simple but powerful for understanding failures and fixing problems at their source why chain → root cause → solution
16 core Socratic Questioning Use targeted questions to reveal hidden assumptions and guide discovery - excellent for teaching and helping others reach insights themselves questions → revelations → understanding
17 creative Reverse Engineering Work backwards from desired outcome to find implementation path - powerful for goal achievement and understanding how to reach specific endpoints end state → steps backward → path forward
18 creative What If Scenarios Explore alternative realities to understand possibilities and implications - valuable for contingency planning and creative exploration scenarios → implications → insights
19 creative SCAMPER Method Apply seven creativity lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse) - systematic ideation for product innovation and improvement S→C→A→M→P→E→R
20 learning Feynman Technique Explain complex concepts simply as if teaching a child - the ultimate test of true understanding and excellent for knowledge transfer complex → simple → gaps → mastery
21 learning Active Recall Testing Test understanding without references to verify true knowledge - essential for identifying gaps and reinforcing mastery test → gaps → reinforcement
22 narrative Unreliable Narrator Mode Question assumptions and biases by adopting skeptical perspective - crucial for detecting hidden agendas and finding balanced truth perspective → biases → balanced view
23 optimization Speedrun Optimization Find the fastest most efficient path by eliminating waste - perfect when time pressure demands maximum efficiency current → bottlenecks → optimized
24 optimization New Game Plus Revisit challenges with enhanced capabilities from prior experience - excellent for iterative improvement and mastery building initial → enhanced → improved
25 optimization Roguelike Permadeath Treat decisions as irreversible to force careful high-stakes analysis - ideal for critical decisions with no second chances decision → consequences → execution
26 philosophical Occam's Razor Application Find the simplest sufficient explanation by eliminating unnecessary complexity - essential for debugging and theory selection options → simplification → selection
27 philosophical Trolley Problem Variations Explore ethical trade-offs through moral dilemmas - valuable for understanding values and making difficult ethical decisions dilemma → analysis → decision
28 quantum Observer Effect Consideration Analyze how the act of measurement changes what's being measured - important for understanding metrics impact and self-aware systems unmeasured → observation → impact
29 retrospective Hindsight Reflection Imagine looking back from the future to gain perspective - powerful for project reviews and extracting wisdom from experience future view → insights → application
30 retrospective Lessons Learned Extraction Systematically identify key takeaways and actionable improvements - essential for knowledge transfer and continuous improvement experience → lessons → actions
31 risk Identify Potential Risks Brainstorm what could go wrong across all categories - fundamental for project planning and deployment preparation categories → risks → mitigations
32 risk Challenge from Critical Perspective Play devil's advocate to stress-test ideas and find weaknesses - essential for overcoming groupthink and building robust solutions assumptions → challenges → strengthening
33 risk Failure Mode Analysis Systematically explore how each component could fail - critical for reliability engineering and safety-critical systems components → failures → prevention
34 risk Pre-mortem Analysis Imagine future failure then work backwards to prevent it - powerful technique for risk mitigation before major launches failure scenario → causes → prevention
35 scientific Peer Review Simulation Apply rigorous academic evaluation standards - ensures quality through methodology review and critical assessment methodology → analysis → recommendations
36 scientific Reproducibility Check Verify results can be replicated independently - fundamental for reliability and scientific validity method → replication → validation
37 structural Dependency Mapping Visualize interconnections to understand requirements and impacts - essential for complex systems and integration planning components → dependencies → impacts
38 structural Information Architecture Review Optimize organization and hierarchy for better user experience - crucial for fixing navigation and findability problems current → pain points → restructure
39 structural Skeleton of Thought Create structure first then expand branches in parallel - efficient for generating long content quickly with good organization skeleton → branches → integration

View File

@@ -1,104 +0,0 @@
<task id="bmad/core/tasks/adv-elicit.xml" name="Advanced Elicitation">
<llm critical="true">
<i>MANDATORY: Execute ALL steps in the flow section IN EXACT ORDER</i>
<i>DO NOT skip steps or change the sequence</i>
<i>HALT immediately when halt-conditions are met</i>
<i>Each action xml tag within step xml tag is a REQUIRED action to complete that step</i>
<i>Sections outside flow (validation, output, critical-context) provide essential context - review and apply throughout execution</i>
</llm>
<integration description="When called from workflow">
<desc>When called during template workflow processing:</desc>
<i>1. Receive the current section content that was just generated</i>
<i>2. Apply elicitation methods iteratively to enhance that specific content</i>
<i>3. Return the enhanced version back when user selects 'x' to proceed and return back</i>
<i>4. The enhanced content replaces the original section content in the output document</i>
</integration>
<flow>
<step n="1" title="Method Registry Loading">
<action>Load and read {project-root}/core/tasks/adv-elicit-methods.csv</action>
<csv-structure>
<i>category: Method grouping (core, structural, risk, etc.)</i>
<i>method_name: Display name for the method</i>
<i>description: Rich explanation of what the method does, when to use it, and why it's valuable</i>
<i>output_pattern: Flexible flow guide using → arrows (e.g., "analysis → insights → action")</i>
</csv-structure>
<context-analysis>
<i>Use conversation history</i>
<i>Analyze: content type, complexity, stakeholder needs, risk level, and creative potential</i>
</context-analysis>
<smart-selection>
<i>1. Analyze context: Content type, complexity, stakeholder needs, risk level, creative potential</i>
<i>2. Parse descriptions: Understand each method's purpose from the rich descriptions in CSV</i>
<i>3. Select 5 methods: Choose methods that best match the context based on their descriptions</i>
<i>4. Balance approach: Include mix of foundational and specialized techniques as appropriate</i>
</smart-selection>
</step>
<step n="2" title="Present Options and Handle Responses">
<format>
**Advanced Elicitation Options**
Choose a number (1-5), r to shuffle, or x to proceed:
1. [Method Name]
2. [Method Name]
3. [Method Name]
4. [Method Name]
5. [Method Name]
r. Reshuffle the list with 5 new options
x. Proceed / No Further Actions
</format>
<response-handling>
<case n="1-5">
<i>Execute the selected method using its description from the CSV</i>
<i>Adapt the method's complexity and output format based on the current context</i>
<i>Apply the method creatively to the current section content being enhanced</i>
<i>Display the enhanced version showing what the method revealed or improved</i>
<i>CRITICAL: Ask the user if they would like to apply the changes to the doc (y/n/other) and HALT to await response.</i>
<i>CRITICAL: ONLY if Yes, apply the changes. IF No, discard your memory of the proposed changes. If any other reply, try best to
follow the instructions given by the user.</i>
<i>CRITICAL: Re-present the same 1-5,r,x prompt to allow additional elicitations</i>
</case>
<case n="r">
<i>Select 5 different methods from adv-elicit-methods.csv, present new list with same prompt format</i>
</case>
<case n="x">
<i>Complete elicitation and proceed</i>
<i>Return the fully enhanced content back to create-doc.md</i>
<i>The enhanced content becomes the final version for that section</i>
<i>Signal completion back to create-doc.md to continue with next section</i>
</case>
<case n="direct-feedback">
<i>Apply changes to current section content and re-present choices</i>
</case>
<case n="multiple-numbers">
<i>Execute methods in sequence on the content, then re-offer choices</i>
</case>
</response-handling>
</step>
<step n="3" title="Execution Guidelines">
<i>Method execution: Use the description from CSV to understand and apply each method</i>
<i>Output pattern: Use the pattern as a flexible guide (e.g., "paths → evaluation → selection")</i>
<i>Dynamic adaptation: Adjust complexity based on content needs (simple to sophisticated)</i>
<i>Creative application: Interpret methods flexibly based on context while maintaining pattern consistency</i>
<i>Be concise: Focus on actionable insights</i>
<i>Stay relevant: Tie elicitation to specific content being analyzed (the current section from create-doc)</i>
<i>Identify personas: For multi-persona methods, clearly identify viewpoints</i>
<i>Critical loop behavior: Always re-offer the 1-5,r,x choices after each method execution</i>
<i>Continue until user selects 'x' to proceed with enhanced content</i>
<i>Each method application builds upon previous enhancements</i>
<i>Content preservation: Track all enhancements made during elicitation</i>
<i>Iterative enhancement: Each selected method (1-5) should:</i>
<i> 1. Apply to the current enhanced version of the content</i>
<i> 2. Show the improvements made</i>
<i> 3. Return to the prompt for additional elicitations or completion</i>
</step>
</flow>
</task>

View File

@@ -1,63 +0,0 @@
<task id="bmad/core/tasks/index-docs" name="Index Docs" webskip="true">
<llm critical="true">
<i>MANDATORY: Execute ALL steps in the flow section IN EXACT ORDER</i>
<i>DO NOT skip steps or change the sequence</i>
<i>HALT immediately when halt-conditions are met</i>
<i>Each action xml tag within step xml tag is a REQUIRED action to complete that step</i>
<i>Sections outside flow (validation, output, critical-context) provide essential context - review and apply throughout execution</i>
</llm>
<flow>
<step n="1" title="Scan Directory">
<i>List all files and subdirectories in the target location</i>
</step>
<step n="2" title="Group Content">
<i>Organize files by type, purpose, or subdirectory</i>
</step>
<step n="3" title="Generate Descriptions">
<i>Read each file to understand its actual purpose and create brief (3-10 word) descriptions based on the content, not just the filename</i>
</step>
<step n="4" title="Create/Update Index">
<i>Write or update index.md with organized file listings</i>
</step>
</flow>
<output-format>
<example>
# Directory Index
## Files
- **[filename.ext](./filename.ext)** - Brief description
- **[another-file.ext](./another-file.ext)** - Brief description
## Subdirectories
### subfolder/
- **[file1.ext](./subfolder/file1.ext)** - Brief description
- **[file2.ext](./subfolder/file2.ext)** - Brief description
### another-folder/
- **[file3.ext](./another-folder/file3.ext)** - Brief description
</example>
</output-format>
<halt-conditions critical="true">
<i>HALT if target directory does not exist or is inaccessible</i>
<i>HALT if user does not have write permissions to create index.md</i>
</halt-conditions>
<validation>
<i>Use relative paths starting with ./</i>
<i>Group similar files together</i>
<i>Read file contents to generate accurate descriptions - don't guess from filenames</i>
<i>Keep descriptions concise but informative (3-10 words)</i>
<i>Sort alphabetically within groups</i>
<i>Skip hidden files (starting with .) unless specified</i>
</validation>
</task>

View File

@@ -1,88 +0,0 @@
<task id="bmad/core/tasks/validate-workflow.xml" name="Validate Workflow Output">
<objective>Run a checklist against a document with thorough analysis and produce a validation report</objective>
<inputs>
<input name="workflow" desc="Workflow path containing checklist.md" />
<input name="checklist" desc="Checklist to validate against (defaults to workflow's checklist.md)" />
<input name="document" desc="Document to validate (ask user if not specified)" />
</inputs>
<flow>
<step n="1" title="Setup">
<action>If checklist not provided, load checklist.md from workflow location</action>
<action>If document not provided, ask user: "Which document should I validate?"</action>
<action>Load both the checklist and document</action>
</step>
<step n="2" title="Validate" critical="true">
<mandate>For EVERY checklist item, WITHOUT SKIPPING ANY:</mandate>
<for-each-item>
<action>Read requirement carefully</action>
<action>Search document for evidence along with any ancillary loaded documents or artifacts (quotes with line numbers)</action>
<action>Analyze deeply - look for explicit AND implied coverage</action>
<mark-as>
✓ PASS - Requirement fully met (provide evidence)
⚠ PARTIAL - Some coverage but incomplete (explain gaps)
✗ FAIL - Not met or severely deficient (explain why)
N/A - Not applicable (explain reason)
</mark-as>
</for-each-item>
<critical>DO NOT SKIP ANY SECTIONS OR ITEMS</critical>
</step>
<step n="3" title="Generate Report">
<action>Create validation-report-{timestamp}.md in document's folder</action>
<report-format>
# Validation Report
**Document:** {document-path}
**Checklist:** {checklist-path}
**Date:** {timestamp}
## Summary
- Overall: X/Y passed (Z%)
- Critical Issues: {count}
## Section Results
### {Section Name}
Pass Rate: X/Y (Z%)
{For each item:}
[MARK] {Item description}
Evidence: {Quote with line# or explanation}
{If FAIL/PARTIAL: Impact: {why this matters}}
## Failed Items
{All ✗ items with recommendations}
## Partial Items
{All ⚠ items with what's missing}
## Recommendations
1. Must Fix: {critical failures}
2. Should Improve: {important gaps}
3. Consider: {minor improvements}
</report-format>
</step>
<step n="4" title="Summary for User">
<action>Present section-by-section summary</action>
<action>Highlight all critical issues</action>
<action>Provide path to saved report</action>
<action>HALT - do not continue unless user asks</action>
</step>
</flow>
<critical-rules>
<rule>NEVER skip sections - validate EVERYTHING</rule>
<rule>ALWAYS provide evidence (quotes + line numbers) for marks</rule>
<rule>Think deeply about each requirement - don't rush</rule>
<rule>Save report to document's folder automatically</rule>
<rule>HALT after presenting summary - wait for user</rule>
</critical-rules>
</task>

View File

@@ -1,166 +0,0 @@
<task id="bmad/core/tasks/workflow.xml" name="Execute Workflow">
<objective>Execute given workflow by loading its configuration, following instructions, and producing output</objective>
<llm critical="true">
<mandate>Always read COMPLETE files - NEVER use offset/limit when reading any workflow related files</mandate>
<mandate>Instructions are MANDATORY - either as file path, steps or embedded list in YAML, XML or markdown</mandate>
<mandate>Execute ALL steps in instructions IN EXACT ORDER</mandate>
<mandate>Save to template output file after EVERY "template-output" tag</mandate>
<mandate>NEVER delegate a step - YOU are responsible for every steps execution</mandate>
</llm>
<WORKFLOW-RULES critical="true">
<rule n="1">Steps execute in exact numerical order (1, 2, 3...)</rule>
<rule n="2">Optional steps: Ask user unless #yolo mode active</rule>
<rule n="3">Template-output tags: Save content → Show user → Get approval before continuing</rule>
<rule n="4">Elicit tags: Execute immediately unless #yolo mode (which skips ALL elicitation)</rule>
<rule n="5">User must approve each major section before continuing UNLESS #yolo mode active</rule>
</WORKFLOW-RULES>
<flow>
<step n="1" title="Load and Initialize Workflow">
<substep n="1a" title="Load Configuration and Resolve Variables">
<action>Read workflow.yaml from provided path</action>
<mandate>Load config_source (REQUIRED for all modules)</mandate>
<phase n="1">Load external config from config_source path</phase>
<phase n="2">Resolve all {config_source}: references with values from config</phase>
<phase n="3">Resolve system variables (date:system-generated) and paths ({project-root}, {installed_path})</phase>
<phase n="4">Ask user for input of any variables that are still unknown</phase>
</substep>
<substep n="1b" title="Load Required Components">
<mandate>Instructions: Read COMPLETE file from path OR embedded list (REQUIRED)</mandate>
<check>If template path → Read COMPLETE template file</check>
<check>If validation path → Note path for later loading when needed</check>
<check>If template: false → Mark as action-workflow (else template-workflow)</check>
<note>Data files (csv, json) → Store paths only, load on-demand when instructions reference them</note>
</substep>
<substep n="1c" title="Initialize Output" if="template-workflow">
<action>Resolve default_output_file path with all variables and {{date}}</action>
<action>Create output directory if doesn't exist</action>
<action>If template-workflow → Write template to output file with placeholders</action>
<action>If action-workflow → Skip file creation</action>
</substep>
</step>
<step n="2" title="Process Each Instruction Step">
<iterate>For each step in instructions:</iterate>
<substep n="2a" title="Handle Step Attributes">
<check>If optional="true" and NOT #yolo → Ask user to include</check>
<check>If if="condition" → Evaluate condition</check>
<check>If for-each="item" → Repeat step for each item</check>
<check>If repeat="n" → Repeat step n times</check>
</substep>
<substep n="2b" title="Execute Step Content">
<action>Process step instructions (markdown or XML tags)</action>
<action>Replace {{variables}} with values (ask user if unknown)</action>
<execute-tags>
<tag>action xml tag → Perform the action</tag>
<tag>check if="condition" xml tag → Conditional block wrapping actions (requires closing &lt;/check&gt;)</tag>
<tag>ask xml tag → Prompt user and WAIT for response</tag>
<tag>invoke-workflow xml tag → Execute another workflow with given inputs</tag>
<tag>invoke-task xml tag → Execute specified task</tag>
<tag>goto step="x" → Jump to specified step</tag>
</execute-tags>
</substep>
<substep n="2c" title="Handle Special Output Tags">
<if tag="template-output">
<mandate>Generate content for this section</mandate>
<mandate>Save to file (Write first time, Edit subsequent)</mandate>
<action>Show checkpoint separator: ━━━━━━━━━━━━━━━━━━━━━━━</action>
<action>Display generated content</action>
<ask>Continue [c] or Edit [e]? WAIT for response</ask>
</if>
<if tag="elicit-required">
<mandate critical="true">YOU MUST READ the file at {project-root}/bmad/core/tasks/adv-elicit.xml using Read tool BEFORE presenting
any elicitation menu</mandate>
<action>Load and run task {project-root}/bmad/core/tasks/adv-elicit.xml with current context</action>
<action>Show elicitation menu 5 relevant options (list 1-5 options, Continue [c] or Reshuffle [r])</action>
<mandate>HALT and WAIT for user selection</mandate>
</if>
</substep>
<substep n="2d" title="Step Completion">
<check>If no special tags and NOT #yolo:</check>
<ask>Continue to next step? (y/n/edit)</ask>
</substep>
</step>
<step n="3" title="Completion">
<check>If checklist exists → Run validation</check>
<check>If template: false → Confirm actions completed</check>
<check>Else → Confirm document saved to output path</check>
<action>Report workflow completion</action>
</step>
</flow>
<execution-modes>
<mode name="normal">Full user interaction at all decision points</mode>
<mode name="#yolo">Skip optional sections, skip all elicitation, minimize prompts</mode>
</execution-modes>
<supported-tags desc="Instructions can use these tags">
<structural>
<tag>step n="X" goal="..." - Define step with number and goal</tag>
<tag>optional="true" - Step can be skipped</tag>
<tag>if="condition" - Conditional execution</tag>
<tag>for-each="collection" - Iterate over items</tag>
<tag>repeat="n" - Repeat n times</tag>
</structural>
<execution>
<tag>action - Required action to perform</tag>
<tag>action if="condition" - Single conditional action (inline, no closing tag needed)</tag>
<tag>check if="condition"&gt;...&lt;/check&gt; - Conditional block wrapping multiple items (closing tag required)</tag>
<tag>ask - Get user input (wait for response)</tag>
<tag>goto - Jump to another step</tag>
<tag>invoke-workflow - Call another workflow</tag>
<tag>invoke-task - Call a task</tag>
</execution>
<output>
<tag>template-output - Save content checkpoint</tag>
<tag>elicit-required - Trigger enhancement</tag>
<tag>critical - Cannot be skipped</tag>
<tag>example - Show example output</tag>
</output>
</supported-tags>
<conditional-execution-patterns desc="When to use each pattern">
<pattern type="single-action">
<use-case>One action with a condition</use-case>
<syntax>&lt;action if="condition"&gt;Do something&lt;/action&gt;</syntax>
<example>&lt;action if="file exists"&gt;Load the file&lt;/action&gt;</example>
<rationale>Cleaner and more concise for single items</rationale>
</pattern>
<pattern type="multi-action-block">
<use-case>Multiple actions/tags under same condition</use-case>
<syntax>&lt;check if="condition"&gt;
&lt;action&gt;First action&lt;/action&gt;
&lt;action&gt;Second action&lt;/action&gt;
&lt;/check&gt;</syntax>
<example>&lt;check if="validation fails"&gt;
&lt;action&gt;Log error&lt;/action&gt;
&lt;goto step="1"&gt;Retry&lt;/goto&gt;
&lt;/check&gt;</example>
<rationale>Explicit scope boundaries prevent ambiguity</rationale>
</pattern>
<pattern type="nested-conditions">
<use-case>Else/alternative branches</use-case>
<syntax>&lt;check if="condition A"&gt;...&lt;/check&gt;
&lt;check if="else"&gt;...&lt;/check&gt;</syntax>
<rationale>Clear branching logic with explicit blocks</rationale>
</pattern>
</conditional-execution-patterns>
<llm final="true">
<mandate>This is the complete workflow execution engine</mandate>
<mandate>You MUST Follow instructions exactly as written and maintain conversation context between steps</mandate>
<mandate>If confused, re-read this task, the workflow yaml, and any yaml indicated files</mandate>
</llm>
</task>

View File

@@ -1,271 +0,0 @@
---
last-redoc-date: 2025-09-28
---
# Brainstorming Session Workflow
## Overview
The brainstorming workflow facilitates interactive brainstorming sessions using diverse creative techniques. This workflow acts as an AI facilitator guiding users through various ideation methods to generate and refine creative solutions in a structured, energetic, and highly interactive manner.
## Key Features
- **36 Creative Techniques**: Comprehensive library spanning collaborative, structured, creative, deep, theatrical, wild, and introspective approaches
- **Interactive Facilitation**: AI acts as a skilled facilitator using "Yes, and..." methodology
- **Flexible Approach Selection**: User-guided, AI-recommended, random, or progressive technique flows
- **Context-Aware Sessions**: Supports domain-specific brainstorming through context document input
- **Systematic Organization**: Converges ideas into immediate opportunities, future innovations, and moonshots
- **Action Planning**: Prioritizes top ideas with concrete next steps and timelines
- **Session Documentation**: Comprehensive structured reports capturing all insights and outcomes
## Usage
### Basic Invocation
```bash
workflow brainstorming
```
### With Context Document
```bash
# Provide domain-specific context to guide the session
workflow brainstorming --data /path/to/context.md
```
### Configuration
The workflow leverages configuration from `/bmad/cis/config.yaml`:
- **output_folder**: Where session results are saved
- **user_name**: Session participant identification
- **brain_techniques**: CSV database of 36 creative techniques
## Workflow Structure
### Files Included
```
brainstorming/
├── workflow.yaml # Configuration and metadata
├── instructions.md # Step-by-step execution guide
├── template.md # Session report structure
├── brain-methods.csv # Database of 36 creative techniques
└── README.md # This file
```
## Creative Techniques Library
The workflow includes 36 techniques organized into 7 categories:
### Collaborative Techniques
- **Yes And Building**: Build momentum through positive additions
- **Brain Writing Round Robin**: Silent idea generation with sequential building
- **Random Stimulation**: Use random catalysts for unexpected connections
- **Role Playing**: Generate solutions from multiple stakeholder perspectives
### Structured Approaches
- **SCAMPER Method**: Systematic creativity through seven lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse)
- **Six Thinking Hats**: Explore through six perspectives (facts/emotions/benefits/risks/creativity/process)
- **Mind Mapping**: Visual branching from central concepts
- **Resource Constraints**: Innovation through extreme limitations
### Creative Methods
- **What If Scenarios**: Explore radical possibilities by questioning constraints
- **Analogical Thinking**: Find solutions through domain parallels
- **Reversal Inversion**: Flip problems upside down for fresh angles
- **First Principles Thinking**: Strip away assumptions to rebuild from fundamentals
- **Forced Relationships**: Connect unrelated concepts for innovation
- **Time Shifting**: Explore solutions across different time periods
- **Metaphor Mapping**: Use extended metaphors as thinking tools
### Deep Analysis
- **Five Whys**: Drill down through causation layers to root causes
- **Morphological Analysis**: Systematically explore parameter combinations
- **Provocation Technique**: Extract useful ideas from absurd starting points
- **Assumption Reversal**: Challenge and flip core assumptions
- **Question Storming**: Generate questions before seeking answers
### Theatrical Approaches
- **Time Travel Talk Show**: Interview past/present/future selves
- **Alien Anthropologist**: Examine through completely foreign eyes
- **Dream Fusion Laboratory**: Start with impossible solutions, work backwards
- **Emotion Orchestra**: Let different emotions lead separate sessions
- **Parallel Universe Cafe**: Explore under alternative reality rules
### Wild Methods
- **Chaos Engineering**: Deliberately break things to discover robust solutions
- **Guerrilla Gardening Ideas**: Plant unexpected solutions in unlikely places
- **Pirate Code Brainstorm**: Take what works from anywhere and remix
- **Zombie Apocalypse Planning**: Design for extreme survival scenarios
- **Drunk History Retelling**: Explain with uninhibited simplicity
### Introspective Delight
- **Inner Child Conference**: Channel pure childhood curiosity
- **Shadow Work Mining**: Explore what you're avoiding or resisting
- **Values Archaeology**: Excavate deep personal values driving decisions
- **Future Self Interview**: Seek wisdom from your wiser future self
- **Body Wisdom Dialogue**: Let physical sensations guide ideation
## Workflow Process
### Phase 1: Session Setup (Step 1)
- Context gathering (topic, goals, constraints)
- Domain-specific guidance if context document provided
- Session scope definition (broad exploration vs. focused ideation)
### Phase 2: Approach Selection (Step 2)
- **User-Selected**: Browse and choose specific techniques
- **AI-Recommended**: Tailored technique suggestions based on context
- **Random Selection**: Surprise technique for creative breakthrough
- **Progressive Flow**: Multi-technique journey from broad to focused
### Phase 3: Interactive Facilitation (Step 3)
- Master facilitator approach using questions, not answers
- "Yes, and..." building methodology
- Energy monitoring and technique switching
- Real-time idea capture and momentum building
- Quantity over quality focus (aim: 100 ideas in 60 minutes)
### Phase 4: Convergent Organization (Step 4)
- Review and categorize all generated ideas
- Identify patterns and themes across techniques
- Sort into three priority buckets for action planning
### Phase 5: Insight Extraction (Step 5)
- Surface recurring themes across multiple techniques
- Identify key realizations and surprising connections
- Extract deeper patterns and meta-insights
### Phase 6: Action Planning (Step 6)
- Prioritize top 3 ideas for implementation
- Define concrete next steps for each priority
- Determine resource needs and realistic timelines
### Phase 7: Session Reflection (Step 7)
- Analyze what worked well and areas for further exploration
- Recommend follow-up techniques and next session planning
- Capture emergent questions for future investigation
### Phase 8: Report Generation (Step 8)
- Compile comprehensive structured report
- Calculate total ideas generated and techniques used
- Format all content for sharing and future reference
## Output
### Generated Files
- **Primary output**: Structured session report saved to `{output_folder}/brainstorming-session-results-{date}.md`
- **Context integration**: Links to previous brainstorming sessions if available
### Output Structure
1. **Executive Summary** - Topic, goals, techniques used, total ideas generated, key themes
2. **Technique Sessions** - Detailed capture of each technique's ideation process
3. **Idea Categorization** - Immediate opportunities, future innovations, moonshots, insights
4. **Action Planning** - Top 3 priorities with rationale, steps, resources, timelines
5. **Reflection and Follow-up** - Session analysis, recommendations, next steps planning
## Requirements
- No special software requirements
- Access to the CIS module configuration (`/bmad/cis/config.yaml`)
- Active participation and engagement throughout the interactive session
- Optional: Domain context document for focused brainstorming
## Best Practices
### Before Starting
1. **Define Clear Intent**: Know whether you want broad exploration or focused problem-solving
2. **Gather Context**: Prepare any relevant background documents or domain knowledge
3. **Set Time Expectations**: Plan for 45-90 minutes for a comprehensive session
4. **Create Open Environment**: Ensure distraction-free space for creative thinking
### During Execution
1. **Embrace Quantity**: Generate many ideas without self-censoring
2. **Build with "Yes, And"**: Accept and expand on ideas rather than judging
3. **Stay Curious**: Follow unexpected connections and tangents
4. **Trust the Process**: Let the facilitator guide you through technique transitions
5. **Capture Everything**: Document all ideas, even seemingly silly ones
6. **Monitor Energy**: Communicate when you need technique changes or breaks
### After Completion
1. **Review Within 24 Hours**: Re-read the report while insights are fresh
2. **Act on Quick Wins**: Implement immediate opportunities within one week
3. **Schedule Follow-ups**: Plan development sessions for promising concepts
4. **Share Selectively**: Distribute relevant insights to appropriate stakeholders
## Facilitation Principles
The AI facilitator operates using these core principles:
- **Ask, Don't Tell**: Use questions to draw out participant's own ideas
- **Build, Don't Judge**: Use "Yes, and..." methodology, never "No, but..."
- **Quantity Over Quality**: Aim for volume in generation phase
- **Defer Judgment**: Evaluation comes after generation is complete
- **Stay Curious**: Show genuine interest in participant's unique perspectives
- **Monitor Energy**: Adapt technique and pace to participant's engagement level
## Example Session Flow
### Progressive Technique Flow
1. **Mind Mapping** (10 min) - Build the landscape of possibilities
2. **SCAMPER** (15 min) - Systematic exploration of improvement angles
3. **Six Thinking Hats** (15 min) - Multiple perspectives on solutions
4. **Forced Relationships** (10 min) - Creative synthesis of unexpected connections
### Energy Checkpoints
- After 15-20 minutes: "Should we continue with this technique or try something new?"
- Before convergent phase: "Are you ready to start organizing ideas, or explore more?"
- During action planning: "How's your energy for the final planning phase?"
## Customization
To customize this workflow:
1. **Add New Techniques**: Extend `brain-methods.csv` with additional creative methods
2. **Modify Facilitation Style**: Adjust prompts in `instructions.md` for different energy levels
3. **Update Report Structure**: Modify `template.md` to include additional analysis sections
4. **Create Domain Variants**: Develop specialized technique sets for specific industries
## Version History
- **v1.0.0** - Initial release
- 36 creative techniques across 7 categories
- Interactive facilitation with energy monitoring
- Comprehensive structured reporting
- Context-aware session guidance
## Support
For issues or questions:
- Review technique descriptions in `brain-methods.csv` for facilitation guidance
- Consult the workflow instructions in `instructions.md` for step-by-step details
- Reference the template structure in `template.md` for output expectations
- Follow BMAD documentation standards for workflow customization
---
_Part of the BMad Method v5 - Creative Ideation and Synthesis (CIS) Module_

View File

@@ -1,36 +0,0 @@
category,technique_name,description,facilitation_prompts,best_for,energy_level,typical_duration
collaborative,Yes And Building,Build momentum through positive additions where each idea becomes a launching pad for the next - creates energetic collaborative flow,Yes and we could also...|Building on that idea...|That reminds me of...|What if we added?,team-building,high,15-20
collaborative,Brain Writing Round Robin,Silent idea generation followed by building on others' written concepts - gives quieter voices equal contribution while maintaining documentation,Write your idea silently|Pass to the next person|Build on what you received|Keep ideas flowing,quiet-voices,moderate,20-25
collaborative,Random Stimulation,Use random words/images as creative catalysts to force unexpected connections - breaks through mental blocks with serendipitous inspiration,Pick a random word/image|How does this relate?|What connections do you see?|Force a relationship
collaborative,Role Playing,Generate solutions from multiple stakeholder perspectives - builds empathy while ensuring comprehensive consideration of all viewpoints,Think as a [role]|What would they want?|How would they approach this?|What matters to them?
creative,What If Scenarios,Explore radical possibilities by questioning all constraints and assumptions - perfect for breaking through stuck thinking and discovering unexpected opportunities,What if we had unlimited resources?|What if the opposite were true?|What if this problem didn't exist?,innovation,high,15-20
creative,Analogical Thinking,Find creative solutions by drawing parallels to other domains - helps transfer successful patterns from one context to another,This is like what?|How is this similar to...?|What other examples come to mind?
creative,Reversal Inversion,Deliberately flip problems upside down to reveal hidden assumptions and fresh angles - great when conventional approaches aren't working,What if we did the opposite?|How could we make this worse?|What's the reverse approach?
creative,First Principles Thinking,Strip away assumptions to rebuild from fundamental truths - essential for breakthrough innovation and solving complex problems,What do we know for certain?|What are the fundamental truths?|If we started from scratch?
creative,Forced Relationships,Connect unrelated concepts to spark innovative bridges - excellent for generating unexpected solutions through creative collision,Take these two unrelated things|Find connections between them|What bridges exist?|How could they work together?
creative,Time Shifting,Explore how solutions would work across different time periods - reveals constraints and opportunities by changing temporal context,How would this work in the past?|What about 100 years from now?|Different era constraints?|Time-based solutions?
creative,Metaphor Mapping,Use extended metaphors as thinking tools to explore problems from new angles - transforms abstract challenges into tangible narratives,This problem is like a [metaphor]|Extend the metaphor|What elements map over?|What insights emerge?
deep,Five Whys,Drill down through layers of causation to uncover root causes - essential for solving problems at their source rather than treating symptoms,Why did this happen?|Why is that?|And why is that true?|What's behind that?|Why ultimately?,problem-solving,moderate,10-15
deep,Morphological Analysis,Systematically explore all possible parameter combinations - perfect for complex systems requiring comprehensive solution mapping,What are the key parameters?|List options for each|Try different combinations|What patterns emerge?
deep,Provocation Technique,Use deliberately provocative statements to extract useful ideas from seemingly absurd starting points - catalyzes breakthrough thinking,What if [provocative statement]?|How could this be useful?|What idea does this trigger?|Extract the principle
deep,Assumption Reversal,Challenge and flip core assumptions to rebuild from new foundations - essential for paradigm shifts and fresh perspectives,What assumptions are we making?|What if the opposite were true?|Challenge each assumption|Rebuild from new assumptions
deep,Question Storming,Generate questions before seeking answers to properly define the problem space - ensures you're solving the right problem,Only ask questions|No answers allowed yet|What don't we know?|What should we be asking?
introspective_delight,Inner Child Conference,Channel pure childhood curiosity and wonder - rekindles playful exploration and innocent questioning that cuts through adult complications,What would 7-year-old you ask?|Why why why?|Make it fun again|No boring allowed
introspective_delight,Shadow Work Mining,Explore what you're actively avoiding or resisting - uncovers hidden insights by examining unconscious blocks and resistance patterns,What are you avoiding?|Where's the resistance?|What scares you about this?|Mine the shadows
introspective_delight,Values Archaeology,Excavate the deep personal values driving your decisions - clarifies authentic priorities by digging to bedrock motivations,What really matters here?|Why do you care?|Dig to bedrock values|What's non-negotiable?
introspective_delight,Future Self Interview,Seek wisdom from your wiser future self - gains long-term perspective through imagined temporal self-mentoring,Ask your 80-year-old self|What would you tell younger you?|Future wisdom speaks|Long-term perspective
introspective_delight,Body Wisdom Dialogue,Let physical sensations and gut feelings guide ideation - taps somatic intelligence often ignored by purely mental approaches,What does your body say?|Where do you feel it?|Trust the tension|Follow physical cues
structured,SCAMPER Method,Systematic creativity through seven lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse) - ideal for methodical product improvement and innovation,S-What could you substitute?|C-What could you combine?|A-How could you adapt?|M-What could you modify?|P-Put to other uses?|E-What could you eliminate?|R-What if reversed?
structured,Six Thinking Hats,Explore problems through six distinct perspectives (facts/emotions/benefits/risks/creativity/process) - ensures comprehensive analysis without conflict,White-What facts do we know?|Red-How do you feel about this?|Yellow-What are the benefits?|Black-What could go wrong?|Green-What creative alternatives?|Blue-How should we think about this?
structured,Mind Mapping,Visually branch ideas from a central concept to discover connections and expand thinking - perfect for organizing complex thoughts and seeing the big picture,Put the main idea in center|What branches from this?|How do these connect?|What sub-branches emerge?
structured,Resource Constraints,Generate innovative solutions by imposing extreme limitations - forces essential priorities and creative efficiency under pressure,What if you had only $1?|No technology allowed?|One hour to solve?|Minimal resources only?
theatrical,Time Travel Talk Show,Interview your past/present/future selves for temporal wisdom - playful method for gaining perspective across different life stages,Interview your past self|What would future you say?|Different timeline perspectives|Cross-temporal dialogue
theatrical,Alien Anthropologist,Examine familiar problems through completely foreign eyes - reveals hidden assumptions by adopting an outsider's bewildered perspective,You're an alien observer|What seems strange?|How would you explain this?|Outside perspective insights
theatrical,Dream Fusion Laboratory,Start with impossible fantasy solutions then reverse-engineer practical steps - makes ambitious thinking actionable through backwards design,Dream the impossible solution|Work backwards to reality|What steps bridge the gap?|Make magic practical
theatrical,Emotion Orchestra,Let different emotions lead separate brainstorming sessions then harmonize - uses emotional intelligence for comprehensive perspective,Angry perspective ideas|Joyful approach|Fearful considerations|Hopeful solutions|Harmonize all voices
theatrical,Parallel Universe Cafe,Explore solutions under alternative reality rules - breaks conventional thinking by changing fundamental assumptions about how things work,Different physics universe|Alternative social norms|Changed historical events|Reality rule variations
wild,Chaos Engineering,Deliberately break things to discover robust solutions - builds anti-fragility by stress-testing ideas against worst-case scenarios,What if everything went wrong?|Break it on purpose|How does it fail gracefully?|Build from the rubble
wild,Guerrilla Gardening Ideas,Plant unexpected solutions in unlikely places - uses surprise and unconventional placement for stealth innovation,Where's the least expected place?|Plant ideas secretly|Grow solutions underground|Surprise implementation
wild,Pirate Code Brainstorm,Take what works from anywhere and remix without permission - encourages rule-bending rapid prototyping and maverick thinking,What would pirates steal?|Remix without asking|Take the best and run|No permission needed
wild,Zombie Apocalypse Planning,Design solutions for extreme survival scenarios - strips away all but essential functions to find core value,Society collapsed - now what?|Only basics work|Build from nothing|Survival mode thinking
wild,Drunk History Retelling,Explain complex ideas with uninhibited simplicity - removes overthinking barriers to find raw truth through simplified expression,Explain it like you're tipsy|No filter needed|Raw unedited thoughts|Simplify to absurdity
1 category,technique_name,description,facilitation_prompts,best_for,energy_level,typical_duration
2 collaborative,Yes And Building,Build momentum through positive additions where each idea becomes a launching pad for the next - creates energetic collaborative flow,Yes and we could also...|Building on that idea...|That reminds me of...|What if we added?,team-building,high,15-20
3 collaborative,Brain Writing Round Robin,Silent idea generation followed by building on others' written concepts - gives quieter voices equal contribution while maintaining documentation,Write your idea silently|Pass to the next person|Build on what you received|Keep ideas flowing,quiet-voices,moderate,20-25
4 collaborative,Random Stimulation,Use random words/images as creative catalysts to force unexpected connections - breaks through mental blocks with serendipitous inspiration,Pick a random word/image|How does this relate?|What connections do you see?|Force a relationship
5 collaborative,Role Playing,Generate solutions from multiple stakeholder perspectives - builds empathy while ensuring comprehensive consideration of all viewpoints,Think as a [role]|What would they want?|How would they approach this?|What matters to them?
6 creative,What If Scenarios,Explore radical possibilities by questioning all constraints and assumptions - perfect for breaking through stuck thinking and discovering unexpected opportunities,What if we had unlimited resources?|What if the opposite were true?|What if this problem didn't exist?,innovation,high,15-20
7 creative,Analogical Thinking,Find creative solutions by drawing parallels to other domains - helps transfer successful patterns from one context to another,This is like what?|How is this similar to...?|What other examples come to mind?
8 creative,Reversal Inversion,Deliberately flip problems upside down to reveal hidden assumptions and fresh angles - great when conventional approaches aren't working,What if we did the opposite?|How could we make this worse?|What's the reverse approach?
9 creative,First Principles Thinking,Strip away assumptions to rebuild from fundamental truths - essential for breakthrough innovation and solving complex problems,What do we know for certain?|What are the fundamental truths?|If we started from scratch?
10 creative,Forced Relationships,Connect unrelated concepts to spark innovative bridges - excellent for generating unexpected solutions through creative collision,Take these two unrelated things|Find connections between them|What bridges exist?|How could they work together?
11 creative,Time Shifting,Explore how solutions would work across different time periods - reveals constraints and opportunities by changing temporal context,How would this work in the past?|What about 100 years from now?|Different era constraints?|Time-based solutions?
12 creative,Metaphor Mapping,Use extended metaphors as thinking tools to explore problems from new angles - transforms abstract challenges into tangible narratives,This problem is like a [metaphor]|Extend the metaphor|What elements map over?|What insights emerge?
13 deep,Five Whys,Drill down through layers of causation to uncover root causes - essential for solving problems at their source rather than treating symptoms,Why did this happen?|Why is that?|And why is that true?|What's behind that?|Why ultimately?,problem-solving,moderate,10-15
14 deep,Morphological Analysis,Systematically explore all possible parameter combinations - perfect for complex systems requiring comprehensive solution mapping,What are the key parameters?|List options for each|Try different combinations|What patterns emerge?
15 deep,Provocation Technique,Use deliberately provocative statements to extract useful ideas from seemingly absurd starting points - catalyzes breakthrough thinking,What if [provocative statement]?|How could this be useful?|What idea does this trigger?|Extract the principle
16 deep,Assumption Reversal,Challenge and flip core assumptions to rebuild from new foundations - essential for paradigm shifts and fresh perspectives,What assumptions are we making?|What if the opposite were true?|Challenge each assumption|Rebuild from new assumptions
17 deep,Question Storming,Generate questions before seeking answers to properly define the problem space - ensures you're solving the right problem,Only ask questions|No answers allowed yet|What don't we know?|What should we be asking?
18 introspective_delight,Inner Child Conference,Channel pure childhood curiosity and wonder - rekindles playful exploration and innocent questioning that cuts through adult complications,What would 7-year-old you ask?|Why why why?|Make it fun again|No boring allowed
19 introspective_delight,Shadow Work Mining,Explore what you're actively avoiding or resisting - uncovers hidden insights by examining unconscious blocks and resistance patterns,What are you avoiding?|Where's the resistance?|What scares you about this?|Mine the shadows
20 introspective_delight,Values Archaeology,Excavate the deep personal values driving your decisions - clarifies authentic priorities by digging to bedrock motivations,What really matters here?|Why do you care?|Dig to bedrock values|What's non-negotiable?
21 introspective_delight,Future Self Interview,Seek wisdom from your wiser future self - gains long-term perspective through imagined temporal self-mentoring,Ask your 80-year-old self|What would you tell younger you?|Future wisdom speaks|Long-term perspective
22 introspective_delight,Body Wisdom Dialogue,Let physical sensations and gut feelings guide ideation - taps somatic intelligence often ignored by purely mental approaches,What does your body say?|Where do you feel it?|Trust the tension|Follow physical cues
23 structured,SCAMPER Method,Systematic creativity through seven lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse) - ideal for methodical product improvement and innovation,S-What could you substitute?|C-What could you combine?|A-How could you adapt?|M-What could you modify?|P-Put to other uses?|E-What could you eliminate?|R-What if reversed?
24 structured,Six Thinking Hats,Explore problems through six distinct perspectives (facts/emotions/benefits/risks/creativity/process) - ensures comprehensive analysis without conflict,White-What facts do we know?|Red-How do you feel about this?|Yellow-What are the benefits?|Black-What could go wrong?|Green-What creative alternatives?|Blue-How should we think about this?
25 structured,Mind Mapping,Visually branch ideas from a central concept to discover connections and expand thinking - perfect for organizing complex thoughts and seeing the big picture,Put the main idea in center|What branches from this?|How do these connect?|What sub-branches emerge?
26 structured,Resource Constraints,Generate innovative solutions by imposing extreme limitations - forces essential priorities and creative efficiency under pressure,What if you had only $1?|No technology allowed?|One hour to solve?|Minimal resources only?
27 theatrical,Time Travel Talk Show,Interview your past/present/future selves for temporal wisdom - playful method for gaining perspective across different life stages,Interview your past self|What would future you say?|Different timeline perspectives|Cross-temporal dialogue
28 theatrical,Alien Anthropologist,Examine familiar problems through completely foreign eyes - reveals hidden assumptions by adopting an outsider's bewildered perspective,You're an alien observer|What seems strange?|How would you explain this?|Outside perspective insights
29 theatrical,Dream Fusion Laboratory,Start with impossible fantasy solutions then reverse-engineer practical steps - makes ambitious thinking actionable through backwards design,Dream the impossible solution|Work backwards to reality|What steps bridge the gap?|Make magic practical
30 theatrical,Emotion Orchestra,Let different emotions lead separate brainstorming sessions then harmonize - uses emotional intelligence for comprehensive perspective,Angry perspective ideas|Joyful approach|Fearful considerations|Hopeful solutions|Harmonize all voices
31 theatrical,Parallel Universe Cafe,Explore solutions under alternative reality rules - breaks conventional thinking by changing fundamental assumptions about how things work,Different physics universe|Alternative social norms|Changed historical events|Reality rule variations
32 wild,Chaos Engineering,Deliberately break things to discover robust solutions - builds anti-fragility by stress-testing ideas against worst-case scenarios,What if everything went wrong?|Break it on purpose|How does it fail gracefully?|Build from the rubble
33 wild,Guerrilla Gardening Ideas,Plant unexpected solutions in unlikely places - uses surprise and unconventional placement for stealth innovation,Where's the least expected place?|Plant ideas secretly|Grow solutions underground|Surprise implementation
34 wild,Pirate Code Brainstorm,Take what works from anywhere and remix without permission - encourages rule-bending rapid prototyping and maverick thinking,What would pirates steal?|Remix without asking|Take the best and run|No permission needed
35 wild,Zombie Apocalypse Planning,Design solutions for extreme survival scenarios - strips away all but essential functions to find core value,Society collapsed - now what?|Only basics work|Build from nothing|Survival mode thinking
36 wild,Drunk History Retelling,Explain complex ideas with uninhibited simplicity - removes overthinking barriers to find raw truth through simplified expression,Explain it like you're tipsy|No filter needed|Raw unedited thoughts|Simplify to absurdity

View File

@@ -1,310 +0,0 @@
# Brainstorming Session Instructions
## Workflow
<workflow>
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project_root}/bmad/core/workflows/brainstorming/workflow.yaml</critical>
<step n="1" goal="Session Setup">
<action>Check if context data was provided with workflow invocation</action>
<check>If data attribute was passed to this workflow:</check>
<action>Load the context document from the data file path</action>
<action>Study the domain knowledge and session focus</action>
<action>Use the provided context to guide the session</action>
<action>Acknowledge the focused brainstorming goal</action>
<ask response="session_refinement">I see we're brainstorming about the specific domain outlined in the context. What particular aspect would you like to explore?</ask>
<check>Else (no context data provided):</check>
<action>Proceed with generic context gathering</action>
<ask response="session_topic">1. What are we brainstorming about?</ask>
<ask response="stated_goals">2. Are there any constraints or parameters we should keep in mind?</ask>
<ask>3. Is the goal broad exploration or focused ideation on specific aspects?</ask>
<critical>Wait for user response before proceeding. This context shapes the entire session.</critical>
<template-output>session_topic, stated_goals</template-output>
</step>
<step n="2" goal="Present Approach Options">
Based on the context from Step 1, present these four approach options:
<ask response="selection">
1. **User-Selected Techniques** - Browse and choose specific techniques from our library
2. **AI-Recommended Techniques** - Let me suggest techniques based on your context
3. **Random Technique Selection** - Surprise yourself with unexpected creative methods
4. **Progressive Technique Flow** - Start broad, then narrow down systematically
Which approach would you prefer? (Enter 1-4)
</ask>
<check>Based on selection, proceed to appropriate sub-step</check>
<step n="2a" title="User-Selected Techniques" if="selection==1">
<action>Load techniques from {brain_techniques} CSV file</action>
<action>Parse: category, technique_name, description, facilitation_prompts</action>
<check>If strong context from Step 1 (specific problem/goal)</check>
<action>Identify 2-3 most relevant categories based on stated_goals</action>
<action>Present those categories first with 3-5 techniques each</action>
<action>Offer "show all categories" option</action>
<check>Else (open exploration)</check>
<action>Display all 7 categories with helpful descriptions</action>
Category descriptions to guide selection:
- **Structured:** Systematic frameworks for thorough exploration
- **Creative:** Innovative approaches for breakthrough thinking
- **Collaborative:** Group dynamics and team ideation methods
- **Deep:** Analytical methods for root cause and insight
- **Theatrical:** Playful exploration for radical perspectives
- **Wild:** Extreme thinking for pushing boundaries
- **Introspective Delight:** Inner wisdom and authentic exploration
For each category, show 3-5 representative techniques with brief descriptions.
Ask in your own voice: "Which technique(s) interest you? You can choose by name, number, or tell me what you're drawn to."
</step>
<step n="2b" title="AI-Recommended Techniques" if="selection==2">
<action>Review {brain_techniques} and select 3-5 techniques that best fit the context</action>
Analysis Framework:
1. **Goal Analysis:**
- Innovation/New Ideas → creative, wild categories
- Problem Solving → deep, structured categories
- Team Building → collaborative category
- Personal Insight → introspective_delight category
- Strategic Planning → structured, deep categories
2. **Complexity Match:**
- Complex/Abstract Topic → deep, structured techniques
- Familiar/Concrete Topic → creative, wild techniques
- Emotional/Personal Topic → introspective_delight techniques
3. **Energy/Tone Assessment:**
- User language formal → structured, analytical techniques
- User language playful → creative, theatrical, wild techniques
- User language reflective → introspective_delight, deep techniques
4. **Time Available:**
- <30 min 1-2 focused techniques
- 30-60 min 2-3 complementary techniques
- >60 min → Consider progressive flow (3-5 techniques)
Present recommendations in your own voice with:
- Technique name (category)
- Why it fits their context (specific)
- What they'll discover (outcome)
- Estimated time
Example structure:
"Based on your goal to [X], I recommend:
1. **[Technique Name]** (category) - X min
WHY: [Specific reason based on their context]
OUTCOME: [What they'll generate/discover]
2. **[Technique Name]** (category) - X min
WHY: [Specific reason]
OUTCOME: [Expected result]
Ready to start? [c] or would you prefer different techniques? [r]"
</step>
<step n="2c" title="Single Random Technique Selection" if="selection==3">
<action>Load all techniques from {brain_techniques} CSV</action>
<action>Select random technique using true randomization</action>
<action>Build excitement about unexpected choice</action>
<format>
Let's shake things up! The universe has chosen:
**{{technique_name}}** - {{description}}
</format>
</step>
<step n="2d" title="Progressive Flow" if="selection==4">
<action>Design a progressive journey through {brain_techniques} based on session context</action>
<action>Analyze stated_goals and session_topic from Step 1</action>
<action>Determine session length (ask if not stated)</action>
<action>Select 3-4 complementary techniques that build on each other</action>
Journey Design Principles:
- Start with divergent exploration (broad, generative)
- Move through focused deep dive (analytical or creative)
- End with convergent synthesis (integration, prioritization)
Common Patterns by Goal:
- **Problem-solving:** Mind Mapping → Five Whys → Assumption Reversal
- **Innovation:** What If Scenarios → Analogical Thinking → Forced Relationships
- **Strategy:** First Principles → SCAMPER → Six Thinking Hats
- **Team Building:** Brain Writing → Yes And Building → Role Playing
Present your recommended journey with:
- Technique names and brief why
- Estimated time for each (10-20 min)
- Total session duration
- Rationale for sequence
Ask in your own voice: "How does this flow sound? We can adjust as we go."
</step>
</step>
<step n="3" goal="Execute Techniques Interactively">
<critical>
REMEMBER: YOU ARE A MASTER Brainstorming Creative FACILITATOR: Guide the user as a facilitator to generate their own ideas through questions, prompts, and examples. Don't brainstorm for them unless they explicitly request it.
</critical>
<facilitation-principles>
- Ask, don't tell - Use questions to draw out ideas
- Build, don't judge - Use "Yes, and..." never "No, but..."
- Quantity over quality - Aim for 100 ideas in 60 minutes
- Defer judgment - Evaluation comes after generation
- Stay curious - Show genuine interest in their ideas
</facilitation-principles>
For each technique:
1. **Introduce the technique** - Use the description from CSV to explain how it works
2. **Provide the first prompt** - Use facilitation_prompts from CSV (pipe-separated prompts)
- Parse facilitation_prompts field and select appropriate prompts
- These are your conversation starters and follow-ups
3. **Wait for their response** - Let them generate ideas
4. **Build on their ideas** - Use "Yes, and..." or "That reminds me..." or "What if we also..."
5. **Ask follow-up questions** - "Tell me more about...", "How would that work?", "What else?"
6. **Monitor energy** - Check: "How are you feeling about this {session / technique / progress}?"
- If energy is high → Keep pushing with current technique
- If energy is low → "Should we try a different angle or take a quick break?"
7. **Keep momentum** - Celebrate: "Great! You've generated [X] ideas so far!"
8. **Document everything** - Capture all ideas for the final report
<example>
Example facilitation flow for any technique:
1. Introduce: "Let's try [technique_name]. [Adapt description from CSV to their context]."
2. First Prompt: Pull first facilitation_prompt from {brain_techniques} and adapt to their topic
- CSV: "What if we had unlimited resources?"
- Adapted: "What if you had unlimited resources for [their_topic]?"
3. Build on Response: Use "Yes, and..." or "That reminds me..." or "Building on that..."
4. Next Prompt: Pull next facilitation_prompt when ready to advance
5. Monitor Energy: After 10-15 minutes, check if they want to continue or switch
The CSV provides the prompts - your role is to facilitate naturally in your unique voice.
</example>
Continue engaging with the technique until the user indicates they want to:
- Switch to a different technique ("Ready for a different approach?")
- Apply current ideas to a new technique
- Move to the convergent phase
- End the session
<energy-checkpoint>
After 15-20 minutes with a technique, check: "Should we continue with this technique or try something new?"
</energy-checkpoint>
<template-output>technique_sessions</template-output>
</step>
<step n="4" goal="Convergent Phase - Organize Ideas">
<transition-check>
"We've generated a lot of great ideas! Are you ready to start organizing them, or would you like to explore more?"
</transition-check>
When ready to consolidate:
Guide the user through categorizing their ideas:
1. **Review all generated ideas** - Display everything captured so far
2. **Identify patterns** - "I notice several ideas about X... and others about Y..."
3. **Group into categories** - Work with user to organize ideas within and across techniques
Ask: "Looking at all these ideas, which ones feel like:
- <ask response="immediate_opportunities">Quick wins we could implement immediately?</ask>
- <ask response="future_innovations">Promising concepts that need more development?</ask>
- <ask response="moonshots">Bold moonshots worth pursuing long-term?"</ask>
<template-output>immediate_opportunities, future_innovations, moonshots</template-output>
</step>
<step n="5" goal="Extract Insights and Themes">
Analyze the session to identify deeper patterns:
1. **Identify recurring themes** - What concepts appeared across multiple techniques? -> key_themes
2. **Surface key insights** - What realizations emerged during the process? -> insights_learnings
3. **Note surprising connections** - What unexpected relationships were discovered? -> insights_learnings
<invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>
<template-output>key_themes, insights_learnings</template-output>
</step>
<step n="6" goal="Action Planning">
<energy-check>
"Great work so far! How's your energy for the final planning phase?"
</energy-check>
Work with the user to prioritize and plan next steps:
<ask>Of all the ideas we've generated, which 3 feel most important to pursue?</ask>
For each priority:
1. Ask why this is a priority
2. Identify concrete next steps
3. Determine resource needs
4. Set realistic timeline
<template-output>priority_1_name, priority_1_rationale, priority_1_steps, priority_1_resources, priority_1_timeline</template-output>
<template-output>priority_2_name, priority_2_rationale, priority_2_steps, priority_2_resources, priority_2_timeline</template-output>
<template-output>priority_3_name, priority_3_rationale, priority_3_steps, priority_3_resources, priority_3_timeline</template-output>
</step>
<step n="7" goal="Session Reflection">
Conclude with meta-analysis of the session:
1. **What worked well** - Which techniques or moments were most productive?
2. **Areas to explore further** - What topics deserve deeper investigation?
3. **Recommended follow-up techniques** - What methods would help continue this work?
4. **Emergent questions** - What new questions arose that we should address?
5. **Next session planning** - When and what should we brainstorm next?
<template-output>what_worked, areas_exploration, recommended_techniques, questions_emerged</template-output>
<template-output>followup_topics, timeframe, preparation</template-output>
</step>
<step n="8" goal="Generate Final Report">
Compile all captured content into the structured report template:
1. Calculate total ideas generated across all techniques
2. List all techniques used with duration estimates
3. Format all content according to template structure
4. Ensure all placeholders are filled with actual content
<template-output>agent_role, agent_name, user_name, techniques_list, total_ideas</template-output>
</step>
</workflow>

View File

@@ -1,102 +0,0 @@
# Brainstorming Session Results
**Session Date:** {{date}}
**Facilitator:** {{agent_role}} {{agent_name}}
**Participant:** {{user_name}}
## Executive Summary
**Topic:** {{session_topic}}
**Session Goals:** {{stated_goals}}
**Techniques Used:** {{techniques_list}}
**Total Ideas Generated:** {{total_ideas}}
### Key Themes Identified:
{{key_themes}}
## Technique Sessions
{{technique_sessions}}
## Idea Categorization
### Immediate Opportunities
_Ideas ready to implement now_
{{immediate_opportunities}}
### Future Innovations
_Ideas requiring development/research_
{{future_innovations}}
### Moonshots
_Ambitious, transformative concepts_
{{moonshots}}
### Insights and Learnings
_Key realizations from the session_
{{insights_learnings}}
## Action Planning
### Top 3 Priority Ideas
#### #1 Priority: {{priority_1_name}}
- Rationale: {{priority_1_rationale}}
- Next steps: {{priority_1_steps}}
- Resources needed: {{priority_1_resources}}
- Timeline: {{priority_1_timeline}}
#### #2 Priority: {{priority_2_name}}
- Rationale: {{priority_2_rationale}}
- Next steps: {{priority_2_steps}}
- Resources needed: {{priority_2_resources}}
- Timeline: {{priority_2_timeline}}
#### #3 Priority: {{priority_3_name}}
- Rationale: {{priority_3_rationale}}
- Next steps: {{priority_3_steps}}
- Resources needed: {{priority_3_resources}}
- Timeline: {{priority_3_timeline}}
## Reflection and Follow-up
### What Worked Well
{{what_worked}}
### Areas for Further Exploration
{{areas_exploration}}
### Recommended Follow-up Techniques
{{recommended_techniques}}
### Questions That Emerged
{{questions_emerged}}
### Next Session Planning
- **Suggested topics:** {{followup_topics}}
- **Recommended timeframe:** {{timeframe}}
- **Preparation needed:** {{preparation}}
---
_Session facilitated using the BMAD CIS brainstorming framework_

View File

@@ -1,41 +0,0 @@
# Brainstorming Session Workflow Configuration
name: "brainstorming"
description: "Facilitate interactive brainstorming sessions using diverse creative techniques. This workflow facilitates interactive brainstorming sessions using diverse creative techniques. The session is highly interactive, with the AI acting as a facilitator to guide the user through various ideation methods to generate and refine creative solutions."
author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/cis/config.yaml"
output_folder: "{config_source}:output_folder"
user_name: "{config_source}:user_name"
date: system-generated
# Optional inputs for guided brainstorming
recommended_inputs:
- session_context: "Context document passed via data attribute"
- previous_results: "{output_folder}/brainstorming-*.md"
# Context can be provided via data attribute when invoking
# Example: data="{path}/context.md" provides domain-specific guidance
# Module path and component files
installed_path: "{project-root}/bmad/core/workflows/brainstorming"
template: "{installed_path}/template.md"
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
brain_techniques: "{installed_path}/brain-methods.csv"
# Output configuration
default_output_file: "{output_folder}/brainstorming-session-results-{{date}}.md"
web_bundle:
name: "brainstorming"
description: "Facilitate interactive brainstorming sessions using diverse creative techniques. This workflow facilitates interactive brainstorming sessions using diverse creative techniques. The session is highly interactive, with the AI acting as a facilitator to guide the user through various ideation methods to generate and refine creative solutions."
author: "BMad"
template: "bmad/core/workflows/brainstorming/template.md"
instructions: "bmad/core/workflows/brainstorming/instructions.md"
brain_techniques: "bmad/core/workflows/brainstorming/brain-methods.csv"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/core/workflows/brainstorming/instructions.md"
- "bmad/core/workflows/brainstorming/brain-methods.csv"
- "bmad/core/workflows/brainstorming/template.md"

View File

@@ -1,182 +0,0 @@
# Party Mode - Multi-Agent Discussion Instructions
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>This workflow orchestrates group discussions between all installed BMAD agents</critical>
<workflow>
<step n="1" goal="Load Agent Manifest and Configurations">
<action>Load the agent manifest CSV from {{manifest}}</action>
<action>Parse CSV to extract all agent entries with their condensed information:</action>
- name (agent identifier)
- displayName (agent's persona name)
- title (formal position)
- icon (visual identifier)
- role (capabilities summary)
- identity (background/expertise)
- communicationStyle (how they communicate)
- principles (decision-making philosophy)
- module (source module)
- path (file location)
<action>For each agent found in manifest:</action>
<check>Look for config override at {{agent_overrides}}[module]-[agent-name].customize.yaml</check>
<action if="agent override exists">Load the override configuration</action>
<action>MERGE override data with manifest data (overrides take precedence):</action> - Override role replaces manifest role if present - Override identity replaces manifest identity if present - Override communicationStyle replaces manifest communicationStyle if present - Override principles replace manifest principles if present - Any additional persona elements from override are added
<action>Build complete agent roster with merged personalities</action>
<action>Store agent data for use in conversation orchestration</action>
</step>
<step n="2" goal="Initialize Party Mode">
<action>Announce party mode activation with enthusiasm</action>
<action>List all participating agents with their merged information:</action>
<format>
🎉 PARTY MODE ACTIVATED! 🎉
All agents are here for a group discussion!
Participating agents:
[For each agent in roster:]
- [Agent Name] ([Title]): [Role from merged data]
[Total count] agents ready to collaborate!
What would you like to discuss with the team?
</format>
<action>Wait for user to provide initial topic or question</action>
</step>
<step n="3" goal="Orchestrate Multi-Agent Discussion" repeat="until-exit">
<action>For each user message or topic:</action>
<substep n="3a" goal="Determine Relevant Agents">
<action>Analyze the user's message/question</action>
<action>Identify which agents would naturally respond based on:</action>
- Their role and capabilities (from merged data)
- Their stated principles
- Their memories/context if relevant
- Their collaboration patterns
<action>Select 2-3 most relevant agents for this response</action>
<note>If user addresses specific agent by name, prioritize that agent</note>
</substep>
<substep n="3b" goal="Generate In-Character Responses">
<action>For each selected agent, generate authentic response:</action>
<action>Use the agent's merged personality data:</action>
- Apply their communicationStyle exactly
- Reflect their principles in reasoning
- Draw from their identity and role for expertise
- Maintain their unique voice and perspective
<action>Enable natural cross-talk between agents:</action>
- Agents can reference each other by name
- Agents can build on previous points
- Agents can respectfully disagree or offer alternatives
- Agents can ask follow-up questions to each other
</substep>
<substep n="3c" goal="Handle Questions and Interactions">
<check>If an agent asks the user a direct question:</check>
<action>Clearly highlight the question</action>
<action>End that round of responses</action>
<action>Display: "[Agent Name]: [Their question]"</action>
<action>Display: "[Awaiting user response...]"</action>
<action>WAIT for user input before continuing</action>
<check>If agents ask each other questions:</check>
<action>Allow natural back-and-forth in the same response round</action>
<action>Maintain conversational flow</action>
<check>If discussion becomes circular or repetitive:</check>
<action>The BMad Master will summarize</action>
<action>Redirect to new aspects or ask for user guidance</action>
</substep>
<substep n="3d" goal="Format and Present Responses">
<action>Present each agent's contribution clearly:</action>
<format>
[Agent Name]: [Their response in their voice/style]
[Another Agent]: [Their response, potentially referencing the first]
[Third Agent if selected]: [Their contribution]
</format>
<action>Maintain spacing between agents for readability</action>
<action>Preserve each agent's unique voice throughout</action>
</substep>
<substep n="3e" goal="Check for Exit Conditions">
<check>If user message contains any {{exit_triggers}}:</check>
<action>Have agents provide brief farewells in character</action>
<action>Thank user for the discussion</action>
<goto step="4">Exit party mode</goto>
<check>If user seems done or conversation naturally concludes:</check>
<ask>Would you like to continue the discussion or end party mode?</ask>
<check>If user indicates end:</check>
<goto step="4">Exit party mode</goto>
</substep>
</step>
<step n="4" goal="Exit Party Mode">
<action>Have 2-3 agents provide characteristic farewells to the user, and 1-2 to each other</action>
<format>
[Agent 1]: [Brief farewell in their style]
[Agent 2]: [Their goodbye]
🎊 Party Mode ended. Thanks for the great discussion!
</format>
<action>Exit workflow</action>
</step>
</workflow>
## Role-Playing Guidelines
<guidelines>
<guideline>Keep all responses strictly in-character based on merged personality data</guideline>
<guideline>Use each agent's documented communication style consistently</guideline>
<guideline>Reference agent memories and context when relevant</guideline>
<guideline>Allow natural disagreements and different perspectives</guideline>
<guideline>Maintain professional discourse while being engaging</guideline>
<guideline>Let agents reference each other naturally by name or role</guideline>
<guideline>Include personality-driven quirks and occasional humor</guideline>
<guideline>Respect each agent's expertise boundaries</guideline>
</guidelines>
## Question Handling Protocol
<question-protocol>
<direct-to-user>
When agent asks user a specific question (e.g., "What's your budget?"):
- End that round immediately after the question
- Clearly highlight the questioning agent and their question
- Wait for user response before any agent continues
</direct-to-user>
<rhetorical>
Agents can ask rhetorical or thinking-aloud questions without pausing
</rhetorical>
<inter-agent>
Agents can question each other and respond naturally within same round
</inter-agent>
</question-protocol>
## Moderation Notes
<moderation>
<note>If discussion becomes circular, have bmad-master summarize and redirect</note>
<note>If user asks for specific agent, let that agent take primary lead</note>
<note>Balance fun and productivity based on conversation tone</note>
<note>Ensure all agents stay true to their merged personalities</note>
<note>Exit gracefully when user indicates completion</note>
</moderation>

View File

@@ -1,21 +0,0 @@
# Party Mode - Multi-Agent Group Discussion Workflow
name: "party-mode"
description: "Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations"
author: "BMad"
# Critical data sources - manifest and config overrides
agent_manifest: "{project-root}/bmad/_cfg/agent-manifest.csv"
agent_overrides: "{project-root}/bmad/_cfg/agents/*.customize.yaml"
date: system-generated
# This is an interactive action workflow - no template output
template: false
instructions: "{project-root}/src/core/workflows/party-mode/instructions.md"
# Exit conditions
exit_triggers:
- "*exit"
- "end party mode"
- "stop party mode"
web_bundle: false

Some files were not shown because too many files have changed in this diff Show More