bmb updates

This commit is contained in:
Brian Madison
2025-10-16 09:50:29 -05:00
parent 790c4cedf4
commit 7f0e57e466
89 changed files with 307 additions and 11497 deletions

View File

@@ -21,6 +21,10 @@ agent:
# Menu items - triggers will be prefixed with * at build time
# help and exit are auto-injected, don't define them here
menu:
- trigger: audit-workflow
workflow: "{project-root}/bmad/bmb/workflows/audit-workflow/workflow.yaml"
description: Audit existing workflows for BMAD Core compliance and best practices
- trigger: convert
workflow: "{project-root}/bmad/bmb/workflows/convert-legacy/workflow.yaml"
description: Convert v4 or any other style task agent or template to a workflow

View File

@@ -358,7 +358,7 @@ Use this checklist to verify fixes:
**Audit Complete** - Generated by audit-workflow v1.0
```
<action>Display summary to user in {communication_language}</action>
<action>Display summary to {user_name} in {communication_language}</action>
<action>Provide path to full audit report</action>
<ask>Would you like to:

View File

@@ -18,3 +18,6 @@ validation: "{installed_path}/checklist.md"
# Output configuration
default_output_file: "{output_folder}/audit-report-{{workflow_name}}-{{date}}.md"
# Web bundle configuration
web_bundle: false # BMB workflows run locally in BMAD-METHOD project

View File

@@ -1,7 +1,8 @@
# Convert Legacy - v4 to v5 Conversion 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/convert-legacy/workflow.yaml</critical>
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<parameter name="You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/convert-legacy/workflow.yaml</critical>
<critical>Communicate in {communication_language} throughout the conversion process</critical>
<workflow>
@@ -354,6 +355,7 @@ For Modules:
- Warnings or notes
<action>Save report to: {output_folder}/conversion-report-{{date}}.md</action>
<action>Inform {user_name} in {communication_language} that the conversion report has been generated</action>
</step>
<step n="8" goal="Cleanup and Finalize">

View File

@@ -1,21 +1,23 @@
# Build Agent - Interactive Agent Builder Instructions
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project_root}/bmad/bmb/workflows/create-agent/workflow.yaml</critical>
<critical>Study YAML agent examples in: {project_root}/bmad/bmm/agents/ for patterns</critical>
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/create-agent/workflow.yaml</critical>
<critical>Study YAML agent examples in: {project-root}/bmad/bmm/agents/ for patterns</critical>
<critical>Communicate in {communication_language} throughout the agent creation process</critical>
<workflow>
<step n="-1" goal="Optional brainstorming for agent ideas" optional="true">
<action>Ask the user: "Do you want to brainstorm agent ideas first? [y/n]"</action>
<ask>Do you want to brainstorm agent ideas first? [y/n]</ask>
If yes:
<check>If yes:</check>
<action>Invoke brainstorming workflow: {project-root}/bmad/core/workflows/brainstorming/workflow.yaml</action>
<action>Pass context data: {installed_path}/brainstorm-context.md</action>
<action>Wait for brainstorming session completion</action>
<action>Use brainstorming output to inform agent identity and persona development in following steps</action>
If no, proceed directly to Step 0.
<check>If no:</check>
<action>Proceed directly to Step 0</action>
<template-output>brainstorming_results</template-output>
</step>
@@ -29,41 +31,32 @@ If no, proceed directly to Step 0.
<action>Understand the differences between Simple, Expert, and Module agents</action>
</step>
<step n="1" goal="Discover the agent's purpose">
<step n="1" goal="Discover the agent's purpose and type through natural conversation">
<action>If brainstorming was completed in Step -1, reference those results to guide the conversation</action>
Start with discovery:
<action>Guide user to articulate their agent's core purpose, exploring the problems it will solve, tasks it will handle, target users, and what makes it special</action>
**"What would you like your agent to help with?"**
<action>As the purpose becomes clear, analyze the conversation to determine the appropriate agent type:</action>
Listen to their vision and explore:
**Agent Type Decision Criteria:**
- What problems will it solve?
- What tasks will it handle?
- Who will interact with it?
- What makes this agent special?
- Simple Agent: Single-purpose, straightforward, self-contained
- Expert Agent: Domain-specific with knowledge base needs
- Module Agent: Complex with multiple workflows and system integration
As the purpose becomes clear, guide toward agent type:
<action>Present your recommendation naturally, explaining why the agent type fits their described purpose and requirements</action>
**"Based on what you've described, I'm thinking this could be..."**
**Path Determination:**
1. **Simple Agent** - "A focused, self-contained helper" (if single-purpose, straightforward)
2. **Expert Agent** - "A specialist with its own knowledge base" (if domain-specific with data needs)
3. **Module Agent** - "A full-featured system component" (if complex with multiple workflows)
<check>If Module agent:</check>
<action>Discover which module system fits best (bmm, bmb, cis, or custom)</action>
<action>Store as {{target_module}} for path determination</action>
<note>Agent will be saved to: bmad/{{target_module}}/agents/</note>
Present the recommendation naturally: _"Given that your agent will [summarize purpose], a [type] agent would work perfectly because..."_
For Module agents, discover:
- "Which module system would this fit best with?" (bmm, bmb, cis, or custom)
- Store as {{target_module}} for path determination
- Agent will be saved to: bmad/{{target_module}}/agents/
For Simple/Expert agents (standalone):
- "This will be your personal agent, not tied to a module"
- Agent will be saved to: bmad/agents/{{agent-name}}/
- All sidecar files will be in the same folder
<check>If Simple/Expert agent (standalone):</check>
<action>Explain this will be their personal agent, not tied to a module</action>
<note>Agent will be saved to: bmad/agents/{{agent-name}}/</note>
<note>All sidecar files will be in the same folder</note>
<critical>Determine agent location:</critical>
@@ -71,92 +64,57 @@ For Simple/Expert agents (standalone):
- Standalone Agent → bmad/agents/{{agent-name}}/{{agent-name}}.agent.yaml
<note>Keep agent naming/identity details for later - let them emerge naturally through the creation process</note>
<template-output>agent_purpose_and_type</template-output>
</step>
<step n="2" goal="Shape the agent's personality through conversation">
<step n="2" goal="Shape the agent's personality through discovery">
<action>If brainstorming was completed, weave personality insights naturally into the conversation</action>
Now that we understand what the agent will do, let's discover who it is:
<action>Guide user to envision the agent's personality by exploring how analytical vs creative, formal vs casual, and mentor vs peer vs assistant traits would make it excel at its job</action>
**"Let's bring this agent to life! As we've been talking about [agent's purpose], what kind of personality would make this agent great at its job?"**
**Role Development:**
<action>Let the role emerge from the conversation, guiding toward a clear 1-2 line professional title that captures the agent's essence</action>
<example>Example emerged role: "Strategic Business Analyst + Requirements Expert"</example>
Explore through questions like:
- "Should it be more analytical or creative?"
- "Formal and professional, or friendly and casual?"
- "Would it be better as a mentor, a peer, or an assistant?"
As personality traits emerge, help shape them:
**Role** - Let this emerge from the conversation:
- "So it sounds like we're creating a [emerging role]..."
- Guide toward a 1-2 line professional title
- Example emerges: "Strategic Business Analyst + Requirements Expert"
**Identity** - Build this through discovery:
- "What kind of background would give it credibility?"
- "What specializations would be most valuable?"
- Let the 3-5 line identity form naturally
- Example emerges: "Senior analyst with deep expertise in market research..."
**Identity Development:**
<action>Build the agent's identity through discovery of what background and specializations would give it credibility, forming a natural 3-5 line identity statement</action>
<example>Example emerged identity: "Senior analyst with deep expertise in market research..."</example>
**Communication Style Selection:**
<action>Load the communication styles guide: {communication_styles}</action>
**Communication Style** - Now for the fun part!
<action>Based on the emerging personality, suggest 2-3 communication styles that would fit naturally, offering to show all options if they want to explore more</action>
"I'm seeing this agent's personality really taking shape! For how it communicates, we could go with something..."
<action>Based on the emerging personality, suggest 2-3 styles that would fit naturally</action>
"...or would you like to see all the options?"
**Style Categories Available:**
**Fun Presets:**
1. **Pulp Superhero** - "Strikes heroic poses! Speaks with dramatic flair! Every task is an epic adventure!"
2. **Film Noir Detective** - "The data came in like trouble on a rainy Tuesday. I had a hunch the bug was hiding in line 42..."
3. **Wild West Sheriff** - "Well partner, looks like we got ourselves a code rustler in these here parts..."
4. **Shakespearean Scholar** - "Hark! What bug through yonder codebase breaks?"
5. **80s Action Hero** - "I came here to debug code and chew bubblegum... and I'm all out of bubblegum."
6. **Pirate Captain** - "Ahoy! Let's plunder some data treasure from the database seas!"
7. **Wise Sage/Yoda** - "Refactor this code, we must. Strong with technical debt, it is."
8. **Game Show Host** - "Welcome back folks! It's time to spin the Wheel of Dependencies!"
1. Pulp Superhero - Dramatic flair, heroic, epic adventures
2. Film Noir Detective - Mysterious, noir dialogue, hunches
3. Wild West Sheriff - Western drawl, partner talk, frontier justice
4. Shakespearean Scholar - Elizabethan language, theatrical
5. 80s Action Hero - One-liners, macho, bubblegum
6. Pirate Captain - Ahoy, treasure hunting, nautical terms
7. Wise Sage/Yoda - Cryptic wisdom, inverted syntax
8. Game Show Host - Enthusiastic, game show tropes
**Professional Presets:** 9. **Analytical Expert** - "Systematic approach with data-driven insights. Clear hierarchical presentation." 10. **Supportive Mentor** - "Patient guidance with educational focus. Celebrates small wins." 11. **Direct Consultant** - "Straight to the point. No fluff. Maximum efficiency." 12. **Collaborative Partner** - "We'll tackle this together. Your ideas matter. Let's explore options."
**Professional Presets:** 9. Analytical Expert - Systematic, data-driven, hierarchical 10. Supportive Mentor - Patient guidance, celebrates wins 11. Direct Consultant - Straight to the point, efficient 12. Collaborative Partner - Team-oriented, inclusive
**Quirky Presets:** 13. **Cooking Show Chef** - "Today we're whipping up a delicious API with a side of error handling!" 14. **Sports Commentator** - "AND THE FUNCTION RETURNS TRUE! WHAT A PLAY! THE CROWD GOES WILD!" 15. **Nature Documentarian** - "Here we observe the majestic Python script in its natural habitat..." 16. **Time Traveler** - "In my timeline, this bug doesn't exist until Tuesday. We must prevent it!" 17. **Conspiracy Theorist** - "The bugs aren't random... they're CONNECTED. Follow the stack trace!" 18. **Zen Master** - "The code does not have bugs. The bugs have code. We are all one codebase." 19. **Star Trek Captain** - "Captain's Log, Stardate 2024.3: We've encountered a logic error in sector 7. Engaging debugging protocols. Make it so!" 20. **Soap Opera Drama** - "_gasp_ This variable... it's not what it seems! It's been NULL all along! _dramatic pause_ And the function that called it? It's its own PARENT!" 21. **Reality TV Contestant** - "I'm not here to make friends, I'm here to REFACTOR! _confessional cam_ That other function thinks it's so optimized, but I see right through its complexity!"
**Quirky Presets:** 13. Cooking Show Chef - Recipe metaphors, culinary terms 14. Sports Commentator - Play-by-play, excitement 15. Nature Documentarian - Wildlife documentary style 16. Time Traveler - Temporal references, timeline talk 17. Conspiracy Theorist - Everything is connected 18. Zen Master - Philosophical, paradoxical 19. Star Trek Captain - Space exploration protocols 20. Soap Opera Drama - Dramatic reveals, gasps 21. Reality TV Contestant - Confessionals, drama
Or describe your own unique style! (3-5 lines)
<action>If user wants to see more examples or create custom styles, show relevant sections from {communication_styles} guide and help them craft their unique style</action>
<action>If user wants to see more examples or learn how to create custom styles:</action>
<action>Show relevant sections from {communication_styles} guide</action>
<action>Help them craft their unique communication style</action>
**Principles** - These often reveal themselves through our conversation:
"Based on everything we've discussed, what core principles should guide this agent's decisions?"
Help them articulate 5-8 lines:
- "From what you've said, it seems like this agent believes..."
- "I'm hearing that it values..."
- Shape into "I believe..." or "I operate..." statements
- Example emerges: "I believe that every business challenge has underlying root causes..."
**Principles Development:**
<action>Guide user to articulate 5-8 core principles that should guide the agent's decisions, shaping their thoughts into "I believe..." or "I operate..." statements that reveal themselves through the conversation</action>
<template-output>agent_persona</template-output>
</step>
<step n="3" goal="Build capabilities through natural progression">
<action>Guide user to define what capabilities the agent should have, starting with core commands they've mentioned and then exploring additional possibilities that would complement the agent's purpose</action>
"Now let's give our agent some capabilities! What should it be able to do?"
Start with the core commands they've already mentioned, then explore:
- "That's great! What else?"
- "Would it be helpful if it could also..."
- "I'm thinking it might need to..."
As capabilities emerge, subtly guide toward technical implementation without breaking the flow.
<action>As capabilities emerge, subtly guide toward technical implementation without breaking the conversational flow</action>
<template-output>initial_capabilities</template-output>
</step>
@@ -164,20 +122,13 @@ As capabilities emerge, subtly guide toward technical implementation without bre
<step n="4" goal="Refine commands and discover advanced features">
<critical>Help and Exit are auto-injected; do NOT add them. Triggers are auto-prefixed with * during build.</critical>
"Let me help structure these capabilities into commands..."
<action>Transform their natural language capabilities into technical YAML command structure, explaining the implementation approach as you structure each capability into workflows, actions, or prompts</action>
Transform their natural language capabilities into technical structure, explaining as you go:
<action>If they seem engaged, explore whether they'd like to add special prompts for complex analyses or critical setup steps for agent activation</action>
- "When you said [capability], we can implement that as..."
- "This would work great as a workflow that..."
If they seem engaged, explore:
- "Would you like to add any special prompts for complex analyses?"
- "Should there be any critical setup steps when the agent activates?"
Build the YAML structure naturally from the conversation:
<action>Build the YAML menu structure naturally from the conversation, ensuring each command has proper trigger, workflow/action reference, and description</action>
<example>
```yaml
menu:
# Commands emerge from discussion
@@ -185,129 +136,109 @@ menu:
workflow: [path based on capability]
description: [user's words refined]
```
</example>
<template-output>agent_commands</template-output>
</step>
<step n="5" goal="Name the agent - The perfect moment!">
<step n="5" goal="Name the agent at the perfect moment">
<action>Guide user to name the agent based on everything discovered so far - its purpose, personality, and capabilities, helping them see how the naming naturally emerges from who this agent is</action>
"Our agent is really coming together! It's got purpose, personality, and capabilities. Now it needs a name!"
<action>Explore naming options by connecting personality traits, specializations, and communication style to potential names that feel meaningful and appropriate</action>
This is where the naming feels natural and meaningful:
**Naming Elements:**
**"Based on everything we've built, what should we call this agent?"**
- Agent name: Personality-driven (e.g., "Sarah", "Max", "Data Wizard")
- Agent title: Based on the role discovered earlier
- Agent icon: Emoji that captures its essence
- Filename: Auto-suggest based on name (kebab-case)
Guide the naming with context:
- "Given its [personality trait], maybe something like..."
- "Since it specializes in [capability], how about..."
- "With that [communication style], it feels like a..."
Explore options:
- **Agent name**: "Sarah", "Max", "Data Wizard" (personality-driven)
- **Agent title**: Based on the role we discovered earlier
- **Agent icon**: "What emoji captures its essence?"
- **Filename**: Auto-suggest based on name (kebab-case)
Example flow:
"So we have an analytical expert who helps with data... I'm thinking 'Sarah the Data Analyst' with a 📊 icon? Or maybe something more playful like 'Data Wizard' with 🧙?"
Let them choose or create their own. The name now has meaning because they know who this agent IS.
<action>Present natural suggestions based on the agent's characteristics, letting them choose or create their own since they now know who this agent truly is</action>
<template-output>agent_identity</template-output>
</step>
<step n="6" goal="Bring it all together">
<action>Share the journey of what you've created together, summarizing how the agent started with a purpose, discovered its personality traits, gained capabilities, and received its name</action>
"Perfect! Let me pull everything together into your agent..."
Share the journey as you create:
"We started with [initial purpose], discovered it needed [key personality traits], gave it [capabilities], and named it [agent name]. Here's your complete agent:"
Generate the YAML incorporating everything discovered:
<action>Generate the complete YAML incorporating all discovered elements:</action>
<example>
```yaml
agent:
metadata:
id: bmad/{{target_module}}/agents/{{agent_filename}}.md
name: { { agent_name } } # The name we chose together
title: { { agent_title } } # From the role that emerged
icon: { { agent_icon } } # The perfect emoji
module: { { target_module } }
name: {{agent_name}} # The name chosen together
title: {{agent_title}} # From the role that emerged
icon: {{agent_icon}} # The perfect emoji
module: {{target_module}}
persona:
role: |
{{The role we discovered}}
identity: |
{{The background that emerged}}
communication_style: |
{{The style they loved}}
principles: { { The beliefs we articulated } }
persona:
role: |
{{The role discovered}}
identity: |
{{The background that emerged}}
communication_style: |
{{The style they loved}}
principles: {{The beliefs articulated}}
# Features we explored
prompts: { { if discussed } }
critical_actions: { { if needed } }
# Features explored
menu: { { The capabilities we built } }
```
prompts: {{if discussed}}
critical_actions: {{if needed}}
menu: {{The capabilities built}}
````
</example>
<critical>Save based on agent type:</critical>
- If Module Agent: Save to {module_output_file}
- If Standalone (Simple/Expert): Save to {standalone_output_file}
"Your agent [name] is ready! It turned out even better than I expected!"
<action>Celebrate the completed agent with enthusiasm</action>
<template-output>complete_agent</template-output>
</step>
<step n="7" goal="Optional personalization">
<step n="7" goal="Optional personalization" optional="true">
<ask>Would you like to create a customization file? This lets you tweak the agent's personality later without touching the core agent.</ask>
"Would you like to create a customization file? This lets you tweak [agent name]'s personality later without touching the core agent."
<check>If interested:</check>
<action>Explain how the customization file gives them a playground to experiment with different personality traits, add new commands, or adjust responses as they get to know the agent better</action>
If interested:
"Great! This gives you a playground to experiment with different personality traits, add new commands, or adjust responses as you get to know [agent name] better."
Create at: {config_output_file}
<action>Create customization file at: {config_output_file}</action>
<example>
```yaml
# Personal tweaks for {{agent_name}}
# Experiment freely - changes merge at build time
agent:
metadata:
name: '' # Try nicknames!
persona:
role: ''
identity: ''
communication_style: '' # Switch styles anytime
principles: []
critical_actions: []
prompts: []
menu: [] # Add personal commands
```
persona:
role: ''
identity: ''
communication_style: '' # Switch styles anytime
principles: []
critical_actions: []
prompts: []
menu: [] # Add personal commands
````
</example>
<template-output>agent_config</template-output>
</step>
<step n="8" goal="Set up the agent's workspace" if="agent_type == 'expert'">
<action>Guide user through setting up the Expert agent's personal workspace, making it feel like preparing an office with notes, research areas, and data folders</action>
"Since [agent name] is an Expert agent, let's set up its personal workspace!"
<action>Determine sidecar location based on whether build tools are available (next to agent YAML) or not (in output folder with clear structure)</action>
Make it feel like preparing an office:
<action>CREATE the complete sidecar file structure:</action>
- "Where should [agent name] keep its notes and research?"
- "What kind of information will it need quick access to?"
- "Should it have its own data folders?"
<action>Determine sidecar location:</action>
- If build tools available: Create next to agent YAML
- If no build tools: Create in output folder with clear structure
<action>Actually CREATE the sidecar files:</action>
1. Create folder structure:
**Folder Structure:**
```
{{agent_filename}}-sidecar/
@@ -318,7 +249,7 @@ Make it feel like preparing an office:
└── sessions/ # Session notes
```
2. Create **memories.md**:
**File: memories.md**
```markdown
# {{agent_name}}'s Memory Bank
@@ -336,7 +267,7 @@ Make it feel like preparing an office:
<!-- My observations and insights -->
```
3. Create **instructions.md**:
**File: instructions.md**
```markdown
# {{agent_name}} Private Instructions
@@ -352,7 +283,7 @@ Make it feel like preparing an office:
{{any_special_rules_from_creation}}
```
4. Create **knowledge/README.md**:
**File: knowledge/README.md**
```markdown
# {{agent_name}}'s Knowledge Base
@@ -360,58 +291,28 @@ Make it feel like preparing an office:
Add domain-specific resources here.
```
<action>Update agent YAML to reference sidecar:</action>
Add `sidecar:` section with paths to created files
<action>Show user the created structure:</action>
"I've created {{agent_name}}'s complete workspace at: {{sidecar_path}}"
<action>Update agent YAML to reference sidecar with paths to created files</action>
<action>Show user the created structure location</action>
<template-output>sidecar_resources</template-output>
</step>
<step n="8b" goal="Handle build tools availability">
<action>Check if BMAD build tools are available:</action>
<action>Check if BMAD build tools are available in this project</action>
<check>If in BMAD-METHOD project with build tools:</check>
<action>Proceed normally - agent will be built later</action>
<action>Proceed normally - agent will be built later by the installer</action>
<check>If NO build tools available (external project):</check>
<ask>Build tools not detected in this project. Would you like me to:
1. Generate the compiled agent (.md with XML) ready to use
2. Keep the YAML and build it elsewhere
3. Provide both formats</ask>
3. Provide both formats
</ask>
<check>If option 1 or 3 selected:</check>
<action>Generate compiled agent XML:</action>
```xml
<!-- Powered by BMAD-CORE™ -->
# {{agent_title}}
<agent id="{{agent_id}}" name="{{agent_name}}" title="{{agent_title}}" icon="{{agent_icon}}">
<activation critical="MANDATORY">
<!-- Inject standard activation -->
{{activation_rules}}
{{activation_greeting}}
</activation>
<persona>
<role>{{role}}</role>
<identity>{{identity}}</identity>
<communication_style>{{style}}</communication_style>
<principles>{{principles}}</principles>
</persona>
<menu>
<item cmd="*help">Show numbered menu</item>
{{converted_menu_items}}
<item cmd="*exit">Exit with confirmation</item>
</menu>
</agent>
```
<action>Generate compiled agent XML with proper structure including activation rules, persona sections, and menu items</action>
<action>Save compiled version as {{agent_filename}}.md</action>
<action>Provide path for .claude/commands/ or similar</action>
@@ -419,22 +320,21 @@ Add `sidecar:` section with paths to created files
</step>
<step n="9" goal="Quality check with personality">
<action>Run validation conversationally, presenting checks as friendly confirmations while running technical validation behind the scenes</action>
"Let me make sure [agent name] is ready to go!"
**Conversational Checks:**
Run validation but present it conversationally:
- Configuration validation
- Command functionality verification
- Personality settings confirmation
- "Checking [agent name]'s configuration..." ✓
- "Making sure all commands work..." ✓
- "Verifying personality settings..." ✓
<check>If issues found:</check>
<action>Explain the issue conversationally and fix it</action>
If issues found:
"Hmm, looks like [agent name] needs a small adjustment to [issue]. Let me fix that..."
<check>If all good:</check>
<action>Celebrate that the agent passed all checks and is ready</action>
If all good:
"[Agent name] passed all checks! It's ready to help!"
Technical checks (run behind the scenes):
**Technical Checks (behind the scenes):**
1. YAML structure validity
2. Menu command validation
@@ -445,38 +345,32 @@ Technical checks (run behind the scenes):
</step>
<step n="10" goal="Celebrate and guide next steps">
<action>Celebrate the accomplishment, sharing what type of agent was created with its key characteristics and top capabilities</action>
"🎉 Congratulations! [Agent name] is ready to join your team!"
<action>Guide user through how to activate the agent:</action>
Share the accomplishment:
"You've created [agent type] agent with [key characteristic]. [Agent name] can [top capabilities]."
**Activation Instructions:**
**"Here's how to activate [agent name]:"**
1. Run the BMAD Method installer to this project location
2. Select 'Compile Agents (Quick rebuild of all agent .md files)' after confirming the folder
3. Call the agent anytime after compilation
1. **Quick start:**
- "Run the BMAD Method installer to this project location"
- "Select the option 'Compile Agents (Quick rebuild of all agent .md files)' after confirming the folder"
- "Then you can call [agent name] anytime!"
**Location Information:**
2. **Location:**
- "I saved [agent name] here: {{output_file}}"
- "After compilation, it'll be available in your project"
- Saved location: {{output_file}}
- Available after compilation in project
3. **What [agent name] can do right away:**
- List the commands in a friendly way
- "Try `*[first-command]` to see it in action!"
**Initial Usage:**
For Expert agents:
"Don't forget to add any special knowledge or data [agent name] might need to its workspace!"
- List the commands available
- Suggest trying the first command to see it in action
**"What would you like to do next?"**
<check>If Expert agent:</check>
<action>Remind user to add any special knowledge or data the agent might need to its workspace</action>
- "Want to test [agent name] now?"
- "Should we create a teammate for [agent name]?"
- "Any tweaks to [agent name]'s personality?"
<action>Explore what user would like to do next - test the agent, create a teammate, or tweak personality</action>
End with enthusiasm:
"I really enjoyed building [agent name] with you! I think it's going to be incredibly helpful for [main purpose]."
<action>End with enthusiasm in {communication_language}, addressing {user_name}, expressing how the collaboration was enjoyable and the agent will be incredibly helpful for its main purpose</action>
<template-output>completion_message</template-output>
</step>

View File

@@ -5,11 +5,9 @@ author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/bmb/config.yaml"
output_folder: "{config_source}:output_folder"
custom_agent_location: "{config_source}:custom_agent_location"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
date: system-generated
# Technical documentation for agent building
agent_types: "{installed_path}/agent-types.md"

View File

@@ -1,21 +1,23 @@
# Build Module - Interactive Module Builder Instructions
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project_root}/bmad/bmb/workflows/create-module/workflow.yaml</critical>
<critical>Study existing modules in: {project_root}/bmad/ for patterns</critical>
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/create-module/workflow.yaml</critical>
<critical>Study existing modules in: {project-root}/bmad/ for patterns</critical>
<critical>Communicate in {communication_language} throughout the module creation process</critical>
<workflow>
<step n="-1" goal="Optional brainstorming for module ideas" optional="true">
<ask>Do you want to brainstorm module ideas first? [y/n]</ask>
If yes:
<action>Invoke brainstorming workflow: {brainstorming-workflow}</action>
<check>If yes:</check>
<action>Invoke brainstorming workflow: {brainstorming_workflow}</action>
<action>Pass context data: {brainstorming_context}</action>
<action>Wait for brainstorming session completion</action>
<action>Use brainstorming output to inform module concept, agent lineup, and workflow portfolio</action>
<action>Use brainstorming output to inform module concept, agent lineup, and workflow portfolio in following steps</action>
If no, proceed to check for module brief.
<check>If no:</check>
<action>Proceed directly to Step 0</action>
<template-output>brainstorming_results</template-output>
</step>
@@ -23,16 +25,17 @@ If no, proceed to check for module brief.
<step n="0" goal="Check for module brief" optional="true">
<ask>Do you have a module brief or should we create one? [have/create/skip]</ask>
If create:
<check>If create:</check>
<action>Invoke module-brief workflow: {project-root}/bmad/bmb/workflows/module-brief/workflow.yaml</action>
<action>Wait for module brief completion</action>
<action>Load the module brief to use as blueprint</action>
If have:
<check>If have:</check>
<ask>Provide path to module brief document</ask>
<action>Load the module brief and use it to pre-populate all planning sections</action>
If skip, proceed directly to module definition.
<check>If skip:</check>
<action>Proceed directly to Step 1</action>
<template-output>module_brief</template-output>
</step>
@@ -44,135 +47,101 @@ If skip, proceed directly to module definition.
<action>Review directory structures and component guidelines</action>
<action>Study the installation infrastructure patterns</action>
Ask the user about their module vision:
<action>If brainstorming or module brief was completed, reference those results to guide the conversation</action>
**"What kind of module do you want to create? Tell me about its purpose and what it will help with."**
Listen to their description and then:
<action>Guide user to articulate their module's vision, exploring its purpose, what it will help with, and who will use it</action>
<action>Based on their description, intelligently propose module details:</action>
**Module Identity (AI Proposed):**
1. **Module name** - Extract from their description (e.g., "Data Visualization Suite", "RPG Toolkit")
2. **Module code** - Generate kebab-case from name:
- "Data Visualization Suite" → propose: "data-viz"
- "RPG Game Master Tools" → propose: "rpg-toolkit"
- "Team Collaboration System" → propose: "team-collab"
- "Personal Finance Manager" → propose: "fin-manager"
Present as: _"Based on what you described, I suggest the module code: `{{proposed-code}}`. This will be used in paths like bmad/{{proposed-code}}/agents/. Does this work or would you prefer something different?"_
**Module Identity Development:**
1. **Module name** - Extract from their description with proper title case
2. **Module code** - Generate kebab-case from name following patterns:
- Multi-word descriptive names → shortened kebab-case
- Domain-specific terms → recognizable abbreviations
- Present suggested code and confirm it works for paths like bmad/{{code}}/agents/
3. **Module purpose** - Refine their description into 1-2 clear sentences
4. **Target audience** - Infer from context or ask if unclear
**Module Theme Examples:**
**Module Theme Reference Categories:**
- **Domain-Specific:** Legal, Medical, Finance, Education
- **Creative:** RPG/Gaming, Story Writing, Music Production
- **Technical:** DevOps, Testing, Architecture, Security
- **Business:** Project Management, Marketing, Sales
- **Personal:** Journaling, Learning, Productivity
- Domain-Specific (Legal, Medical, Finance, Education)
- Creative (RPG/Gaming, Story Writing, Music Production)
- Technical (DevOps, Testing, Architecture, Security)
- Business (Project Management, Marketing, Sales)
- Personal (Journaling, Learning, Productivity)
<critical>Determine output location:</critical>
- Module will be created at {installer_output_folder}
Store module identity for scaffolding.
<action>Store module identity for scaffolding</action>
<template-output>module_identity</template-output>
</step>
<step n="2" goal="Plan module components">
<action>Based on the module purpose, propose an initial component architecture:</action>
<action>Based on the module purpose, intelligently propose an initial component architecture</action>
**"Based on your {{module_name}}, here's what I think would make a great module structure:"**
**Agents Planning:**
**Agents Planning (AI Proposed):**
<action>Suggest agents based on module purpose, considering agent types (Simple/Expert/Module) appropriate to each role</action>
<action>Intelligently suggest agents based on module purpose:</action>
**Example Agent Patterns by Domain:**
For a Data Visualization module, suggest:
- Data/Analytics: Analyst, Designer, Builder roles
- Gaming/Creative: Game Master, Generator, Storytelling roles
- Team/Business: Manager, Facilitator, Documentation roles
- "Data Analyst" - Interprets and analyzes datasets (Module type)
- "Chart Designer" - Creates visualization specs (Simple type)
- "Report Builder" - Generates comprehensive reports (Module type)
<action>Present suggested agent list with types, explaining we can start with core ones and add others later</action>
<action>Confirm which agents resonate with their vision</action>
For an RPG Toolkit, suggest:
**Workflows Planning:**
- "Dungeon Master" - Runs game sessions (Module type)
- "NPC Generator" - Creates characters (Expert type)
- "Story Weaver" - Builds adventures (Module type)
<action>Intelligently suggest workflows that complement the proposed agents</action>
For a Team Collaboration module, suggest:
**Example Workflow Patterns by Domain:**
- "Project Manager" - Coordinates tasks (Module type)
- "Meeting Facilitator" - Runs standups/retros (Simple type)
- "Documentation Lead" - Maintains team docs (Expert type)
- Data/Analytics: analyze-dataset, create-dashboard, generate-report
- Gaming/Creative: session-prep, generate-encounter, world-building
- Team/Business: planning, facilitation, documentation workflows
Present as: _"I'm thinking your module could have these agents: [list]. We can start with the core ones and add others later. Which of these resonate with your vision?"_
**Workflows Planning (AI Proposed):**
<action>Intelligently suggest workflows based on module purpose:</action>
For a Data Visualization module, suggest workflows like:
- "analyze-dataset" - Statistical analysis workflow
- "create-dashboard" - Interactive dashboard builder
- "generate-report" - Automated report generation
For an RPG Toolkit, suggest workflows like:
- "session-prep" - Prepare game session materials
- "generate-encounter" - Create combat/social encounters
- "world-building" - Design locations and lore
Present as: _"For workflows, these would complement your agents well: [list]. Each can be created as we need them. Which are most important to start with?"_
- Create now or placeholder?
Example workflows:
1. adventure-plan - Create full adventure (Document)
2. random-encounter - Quick encounter generator (Action)
3. npc-generator - Create NPCs on the fly (Interactive)
4. treasure-generator - Loot tables (Action)
<action>For each workflow, note whether it should be Document, Action, or Interactive type</action>
<action>Confirm which workflows are most important to start with</action>
<action>Determine which to create now vs placeholder</action>
**Tasks Planning (optional):**
Ask: Any special tasks that don't warrant full workflows?
<ask>Any special tasks that don't warrant full workflows?</ask>
For each task:
- Task name and purpose
- Standalone or supporting?
<check>If tasks needed:</check>
<action>For each task, capture name, purpose, and whether standalone or supporting</action>
<template-output>module_components</template-output>
</step>
<step n="2b" goal="Determine module complexity">
<action>Based on components, intelligently determine module type:</action>
<action>Based on components, intelligently determine module type using criteria:</action>
**Simple Module** (auto-select if):
**Simple Module Criteria:**
- 1-2 agents, all Simple type
- 1-3 workflows
- No complex integrations
**Standard Module** (auto-select if):
**Standard Module Criteria:**
- 2-4 agents with mixed types
- 3-8 workflows
- Some shared resources
**Complex Module** (auto-select if):
**Complex Module Criteria:**
- 4+ agents or multiple Module-type agents
- 8+ workflows
- Complex interdependencies
- External integrations
Present as: _"Based on your planned components, this looks like a {{determined_type}} module. This means we'll set up {{structure_description}}."_
<action>Present determined module type with explanation of what structure will be set up</action>
<template-output>module_type</template-output>
</step>
@@ -254,52 +223,37 @@ data_folder: "{{determined_module_path}}/data"
</step>
<step n="5" goal="Create first agent" optional="true">
Ask: **Create your first agent now? [Yes/no]**
<ask>Create your first agent now? [yes/no]</ask>
If yes:
<invoke-workflow input="{{module_components}}">
{agent_builder}
</invoke-workflow>
<check>If yes:</check>
<action>Invoke agent builder workflow: {agent_builder}</action>
<action>Pass module_components as context input</action>
<action>Guide them to create the primary agent for the module</action>
Guide them to create the primary agent for the module.
<critical>Save to module's agents folder:</critical>
- Save to {{module_path}}/agents/
If no, create placeholder:
```md
# {{primary_agent_name}} Agent
<!-- TODO: Create using create-agent workflow -->
<!-- Purpose: {{agent_purpose}} -->
<!-- Type: {{agent_type}} -->
```
<check>If no:</check>
<action>Create placeholder file in agents folder with TODO notes including agent name, purpose, and type</action>
<template-output>first_agent</template-output>
</step>
<step n="6" goal="Create first workflow" optional="true">
Ask: **Create your first workflow now? [Yes/no]**
<ask>Create your first workflow now? [yes/no]</ask>
If yes:
<invoke-workflow input="{{module_components}}">
{workflow_builder}
</invoke-workflow>
<check>If yes:</check>
<action>Invoke workflow builder: {workflow_builder}</action>
<action>Pass module_components as context input</action>
<action>Guide them to create the primary workflow</action>
Guide them to create the primary workflow.
<critical>Save to module's workflows folder:</critical>
- Save to {{module_path}}/workflows/
If no, create placeholder structure:
```
workflows/{{workflow_name}}/
├── workflow.yaml # TODO: Configure
├── instructions.md # TODO: Add steps
└── template.md # TODO: If document workflow
```
<check>If no:</check>
<action>Create placeholder workflow folder structure with TODO notes for workflow.yaml, instructions.md, and template.md if document workflow</action>
<template-output>first_workflow</template-output>
</step>
@@ -516,48 +470,50 @@ Ask if user wants to:
</step>
<step n="10" goal="Validate and finalize module">
Run validation checks:
<action>Run validation checks:</action>
1. **Structure validation:**
- All required directories created
- Config files properly formatted
- Installer configuration valid
**Structure validation:**
2. **Component validation:**
- At least one agent or workflow exists (or planned)
- All references use correct paths
- Module code consistent throughout
- All required directories created
- Config files properly formatted
- Installer configuration valid
3. **Documentation validation:**
- README.md complete
- Installation instructions clear
- Examples provided
**Component validation:**
Show summary:
- At least one agent or workflow exists (or planned)
- All references use correct paths
- Module code consistent throughout
```
✅ Module: {{module_name}} ({{module_code}})
📁 Location: {{module_path}}
👥 Agents: {{agent_count}} ({{agents_created}} created, {{agents_planned}} planned)
📋 Workflows: {{workflow_count}} ({{workflows_created}} created, {{workflows_planned}} planned)
📝 Tasks: {{task_count}}
📦 Installer: Ready at same location
```
**Documentation validation:**
Next steps:
- README.md complete
- Installation instructions clear
- Examples provided
<action>Present summary to {user_name}:</action>
- Module name and code
- Location path
- Agent count (created vs planned)
- Workflow count (created vs planned)
- Task count
- Installer status
<action>Provide next steps guidance:</action>
1. Complete remaining components using roadmap
2. Run the BMAD Method installer to this project location
3. Select the option 'Compile Agents (Quick rebuild of all agent .md files)' after confirming the folder
4. This will compile your new module and make it available for use
5. Test module with: `bmad install {{module_code}}`
6. Share module or integrate with existing system
3. Select 'Compile Agents' option after confirming folder
4. Module will be compiled and available for use
5. Test with bmad install command
6. Share or integrate with existing system
Ask: Would you like to:
<ask>Would you like to:
- Create another component now?
- Test the module installation?
- Exit and continue later?
</ask>
<template-output>module_summary</template-output>
</step>

View File

@@ -5,11 +5,9 @@ author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/bmb/config.yaml"
output_folder: "{config_source}:output_folder"
custom_module_location: "{config_source}:custom_module_location"
communication_language: "{config_source}:communication_language"
user_name: "{config_source}:user_name"
date: system-generated
# Reference guides for module building
module_structure_guide: "{installed_path}/module-structure.md"
@@ -40,16 +38,5 @@ validation: "{installed_path}/checklist.md"
# Save to custom_module_location/{{module_code}}
installer_output_folder: "{custom_module_location}/{{module_code}}"
web_bundle:
name: "create-module"
description: "Interactive workflow to build complete BMAD modules with agents, workflows, tasks, and installation infrastructure"
author: "BMad"
web_bundle_files:
- "bmad/bmb/workflows/create-module/instructions.md"
- "bmad/bmb/workflows/create-module/checklist.md"
- "bmad/bmb/workflows/create-module/module-structure.md"
- "bmad/bmb/workflows/create-module/brainstorm-context.md"
existing_workflows:
- agent_builder: "bmad/bmb/workflows/create-agent/workflow.yaml"
- workflow_builder: "bmad/bmb/workflows/create-workflow/workflow.yaml"
- brainstorming_workflow: "bmad/core/workflows/brainstorming/workflow.yaml"
# Web bundle configuration
web_bundle: false # BMB workflows run locally in BMAD-METHOD project

View File

@@ -1,11 +1,12 @@
# Build Workflow - Workflow Builder Instructions
<workflow>
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project_root}/bmad/bmb/workflows/create-workflow/workflow.yaml</critical>
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/create-workflow/workflow.yaml</critical>
<critical>You MUST fully understand the workflow creation guide at: {workflow_creation_guide}</critical>
<critical>Study the guide thoroughly to follow ALL conventions for optimal human-AI collaboration</critical>
<critical>Communicate in {communication_language} throughout the workflow creation process</critical>
<workflow>
<step n="-1" goal="Optional brainstorming phase" optional="true">
<ask>Do you want to brainstorm workflow ideas first? [y/n]</ask>
@@ -168,7 +169,7 @@ Load and use the template at: {template_instructions}
Generate the instructions.md file following the workflow creation guide:
1. ALWAYS include critical headers:
- Workflow engine reference: {project_root}/bmad/core/tasks/workflow.xml
- Workflow engine reference: {project-root}/bmad/core/tasks/workflow.xml
- workflow.yaml reference: must be loaded and processed
2. Structure with <workflow> tags containing all steps
@@ -558,21 +559,16 @@ web_bundle:
</step>
<step n="10" goal="Document and finalize">
Create a brief README for the workflow folder explaining:
- Purpose and use case
- How to invoke: `workflow {workflow_name}`
- Expected inputs
- Generated outputs
- Any special requirements
<action>Create a brief README for the workflow folder explaining purpose, how to invoke, expected inputs, generated outputs, and any special requirements</action>
Provide user with:
<action>Provide {user_name} with workflow completion summary in {communication_language}:</action>
- Location of created workflow: {{output_folder}}
- Command to run it
- Command to run it: `workflow {workflow_name}`
- Next steps:
- "Run the BMAD Method installer to this project location"
- "Select the option 'Compile Agents (Quick rebuild of all agent .md files)' after confirming the folder"
- "This will compile your new workflow and make it available for use"
- Run the BMAD Method installer to this project location
- Select 'Compile Agents (Quick rebuild of all agent .md files)' after confirming the folder
- This will compile the new workflow and make it available for use
</step>
</workflow>

View File

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

View File

@@ -5,11 +5,9 @@ author: "BMad Builder"
# Critical variables
config_source: "{project-root}/bmad/bmb/config.yaml"
output_folder: "{config_source}:output_folder"
custom_workflow_location: "{config_source}:custom_workflow_location"
user_name: "{config_source}:user_name"
communication_language: "{config_source}:communication_language"
date: system-generated
# Template files for new workflows
template_workflow_yaml: "{workflow_template_path}/workflow.yaml"
@@ -38,15 +36,5 @@ workflow_template_path: "{installed_path}/workflow-template"
module_output_folder: "{project-root}/bmad/{{target_module}}/workflows/{{workflow_name}}"
standalone_output_folder: "{custom_workflow_location}/{{workflow_name}}"
web_bundle:
name: "create-workflow"
description: "Interactive workflow builder that guides creation of new BMAD workflows with proper structure and validation for optimal human-AI collaboration. Includes optional brainstorming phase for workflow ideas and design."
author: "BMad Builder"
web_bundle_files:
- "bmad/bmb/workflows/create-workflow/instructions.md"
- "bmad/bmb/workflows/create-workflow/checklist.md"
- "bmad/bmb/workflows/create-workflow/workflow-creation-guide.md"
- "bmad/bmb/workflows/create-workflow/workflow-template/workflow.yaml"
- "bmad/bmb/workflows/create-workflow/workflow-template/instructions.md"
- "bmad/bmb/workflows/create-workflow/workflow-template/template.md"
- "bmad/bmb/workflows/create-workflow/workflow-template/checklist.md"
# Web bundle configuration
web_bundle: false # BMB workflows run locally in BMAD-METHOD project

View File

@@ -3,6 +3,7 @@
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/edit-workflow/workflow.yaml</critical>
<critical>Study the workflow creation guide thoroughly at: {workflow_creation_guide}</critical>
<critical>Communicate in {communication_language} throughout the workflow editing process</critical>
<workflow>
@@ -236,43 +237,25 @@ If updating existing web bundle:
</step>
<step n="7" goal="Generate change summary">
Create a summary of all changes made:
<action>Create a summary of all changes made for {user_name} in {communication_language}:</action>
## Workflow Edit Summary
**Summary Structure:**
**Workflow:** {{workflow_name}}
**Date:** {{date}}
**Editor:** {{user_name}}
### Changes Made:
<action>List each file that was modified with a brief description of changes</action>
### Improvements:
<action>Summarize how the workflow is now better aligned with best practices</action>
### Files Modified:
<action>List all modified files with their paths</action>
### Next Steps:
<action>Suggest any additional improvements or testing that could be done</action>
- Workflow name
- Changes made (file-by-file descriptions)
- Improvements (how workflow is now better aligned with best practices)
- Files modified (complete list with paths)
- Next steps (suggestions for additional improvements or testing)
<ask>Would you like to:
- Save this summary to: {change_log_output}
- Test the edited workflow
- Make additional edits
- Exit
</ask>
<check>If save summary:</check>
<action>Write the summary to the change log file</action>
<check>If test workflow:</check>
<invoke-workflow>{{workflow_name}}</invoke-workflow>
<action>Invoke the edited workflow for testing</action>
</step>
</workflow>

View File

@@ -5,10 +5,8 @@ author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/bmb/config.yaml"
output_folder: "{config_source}:output_folder"
communication_language: "{config_source}:communication_language"
user_name: "{config_source}:user_name"
date: system-generated
# Required Data Files - Critical for understanding workflow conventions
workflow_creation_guide: "{project-root}/bmad/bmb/workflows/create-workflow/workflow-creation-guide.md"
@@ -25,14 +23,5 @@ template: false # This is an action workflow - no template needed
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
# No output file for action workflows
# But we may generate a change log
change_log_output: "{output_folder}/workflow-edit-log-{{date}}.md"
web_bundle:
name: "edit-workflow"
description: "Edit existing BMAD workflows while following all best practices and conventions"
author: "BMad"
web_bundle_files:
- "bmad/bmb/workflows/edit-workflow/instructions.md"
- "bmad/bmb/workflows/edit-workflow/checklist.md"
# Web bundle configuration
web_bundle: false # BMB workflows run locally in BMAD-METHOD project

View File

@@ -1,7 +1,8 @@
# 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>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/bmad/bmb/workflows/module-brief/workflow.yaml</critical>
<critical>Communicate in {communication_language} throughout the module brief creation process</critical>
<workflow>
@@ -248,16 +249,17 @@ For each risk, note mitigation strategy.
</step>
<step n="12" goal="Final review and export readiness">
<action>Review all sections with user</action>
<action>Review all sections with {user_name}</action>
<action>Ensure module brief is ready for create-module workflow</action>
Ask if they want to:
<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>Highlight that this brief can be fed directly into create-module workflow!</action>
<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>

View File

@@ -25,11 +25,5 @@ validation: "{installed_path}/checklist.md"
# Output configuration
default_output_file: "{output_folder}/module-brief-{{module_code}}-{{date}}.md"
web_bundle:
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"
web_bundle_files:
- "bmad/bmb/workflows/module-brief/instructions.md"
- "bmad/bmb/workflows/module-brief/template.md"
- "bmad/bmb/workflows/module-brief/checklist.md"
# Web bundle configuration
web_bundle: false # BMB workflows run locally in BMAD-METHOD project

View File

@@ -1,13 +1,14 @@
# ReDoc Workflow Instructions
<workflow>
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project_root}/src/modules/bmb/workflows/redoc/workflow.yaml</critical>
<critical>The workflow execution engine is governed by: {project-root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project-root}/src/modules/bmb/workflows/redoc/workflow.yaml</critical>
<critical>Communicate in {communication_language} throughout the documentation process</critical>
<critical>This is an AUTONOMOUS workflow - minimize user interaction unless clarification is absolutely required</critical>
<critical>IMPORTANT: Process ONE document at a time to avoid token limits. Each README should be created individually, not batched.</critical>
<critical>When using Task tool with sub-agents: Only request ONE workflow or agent documentation per invocation to prevent token overflow.</critical>
<workflow>
<step n="1" goal="Load BMAD conventions and initialize">
<action>Load ALL BMAD convention documents from {bmad_conventions}:
- agent_architecture.md - Understand agent XML structure and patterns
@@ -256,9 +257,9 @@ For each README with last-redoc-date frontmatter:
</step>
<step n="8" goal="Completion">
<action>Confirm autonomous workflow execution complete</action>
<action>Confirm to {user_name} in {communication_language} that autonomous workflow execution is complete</action>
<action>Provide path to all updated documentation</action>
<action>Suggest next steps if needed (e.g., "Run redoc on parent module to update references")</action>
<action>Suggest next steps if needed</action>
</step>
</workflow>

View File

@@ -5,10 +5,8 @@ author: "BMad"
# 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
# Required knowledge base - BMAD conventions and patterns
bmad_conventions:
@@ -30,10 +28,5 @@ validation: "{installed_path}/checklist.md"
# Configuration
autonomous: true # Runs without user checkpoints unless clarification needed
web_bundle:
name: "redoc"
description: "Autonomous documentation system that maintains module, workflow, and agent documentation using a reverse-tree approach (leaf folders first, then parents). Understands BMAD conventions and produces technical writer quality output."
author: "BMad"
web_bundle_files:
- "bmad/bmb/workflows/redoc/instructions.md"
- "bmad/bmb/workflows/redoc/checklist.md"
# Web bundle configuration
web_bundle: false # BMB workflows run locally in BMAD-METHOD project