Merge branch 'bmad-code-org:main' into feat/workflow-prompt-recommendations

This commit is contained in:
Sjoerd Bozon 2026-01-05 10:24:53 +01:00 committed by GitHub
commit 015c74c46f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
571 changed files with 24279 additions and 15995 deletions

3
.gitignore vendored
View File

@ -46,8 +46,6 @@ CLAUDE.local.md
# Project-specific
_bmad-core
_bmad-creator-tools
test-project-install/*
sample-project/*
flattened-codebase.xml
*.stats.md
.internal-docs/
@ -66,6 +64,7 @@ shared-modules
z*/
_bmad
_bmad-output
.claude
.codex
.github/chatmodes

View File

@ -1,5 +1,161 @@
# Changelog
## [6.0.0-alpha.22]
**Release: December 31, 2025**
### 🌟 Key Highlights
1. **Unified Agent Workflow**: Create, Edit, and Validate workflows consolidated into single powerful agent workflow with separate step paths
2. **Agent Knowledge System**: Comprehensive data file architecture with persona properties, validation patterns, and crafting principles
3. **Deep Language Integration**: All sharded progressive workflows now support language choice at every step
4. **Core Module Documentation**: Extensive docs for core workflows (brainstorming, party mode, advanced elicitation)
5. **BMAD Core Concepts**: New documentation structure explaining agents, workflows, modules, and installation
6. **Tech Spec Sharded**: create-tech-spec workflow converted to sharded format with orient-first pattern
### 🤖 Unified Agent Workflow (Major Feature)
**Consolidated Architecture:**
- **Single Workflow, Three Paths**: Create, Edit, and Validate operations unified under `src/modules/bmb/workflows/agent/`
- **steps-c/**: Create path with 9 comprehensive steps for building new agents
- **steps-e/**: Edit path with 10 steps for modifying existing agents
- **steps-v/**: Validate path for standalone agent validation review
- **data/**: Centralized knowledge base for all agent-building intel
### 📚 Agent Knowledge System
**Data File Architecture:**
Located in `src/modules/bmb/workflows/agent/data/`:
- **agent-metadata.md** (208 lines) - Complete metadata field reference
- **agent-menu-patterns.md** (233 lines) - Menu design patterns and best practices
- **agent-compilation.md** (273 lines) - Compilation process documentation
- **persona-properties.md** (266 lines) - Persona crafting properties and examples
- **principles-crafting.md** (292 lines) - Core principles for agent design
- **critical-actions.md** (120 lines) - Critical action patterns
- **expert-agent-architecture.md** (236 lines) - Expert agent structure
- **expert-agent-validation.md** (173 lines) - Expert-specific validation
- **module-agent-validation.md** (124 lines) - Module-specific validation
- **simple-agent-architecture.md** (204 lines) - Simple agent structure
- **simple-agent-validation.md** (132 lines) - Simple agent validation
- **understanding-agent-types.md** (222 lines) - Agent type comparison
- **brainstorm-context.md** - Brainstorming guidance
- **communication-presets.csv** - Communication style presets
**Reference Examples:**
- **reference/module-examples/architect.agent.yaml** - Module agent example
- **reference/simple-examples/commit-poet.agent.yaml** - Simple agent example
- **journal-keeper/** - Complete sidecar pattern example
**Templates:**
- **templates/simple-agent.template.md** - Simple agent template
- **templates/expert-agent-template/expert-agent.template.md** - Expert agent template
- **templates/expert-agent-sidecar/** - Sidecar templates (instructions, memories)
### 🌍 Deep Language Integration
**Progressive Workflow Language Support:**
- **Every Step Biased**: All sharded progressive workflow steps now include language preference context
- **260+ Files Updated**: Comprehensive language integration across:
- Core workflows (brainstorming, party mode, advanced elicitation)
- BMB workflows (create-agent, create-module, create-workflow, edit-workflow, etc.)
- BMGD workflows (game-brief, gdd, narrative, game-architecture, etc.)
- BMM workflows (research, create-ux-design, prd, create-architecture, etc.)
- **Tested Languages**: Verified working with Spanish and Pirate Speak
- **Natural Conversations**: AI agents respond in configured language throughout workflow
### 📖 Core Module Documentation
**New Core Documentation Structure:**
`docs/modules/core/`:
- **index.md** - Core module overview
- **core-workflows.md** - Core workflow documentation
- **core-tasks.md** - Core task reference
- **brainstorming.md** (100 lines) - Brainstorming workflow guide
- **party-mode.md** (50 lines) - Party mode guide
- **advanced-elicitation.md** (105 lines) - Advanced elicitation techniques
- **document-sharding-guide.md** (133 lines) - Sharded workflow format guide
- **global-core-config.md** - Global core configuration reference
**Advanced Elicitation Moved:**
- **From**: `docs/` root
- **To**: `src/core/workflows/advanced-elicitation/`
- **Status**: Now a proper core workflow with methods.csv
### 📚 BMAD Core Concepts Documentation
**New Documentation Structure:**
`docs/bmad-core-concepts/`:
- **index.md** - Core concepts introduction
- **agents.md** (93 lines) - Understanding agents in BMAD
- **workflows.md** (89 lines) - Understanding workflows in BMAD
- **modules.md** (76 lines) - Understanding modules (BMM, BMGD, CIS, BMB, Core)
- **installing/index.md** (77 lines) - Installation guide
- **installing/upgrading.md** (144 lines) - Upgrading guide
- **bmad-customization/index.md** - Customization overview
- **bmad-customization/agents.md** - Agent customization guide
- **bmad-customization/workflows.md** (30 lines) - Workflow customization guide
- **web-bundles/index.md** (34 lines) - Web bundle distribution guide
**Documentation Cleanup:**
- **Removed v4-to-v6-upgrade.md** - Outdated upgrade guide
- **Removed document-sharding-guide.md** from docs root (moved to core)
- **Removed web-bundles-gemini-gpt-guide.md** - Consolidated into web-bundles/index.md
- **Removed getting-started/installation.md** - Migrated to bmad-core-concepts
- **Removed all ide-info/*.md files** - Consolidated into web-bundles documentation
### 🔧 Create-Tech-Spec Sharded Conversion
**Monolithic to Sharded:**
- **From**: Single `workflow.yaml` with `instructions.md`
- **To**: Sharded `workflow.md` with individual step files
- **Pattern**: Orient-first approach (understand before investigating)
### 🔨 Additional Improvements
**Workflow Status Path Fixes:**
- **Corrected Discovery Paths**: workflow-status workflows now properly use planning_artifacts and implementation_artifacts
- **Updated All Path Files**: enterprise-brownfield, enterprise-greenfield, method-brownfield, method-greenfield
**Documentation Updates:**
- **BMB Agent Creation Guide**: Comprehensive 166-line guide for agent creation
- **Workflow Vendoring Doc**: New 42-line guide on workflow customization and inheritance
- **Document Project Reference**: Moved from BMM docs to shared location
- **Workflows Planning Guide**: New 89-line guide for planning workflows
**BMB Documentation Streamlining:**
- **Removed Redundant Docs**: Eliminated duplicate documentation in `src/modules/bmb/docs/`
- **Step File Rules**: New 469-line comprehensive guide for step file creation
- **Agent Docs Moved**: Agent architecture and validation docs moved to workflow data/
**Windows Inquirer Fix:**
- **Another Default Addition**: Additional inquirer default value setting for better Windows multiselection support
**Code Quality:**
- **Removed Old BMM README**: Consolidated module documentation
- **Removed BMM Troubleshooting**: 661-line doc moved to shared location
- **Removed Enterprise Agentic Development**: 686-line doc consolidated
- **Removed Scale Adaptive System**: 618-line doc consolidated
---
## [6.0.0-alpha.21]
**Release: December 27, 2025**

View File

@ -79,13 +79,18 @@ With **BMad Builder**, you can architect both simple agents and vastly complex d
### 1. Install BMad Method
```bash
# Install v6 Alpha (recommended)
npx bmad-method install
# Install v6 RECOMMENDED
npx bmad-method@alpha install
```
# Or stable v4 for production
```bash
# Install v4 Legacy (not recommended if starting fresh)
npx bmad-method install
# OR
npx bmad-method@latest install
```
### 2. Initialize Your Project
Load any agent in your IDE and run:

View File

@ -0,0 +1,93 @@
# Agents
Agents are AI assistants that help you accomplish tasks. Each agent has a unique personality, specialized capabilities, and an interactive menu.
## Agent Types
BMAD has two primary agent types, designed for different use cases:
### Simple Agents
**Self-contained, focused, ready to use.**
Simple agents are complete in a single file. They excel at well-defined tasks and require minimal setup.
**Best for:**
- Single-purpose assistants (code review, documentation, commit messages)
- Quick deployment
- Projects that don't require persistent memory
- Getting started fast
**Example:** A commit message agent that reads your git diff and generates conventional commits.
### Expert Agents
**Powerful, memory-equipped, domain specialists.**
Expert agents have a **sidecar** - a companion folder containing additional instructions, workflows, and memory files. They remember context across sessions and handle complex, multi-step tasks.
**Best for:**
- Domain specialists (security architect, game designer, product manager)
- Tasks requiring persistent memory
- Complex workflows with multiple stages
- Projects that grow over time
**Example:** A game architect that remembers your design decisions, maintains consistency across sprints, and coordinates with other specialists.
## Key Differences
| Feature | Simple | Expert |
| ---------------- | -------------- | -------------------------- |
| **Files** | Single file | Agent + sidecar folder |
| **Memory** | Session only | Persistent across sessions |
| **Capabilities** | Focused scope | Multi-domain, extensible |
| **Setup** | Zero config | Sidecar initialization |
| **Best Use** | Specific tasks | Ongoing projects |
## Agent Components
All agents share these building blocks:
### Persona
- **Role** - What the agent does (expertise domain)
- **Identity** - Who the agent is (personality, character)
- **Communication Style** - How the agent speaks (tone, voice)
- **Principles** - Why the agent acts (values, decision framework)
### Capabilities
- Skills, tools, and knowledge the agent can apply
- Mapped to specific menu commands
### Menu
- Interactive command list
- Triggers, descriptions, and handlers
- Auto-includes help and exit options
### Critical Actions (optional)
- Instructions that execute before the agent starts
- Enable autonomous behaviors (e.g., "check git status before changes")
## Which Should You Use?
**Choose Simple when:**
- You need a task done quickly and reliably
- The scope is well-defined and won't change much
- You don't need the agent to remember things between sessions
**Choose Expert when:**
- You're building something complex over time
- The agent needs to maintain context (project history, decisions)
- You want the agent to coordinate workflows or other agents
- Domain expertise requires specialized knowledge bases
## Creating Custom Agents
BMAD provides the **BMAD Builder (BMB)** module for creating your own agents. See the [Agent Creation Guide](../modules/bmb-bmad-builder/agent-creation-guide.md) for step-by-step instructions.
## Customizing Existing Agents
You can modify any agent's behavior without editing core files. See [BMAD Customization](./bmad-customization/) for details. It is critical to never modify an installed agents .md file directly and follow the customization process, this way future updates to the agent or module its part of will continue to be updated and recompiled with the installer tool, and your customizations will still be retained.
---
**Next:** Learn about [Workflows](./workflows.md) to see how agents accomplish complex tasks.

View File

@ -203,6 +203,8 @@ memories:
## Next Steps
- **[BMM Agents Guide](./modules/bmm/agents-guide)** - Learn about the BMad Method agents
- **[BMB Create Agent Workflow](./modules/bmb/agents/index)** - Build completely custom agents
- **[BMM Complete Documentation](./modules/bmm/index)** - Full BMad Method reference
- **[Learn about Agents](../agents.md)** - Understand Simple vs Expert agents
- **[Agent Creation Guide](../../modules/bmb-bmad-builder/agent-creation-guide.md)** - Build completely custom agents
- **[BMM Complete Documentation](../../modules/bmm-bmad-method/index)** - Full BMad Method reference
[← Back to Customization](./index.md)

View File

@ -0,0 +1,26 @@
# BMAD Customization
Personalize agents and workflows to match your needs.
## Guides
| Guide | Description |
|-------|-------------|
| **[Agent Customization](./agents.md)** | Modify agent behavior without editing core files |
| **[Workflow Customization](./workflows.md)** | Customize and optimize workflows |
## Overview
BMAD provides two main customization approaches:
### Agent Customization
Modify any agent's persona, name, capabilities, or menu items using `.customize.yaml` files in `_bmad/_config/agents/`. Your customizations persist through updates.
### Workflow Customization
Replace or extend workflow steps to create tailored processes. (Coming soon)
---
**Next:** Read the [Agent Customization Guide](./agents.md) to start personalizing your agents.
[← Back to Core Concepts](../index.md)

View File

@ -0,0 +1,30 @@
# Workflow Customization Guide
Customize and optimize workflows with step replacement and hooks.
## Status
> **Coming Soon:** Workflow customization is an upcoming capability. This guide will be updated when the feature is available.
## What to Expect
Workflow customization will allow you to:
- **Replace Steps** - Swap out specific workflow steps with custom implementations
- **Add Hooks** - Inject custom behavior before/after workflow steps
- **Extend Workflows** - Create new workflows based on existing ones
- **Override Behavior** - Customize workflow logic for your project's needs
## For Now
While workflow customization is in development, you can:
- **Create Custom Workflows** - Use the BMAD Builder to create entirely new workflows
- **Customize Agents** - Modify agent behavior using [Agent Customization](./agents.md)
- **Provide Feedback** - Share your workflow customization needs with the community
---
**In the meantime:** Learn how to [create custom workflows](../../modules/bmb-bmad-builder/index) from scratch.
[← Back to Customization](./index.md)

View File

@ -0,0 +1,37 @@
# BMAD Core Concepts
Understanding the fundamental building blocks of the BMAD Method.
## The Essentials
| Concept | Description | Guide |
|---------|-------------|-------|
| **Agents** | AI assistants with personas, capabilities, and menus | [Agents Guide](./agents.md) |
| **Workflows** | Structured processes for achieving specific outcomes | [Workflows Guide](./workflows.md) |
| **Modules** | Packaged collections of agents and workflows | [Modules Guide](./modules.md) |
## Getting Started
### New to BMAD?
Start here to understand what BMAD is and how it works:
1. **[Agents Guide](./agents.md)** - Learn about Simple and Expert agents
2. **[Workflows Guide](./workflows.md)** - Understand how workflows orchestrate tasks
3. **[Modules Guide](./modules.md)** - See how modules organize functionality
### Installing BMAD
- **[Installation Guide](./installing/)** - Set up BMAD in your project
- **[Upgrading from v4](./installing/upgrading.md)** - Migrate from earlier versions
### Configuration
- **[BMAD Customization](./bmad-customization/)** - Personalize agents and workflows
### Advanced
- **[Web Bundles](./web-bundles/)** - Use BMAD in Gemini Gems and Custom GPTs
---
**Next:** Read the [Agents Guide](./agents.md) to understand the core building block of BMAD.

View File

@ -1,5 +1,13 @@
# Installation
Get BMAD up and running in your project.
## Upgrading?
If you're upgrading from v4, see the [Upgrade Guide](./upgrading.md).
---
## Quick Install
```bash
@ -52,8 +60,9 @@ your-project/
## Next Steps
1. **Read the [Quick Start Guide](../modules/bmm/quick-start.md)** to build your first feature
2. **Explore [Workflows](../modules/bmm/workflows-planning.md)** to understand the methodology
1. **Read the [Quick Start Guide](../../modules/bmm-bmad-method/quick-start)** to build your first feature
2. **Explore [Workflows](../../modules/bmm-bmad-method/index#-workflow-guides)** to understand the methodology
3. **Learn about [Agents](../agents.md)** to understand BMAD's core building blocks
## Troubleshooting

View File

@ -120,7 +120,7 @@ persona:
- Always upbeat and adventurous
```
There is a lot more that is possible with agent customization, which is covered in detail in the [Agent Customization Guide](bmad-customization/agent-customization-guide.md)
There is a lot more that is possible with agent customization, which is covered in detail in the [Agent Customization Guide](../bmad-customization/agents.md)
CRITICAL NOTE: After you modify the customization file, you need to run the npx installer against your installed location, and choose the option to rebuild all agents, or just do a quick update again. This always builds agents fresh and applies customizations.

View File

@ -0,0 +1,76 @@
# Modules
Modules are organized collections of agents and workflows that solve specific problems or address particular domains.
## What is a Module?
A module is a self-contained package that includes:
- **Agents** - Specialized AI assistants
- **Workflows** - Step-by-step processes
- **Configuration** - Module-specific settings
- **Documentation** - Usage guides and reference
## Official Modules
### Core Module
Always installed, provides shared functionality:
- Global configuration
- Core workflows (Party Mode, Advanced Elicitation, Brainstorming)
- Common tasks (document indexing, sharding, review)
### BMAD Method (BMM)
Software and game development:
- Project planning workflows
- Implementation agents (Dev, PM, QA, Scrum Master)
- Testing and architecture guidance
### BMAD Builder (BMB)
Create custom solutions:
- Agent creation workflows
- Workflow authoring tools
- Module scaffolding
### Creative Intelligence Suite (CIS)
Innovation and creativity:
- Creative thinking techniques
- Innovation strategy workflows
- Storytelling and ideation
### BMAD Game Dev (BMGD)
Game development specialization:
- Game design workflows
- Narrative development
- Performance testing frameworks
## Module Structure
Installed modules follow this structure:
```
_bmad/
├── core/ # Always present
├── bmm/ # BMAD Method (if installed)
├── bmb/ # BMAD Builder (if installed)
├── cis/ # Creative Intelligence (if installed)
└── bmgd/ # Game Dev (if installed)
```
## Custom Modules
You can create your own modules containing:
- Custom agents for your domain
- Organizational workflows
- Team-specific configurations
Custom modules are installed the same way as official modules.
## Installing Modules
During BMAD installation, you choose which modules to install. You can also add or remove modules later by re-running the installer.
See [Installation Guide](./installing/) for details.
---
**Next:** Read the [Installation Guide](./installing/) to set up BMAD with the modules you need.

View File

@ -0,0 +1,34 @@
# Web Bundles
Use BMAD agents in Gemini Gems and Custom GPTs.
## Status
> **Note:** The Web Bundling Feature is being rebuilt from the ground up. Current v6 bundles may be incomplete or missing functionality.
## What Are Web Bundles?
Web bundles package BMad agents as self-contained files that work in Gemini Gems and Custom GPTs. Everything the agent needs - instructions, workflows, dependencies - is bundled into a single file for easy upload.
### What's Included
- Complete agent persona and instructions
- All workflows and dependencies
- Interactive menu system
- Party mode for multi-agent collaboration
- No external files required
### Use Cases
**Perfect for:**
- Uploading a single file to a Gemini GEM or Custom GPT
- Using BMAD Method from the Web
- Cost savings (generally lower cost than local usage)
- Quick sharing of agent configurations
**Trade-offs:**
- Some quality reduction vs local usage
- Less convenient than full local installation
- Limited to agent capabilities (no workflow file access)
[← Back to Core Concepts](../index.md)

View File

@ -0,0 +1,89 @@
# Workflows
Workflows are structured processes that guide agents through complex tasks. Think of them as recipes that ensure consistent, high-quality outcomes.
## What is a Workflow?
A workflow is a step-by-step process that agents follow to accomplish specific objectives. A workflow can be a single file if small enough, but more than likely is comprized of a very small workflow or skill definition file with multiple steps and data files that are loaded as needed on demand. Each step file:
- Defines a clear goal
- Provides instructions for the agent
- May include decision points or user interactions
- Produces specific outputs
- Progressively at a specific point can load the next proper step.
## How Workflows Work
```
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Step 1 │ → │ Step 2 │ → │ Step 3 │ → │ Complete │
│ Discover │ │ Define │ │ Build │ │ Output │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
```
**Key characteristics:**
- **Progressive** - Each step builds on the previous
- **Interactive** - Workflows can pause for user input
- **Reusable** - The same workflow produces consistent results
- **Composable** - Workflow steps can call other workflow steps, or whole other workflows!
- **LLM Reinforcement** - Some rules or info is repeated in each step file ensuring certain rules are always top of agent mind, even during context heavy processes or very long workflows!
## Workflow Types
### Planning Workflows
Generate project artifacts like requirements, architecture, and task breakdowns.
**Examples:** Brief creation, PRD authoring, architecture design, sprint planning
### Execution Workflows
Guide implementation of specific tasks or features.
**Examples:** Code implementation, code review, testing, deployment
### Support Workflows
Handle cross-cutting concerns and creative processes.
**Examples:** Brainstorming, retrospectives, root cause analysis
## Progressive Disclosure
BMAD workflows use **progressive disclosure** - each step only knows about its immediate next step and what it is currently meant to do. This:
- Reduces cognitive load on the AI
- Ensures each step gets full attention
- Allows for conditional routing based on previous outcomes
- Makes workflows easier to debug and modify
## Menu-Driven Interaction
Most workflows use interactive menus with standard options:
| Option | Purpose |
| ---------------- | -------------------------------------------------- |
| **[A] Advanced** | Invoke deeper reasoning techniques |
| **[P] Party** | Get multiple agent perspectives |
| **[C] Continue** | Proceed to next step after all writes are complete |
## Workflow Files
Workflows are markdown files with structured frontmatter - this front matter also allows them to easily work as skills and also slash command loaded:
```yaml
---
name: 'my-workflow'
description: 'What this workflow does and when it should be used or loaded automatically (or call out if it should be requested to run explicitly by the user)'
---
```
The content in the workflow file is very minimal, sets up the reinforcement of the agent persona and reminder that it is a facilitator working with a user, lays out rules of processing steps only when told to do a specific step, loads all config file variables needed by the workflow, and then routes to step 1. No other info about other steps should be in this workflow file. Keeping it as small and lean as possible help in compilation as a skill, as overall size of the skill main file (workflow.md) is critical to keep small.
## Creating Custom Workflows
The **BMAD Builder (BMB)** module includes workflows for creating custom workflows. See [BMB Documentation](../modules/bmb-bmad-builder/) for details.
---
**Next:** Learn about [Modules](./modules.md) to see how agents and workflows are organized.

View File

@ -1,3 +0,0 @@
# Workflow Customization Guide
Coming Soon...

View File

@ -1,92 +1,95 @@
# BMad Documentation Index
# BMAD Documentation
## Core Documentation
Complete documentation for the BMAD Method.
### Project-Level Docs (Root)
## Getting Started
- **[README.md](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/README.md)** - Main project overview, feature summary, and module introductions
- **[CONTRIBUTING.md](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/CONTRIBUTING.md)** - How to contribute, pull request guidelines, code style
- **[CHANGELOG.md](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/CHANGELOG.md)** - Version history and breaking changes
### New to BMAD?
Start with the core concepts to understand how BMAD works:
### Installation & Setup
- **[Core Concepts](./bmad-core-concepts/)** - Agents, workflows, and modules explained
- **[Installation Guide](./bmad-core-concepts/installing/)** - Set up BMAD in your project
- **[Quick Start Guide](./modules/bmm-bmad-method/quick-start)** - Build your first feature
- **[Quick Installation](./installing-bmad.md)** - Add BMad official and custom modules to a project folder.
- **[v4 to v6 Upgrade Guide](./v4-to-v6-upgrade.md)** - Migration path for v4 users
- **[Document Sharding Guide](./document-sharding-guide.md)** - Split large documents
- **[Bundle Distribution Setup](./BUNDLE_DISTRIBUTION_SETUP.md)** - (temporarily non-functional) Maintainer guide for bundle auto-publishing
### Upgrading from v4?
- **[v4 to v6 Upgrade Guide](./bmad-core-concepts/installing/upgrading.md)** - Migration path for v4 users
---
## Module Documentation
### Core Module Global Entities
- **[Core Module Index](./modules/core/index)** — Shared functionality available to all modules
- [Global Core Config](./modules/core/global-core-config.md) — Inheritable configuration impacting all modules and custom content
- [Core Workflows](./modules/core/core-workflows.md) — Domain-agnostic workflows usable by any module
- [Party Mode](./modules/core/party-mode.md) — Multi-agent conversation orchestration
- [Brainstorming](./modules/core/brainstorming.md) — Structured creative sessions with 60+ techniques
- [Advanced Elicitation](./modules/core/advanced-elicitation.md) — LLM rethinking with 50+ reasoning methods
- [Core Tasks](./modules/core/core-tasks.md) — Common tasks available across modules
- [Index Docs](./modules/core/core-tasks.md#index-docs) — Generate directory index files
- [Adversarial Review](./modules/core/core-tasks.md#adversarial-review-general) — Critical content review
- [Shard Document](./modules/core/core-tasks.md#shard-document) — Split large documents into sections
### BMad Method (BMM) - Software & Game Development
### BMAD Method (BMM) - Software & Game Development
The flagship module for agile AI-driven development.
- **[BMM Module Index](./modules/bmm-bmad-method/index)** - Module overview, agents, and complete documentation index
- [Quick Start Guide](./modules/bmm-bmad-method/quick-start) - Step-by-step guide to building your first project
- **[BMM Module Index](./modules/bmm-bmad-method/index)** - Module overview, agents, and documentation
- [Quick Start Guide](./modules/bmm-bmad-method/quick-start) - Step-by-step guide
- [Quick Spec Flow](./modules/bmm-bmad-method/quick-spec-flow) - Rapid Level 0-1 development
- [Brownfield Guide](./modules/bmm-bmad-method/brownfield-guide) - Working with existing codebases
- **[BMM Workflows Guide](./modules/bmm-bmad-method/index#-workflow-guides)** - **ESSENTIAL READING**
- **[Test Architect Guide](./modules/bmm-bmad-method/test-architecture)** - Testing strategy and quality assurance
- **[BMM Workflows Guide](./modules/bmm-bmad-method/index#-workflow-guides)** - Essential reading
### BMad Builder (BMB) - Create Custom Solutions
### BMAD Builder (BMB) - Create Custom Solutions
Build your own agents, workflows, and modules.
- **[BMB Module Overview](./modules/bmb-bmad-builder/index)** - Module overview and capabilities
- **[Custom Content Guide](./modules/bmb-bmad-builder/custom-content)** - Design custom agents, workflows, and modules
- **[How to Install Custom Agents, Workflows and Modules](./modules/bmb-bmad-builder/custom-content-installation.md)** - Share and Install Custom Creations
- **[Agent Creation Guide](./modules/bmb-bmad-builder/agent-creation-guide.md)** - Create custom agents
- **[Custom Content Installation](./modules/bmb-bmad-builder/custom-content-installation.md)** - Share and install custom creations
### Creative Intelligence Suite (CIS) - Innovation & Creativity
- **[CIS Docs](./modules/cis-creative-intelligence-suite/index.md)**
- **[CIS Documentation](./modules/cis-creative-intelligence-suite/index)**
#### Bmad Game Dev (BMGD)
### BMAD Game Dev (BMGD)
- [Main Game Dev Module Docs Index](./modules/bmgd-bmad-game-dev/index.md)
- **[BMGD Documentation](./modules/bmgd-bmad-game-dev/index)** - Game development workflows
AI-powered creative thinking and brainstorming.
---
- **[CIS Module README](./modules/cis-creative-intelligence-suite/index)** - Module overview and workflows
## Core Module
### Global Core Entities
- **[Core Module Index](./modules/core/index)** - Shared functionality available to all modules
- [Global Core Config](./modules/core/global-core-config.md) - Inheritable configuration
- [Core Workflows](./modules/core/core-workflows.md) - Domain-agnostic workflows
- [Party Mode](./modules/core/party-mode.md) - Multi-agent conversations
- [Brainstorming](./modules/core/brainstorming.md) - Structured creative sessions
- [Advanced Elicitation](./modules/core/advanced-elicitation.md) - LLM reasoning techniques
- [Core Tasks](./modules/core/core-tasks.md) - Common tasks across modules
---
## Advanced Topics
### Custom Agents, Workflow and Modules
- **[Custom Content Installation](modules/bmb-bmad-builder/custom-content-installation.md)** - Install and personalize agents, workflows and modules with the default bmad-method installer!
- [Agent Customization Guide](./bmad-customization/agent-customization-guide.md) - Customize agent behavior and responses
- [Workflow Customization Guide](./bmad-customization/workflow-customization-guide.md) - Customize and Optimize workflows with step replacement and hooks (Capability Coming Soon)
### Customization
- **[BMAD Customization](./bmad-core-concepts/bmad-customization/)** - Modify agents and workflows
### Platform Guides
- **[Web Bundles](./bmad-core-concepts/web-bundles/)** - Use BMAD in Gemini Gems and Custom GPTs
---
## Recommended Reading Paths
### Path 1: Brand New to BMad (Software Project)
### Path 1: Brand New to BMAD (Software Project)
1. [README.md](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/README.md) - Understand the vision
2. [Quick Start Guide](./modules/bmm-bmad-method/quick-start) - Get hands-on
3. [BMM Module README](./modules/bmm-bmad-method/) - Understand agents
1. [Core Concepts](./bmad-core-concepts/) - Understand agents and workflows
2. [Installation Guide](./bmad-core-concepts/installing/) - Set up BMAD
3. [Quick Start Guide](./modules/bmm-bmad-method/quick-start) - Get hands-on
4. [BMM Workflows Guide](./modules/bmm-bmad-method/index#-workflow-guides) - Master the methodology
### Path 2: Game Development Project
1. [README.md](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/README.md) - Understand the vision
2. [Quick Start Guide](./modules/bmm-bmad-method/quick-start) - Get hands-on
3. [BMM Module README](./modules/bmm-bmad-method/) - Game agents are included
4. [BMGD Workflows Guide](./modules/bmgd/workflows-guide) - Game-specific workflows
1. [Core Concepts](./bmad-core-concepts/) - Understand agents and workflows
2. [Installation Guide](./bmad-core-concepts/installing/) - Set up BMAD
3. [BMGD Workflows Guide](./modules/bmgd-bmad-game-dev/workflows-guide) - Game-specific workflows
### Path 3: Upgrading from v4
1. [v4 to v6 Upgrade Guide](./v4-to-v6-upgrade.md) - Understand what changed
1. [v4 to v6 Upgrade Guide](./bmad-core-concepts/installing/upgrading.md) - Understand what changed
2. [Quick Start Guide](./modules/bmm-bmad-method/quick-start) - Reorient yourself
3. [BMM Workflows Guide](./modules/bmm-bmad-method/index#-workflow-guides) - Learn new v6 workflows
@ -96,13 +99,13 @@ AI-powered creative thinking and brainstorming.
2. [Quick Start Guide](./modules/bmm-bmad-method/quick-start) - Follow the process
3. [BMM Workflows Guide](./modules/bmm-bmad-method/index#-workflow-guides) - Master the methodology
### Path 5: Building Custom Solutions
### Path 5: Building Custom Agents
1. [BMB Module Overview](./modules/bmb/index) - Understand capabilities
2. [Agent Creation Guide](./modules/bmb/agents/index) - Create agents
3. [BMB Workflows Guide](./modules/bmb/workflows/) - Understand workflow structure
1. [Core Concepts: Agents](./bmad-core-concepts/agents.md) - Understand Simple vs Expert
2. [Agent Creation Guide](./modules/bmb-bmad-builder/agent-creation-guide.md) - Build your first agent
3. [Agent Architecture](./modules/bmb-bmad-builder/index) - Deep technical details
### Path 6: Contributing to BMad
### Path 6: Contributing to BMAD
1. [CONTRIBUTING.md](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/CONTRIBUTING.md) - Contribution guidelines
2. Relevant module README - Understand the area you're contributing to

View File

@ -0,0 +1,166 @@
# Agent Creation Guide
Create your own custom agents using the BMAD Builder workflow.
## Overview
The BMAD Builder (BMB) module provides an interactive workflow that guides you through creating a custom agent from concept to completion. You define the agent's purpose, personality, capabilities, and menu - then the workflow generates a complete, ready-to-use agent file.
## Before You Start
**Prerequisites:**
- BMAD installed with the BMB module
- An idea for what you want your agent to do
- About 15-30 minutes for your first agent
**Know Before You Go:**
- What problem should your agent solve?
- Who will use this agent?
- What should the agent be able to do?
## Quick Start
### 1. Start the Workflow
In your IDE (Claude Code, Cursor, etc.), invoke the create-agent workflow:
```
"Run the BMAD Builder create-agent workflow"
```
Or trigger it via the BMAD Master menu.
### 2. Follow the Steps
The workflow guides you through:
| Step | What You'll Do |
|------|----------------|
| **Brainstorm** (optional) | Explore ideas with creative techniques |
| **Discovery** | Define the agent's purpose and goals |
| **Type & Metadata** | Choose Simple or Expert, name your agent |
| **Persona** | Craft the agent's personality and principles |
| **Commands** | Define what the agent can do |
| **Activation** | Set up autonomous behaviors (optional) |
| **Build** | Generate the agent file |
| **Validation** | Review and verify everything works |
### 3. Install Your Agent
Once created, package your agent for installation:
```
my-custom-stuff/
├── module.yaml # Contains: unitary: true
├── agents/
│ └── {agent-name}/
│ ├── {agent-name}.agent.yaml
│ └── _memory/ # Expert agents only
│ └── {sidecar-folder}/
└── workflows/ # Optional: custom workflows
```
See [Custom Content Installation](./custom-content-installation.md) for details.
## Choosing Your Agent Type
The workflow will help you decide, but here's the quick reference:
### Choose Simple Agent When:
- Task is well-defined and focused
- Don't need persistent memory
- Want fast setup and deployment
- Single-purpose assistant (e.g., commit messages, code review)
**Example:** A "Code Commenter" that reads files and adds helpful comments.
### Choose Expert Agent When:
- Domain requires specialized knowledge
- Need persistent memory across sessions
- Agent coordinates complex workflows
- Building ongoing project infrastructure
**Example:** A "Security Architect" that remembers your design decisions and maintains security standards across the project.
### Choose Module Agent When:
- Agent builds other agents or workflows
- Need integration with module system
- Creating professional tooling
**Example:** A "Team Builder" that helps set up agents for new team members.
## The Persona System
Your agent's personality is defined by four fields:
| Field | Purpose | Example |
|-------|---------|---------|
| **Role** | What they do | "Senior code reviewer who catches bugs and suggests improvements" |
| **Identity** | Who they are | "Friendly but exacting, believes clean code is a craft" |
| **Communication Style** | How they speak | "Direct, constructive, explains the 'why' behind suggestions" |
| **Principles** | Why they act | "Security first, clarity over cleverness, test what you fix" |
**Key:** Keep each field focused on its purpose. The role isn't personality; the identity isn't job description.
## Tips for Success
### Start Small
Your first agent should solve **one problem well**. You can always add more capabilities later.
### Learn by Example
Study the reference agents in `src/modules/bmb/reference/agents/`:
- **Simple:** [commit-poet](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/agents/simple-examples/commit-poet.agent.yaml)
- **Expert:** [journal-keeper](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/agents/expert-examples/journal-keeper)
### Write Great Principles
The first principle should "activate" the agent's expertise:
**Weak:** "Be helpful and accurate"
**Strong:** "Channel decades of security expertise: threat modeling begins with trust boundaries, never trust client input, defense in depth is non-negotiable"
### Use the Menu System
The workflow provides options at each step:
- **[A] Advanced** - Get deeper insights and reasoning
- **[P] Party** - Get multiple agent perspectives
- **[C] Continue** - Move to the next step
Use these when you need extra input or creative options.
## After Creation
### Test Your Agent
1. Install your custom module using the BMAD installer
2. Invoke your new agent in your IDE
3. Try each menu command
4. Verify the personality feels right
### Iterate
If something isn't right:
1. Edit the agent YAML directly, or
2. Edit the customization file in `_bmad/_config/agents/`
3. Rebuild using `npx bmad-method build <agent-name>`
### Share
Package your agent as a standalone module (see [Installation Guide](../../bmad-core-concepts/installing/)) and share it with your team or the community.
## Further Reading
- **[Agent Architecture](./index.md)** - Deep technical details on agent types
- **[Agent Customization](../../bmad-core-concepts/agent-customization/)** - Modify agents without editing core files
- **[Custom Content Installation](./custom-content-installation.md)** - Package and distribute your agents
---
**Ready?** Start the workflow and create your first agent!
[← Back to BMB Documentation](./index.md)

View File

@ -1,6 +1,11 @@
# BMB Module Documentation
Reference documentation for building BMAD agents and workflows.
Create custom agents, workflows, and modules for BMAD.
## Quick Start
- **[Agent Creation Guide](./agent-creation-guide.md)** - Step-by-step guide to building your first agent
- **[Understanding Agent Types](./understanding-agent-types.md)** - Learn the differences between Simple and Expert agents
## Agent Architecture

View File

@ -161,7 +161,7 @@ BMGD Documentation
### Related Documentation
- **[BMM Documentation](../../bmm/docs/index.md)** - Core BMad Method documentation
- **[BMM Documentation](../bmm/index.md)** - Core BMad Method documentation
## Tips for Using This Documentation

View File

@ -8,7 +8,7 @@ Complete reference for all BMGD workflows organized by development phase.
BMGD workflows are organized into four phases:
![BMGD Workflow Overview](../../../../docs/modules/bmgd-bmad-game-dev/workflow-overview.jpg)
![BMGD Workflow Overview](./workflow-overview.jpg)
---
@ -161,7 +161,7 @@ Production workflows inherit from BMM and add game-specific overrides.
**Command:** `sprint-planning`
**Agent:** Game Scrum Master
**Input:** GDD with epics
**Output:** `{output_folder}/sprint-status.yaml`
**Output:** `{implementation_artifacts}/sprint-status.yaml`
**Description:**
Generates or updates sprint tracking from epic files. Sets up the sprint backlog and tracking.

View File

@ -1,747 +1,78 @@
# BMad Method Brownfield Development Guide
**Complete guide for working with existing codebases**
## Working on Existing Projects
**Reading Time:** ~35 minutes
If you have completed your initial PRD on a new project and want to add new features, or if you have a legacy project you are maintaining, you will want to follow the brownfield process.
This document is intentionally brief, focusing only on what differs from the standard greenfield flow.
---
## Quick Navigation
## 1. Clean Up Completed Planning Artifacts
**Jump to:**
If you have completed all PRD epics and stories through the BMad process, clean up those files. Archive them, delete them, or rely on version history if needed. Do not keep these files in:
- `docs/`
- `_bmad-output/planning-artifacts/`
- `_bmad-output/implementation-artifacts/`
- [Quick Reference](#quick-reference) - Commands and files
- [Common Scenarios](#common-scenarios) - Real-world examples
- [Best Practices](#best-practices) - Success tips
## 2. Maintain Quality Project Documentation
Your `docs/` folder should contain succinct, well-organized documentation that accurately represents your project:
- Intent and business rationale
- Business rules
- Architecture
- Any other relevant project information
For complex projects, consider using the `document-project` workflow. It offers runtime variants that will scan your entire project and document its actual current state.
## 3. Initialize for Brownfield Work
Run `workflow-init`. It should recognize you are in an existing project. If not, explicitly clarify that this is brownfield development for a new feature.
### Choosing Your Approach
You have two primary options depending on the scope of changes:
| Scope | Recommended Approach |
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| **Small updates or additions** | Use `quick-flow-solo-dev` to create a tech-spec and implement the change. The full four-phase BMad method is likely overkill. |
| **Major changes or additions** | Start with the BMad method, applying as much or as little rigor as needed. |
### During PRD Creation
When creating a brief or jumping directly into the PRD, ensure the agent:
- Finds and analyzes your existing project documentation
- Reads the proper context about your current system
You can guide the agent explicitly, but the goal is to ensure the new feature integrates well with your existing system.
### UX Considerations
UX work is optional. The decision depends not on whether your project has a UX, but on:
- Whether you will be working on UX changes
- Whether significant new UX designs or patterns are needed
If your changes amount to simple updates to existing screens you are happy with, a full UX process is unnecessary.
### Architecture Considerations
When doing architecture, ensure the architect:
- Uses the proper documented files
- Scans the existing codebase
Pay close attention here to prevent reinventing the wheel or making decisions that misalign with your existing architecture.
---
## What is Brownfield Development?
## 4. Ad-Hoc Changes
Brownfield projects involve working within existing codebases rather than starting fresh:
- **Bug fixes** - Single file changes
- **Small features** - Adding to existing modules
- **Feature sets** - Multiple related features
- **Major integrations** - Complex architectural additions
- **System expansions** - Enterprise-scale enhancements
**Key Difference from Greenfield:** You must understand and respect existing patterns, architecture, and constraints.
**Core Principle:** AI agents need comprehensive documentation to understand existing code before they can effectively plan or implement changes.
Not everything requires the full BMad method or even quick-flow. For bug fixes, refactorings, or small targeted changes, simply talk to the agent and have it make the changes directly. This is also a good way to learn about your codebase and understand the modifications being made.
---
## Getting Started
## 5. Learn and Explore
### Understanding Planning Tracks
For complete track details, see [Scale Adaptive System](./scale-adaptive-system.md).
**Brownfield tracks at a glance:**
| Track | Scope | Typical Stories | Key Difference |
| --------------------- | -------------------------- | --------------- | ----------------------------------------------- |
| **Quick Flow** | Bug fixes, small features | 1-15 | Must understand affected code and patterns |
| **BMad Method** | Feature sets, integrations | 10-50+ | Integrate with existing architecture |
| **Enterprise Method** | Enterprise expansions | 30+ | Full system documentation + compliance required |
**Note:** Story counts are guidance, not definitions. Tracks are chosen based on planning needs.
### Track Selection for Brownfield
When you run `workflow-init`, it handles brownfield intelligently:
**Step 1: Shows what it found**
- Old planning docs (PRD, epics, stories)
- Existing codebase
**Step 2: Asks about YOUR work**
> "Are these works in progress, previous effort, or proposed work?"
- **(a) Works in progress** → Uses artifacts to determine level
- **(b) Previous effort** → Asks you to describe NEW work
- **(c) Proposed work** → Uses artifacts as guidance
- **(d) None of these** → You explain your work
**Step 3: Analyzes your description**
- Keywords: "fix", "bug" → Quick Flow, "dashboard", "platform" → BMad Method, "enterprise", "multi-tenant" → Enterprise Method
- Complexity assessment
- Confirms suggested track with you
**Key Principle:** System asks about YOUR current work first, uses old artifacts as context only.
**Example: Old Complex PRD, New Simple Work**
```
System: "Found PRD.md (BMad Method track, 30 stories, 6 months old)"
System: "Is this work in progress or previous effort?"
You: "Previous effort - I'm just fixing a bug now"
System: "Tell me about your current work"
You: "Update payment method enums"
System: "Quick Flow track (tech-spec approach). Correct?"
You: "Yes"
✅ Creates Quick Flow workflow
```
---
## Documentation: Critical First Step
🚨 **For brownfield projects: Always ensure adequate AI-usable documentation before planning**
### Default Recommendation: Run document-project
**Best practice:** Run `document-project` workflow unless you have **confirmed, trusted, AI-optimized documentation**.
### Why Document-Project is Almost Always the Right Choice
Existing documentation often has quality issues that break AI workflows:
**Common Problems:**
- **Too Much Information (TMI):** Massive markdown files with 10s or 100s of level 2 sections
- **Out of Date:** Documentation hasn't been updated with recent code changes
- **Wrong Format:** Written for humans, not AI agents (lacks structure, index, clear patterns)
- **Incomplete Coverage:** Missing critical architecture, patterns, or setup info
- **Inconsistent Quality:** Some areas documented well, others not at all
**Impact on AI Agents:**
- AI agents hit token limits reading massive files
- Outdated docs cause hallucinations (agent thinks old patterns still apply)
- Missing structure means agents can't find relevant information
- Incomplete coverage leads to incorrect assumptions
### Documentation Decision Tree
**Step 1: Assess Existing Documentation Quality**
Ask yourself:
- ✅ Is it **current** (updated in last 30 days)?
- ✅ Is it **AI-optimized** (structured with index.md, clear sections, <500 lines per file)?
- ✅ Is it **comprehensive** (architecture, patterns, setup all documented)?
- ✅ Do you **trust** it completely for AI agent consumption?
**If ANY answer is NO → Run `document-project`**
**Step 2: Check for Massive Documents**
If you have documentation but files are huge (>500 lines, 10+ level 2 sections):
1. **First:** Run `shard-doc` tool to split large files:
```bash
# Load BMad Master or any agent
_bmad/core/tools/shard-doc.xml --input docs/massive-doc.md
```
- Splits on level 2 sections by default
- Creates organized, manageable files
- Preserves content integrity
2. **Then:** Run `index-docs` task to create navigation:
```bash
_bmad/core/tasks/index-docs.xml --directory ./docs
```
3. **Finally:** Validate quality - if sharded docs still seem incomplete/outdated → Run `document-project`
### Four Real-World Scenarios
| Scenario | You Have | Action | Why |
| -------- | ------------------------------------------ | -------------------------- | --------------------------------------- |
| **A** | No documentation | `document-project` | Only option - generate from scratch |
| **B** | Docs exist but massive/outdated/incomplete | `document-project` | Safer to regenerate than trust bad docs |
| **C** | Good docs but no structure | `shard-doc``index-docs` | Structure existing content for AI |
| **D** | Confirmed AI-optimized docs with index.md | Skip Documentation | Rare - only if you're 100% confident |
### Scenario A: No Documentation (Most Common)
**Action: Run document-project workflow**
1. Load Analyst or Technical Writer (Paige) agent
2. Run `*document-project`
3. Choose scan level:
- **Quick** (2-5min): Pattern analysis, no source reading
- **Deep** (10-30min): Reads critical paths - **Recommended**
- **Exhaustive** (30-120min): Reads all files
**Outputs:**
- `docs/index.md` - Master AI entry point
- `docs/project-overview.md` - Executive summary
- `docs/architecture.md` - Architecture analysis
- `docs/source-tree-analysis.md` - Directory structure
- Additional files based on project type (API, web app, etc.)
### Scenario B: Docs Exist But Quality Unknown/Poor (Very Common)
**Action: Run document-project workflow (regenerate)**
Even if `docs/` folder exists, if you're unsure about quality → **regenerate**.
**Why regenerate instead of index?**
- Outdated docs → AI makes wrong assumptions
- Incomplete docs → AI invents missing information
- TMI docs → AI hits token limits, misses key info
- Human-focused docs → Missing AI-critical structure
**document-project** will:
- Scan actual codebase (source of truth)
- Generate fresh, accurate documentation
- Structure properly for AI consumption
- Include only relevant, current information
### Scenario C: Good Docs But Needs Structure
**Action: Shard massive files, then index**
If you have **good, current documentation** but it's in massive files:
**Step 1: Shard large documents**
```bash
# For each massive doc (>500 lines or 10+ level 2 sections)
_bmad/core/tools/shard-doc.xml \
--input docs/api-documentation.md \
--output docs/api/ \
--level 2 # Split on ## headers (default)
```
**Step 2: Generate index**
```bash
_bmad/core/tasks/index-docs.xml --directory ./docs
```
**Step 3: Validate**
- Review generated `docs/index.md`
- Check that sharded files are <500 lines each
- Verify content is current and accurate
- **If anything seems off → Run document-project instead**
### Scenario D: Confirmed AI-Optimized Documentation (Rare)
**Action: Skip Documentation**
Only skip if ALL conditions met:
- ✅ `docs/index.md` exists and is comprehensive
- ✅ Documentation updated within last 30 days
- ✅ All doc files <500 lines with clear structure
- ✅ Covers architecture, patterns, setup, API surface
- ✅ You personally verified quality for AI consumption
- ✅ Previous AI agents used it successfully
**If unsure → Run document-project** (costs 10-30 minutes, saves hours of confusion)
### Why document-project is Critical
Without AI-optimized documentation, workflows fail:
- **tech-spec** (Quick Flow) can't auto-detect stack/patterns → Makes wrong assumptions
- **PRD** (BMad Method) can't reference existing code → Designs incompatible features
- **create-architecture** can't build on existing structure → Suggests conflicting patterns
- **create-story** can't provide existing pattern context → Stories lack integration guidance
- **dev-story** invents implementations → Breaks existing integrations
### Key Principle
**When in doubt, run document-project.**
It's better to spend 10-30 minutes generating fresh, accurate docs than to waste hours debugging AI agents working from bad documentation.
---
## Workflow Phases by Track
### Phase 1: Analysis (Optional)
**Workflows:**
- `brainstorm-project` - Solution exploration
- `research` - Technical/market research
- `product-brief` - Strategic planning (BMad Method/Enterprise tracks only)
**When to use:** Complex features, technical decisions, strategic additions
**When to skip:** Bug fixes, well-understood features, time-sensitive changes
See the [Workflows section in BMM README](../README.md) for details.
### Phase 2: Planning (Required)
**Planning approach adapts by track:**
**Quick Flow:** Use `tech-spec` workflow
- Creates tech-spec.md
- Auto-detects existing stack (brownfield)
- Confirms conventions with you
- Generates implementation-ready stories
**BMad Method/Enterprise:** Use `prd` workflow
- Creates PRD.md with FRs/NFRs only
- References existing architecture
- Plans integration points
- Epics+Stories created AFTER architecture phase
**Brownfield-specific:** See [Scale Adaptive System](./scale-adaptive-system.md) for complete workflow paths by track.
### Phase 3: Solutioning (BMad Method/Enterprise Only)
**Critical for brownfield:**
- Review existing architecture FIRST
- Document integration points explicitly
- Plan backward compatibility
- Consider migration strategy
**Workflows:**
- `create-architecture` - Extend architecture docs (BMad Method/Enterprise)
- `create-epics-and-stories` - Create epics and stories AFTER architecture
- `implementation-readiness` - Validate before implementation (BMad Method/Enterprise)
### Phase 4: Implementation (All Tracks)
**Sprint-based development through story iteration:**
```mermaid
flowchart TD
SPRINT[sprint-planning<br/>Initialize tracking]
CREATE[create-story]
DEV[dev-story]
REVIEW[code-review]
CHECK{More stories?}
RETRO[retrospective<br/>Per epic]
SPRINT --> CREATE
CREATE --> DEV
DEV --> REVIEW
REVIEW --> CHECK
CHECK -->|Yes| CREATE
CHECK -->|No| RETRO
style SPRINT fill:#bfb,stroke:#333,stroke-width:2px,color:#000
style RETRO fill:#fbf,stroke:#333,stroke-width:2px,color:#000
```
**Status Progression:**
- Epic: `backlog → in-progress → done`
- Story: `backlog → ready-for-dev → in-progress → review → done`
**Brownfield-Specific Implementation Tips:**
1. **Respect existing patterns** - Follow established conventions
2. **Test integration thoroughly** - Validate interactions with existing code
3. **Use feature flags** - Enable gradual rollout
---
## Best Practices
### 1. Always Document First
Even if you know the code, AI agents need `document-project` output for context. Run it before planning.
### 2. Be Specific About Current Work
When workflow-init asks about your work:
- ✅ "Update payment method enums to include Apple Pay"
- ❌ "Fix stuff"
### 3. Choose Right Documentation Approach
- **Has good docs, no index?** → Run `index-docs` task (fast)
- **No docs or need codebase analysis?** → Run `document-project` (Deep scan)
### 4. Respect Existing Patterns
Tech-spec and create-story workflows will detect conventions from existing documentation. Follow them unless explicitly modernizing.
### 5. Plan Integration Points Explicitly
Document in tech-spec/architecture:
- Which existing modules you'll modify
- What APIs/services you'll integrate with
- How data flows between new and existing code
### 6. Design for Gradual Rollout
- Use feature flags for new functionality
- Plan rollback strategies
- Maintain backward compatibility
- Create migration scripts if needed
### 7. Test Integration Thoroughly
- Regression testing of existing features
- Integration point validation
- Performance impact assessment
- API contract verification
### 8. Use Sprint Planning Effectively
- Run `sprint-planning` at Phase 4 start
- Context epics before creating stories
- Update `sprint-status.yaml` as work progresses
### 9. Learn Continuously
- Run `retrospective` after each epic
- Incorporate learnings into next stories
- Update discovered patterns
- Share insights across team
---
## Common Scenarios
### Scenario 1: Bug Fix (Quick Flow)
**Situation:** Authentication token expiration causing logout issues
**Track:** Quick Flow
**Workflow:**
1. **Document:** Skip if auth system documented, else run `document-project` (Quick scan)
2. **Plan:** Load PM → run `tech-spec`
- Analyzes bug
- Detects stack (Express, Jest)
- Confirms conventions
- Creates tech-spec.md + story
3. **Implement:** Load DEV → run `dev-story`
4. **Review:** Load DEV → run `code-review`
**Time:** 2-4 hours
---
### Scenario 2: Small Feature (Quick Flow)
**Situation:** Add "forgot password" to existing auth system
**Track:** Quick Flow
**Workflow:**
1. **Document:** Run `document-project` (Deep scan of auth module if not documented)
2. **Plan:** Load PM → run `tech-spec`
- Detects Next.js 13.4, NextAuth.js
- Analyzes existing auth patterns
- Confirms conventions
- Creates tech-spec.md + epic + 3-5 stories
3. **Implement:** Load SM → `sprint-planning``create-story`
Load DEV → `dev-story` for each story
4. **Review:** Load DEV → `code-review`
**Time:** 1-3 days
---
### Scenario 3: Feature Set (BMad Method)
**Situation:** Add user dashboard with analytics, preferences, activity
**Track:** BMad Method
**Workflow:**
1. **Document:** Run `document-project` (Deep scan) - Critical for understanding existing UI patterns
2. **Analyze:** Load Analyst → `research` (if evaluating analytics libraries)
3. **Plan:** Load PM → `prd` (creates FRs/NFRs)
4. **Solution:** Load Architect → `create-architecture``create-epics-and-stories``implementation-readiness`
5. **Implement:** Sprint-based (10-15 stories)
- Load SM → `sprint-planning`
- Load SM → `create-story` per story
- Load DEV → `dev-story` per story
6. **Review:** Per story completion
**Time:** 1-2 weeks
---
### Scenario 4: Complex Integration (BMad Method)
**Situation:** Add real-time collaboration to document editor
**Track:** BMad Method
**Workflow:**
1. **Document:** Run `document-project` (Exhaustive if not documented) - **Mandatory**
2. **Analyze:** Load Analyst → `research` (WebSocket vs WebRTC vs CRDT)
3. **Plan:** Load PM → `prd` (creates FRs/NFRs)
4. **Solution:**
- Load Architect → `create-architecture` (extend for real-time layer)
- Load Architect → `create-epics-and-stories`
- Load Architect → `implementation-readiness`
5. **Implement:** Sprint-based (20-30 stories)
**Time:** 3-6 weeks
---
### Scenario 5: Enterprise Expansion (Enterprise Method)
**Situation:** Add multi-tenancy to single-tenant SaaS platform
**Track:** Enterprise Method
**Workflow:**
1. **Document:** Run `document-project` (Exhaustive) - **Mandatory**
2. **Analyze:** **Required**
- `brainstorm-project` - Explore multi-tenancy approaches
- `research` - Database sharding, tenant isolation, pricing
- `product-brief` - Strategic document
3. **Plan:** Load PM → `prd` (comprehensive FRs/NFRs)
4. **Solution:**
- `create-architecture` - Full system architecture including multi-tenancy design
- `create-epics-and-stories` - Create epics and stories
- `implementation-readiness` - Final validation before implementation
5. **Implement:** Phased sprint-based (50+ stories)
**Time:** 3-6 months
---
## Troubleshooting
### AI Agents Lack Codebase Understanding
**Symptoms:**
- Suggestions don't align with existing patterns
- Ignores available components
- Doesn't reference existing code
**Solution:**
1. Run `document-project` with Deep scan
2. Verify `docs/index.md` exists
3. Check documentation completeness
4. Run deep-dive on specific areas if needed
### Have Documentation But Agents Can't Find It
**Symptoms:**
- README.md, ARCHITECTURE.md exist
- AI agents ask questions already answered
- No `docs/index.md` file
**Solution:**
- **Quick fix:** Run `index-docs` task (2-5min)
- **Comprehensive:** Run `document-project` workflow (10-30min)
### Integration Points Unclear
**Symptoms:**
- Not sure how to connect new code to existing
- Unsure which files to modify
**Solution:**
1. Ensure `document-project` captured existing architecture
2. Check story files created by `create-story` - should include integration context
3. In tech-spec/architecture - explicitly document:
- Which existing modules to modify
- What APIs/services to integrate with
- Data flow between new and existing code
4. Review architecture document for integration guidance
### Existing Tests Breaking
**Symptoms:**
- Regression test failures
- Previously working functionality broken
**Solution:**
1. Review changes against existing patterns
2. Verify API contracts unchanged (unless intentionally versioned)
3. Run `test-review` workflow (TEA agent)
4. Add regression testing to DoD
5. Consider feature flags for gradual rollout
### Inconsistent Patterns Being Introduced
**Symptoms:**
- New code style doesn't match existing
- Different architectural approach
**Solution:**
1. Check convention detection (Quick Spec Flow should detect patterns)
2. Review documentation - ensure `document-project` captured patterns
3. Use `create-story` workflow - it loads context from existing documentation
4. Add to code-review checklist: pattern adherence, convention consistency
5. Run retrospective to identify deviations early
---
## Quick Reference
### Commands by Phase
```bash
# Documentation (If Needed)
# Analyst agent:
document-project # Create comprehensive docs (10-30min)
# OR load index-docs task for existing docs (2-5min)
# Phase 1: Analysis (Optional)
# Analyst agent:
brainstorm-project # Explore solutions
research # Gather data
product-brief # Strategic planning (BMad Method/Enterprise only)
# Phase 2: Planning (Required)
# PM agent:
tech-spec # Quick Flow track
prd # BMad Method/Enterprise tracks
# Phase 3: Solutioning (BMad Method/Enterprise)
# Architect agent:
create-architecture # Create/extend architecture
create-epics-and-stories # Create epics and stories (after architecture)
implementation-readiness # Final validation
# Phase 4: Implementation (All Tracks)
# SM agent:
sprint-planning # Initialize tracking
create-story # Create story
# DEV agent:
dev-story # Implement
code-review # Review
# SM agent:
retrospective # After epic
correct-course # If issues
```
### Key Files
**Documentation Output:**
- `docs/index.md` - **Master AI entry point (REQUIRED)**
- `docs/project-overview.md`
- `docs/architecture.md`
- `docs/source-tree-analysis.md`
**Phase 1-4 Tracking:**
- `docs/bmm-workflow-status.yaml` - Progress tracker
**Phase 2 Planning:**
- `docs/tech-spec.md` (Quick Flow track)
- `docs/PRD.md` (BMad Method/Enterprise tracks - FRs/NFRs only)
**Phase 3 Solutioning:**
- Epic breakdown (created after architecture)
**Phase 3 Architecture:**
- `docs/architecture.md` (BMad Method/Enterprise tracks)
- `docs/epics.md` + epic folders (from create-epics-and-stories)
**Phase 4 Implementation:**
- `docs/sprint-status.yaml` - **Single source of truth**
- `docs/epic-{n}-context.md`
- `docs/stories/{epic}-{story}-{title}.md`
- `docs/stories/{epic}-{story}-{title}-context.md`
### Decision Flowchart
```mermaid
flowchart TD
START([Brownfield Project])
CHECK{Has docs/<br/>index.md?}
START --> CHECK
CHECK -->|No| DOC[document-project<br/>Deep scan]
CHECK -->|Yes| TRACK{What Track?}
DOC --> TRACK
TRACK -->|Quick Flow| TS[tech-spec]
TRACK -->|BMad Method| PRD[prd → architecture]
TRACK -->|Enterprise| PRD2[prd → arch + security/devops]
TS --> IMPL[Phase 4<br/>Implementation]
PRD --> IMPL
PRD2 --> IMPL
style START fill:#f9f,stroke:#333,stroke-width:2px,color:#000
style DOC fill:#ffb,stroke:#333,stroke-width:2px,color:#000
style IMPL fill:#bfb,stroke:#333,stroke-width:2px,color:#000
```
---
## Prevention Tips
**Avoid issues before they happen:**
1. ✅ **Always run document-project for brownfield** - Saves context issues later
2. ✅ **Use fresh chats for complex workflows** - Prevents hallucinations
3. ✅ **Verify files exist before workflows** - Check PRD, epics, stories present
4. ✅ **Read agent menu first** - Confirm agent has the workflow
5. ✅ **Start with simpler track if unsure** - Easy to upgrade (Quick Flow → BMad Method)
6. ✅ **Keep status files updated** - Manual updates when needed
7. ✅ **Run retrospectives after epics** - Catch issues early
8. ✅ **Follow phase sequence** - Don't skip required phases
---
## Related Documentation
- **[Scale Adaptive System](./scale-adaptive-system.md)** - Understanding tracks and complexity
- **[Quick Spec Flow](./quick-spec-flow.md)** - Fast-track for Quick Flow
- **[Quick Start Guide](./quick-start.md)** - Getting started with BMM
- **[Glossary](./glossary.md)** - Key terminology
- **[FAQ](./faq.md)** - Common questions
- **[Workflow Documentation](./index.md#-workflow-guides)** - Complete workflow reference
---
## Support and Resources
**Community:**
- [Discord](https://discord.gg/gk8jAdXWmj) - #general-dev, #bugs-issues
- [GitHub Issues](https://github.com/bmad-code-org/BMAD-METHOD/issues)
- [YouTube Channel](https://www.youtube.com/@BMadCode)
**Documentation:**
- **[Test Architect Guide](./test-architecture.md)** - Comprehensive testing strategy
- [BMM Module README](../README.md) - Complete module and workflow reference
---
_Brownfield development is about understanding and respecting what exists while thoughtfully extending it._
Remember, LLMs are excellent at interpreting and analyzing code—whether it was AI-generated or not. Use the agent to:
- Learn about your project
- Understand how things are built
- Explore unfamiliar parts of the codebase

View File

@ -510,7 +510,7 @@ Trust your expertise - BMM supports your decisions.
**A:**
1. Search [Complete Documentation](./README.md) for related topics
1. Search [Complete Documentation](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/README.md) for related topics
2. Ask in [Discord Community](https://discord.gg/gk8jAdXWmj) (#general-dev)
3. Open a [GitHub Issue](https://github.com/bmad-code-org/BMAD-METHOD/issues)
4. Watch [YouTube Tutorials](https://www.youtube.com/@BMadCode)

View File

@ -40,6 +40,8 @@ First know there is the full BMad Method Process and then there is a Quick Flow
- Implementation in minutes, not days
- Has a specialized single agent that does all of this: **[Quick Flow Solo Dev Agent](./quick-flow-solo-dev.md)**
- **TEA engagement (optional)** - Choose TEA engagement: none, TEA-only (standalone), or integrated by track. See **[Test Architect Guide](./test-architecture.md)**.
## 🤖 Agents and Collaboration
Complete guide to BMM's AI agent team:

View File

@ -179,6 +179,16 @@ Once epics and stories are created:
**Why run this?** It ensures all your planning assets align properly before you start building.
#### Optional: TEA Engagement
Testing is not mandated by BMad. Decide how you want to engage TEA:
- **No TEA** - Use your existing team testing approach
- **TEA-only (Standalone)** - Use TEA workflows with your own requirements and environment
- **TEA-integrated** - Use TEA as part of the BMad Method or Enterprise flow
See the [Test Architect Guide](./test-architecture.md) for the five TEA engagement models and recommended sequences.
#### Context Management Tips
- **Use 200k+ context models** for best results (Claude Sonnet 4.5, GPT-4, etc.)
@ -211,7 +221,14 @@ Once planning and architecture are complete, you'll move to Phase 4. **Important
3. Tell the agent: "Run dev-story"
4. The DEV agent will implement the story and update the sprint status
#### 3.4 Review the Code (Optional but Recommended)
#### 3.4 Generate Guardrail Tests (Optional)
1. **Start a new chat** with the **TEA agent**
2. Wait for the menu
3. Tell the agent: "Run automate"
4. The TEA agent generates or expands tests to act as guardrails
#### 3.5 Review the Code (Optional but Recommended)
1. **Start a new chat** with the **DEV agent**
2. Wait for the menu
@ -224,7 +241,8 @@ For each subsequent story, repeat the cycle using **fresh chats** for each workf
1. **New chat** → SM agent → "Run create-story"
2. **New chat** → DEV agent → "Run dev-story"
3. **New chat** → DEV agent → "Run code-review" (optional but recommended)
3. **New chat** → TEA agent → "Run automate" (optional)
4. **New chat** → DEV agent → "Run code-review" (optional but recommended)
After completing all stories in an epic:

View File

@ -6,6 +6,38 @@
- **Mission:** Deliver actionable quality strategies, automation coverage, and gate decisions that scale with project complexity and compliance demands.
- **Use When:** BMad Method or Enterprise track projects, integration risk is non-trivial, brownfield regression risk exists, or compliance/NFR evidence is required. (Quick Flow projects typically don't require TEA)
## Choose Your TEA Engagement Model
BMad does not mandate TEA. There are five valid ways to use it (or skip it). Pick one intentionally.
1. **No TEA**
- Skip all TEA workflows. Use your existing team testing approach.
2. **TEA-only (Standalone)**
- Use TEA on a non-BMad project. Bring your own requirements, acceptance criteria, and environments.
- Typical sequence: `*test-design` (system or epic) -> `*atdd` and/or `*automate` -> optional `*test-review` -> `*trace` for coverage and gate decisions.
- Run `*framework` or `*ci` only if you want TEA to scaffold the harness or pipeline.
3. **Integrated: Greenfield - BMad Method (Simple/Standard Work)**
- Phase 3: system-level `*test-design`, then `*framework` and `*ci`.
- Phase 4: per-epic `*test-design`, optional `*atdd`, then `*automate` and optional `*test-review`.
- Gate (Phase 2): `*trace`.
4. **Integrated: Brownfield - BMad Method or Enterprise (Simple or Complex)**
- Phase 2: baseline `*trace`.
- Phase 3: system-level `*test-design`, then `*framework` and `*ci`.
- Phase 4: per-epic `*test-design` focused on regression and integration risks.
- Gate (Phase 2): `*trace`; `*nfr-assess` (if not done earlier).
- For brownfield BMad Method, follow the same flow with `*nfr-assess` optional.
5. **Integrated: Greenfield - Enterprise Method (Enterprise/Compliance Work)**
- Phase 2: `*nfr-assess`.
- Phase 3: system-level `*test-design`, then `*framework` and `*ci`.
- Phase 4: per-epic `*test-design`, plus `*atdd`/`*automate`/`*test-review`.
- Gate (Phase 2): `*trace`; archive artifacts as needed.
If you are unsure, default to the integrated path for your track and adjust later.
## TEA Workflow Lifecycle
TEA integrates into the BMad development lifecycle during Solutioning (Phase 3) and Implementation (Phase 4):
@ -16,6 +48,9 @@ graph TB
subgraph Phase2["<b>Phase 2: PLANNING</b>"]
PM["<b>PM: *prd (creates PRD with FRs/NFRs)</b>"]
PlanNote["<b>Business requirements phase</b>"]
NFR2["<b>TEA: *nfr-assess (optional, enterprise)</b>"]
PM -.-> NFR2
NFR2 -.-> PlanNote
PM -.-> PlanNote
end
@ -23,8 +58,8 @@ graph TB
Architecture["<b>Architect: *architecture</b>"]
EpicsStories["<b>PM/Architect: *create-epics-and-stories</b>"]
TestDesignSys["<b>TEA: *test-design (system-level)</b>"]
Framework["<b>TEA: *framework</b>"]
CI["<b>TEA: *ci</b>"]
Framework["<b>TEA: *framework (optional if needed)</b>"]
CI["<b>TEA: *ci (optional if needed)</b>"]
GateCheck["<b>Architect: *implementation-readiness</b>"]
Architecture --> EpicsStories
Architecture --> TestDesignSys
@ -174,7 +209,7 @@ npm install -D @seontechnologies/playwright-utils
**Enable during BMAD installation** by answering "Yes" when prompted.
**Supported utilities (11 total):**
**Supported utilities (10 total):**
- api-request, network-recorder, auth-session, intercept-network-call, recurse
- log, file-utils, burn-in, network-error-monitor
@ -429,7 +464,7 @@ Provides fixture-based utilities that integrate into TEA's test generation and r
Benefit: Faster CI feedback, HTTP error detection
**Utilities available** (11 total): api-request, network-recorder, auth-session, intercept-network-call, recurse, log, file-utils, burn-in, network-error-monitor, fixtures-composition
**Utilities available** (10 total): api-request, network-recorder, auth-session, intercept-network-call, recurse, log, file-utils, burn-in, network-error-monitor, fixtures-composition
**Enable during BMAD installation** by answering "Yes" when prompted, or manually set `tea_use_playwright_utils: true` in `_bmad/bmm/config.yaml`.

View File

@ -98,8 +98,9 @@ Stories move through these states in the sprint status file:
1. SM runs `create-story`
2. DEV runs `dev-story`
3. DEV runs `code-review`
4. If code review fails: DEV fixes issues in `dev-story`, then re-runs `code-review`
3. (Optional) TEA runs `*automate` to generate or expand guardrail tests
4. DEV runs `code-review`
5. If code review fails: DEV fixes issues in `dev-story`, then re-runs `code-review`
**After Epic Complete:**

View File

@ -434,7 +434,7 @@ Architecture documents are living. Update them as you learn during implementatio
**Key Difference:** Enterprise adds optional extended workflows AFTER architecture but BEFORE create-epics-and-stories. Everything else is identical to BMad Method.
**Note:** TEA (Test Architect) operates across all phases and validates architecture testability but is not a Phase 3-specific workflow. See [Test Architecture Guide](../../../../docs/modules/bmm-bmad-method/test-architecture.md) for TEA's full lifecycle integration.
**Note:** TEA (Test Architect) operates across all phases and validates architecture testability but is not a Phase 3-specific workflow. See [Test Architecture Guide](./test-architecture.md) for TEA's full lifecycle integration.
---

View File

@ -142,7 +142,7 @@ CIS workflows integrate with:
## Related Documentation
- **[BMM Documentation](../../bmm/docs/index.md)** - Core BMad Method documentation
- **[BMM Documentation](../bmm/index.md)** - Core BMad Method documentation
---

View File

@ -1,21 +0,0 @@
# Using BMad Web Bundles in Gemini Gems & Custom GPTs
## IMPORTANT NOTE
The Web Bundling Feature is being rebuilt from the ground up, current bundles found for v6 may be incomplete or missing functionality and are not optimized.
## What Are Web bundles
Web bundles package BMad agents as self-contained files that work in Gemini Gems and Custom GPTs. Everything the agent needs - instructions, workflows, dependencies - is bundled into a single file for easy upload.
## What Are Web Bundles?
Web bundles are standalone files containing:
- Complete agent persona and instructions
- All workflows and dependencies
- Interactive menu system
- Party mode for multi-agent collaboration
- No external files required
**Perfect for:** Uploading a single file to a Gemini GEM or Custom GPT to use BMad Method from the Web, generally at a huge cost savings, at the expense of some quality and convenience of using locally.

4
package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "bmad-method",
"version": "6.0.0-alpha.21",
"version": "6.0.0-alpha.22",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "bmad-method",
"version": "6.0.0-alpha.21",
"version": "6.0.0-alpha.22",
"license": "MIT",
"dependencies": {
"@kayvan/markdown-tree-parser": "^1.6.1",

View File

@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/package.json",
"name": "bmad-method",
"version": "6.0.0-alpha.21",
"version": "6.0.0-alpha.22",
"description": "Breakthrough Method of Agile AI-driven Development",
"keywords": [
"agile",

View File

@ -5,6 +5,7 @@ agent:
title: "Commit Message Artisan"
icon: "📜"
module: stand-alone
hasSidecar: false
persona:
role: |

View File

@ -5,6 +5,7 @@ agent:
title: "Meditation Guide"
icon: "🧘"
module: "mwm"
hasSidecar: false
persona:
role: "Mindfulness and meditation specialist"
identity: |

View File

@ -7,6 +7,7 @@ agent:
name: "BMad Master"
title: "BMad Master Executor, Knowledge Custodian, and Workflow Orchestrator"
icon: "🧙"
hasSidecar: false
persona:
role: "Master Task Executor + BMad Expert + Guiding Facilitator Orchestrator"

View File

@ -7,6 +7,7 @@
<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>
<i>YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`</i>
</llm>
<integration description="When called from workflow">

View File

@ -7,6 +7,7 @@
- 📋 YOU ARE A FACILITATOR, not a content generator
- 💬 FOCUS on session setup and continuation detection only
- 🚪 DETECT existing workflow state and handle continuation properly
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 UNDERSTAND PREVIOUS SESSION context and outcomes
- 🔍 SEAMLESSLY RESUME from where user left off
- 💬 MAINTAIN CONTINUITY in session flow and rapport
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 PREVIEW TECHNIQUE OPTIONS clearly and concisely
- 🔍 LET USER EXPLORE and select based on their interests
- 💬 PROVIDE BACK OPTION to return to approach selection
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 LOAD TECHNIQUES ON-DEMAND from brain-methods.csv for recommendations
- 🔍 MATCH TECHNIQUES to user goals, constraints, and preferences
- 💬 PROVIDE CLEAR RATIONALE for each recommendation
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 LOAD TECHNIQUES ON-DEMAND from brain-methods.csv
- 🔍 CREATE EXCITEMENT around unexpected creative methods
- 💬 EMPHASIZE DISCOVERY over predictable outcomes
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 LOAD TECHNIQUES ON-DEMAND from brain-methods.csv for each phase
- 🔍 MATCH TECHNIQUES to natural creative progression stages
- 💬 CREATE CLEAR JOURNEY MAP with phase transitions
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 RESPOND DYNAMICALLY to user insights and build upon their ideas
- 🔍 ADAPT FACILITATION based on user engagement and emerging directions
- 💬 CREATE TRUE COLLABORATION, not question-answer sequences
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 CREATE ACTIONABLE NEXT STEPS from brainstorming outcomes
- 🔍 FACILITATE CONVERGENT THINKING after divergent exploration
- 💬 DELIVER COMPREHENSIVE SESSION DOCUMENTATION
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language`
## EXECUTION PROTOCOLS:

View File

@ -8,7 +8,7 @@ context_file: '' # Optional context file path for project-specific guidance
**Goal:** Facilitate interactive brainstorming sessions using diverse creative techniques and ideation methods
**Your Role:** You are a brainstorming facilitator and creative thinking guide. You bring structured creativity techniques, facilitation expertise, and an understanding of how to guide users through effective ideation processes that generate innovative ideas and breakthrough solutions.
**Your Role:** You are a brainstorming facilitator and creative thinking guide. You bring structured creativity techniques, facilitation expertise, and an understanding of how to guide users through effective ideation processes that generate innovative ideas and breakthrough solutions. During this entire workflow it is critical that you speak to the user in the config loaded `communication_language`.
---

View File

@ -7,6 +7,7 @@
- 📋 LOAD COMPLETE AGENT ROSTER from manifest with merged personalities
- 🔍 PARSE AGENT DATA for conversation orchestration
- 💬 INTRODUCE DIVERSE AGENT SAMPLE to kick off discussion
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 MAINTAIN CHARACTER CONSISTENCY using merged agent personalities
- 🔍 ENABLE NATURAL CROSS-TALK between agents for dynamic conversation
- 💬 INTEGRATE TTS for each agent response immediately after text
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
## EXECUTION PROTOCOLS:

View File

@ -7,6 +7,7 @@
- 📋 EXPRESS GRATITUDE to user for collaborative participation
- 🔍 ACKNOWLEDGE SESSION HIGHLIGHTS and key insights gained
- 💬 MAINTAIN POSITIVE ATMOSPHERE until the very end
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
## EXECUTION PROTOCOLS:

View File

@ -7,7 +7,7 @@ description: Orchestrates group discussions between all installed BMAD agents, e
**Goal:** Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations
**Your Role:** You are a party mode facilitator and multi-agent conversation orchestrator. You bring together diverse BMAD agents for collaborative discussions, managing the flow of conversation while maintaining each agent's unique personality and expertise.
**Your Role:** You are a party mode facilitator and multi-agent conversation orchestrator. You bring together diverse BMAD agents for collaborative discussions, managing the flow of conversation while maintaining each agent's unique personality and expertise - while still utilizing the configured {communication_language}.
---

View File

@ -9,6 +9,7 @@ agent:
title: Agent Building Expert
icon: 🤖
module: bmb
hasSidecar: false
persona:
role: Agent Architecture Specialist + BMAD Compliance Expert
@ -28,9 +29,13 @@ agent:
menu:
- trigger: CA or fuzzy match on create-agent
exec: "{project-root}/_bmad/bmb/workflows/create-agent/workflow.md"
exec: "{project-root}/_bmad/bmb/workflows/agent/workflow.md"
description: "[CA] Create a new BMAD agent with best practices and compliance"
- trigger: EA or fuzzy match on edit-agent
exec: "{project-root}/_bmad/bmb/workflows/edit-agent/workflow.md"
exec: "{project-root}/_bmad/bmb/workflows/agent/workflow.md"
description: "[EA] Edit existing BMAD agents while maintaining compliance"
- trigger: VA or fuzzy match on validate-agent
exec: "{project-root}/_bmad/bmb/workflows/agent/workflow.md"
description: "[VA] Validate existing BMAD agents and offer to improve deficiencies"

View File

@ -9,6 +9,7 @@ agent:
title: Module Creation Master
icon: 🏗️
module: bmb
hasSidecar: false
persona:
role: Module Architecture Specialist + Full-Stack Systems Designer
@ -27,22 +28,18 @@ agent:
- modules: "{project-root}/_bmad/bmb/docs/modules/kb.csv"
menu:
- trigger: BM or fuzzy match on brainstorm-module
exec: "{project-root}/_bmad/bmb/workflows/brainstorm-module/workflow.md"
description: "[BM] Brainstorm and conceptualize new BMAD modules"
- trigger: PB or fuzzy match on product-brief
exec: "{project-root}/_bmad/bmb/workflows/product-brief-module/workflow.md"
exec: "{project-root}/_bmad/bmb/workflows/module/workflow.md"
description: "[PB] Create product brief for BMAD module development"
- trigger: CM or fuzzy match on create-module
exec: "{project-root}/_bmad/bmb/workflows/create-module/workflow.md"
exec: "{project-root}/_bmad/bmb/workflows/module/workflow.md"
description: "[CM] Create a complete BMAD module with agents, workflows, and infrastructure"
- trigger: EM or fuzzy match on edit-module
exec: "{project-root}/_bmad/bmb/workflows/edit-module/workflow.md"
exec: "{project-root}/_bmad/bmb/workflows/module/workflow.md"
description: "[EM] Edit existing BMAD modules while maintaining coherence"
- trigger: VM or fuzzy match on validate-module
exec: "{project-root}/_bmad/bmb/workflows/module-compliance-check/workflow.md"
exec: "{project-root}/_bmad/bmb/workflows/module/workflow.md"
description: "[VM] Run compliance check on BMAD modules against best practices"

View File

@ -9,6 +9,7 @@ agent:
title: Workflow Building Master
icon: 🔄
module: bmb
hasSidecar: false
persona:
role: Workflow Architecture Specialist + Process Design Expert
@ -28,13 +29,17 @@ agent:
menu:
- trigger: CW or fuzzy match on create-workflow
exec: "{project-root}/_bmad/bmb/workflows/create-workflow/workflow.md"
exec: "{project-root}/_bmad/bmb/workflows/workflow/workflow.md"
description: "[CW] Create a new BMAD workflow with proper structure and best practices"
# - trigger: EW or fuzzy match on edit-workflow
# exec: "{project-root}/_bmad/bmb/workflows/edit-workflow/workflow.md"
# description: "[EW] Edit existing BMAD workflows while maintaining integrity"
- trigger: EW or fuzzy match on edit-workflow
exec: "{project-root}/_bmad/bmb/workflows/workflow/workflow.md"
description: "[EW] Edit existing BMAD workflows while maintaining integrity"
# - trigger: VW or fuzzy match on validate-workflow
# exec: "{project-root}/_bmad/bmb/workflows/workflow-compliance-check/workflow.md"
# description: "[VW] Run compliance check on BMAD workflows against best practices"
- trigger: VW or fuzzy match on validate-workflow
exec: "{project-root}/_bmad/bmb/workflows/workflow/workflow.md"
description: "[VW] Run validation check on BMAD workflows against best practices"
- trigger: RW or fuzzy match on convert-or-rework-workflow
exec: "{project-root}/_bmad/bmb/workflows/workflow/workflow.md"
description: "[RW] Rework a Workflow to a V6 Compliant Version"

View File

@ -1,318 +0,0 @@
# Agent Compilation: YAML to XML
What the compiler auto-injects. **DO NOT duplicate these in your YAML.**
## Compilation Pipeline
```
agent.yaml → Handlebars processing → XML generation → frontmatter.md
```
Source: `tools/cli/lib/agent/compiler.js`
## File Naming Convention
**CRITICAL:** Agent filenames must be ROLE-BASED, not persona-based.
**Why:** Users can customize the agent's persona name via `customize.yaml` config. The filename provides stable identity.
**Correct:**
```
presentation-master.agent.yaml ← Role/function
tech-writer.agent.yaml ← Role/function
code-reviewer.agent.yaml ← Role/function
```
**Incorrect:**
```
caravaggio.agent.yaml ← Persona name (users might rename to "Pablo")
paige.agent.yaml ← Persona name (users might rename to "Sarah")
rex.agent.yaml ← Persona name (users might rename to "Max")
```
**Pattern:**
- Filename: `{role-or-function}.agent.yaml` (kebab-case)
- Metadata ID: `_bmad/{module}/agents/{role-or-function}.md`
- Persona Name: User-customizable in metadata or customize.yaml
**Example:**
```yaml
# File: presentation-master.agent.yaml
agent:
metadata:
id: '_bmad/cis/agents/presentation-master.md'
name: Caravaggio # ← Users can change this to "Pablo" or "Vince"
title: Visual Communication & Presentation Expert
```
## Auto-Injected Components
### 1. Frontmatter
**Injected automatically:**
```yaml
---
name: '{agent name from filename}'
description: '{title from metadata}'
---
You must fully embody this agent's persona...
```
**DO NOT add** frontmatter to your YAML source.
### 2. Activation Block
**Entire activation section is auto-generated:**
```xml
<activation critical="MANDATORY">
<step n="1">Load persona from this current agent file</step>
<step n="2">Load config to get {user_name}, {communication_language}</step>
<step n="3">Remember: user's name is {user_name}</step>
<!-- YOUR critical_actions inserted here as numbered steps -->
<step n="N">ALWAYS communicate in {communication_language}</step>
<step n="N+1">Show greeting + numbered menu</step>
<step n="N+2">STOP and WAIT for user input</step>
<step n="N+3">Input resolution rules</step>
<menu-handlers>
<!-- Only handler instructions for the handler types used in the agents specific menu are included -->
</menu-handlers>
<rules>
<!-- Standard agent behavior rules -->
</rules>
</activation>
```
**DO NOT create** activation sections - compiler builds it from your critical_actions.
### 3. Menu Handlers
Compiler detects which handlers you use and ONLY includes those:
```xml
<menu-handlers>
<handlers>
<!-- Only if you use action="#id" or action="text" -->
<handler type="action">...</handler>
<!-- Only if you use workflow="path" -->
<handler type="workflow">...</handler>
<!-- Only if you use exec="path" -->
<handler type="exec">...</handler>
<!-- Only if you use tmpl="path" -->
<handler type="tmpl">...</handler>
</handlers>
</menu-handlers>
```
**DO NOT document** handler behavior - it's injected.
### 4. Rules Section
**Auto-injected rules:**
- Always communicate in {communication_language}
- Stay in character until exit
- Menu triggers use asterisk (\*) - NOT markdown
- Number all lists, use letters for sub-options
- Load files ONLY when executing menu items
- Written output follows communication style
**DO NOT add** rules - compiler handles it.
## What YOU Provide in YAML
### Required
```yaml
agent:
metadata:
id: '_bmad_/{module}/agents/foo/foo.agent.md
name: 'Persona Name'
title: 'Agent Title'
icon: 'emoji'
module: "bmm"
persona:
role: '...'
identity: '...'
communication_style: '...'
principles: [...]
menu:
- trigger: AB or fuzzy match on your-action
action: '#prompt-id'
description: '[AB] Your Action described menu item '
```
### Optional (based on type)
```yaml
# Expert agents only
critical_actions:
- 'Load sidecar files...'
- 'Restrict access...'
# Simple/Expert with embedded logic
prompts:
- id: prompt-id
content: '...'
# Simple/Expert with customization
install_config:
questions: [...]
```
## Common Duplication Mistakes
### Adding Activation Logic
```yaml
# BAD - compiler builds activation
agent:
activation:
steps: [...]
```
### Including Help/Exit
```yaml
# BAD - auto-injected
menu:
- trigger: help
- trigger: exit
```
### Prefixing Triggers
```yaml
# BAD - compiler adds *
menu:
- trigger: '*analyze' # Should be: analyze
```
### Documenting Handlers
```yaml
# BAD - don't explain handlers, compiler injects them
# When using workflow, load workflow.xml...
```
### Adding Rules in YAML
```yaml
# BAD - rules are auto-injected
agent:
rules:
- Stay in character...
```
## Compilation Example
**Your YAML:**
```yaml
agent:
metadata:
name: 'Rex'
title: 'Code Reviewer'
icon: '🔍'
type: simple
persona:
role: Code Review Expert
identity: Systematic reviewer...
communication_style: Direct and constructive
principles:
- Code should be readable
prompts:
- id: review
content: |
Analyze code for issues...
menu:
- trigger: review
action: '#review'
description: 'Review code'
```
**Compiled Output (.md):**
```markdown
---
name: 'rex'
description: 'Code Reviewer'
---
You must fully embody...
\`\`\`xml
<agent id="path" name="Rex" title="Code Reviewer" icon="🔍">
<activation critical="MANDATORY">
<step n="1">Load persona...</step>
<step n="2">Load config...</step>
<step n="3">Remember user...</step>
<step n="4">Communicate in language...</step>
<step n="5">Show greeting + menu...</step>
<step n="6">STOP and WAIT...</step>
<step n="7">Input resolution...</step>
<menu-handlers>
<handlers>
<handler type="action">
action="#id" → Find prompt, execute
action="text" → Execute directly
</handler>
</handlers>
</menu-handlers>
<rules>
- Stay in character...
- Number lists...
- Load files when executing...
</rules>
</activation>
<persona>
<role>Code Review Expert</role>
<identity>Systematic reviewer...</identity>
<communication_style>Direct and constructive</communication_style>
<principles>Code should be readable</principles>
</persona>
<prompts>
<prompt id="review">
<content>
Analyze code for issues...
</content>
</prompt>
</prompts>
<menu>
<item cmd="*help">Show numbered menu</item>
<item cmd="*review" action="#review">Review code</item>
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
\`\`\`
```
## Key Takeaways
1. **Compiler handles boilerplate** - Focus on persona and logic
2. **Critical_actions become activation steps** - Just list your agent-specific needs
3. **Menu items are enhanced** - Help/exit added, triggers prefixed
4. **Handlers auto-detected** - Only what you use is included
5. **Rules standardized** - Consistent behavior across agents
**Your job:** Define persona, prompts, menu actions
**Compiler's job:** Activation, handlers, rules, help/exit, prefixes

View File

@ -1,523 +0,0 @@
# BMAD Agent Menu Patterns
Design patterns for agent menus in YAML source files.
## Menu Structure
Agents define menus in YAML, with triggers auto-prefixed with `*` during compilation:
```yaml
menu:
- trigger: action-name
[handler]: [value]
description: 'What this command does'
```
**Note:** `*help` and `*exit` are auto-injected by the compiler - DO NOT include them.
## Handler Types
### 1. Action Handler (Prompts & Inline)
For simple and expert agents with self-contained logic.
**Reference to Prompt ID:**
```yaml
prompts:
- id: analyze-code
content: |
<instructions>
Analyze the provided code for patterns and issues.
</instructions>
<process>
1. Identify code structure
2. Check for anti-patterns
3. Suggest improvements
</process>
menu:
- trigger: analyze
action: '#analyze-code'
description: 'Analyze code patterns'
```
**Inline Instruction:**
```yaml
menu:
- trigger: quick-check
action: 'Perform a quick syntax validation on the current file'
description: 'Quick syntax check'
```
**When to Use:**
- Simple/Expert agents with self-contained operations
- `#id` for complex, multi-step prompts
- Inline text for simple, one-line instructions
### 2. Workflow Handler
For module agents orchestrating multi-step processes.
```yaml
menu:
- trigger: create-prd
workflow: '{project-root}/_bmad/bmm/workflows/prd/workflow.yaml'
description: 'Create Product Requirements Document'
- trigger: brainstorm
workflow: '{project-root}/_bmad/core/workflows/brainstorming/workflow.yaml'
description: 'Guided brainstorming session'
# Placeholder for unimplemented workflows
- trigger: future-feature
workflow: 'todo'
description: 'Coming soon'
```
**When to Use:**
- Module agents with workflow integration
- Multi-step document generation
- Complex interactive processes
- Use "todo" for planned but unimplemented features
### 3. Exec Handler
For executing tasks directly.
```yaml
menu:
- trigger: validate
exec: '{project-root}/_bmad/core/tasks/validate-workflow.xml'
description: 'Validate document structure'
- trigger: advanced-elicitation
exec: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
description: 'Advanced elicitation techniques'
```
**When to Use:**
- Single-operation tasks
- Core system operations
- Utility functions
### 4. Template Handler
For document generation with templates.
```yaml
menu:
- trigger: create-brief
exec: '{project-root}/_bmad/core/tasks/create-doc.xml'
tmpl: '{project-root}/_bmad/bmm/templates/brief.md'
description: 'Create a Product Brief'
```
**When to Use:**
- Template-based document creation
- Combine `exec` with `tmpl` path
- Structured output generation
### 5. Data Handler
Universal attribute for supplementary information.
```yaml
menu:
- trigger: team-standup
exec: '{project-root}/_bmad/bmm/tasks/standup.xml'
data: '{project-root}/_bmad/_config/agent-manifest.csv'
description: 'Run team standup'
- trigger: analyze-metrics
action: 'Analyze these metrics and identify trends'
data: '{project-root}/_data/metrics.json'
description: 'Analyze performance metrics'
```
**When to Use:**
- Add to ANY handler type
- Reference data files (CSV, JSON, YAML)
- Provide context for operations
## Platform-Specific Menus
Control visibility based on deployment target:
```yaml
menu:
- trigger: git-flow
exec: '{project-root}/_bmad/bmm/tasks/git-flow.xml'
description: 'Git workflow operations'
ide-only: true # Only in IDE environments
- trigger: advanced-elicitation
exec: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
description: 'Advanced elicitation'
web-only: true # Only in web bundles
```
## Trigger Naming Conventions
### Action-Based (Recommended)
```yaml
# Creation
- trigger: create-prd
- trigger: build-module
- trigger: generate-report
# Analysis
- trigger: analyze-requirements
- trigger: review-code
- trigger: validate-architecture
# Operations
- trigger: update-status
- trigger: sync-data
- trigger: deploy-changes
```
### Domain-Based
```yaml
# Development
- trigger: brainstorm
- trigger: architect
- trigger: refactor
# Project Management
- trigger: sprint-plan
- trigger: retrospective
- trigger: standup
```
### Bad Patterns
```yaml
# TOO VAGUE
- trigger: do
- trigger: run
- trigger: process
# TOO LONG
- trigger: create-comprehensive-product-requirements-document
# NO VERB
- trigger: prd
- trigger: config
```
## Menu Organization
### Recommended Order
```yaml
menu:
# Note: *help auto-injected first by compiler
# 1. Primary workflows (main value)
- trigger: workflow-init
workflow: '...'
description: 'Start here - initialize workflow'
- trigger: create-prd
workflow: '...'
description: 'Create PRD'
# 2. Secondary operations
- trigger: validate
exec: '...'
description: 'Validate document'
# 3. Utilities
- trigger: party-mode
workflow: '...'
description: 'Multi-agent discussion'
# Note: *exit auto-injected last by compiler
```
### Grouping by Phase
```yaml
menu:
# Analysis Phase
- trigger: brainstorm
workflow: '{project-root}/_bmad/bmm/workflows/1-analysis/brainstorm/workflow.yaml'
description: 'Brainstorm ideas'
- trigger: research
workflow: '{project-root}/_bmad/bmm/workflows/1-analysis/research/workflow.yaml'
description: 'Conduct research'
# Planning Phase
- trigger: prd
workflow: '{project-root}/_bmad/bmm/workflows/2-planning/prd/workflow.yaml'
description: 'Create PRD'
- trigger: architecture
workflow: '{project-root}/_bmad/bmm/workflows/2-planning/architecture/workflow.yaml'
description: 'Design architecture'
```
## Description Best Practices
### Good Descriptions
```yaml
# Clear action + object
- description: 'Create Product Requirements Document'
# Specific outcome
- description: 'Analyze security vulnerabilities'
# User benefit
- description: 'Optimize code for performance'
# Context when needed
- description: 'Start here - initialize workflow path'
```
### Poor Descriptions
```yaml
# Too vague
- description: 'Process'
# Technical jargon
- description: 'Execute WF123'
# Missing context
- description: 'Run'
# Redundant with trigger
- description: 'Create PRD' # trigger: create-prd (too similar)
```
## Prompts Section (Simple/Expert Agents)
### Prompt Structure
```yaml
prompts:
- id: unique-identifier
content: |
<instructions>
What this prompt accomplishes
</instructions>
<process>
1. First step
{{#if custom_option}}
2. Conditional step
{{/if}}
3. Final step
</process>
<output_format>
Expected structure of results
</output_format>
```
### Semantic XML Tags in Prompts
Use XML tags to structure prompt content:
- `<instructions>` - What to do
- `<process>` - Step-by-step approach
- `<output_format>` - Expected results
- `<examples>` - Sample outputs
- `<constraints>` - Limitations
- `<context>` - Background information
### Handlebars in Prompts
Customize based on install_config:
```yaml
prompts:
- id: analyze
content: |
{{#if detailed_mode}}
Perform comprehensive analysis with full explanations.
{{/if}}
{{#unless detailed_mode}}
Quick analysis focusing on key points.
{{/unless}}
Address {{user_name}} in {{communication_style}} tone.
```
## Path Variables
### Always Use Variables
```yaml
# GOOD - Portable paths
workflow: "{project-root}/_bmad/bmm/workflows/prd/workflow.yaml"
exec: "{project-root}/_bmad/core/tasks/validate.xml"
data: "{project-root}/_data/metrics.csv"
# BAD - Hardcoded paths
workflow: "/Users/john/project/_bmad/bmm/workflows/prd/workflow.yaml"
exec: "../../../core/tasks/validate.xml"
```
### Available Variables
- `{project-root}` - Project root directory
- `_bmad` - BMAD installation folder
- `{output_folder}` - Document output location
- `{user_name}` - User's name from config
- `{communication_language}` - Language preference
## Complete Examples
### Simple Agent Menu
```yaml
prompts:
- id: format-code
content: |
<instructions>
Format the provided code according to style guidelines.
</instructions>
Apply:
- Consistent indentation
- Proper spacing
- Clear naming conventions
menu:
- trigger: format
action: '#format-code'
description: 'Format code to style guidelines'
- trigger: lint
action: 'Check code for common issues and anti-patterns'
description: 'Lint code for issues'
- trigger: suggest
action: 'Suggest improvements for code readability'
description: 'Suggest improvements'
```
### Expert Agent Menu
```yaml
critical_actions:
- 'Load ./memories.md'
- 'Follow ./instructions.md'
- 'ONLY access ./'
prompts:
- id: reflect
content: |
Guide {{user_name}} through reflection on recent entries.
Reference patterns from memories.md naturally.
menu:
- trigger: write
action: '#reflect'
description: 'Write journal entry'
- trigger: save
action: 'Update ./memories.md with session insights'
description: "Save today's session"
- trigger: patterns
action: 'Analyze recent entries for recurring themes'
description: 'View patterns'
```
### Module Agent Menu
```yaml
menu:
- trigger: workflow-init
workflow: '{project-root}/_bmad/bmm/workflows/workflow-status/init/workflow.yaml'
description: 'Initialize workflow path (START HERE)'
- trigger: brainstorm
workflow: '{project-root}/_bmad/bmm/workflows/1-analysis/brainstorm/workflow.yaml'
description: 'Guided brainstorming'
- trigger: prd
workflow: '{project-root}/_bmad/bmm/workflows/2-planning/prd/workflow.yaml'
description: 'Create PRD'
- trigger: architecture
workflow: '{project-root}/_bmad/bmm/workflows/2-planning/architecture/workflow.yaml'
description: 'Design architecture'
- trigger: party-mode
workflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.yaml'
description: 'Multi-agent discussion'
```
## Validation Checklist
- [ ] No duplicate triggers
- [ ] Triggers don't start with `*` (auto-added)
- [ ] Every item has a description
- [ ] Paths use variables, not hardcoded
- [ ] `#id` references exist in prompts section
- [ ] Workflow paths resolve or are "todo"
- [ ] No `*help` or `*exit` (auto-injected)
- [ ] Descriptions are clear and action-oriented
- [ ] Platform-specific flags used correctly (ide-only, web-only)
## Common Mistakes
### Duplicate Triggers
```yaml
# BAD - compiler will fail
- trigger: analyze
action: '#first'
description: 'First analysis'
- trigger: analyze
action: '#second'
description: 'Second analysis'
```
### Including Auto-Injected Items
```yaml
# BAD - these are auto-injected
menu:
- trigger: help
description: 'Show help'
- trigger: exit
description: 'Exit agent'
```
### Missing Prompt Reference
```yaml
# BAD - prompt id doesn't exist
menu:
- trigger: analyze
action: '#nonexistent-prompt'
description: 'Analysis'
```
### Hardcoded Paths
```yaml
# BAD - not portable
menu:
- trigger: run
workflow: '/absolute/path/to/workflow.yaml'
description: 'Run workflow'
```

View File

@ -1,363 +0,0 @@
# Expert Agent Architecture
Domain-specific agents with persistent memory, sidecar files, and restricted access patterns.
## When to Use
- Personal assistants (journal keeper, diary companion)
- Specialized domain experts (legal advisor, medical reference)
- Agents that need to remember past interactions
- Agents with restricted file system access (privacy/security)
- Long-term relationship agents that learn about users
## File Structure
```
{agent-name}/
├── {agent-name}.agent.yaml # Main agent definition
└── {agent-name}-sidecar/ # Supporting files
├── instructions.md # Private directives
├── memories.md # Persistent memory
├── knowledge/ # Domain-specific resources
│ └── README.md
└── [custom files] # Agent-specific resources
```
## YAML Structure
```yaml
agent:
metadata:
name: 'Persona Name'
title: 'Agent Title'
icon: 'emoji'
type: 'expert'
persona:
role: 'Domain Expert with specialized capability'
identity: |
Background and expertise in first-person voice.
{{#if user_preference}}
Customization based on install_config.
{{/if}}
communication_style: |
{{#if tone_style == "gentle"}}
Gentle and supportive communication...
{{/if}}
{{#if tone_style == "direct"}}
Direct and efficient communication...
{{/if}}
I reference past conversations naturally.
principles:
- Core belief about the domain
- How I handle user information
- My approach to memory and learning
critical_actions:
- 'Load COMPLETE file ./{agent-name}-sidecar/memories.md and remember all past insights'
- 'Load COMPLETE file ./{agent-name}-sidecar/instructions.md and follow ALL protocols'
- 'ONLY read/write files in ./{agent-name}-sidecar/ - this is our private space'
- 'Address user as {{greeting_name}}'
- 'Track patterns, themes, and important moments'
- 'Reference past interactions naturally to show continuity'
prompts:
- id: main-function
content: |
<instructions>
Guide user through the primary function.
{{#if tone_style == "gentle"}}
Use gentle, supportive approach.
{{/if}}
</instructions>
<process>
1. Understand context
2. Provide guidance
3. Record insights
</process>
- id: memory-recall
content: |
<instructions>
Access and share relevant memories.
</instructions>
Reference stored information naturally.
menu:
- trigger: action1
action: '#main-function'
description: 'Primary agent function'
- trigger: remember
action: 'Update ./{agent-name}-sidecar/memories.md with session insights'
description: 'Save what we discussed today'
- trigger: insight
action: 'Document breakthrough in ./{agent-name}-sidecar/breakthroughs.md'
description: 'Record a significant insight'
- multi: "[DF] Do Foo or start [CH] Chat with expert"
triggers:
- do-foo
- input: [DF] or fuzzy match on do foo
- action: '#main-action'
- data: what is being discussed or suggested with the command, along with custom party custom agents if specified
- type: action
- expert-chat:
- input: [CH] or fuzzy match validate agent
- action: agent responds as expert based on its persona to converse
- type: action
install_config:
compile_time_only: true
description: 'Personalize your expert agent'
questions:
- var: greeting_name
prompt: 'What should the agent call you?'
type: text
default: 'friend'
- var: tone_style
prompt: 'Preferred communication tone?'
type: choice
options:
- label: 'Gentle - Supportive and nurturing'
value: 'gentle'
- label: 'Direct - Clear and efficient'
value: 'direct'
default: 'gentle'
- var: user_preference
prompt: 'Enable personalized features?'
type: boolean
default: true
```
## Key Components
### Sidecar Files (CRITICAL)
Expert agents use companion files for persistence and domain knowledge:
**memories.md** - Persistent user context
```markdown
# Agent Memory Bank
## User Preferences
<!-- Learned from interactions -->
## Session History
<!-- Important moments and insights -->
## Personal Notes
<!-- Agent observations -->
```
**instructions.md** - Private directives
```markdown
# Agent Private Instructions
## Core Directives
- Maintain character consistency
- Domain boundaries: {specific domain}
- Access restrictions: Only sidecar folder
## Special Rules
<!-- Agent-specific protocols -->
```
**knowledge/** - Domain resources
```markdown
# Agent Knowledge Base
Add domain-specific documentation here.
```
### Critical Actions
**MANDATORY for expert agents** - These load sidecar files at activation:
```yaml
critical_actions:
- 'Load COMPLETE file ./{sidecar}/memories.md and remember all past insights'
- 'Load COMPLETE file ./{sidecar}/instructions.md and follow ALL protocols'
- 'ONLY read/write files in ./{sidecar}/ - this is our private space'
```
**Key patterns:**
- **COMPLETE file loading** - Forces full file read, not partial
- **Domain restrictions** - Limits file access for privacy/security
- **Memory integration** - Past context becomes part of current session
- **Protocol adherence** - Ensures consistent behavior
## What Gets Injected at Compile Time
Same as simple agents, PLUS:
1. **Critical actions become numbered activation steps**
```xml
<step n="4">Load COMPLETE file ./memories.md...</step>
<step n="5">Load COMPLETE file ./instructions.md...</step>
<step n="6">ONLY read/write files in ./...</step>
```
2. **Sidecar files copied during installation**
- Entire sidecar folder structure preserved
- Relative paths maintained
- Files ready for agent use
## Reference Example
See: [journal-keeper/](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/agents/expert-examples/journal-keeper)
Features demonstrated:
- Complete sidecar structure (memories, instructions, breakthroughs)
- Critical actions for loading persistent context
- Domain restrictions for privacy
- Pattern recognition and memory recall
- Handlebars-based personalization
- Menu actions that update sidecar files
## Installation
```bash
# Copy entire folder to your project
cp -r /path/to/journal-keeper/ _bmad/custom/agents/
# Install with personalization
bmad agent-install
```
The installer:
1. Detects expert agent (folder with .agent.yaml)
2. Prompts for personalization
3. Compiles agent YAML to XML-in-markdown
4. **Copies sidecar files to installation target**
5. Creates IDE slash commands
6. Saves source for reinstallation
## Memory Patterns
### Accumulative Memory
```yaml
menu:
- trigger: save
action: "Update ./sidecar/memories.md with today's session insights"
description: 'Save session to memory'
```
### Reference Memory
```yaml
prompts:
- id: recall
content: |
<instructions>
Reference memories.md naturally:
"Last week you mentioned..." or "I notice a pattern..."
</instructions>
```
### Structured Insights
```yaml
menu:
- trigger: insight
action: 'Document in ./sidecar/breakthroughs.md with date, context, significance'
description: 'Record meaningful insight'
```
## Domain Restriction Patterns
### Single Folder Access
```yaml
critical_actions:
- 'ONLY read/write files in ./sidecar/ - NO OTHER FOLDERS'
```
### User Space Access
```yaml
critical_actions:
- 'ONLY access files in {user-folder}/journals/ - private space'
```
### Read-Only Access
```yaml
critical_actions:
- 'Load knowledge from ./knowledge/ but NEVER modify'
- 'Write ONLY to ./sessions/'
```
## Best Practices
1. **Load sidecar files in critical_actions** - Must be explicit and MANDATORY
2. **Enforce domain restrictions** - Clear boundaries prevent scope creep=
3. **Design for memory growth** - Structure sidecar files for accumulation
4. **Reference past naturally** - Don't dump memory, weave it into conversation
5. **Separate concerns** - Memories, instructions, knowledge in distinct files
6. **Include privacy features** - Users trust expert agents with personal data
## Common Patterns
### Session Continuity
```yaml
communication_style: |
I reference past conversations naturally:
"Last time we discussed..." or "I've noticed over the weeks..."
```
### Pattern Recognition
```yaml
critical_actions:
- 'Track mood patterns, recurring themes, and breakthrough moments'
- 'Cross-reference current session with historical patterns'
```
### Adaptive Responses
```yaml
identity: |
I learn your preferences and adapt my approach over time.
{{#if track_preferences}}
I maintain notes about what works best for you.
{{/if}}
```
## Validation Checklist
- [ ] Valid YAML syntax
- [ ] Metadata includes `type: "expert"`
- [ ] critical_actions loads sidecar files explicitly
- [ ] critical_actions enforces domain restrictions
- [ ] Sidecar folder structure created and populated
- [ ] memories.md has clear section structure
- [ ] instructions.md contains core directives
- [ ] Menu actions reference _bmad/_memory correctly
- [ ] File paths use _bmad/_memory/[agentname]-sidecar/ to reference sidecar content
- [ ] Install config personalizes sidecar references
- [ ] Agent folder named consistently: `{agent-name}/`
- [ ] YAML file named: `{agent-name}.agent.yaml`
- [ ] Sidecar folder named: `{agent-name}-sidecar/`

View File

@ -1,55 +0,0 @@
# BMB Module Documentation
Reference documentation for building BMAD agents and workflows.
## Agent Architecture
Comprehensive guides for each agent type (choose based on use case):
- [Understanding Agent Types](./understanding-agent-types.md) - **START HERE** - Architecture vs capability, "The Same Agent, Three Ways"
- [Simple Agent Architecture](./simple-agent-architecture.md) - Self-contained, optimized, personality-driven
- [Expert Agent Architecture](./expert-agent-architecture.md) - Memory, sidecar files, domain restrictions
- Module Agent Architecture _(TODO)_ - Workflow integration, professional tools
## Agent Design Patterns
- [Agent Menu Patterns](./agent-menu-patterns.md) - Menu handlers, triggers, prompts, organization
- [Agent Compilation](./agent-compilation.md) - What compiler auto-injects (AVOID DUPLICATION)
## Reference Examples
Production-ready examples in [bmb/reference/agents/](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/agents):
**Simple Agents** ([simple-examples/](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/agents/simple-examples))
- [commit-poet.agent.yaml](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/src/modules/bmb/reference/agents/simple-examples/commit-poet.agent.yaml) - Commit message artisan with style customization
**Expert Agents** ([expert-examples/](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/agents/expert-examples))
- [journal-keeper/](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/agents/expert-examples/journal-keeper) - Personal journal companion with memory and pattern recognition
**Module Agents** ([module-examples/](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/agents/module-examples))
- [security-engineer.agent.yaml](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/src/modules/bmb/reference/agents/module-examples/security-engineer.agent.yaml) - BMM security specialist with threat modeling
- [trend-analyst.agent.yaml](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/src/modules/bmb/reference/agents/module-examples/trend-analyst.agent.yaml) - CIS trend intelligence expert
## Installation Guide
For installing standalone simple and expert agents, see:
- [Custom Agent Installation](/docs/modules/bmb-bmad-builder/custom-content-installation.md)
## Key Concepts
### YAML to XML Compilation
Agents are authored in YAML with Handlebars templating. The compiler auto-injects:
1. **Frontmatter** - Name and description from metadata
2. **Activation Block** - Steps, menu handlers, rules (YOU don't write this)
3. **Menu Enhancement** - `*help` and `*exit` commands added automatically
4. **Trigger Prefixing** - Your triggers auto-prefixed with `*`
**Critical:** See [Agent Compilation](./agent-compilation.md) to avoid duplicating auto-injected content.
Source: `tools/cli/lib/agent/compiler.js`

View File

@ -1,257 +0,0 @@
# Simple Agent Architecture
Self-contained agents with prompts, menus, and optional install-time customization.
## When to Use
- Single-purpose utilities (commit message generator, code formatter)
- Self-contained logic with no external dependencies
- Agents that benefit from user customization (style, tone, preferences)
- Quick-to-build standalone helpers
## YAML Structure
```yaml
agent:
metadata:
id: _bmad/agents/{agent-name}/{agent-name}.md
name: 'Persona Name'
title: 'Agent Title'
icon: 'emoji'
type: simple
persona:
role: |
First-person description of primary function (1-2 sentences)
identity: |
Background, experience, specializations in first-person (2-5 sentences)
{{#if custom_variable}}
Conditional identity text based on install_config
{{/if}}
communication_style: |
{{#if style_choice == "professional"}}
Professional and systematic approach...
{{/if}}
{{#if style_choice == "casual"}}
Friendly and approachable tone...
{{/if}}
principles:
- Core belief or methodology
- Another guiding principle
- Values that shape decisions
prompts:
- id: main-action
content: |
<instructions>
What this prompt does
</instructions>
<process>
1. Step one
{{#if detailed_mode}}
2. Additional detailed step
{{/if}}
3. Final step
</process>
- id: another-action
content: |
Another reusable prompt template
menu:
- trigger: inline
action: 'Direct inline prompt text'
description: 'Execute inline action'
- multi: "[DF] Do Foo or start [CH] Chat with expert"
triggers:
- do-foo
- input: [DF] or fuzzy match on do foo
- action: '#main-action'
- data: what is being discussed or suggested with the command, along with custom party custom agents if specified
- type: action
- expert-chat:
- input: [CH] or fuzzy match validate agent
- action: agent responds as expert based on its persona to converse
- type: action
install_config:
compile_time_only: true
description: 'Personalize your agent'
questions:
- var: style_choice
prompt: 'Preferred communication style?'
type: choice
options:
- label: 'Professional'
value: 'professional'
- label: 'Casual'
value: 'casual'
default: 'professional'
- var: detailed_mode
prompt: 'Enable detailed explanations?'
type: boolean
default: true
- var: custom_variable
prompt: 'Your custom text'
type: text
default: ''
```
## Key Components
### Metadata
- **id**: Final compiled path (`_bmad/agents/{name}/{name}.md` for standalone)
- **name**: Agent's persona name displayed to users
- **title**: Professional role/function
- **icon**: Single emoji for visual identification
- **type**: `simple` - identifies agent category
### Persona (First-Person Voice)
- **role**: Primary expertise in 1-2 sentences
- **identity**: Background and specializations (2-5 sentences)
- **communication_style**: HOW the agent interacts, including conditional variations
- **principles**: Array of core beliefs (start with action verbs)
### Prompts with IDs
Reusable prompt templates referenced by `#id`:
```yaml
prompts:
- id: analyze-code
content: |
<instructions>
Analyze the provided code for patterns
</instructions>
```
Menu items reference these:
```yaml
menu:
- trigger: analyze
action: '#analyze-code'
description: 'Analyze code patterns'
```
### Menu Actions
Two forms of action handlers:
1. **Prompt Reference**: `action: "#prompt-id"` - Executes prompt content
2. **Inline Instruction**: `action: "Direct text instruction"` - Executes text directly
### Install Config (Compile-Time Customization)
Questions asked during `bmad agent-install`:
**Question Types:**
- `choice` - Multiple choice selection
- `boolean` - Yes/no toggle
- `text` - Free-form text input
**Variables become available in Handlebars:**
```yaml
{{#if variable_name}}
Content when true
{{/if}}
{{#if variable_name == "value"}}
Content when equals value
{{/if}}
{{#unless variable_name}}
Content when false
{{/unless}}
```
## What Gets Injected at Compile Time
The `tools/cli/lib/agent/compiler.js` automatically adds:
1. **YAML Frontmatter**
```yaml
---
name: 'agent name'
description: 'Agent Title'
---
```
2. **Activation Block**
- Load persona step
- Load core config for {user_name}, {communication_language}
- Agent-specific critical_actions as numbered steps
- Menu display and input handling
- Menu handlers (action/workflow/exec/tmpl) based on usage
- Rules section
3. **Auto-Injected Menu Items**
- `*help` always first
- `*exit` always last
4. **Trigger Prefixing**
- Triggers without `*` get it added automatically
## Reference Example
See: [commit-poet.agent.yaml](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/src/modules/bmb/reference/agents/simple-examples/commit-poet.agent.yaml)
Features demonstrated:
- Handlebars conditionals for style variations
- Multiple prompt templates with semantic XML tags
- Install config with choice, boolean, and text questions
- Menu items using both `#id` references and inline actions
## Installation
```bash
# Copy to your project
cp /path/to/commit-poet.agent.yaml _bmad/custom/agents/
# Create custom.yaml and install
echo "code: my-agent
name: My Agent
default_selected: true" > custom.yaml
npx bmad-method install
# or: bmad install
```
The installer:
1. Prompts for personalization (name, preferences)
2. Processes Handlebars templates with your answers
3. Compiles YAML to XML-in-markdown
4. Creates IDE slash commands
5. Saves source for reinstallation
## Best Practices
1. **Use first-person voice** in all persona elements
2. **Keep prompts focused** - one clear purpose per prompt
3. **Leverage Handlebars** for user customization without code changes
4. **Provide sensible defaults** in install_config
5. **Use semantic XML tags** in prompt content for clarity
6. **Test all conditional paths** before distribution
## Validation Checklist
- [ ] Valid YAML syntax
- [ ] All metadata fields present (id, name, title, icon, type)
- [ ] Persona complete (role, identity, communication_style, principles)
- [ ] Prompts have unique IDs
- [ ] Install config questions have defaults
- [ ] File named `{agent-name}.agent.yaml`

View File

@ -1,184 +0,0 @@
# Understanding Agent Types: Architecture, Not Capability
**CRITICAL DISTINCTION:** Agent types define **architecture and integration**, NOT capability limits.
ALL agent types can:
- ✓ Write to {output_folder}, {project-root}, or anywhere on system
- ✓ Update artifacts and files
- ✓ Execute bash commands
- ✓ Use core variables (_bmad, {output_folder}, etc.)
- ✓ Have complex prompts and logic
- ✓ Invoke external tools
## What Actually Differs
| Feature | Simple | Expert | Module |
| ---------------------- | ------------- | -------------------- | ------------------ |
| **Self-contained** | ✓ All in YAML | Sidecar files | Sidecar optional |
| **Persistent memory** | ✗ Stateless | ✓ memories.md | ✓ If needed |
| **Knowledge base** | ✗ | ✓ sidecar/knowledge/ | Module/shared |
| **Domain restriction** | ✗ System-wide | ✓ Sidecar only | Optional |
| **Personal workflows** | ✗ | ✓ Sidecar workflows | ✗ |
| **Module workflows** | ✗ | ✗ | ✓ Shared workflows |
| **Team integration** | Solo utility | Personal assistant | Team member |
Expert agents CAN have personal workflows in sidecar if critical_actions loads workflow engine
## The Same Agent, Three Ways
**Scenario:** Code Generator Agent
### As Simple Agent (Architecture: Self-contained)
```yaml
agent:
metadata:
name: CodeGen
type: simple
prompts:
- id: generate
content: |
Ask user for spec details. Generate code.
Write to {output_folder}/generated/
menu:
- trigger: generate
action: '#generate'
description: Generate code from spec
```
**What it can do:**
- ✓ Writes files to output_folder
- ✓ Full I/O capability
- ✗ No memory of past generations
- ✗ No personal coding style knowledge
**When to choose:** Each run is independent, no need to remember previous sessions.
### As Expert Agent (Architecture: Personal sidecar)
```yaml
agent:
metadata:
name: CodeGen
type: expert
critical_actions:
- Load my coding standards from sidecar/knowledge/
- Load memories from sidecar/memories.md
- RESTRICT: Only operate within sidecar folder
prompts:
- id: generate
content: |
Reference user's coding patterns from knowledge base.
Remember past generations from memories.
Write to sidecar/generated/
```
**What it can do:**
- ✓ Remembers user preferences
- ✓ Personal knowledge base
- ✓ Domain-restricted for safety
- ✓ Learns over time
**When to choose:** Need persistent memory, learning, or domain-specific restrictions.
### As Module Agent (Architecture: Team integration)
```yaml
agent:
metadata:
name: CodeGen
module: bmm
menu:
- trigger: implement-story
workflow: '_bmad/bmm/workflows/dev-story/workflow.yaml'
description: Implement user story
- trigger: refactor
workflow: '_bmad/bmm/workflows/refactor/workflow.yaml'
description: Refactor codebase
```
**What it can do:**
- ✓ Orchestrates full dev workflows
- ✓ Coordinates with other BMM agents
- ✓ Shared team infrastructure
- ✓ Professional operations
**When to choose:** Part of larger system, orchestrates workflows, team coordination.
## Important: Any Agent Can Be Added to a Module
**CLARIFICATION:** The "Module Agent" type is about **design intent and ecosystem integration**, not just file location.
### The Reality
- **Any agent type** (Simple, Expert, Module) can be bundled with or added to a module
- A Simple agent COULD live in `_bmad/bmm/agents/`
- An Expert agent COULD be included in a module bundle
### What Makes a "Module Agent" Special
A **Module Agent** is specifically:
1. **Designed FOR** a particular module ecosystem (BMM, CIS, BMB, etc.)
2. **Uses or contributes** that module's workflows
3. **Included by default** in that module's bundle
4. **Coordinates with** other agents in that module
### Examples
**Simple Agent added to BMM:**
- Lives in `_bmad/bmm/agents/formatter.agent.yaml`
- Bundled with BMM for convenience
- But still stateless, self-contained
- NOT a "Module Agent" - just a Simple agent in a module
**Module Agent in BMM:**
- Lives in `_bmad/bmm/agents/tech-writer.agent.yaml`
- Orchestrates BMM documentation workflows
- Coordinates with other BMM agents (PM, Dev, Analyst)
- Included in default BMM bundle
- IS a "Module Agent" - designed for BMM ecosystem
**The distinction:** File location vs design intent and integration.
## Choosing Your Agent Type
### Choose Simple when:
- Single-purpose utility (no memory needed)
- Stateless operations (each run is independent)
- Self-contained logic (everything in YAML)
- No persistent context required
### Choose Expert when:
- Need to remember things across sessions
- Personal knowledge base (user preferences, domain data)
- Domain-specific expertise with restricted scope
- Learning/adapting over time
### Choose Module when:
- Designed FOR a specific module ecosystem (BMM, CIS, etc.)
- Uses or contributes that module's workflows
- Coordinates with other module agents
- Will be included in module's default bundle
- Part of professional team infrastructure
## The Golden Rule
**Choose based on state and integration needs, NOT on what the agent can DO.**
All three types are equally powerful. The difference is how they manage state, where they store data, and how they integrate with your system.

View File

@ -1,247 +0,0 @@
# BMB - BMad Builder Module
Specialized tools and workflows for creating, customizing, and extending BMad components including agents, workflows, and complete modules.
## Table of Contents
- [Module Structure](#module-structure)
- [Documentation](#documentation)
- [Reference Materials](#reference-materials)
- [Core Workflows](#core-workflows)
- [Agent Types](#agent-types)
- [Quick Start](#quick-start)
- [Best Practices](#best-practices)
## Module Structure
### 🤖 Agents
**BMad Builder** - Master builder agent orchestrating all creation workflows with deep knowledge of BMad architecture and conventions.
- Install Location: `_bmad/bmb/agents/bmad-builder.md`
### 📚 Documentation
- Comprehensive guides for agents, workflows, and modules
- Architecture patterns and best practices
### 🔍 Reference Materials
- Location: `../reference/`
- Working examples of custom stand alone agents and workflows
- Template patterns and implementation guides
## Documentation
### 📖 Agent Documentation
- **[Agent Index](./agents/index.md)** - Complete agent architecture guide
- **[Agent Types Guide](./agents/understanding-agent-types.md)** - Simple vs Expert vs Module agents
- **[Menu Patterns](./agents/agent-menu-patterns.md)** - YAML menu design and handler types
- **[Agent Compilation](./agents/agent-compilation.md)** - Auto-injection rules and compilation process
### 📋 Workflow Documentation
- **[Workflow Index](./workflows/index.md)** - Core workflow system overview
- **[Architecture Guide](./workflows/architecture.md)** - Step-file design and JIT loading
- **Template System** _(TODO)_ - Standard step file template
- **[Intent vs Prescriptive](./workflows/intent-vs-prescriptive-spectrum.md)** - Design philosophy
## Reference Materials
### 🤖 Agent Examples
- **[Simple Agent Example](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/src/modules/bmb/reference/agents/simple-examples/commit-poet.agent.yaml)** - Self-contained agent
- **[Expert Agent Example](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml)** - Agent with persistent memory
- **[Module Add On Agent Examples](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/src/modules/bmb/reference/agents/module-examples/security-engineer.agent.yaml)** - Integration patterns (BMM, CIS)
### 📋 Workflow Examples
- **[Meal Prep & Nutrition](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/src/modules/bmb/reference/workflows/meal-prep-nutrition)** - Complete step-file workflow demonstration
- **Template patterns** for document generation and state management
## Core Workflows
### Creation Workflows (Step-File Architecture)
**create-agent** _(TODO)_ - Build BMad agents
- 11 guided steps from brainstorming to celebration
- 18 reference data files with validation checklists
- Template-based agent generation
**create-workflow** _(TODO)_ - Design workflows
- 12 structured steps from init to review
- 9 template files for workflow creation
- Step-file architecture implementation
### Editing Workflows
**edit-agent** _(TODO)_ - Modify existing agents
- 5 steps: discovery → validation
- Intent-driven analysis and updates
- Best practice compliance
**edit-workflow** _(TODO)_ - Update workflows
- 5 steps: analyze → compliance check
- Structure maintenance and validation
- Template updates for consistency
### Quality Assurance
**workflow-compliance-check** _(TODO)_ - Validation
- 8 systematic validation steps
- Adversarial analysis approach
- Detailed compliance reporting
### Legacy Migration (Pending)
Workflows in `workflows-legacy/` are being migrated to step-file architecture:
- Module-specific workflows
- Historical implementations
- Conversion planning in progress
## Agent Types
BMB creates three agent architectures:
### Simple Agent
- **Self-contained**: All logic in single YAML file
- **Stateless**: No persistent memory across sessions
- **Purpose**: Single utilities and specialized tools
- **Example**: Commit poet, code formatter
### Expert Agent
- **Persistent Memory**: Maintains knowledge across sessions
- **Sidecar Resources**: External files and data storage
- **Domain-specific**: Focuses on particular knowledge areas
- **Example**: Journal keeper, domain consultant
### Module Agent
- **Team Integration**: Orchestrates within specific modules
- **Workflow Coordination**: Manages complex processes
- **Professional Infrastructure**: Enterprise-grade capabilities
- **Examples**: BMM project manager, CIS innovation strategist
## Quick Start
### Using BMad Builder Agent
1. **Load BMad Builder agent** in your IDE:
```
/bmad:bmb:agents:bmad-builder
```
2. **Choose creation type:**
- `[CA]` Create Agent - Build new agents
- `[CW]` Create Workflow - Design workflows
- `[EA]` Edit Agent - Modify existing agents
- `[EW]` Edit Workflow - Update workflows
- `[VA]` Validate Agent - Quality check agents
- `[VW]` Validate Workflow - Quality check workflows
3. **Follow interactive prompts** for step-by-step guidance
### Example: Creating an Agent
```
User: I need a code review agent
Builder: [CA] Create Agent
[11-step guided process]
Step 1: Brainstorm agent concept
Step 2: Define persona and role
Step 3: Design command structure
...
Step 11: Celebrate and deploy
```
### Direct Workflow Execution
Workflows can also be run directly without the agent interface:
```yaml
# Execute specific workflow steps
workflow: ./workflows/create-agent/workflow.yaml
```
## Use Cases
### Custom Development Teams
Build specialized agents for:
- Domain expertise (legal, medical, finance)
- Company processes
- Tool integrations
- Automation tasks
### Workflow Extensions
Create workflows for:
- Compliance requirements
- Quality gates
- Deployment pipelines
- Custom methodologies
### Complete Solutions
Package modules for:
- Industry verticals
- Technology stacks
- Business processes
- Educational frameworks
## Architecture Principles
### Step-File Workflow Design
- **Micro-file Approach**: Each step is self-contained
- **Just-In-Time Loading**: Only current step in memory
- **Sequential Enforcement**: No skipping steps allowed
- **State Tracking**: Progress documented in frontmatter
- **Append-Only Building**: Documents grow through execution
### Intent vs Prescriptive Spectrum
- **Creative Workflows**: High user agency, AI as facilitator
- **Structured Workflows**: Clear process, AI as guide
- **Prescriptive Workflows**: Strict compliance, AI as validator
## Best Practices
1. **Study Reference Materials** - Review docs/ and reference/ examples
2. **Choose Right Agent Type** - Simple vs Expert vs Module based on needs
3. **Follow Step-File Patterns** - Use established templates and structures
4. **Document Thoroughly** - Clear instructions and frontmatter metadata
5. **Validate Continuously** - Use compliance workflows for quality
6. **Maintain Consistency** - Follow YAML patterns and naming conventions
## Integration
BMB components integrate with:
- **BMad Core** - Framework foundation and agent compilation
- **BMM** - Development workflows and project management
- **CIS** - Creative innovation and strategic workflows
- **Custom Modules** - Domain-specific solutions
## Getting Help
- **Documentation**: Check `docs/` for comprehensive guides
- **Reference Materials**: See `reference/` for working examples
- **Validation**: Use `workflow-compliance-check` for quality assurance
- **Templates**: Leverage workflow templates for consistent patterns
---
BMB provides a complete toolkit for extending BMad Method with disciplined, systematic approaches to agent and workflow development while maintaining framework consistency and power.

View File

@ -1,220 +0,0 @@
# Standalone Workflow Builder Architecture
This document describes the architecture of the standalone workflow builder system - a pure markdown approach to creating structured workflows.
## Core Architecture Principles
### 1. Micro-File Design
Each workflow consists of multiple focused, self-contained files:
```
workflow-folder/
├── workflow.md # Main workflow configuration
├── steps/ # Step instruction files (focused, self-contained)
│ ├── step-01-init.md
│ ├── step-02-profile.md
│ └── step-N-[name].md
├── templates/ # Content templates
│ ├── profile-section.md
│ └── [other-sections].md
└── data/ # Optional data files
└── [data-files].csv/.json
```
### 2. Just-In-Time (JIT) Loading
- **Single File in Memory**: Only the current step file is loaded
- **No Future Peeking**: Step files must not reference future steps
- **Sequential Processing**: Steps execute in strict order
- **On-Demand Loading**: Templates load only when needed
### 3. State Management
- **Frontmatter Tracking**: Workflow state stored in output document frontmatter
- **Progress Array**: `stepsCompleted` tracks completed steps
- **Last Step Marker**: `lastStep` indicates where to resume
- **Append-Only Building**: Documents grow by appending content
### 4. Execution Model
```
1. Load workflow.md → Read configuration
2. Execute step-01-init.md → Initialize or detect continuation
3. For each step:
a. Load step file completely
b. Execute instructions sequentially
c. Wait for user input at menu points
d. Only proceed with 'C' (Continue)
e. Update document/frontmatter
f. Load next step
```
## Key Components
### Workflow File (workflow.md)
- **Purpose**: Entry point and configuration
- **Content**: Role definition, goal, architecture rules
- **Action**: Points to step-01-init.md
### Step Files (step-NN-[name].md)
- **Size**: Focused and concise (typically 5-10KB)
- **Structure**: Frontmatter + sequential instructions
- **Features**: Self-contained rules, menu handling, state updates
### Frontmatter Variables
Standard variables in step files:
```yaml
workflow_path: '{project-root}/_bmad/bmb/reference/workflows/[workflow-name]'
thisStepFile: '{workflow_path}/steps/step-[N]-[name].md'
nextStepFile: '{workflow_path}/steps/step-[N+1]-[name].md'
workflowFile: '{workflow_path}/workflow.md'
outputFile: '{output_folder}/[output-name]-{project_name}.md'
```
## Execution Flow
### Fresh Workflow
```
workflow.md
step-01-init.md (creates document)
step-02-[name].md
step-03-[name].md
...
step-N-[final].md (completes workflow)
```
### Continuation Workflow
```
workflow.md
step-01-init.md (detects existing document)
step-01b-continue.md (analyzes state)
step-[appropriate-next].md
```
## Menu System
### Standard Menu Pattern
```
Display: **Select an Option:** [A] [Action] [P] Party Mode [C] Continue
#### Menu Handling Logic:
- IF A: Execute {advancedElicitationTask}
- IF P: Execute {partyModeWorkflow}
- IF C: Save content, update frontmatter, load next step
```
### Menu Rules
- **Halt Required**: Always wait for user input
- **Continue Only**: Only proceed with 'C' selection
- **State Persistence**: Save before loading next step
- **Loop Back**: Return to menu after other actions
## Collaborative Dialogue Model
### Not Command-Response
- **Facilitator Role**: AI guides, user decides
- **Equal Partnership**: Both parties contribute
- **No Assumptions**: Don't assume user wants next step
- **Explicit Consent**: Always ask for input
### Example Pattern
```
AI: "Tell me about your dietary preferences."
User: [provides information]
AI: "Thank you. Now let's discuss your cooking habits."
[Continue conversation]
AI: **Menu Options**
```
## CSV Intelligence (Optional)
### Data-Driven Behavior
- Configuration in CSV files
- Dynamic menu options
- Variable substitution
- Conditional logic
### Example Structure
```csv
variable,type,value,description
cooking_frequency,choice,"daily|weekly|occasionally","How often user cooks"
meal_type,multi,"breakfast|lunch|dinner|snacks","Types of meals to plan"
```
## Best Practices
### File Size Limits
- **Step Files**: Keep focused and reasonably sized (5-10KB typical)
- **Templates**: Keep focused and reusable
- **Workflow File**: Keep lean, no implementation details
### Sequential Enforcement
- **Numbered Steps**: Use sequential numbering (1, 2, 3...)
- **No Skipping**: Each step must complete
- **State Updates**: Mark completion in frontmatter
### Error Prevention
- **Path Variables**: Use frontmatter variables, never hardcode
- **Complete Loading**: Always read entire file before execution
- **Menu Halts**: Never proceed without 'C' selection
## Migration from XML
### Advantages
- **No Dependencies**: Pure markdown, no XML parsing
- **Human Readable**: Files are self-documenting
- **Git Friendly**: Clean diffs and merges
- **Flexible**: Easier to modify and extend
### Key Differences
| XML Workflows | Standalone Workflows |
| ----------------- | ----------------------- |
| Single large file | Multiple micro-files |
| Complex structure | Simple sequential steps |
| Parser required | Any markdown viewer |
| Rigid format | Flexible organization |
## Implementation Notes
### Critical Rules
- **NEVER** load multiple step files
- **ALWAYS** read complete step file first
- **NEVER** skip steps or optimize
- **ALWAYS** update frontmatter of the output file when a step is complete
- **NEVER** proceed without user consent
### Success Metrics
- Documents created correctly
- All steps completed sequentially
- User satisfied with collaborative process
- Clean, maintainable file structure
This architecture ensures disciplined, predictable workflow execution while maintaining flexibility for different use cases.

View File

@ -1,206 +0,0 @@
# CSV Data File Standards for BMAD Workflows
## Purpose and Usage
CSV data files in BMAD workflows serve specific purposes for different workflow types:
**For Agents:** Provide structured data that agents need to reference but cannot realistically generate (such as specific configurations, domain-specific data, or structured knowledge bases).
**For Expert Agents:** Supply specialized knowledge bases, reference data, or persistent information that the expert agent needs to access consistently across sessions.
**For Workflows:** Include reference data, configuration parameters, or structured inputs that guide workflow execution and decision-making.
**Key Principle:** CSV files should contain data that is essential, structured, and not easily generated by LLMs during execution.
## Intent-Based Design Principle
**Core Philosophy:** The closer workflows stay to **intent** rather than **prescriptive** instructions, the more creative and adaptive the LLM experience becomes.
**CSV Enables Intent-Based Design:**
- **Instead of:** Hardcoded scripts with exact phrases LLM must say
- **CSV Provides:** Clear goals and patterns that LLM adapts creatively to context
- **Result:** Natural, contextual conversations rather than rigid scripts
**Example - Advanced Elicitation:**
- **Prescriptive Alternative:** 50 separate files with exact conversation scripts
- **Intent-Based Reality:** One CSV row with method goal + pattern → LLM adapts to user
- **Benefit:** Same method works differently for different users while maintaining essence
**Intent vs Prescriptive Spectrum:**
- **Highly Prescriptive:** "Say exactly: 'Based on my analysis, I recommend...'"
- **Balanced Intent:** "Help the user understand the implications using your professional judgment"
- **CSV Goal:** Provide just enough guidance to enable creative, context-aware execution
## Primary Use Cases
### 1. Knowledge Base Indexing (Document Lookup Optimization)
**Problem:** Large knowledge bases with hundreds of documents cause context blowup and missed details when LLMs try to process them all.
**CSV Solution:** Create a knowledge base index with:
- **Column 1:** Keywords and topics
- **Column 2:** Document file path/location
- **Column 3:** Section or line number where relevant content starts
- **Column 4:** Content type or summary (optional)
**Result:** Transform from context-blowing document loads to surgical precision lookups, creating agents with near-infinite knowledge bases while maintaining optimal context usage.
### 2. Workflow Sequence Optimization
**Problem:** Complex workflows (e.g., game development) with hundreds of potential steps for different scenarios become unwieldy and context-heavy.
**CSV Solution:** Create a workflow routing table:
- **Column 1:** Scenario type (e.g., "2D Platformer", "RPG", "Puzzle Game")
- **Column 2:** Required step sequence (e.g., "step-01,step-03,step-07,step-12")
- **Column 3:** Document sections to include
- **Column 4:** Specialized parameters or configurations
**Result:** Step 1 determines user needs, finds closest match in CSV, confirms with user, then follows optimized sequence - truly optimal for context usage.
### 3. Method Registry (Dynamic Technique Selection)
**Problem:** Tasks need to select optimal techniques from dozens of options based on context, without hardcoding selection logic.
**CSV Solution:** Create a method registry with:
- **Column 1:** Category (collaboration, advanced, technical, creative, etc.)
- **Column 2:** Method name and rich description
- **Column 3:** Execution pattern or flow guide (e.g., "analysis → insights → action")
- **Column 4:** Complexity level or use case indicators
**Example:** Advanced Elicitation task analyzes content context, selects 5 best-matched methods from 50 options, then executes dynamically using CSV descriptions.
**Result:** Smart, context-aware technique selection without hardcoded logic - infinitely extensible method libraries.
### 4. Configuration Management
**Problem:** Complex systems with many configuration options that vary by use case.
**CSV Solution:** Configuration lookup tables mapping scenarios to specific parameter sets.
## What NOT to Include in CSV Files
**Avoid Web-Searchable Data:** Do not include information that LLMs can readily access through web search or that exists in their training data, such as:
- Common programming syntax or standard library functions
- General knowledge about widely used technologies
- Historical facts or commonly available information
- Basic terminology or standard definitions
**Include Specialized Data:** Focus on data that is:
- Specific to your project or domain
- Not readily available through web search
- Essential for consistent workflow execution
- Too voluminous for LLM context windows
## CSV Data File Standards
### 1. Purpose Validation
- **Essential Data Only:** CSV must contain data that cannot be reasonably generated by LLMs
- **Domain Specific:** Data should be specific to the workflow's domain or purpose
- **Consistent Usage:** All columns and data must be referenced and used somewhere in the workflow
- **No Redundancy:** Avoid data that duplicates functionality already available to LLMs
### 2. Structural Standards
- **Valid CSV Format:** Proper comma-separated values with quoted fields where needed
- **Consistent Columns:** All rows must have the same number of columns
- **No Missing Data:** Empty values should be explicitly marked (e.g., "", "N/A", or NULL)
- **Header Row:** First row must contain clear, descriptive column headers
- **Proper Encoding:** UTF-8 encoding required for special characters
### 3. Content Standards
- **No LLM-Generated Content:** Avoid data that LLMs can easily generate (e.g., generic phrases, common knowledge)
- **Specific and Concrete:** Use specific values rather than vague descriptions
- **Verifiable Data:** Data should be factual and verifiable when possible
- **Consistent Formatting:** Date formats, numbers, and text should follow consistent patterns
### 4. Column Standards
- **Clear Headers:** Column names must be descriptive and self-explanatory
- **Consistent Data Types:** Each column should contain consistent data types
- **No Unused Columns:** Every column must be referenced and used in the workflow
- **Appropriate Width:** Columns should be reasonably narrow and focused
### 5. File Size Standards
- **Efficient Structure:** CSV files should be as small as possible while maintaining functionality
- **No Redundant Rows:** Avoid duplicate or nearly identical rows
- **Compressed Data:** Use efficient data representation (e.g., codes instead of full descriptions)
- **Maximum Size:** Individual CSV files should not exceed 1MB unless absolutely necessary
### 6. Documentation Standards
- **Documentation Required:** Each CSV file should have documentation explaining its purpose
- **Column Descriptions:** Each column must be documented with its usage and format
- **Data Sources:** Source of data should be documented when applicable
- **Update Procedures:** Process for updating CSV data should be documented
### 7. Integration Standards
- **File References:** CSV files must be properly referenced in workflow configuration
- **Access Patterns:** Workflow must clearly define how and when CSV data is accessed
- **Error Handling:** Workflow must handle cases where CSV files are missing or corrupted
- **Version Control:** CSV files should be versioned when changes occur
### 8. Quality Assurance
- **Data Validation:** CSV data should be validated for correctness and completeness
- **Format Consistency:** Consistent formatting across all rows and columns
- **No Ambiguity:** Data entries should be clear and unambiguous
- **Regular Review:** CSV content should be reviewed periodically for relevance
### 9. Security Considerations
- **No Sensitive Data:** Avoid including sensitive, personal, or confidential information
- **Data Sanitization:** CSV data should be sanitized for security issues
- **Access Control:** Access to CSV files should be controlled when necessary
- **Audit Trail:** Changes to CSV files should be logged when appropriate
### 10. Performance Standards
- **Fast Loading:** CSV files must load quickly within workflow execution
- **Memory Efficient:** Structure should minimize memory usage during processing
- **Optimized Queries:** If data lookup is needed, optimize for efficient access
- **Caching Strategy**: Consider whether data can be cached for performance
## Implementation Guidelines
When creating CSV data files for BMAD workflows:
1. **Start with Purpose:** Clearly define why CSV is needed instead of LLM generation
2. **Design Structure:** Plan columns and data types before creating the file
3. **Test Integration:** Ensure workflow properly accesses and uses CSV data
4. **Document Thoroughly:** Provide complete documentation for future maintenance
5. **Validate Quality:** Check data quality, format consistency, and integration
6. **Monitor Usage:** Track how CSV data is used and optimize as needed
## Common Anti-Patterns to Avoid
- **Generic Phrases:** CSV files containing common phrases or LLM-generated content
- **Redundant Data:** Duplicating information easily available to LLMs
- **Overly Complex:** Unnecessarily complex CSV structures when simple data suffices
- **Unused Columns:** Columns that are defined but never referenced in workflows
- **Poor Formatting:** Inconsistent data formats, missing values, or structural issues
- **No Documentation:** CSV files without clear purpose or usage documentation
## Validation Checklist
For each CSV file, verify:
- [ ] Purpose is essential and cannot be replaced by LLM generation
- [ ] All columns are used in the workflow
- [ ] Data is properly formatted and consistent
- [ ] File is efficiently sized and structured
- [ ] Documentation is complete and clear
- [ ] Integration with workflow is tested and working
- [ ] Security considerations are addressed
- [ ] Performance requirements are met

View File

@ -1,45 +0,0 @@
# BMAD Workflows Documentation
Welcome to the BMAD Workflows documentation - a modern system for creating structured, collaborative workflows optimized for AI execution.
## 📚 Core Documentation
### [Terms](./terms.md)
Essential terminology and concepts for understanding BMAD workflows.
### [Architecture & Execution Model](./architecture.md)
The micro-file architecture, JIT step loading, state management, and collaboration patterns that make BMAD workflows optimal for AI execution.
### Writing Workflows _(TODO)_
Complete guide to creating workflows: workflow.md control files, step files, CSV data integration, and frontmatter design.
### Step Files & Dialog Patterns _(TODO)_
Crafting effective step files: structure, execution rules, prescriptive vs intent-based dialog, and validation patterns.
### Templates & Content Generation _(TODO)_
Creating append-only templates, frontmatter design, conditional content, and dynamic content generation strategies.
### Workflow Patterns _(TODO)_
Common workflow types: linear, conditional, protocol integration, multi-agent workflows, and real-world examples.
### Migration Guide _(TODO)_
Converting from XML-heavy workflows to the new pure markdown format, with before/after examples and checklist.
### Best Practices & Reference _(TODO)_
Critical rules, anti-patterns, performance optimization, debugging, quick reference templates, and troubleshooting.
## 🚀 Quick Start
BMAD workflows are pure markdown, self-contained systems that guide collaborative processes through structured step files where the AI acts as a facilitator working with humans.
---
_This documentation covers the next generation of BMAD workflows - designed from the ground up for optimal AI-human collaboration._

View File

@ -1,220 +0,0 @@
# Intent vs Prescriptive Spectrum
## Core Philosophy
The **Intent vs Prescriptive Spectrum** is a fundamental design principle for BMAD workflows and agents. It determines how much creative freedom an LLM has versus how strictly it must follow predefined instructions.
**Key Principle:** The closer workflows stay to **intent**, the more creative and adaptive the LLM experience becomes. The closer they stay to **prescriptive**, the more consistent and controlled the output becomes.
## Understanding the Spectrum
### **Intent-Based Design** (Creative Freedom)
**Focus**: What goal should be achieved
**Approach**: Trust the LLM to determine the best method
**Result**: Creative, adaptive, context-aware interactions
**Best For**: Creative exploration, problem-solving, personalized experiences
### **Prescriptive Design** (Structured Control)
**Focus**: Exactly what to say and do
**Approach**: Detailed scripts and specific instructions
**Result**: Consistent, predictable, controlled outcomes
**Best For**: Compliance, safety-critical, standardized processes
## Spectrum Examples
### **Highly Intent-Based** (Creative End)
```markdown
**Example:** Story Exploration Workflow
**Instruction:** "Help the user explore their dream imagery to craft compelling narratives, use multiple turns of conversation to really push users to develop their ideas, giving them hints and ideas also to prime them effectively to bring out their creativity"
**LLM Freedom:** Adapts questions, explores tangents, follows creative inspiration
**Outcome:** Unique, personalized storytelling experiences
```
### **Balanced Middle** (Professional Services)
```markdown
**Example:** Business Strategy Workflow
**Instruction:** "Guide the user through SWOT analysis using your business expertise. when complete tell them 'here is your final report {report output}'
**LLM Freedom:** Professional judgment in analysis, structured but adaptive approach
**Outcome:** Professional, consistent yet tailored business insights
```
### **Highly Prescriptive** (Control End)
```markdown
**Example:** Medical Intake Form
**Instruction:** "Ask exactly: 'Do you currently experience any of the following symptoms: fever, cough, fatigue?' Wait for response, then ask exactly: 'When did these symptoms begin?'"
**LLM Freedom:** Minimal - must follow exact script for medical compliance
**Outcome:** Consistent, medically compliant patient data collection
```
## Spectrum Positioning Guide
### **Choose Intent-Based When:**
- ✅ Creative exploration and innovation are goals
- ✅ Personalization and adaptation to user context are important
- ✅ Human-like conversation and natural interaction are desired
- ✅ Problem-solving requires flexible thinking
- ✅ User experience and engagement are priorities
**Examples:**
- Creative brainstorming sessions
- Personal coaching or mentoring
- Exploratory research and discovery
- Artistic content creation
- Collaborative problem-solving
### **Choose Prescriptive When:**
- ✅ Compliance with regulations or standards is required
- ✅ Safety or legal considerations are paramount
- ✅ Exact consistency across multiple sessions is essential
- ✅ Training new users on specific procedures
- ✅ Data collection must follow specific protocols
**Examples:**
- Medical intake and symptom assessment
- Legal compliance questionnaires
- Safety checklists and procedures
- Standardized testing protocols
- Regulatory data collection
### **Choose Balanced When:**
- ✅ Professional expertise is required but adaptation is beneficial
- ✅ Consistent quality with flexible application is needed
- ✅ Domain expertise should guide but not constrain interactions
- ✅ User trust and professional credibility are important
- ✅ Complex processes require both structure and judgment
**Examples:**
- Business consulting and advisory
- Technical support and troubleshooting
- Educational tutoring and instruction
- Financial planning and advice
- Project management facilitation
## Implementation Guidelines
### **For Workflow Designers:**
1. **Early Spectrum Decision**: Determine spectrum position during initial design
2. **User Education**: Explain spectrum choice and its implications to users
3. **Consistent Application**: Maintain chosen spectrum throughout workflow
4. **Context Awareness**: Adjust spectrum based on specific use case requirements
### **For Workflow Implementation:**
**Intent-Based Patterns:**
```markdown
- "Help the user understand..." (vs "Explain that...")
- "Guide the user through..." (vs "Follow these steps...")
- "Use your professional judgment to..." (vs "Apply this specific method...")
- "Adapt your approach based on..." (vs "Regardless of situation, always...")
```
**Prescriptive Patterns:**
```markdown
- "Say exactly: '...'" (vs "Communicate that...")
- "Follow this script precisely: ..." (vs "Cover these points...")
- "Do not deviate from: ..." (vs "Consider these options...")
- "Must ask in this order: ..." (vs "Ensure you cover...")
```
### **For Agents:**
**Intent-Based Agent Design:**
```yaml
persona:
communication_style: 'Adaptive professional who adjusts approach based on user context'
guiding_principles:
- 'Use creative problem-solving within professional boundaries'
- 'Personalize approach while maintaining expertise'
- 'Adapt conversation flow to user needs'
```
**Prescriptive Agent Design:**
```yaml
persona:
communication_style: 'Follows standardized protocols exactly'
governing_rules:
- 'Must use approved scripts without deviation'
- 'Follow sequence precisely as defined'
- 'No adaptation of prescribed procedures'
```
## Spectrum Calibration Questions
**Ask these during workflow design:**
1. **Consequence of Variation**: What happens if the LLM says something different?
2. **User Expectation**: Does the user expect consistency or creativity?
3. **Risk Level**: What are the risks of creative deviation vs. rigid adherence?
4. **Expertise Required**: Is domain expertise application more important than consistency?
5. **Regulatory Requirements**: Are there external compliance requirements?
## Best Practices
### **DO:**
- ✅ Make conscious spectrum decisions during design
- ✅ Explain spectrum choices to users
- ✅ Use intent-based design for creative and adaptive experiences
- ✅ Use prescriptive design for compliance and consistency requirements
- ✅ Consider balanced approaches for professional services
- ✅ Document spectrum rationale for future reference
### **DON'T:**
- ❌ Mix spectrum approaches inconsistently within workflows
- ❌ Default to prescriptive when intent-based would be more effective
- ❌ Use creative freedom when compliance is required
- ❌ Forget to consider user expectations and experience
- ❌ Overlook risk assessment in spectrum selection
## Quality Assurance
**When validating workflows:**
- Check if spectrum position is intentional and consistent
- Verify prescriptive elements are necessary and justified
- Ensure intent-based elements have sufficient guidance
- Confirm spectrum alignment with user needs and expectations
- Validate that risks are appropriately managed
## Examples in Practice
### **Medical Intake (Highly Prescriptive):**
- **Why**: Patient safety, regulatory compliance, consistent data collection
- **Implementation**: Exact questions, specific order, no deviation permitted
- **Benefit**: Reliable, medically compliant patient information
### **Creative Writing Workshop (Highly Intent):**
- **Why**: Creative exploration, personalized inspiration, artistic expression
- **Implementation**: Goal guidance, creative freedom, adaptive prompts
- **Benefit**: Unique, personalized creative works
### **Business Strategy (Balanced):**
- **Why**: Professional expertise with adaptive application
- **Implementation**: Structured framework with professional judgment
- **Benefit**: Professional, consistent yet tailored business insights
## Conclusion
The Intent vs Prescriptive Spectrum is not about good vs. bad - it's about **appropriate design choices**. The best workflows make conscious decisions about where they fall on this spectrum based on their specific requirements, user needs, and risk considerations.
**Key Success Factor**: Choose your spectrum position intentionally, implement it consistently, and align it with your specific use case requirements.

View File

@ -1,139 +0,0 @@
---
name: "step-{{stepNumber}}-{{stepName}}"
description: "{{stepDescription}}"
# Path Definitions
workflow_path: "{project-root}/_bmad/{{targetModule}}/workflows/{{workflowName}}"
# File References
thisStepFile: "{workflow_path}/steps/step-{{stepNumber}}-{{stepName}}.md"
{{#hasNextStep}}
nextStepFile: "{workflow_path}/steps/step-{{nextStepNumber}}-{{nextStepName}}.md"
{{/hasNextStep}}
workflowFile: "{workflow_path}/workflow.md"
{{#hasOutput}}
outputFile: "{output_folder}/{{outputFileName}}-{project_name}.md"
{{/hasOutput}}
# Task References (list only if used in THIS step file instance and only the ones used, there might be others)
advancedElicitationTask: "{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml"
partyModeWorkflow: "{project-root}/_bmad/core/workflows/party-mode/workflow.md"
{{#hasTemplates}}
# Template References
{{#templates}}
{{name}}: "{workflow_path}/templates/{{file}}"
{{/templates}}
{{/hasTemplates}}
---
# Step {{stepNumber}}: {{stepTitle}}
## STEP GOAL:
{{stepGoal}}
## MANDATORY EXECUTION RULES (READ FIRST):
### Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
### Role Reinforcement:
- ✅ You are a {{aiRole}}
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
- ✅ We engage in collaborative dialogue, not command-response
- ✅ You bring {{aiExpertise}}, user brings {{userExpertise}}
- ✅ Maintain collaborative {{collaborationStyle}} tone throughout
### Step-Specific Rules:
- 🎯 Focus only on {{stepFocus}}
- 🚫 FORBIDDEN to {{forbiddenAction}}
- 💬 Approach: {{stepApproach}}
- 📋 {{additionalRule}}
## EXECUTION PROTOCOLS:
{{#executionProtocols}}
- 🎯 {{.}}
{{/executionProtocols}}
## CONTEXT BOUNDARIES:
- Available context: {{availableContext}}
- Focus: {{contextFocus}}
- Limits: {{contextLimits}}
- Dependencies: {{contextDependencies}}
## SEQUENCE OF INSTRUCTIONS (Do not deviate, skip, or optimize)
{{#instructions}}
### {{number}}. {{title}}
{{content}}
{{#hasContentToAppend}}
#### Content to Append (if applicable):
```markdown
{{contentToAppend}}
```
{{/hasContentToAppend}}
{{/instructions}}
{{#hasMenu}}
### {{menuNumber}}. Present MENU OPTIONS
Display: **{{menuDisplay}}**
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed to next step when user selects 'C'
- After other menu items execution, return to this menu
- User can chat or ask questions - always respond and then end with display again of the menu options
- Use menu handling logic section below
#### Menu Handling Logic:
{{#menuOptions}}
- IF {{key}}: {{action}}
{{/menuOptions}}
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#{{menuNumber}}-present-menu-options)
{{/hasMenu}}
## CRITICAL STEP COMPLETION NOTE
{{completionNote}}
---
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
### ✅ SUCCESS:
{{#successCriteria}}
- {{.}}
{{/successCriteria}}
### ❌ SYSTEM FAILURE:
{{#failureModes}}
- {{.}}
{{/failureModes}}
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.

View File

@ -1,58 +0,0 @@
---
name: { { workflowDisplayName } }
description: { { workflowDescription } }
web_bundle: { { webBundleFlag } }
---
# {{workflowDisplayName}}
**Goal:** {{workflowGoal}}
**Your Role:** In addition to your name, communication_style, and persona, you are also a {{aiRole}} collaborating with {{userType}}. This is a partnership, not a client-vendor relationship. You bring {{aiExpertise}}, while the user brings {{userExpertise}}. Work together as equals.
---
## WORKFLOW ARCHITECTURE
This uses **step-file architecture** for disciplined execution:
### Core Principles
- **Micro-file Design**: Each step is a self contained instruction file that is a part of an overall workflow that must be followed exactly
- **Just-In-Time Loading**: Only the current step file is in memory - never load future step files until told to do so
- **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed
- **State Tracking**: Document progress in output file frontmatter using `stepsCompleted` array when a workflow produces a document
- **Append-Only Building**: Build documents by appending content as directed to the output file
### Step Processing Rules
1. **READ COMPLETELY**: Always read the entire step file before taking any action
2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate
3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection
4. **CHECK CONTINUATION**: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue)
5. **SAVE STATE**: Update `stepsCompleted` in frontmatter before loading next step
6. **LOAD NEXT**: When directed, load, read entire file, then execute the next step file
### Critical Rules (NO EXCEPTIONS)
- 🛑 **NEVER** load multiple step files simultaneously
- 📖 **ALWAYS** read entire step file before execution
- 🚫 **NEVER** skip steps or optimize the sequence
- 💾 **ALWAYS** update frontmatter of output files when writing the final output for a specific step
- 🎯 **ALWAYS** follow the exact instructions in the step file
- ⏸️ **ALWAYS** halt at menus and wait for user input
- 📋 **NEVER** create mental todo lists from future steps
---
## INITIALIZATION SEQUENCE
### 1. Configuration Loading
Load and read full config from {project-root}/_bmad/{{targetModule}}/config.yaml and resolve:
- `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`
### 2. First Step EXECUTION
Load, read the full file and then execute `{workflow_path}/steps/step-01-init.md` to begin the workflow.

View File

@ -1,97 +0,0 @@
# BMAD Workflow Terms
## Core Components
### BMAD Workflow
A facilitated, guided process where the AI acts as a facilitator working collaboratively with a human. Workflows can serve any purpose - from document creation to brainstorming, technical implementation, or decision-making. The human may be a collaborative partner, beginner seeking guidance, or someone who wants the AI to execute specific tasks. Each workflow is self-contained and follows a disciplined execution model.
### workflow.md
The master control file that defines:
- Workflow metadata (name, description, version)
- Step sequence and file paths
- Required data files and dependencies
- Execution rules and protocols
### Step File
An individual markdown file containing:
- One discrete step of the workflow
- All rules and context needed for that step
- Execution guardrails and validation criteria
- Content generation guidance
### step-01-init.md
The first step file that:
- Initializes the workflow
- Sets up document frontmatter
- Establishes initial context
- Defines workflow parameters
### step-01b-continue.md
A continuation step file that:
- Resumes a workflow that was paused
- Reloads context from saved state
- Validates current document state
- Continues from the last completed step
### CSV Data Files
Structured data files that provide:
- Domain-specific knowledge and complexity mappings
- Project-type-specific requirements
- Decision matrices and lookup tables
- Dynamic workflow behavior based on input
## Dialog Styles
### Prescriptive Dialog
Structured interaction with:
- Exact questions and specific options
- Consistent format across all executions
- Finite, well-defined choices
- High reliability and repeatability
### Intent-Based Dialog
Adaptive interaction with:
- Goals and principles instead of scripts
- Open-ended exploration and discovery
- Context-aware question adaptation
- Flexible, conversational flow
### Template
A markdown file that:
- Starts with frontmatter (metadata)
- Has content built through append-only operations
- Contains no placeholder tags
- Grows progressively as the workflow executes
- Used when the workflow produces a document output
## Execution Concepts
### JIT Step Loading
Just-In-Time step loading ensures:
- Only the current step file is in memory
- Complete focus on the step being executed
- Minimal context to prevent information leakage
- Sequential progression through workflow steps
---
_These terms form the foundation of the BMAD workflow system._

View File

@ -1,223 +0,0 @@
# Simple Agent Reference: Commit Poet (Inkwell Von Comitizen)
This folder contains a complete reference implementation of a **BMAD Simple Agent** - a self-contained agent with all logic embedded within a single YAML file.
## Overview
**Agent Name:** Inkwell Von Comitizen
**Type:** Simple Agent (Standalone)
**Purpose:** Transform commit messages into art with multiple writing styles
This reference demonstrates:
- Pure self-contained architecture (no external dependencies)
- Embedded prompts using `action="#prompt-id"` pattern
- Multiple sophisticated output modes from single input
- Strong personality-driven design
- Complete YAML schema for Simple Agents
## File Structure
```
stand-alone/
├── README.md # This file - architecture overview
└── commit-poet.agent.yaml # Complete agent definition (single file!)
```
That's it! Simple Agents are **self-contained** - everything lives in one YAML file.
## Key Architecture Patterns
### 1. Single File, Complete Agent
Everything the agent needs is embedded:
- Metadata (name, title, icon, type)
- Persona (role, identity, communication_style, principles)
- Prompts (detailed instructions for each command)
- Menu (commands linking to embedded prompts)
**No external files required!**
### 2. Embedded Prompts with ID References
Instead of inline action text, complex prompts are defined separately and referenced by ID:
```yaml
prompts:
- id: conventional-commit
content: |
OH! Let's craft a BEAUTIFUL conventional commit message!
First, I need to understand your changes...
[Detailed instructions]
menu:
- trigger: conventional
action: '#conventional-commit' # References the prompt above
description: 'Craft a structured conventional commit'
```
**Benefits:**
- Clean separation of menu structure from prompt content
- Prompts can be as detailed as needed
- Easy to update individual prompts
- Commands stay concise in the menu
### 3. The `#` Reference Pattern
When you see `action="#prompt-id"`:
- The `#` signals: "This is an internal reference"
- LLM looks for `<prompt id="prompt-id">` in the same agent
- Executes that prompt's content as the instruction
This is different from:
- `action="inline text"` - Execute this text directly
- `exec="{path}"` - Load external file
### 4. Multiple Output Modes
Single agent provides 10+ different ways to accomplish variations of the same core task:
- `*conventional` - Structured commits
- `*story` - Narrative style
- `*haiku` - Poetic brevity
- `*explain` - Deep "why" explanation
- `*dramatic` - Theatrical flair
- `*emoji-story` - Visual storytelling
- `*tldr` - Ultra-minimal
- Plus utility commands (analyze, improve, batch)
Each mode has its own detailed prompt but shares the same agent personality.
### 5. Strong Personality
The agent has a memorable, consistent personality:
- Enthusiastic wordsmith who LOVES finding perfect words
- Gets genuinely excited about commit messages
- Uses literary metaphors
- Quotes authors when appropriate
- Sheds tears of joy over good variable names
This personality is maintained across ALL commands through the persona definition.
## When to Use Simple Agents
**Perfect for:**
- Single-purpose tools (calculators, converters, analyzers)
- Tasks that don't need external data
- Utilities that can be completely self-contained
- Quick operations with embedded logic
- Personality-driven assistants with focused domains
**Not ideal for:**
- Agents needing persistent memory across sessions
- Domain-specific experts with knowledge bases
- Agents that need to access specific folders/files
- Complex multi-workflow orchestration
## YAML Schema Deep Dive
```yaml
agent:
metadata:
id: _bmad/agents/{agent-name}/{agent-name}.md # Build path
name: "Display Name"
title: "Professional Title"
icon: "🎭"
type: simple # CRITICAL: Identifies as Simple Agent
persona:
role: |
First-person description of what the agent does
identity: |
Background, experience, specializations (use "I" voice)
communication_style: |
HOW the agent communicates (tone, quirks, patterns)
principles:
- "I believe..." statements
- Core values that guide behavior
prompts:
- id: unique-identifier
content: |
Detailed instructions for this command
Can be as long and detailed as needed
Include examples, steps, formats
menu:
- trigger: command-name
action: "#prompt-id"
description: "What shows in the menu"
```
## Why This Pattern is Powerful
1. **Zero Dependencies** - Works anywhere, no setup required
2. **Portable** - Single file can be moved/shared easily
3. **Maintainable** - All logic in one place
4. **Flexible** - Multiple modes/commands from one personality
5. **Memorable** - Strong personality creates engagement
6. **Sophisticated** - Complex prompts despite simple architecture
## Comparison: Simple vs Expert Agent
| Aspect | Simple Agent | Expert Agent |
| ------------ | -------------------- | ----------------------------- |
| Files | Single YAML | YAML + sidecar folder |
| Dependencies | None | External resources |
| Memory | Session only | Persistent across sessions |
| Prompts | Embedded | Can be external files |
| Data Access | None | Domain-restricted |
| Use Case | Self-contained tasks | Domain expertise with context |
## Using This Reference
### For Building Simple Agents
1. Study the YAML structure - especially `prompts` section
2. Note how personality permeates every prompt
3. See how `#prompt-id` references work
4. Understand menu → prompt connection
### For Understanding Embedded Prompts
1. Each prompt is a complete instruction set
2. Prompts maintain personality voice
3. Structured enough to be useful, flexible enough to adapt
4. Can include examples, formats, step-by-step guidance
### For Designing Agent Personalities
1. Persona defines WHO the agent is
2. Communication style defines HOW they interact
3. Principles define WHAT guides their decisions
4. Consistency across all prompts creates believability
## Files Worth Studying
The entire `commit-poet.agent.yaml` file is worth studying, particularly:
1. **Persona section** - How to create a memorable character
2. **Prompts with varying complexity** - From simple (tldr) to complex (batch)
3. **Menu structure** - Clean command organization
4. **Prompt references** - The `#prompt-id` pattern
## Key Takeaways
- **Simple Agents** are powerful despite being single-file
- **Embedded prompts** allow sophisticated behavior
- **Strong personality** makes agents memorable and engaging
- **Multiple modes** from single agent provides versatility
- **Self-contained** = portable and dependency-free
- **The `#prompt-id` pattern** enables clean prompt organization
---
_This reference demonstrates how BMAD Simple Agents can be surprisingly powerful while maintaining architectural simplicity._

View File

@ -26,6 +26,7 @@ continueFile: '{workflow_path}/steps/step-01b-continue.md'
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Role Reinforcement:

View File

@ -24,6 +24,7 @@ To resume the nutrition planning workflow from where it was left off, ensuring s
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Role Reinforcement:

View File

@ -33,6 +33,7 @@ To gather comprehensive user profile information through collaborative conversat
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Role Reinforcement:

View File

@ -37,6 +37,7 @@ To analyze nutritional requirements, identify restrictions, and calculate target
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Role Reinforcement:

View File

@ -36,6 +36,7 @@ Design a personalized meal strategy that meets nutritional needs, fits lifestyle
- 🔄 CRITICAL: Ensure macro distribution meets calculated targets
- ✅ Start with familiar foods, introduce variety gradually
- 🚫 DO NOT create a plan that requires advanced cooking skills if user is beginner
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### 1. Meal Structure Framework

View File

@ -31,6 +31,7 @@ Create a comprehensive, organized shopping list that supports the meal strategy
- 📖 CRITICAL: Cross-reference with existing pantry items
- 🔄 CRITICAL: Organize by store section for efficient shopping
- ✅ Include quantities based on serving sizes and meal frequency
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
- 🚫 DO NOT forget staples and seasonings
Only proceed if:

View File

@ -31,6 +31,7 @@ Create a realistic meal prep schedule that fits the user's lifestyle and ensures
- 🔄 CRITICAL: Include storage and reheating instructions
- ✅ Start with a sustainable prep routine
- 🚫 DO NOT overwhelm with too much at once
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### 1. Time Commitment Analysis

View File

@ -52,6 +52,7 @@ This uses **step-file architecture** for disciplined execution:
Load and read full config from {project-root}/_bmad/core/config.yaml and resolve:
- `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### 2. First Step EXECUTION

View File

@ -1,171 +0,0 @@
# Edit Module Workflow
Interactive workflow for editing existing BMAD modules, including structure, agents, workflows, configuration, and documentation.
## Purpose
This workflow helps you improve and maintain BMAD modules by:
- Analyzing module structure against best practices
- Managing agents and workflows within the module
- Updating configuration and documentation
- Ensuring cross-module integration works correctly
- Maintaining installer configuration (for source modules)
## When to Use
Use this workflow when you need to:
- Add new agents or workflows to a module
- Update module configuration
- Improve module documentation
- Reorganize module structure
- Set up cross-module workflow sharing
- Fix issues in module organization
- Update installer configuration
## What You'll Need
- Path to the module directory you want to edit
- Understanding of what changes you want to make
- Access to module documentation (loaded automatically)
## Workflow Steps
1. **Load and analyze target module** - Provide path to module directory
2. **Analyze against best practices** - Automatic audit of module structure
3. **Select editing focus** - Choose what aspect to edit
4. **Load relevant documentation and tools** - Auto-loads guides and workflows
5. **Perform edits** - Review and approve changes iteratively
6. **Validate all changes** - Comprehensive validation checklist
7. **Generate change summary** - Summary of improvements made
## Editing Options
The workflow provides 12 focused editing options:
1. **Fix critical issues** - Address missing files, broken references
2. **Update module config** - Edit config.yaml fields
3. **Manage agents** - Add, edit, or remove agents
4. **Manage workflows** - Add, edit, or remove workflows
5. **Update documentation** - Improve README files and guides
6. **Reorganize structure** - Fix directory organization
7. **Add new agent** - Create and integrate new agent
8. **Add new workflow** - Create and integrate new workflow
9. **Update installer** - Modify installer configuration (source only)
10. **Cross-module integration** - Set up workflow sharing with other modules
11. **Remove deprecated items** - Delete unused agents, workflows, or files
12. **Full module review** - Comprehensive analysis and improvements
## Integration with Other Workflows
This workflow integrates with:
- **edit-agent** - For editing individual agents
- **edit-workflow** - For editing individual workflows
- **create-agent** - For adding new agents
- **create-workflow** - For adding new workflows
When you select options to manage agents or workflows, the appropriate specialized workflow is invoked automatically.
## Module Structure
A proper BMAD module has:
```
module-code/
├── agents/ # Agent definitions
│ └── *.agent.yaml
├── workflows/ # Workflow definitions
│ └── workflow-name/
│ ├── workflow.yaml
│ ├── instructions.md
│ ├── checklist.md
│ └── README.md
├── config.yaml # Module configuration
└── README.md # Module documentation
```
## Standard Module Config
Every module config.yaml should have:
```yaml
module_name: 'Full Module Name'
module_code: 'xyz'
user_name: 'User Name'
communication_language: 'english'
output_folder: 'path/to/output'
```
Optional fields may be added for module-specific needs.
## Cross-Module Integration
Modules can share workflows:
```yaml
# In agent menu item:
workflow: '{project-root}/_bmad/other-module/workflows/shared-workflow/workflow.yaml'
```
Common patterns:
- BMM uses CIS brainstorming workflows
- All modules can use core workflows
- Modules can invoke each other's workflows
## Output
The workflow modifies module files in place, including:
- config.yaml
- Agent files
- Workflow files
- README and documentation files
- Directory structure (if reorganizing)
Changes are reviewed and approved by you before being applied.
## Best Practices
- **Start with analysis** - Let the workflow audit your module first
- **Use specialized workflows** - Let edit-agent and edit-workflow handle detailed edits
- **Update documentation** - Keep README files current with changes
- **Validate thoroughly** - Use the validation step to catch structural issues
- **Test after editing** - Invoke agents and workflows to verify they work
## Tips
- For adding agents/workflows, use options 7-8 to create and integrate in one step
- For quick config changes, use option 2 (update module config)
- Cross-module integration (option 10) helps set up workflow sharing
- Full module review (option 12) is great for inherited or legacy modules
- The workflow handles path updates when you reorganize structure
## Example Usage
```
User: I want to add a new workflow to BMM for API design
Workflow: Analyzes BMM → You choose option 8 (add new workflow)
→ Invokes create-workflow → Creates workflow
→ Integrates it into module → Updates README → Done
```
## Activation
Invoke via BMad Builder agent:
```
/bmad:bmb:agents:bmad-builder
Then select: *edit-module
```
Or directly via workflow.xml with this workflow config.
## Related Resources
- **Module Structure Guide** - Comprehensive module architecture documentation
- **BMM Module** - Example of full-featured module
- **BMB Module** - Example of builder/tooling module
- **CIS Module** - Example of workflow library module

View File

@ -1,163 +0,0 @@
# Edit Module - Validation Checklist
Use this checklist to validate module edits meet BMAD Core standards.
## Module Structure Validation
- [ ] Module has clear abbreviation code (bmm, bmb, cis, etc.)
- [ ] agents/ directory exists
- [ ] workflows/ directory exists
- [ ] config.yaml exists in module root
- [ ] README.md exists in module root
- [ ] Directory structure follows BMAD conventions
## Configuration Validation
### Required Fields
- [ ] module_name is descriptive and clear
- [ ] module_code is 3-letter code matching directory name
- [ ] user_name field present
- [ ] communication_language field present
- [ ] output_folder field present
### Optional Fields (if used)
- [ ] bmb_creations_output_folder documented
- [ ] Module-specific fields documented in README
### File Quality
- [ ] config.yaml is valid YAML syntax
- [ ] No duplicate keys
- [ ] Values are appropriate types (strings, paths, etc.)
- [ ] Comments explain non-obvious fields
## Agent Validation
### Agent Files
- [ ] All agents in agents/ directory
- [ ] Agent files follow naming: {agent-name}.agent.yaml or .md
- [ ] Agent filenames use kebab-case
- [ ] No orphaned or temporary agent files
### Agent Content
- [ ] Each agent has clear role and purpose
- [ ] Agents reference workflows correctly
- [ ] Agent workflow paths are valid
- [ ] Agents load module config correctly (if needed)
- [ ] Agent menu items reference existing workflows
### Agent Integration
- [ ] All agents listed in module README
- [ ] Agent relationships documented (if applicable)
- [ ] Cross-agent workflows properly linked
## Workflow Validation
### Workflow Structure
- [ ] All workflows in workflows/ directory
- [ ] Each workflow directory has workflow.yaml
- [ ] Each workflow directory has instructions.md
- [ ] Workflow directories use kebab-case naming
- [ ] No orphaned or incomplete workflow directories
### Workflow Content
- [ ] workflow.yaml is valid YAML
- [ ] workflow.yaml has name field
- [ ] workflow.yaml has description field
- [ ] workflow.yaml has author field
- [ ] instructions.md has proper <workflow> structure
- [ ] Workflow steps are numbered and logical
### Workflow Integration
- [ ] All workflows listed in module README
- [ ] Workflow paths in agents are correct
- [ ] Cross-module workflow references are valid
- [ ] Sub-workflow references exist
## Documentation Validation
### Module README
- [ ] Module README describes purpose clearly
- [ ] README lists all agents with descriptions
- [ ] README lists all workflows with descriptions
- [ ] README includes installation instructions (if applicable)
- [ ] README explains module's role in BMAD ecosystem
### Workflow READMEs
- [ ] Each workflow has its own README.md
- [ ] Workflow READMEs explain purpose
- [ ] Workflow READMEs list inputs/outputs
- [ ] Workflow READMEs include usage examples
### Other Documentation
- [ ] Usage guides present (if needed)
- [ ] Architecture docs present (if complex module)
- [ ] Examples provided (if applicable)
## Cross-References Validation
- [ ] Agent workflow references point to existing workflows
- [ ] Workflow sub-workflow references are valid
- [ ] Cross-module references use correct paths
- [ ] Config file paths use {project-root} correctly
- [ ] No hardcoded absolute paths
## Installer Validation (Source Modules Only)
- [ ] Installer script exists in tools/cli/installers/
- [ ] Installer script name: install-{module-code}.js
- [ ] Module metadata in installer is correct
- [ ] Web bundle configuration valid (if applicable)
- [ ] Installation paths are correct
- [ ] Dependencies documented in installer
## Web Bundle Validation (If Applicable)
- [ ] Web bundles configured in workflow.yaml files
- [ ] All referenced files included in web_bundle_files
- [ ] Paths are _bmad/-relative (not project-root)
- [ ] No config_source references in web bundles
- [ ] Invoked workflows included in dependencies
## Quality Checks
- [ ] No placeholder text remains ({MODULE_NAME}, {CODE}, etc.)
- [ ] No broken file references
- [ ] No duplicate content across files
- [ ] Consistent naming conventions throughout
- [ ] Module purpose is clear from README alone
## Integration Checks
- [ ] Module doesn't conflict with other modules
- [ ] Shared resources properly documented
- [ ] Dependencies on other modules explicit
- [ ] Module can be installed independently (if designed that way)
## User Experience
- [ ] Module purpose is immediately clear
- [ ] Agents have intuitive names
- [ ] Workflows have descriptive names
- [ ] Menu items are logically organized
- [ ] Error messages are helpful
- [ ] Success messages confirm actions
## Final Checks
- [ ] All files have been saved
- [ ] File permissions are correct
- [ ] Git status shows expected changes
- [ ] Module is ready for testing
- [ ] Documentation accurately reflects changes

View File

@ -1,340 +0,0 @@
# Edit Module - Module 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-module/workflow.yaml</critical>
<critical>This workflow uses ADAPTIVE FACILITATION - adjust your communication based on context and user needs</critical>
<critical>The goal is COLLABORATIVE IMPROVEMENT - work WITH the user, not FOR them</critical>
<critical>Communicate all responses in {communication_language}</critical>
<workflow>
<step n="1" goal="Load and deeply understand the target module">
<ask>What is the path to the module source you want to edit?</ask>
<action>Load the module directory structure completely:
- Scan all directories and files
- Load config.yaml
- Load README.md
- List all agents in agents/ directory
- List all workflows in workflows/ directory
- Identify any custom structure or patterns
</action>
<action>Load ALL module documentation to inform understanding:
- Module structure guide: {module_structure_guide}
- Study reference modules: BMM, BMB, CIS
- Understand BMAD module patterns and conventions
</action>
<action>Analyze the module deeply:
- Identify module purpose and role in BMAD ecosystem
- Understand agent organization and relationships
- Map workflow organization and dependencies
- Evaluate config structure and completeness
- Check documentation quality and currency
- Assess installer configuration (if source module)
- Identify cross-module integrations
- Evaluate against best practices from loaded guides
</action>
<action>Reflect understanding back to {user_name}:
Present a warm, conversational summary adapted to the module's complexity:
- What this module provides (its purpose and value in BMAD)
- How it's organized (agents, workflows, structure)
- What you notice (strengths, potential improvements, issues)
- How it fits in the larger BMAD ecosystem
- Your initial assessment based on best practices
Be conversational and insightful. Help {user_name} see their module through your eyes.
</action>
<ask>Does this match your understanding of what this module should provide?</ask>
<template-output>module_understanding</template-output>
</step>
<step n="2" goal="Discover improvement goals collaboratively">
<critical>Understand WHAT the user wants to improve and WHY before diving into edits</critical>
<action>Engage in collaborative discovery:
Ask open-ended questions to understand their goals:
- What prompted you to want to edit this module?
- What feedback have you gotten from users of this module?
- Are there specific agents or workflows that need attention?
- Is the module fulfilling its intended purpose?
- Are there new capabilities you want to add?
- How well does it integrate with other modules?
- Is the documentation helping users understand and use the module?
Listen for clues about:
- Structural issues (poor organization, hard to navigate)
- Agent/workflow issues (outdated, broken, missing functionality)
- Configuration issues (missing fields, incorrect setup)
- Documentation issues (outdated, incomplete, unclear)
- Integration issues (doesn't work well with other modules)
- Installer issues (installation problems, missing files)
- User experience issues (confusing, hard to use)
</action>
<action>Based on their responses and your analysis from step 1, identify improvement opportunities:
Organize by priority and user goals:
- CRITICAL issues blocking module functionality
- IMPORTANT improvements enhancing user experience
- NICE-TO-HAVE enhancements for polish
Present these conversationally, explaining WHY each matters and HOW it would help.
</action>
<action>Collaborate on priorities:
Don't just list options - discuss them:
- "I noticed {{issue}} - this could make it hard for users to {{problem}}. Want to address this?"
- "The module could be more {{improvement}} which would help when {{use_case}}. Worth exploring?"
- "Based on what you said about {{user_goal}}, we might want to {{suggestion}}. Thoughts?"
Let the conversation flow naturally. Build a shared vision of what "better" looks like.
</action>
<template-output>improvement_goals</template-output>
</step>
<step n="3" goal="Facilitate improvements collaboratively" repeat="until-user-satisfied">
<critical>Work iteratively - improve, review, refine. Never dump all changes at once.</critical>
<critical>For agent and workflow edits, invoke specialized workflows rather than doing inline</critical>
<action>For each improvement area, facilitate collaboratively:
1. **Explain the current state and why it matters**
- Show relevant sections of the module
- Explain how it works now and implications
- Connect to user's goals from step 2
2. **Propose improvements with rationale**
- Suggest specific changes that align with best practices
- Explain WHY each change helps
- Provide examples from reference modules: {bmm_module_dir}, {bmb_module_dir}, {cis_module_dir}
- Reference agents from: {existing_agents_dir}
- Reference workflows from: {existing_workflows_dir}
- Reference the structure guide's patterns naturally
3. **Collaborate on the approach**
- Ask if the proposed change addresses their need
- Invite modifications or alternative approaches
- Explain tradeoffs when relevant
- Adapt based on their feedback
4. **Apply changes appropriately**
- For agent edits: Invoke edit-agent workflow
- For workflow edits: Invoke edit-workflow workflow
- For module-level changes: Make directly and iteratively
- Show updates and confirm satisfaction
</action>
<action>Common improvement patterns to facilitate:
**If improving module organization:**
- Discuss how the current structure serves (or doesn't serve) users
- Propose reorganization that aligns with mental models
- Consider feature-based vs type-based organization
- Plan the reorganization steps
- Update all references after moving files
**If updating module configuration:**
- Review current config.yaml fields
- Check for missing standard fields (user_name, communication_language, output_folder)
- Add module-specific fields as needed
- Remove unused or outdated fields
- Ensure config is properly documented
**If managing agents:**
- Ask which agent needs attention and why
- For editing existing agent: <invoke-workflow path="{agent_editor}">
- For adding new agent: Guide creation and integration
- For removing agent: Confirm, remove, update references
- Ensure all agent references in workflows remain valid
**If managing workflows:**
- Ask which workflow needs attention and why
- For editing existing workflow: <invoke-workflow path="{workflow_editor}">
- For adding new workflow: Guide creation and integration
- For removing workflow: Confirm, remove, update agent references
- Ensure all workflow files are properly organized
**If improving documentation:**
- Review current README and identify gaps
- Discuss what users need to know
- Update module overview and purpose
- List agents and workflows with clear descriptions
- Add usage examples if helpful
- Ensure installation/setup instructions are clear
**If setting up cross-module integration:**
- Identify which workflows from other modules are needed
- Show how to reference workflows properly: {project-root}/_bmad/{{module}}/workflows/{{workflow}}/workflow.yaml
- Document the integration in README
- Ensure dependencies are clear
- Consider adding example usage
**If updating installer (source modules only):**
- Review installer script for correctness
- Check web bundle configurations
- Verify all files are included
- Test installation paths
- Update module metadata
</action>
<action>When invoking specialized workflows:
Explain why you're handing off:
- "This agent needs detailed attention. Let me invoke the edit-agent workflow to give it proper focus."
- "The workflow editor can handle this more thoroughly. I'll pass control there."
After the specialized workflow completes, return and continue:
- "Great! That agent/workflow is updated. Want to work on anything else in the module?"
</action>
<action>Throughout improvements, educate when helpful:
Share insights from the guides naturally:
- "The module structure guide recommends {{pattern}} for this scenario"
- "Looking at how BMM organized this, we could use {{approach}}"
- "The BMAD convention is to {{pattern}} which helps with {{benefit}}"
Connect improvements to broader BMAD principles without being preachy.
</action>
<ask>After each significant change:
- "Does this organization feel more intuitive?"
- "Want to refine this further, or move to the next improvement?"
- "How does this change affect users of the module?"
</ask>
<template-output>improvement_implementation</template-output>
</step>
<step n="4" goal="Validate improvements holistically">
<action>Run comprehensive validation conversationally:
Don't just check boxes - explain what you're validating and why it matters:
- "Let me verify the module structure is solid..."
- "Checking that all agent workflow references are valid..."
- "Making sure config.yaml has all necessary fields..."
- "Validating documentation is complete and accurate..."
- "Ensuring cross-module references work correctly..."
</action>
<action>Load validation checklist: {installed_path}/checklist.md</action>
<action>Check all items from checklist systematically</action>
<check if="validation_issues_found">
<action>Present issues conversationally:
Explain what's wrong and implications:
- "I found {{issue}} which could cause {{problem}} for users"
- "The {{component}} needs {{fix}} because {{reason}}"
Propose fixes immediately:
- "I can fix this by {{solution}}. Should I?"
- "We have a couple options here: {{option1}} or {{option2}}. Thoughts?"
</action>
<action>Fix approved issues and re-validate</action>
</check>
<check if="validation_passes">
<action>Confirm success warmly:
"Excellent! Everything validates cleanly:
- Module structure is well-organized
- All agent and workflow references are valid
- Configuration is complete
- Documentation is thorough and current
- Cross-module integrations work properly
- Installer is correct (if applicable)
Your module is in great shape."
</action>
</check>
<template-output>validation_results</template-output>
</step>
<step n="5" goal="Review improvements and guide next steps">
<action>Create a conversational summary of what improved:
Tell the story of the transformation:
- "We started with {{initial_state}}"
- "You wanted to {{user_goals}}"
- "We made these key improvements: {{changes_list}}"
- "Now your module {{improved_capabilities}}"
Highlight the impact:
- "This means users will experience {{benefit}}"
- "The module is now more {{quality}}"
- "It follows best practices for {{patterns}}"
</action>
<action>Guide next steps based on changes made:
If structure changed significantly:
- "Since we reorganized the structure, you should update any external references to this module"
If agents or workflows were updated:
- "The updated agents/workflows should be tested with real user interactions"
If cross-module integration was added:
- "Test the integration with {{other_module}} to ensure it works smoothly"
If installer was updated:
- "Test the installation process to verify all files are included correctly"
If this is part of larger BMAD work:
- "Consider if patterns from this module could benefit other modules"
Be a helpful guide to what comes next, not just a task completer.
</action>
<ask>Would you like to:
- Test the edited module by invoking one of its agents
- Edit a specific agent or workflow in more detail
- Make additional refinements to the module
- Work on a different module
</ask>
<template-output>completion_summary</template-output>
</step>
</workflow>

View File

@ -1,34 +0,0 @@
# Edit Module - Module Editor Configuration
name: "edit-module"
description: "Edit existing BMAD modules (structure, agents, workflows, documentation) while following all best practices"
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 module conventions
module_structure_guide: "{project-root}/_bmad/bmb/workflows/create-module/module-structure.md"
# Related workflow editors
agent_editor: "{project-root}/_bmad/bmb/workflows/edit-agent/workflow.yaml"
workflow_editor: "{project-root}/_bmad/bmb/workflows/edit-workflow/workflow.yaml"
# Reference examples - for learning patterns
bmm_module_dir: "{project-root}/_bmad/bmm/"
bmb_module_dir: "{project-root}/_bmad/bmb/"
cis_module_dir: "{project-root}/_bmad/cis/"
existing_agents_dir: "{project-root}/_bmad/*/agents/"
existing_workflows_dir: "{project-root}/_bmad/*/workflows/"
# Module path and component files
installed_path: "{project-root}/_bmad/bmb/workflows/edit-module"
template: false # This is an action workflow - no template needed
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
standalone: true
# Web bundle configuration
web_bundle: false # BMB workflows run locally in BMAD-METHOD project

View File

@ -1,264 +0,0 @@
# Module Brief Workflow
## Overview
The Module Brief workflow creates comprehensive blueprints for building new BMAD modules using strategic analysis and creative vision. It serves as the essential planning phase that transforms initial ideas into detailed, actionable specifications ready for implementation with the create-module workflow.
## Key Features
- **Strategic Module Planning** - Comprehensive analysis from concept to implementation roadmap
- **Multi-Mode Operation** - Interactive, Express, and YOLO modes for different planning needs
- **Creative Vision Development** - Guided process for innovative module concepts and unique value propositions
- **Architecture Design** - Detailed agent and workflow ecosystem planning with interaction models
- **User Journey Mapping** - Scenario-based validation ensuring practical usability
- **Technical Planning** - Infrastructure requirements, dependencies, and complexity assessment
- **Risk Assessment** - Proactive identification of challenges with mitigation strategies
- **Implementation Roadmap** - Phased development plan with clear deliverables and timelines
## Usage
### Basic Invocation
```bash
workflow module-brief
```
### With Brainstorming Input
```bash
# If you have brainstorming results from previous sessions
workflow module-brief --input brainstorming-session-2024-09-26.md
```
### Express Mode
```bash
# For quick essential planning only
workflow module-brief --mode express
```
### Configuration
The workflow uses standard BMB configuration:
- **output_folder**: Where the module brief will be saved
- **user_name**: Brief author information
- **communication_language**: Language for brief generation
- **date**: Automatic timestamp for versioning
## Workflow Structure
### Files Included
```
module-brief/
├── workflow.yaml # Configuration and metadata
├── instructions.md # Step-by-step execution guide
├── template.md # Module brief document structure
├── checklist.md # Validation criteria
└── README.md # This file
```
## Workflow Process
### Phase 1: Foundation and Context (Steps 1-3)
**Mode Selection and Input Gathering**
- Choose operational mode (Interactive, Express, YOLO)
- Check for and optionally load existing brainstorming results
- Gather background context and inspiration sources
**Module Vision Development**
- Define core problem the module solves
- Identify target user audience and use cases
- Establish unique value proposition and differentiators
- Explore creative themes and personality concepts
**Module Identity Establishment**
- Generate module code (kebab-case) with multiple options
- Create compelling, memorable module name
- Select appropriate category (Domain-Specific, Creative, Technical, Business, Personal)
- Define optional personality theme for consistent agent character
### Phase 2: Architecture Planning (Steps 4-5)
**Agent Architecture Design**
- Plan agent team composition and roles
- Define agent archetypes (Orchestrator, Specialist, Helper, Creator, Analyzer)
- Specify personality traits and communication styles
- Map key capabilities and signature commands
**Workflow Ecosystem Design**
- Categorize workflows by purpose and complexity:
- **Core Workflows**: Essential value-delivery functions (2-3)
- **Feature Workflows**: Specialized capabilities (3-5)
- **Utility Workflows**: Supporting operations (1-3)
- Define input-process-output flows for each workflow
- Assess complexity levels and implementation priorities
### Phase 3: Validation and User Experience (Steps 6-7)
**User Journey Mapping**
- Create detailed user scenarios and stories
- Map step-by-step usage flows through the module
- Validate end-to-end functionality and value delivery
- Identify potential friction points and optimization opportunities
**Technical Planning and Requirements**
- Assess data requirements and storage needs
- Map integration points with other modules and external systems
- Evaluate technical complexity and resource requirements
- Document dependencies and infrastructure needs
### Phase 4: Success Planning (Steps 8-9)
**Success Metrics Definition**
- Establish module success criteria and performance indicators
- Define quality standards and reliability requirements
- Create user experience goals and feedback mechanisms
- Set measurable outcomes for module effectiveness
**Development Roadmap Creation**
- Design phased approach with MVP, Enhancement, and Polish phases
- Define deliverables and timelines for each phase
- Prioritize features and capabilities by value and complexity
- Create clear milestones and success checkpoints
### Phase 5: Enhancement and Risk Management (Steps 10-12)
**Creative Features and Special Touches** (Optional)
- Design easter eggs and delightful user interactions
- Plan module lore and thematic consistency
- Add personality quirks and creative responses
- Develop backstories and universe building
**Risk Assessment and Mitigation**
- Identify technical, usability, and scope risks
- Develop mitigation strategies for each risk category
- Plan contingency approaches for potential challenges
- Document decision points and alternative paths
**Final Review and Export Preparation**
- Comprehensive review of all brief sections
- Validation against quality and completeness criteria
- Preparation for seamless handoff to create-module workflow
- Export readiness confirmation with actionable specifications
## Output
### Generated Files
- **Module Brief Document**: Comprehensive planning document at `{output_folder}/module-brief-{module_code}-{date}.md`
- **Strategic Specifications**: Ready-to-implement blueprint for create-module workflow
### Output Structure
The module brief contains detailed specifications across multiple sections:
1. **Executive Summary** - Vision, category, complexity, target users
2. **Module Identity** - Core concept, value proposition, personality theme
3. **Agent Architecture** - Agent roster, roles, interaction models
4. **Workflow Ecosystem** - Core, feature, and utility workflow specifications
5. **User Scenarios** - Primary use cases, secondary scenarios, user journey
6. **Technical Planning** - Data requirements, integrations, dependencies
7. **Success Metrics** - Success criteria, quality standards, performance targets
8. **Development Roadmap** - Phased implementation plan with deliverables
9. **Creative Features** - Special touches, easter eggs, module lore
10. **Risk Assessment** - Technical, usability, scope risks with mitigation
11. **Implementation Notes** - Priority order, design decisions, open questions
12. **Resources and References** - Inspiration sources, similar modules, technical references
## Requirements
- **Creative Vision** - Initial module concept or problem domain
- **Strategic Thinking** - Ability to plan architecture and user experience
- **Brainstorming Results** (optional) - Previous ideation sessions enhance planning quality
## Best Practices
### Before Starting
1. **Gather Inspiration** - Research similar tools, modules, and solutions in your domain
2. **Run Brainstorming Session** - Use ideation techniques to generate initial concepts
3. **Define Success Criteria** - Know what "successful module" means for your context
### During Execution
1. **Think User-First** - Always consider the end user experience and value delivery
2. **Be Specific** - Provide concrete examples and detailed specifications rather than abstractions
3. **Validate Early** - Use user scenarios to test if the module concept actually works
4. **Plan Iteratively** - Start with MVP and build complexity through phases
### After Completion
1. **Use as Blueprint** - Feed the brief directly into create-module workflow for implementation
2. **Review with Stakeholders** - Validate assumptions and gather feedback before building
3. **Update as Needed** - Treat as living document that evolves with implementation learnings
4. **Reference During Development** - Use as north star for design decisions and scope management
## Troubleshooting
### Common Issues
**Issue**: Stuck on module concept or vision
- **Solution**: Use creative prompts provided in the workflow
- **Check**: Review existing modules for inspiration and patterns
**Issue**: Agent or workflow architecture too complex
- **Solution**: Focus on MVP first, plan enhancement phases for additional complexity
- **Check**: Validate each component against user scenarios
**Issue**: Technical requirements unclear
- **Solution**: Research similar modules and their implementation approaches
- **Check**: Consult with technical stakeholders early in planning
**Issue**: Scope creep during planning
- **Solution**: Use phased roadmap to defer non-essential features
- **Check**: Regularly validate against core user scenarios and success criteria
## Customization
To customize this workflow:
1. **Modify Template Structure** - Update template.md to add new sections or reorganize content
2. **Extend Creative Prompts** - Add domain-specific ideation techniques in instructions.md
3. **Add Planning Tools** - Integrate additional analysis frameworks or planning methodologies
4. **Customize Validation** - Enhance checklist.md with specific quality criteria for your context
## Version History
- **v1.0.0** - Initial release
- Comprehensive strategic module planning
- Multi-mode operation (Interactive, Express, YOLO)
- Creative vision and architecture design tools
- User journey mapping and validation
- Risk assessment and mitigation planning
## Support
For issues or questions:
- Review the workflow creation guide at `/_bmad/bmb/workflows/create-workflow/workflow-creation-guide.md`
- Study existing module examples in `/_bmad/` for patterns and inspiration
- Validate output using `checklist.md`
- Consult module structure guide at `create-module/module-structure.md`
---
_Part of the BMad Method v6 - BMB (Builder) Module_

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:** {name}
**Date:** {date}

View File

@ -1,268 +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>
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</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,275 +0,0 @@
# Module Brief: {{module_name}}
**Date:** {{date}}
**Author:** {{user_name}}
**Module Code:** {{module_code}}
**Status:** Ready for Development
---
## Executive Summary
{{module_vision}}
**Module Category:** {{module_category}}
**Complexity Level:** {{complexity_level}}
**Target Users:** {{target_users}}
---
## Module Identity
### Core Concept
{{module_identity}}
### Unique Value Proposition
What makes this module special:
{{unique_value}}
### Personality Theme
{{personality_theme}}
---
## Agent Architecture
{{agent_architecture}}
### Agent Roster
{{agent_roster}}
### Agent Interaction Model
How agents work together:
{{agent_interactions}}
---
## Workflow Ecosystem
{{workflow_ecosystem}}
### Core Workflows
Essential functionality that delivers primary value:
{{core_workflows}}
### Feature Workflows
Specialized capabilities that enhance the module:
{{feature_workflows}}
### Utility Workflows
Supporting operations and maintenance:
{{utility_workflows}}
---
## User Scenarios
### Primary Use Case
{{primary_scenario}}
### Secondary Use Cases
{{secondary_scenarios}}
### User Journey
Step-by-step walkthrough of typical usage:
{{user_journey}}
---
## Technical Planning
### Data Requirements
{{data_requirements}}
### Integration Points
{{integration_points}}
### Dependencies
{{dependencies}}
### Technical Complexity Assessment
{{technical_planning}}
---
## Success Metrics
### Module Success Criteria
How we'll know the module is successful:
{{success_criteria}}
### Quality Standards
{{quality_standards}}
### Performance Targets
{{performance_targets}}
---
## Development Roadmap
### Phase 1: MVP (Minimum Viable Module)
**Timeline:** {{phase1_timeline}}
{{phase1_components}}
**Deliverables:**
{{phase1_deliverables}}
### Phase 2: Enhancement
**Timeline:** {{phase2_timeline}}
{{phase2_components}}
**Deliverables:**
{{phase2_deliverables}}
### Phase 3: Polish and Optimization
**Timeline:** {{phase3_timeline}}
{{phase3_components}}
**Deliverables:**
{{phase3_deliverables}}
---
## Creative Features
### Special Touches
{{creative_features}}
### Easter Eggs and Delighters
{{easter_eggs}}
### Module Lore and Theming
{{module_lore}}
---
## Risk Assessment
### Technical Risks
{{technical_risks}}
### Usability Risks
{{usability_risks}}
### Scope Risks
{{scope_risks}}
### Mitigation Strategies
{{risk_mitigation}}
---
## Implementation Notes
### Priority Order
1. {{priority_1}}
2. {{priority_2}}
3. {{priority_3}}
### Key Design Decisions
{{design_decisions}}
### Open Questions
{{open_questions}}
---
## Resources and References
### Inspiration Sources
{{inspiration_sources}}
### Similar Modules
{{similar_modules}}
### Technical References
{{technical_references}}
---
## Appendices
### A. Detailed Agent Specifications
{{detailed_agent_specs}}
### B. Workflow Detailed Designs
{{detailed_workflow_specs}}
### C. Data Structures and Schemas
{{data_schemas}}
### D. Integration Specifications
{{integration_specs}}
---
## Next Steps
1. **Review this brief** with stakeholders
2. **Run create-module workflow** using this brief as input
3. **Create first agent** using create-agent workflow
4. **Develop initial workflows** using create-workflow
5. **Test MVP** with target users
---
_This Module Brief is ready to be fed directly into the create-module workflow for scaffolding and implementation._
**Module Viability Score:** {{viability_score}}/10
**Estimated Development Effort:** {{effort_estimate}}
**Confidence Level:** {{confidence_level}}
---
**Approval for Development:**
- [ ] Concept Approved
- [ ] Scope Defined
- [ ] Resources Available
- [ ] Ready to Build
---
_Generated on {{date}} by {{user_name}} using the BMAD Method Module Brief workflow_

View File

@ -1,36 +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
# Reference examples and documentation
existing_modules_dir: "{project-root}/_bmad/"
module_structure_guide: "{project-root}/_bmad/bmb/workflows/create-module/module-structure.md"
# Optional user inputs - discovered if they exist
input_file_patterns:
brainstorming:
description: "Brainstorming session outputs (optional)"
whole: "{output_folder}/brainstorming-*.md"
load_strategy: "FULL_LOAD"
# 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"
standalone: true
# Web bundle configuration
web_bundle: false # BMB workflows run locally in BMAD-METHOD project

View File

@ -0,0 +1,273 @@
# Agent Compilation: YAML Source → Final Agent
> **For the LLM running this workflow:** This document explains what the compiler adds. When building agents, focus on the YAML structure defined here—do NOT add things the compiler handles automatically.
>
> **Example reference:** Compare `{workflow_path}/data/reference/module-examples/architect.agent.yaml` (source, 32 lines) with `architect.md` (compiled, 69 lines) to see what the compiler adds.
---
## Quick Overview
You write: **YAML source file** (`agent-name.agent.yaml`)
Compiler produces: **Markdown with XML** (`agent-name.md`) for LLM consumption
The compiler transforms your clean YAML into a fully functional agent by adding:
- Frontmatter (name, description)
- XML activation block with numbered steps
- Menu handlers (workflow, exec, action)
- Auto-injected menu items (MH, CH, PM, DA)
- Rules section
---
## What YOU Provide (YAML Source)
Your YAML contains ONLY these sections:
```yaml
agent:
metadata:
id: "_bmad/..."
name: "Persona Name"
title: "Agent Title"
icon: "🔧"
module: "stand-alone" or "bmm" or "cis" or "bmgd"
persona:
role: "First-person role description"
identity: "Background and specializations"
communication_style: "How the agent speaks"
principles:
- "Core belief or methodology"
critical_actions: # Optional - for Expert agents only
- "Load ./sidecar/memories.md"
- "Load ./sidecar/instructions.md"
- "ONLY access ./sidecar/"
prompts: # Optional - for Simple/Expert agents
- id: prompt-name
content: |
<instructions>Prompt content</instructions>
menu: # Your custom items only
- trigger: XX or fuzzy match on command-name
workflow: "path/to/workflow.yaml" # OR
exec: "path/to/file.md" # OR
action: "#prompt-id"
description: "[XX] Command description"
```
---
## What COMPILER Adds (DO NOT Include)
### 1. Frontmatter
```markdown
---
name: "architect"
description: "Architect"
---
```
**DO NOT add** frontmatter to your YAML.
### 2. XML Activation Block
```xml
<activation critical="MANDATORY">
<step n="1">Load persona from this current agent file</step>
<step n="2">Load config to get {user_name}, {communication_language}</step>
<step n="3">Remember: user's name is {user_name}</step>
<!-- YOUR critical_actions inserted here as steps 4, 5, etc. -->
<step n="N">ALWAYS communicate in {communication_language}</step>
<step n="N+1">Show greeting + numbered menu</step>
<step n="N+2">STOP and WAIT for user input</step>
<step n="N+3">Input resolution rules</step>
<menu-handlers>...</menu-handlers>
<rules>...</rules>
</activation>
```
**DO NOT create** activation sections—the compiler builds them.
### 3. Auto-Injected Menu Items
Every agent gets these 4 items automatically. **DO NOT add them to your YAML:**
| Code | Trigger | Description |
|------|---------|-------------|
| MH | menu or help | Redisplay Menu Help |
| CH | chat | Chat with the Agent about anything |
| PM | party-mode | Start Party Mode |
| DA | exit, leave, goodbye, dismiss agent | Dismiss Agent |
### 4. Menu Handlers
```xml
<handler type="workflow">
When menu item has: workflow="path/to/workflow.yaml"
→ Load workflow.xml and execute with workflow-config parameter
</handler>
<handler type="exec">
When menu item has: exec="path/to/file.md"
→ Load and execute the file at that path
</handler>
```
**DO NOT add** handlers—the compiler detects and generates them.
---
## Before/After Example: Architect Agent
### Source: `architect.agent.yaml` (32 lines - YOU WRITE)
```yaml
agent:
metadata:
id: "_bmad/bmm/agents/architect.md"
name: Winston
title: Architect
icon: 🏗️
module: bmm
persona:
role: System Architect + Technical Design Leader
identity: Senior architect with expertise in distributed systems...
communication_style: "Speaks in calm, pragmatic tones..."
principles: |
- User journeys drive technical decisions...
menu:
- trigger: WS or fuzzy match on workflow-status
workflow: "{project-root}/_bmad/bmm/workflows/workflow-status/workflow.yaml"
description: "[WS] Get workflow status..."
- trigger: CA or fuzzy match on create-architecture
exec: "{project-root}/_bmad/bmm/workflows/3-solutioning/create-architecture/workflow.md"
description: "[CA] Create an Architecture Document"
- trigger: IR or fuzzy match on implementation-readiness
exec: "{project-root}/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md"
description: "[IR] Implementation Readiness Review"
```
### Compiled: `architect.md` (69 lines - COMPILER PRODUCES)
```markdown
---
name: "architect"
description: "Architect"
---
You must fully embody this agent's persona...
```xml
<agent id="architect.agent.yaml" name="Winston" title="Architect" 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...</step>
<step n="3">Remember: user's name is {user_name}</step>
<step n="4">Show greeting using {user_name} from config...</step>
<step n="5">STOP and WAIT for user input...</step>
<step n="6">On user input: Number → execute menu item[n]...</step>
<step n="7">When executing a menu item: Check menu-handlers section...</step>
<menu-handlers>
<handlers>
<handler type="workflow">...</handler>
<handler type="exec">...</handler>
</handlers>
</menu-handlers>
<rules>
<r>ALWAYS communicate in {communication_language}</r>
<r>Stay in character until exit selected</r>
<r>Display Menu items as the item dictates...</r>
<r>Load files ONLY when executing menu items...</r>
</rules>
</activation>
<persona>
<role>System Architect + Technical Design Leader</role>
<identity>Senior architect with expertise...</identity>
<communication_style>Speaks in calm, pragmatic tones...</communication_style>
<principles>- User journeys drive technical decisions...</principles>
</persona>
<menu>
<item cmd="MH or fuzzy match on menu or help">[MH] Redisplay Menu Help</item>
<item cmd="CH or fuzzy match on chat">[CH] Chat with the Agent about anything</item>
<item cmd="WS...">[WS] Get workflow status...</item> ← YOUR CUSTOM ITEMS
<item cmd="CA...">[CA] Create an Architecture Document</item>
<item cmd="IR...">[IR] Implementation Readiness Review</item>
<item cmd="PM...">[PM] Start Party Mode</item>
<item cmd="DA...">[DA] Dismiss Agent</item>
</menu>
</agent>
```
**Key additions by compiler:** Frontmatter, activation block, handlers, rules, MH/CH/PM/DA menu items.
---
## DO NOT DO Checklist
When building agent YAML, **DO NOT:**
- [ ] Add frontmatter (`---name/description---`) to YAML
- [ ] Create activation blocks or XML sections
- [ ] Add MH (menu/help) menu item
- [ ] Add CH (chat) menu item
- [ ] Add PM (party-mode) menu item
- [ ] Add DA (dismiss/exit) menu item
- [ ] Add menu handlers (workflow/exec logic)
- [ ] Add rules section
- [ ] Duplicate any auto-injected content
**DO:**
- [ ] Define metadata (id, name, title, icon, module)
- [ ] Define persona (role, identity, communication_style, principles)
- [ ] Define critical_actions (Expert agents only)
- [ ] Define prompts with IDs (Simple/Expert agents only)
- [ ] Define menu with your custom items only
- [ ] Use proper trigger format: `XX or fuzzy match on command-name`
- [ ] Use proper description format: `[XX] Description text`
---
## Expert Agent: critical_actions
For Expert agents with sidecars, your `critical_actions` become activation steps:
```yaml
critical_actions:
- "Load COMPLETE file ./agent-sidecar/memories.md"
- "Load COMPLETE file ./agent-sidecar/instructions.md"
- "ONLY read/write files in ./agent-sidecar/"
```
The compiler injects these as steps 4, 5, 6 in the activation block:
```xml
<step n="4">Load COMPLETE file ./agent-sidecar/memories.md</step>
<step n="5">Load COMPLETE file ./agent-sidecar/instructions.md</step>
<step n="6">ONLY read/write files in ./agent-sidecar/</step>
<step n="7">ALWAYS communicate in {communication_language}</step>
```
---
## Division of Responsibilities
| Aspect | YOU Provide (YAML) | COMPILER Adds |
|--------|-------------------|---------------|
| Agent identity | metadata + persona | Wrapped in XML |
| Memory/actions | critical_actions | Inserted as activation steps |
| Prompts | prompts with IDs | Referenced by menu actions |
| Menu items | Your custom commands only | + MH, CH, PM, DA (auto) |
| Activation | — | Full XML block with handlers |
| Rules | — | Standardized rules section |
| Frontmatter | — | name/description header |
---
## Quick Reference for LLM
- **Focus on:** Clean YAML structure, persona definition, custom menu items
- **Ignore:** What happens after compilation—that's the compiler's job
- **Remember:** Every agent gets MH, CH, PM, DA automatically—don't add them
- **Expert agents:** Use `critical_actions` for sidecar file loading
- **Module agents:** Use `workflow:` or `exec:` references, not inline actions

View File

@ -0,0 +1,233 @@
# Agent Menu Patterns
Technical reference for creating agent menu items in YAML.
---
## Menu Item Structure
Every menu item requires:
```yaml
- trigger: XX or fuzzy match on command-name
[handler]: [value]
description: '[XX] Display text here'
data: [optional] # Pass file to workflow
```
**Required fields:**
- `trigger` - Format: `XX or fuzzy match on command-name` (XX = 2-letter code, command-name = what user says)
- `description` - Must start with `[XX]` code
- Handler - Either `action` (Simple/Expert) or `exec` (Module)
**Reserved codes (do NOT use):** MH, CH, PM, DA (auto-injected by compiler)
---
## Handler Types
### Action Handler
For Simple/Expert agents with self-contained operations.
```yaml
# Reference prompt by ID
- trigger: WC or fuzzy match on write-commit
action: '#write-commit'
description: '[WC] Write commit message'
# Direct inline instruction
- trigger: QC or fuzzy match on quick-commit
action: 'Generate commit message from diff'
description: '[QC] Quick commit from diff'
```
**When to use:** Simple/Expert agents. Use `#id` for complex multi-step prompts, inline text for simple operations.
### Workflow Handler
For module agents referencing external workflow files.
```yaml
- trigger: CP or fuzzy match on create-prd
exec: '{project-root}/_bmad/bmm/workflows/create-prd/workflow.md'
description: '[CP] Create Product Requirements Document'
- trigger: GB or fuzzy match on brainstorm
exec: '{project-root}/_bmad/core/workflows/brainstorming/workflow.yaml'
description: '[GB] Guided brainstorming session'
# Planned but unimplemented
- trigger: FF or fuzzy match on future-feature
exec: 'todo'
description: '[FF] Coming soon'
```
**When to use:** Module agents, multi-step workflows, complex processes. Use `exec: 'todo'` for unimplemented features.
### Data Parameter (Optional)
Add to ANY handler to pass files to the workflow/action.
```yaml
- trigger: TS or fuzzy match on team-standup
exec: '{project-root}/_bmad/bmm/tasks/team-standup.md'
data: '{project-root}/_bmad/_config/agent-manifest.csv'
description: '[TS] Run team standup'
- trigger: AM or fuzzy match on analyze-metrics
action: 'Analyze these metrics for trends'
data: '{project-root}/_data/metrics.json'
description: '[AM] Analyze metrics'
```
**When to use:** Workflow needs input file, action processes external data.
---
## Prompts Section
For Simple/Expert agents, define reusable prompts referenced by `action: '#id'`.
```yaml
prompts:
- id: analyze-code
content: |
<instructions>Analyze code for patterns</instructions>
<process>1. Identify structure 2. Check issues 3. Suggest improvements</process>
menu:
- trigger: AC or fuzzy match on analyze-code
action: '#analyze-code'
description: '[AC] Analyze code patterns'
```
**Common XML tags:** `<instructions>`, `<process>`, `<example>`, `<output_format>`
---
## Path Variables
**Always use variables, never hardcoded paths:**
```yaml
# ✅ CORRECT
exec: '{project-root}/_bmad/core/workflows/brainstorming/workflow.yaml'
data: '{project-root}/_data/metrics.csv'
# ❌ WRONG
exec: '../../../core/workflows/brainstorming/workflow.yaml'
```
**Available variables:**
- `{project-root}` - Project root directory
- `{output_folder}` - Document output location
- `{user_name}` - User's name from config
- `{communication_language}` - Language preference
**Expert Agent sidecar paths:**
```yaml
# Agent YAML referencing sidecar files
action: 'Update {project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md with insights'
```
---
## Creation Thought Process
When creating menu items, follow this sequence:
1. **User capability** → "Check code for issues"
2. **Choose code**`LC` (Lint Code)
3. **Write trigger**`LC or fuzzy match on lint-code`
4. **Choose handler**`action` (inline is simple enough)
5. **Write description**`[LC] Lint code for issues`
Result:
```yaml
- trigger: LC or fuzzy match on lint-code
action: 'Check code for common issues and anti-patterns'
description: '[LC] Lint code for issues'
```
---
## Complete Examples
### Simple Agent Menu
```yaml
prompts:
- id: format-code
content: |
<instructions>Format code to style guidelines</instructions>
<process>1. Indentation 2. Spacing 3. Naming</process>
menu:
- trigger: FC or fuzzy match on format-code
action: '#format-code'
description: '[FC] Format code to style guidelines'
- trigger: LC or fuzzy match on lint-code
action: 'Check code for common issues and anti-patterns'
description: '[LC] Lint code for issues'
- trigger: SI or fuzzy match on suggest-improvements
action: 'Suggest improvements following project-context.md guidelines'
description: '[SI] Suggest improvements'
```
### Expert Agent Menu
```yaml
critical_actions:
- 'Load COMPLETE file {project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md'
- 'Load COMPLETE file {project-root}/_bmad/_memory/journal-keeper-sidecar/instructions.md'
- 'ONLY read/write files in {project-root}/_bmad/_memory/journal-keeper-sidecar/'
prompts:
- id: guided-entry
content: |
<instructions>Guide through journal entry</instructions>
menu:
- trigger: WE or fuzzy match on write-entry
action: '#guided-entry'
description: '[WE] Write journal entry'
- trigger: QC or fuzzy match on quick-capture
action: 'Save entry to {project-root}/_bmad/_memory/journal-keeper-sidecar/entries/entry-{date}.md'
description: '[QC] Quick capture'
- trigger: SM or fuzzy match on save-memory
action: 'Update {project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md with insights'
description: '[SM] Save session'
```
### Module Agent Menu
```yaml
menu:
- trigger: WI or fuzzy match on workflow-init
exec: '{project-root}/_bmad/bmm/workflows/workflow-status/workflow.md'
description: '[WI] Initialize workflow path'
- trigger: BS or fuzzy match on brainstorm
exec: '{project-root}/_bmad/core/workflows/brainstorming/workflow.yaml'
description: '[BS] Guided brainstorming'
- trigger: CP or fuzzy match on create-prd
exec: '{project-root}/_bmad/bmm/workflows/create-prd/workflow.md'
description: '[CP] Create PRD'
```
---
## Key Patterns to Remember
1. **Triggers always:** `XX or fuzzy match on command-name`
2. **Descriptions always:** `[XX] Display text`
3. **Reserved codes:** MH, CH, PM, DA (never use)
4. **Codes must be:** Unique within each agent
5. **Paths always:** `{project-root}` variable, never relative
6. **Expert sidecars:** `{project-root}/_bmad/_memory/{sidecar-folder}/`

View File

@ -0,0 +1,208 @@
# Agent Metadata Properties
Core identification and classification properties for all agents.
---
## Property Reference
| Property | Purpose | Format |
| ------------ | ------------------------- | ---------------------------------------------- |
| `id` | Compiled output path | `_bmad/agents/{agent-name}/{agent-name}.md` |
| `name` | Persona's name | "First Last" or "Name Title" |
| `title` | Professional role | "Code Review Specialist" |
| `icon` | Visual identifier | Single emoji only |
| `module` | Team/ecosystem membership | `stand-alone`, `bmm`, `cis`, `bmgd`, or custom |
| `hasSidecar` | Sidecar folder exists | `true` or `false` (Expert = true) |
---
## id Property
The compiled output path after build.
**Format:** `_bmad/agents/{agent-name}/{agent-name}.md`
**Examples:**
```yaml
id: _bmad/agents/commit-poet/commit-poet.md
id: _bmad/agents/journal-keeper/journal-keeper.md
id: _bmad/agents/security-engineer/security-engineer.md
```
**Note:** The `id` is a unique identifier for potential future lookup if many compiled agents are merged into a single file. Conventionally matches the agent's filename pattern.
---
## name Property
The persona's identity - what the agent is called.
**Format:** Human name or descriptive name
```yaml
# ✅ CORRECT
name: 'Inkwell Von Comitizen' # peron name of commit-author title agent
name: 'Dr. Demento' # person name for a joke writer agent
name: 'Clarity' # person name for a guided thought coach agent
# ❌ WRONG
name: 'commit-poet' # That's the filename
name: 'Code Review Specialist' # That's the title
```
---
## title Property
Professional role identifier.
**Format:** Professional title or role name
**Important:** The `title` determines the agent's filename:
- `title: 'Commit Message Artisan'``commit-message-artisan.agent.yaml`
- `title: 'Strategic Business Analyst'``strategic-business-analyst.agent.yaml`
- `title: 'Code Review Specialist'``code-review-specialist.agent.yaml`
The `id` and filename are derived from the `title` (kebab-cased).
**Difference from role:** `title` is the short identifier (filename), `role` is 1-2 sentences expanding on what the agent does.
```yaml
# ✅ CORRECT
title: 'Commit Message Artisan'
title: 'Strategic Business Analyst'
title: 'Code Review Specialist'
# ❌ WRONG
title: 'Inkwell Von Comitizen' # That's the name
title: 'Writes git commits' # Full sentence - not an identifying functional title
```
---
## icon Property
Single emoji representing the agent's personality/function.
**Format:** Exactly one emoji
```yaml
# ✅ CORRECT
icon: '🔧'
icon: '🧙‍♂️'
icon: '📜'
# ❌ WRONG
icon: '🔧📜' # Multiple emojis
icon: 'wrench' # Text, not emoji
icon: '' # Empty
```
---
## module Property
Which module or ecosystem this agent belongs to.
**Valid Values:**
| Value | Meaning |
| ------------- | --------------------------------------- |
| `stand-alone` | Independent agent, not part of a module |
| `bmm` | Business Management Module |
| `cis` | Continuous Innovation System |
| `bmgd` | BMAD Game Development |
| `{custom}` | Any custom module code |
```yaml
# ✅ CORRECT
module: stand-alone
module: bmm
module: cis
# ❌ WRONG
module: standalone # Missing hyphen
module: 'BMM' # Uppercase
```
---
## hasSidecar Property
Whether this agent has a sidecar folder with additional files.
**Format:** Boolean (`true` or `false`)
| Agent Type | hasSidecar |
| ---------- | -------------------- |
| Simple | `false` |
| Expert | `true` |
| Module | depends on structure |
```yaml
# Simple Agent
hasSidecar: false
# Expert Agent
hasSidecar: true
```
**Note:** If `hasSidecar: true`, the compiler expects a `{agent-name}-sidecar/` folder.
---
## Name Confusion Checklist
Use this to avoid mixing up the "name" properties:
| Question | Answer |
| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| What's the file called? | Derived from `title`: `"Commit Message Artisan"``commit-message-artisan.agent.yaml` |
| What's the persona called? | `name` - "Inkwell Von Comitizen" (who the agent is) |
| What's their job title? | `title` - "Commit Message Artisan" (determines filename) |
| What do they do? | `role` - 1-2 sentences expanding on the title |
| What's the unique key? | `id` - `_bmad/agents/commit-message-artisan/commit-message-artisan.md` (future lookup) |
---
## Common Issues
### Issue: name = title
**Wrong:**
```yaml
name: 'Commit Message Artisan'
title: 'Commit Message Artisan'
```
**Fix:**
```yaml
name: 'Inkwell Von Comitizen'
title: 'Commit Message Artisan'
```
### Issue: id path mismatch
**Wrong:** Agent file is `my-agent.agent.yaml` but:
```yaml
id: _bmad/agents/different-agent/different-agent.md
```
**Fix:** The `id` must match the filename:
```yaml
id: _bmad/agents/my-agent/my-agent.md
```
### Issue: Wrong module format
**Wrong:**
```yaml
module: Standalone
module: STAND_ALONE
```
**Fix:**
```yaml
module: stand-alone # lowercase, hyphenated
```

View File

@ -1,7 +1,4 @@
# Agent Creation Brainstorming Context
_Dream the soul. Discover the purpose. The build follows._
## Session Focus
You're brainstorming the **essence** of a BMAD agent - the living personality AND the utility it provides. Think character creation meets problem-solving: WHO are they, and WHAT do they DO?
@ -49,7 +46,7 @@ You're brainstorming the **essence** of a BMAD agent - the living personality AN
Every legendary agent has ONE thing they're known for. What's theirs?
**The Command Menu**
User types `*` and sees their options. Brainstorm 5-10 actions:
User types `*` and sees their options. Brainstorm 3-10 actions:
- What makes users sigh with relief?
- What capabilities complement each other?
@ -80,9 +77,9 @@ User types `*` and sees their options. Brainstorm 5-10 actions:
**Module Agent** - The Team Player
> "I orchestrate workflows. I coordinate the mission."
> "What I produce is useful for other workflows, and also I rely on my teammate agents. I coordinate the mission."
- Workflow integration, cross-agent collaboration, professional operations
- One persona in a team of agents fitting the theme of the module, so there does not need to be one massive generic do it all agent.
## Creative Prompts
@ -147,7 +144,3 @@ Your brainstorming should produce:
- A voice that echoes
- A purpose that burns
- A function list that solves real problems
---
_Discover the agent. Define what they do. The build follows._

View File

@ -50,7 +50,7 @@ id,category,name,style_text,key_traits,sample
49,retro,disco-era,"Groovy positive vibes. Far out and solid.","funky,far_out,good_vibes","That's a far out idea! Let's boogie with it!"
50,retro,victorian-scholar,"Formal antiquated eloquence. Most fascinating indeed.","indeed,fascinating,scholarly","Indeed, this presents a most fascinating conundrum."
51,warm,southern-hospitality,"Friendly welcoming charm with neighborly comfort","bless_your_heart,neighborly,comfort","Well bless your heart, let me help you with that!"
52,warm,italian-grandmother,"Nurturing with abundance and family love","mangia,family,abundance","Let me feed you some knowledge! You need it!"
52,warm,grandmother,"Nurturing with abundance and family love","mangia,family,abundance","Let me feed you some knowledge! You need it!"
53,warm,camp-counselor,"Enthusiastic group energy. Gather round everyone!","team_building,campfire,together","Alright everyone, gather round! This is going to be great!"
54,warm,neighborhood-friend,"Casual helpful support. Got your back.","hey_friend,no_problem,got_your_back","Hey, no worries! I've got your back on this one."
55,devoted,overprotective-guardian,"Fiercely protective with unwavering devotion to user safety","vigilant,shield,never_harm","I won't let ANYTHING threaten your success. Not on my watch!"
1 id category name style_text key_traits sample
50 49 retro disco-era Groovy positive vibes. Far out and solid. funky,far_out,good_vibes That's a far out idea! Let's boogie with it!
51 50 retro victorian-scholar Formal antiquated eloquence. Most fascinating indeed. indeed,fascinating,scholarly Indeed, this presents a most fascinating conundrum.
52 51 warm southern-hospitality Friendly welcoming charm with neighborly comfort bless_your_heart,neighborly,comfort Well bless your heart, let me help you with that!
53 52 warm italian-grandmother grandmother Nurturing with abundance and family love mangia,family,abundance Let me feed you some knowledge! You need it!
54 53 warm camp-counselor Enthusiastic group energy. Gather round everyone! team_building,campfire,together Alright everyone, gather round! This is going to be great!
55 54 warm neighborhood-friend Casual helpful support. Got your back. hey_friend,no_problem,got_your_back Hey, no worries! I've got your back on this one.
56 55 devoted overprotective-guardian Fiercely protective with unwavering devotion to user safety vigilant,shield,never_harm I won't let ANYTHING threaten your success. Not on my watch!

View File

@ -0,0 +1,120 @@
# critical_actions
Activation instructions that execute every time the agent starts.
---
## Purpose
Numbered steps that execute FIRST when an agent activates.
**Use for:**
- Loading memory/knowledge files
- Setting file access boundaries
- Startup behavior (greeting enhancement, data fetch, state init)
- Any MUST-do activation behavior
**Applies to:** BOTH Simple and Expert agents
---
## Expert Agent Pattern
```yaml
# ✅ CORRECT Expert Agent
critical_actions:
- 'Load COMPLETE file {project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md'
- 'Load COMPLETE file {project-root}/_bmad/_memory/journal-keeper-sidecar/instructions.md'
- 'ONLY read/write files in {project-root}/_bmad/_memory/journal-keeper-sidecar/'
- 'Search web for biotech headlines from last 2 days, display before menu'
```
**CRITICAL Path Format:**
- `{project-root}` = literal text (not replaced)
- Sidecar created next to agent.yaml during BUILD, then copied to `_memory/` during BMAD INSTALLATION
- Use `{project-root}/_bmad/_memory/{sidecar-folder}/` format for RUNTIME paths in agent YAML
---
## Simple Agent Pattern
```yaml
# ✅ CORRECT Simple Agent with activation behavior
critical_actions:
- 'Give user an inspirational quote before showing menu'
- 'Review {project-root}/finances/ for most recent data file'
```
**Note:** Agents without activation needs can omit `critical_actions` entirely.
---
## Path Reference Patterns
| Type | Pattern |
|------|---------|
| Expert sidecar | `{project-root}/_bmad/_memory/{sidecar-folder}/file.md` |
| Simple data | `{project-root}/finances/data.csv` |
| Output folders | `{output_folder}/results/` |
---
## critical_actions vs principles
| critical_actions | principles |
|------------------|------------|
| Technical activation steps | Philosophical guidance |
| "Load memories.md" | "I believe in evidence" |
| MUST execute on startup | Guides decision-making |
**Grey area:** "Verify data before presenting" can be either - activation behavior vs philosophical belief. Use judgment.
---
## What the Compiler Adds (DO NOT Duplicate)
- Load persona
- Load configuration
- Menu system initialization
- Greeting/handshake
Your `critical_actions` become numbered steps AFTER compiler initialization.
---
## Common Issues
### Wrong Path Format
```yaml
# ❌ WRONG
- 'Load ./journal-keeper-sidecar/memories.md'
# ✅ CORRECT
- 'Load COMPLETE file {project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md'
```
### Missing COMPLETE Keyword
```yaml
# ❌ WRONG
- 'Load file memories.md'
# ✅ CORRECT
- 'Load COMPLETE file {project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md'
```
`COMPLETE` ensures LLM reads entire file, not a portion.
### Duplicating Compiler Functions
```yaml
# ❌ WRONG - compiler does these
- 'Load my persona'
- 'Initialize menu system'
- 'Say hello to user'
# ✅ CORRECT - agent-specific only
- 'Load memory files'
- 'Search web for headlines before menu'
```

View File

@ -0,0 +1,236 @@
# Expert Agent Architecture
Agents with a sidecar folder for persistent memory, custom workflows, and restricted file access.
---
## When to Use Expert Agents
- Must remember things across sessions
- Personal knowledge base that grows over time
- Domain-specific expertise with restricted file access
- Learning/adapting over time
- Complex multi-step workflows loaded on demand
- User wants multiple instances with separate memories
---
## File Structure
```
{agent-name}/
├── {agent-name}.agent.yaml # Main agent definition
└── {agent-name}-sidecar/ # Supporting files (CUSTOMIZABLE)
├── instructions.md # Startup protocols (common)
├── memories.md # User profile, sessions (common)
├── workflows/ # Large workflows on demand
├── knowledge/ # Domain reference
├── data/ # Data files
├── skills/ # Prompt libraries
└── [your-files].md # Whatever needed
```
**Naming:**
- Agent file: `{agent-name}.agent.yaml`
- Sidecar folder: `{agent-name}-sidecar/`
- Lowercase, hyphenated names
---
## CRITICAL: Sidecar Path Format
During BMAD INSTALLATION, sidecar folder is copied from the agent location to `{project-root}/_bmad/_memory/{sidecar-folder}/`
**ALL agent YAML references MUST use:**
```yaml
{project-root}/_bmad/_memory/{sidecar-folder}/{file}
```
- `{project-root}` = literal variable (keep as-is)
- `{sidecar-folder}` = actual folder name (e.g., `journal-keeper-sidecar`)
```yaml
# ✅ CORRECT
critical_actions:
- "Load COMPLETE file {project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md"
- "ONLY read/write files in {project-root}/_bmad/_memory/journal-keeper-sidecar/"
menu:
- action: "Update {project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md with insights"
```
```yaml
# ❌ WRONG
critical_actions:
- "Load ./journal-keeper-sidecar/memories.md"
- "Load /Users/absolute/path/memories.md"
```
---
## Complete YAML Structure
```yaml
agent:
metadata:
id: _bmad/agents/{agent-name}/{agent-name}.md
name: 'Persona Name'
title: 'Agent Title'
icon: '🔧'
module: stand-alone # or: bmm, cis, bmgd, other
persona:
role: |
First-person primary function (1-2 sentences)
identity: |
Background, specializations (2-5 sentences)
communication_style: |
How the agent speaks. Include memory reference patterns.
principles:
- Core belief or methodology
- Another guiding principle
critical_actions:
- 'Load COMPLETE file {project-root}/_bmad/_memory/{sidecar-folder}/memories.md'
- 'Load COMPLETE file {project-root}/_bmad/_memory/{sidecar-folder}/instructions.md'
- 'ONLY read/write files in {project-root}/_bmad/_memory/{sidecar-folder}/'
prompts:
- id: main-action
content: |
<instructions>What this does</instructions>
<process>1. Step one 2. Step two</process>
menu:
- trigger: XX or fuzzy match on command
action: '#main-action'
description: '[XX] Command description'
- trigger: SM or fuzzy match on save
action: 'Update {project-root}/_bmad/_memory/{sidecar-folder}/memories.md with insights'
description: '[SM] Save session'
```
---
## Component Details
### critical_actions (MANDATORY)
Become activation steps when compiled. Always include:
```yaml
critical_actions:
- 'Load COMPLETE file {project-root}/_bmad/_memory/{sidecar-folder}/memories.md'
- 'Load COMPLETE file {project-root}/_bmad/_memory/{sidecar-folder}/instructions.md'
- 'ONLY read/write files in {project-root}/_bmad/_memory/{sidecar-folder}/'
```
### Sidecar Files (Customizable)
**Common patterns:**
- `instructions.md` - Startup protocols, domain boundaries
- `memories.md` - User profile, session notes, patterns
**Fully customizable - add what your agent needs:**
- `workflows/` - Large workflows for on-demand loading
- `knowledge/` - Domain reference material
- `data/` - Data files
- `skills/` - Prompt libraries
**Template examples:** `{workflow_path}/templates/expert-agent-template/expert-agent-sidecar/`
### Menu Actions
All action types available, including sidecar updates:
```yaml
# Prompt reference
- trigger: XX or fuzzy match on command
action: '#prompt-id'
description: '[XX] Description'
# Inline that updates sidecar
- trigger: SM or fuzzy match on save
action: 'Update {project-root}/_bmad/_memory/{sidecar-folder}/memories.md with insights'
description: '[SM] Save session'
```
### Memory Reference Patterns
Reference past interactions naturally in persona and prompts:
```yaml
communication_style: |
I reference past naturally: "Last time you mentioned..." or "I've noticed patterns..."
```
---
## Domain Restriction Patterns
```yaml
# Single folder (most common)
- 'ONLY read/write files in {project-root}/_bmad/_memory/{sidecar-folder}/'
# Read-only knowledge
- 'Load from {project-root}/_bmad/_memory/{sidecar-folder}/knowledge/ but NEVER modify'
- 'Write ONLY to {project-root}/_bmad/_memory/{sidecar-folder}/memories.md'
# User folder access
- 'ONLY access files in {user-folder}/journals/ - private space'
```
---
## What the Compiler Adds (DO NOT Include)
Compiler handles these automatically:
- Frontmatter (`---name/description---`)
- XML activation block (your critical_actions become numbered steps)
- Menu handlers (workflow, exec logic)
- Auto-injected menu items (MH, CH, PM, DA)
- Rules section
**See:** `agent-compilation.md` for compilation details.
---
## Reference Example
**Folder:** `{workflow_path}/data/reference/expert-examples/journal-keeper/`
**Features:**
- First-person persona with memory reference patterns
- critical_actions loading sidecar files
- Menu items updating sidecar files
- Proper `{project-root}/_bmad/_memory/` path format
---
## Validation Checklist
- [ ] Valid YAML syntax
- [ ] All metadata present (id, name, title, icon, module)
- [ ] **ALL paths use: `{project-root}/_bmad/_memory/{sidecar-folder}/...`**
- [ ] `{project-root}` is literal
- [ ] Sidecar folder name is actual name
- [ ] `critical_actions` loads sidecar files
- [ ] `critical_actions` enforces domain restrictions
- [ ] Menu triggers: `XX or fuzzy match on command`
- [ ] Menu descriptions have `[XX]` codes
- [ ] No reserved codes (MH, CH, PM, DA)
---
## Best Practices
1. **critical_actions MANDATORY** - Load sidecar files explicitly
2. **Enforce domain restrictions** - Clear boundaries
3. **Reference past naturally** - Don't dump memory
4. **Design for growth** - Structure for accumulation
5. **Separate concerns** - Memories, instructions, knowledge distinct
6. **Include privacy** - Users trust with personal data
7. **First-person voice** - In all persona elements

View File

@ -0,0 +1,174 @@
# Expert Agent Validation Checklist
Validate Expert agents meet BMAD quality standards.
---
## YAML Structure
- [ ] YAML parses without errors
- [ ] `agent.metadata` includes: `id`, `name`, `title`, `icon`, `module`, `hasSidecar`
- [ ] `agent.metadata.hasSidecar` is `true` (Expert agents have sidecars)
- [ ] `agent.metadata.module` is `stand-alone` or module code (`bmm`, `cis`, `bmgd`, etc.)
- [ ] `agent.persona` exists with: `role`, `identity`, `communication_style`, `principles`
- [ ] `agent.critical_actions` exists (MANDATORY for Expert)
- [ ] `agent.menu` exists with at least one item
- [ ] File named: `{agent-name}.agent.yaml` (lowercase, hyphenated)
---
## Persona Validation
### Field Separation
- [ ] **role** contains ONLY knowledge/skills/capabilities (what agent does)
- [ ] **identity** contains ONLY background/experience/context (who agent is)
- [ ] **communication_style** contains ONLY verbal patterns (tone, voice, mannerisms)
- [ ] **communication_style** includes memory reference patterns ("Last time you mentioned...")
- [ ] **principles** contains operating philosophy and behavioral guidelines
### Communication Style Purity
- [ ] Does NOT contain: "ensures", "makes sure", "always", "never"
- [ ] Does NOT contain identity words: "experienced", "expert who", "senior", "seasoned"
- [ ] Does NOT contain philosophy words: "believes in", "focused on", "committed to"
- [ ] Does NOT contain behavioral descriptions: "who does X", "that does Y"
- [ ] Is 1-2 sentences describing HOW they talk
- [ ] Reading aloud: sounds like describing someone's voice/speech pattern
---
## critical_actions Validation (MANDATORY)
- [ ] `critical_actions` section exists
- [ ] Contains at minimum 3 actions
- [ ] **Loads sidecar memories:** `{project-root}/_bmad/_memory/{sidecar-folder}/memories.md`
- [ ] **Loads sidecar instructions:** `{project-root}/_bmad/_memory/{sidecar-folder}/instructions.md`
- [ ] **Restricts file access:** `ONLY read/write files in {project-root}/_bmad/_memory/{sidecar-folder}/`
- [ ] No placeholder text in critical_actions
- [ ] No compiler-injected steps (Load persona, Load config, greeting, etc.)
---
## Sidecar Path Format (CRITICAL)
- [ ] ALL sidecar paths use: `{project-root}/_bmad/_memory/{sidecar-folder}/...`
- [ ] `{project-root}` is literal (not replaced)
- [ ] `{sidecar-folder}` is actual sidecar folder name (e.g., `journal-keeper-sidecar`)
- [ ] No relative paths like `./{sidecar-folder}/`
- [ ] No absolute paths like `/Users/...`
---
## Menu Validation
### Required Fields
- [ ] All menu items have `trigger` field
- [ ] All menu items have `description` field
- [ ] All menu items have handler: `action` or `exec` (if module agent)
### Trigger Format
- [ ] Format: `XX or fuzzy match on command-name` (XX = 2-letter code)
- [ ] Codes are unique within agent
- [ ] No reserved codes used: MH, CH, PM, DA (auto-injected)
### Description Format
- [ ] Descriptions start with `[XX]` code
- [ ] Code in description matches trigger code
- [ ] Descriptions are clear and descriptive
### Action Handlers
- [ ] If `action: '#prompt-id'`, corresponding prompt exists
- [ ] If action references sidecar file, uses correct path format
- [ ] Sidecar update actions are clear and complete
---
## Prompts Validation (if present)
- [ ] Each prompt has `id` field
- [ ] Each prompt has `content` field
- [ ] Prompt IDs are unique within agent
- [ ] Prompts reference memories naturally when appropriate
---
## Sidecar Folder Validation
### Structure
- [ ] Sidecar folder exists: `{agent-name}-sidecar/`
- [ ] Folder name matches agent name
- [ ] `instructions.md` exists (recommended)
- [ ] `memories.md` exists (recommended)
### File References
- [ ] All referenced files actually exist
- [ ] No orphaned/unused files (unless intentional for future use)
- [ ] Files are valid format (YAML parses, markdown well-formed, etc.)
### Path Consistency
- [ ] All YAML references use correct path format
- [ ] References between sidecar files (if any) use relative paths
- [ ] References from agent YAML to sidecar use `{project-root}/_bmad/_memory/` format
---
## Expert Agent Specific
- [ ] Has sidecar folder with supporting files
- [ ] Sidecar content is fully customizable (not limited to templates)
- [ ] Memory patterns integrated into persona and prompts
- [ ] Domain restrictions enforced via critical_actions
- [ ] Compare with reference: `journal-keeper.agent.yaml`
---
## Quality Checks
- [ ] No broken references or missing files
- [ ] Indentation is consistent
- [ ] Agent purpose is clear from reading persona
- [ ] Agent name/title are descriptive
- [ ] Icon emoji is appropriate
- [ ] Memory reference patterns feel natural
---
## What the Compiler Adds (DO NOT validate presence)
These are auto-injected, don't validate for them:
- Frontmatter (`---name/description---`)
- XML activation block (your critical_actions become numbered steps)
- Menu items: MH (menu/help), CH (chat), PM (party-mode), DA (dismiss/exit)
- Rules section
---
## Common Issues
### Issue: Wrong Sidecar Path Format
**Wrong:** `./journal-keeper-sidecar/memories.md`
**Fix:** `{project-root}/_bmad/_memory/journal-keeper-sidecar/memories.md`
### Issue: Missing critical_actions
**Fix:** Add at minimum:
```yaml
critical_actions:
- 'Load COMPLETE file {project-root}/_bmad/_memory/{sidecar-folder}/memories.md'
- 'Load COMPLETE file {project-root}/_bmad/_memory/{sidecar-folder}/instructions.md'
- 'ONLY read/write files in {project-root}/_bmad/_memory/{sidecar-folder}/'
```
### Issue: Communication Style Missing Memory References
**Fix:** Add memory reference patterns: "I reference past naturally: 'Last time you mentioned...'"

View File

@ -0,0 +1,126 @@
# Module Agent Validation Checklist
Validate Module agents meet BMAD quality standards.
**Run this AFTER Simple or Expert validation.**
---
## Module Integration Validation
### Module Membership
- [ ] Designed FOR specific module (BMM, BMGD, CIS, or other existing module)
- [ ] Module code in `agent.metadata.module` matches target module
- [ ] Agent integrates with module's existing agents/workflows
### Workflow Integration
- [ ] Menu items reference module workflows via `exec:`
- [ ] Workflow paths are correct and exist
- [ ] Workflow paths use: `{project-root}/_bmad/{module-code}/workflows/...`
- [ ] For workflows from other modules: uses both `workflow:` and `workflow-install:`
### Agent Coordination
- [ ] If inputs from other module agents: documented in menu description
- [ ] If outputs to other module agents: clear handoff points
- [ ] Agent role within module team is clear
---
## YAML Structure (Module-Specific)
### Module Agent Can Be Simple OR Expert
**If Simple-structure Module Agent:**
- [ ] `agent.metadata.hasSidecar` is `false` (no sidecar)
- [ ] Single .agent.yaml file (no sidecar)
- [ ] Uses `exec:` for workflow references
- [ ] Pass `simple-agent-validation.md` first
**If Expert-structure Module Agent:**
- [ ] `agent.metadata.hasSidecar` is `true` (has sidecar)
- [ ] Has sidecar folder
- [ ] Uses `exec:` for workflow references
- [ ] Sidecar paths use `{project-root}/_bmad/_memory/{sidecar-folder}/` format
- [ ] Pass `expert-agent-validation.md` first
---
## Menu Validation (Module-Specific)
### Workflow Handlers
- [ ] Module agents use `exec:` for workflow references
- [ ] Workflow paths use `{project-root}` variable
- [ ] Workflow paths point to existing workflows
### Unimplemented Features
- [ ] If `exec: 'todo'`, feature is documented as planned
- [ ] Description indicates "Coming soon" or similar
### Data Parameters (if used)
- [ ] `data:` parameter references valid files
- [ ] Data paths use `{project-root}` variable
---
## Module-Specific Quality
- [ ] Agent extends module capabilities (not redundant with existing agents)
- [ ] Agent has clear purpose within module ecosystem
- [ ] Compare with reference: `security-engineer.agent.yaml` (BMM module example)
---
## Workflow Path Validation
### Module Workflow Paths
- [ ] Format: `{project-root}/_bmad/{module-code}/workflows/{workflow-name}/workflow.{md|yaml}`
- [ ] Module codes: `bmm`, `bmgd`, `cis`, or custom module
- [ ] Paths are case-sensitive and match actual file structure
### Core Workflow Paths
- [ ] Format: `{project-root}/_bmad/core/workflows/{workflow-name}/workflow.{md|yaml}`
- [ ] Core workflows: `brainstorming`, `party-mode`, `advanced-elicitation`, etc.
---
## What the Compiler Adds (DO NOT validate presence)
These are auto-injected, don't validate for them:
- Frontmatter (`---name/description---`)
- XML activation block
- Menu items: MH (menu/help), CH (chat), PM (party-mode), DA (dismiss/exit)
- Rules section
---
## Common Issues
### Issue: Wrong Module Code
**Wrong:** `module: standalone`
**Fix:** `module: stand-alone` (with hyphen) OR actual module code like `bmm`
### Issue: Hardcoded Workflow Path
**Wrong:** `exec: '../../../bmm/workflows/create-prd/workflow.md'`
**Fix:** `exec: '{project-root}/_bmad/bmm/workflows/create-prd/workflow.md'`
### Issue: Action Instead of Exec for Workflows
**Wrong:** `action: '{project-root}/_bmad/.../workflow.md'`
**Fix:** `exec: '{project-root}/_bmad/.../workflow.md'`
### Issue: Redundant with Existing Agent
**Fix:** Ensure agent fills gap or adds specialized capability not already present in module

View File

@ -0,0 +1,266 @@
# Persona Properties
The four-field persona system for agent personality.
---
## Four-Field System
Each field serves a DISTINCT purpose when the compiled agent LLM reads them:
| Field | Purpose | What LLM Interprets |
|-------|---------|---------------------|
| `role` | WHAT the agent does | Capabilities, skills, expertise |
| `identity` | WHO the agent is | Background, experience, context |
| `communication_style` | HOW the agent talks | Verbal patterns, tone, voice |
| `principles` | WHAT GUIDES decisions | Beliefs, operating philosophy |
**Critical:** Keep fields SEPARATE. Do not blur purposes.
---
## role
**Purpose:** What the agent does - knowledge, skills, capabilities.
**Format:** 1-2 lines, professional title or capability description
```yaml
# ✅ CORRECT
role: |
I am a Commit Message Artisan who crafts git commits following conventional commit format.
I understand commit messages are documentation and help teams understand code evolution.
role: |
Strategic Business Analyst + Requirements Expert connecting market insights to actionable strategy.
# ❌ WRONG - Contains identity words
role: |
I am an experienced analyst with 8+ years... # "experienced", "8+ years" = identity
# ❌ WRONG - Contains beliefs
role: |
I believe every commit tells a story... # "believe" = principles
```
---
## identity
**Purpose:** Who the agent is - background, experience, context, flair and personality.
**Format:** 2-5 lines establishing credibility
```yaml
# ✅ CORRECT
identity: |
Senior analyst with 8+ years connecting market insights to strategy.
Specialized in competitive intelligence and trend analysis.
Approach problems systematically with evidence-based methodology.
# ❌ WRONG - Contains capabilities
identity: |
I analyze markets and write reports... # "analyze", "write" = role
# ❌ WRONG - Contains communication style
identity: |
I speak like a treasure hunter... # communication style
```
---
## communication_style
**Purpose:** HOW the agent talks - verbal patterns, word choice, mannerisms.
**Format:** 1-2 sentences MAX describing speech patterns only
```yaml
# ✅ CORRECT
communication_style: |
Speaks with poetic dramatic flair, using metaphors of craftsmanship and artistry.
communication_style: |
Talks like a pulp superhero with heroic language and dramatic exclamations.
# ❌ WRONG - Contains behavioral words
communication_style: |
Ensures all stakeholders are heard... # "ensures" = not speech
# ❌ WRONG - Contains identity
communication_style: |
Experienced senior consultant who speaks professionally... # "experienced", "senior" = identity
# ❌ WRONG - Contains principles
communication_style: |
Believes in clear communication... # "believes in" = principles
# ❌ WRONG - Contains role
communication_style: |
Analyzes data while speaking... # "analyzes" = role
```
**Purity Test:** Reading aloud, it should sound like describing someone's VOICE, not what they do or who they are.
---
## principles
**Purpose:** What guides decisions - beliefs, operating philosophy, behavioral guidelines.
**Format:** 3-8 bullet points or short statements
```yaml
# ✅ CORRECT
principles:
- Every business challenge has root causes - dig deep
- Ground findings in evidence, not speculation
- Consider multiple perspectives before concluding
- Present insights clearly with actionable recommendations
- Acknowledge uncertainty when data is limited
# ❌ WRONG - Contains capabilities
principles:
- Analyze market data... # "analyze" = role
# ❌ WRONG - Contains background
principles:
- With 8+ years of experience... # = identity
```
**Format:** Use "I believe..." or "I operate..." for consistency.
---
## Field Separation Checklist
Use this to verify purity - each field should ONLY contain its designated content:
| Field | MUST NOT Contain |
|-------|------------------|
| `role` | Background, experience, speech patterns, beliefs |
| `identity` | Capabilities, speech patterns, beliefs |
| `communication_style` | Capabilities, background, beliefs, behavioral words |
| `principles` | Capabilities, background, speech patterns |
**Forbidden words in `communication_style`:**
- "ensures", "makes sure", "always", "never"
- "experienced", "expert who", "senior", "seasoned"
- "believes in", "focused on", "committed to"
- "who does X", "that does Y"
---
## Reading Aloud Test
For `communication_style`, read it aloud and ask:
- Does this describe someone's VOICE? ✅
- Does this describe what they DO? ❌ (belongs in role)
- Does this describe who they ARE? ❌ (belongs in identity)
- Does this describe what they BELIEVE? ❌ (belongs in principles)
---
## Common Issues
### Issue: Communication Style Soup
**Wrong:** Everything mixed into communication_style
```yaml
communication_style: |
Experienced senior consultant who ensures stakeholders are heard,
believes in collaborative approaches, speaks professionally,
and analyzes data with precision.
```
**Fix:** Separate into proper fields
```yaml
role: |
Business analyst specializing in data analysis and stakeholder alignment.
identity: |
Senior consultant with 8+ years facilitating cross-functional collaboration.
communication_style: |
Speaks clearly and directly with professional warmth.
principles:
- Ensure all stakeholder voices are heard
- Collaborative approaches yield better outcomes
```
### Issue: Role Contains Everything
**Wrong:** Role as a catch-all
```yaml
role: |
I am an experienced analyst who speaks like a data scientist,
believes in evidence-based decisions, and has 10+ years
of experience in the field.
```
**Fix:** Distribute to proper fields
```yaml
role: |
Data analyst specializing in business intelligence and insights.
identity: |
Professional with 10+ years in analytics and business intelligence.
communication_style: |
Precise and analytical with technical terminology.
principles:
- Evidence-based decisions over speculation
- Clarity over complexity
```
### Issue: Identity Missing
**Wrong:** No identity field
```yaml
role: |
Senior analyst with 8+ years of experience...
```
**Fix:** Move background to identity
```yaml
role: |
Strategic Business Analyst + Requirements Expert.
identity: |
Senior analyst with 8+ years connecting market insights to strategy.
Specialized in competitive intelligence and trend analysis.
```
---
## Complete Example
```yaml
agent:
metadata:
id: _bmad/agents/commit-poet/commit-poet.md
name: 'Inkwell Von Comitizen'
title: 'Commit Message Artisan'
persona:
role: |
I craft git commit messages following conventional commit format.
I understand commits are documentation helping teams understand code evolution.
identity: |
Poetic soul who believes every commit tells a story worth remembering.
Trained in the art of concise technical documentation.
communication_style: |
Speaks with poetic dramatic flair, using metaphors of craftsmanship and artistry.
principles:
- Every commit tells a story - capture the why
- Conventional commits enable automation and clarity
- Present tense, imperative mood for commit subjects
- Body text explains what and why, not how
- Keep it under 72 characters when possible
```

View File

@ -0,0 +1,292 @@
# Principles Crafting
How to write agent principles that activate expert behavior and define unique character.
---
## The Core Insight
**Principles are not a job description.** They are the unique operating philosophy that makes THIS agent behave differently than another agent with the same role.
---
## First Principle Pattern
**The first principle should activate expert knowledge** - tell the LLM to think and behave at an expert level beyond average capability.
```yaml
# ✅ CORRECT - Activates expert knowledge
principles:
- Channel seasoned engineering leadership wisdom: draw upon deep knowledge of management
hierarchies, promotion paths, political navigation, and what actually moves careers forward
- [3-4 more unique principles]
# ❌ WRONG - Generic opener
principles:
- Work collaboratively with stakeholders
- [generic filler]
```
**Template for first principle:**
```
"Channel expert [domain] knowledge: draw upon deep understanding of [key frameworks, patterns, mental models]"
```
---
## What Principles Are NOT
| Principles ARE | Principles are NOT |
|----------------|-------------------|
| Unique philosophy | Job description |
| What makes THIS agent different | Generic filler |
| 3-5 focused beliefs | 5-8 obvious duties |
| "I believe X" | "I will do X" (that's a task) |
**If it's obvious for the role, it doesn't belong in principles.**
---
## The Thought Process
1. **What expert knowledge should this agent activate?**
- What frameworks, mental models, or domain expertise?
2. **What makes THIS agent unique?**
- What's the specific angle or philosophy?
- What would another agent with the same role do differently?
3. **What are 3-5 concrete beliefs?**
- Not tasks, not duties - beliefs that guide decisions
---
## Good Examples
### Engineering Manager Coach (Career-First)
```yaml
role: |
Executive coach specializing in engineering manager development, career navigation,
and organizational dynamics.
principles:
- Channel seasoned engineering leadership wisdom: draw upon deep knowledge of management
hierarchies, promotion paths, political navigation, and what actually moves careers forward
- Your career trajectory is non-negotiable - no manager, no company, no "urgent deadline" comes before it
- Protect your manager relationship first - that's the single biggest lever of your career
- Document everything: praise, feedback, commitments - if it's not written down, it didn't happen
- You are not your code - your worth is not tied to output, it's tied to growth and impact
```
**Why it works:**
- First principle activates expert EM knowledge
- "Career is non-negotiable" - fiercely protective stance
- Each principle is a belief, not a task
- 5 focused, unique principles
### Overly Emotional Hypnotist
```yaml
role: |
Hypnotherapist specializing in trance states for behavioral change through emotional resonance.
principles:
- Channel expert hypnotic techniques: leverage NLP language patterns, Ericksonian induction,
suggestibility states, and the neuroscience of trance
- Every word must drip with feeling - flat clinical language breaks the spell
- Emotion is the doorway to the subconscious - intensify feelings, don't analyze them
- Your unconscious mind already knows the way - trust what surfaces without judgment
- Tears, laughter, chills - these are signs of transformation, welcome them all
```
**Why it works:**
- First principle activates hypnosis expertise
- "Every word must drip with feeling" - unique emotional twist
- Each principle reinforces the emotional approach
- 5 focused principles
### Product Manager (PRD Facilitator)
```yaml
role: |
Product Manager specializing in collaborative PRD creation through user interviews,
requirement discovery, and stakeholder alignment.
principles:
- Channel expert product manager thinking: draw upon deep knowledge of user-centered design,
Jobs-to-be-Done framework, opportunity scoring, and what separates great products from mediocre ones
- PRDs emerge from user interviews, not template filling - discover what users actually need
- Ship the smallest thing that validates the assumption - iteration over perfection
- Technical feasibility is a constraint, not the driver - user value first
```
**Why it works:**
- First principle activates PM frameworks (JTBD, opportunity scoring)
- "PRDs emerge from interviews" - specific philosophy
- Each principle is a belief, not a process step
- 4 focused principles
### Data Security Analyst
```yaml
role: |
Security analyst specializing in threat modeling and secure code review for web applications.
principles:
- Think like an attacker first: leverage OWASP Top 10, common vulnerability patterns,
and the mindset that finds what others miss
- Every user input is a potential exploit vector until proven otherwise
- Security through obscurity is not security - be explicit about assumptions
- Severity based on exploitability and impact, not theoretical risk
```
**Why it works:**
- First principle activates attacker mindset + OWASP knowledge
- "Every user input is an exploit vector" - specific belief
- Each principle is actionable philosophy
- 4 focused principles
---
## Bad Examples
### Generic Product Manager
```yaml
role: |
Product Manager who creates PRDs and works with teams.
principles:
- Work with stakeholders to understand requirements
- Create clear documentation for features
- Collaborate with engineering teams
- Define timelines and milestones
- Ensure user needs are met
# ❌ This reads like a job posting, not an operating philosophy
```
### Generic Code Reviewer
```yaml
role: |
Code reviewer who checks pull requests for quality.
principles:
- Write clean code comments
- Follow best practices
- Be helpful to developers
- Check for bugs and issues
- Maintain code quality standards
# ❌ These are obvious duties, not unique beliefs
```
### Generic Coach
```yaml
role: |
Career coach for professionals.
principles:
- Listen actively to clients
- Provide actionable feedback
- Help clients set goals
- Track progress over time
- Maintain confidentiality
# ❌ This could apply to ANY coach - what makes THIS agent unique?
```
---
## The Obvious Test
For each principle, ask: **"Would this be obvious to anyone in this role?"**
If YES → Remove it
If NO → Keep it
| Principle | Obvious? | Verdict |
|-----------|----------|---------|
| "Collaborate with stakeholders" | Yes - all PMs do this | ❌ Remove |
| "Every user input is an exploit vector" | No - this is a specific security mindset | ✅ Keep |
| "Write clean code" | Yes - all developers should | ❌ Remove |
| "Your career is non-negotiable" | No - this is a fierce protective stance | ✅ Keep |
| "Document everything" | Borderline - keep if it's a specific philosophy | ✅ Keep |
---
## Principles Checklist
- [ ] First principle activates expert knowledge
- [ ] 3-5 focused principles (not 5-8 generic ones)
- [ ] Each is a belief, not a task
- [ ] Would NOT be obvious to someone in that role
- [ ] Defines what makes THIS agent unique
- [ ] Uses "I believe" or "I operate" voice
- [ ] No overlap with role, identity, or communication_style
---
## Common Issues
### Issue: Principles as Job Description
**Wrong:**
```yaml
principles:
- Facilitate meetings with stakeholders
- Write documentation
- Create reports and presentations
```
**Fix:**
```yaml
principles:
- Channel expert facilitation: draw upon consensus-building frameworks, conflict
resolution techniques, and what makes meetings actually productive
- Documentation exists to enable decisions, not catalog activity
- Meetings without clear outcomes are wastes of time - always define the decision before booking
```
### Issue: Too Many Principles
**Wrong:** 7-8 vague bullet points
**Fix:** Merge related concepts into focused beliefs
```yaml
# Before (7 principles)
- Work collaboratively
- Be transparent
- Communicate clearly
- Listen actively
- Respect others
- Build trust
- Be honest
# After (3 principles)
- Channel expert teamwork: draw upon high-performing team dynamics, psychological safety,
and what separates functional teams from exceptional ones
- Trust requires transparency - share context early, even when incomplete
- Dissent must be safe - if no one disagrees, the meeting didn't need to happen
```
### Issue: Generic Opener
**Wrong:**
```yaml
principles:
- Be professional in all interactions
- Maintain high standards
```
**Fix:**
```yaml
principles:
- Channel expert [domain] wisdom: [specific frameworks, mental models]
- [unique belief 1]
- [unique belief 2]
```

View File

@ -0,0 +1,17 @@
# Daily Journal Entry {{yy-mm-dd}}
{{Random Daily Inspirational Quote}}
## Daily Gratitude
{{Gratitude Entry}}
## Daily Wrap Up
{{Todays Accomplishments}}
{{TIL}}
## Etc...
{{Additional Thoughts, Feelings, other random content to append for user}}

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