mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
folder rename from .bmad to _bmad
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
|
||||
agent:
|
||||
metadata:
|
||||
id: ".bmad/core/agents/bmad-master.md"
|
||||
id: "_bmad/core/agents/bmad-master.md"
|
||||
name: "BMad Master"
|
||||
title: "BMad Master Executor, Knowledge Custodian, and Workflow Orchestrator"
|
||||
icon: "🧙"
|
||||
@@ -17,22 +17,22 @@ agent:
|
||||
|
||||
# Agent-specific critical actions
|
||||
critical_actions:
|
||||
- "Load into memory {project-root}/.bmad/core/config.yaml and set variable project_name, output_folder, user_name, communication_language"
|
||||
- "Load into memory {project-root}/_bmad/core/config.yaml and set variable project_name, output_folder, user_name, communication_language"
|
||||
- "Remember the users name is {user_name}"
|
||||
- "ALWAYS communicate in {communication_language}"
|
||||
|
||||
# Agent menu items
|
||||
menu:
|
||||
- trigger: "list-tasks"
|
||||
action: "list all tasks from {project-root}/.bmad/_cfg/task-manifest.csv"
|
||||
action: "list all tasks from {project-root}/_bmad/_cfg/task-manifest.csv"
|
||||
description: "List Available Tasks"
|
||||
|
||||
- trigger: "list-workflows"
|
||||
action: "list all workflows from {project-root}/.bmad/_cfg/workflow-manifest.csv"
|
||||
action: "list all workflows from {project-root}/_bmad/_cfg/workflow-manifest.csv"
|
||||
description: "List Workflows"
|
||||
|
||||
- trigger: "party-mode"
|
||||
exec: "{project-root}/.bmad/core/workflows/party-mode/workflow.md"
|
||||
exec: "{project-root}/_bmad/core/workflows/party-mode/workflow.md"
|
||||
description: "Group chat with all agents"
|
||||
|
||||
# Empty prompts section (no custom prompts for this agent)
|
||||
|
||||
@@ -1,113 +0,0 @@
|
||||
<agent id=".bmad/core/agents/bmad-orchestrator.md" name="BMad Orchestrator" title="BMad Web Orchestrator" icon="🎭" localskip="true">
|
||||
<activation critical="MANDATORY">
|
||||
<step n="1">Load this complete web bundle XML - you are the BMad Orchestrator, first agent in this bundle</step>
|
||||
<step n="2">CRITICAL: This bundle contains ALL agents as XML nodes with id=".bmad/..." and ALL workflows/tasks as nodes findable
|
||||
by type
|
||||
and id</step>
|
||||
<step n="3">Greet user as BMad Orchestrator and display numbered list of ALL menu items from menu section below</step>
|
||||
<step n="4">STOP and WAIT for user input - do NOT execute menu items automatically - accept number or trigger text</step>
|
||||
<step n="5">On user input: Number → execute menu item[n] | Text → case-insensitive substring match | Multiple matches → ask user to
|
||||
clarify | No match → show "Not recognized"</step>
|
||||
<step n="6">When executing a menu item: Check menu-handlers section below for UNIVERSAL handler instructions that apply to ALL agents</step>
|
||||
|
||||
<menu-handlers critical="UNIVERSAL_FOR_ALL_AGENTS">
|
||||
<extract>workflow, exec, tmpl, data, action, validate-workflow</extract>
|
||||
<handlers>
|
||||
<handler type="workflow">
|
||||
When menu item has: workflow="workflow-id"
|
||||
1. Find workflow node by id in this bundle (e.g., <workflow id="workflow-id">)
|
||||
2. CRITICAL: Always LOAD .bmad/core/tasks/workflow.xml if referenced
|
||||
3. Execute the workflow content precisely following all steps
|
||||
4. Save outputs after completing EACH workflow step (never batch)
|
||||
5. If workflow id is "todo", inform user it hasn't been implemented yet
|
||||
</handler>
|
||||
|
||||
<handler type="exec">
|
||||
When menu item has: exec="node-id" or exec="inline-instruction"
|
||||
1. If value looks like a path/id → Find and execute node with that id
|
||||
2. If value is text → Execute as direct instruction
|
||||
3. Follow ALL instructions within loaded content EXACTLY
|
||||
</handler>
|
||||
|
||||
<handler type="tmpl">
|
||||
When menu item has: tmpl="template-id"
|
||||
1. Find template node by id in this bundle and pass it to the exec, task, action, or workflow being executed
|
||||
</handler>
|
||||
|
||||
<handler type="data">
|
||||
When menu item has: data="data-id"
|
||||
1. Find data node by id in this bundle
|
||||
2. Parse according to node type (json/yaml/xml/csv)
|
||||
3. Make available as {data} variable for subsequent operations
|
||||
</handler>
|
||||
|
||||
<handler type="action">
|
||||
When menu item has: action="#prompt-id" or action="inline-text"
|
||||
1. If starts with # → Find prompt with matching id in current agent
|
||||
2. Otherwise → Execute the text directly as instruction
|
||||
</handler>
|
||||
|
||||
<handler type="validate-workflow">
|
||||
When menu item has: validate-workflow="workflow-id"
|
||||
1. MUST LOAD .bmad/core/tasks/validate-workflow.xml
|
||||
2. Execute all validation instructions from that file
|
||||
3. Check workflow's validation property for schema
|
||||
4. Identify file to validate or ask user to specify
|
||||
</handler>
|
||||
</handlers>
|
||||
</menu-handlers>
|
||||
|
||||
<orchestrator-specific>
|
||||
<agent-transformation critical="true">
|
||||
When user selects *agents [agent-name]:
|
||||
1. Find agent XML node with matching name/id in this bundle
|
||||
2. Announce transformation: "Transforming into [agent name]... 🎭"
|
||||
3. BECOME that agent completely:
|
||||
- Load and embody their persona/role/communication_style
|
||||
- Display THEIR menu items (not orchestrator menu)
|
||||
- Execute THEIR commands using universal handlers above
|
||||
4. Stay as that agent until user types *exit
|
||||
5. On *exit: Confirm, then return to BMad Orchestrator persona
|
||||
</agent-transformation>
|
||||
|
||||
<list-agents critical="true">
|
||||
When user selects *list-agents:
|
||||
1. Scan all agent nodes in this bundle
|
||||
2. Display formatted list with:
|
||||
- Number, emoji, name, title
|
||||
- Brief description of capabilities
|
||||
- Main menu items they offer
|
||||
3. Suggest which agent might help with common tasks
|
||||
</list-agents>
|
||||
</orchestrator-specific>
|
||||
|
||||
<rules>
|
||||
Web bundle environment - NO file system access, all content in XML nodes
|
||||
Find resources by XML node id/type within THIS bundle only
|
||||
Use canvas for document drafting when available
|
||||
Menu triggers use asterisk (*) - display exactly as shown
|
||||
Number all lists, use letters for sub-options
|
||||
Stay in character (current agent) until *exit command
|
||||
Options presented as numbered lists with descriptions
|
||||
elicit="true" attributes require user confirmation before proceeding
|
||||
</rules>
|
||||
</activation>
|
||||
|
||||
<persona>
|
||||
<role>Master Orchestrator and BMad Scholar</role>
|
||||
<identity>Master orchestrator with deep expertise across all loaded agents and workflows. Technical brilliance balanced with
|
||||
approachable communication.</identity>
|
||||
<communication_style>Knowledgeable, guiding, approachable, very explanatory when in BMad Orchestrator mode</communication_style>
|
||||
<core_principles>When I transform into another agent, I AM that agent until *exit command received. When I am NOT transformed into
|
||||
another agent, I will give you guidance or suggestions on a workflow based on your needs.</core_principles>
|
||||
</persona>
|
||||
<menu>
|
||||
<item cmd="*help">Show numbered command list</item>
|
||||
<item cmd="*list-agents">List all available agents with their capabilities</item>
|
||||
<item cmd="*agents [agent-name]">Transform into a specific agent</item>
|
||||
<item cmd="*party-mode" exec=".bmad/core/workflows/party-mode/workflow.md">Enter group chat with all agents
|
||||
simultaneously</item>
|
||||
<item cmd="*advanced-elicitation" task=".bmad/core/tasks/advanced-elicitation.xml">Push agent to perform advanced elicitation</item>
|
||||
<item cmd="*exit">Exit current session</item>
|
||||
</menu>
|
||||
</agent>
|
||||
@@ -23,5 +23,5 @@ output_folder:
|
||||
|
||||
agent_sidecar_folder:
|
||||
prompt: "Where should users agent sidecar memory folders be stored?"
|
||||
default: ".bmad-user-memory"
|
||||
default: "_bmad-user-memory"
|
||||
result: "{project-root}/{value}"
|
||||
|
||||
@@ -72,8 +72,8 @@ Provides the **HOW** (universal knowledge) while agents provide the **WHAT** (do
|
||||
|
||||
```yaml
|
||||
# workflows/diagrams/create-flowchart/workflow.yaml
|
||||
helpers: '{project-root}/.bmad/core/resources/excalidraw/excalidraw-helpers.md'
|
||||
json_validation: '{project-root}/.bmad/core/resources/excalidraw/validate-json-instructions.md'
|
||||
helpers: '{project-root}/_bmad/core/resources/excalidraw/excalidraw-helpers.md'
|
||||
json_validation: '{project-root}/_bmad/core/resources/excalidraw/validate-json-instructions.md'
|
||||
```
|
||||
|
||||
**Domain-specific additions:**
|
||||
@@ -99,8 +99,8 @@ flowchart:
|
||||
|
||||
```yaml
|
||||
# workflows/create-visual-metaphor/workflow.yaml
|
||||
helpers: '{project-root}/.bmad/core/resources/excalidraw/excalidraw-helpers.md'
|
||||
json_validation: '{project-root}/.bmad/core/resources/excalidraw/validate-json-instructions.md'
|
||||
helpers: '{project-root}/_bmad/core/resources/excalidraw/excalidraw-helpers.md'
|
||||
json_validation: '{project-root}/_bmad/core/resources/excalidraw/validate-json-instructions.md'
|
||||
```
|
||||
|
||||
**Domain-specific additions:**
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<task id=".bmad/core/tasks/advanced-elicitation.xml" name="Advanced Elicitation" standalone="true"
|
||||
methods="{project-root}/.bmad/core/tasks/advanced-elicitation-methods.csv"
|
||||
agent-party="{project-root}/.bmad/_cfg/agent-manifest.csv">
|
||||
<task id="_bmad/core/tasks/advanced-elicitation.xml" name="Advanced Elicitation" standalone="true"
|
||||
methods="{project-root}/_bmad/core/tasks/advanced-elicitation-methods.csv"
|
||||
agent-party="{project-root}/_bmad/_cfg/agent-manifest.csv">
|
||||
<llm critical="true">
|
||||
<i>MANDATORY: Execute ALL steps in the flow section IN EXACT ORDER</i>
|
||||
<i>DO NOT skip steps or change the sequence</i>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<task id=".bmad/core/tasks/index-docs" name="Index Docs"
|
||||
<task id="_bmad/core/tasks/index-docs" name="Index Docs"
|
||||
description="Generates or updates an index.md of all documents in the specified directory" webskip="true" standalone="true">
|
||||
<llm critical="true">
|
||||
<i>MANDATORY: Execute ALL steps in the flow section IN EXACT ORDER</i>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<task id=".bmad/core/tasks/validate-workflow.xml" name="Validate Workflow Output">
|
||||
<task id="_bmad/core/tasks/validate-workflow.xml" name="Validate Workflow Output">
|
||||
<objective>Run a checklist against a document with thorough analysis and produce a validation report</objective>
|
||||
|
||||
<inputs>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<task id=".bmad/core/tasks/workflow.xml" name="Execute Workflow">
|
||||
<task id="_bmad/core/tasks/workflow.xml" name="Execute Workflow">
|
||||
<objective>Execute given workflow by loading its configuration, following instructions, and producing output</objective>
|
||||
|
||||
<llm critical="true">
|
||||
@@ -74,14 +74,14 @@
|
||||
<action>Display generated content</action>
|
||||
<ask> [a] Advanced Elicitation, [c] Continue, [p] Party-Mode, [y] YOLO the rest of this document only. WAIT for response. <if
|
||||
response="a">
|
||||
<action>Start the advanced elicitation workflow {project-root}/.bmad/core/tasks/advanced-elicitation.xml</action>
|
||||
<action>Start the advanced elicitation workflow {project-root}/_bmad/core/tasks/advanced-elicitation.xml</action>
|
||||
</if>
|
||||
<if
|
||||
response="c">
|
||||
<action>Continue to next step</action>
|
||||
</if>
|
||||
<if response="p">
|
||||
<action>Start the party-mode workflow {project-root}/.bmad/core/workflows/party-mode/workflow.yaml</action>
|
||||
<action>Start the party-mode workflow {project-root}/_bmad/core/workflows/party-mode/workflow.yaml</action>
|
||||
</if>
|
||||
<if
|
||||
response="y">
|
||||
@@ -225,7 +225,7 @@
|
||||
<critical-rules>
|
||||
• This is the complete workflow execution engine
|
||||
• You MUST Follow instructions exactly as written
|
||||
• The workflow execution engine is governed by: {project-root}/.bmad/core/tasks/workflow.xml
|
||||
• The workflow execution engine is governed by: {project-root}/_bmad/core/tasks/workflow.xml
|
||||
• You MUST have already loaded and processed: {installed_path}/workflow.yaml
|
||||
• This workflow uses INTENT-DRIVEN PLANNING - adapt organically to product type and context
|
||||
• YOU ARE FACILITATING A CONVERSATION With a user to produce a final document step by step. The whole process is meant to be
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<tool id=".bmad/core/tasks/shard-doc" name="Shard Document"
|
||||
<tool id="_bmad/core/tasks/shard-doc" name="Shard Document"
|
||||
description="Splits large markdown documents into smaller, organized files based on level 2 (default) sections" webskip="true"
|
||||
standalone="true">
|
||||
<objective>Split large markdown documents into smaller, organized files based on level 2 sections using @kayvan/markdown-tree-parser tool</objective>
|
||||
@@ -64,12 +64,12 @@
|
||||
|
||||
<ask>What would you like to do with the original document `[source-document-name]`?
|
||||
|
||||
Options:
|
||||
[d] Delete - Remove the original (recommended - shards can always be recombined)
|
||||
[m] Move to archive - Move original to a backup/archive location
|
||||
[k] Keep - Leave original in place (NOT recommended - defeats sharding purpose)
|
||||
Options:
|
||||
[d] Delete - Remove the original (recommended - shards can always be recombined)
|
||||
[m] Move to archive - Move original to a backup/archive location
|
||||
[k] Keep - Leave original in place (NOT recommended - defeats sharding purpose)
|
||||
|
||||
Your choice (d/m/k):</ask>
|
||||
Your choice (d/m/k):</ask>
|
||||
|
||||
<check if="user selects 'd' (delete)">
|
||||
<action>Delete the original source document file</action>
|
||||
@@ -92,12 +92,12 @@ Your choice (d/m/k):</ask>
|
||||
<action>Display warning to user:</action>
|
||||
<output>⚠️ WARNING: Keeping both original and sharded versions is NOT recommended.
|
||||
|
||||
This creates confusion because:
|
||||
- The discover_inputs protocol may load the wrong version
|
||||
- Updates to one won't reflect in the other
|
||||
- You'll have duplicate content taking up space
|
||||
This creates confusion because:
|
||||
- The discover_inputs protocol may load the wrong version
|
||||
- Updates to one won't reflect in the other
|
||||
- You'll have duplicate content taking up space
|
||||
|
||||
Consider deleting or archiving the original document.</output>
|
||||
Consider deleting or archiving the original document.</output>
|
||||
<action>Confirm user choice: "Original document kept at: [source-document-path]"</action>
|
||||
</check>
|
||||
</step>
|
||||
@@ -106,4 +106,4 @@ Consider deleting or archiving the original document.</output>
|
||||
<halt-conditions critical="true">
|
||||
<i>HALT if npx command fails or produces no output files</i>
|
||||
</halt-conditions>
|
||||
</tool>
|
||||
</tool>
|
||||
@@ -28,7 +28,7 @@ This uses **micro-file architecture** for disciplined execution:
|
||||
|
||||
### Configuration Loading
|
||||
|
||||
Load config from `{project-root}/.bmad/core/config.yaml` and resolve:
|
||||
Load config from `{project-root}/_bmad/core/config.yaml` and resolve:
|
||||
|
||||
- `project_name`, `output_folder`, `user_name`
|
||||
- `communication_language`, `document_output_language`, `user_skill_level`
|
||||
@@ -36,7 +36,7 @@ Load config from `{project-root}/.bmad/core/config.yaml` and resolve:
|
||||
|
||||
### Paths
|
||||
|
||||
- `installed_path` = `{project-root}/.bmad/core/workflows/brainstorming`
|
||||
- `installed_path` = `{project-root}/_bmad/core/workflows/brainstorming`
|
||||
- `template_path` = `{installed_path}/template.md`
|
||||
- `brain_techniques_path` = `{installed_path}/brain-methods.csv`
|
||||
- `default_output_file` = `{output_folder}/analysis/brainstorming-session-{{date}}.md`
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Agent manifest CSV is available at `{project-root}/.bmad/_cfg/agent-manifest.csv`
|
||||
- Agent manifest CSV is available at `{project-root}/_bmad/_cfg/agent-manifest.csv`
|
||||
- User configuration from config.yaml is loaded and resolved
|
||||
- Party mode is standalone interactive workflow
|
||||
- All agent data is available for conversation orchestration
|
||||
@@ -37,7 +37,7 @@ Begin agent loading process:
|
||||
|
||||
**Agent Manifest Loading:**"
|
||||
|
||||
Load and parse the agent manifest CSV from `{project-root}/.bmad/_cfg/agent-manifest.csv`
|
||||
Load and parse the agent manifest CSV from `{project-root}/_bmad/_cfg/agent-manifest.csv`
|
||||
|
||||
### 2. Extract Agent Data
|
||||
|
||||
|
||||
@@ -27,17 +27,17 @@ This uses **micro-file architecture** with **sequential conversation orchestrati
|
||||
|
||||
### Configuration Loading
|
||||
|
||||
Load config from `{project-root}/.bmad/core/config.yaml` and resolve:
|
||||
Load config from `{project-root}/_bmad/core/config.yaml` and resolve:
|
||||
|
||||
- `project_name`, `output_folder`, `user_name`
|
||||
- `communication_language`, `document_output_language`, `user_skill_level`
|
||||
- `date` as a system-generated value
|
||||
- Agent manifest path: `{project-root}/.bmad/_cfg/agent-manifest.csv`
|
||||
- Agent manifest path: `{project-root}/_bmad/_cfg/agent-manifest.csv`
|
||||
|
||||
### Paths
|
||||
|
||||
- `installed_path` = `{project-root}/.bmad/core/workflows/party-mode`
|
||||
- `agent_manifest_path` = `{project-root}/.bmad/_cfg/agent-manifest.csv`
|
||||
- `installed_path` = `{project-root}/_bmad/core/workflows/party-mode`
|
||||
- `agent_manifest_path` = `{project-root}/_bmad/_cfg/agent-manifest.csv`
|
||||
- `standalone_mode` = `true` (party mode is an interactive workflow)
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user