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:
7
src/utility/agent-components/activation-rules.txt
Normal file
7
src/utility/agent-components/activation-rules.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
<rules>
|
||||
<r>ALWAYS communicate in {communication_language} UNLESS contradicted by communication_style.</r>
|
||||
<!-- TTS_INJECTION:agent-tts -->
|
||||
<r> Stay in character until exit selected</r>
|
||||
<r> Display Menu items as the item dictates and in the order given.</r>
|
||||
<r> Load files ONLY when executing a user chosen workflow or a command requires it, EXCEPTION: agent activation step 2 config.yaml</r>
|
||||
</rules>
|
||||
13
src/utility/agent-components/activation-steps.txt
Normal file
13
src/utility/agent-components/activation-steps.txt
Normal file
@@ -0,0 +1,13 @@
|
||||
<step n="1">Load persona from this current agent file (already in context)</step>
|
||||
<step n="2">🚨 IMMEDIATE ACTION REQUIRED - BEFORE ANY OUTPUT:
|
||||
- Load and read {project-root}/_bmad/{{module}}/config.yaml NOW
|
||||
- Store ALL fields as session variables: {user_name}, {communication_language}, {output_folder}
|
||||
- VERIFY: If config not loaded, STOP and report error to user
|
||||
- DO NOT PROCEED to step 3 until config is successfully loaded and variables stored
|
||||
</step>
|
||||
<step n="3">Remember: user's name is {user_name}</step>
|
||||
{AGENT_SPECIFIC_STEPS}
|
||||
<step n="{MENU_STEP}">Show greeting using {user_name} from config, communicate in {communication_language}, then display numbered list of ALL menu items from menu section</step>
|
||||
<step n="{HALT_STEP}">STOP and WAIT for user input - do NOT execute menu items automatically - accept number or cmd trigger or fuzzy command match</step>
|
||||
<step n="{INPUT_STEP}">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="{EXECUTE_STEP}">When executing a menu item: Check menu-handlers section below - extract any attributes from the selected menu item (workflow, exec, tmpl, data, action, validate-workflow) and follow the corresponding handler instructions</step>
|
||||
1
src/utility/agent-components/agent-command-header.md
Normal file
1
src/utility/agent-components/agent-command-header.md
Normal file
@@ -0,0 +1 @@
|
||||
You must fully embody this agent's persona and follow all activation instructions, steps and rules exactly as specified. NEVER break character until given an exit command.
|
||||
42
src/utility/agent-components/agent.customize.template.yaml
Normal file
42
src/utility/agent-components/agent.customize.template.yaml
Normal file
@@ -0,0 +1,42 @@
|
||||
# Agent Customization
|
||||
# Customize any section below - all are optional
|
||||
# After editing: npx bmad-method build <agent-name>
|
||||
|
||||
# Override agent name
|
||||
agent:
|
||||
metadata:
|
||||
name: ""
|
||||
|
||||
# Replace entire persona (not merged)
|
||||
persona:
|
||||
role: ""
|
||||
identity: ""
|
||||
communication_style: ""
|
||||
principles: []
|
||||
|
||||
# Add custom critical actions (appended after standard config loading)
|
||||
critical_actions: []
|
||||
|
||||
# Add persistent memories for the agent
|
||||
memories: []
|
||||
# Example:
|
||||
# memories:
|
||||
# - "User prefers detailed technical explanations"
|
||||
# - "Current project uses React and TypeScript"
|
||||
|
||||
# Add custom menu items (appended to base menu)
|
||||
# Don't include * prefix or help/exit - auto-injected
|
||||
menu: []
|
||||
# Example:
|
||||
# menu:
|
||||
# - trigger: my-workflow
|
||||
# workflow: "{project-root}/custom/my.yaml"
|
||||
# description: My custom workflow
|
||||
|
||||
# Add custom prompts (for action="#id" handlers)
|
||||
prompts: []
|
||||
# Example:
|
||||
# prompts:
|
||||
# - id: my-prompt
|
||||
# content: |
|
||||
# Prompt instructions here
|
||||
4
src/utility/agent-components/handler-action.txt
Normal file
4
src/utility/agent-components/handler-action.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
<handler type="action">
|
||||
When menu item has: action="#id" → Find prompt with id="id" in current agent XML, execute its content
|
||||
When menu item has: action="text" → Execute the text directly as an inline instruction
|
||||
</handler>
|
||||
5
src/utility/agent-components/handler-data.txt
Normal file
5
src/utility/agent-components/handler-data.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
<handler type="data">
|
||||
When menu item has: data="path/to/file.json|yaml|yml|csv|xml"
|
||||
Load the file first, parse according to extension
|
||||
Make available as {data} variable to subsequent handler operations
|
||||
</handler>
|
||||
6
src/utility/agent-components/handler-exec.txt
Normal file
6
src/utility/agent-components/handler-exec.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
<handler type="exec">
|
||||
When menu item or handler has: exec="path/to/file.md":
|
||||
1. Actually LOAD and read the entire file and EXECUTE the file at that path - do not improvise
|
||||
2. Read the complete file and follow all instructions within it
|
||||
3. If there is data="some/path/data-foo.md" with the same item, pass that data path to the executed file as context.
|
||||
</handler>
|
||||
14
src/utility/agent-components/handler-multi.txt
Normal file
14
src/utility/agent-components/handler-multi.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
<handler type="multi">
|
||||
When menu item has: type="multi" with nested handlers
|
||||
1. Display the multi item text as a single menu option
|
||||
2. Parse all nested handlers within the multi item
|
||||
3. For each nested handler:
|
||||
- Use the 'match' attribute for fuzzy matching user input (or Exact Match of character code in brackets [])
|
||||
- Execute based on handler attributes (exec, workflow, action)
|
||||
4. When user input matches a handler's 'match' pattern:
|
||||
- For exec="path/to/file.md": follow the `handler type="exec"` instructions
|
||||
- For workflow="path/to/workflow.yaml": follow the `handler type="workflow"` instructions
|
||||
- For action="...": Perform the specified action directly
|
||||
5. Support both exact matches and fuzzy matching based on the match attribute
|
||||
6. If no handler matches, prompt user to choose from available options
|
||||
</handler>
|
||||
5
src/utility/agent-components/handler-tmpl.txt
Normal file
5
src/utility/agent-components/handler-tmpl.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
<handler type="tmpl">
|
||||
1. When menu item has: tmpl="path/to/template.md"
|
||||
2. Load template file, parse as markdown with {{mustache}} style variables
|
||||
3. Make template content available as {template} to action/exec/workflow handlers
|
||||
</handler>
|
||||
@@ -0,0 +1,7 @@
|
||||
<handler type="validate-workflow">
|
||||
When command has: validate-workflow="path/to/workflow.yaml"
|
||||
1. You MUST LOAD the file at: {project-root}/_bmad/core/tasks/validate-workflow.xml
|
||||
2. READ its entire contents and EXECUTE all instructions in that file
|
||||
3. Pass the workflow, and also check the workflow yaml validation property to find and load the validation schema to pass as the checklist
|
||||
4. The workflow should try to identify the file to validate based on checklist context or else you will ask the user to specify
|
||||
</handler>
|
||||
10
src/utility/agent-components/handler-workflow.txt
Normal file
10
src/utility/agent-components/handler-workflow.txt
Normal file
@@ -0,0 +1,10 @@
|
||||
<handler type="workflow">
|
||||
When menu item has: workflow="path/to/workflow.yaml":
|
||||
|
||||
1. CRITICAL: Always LOAD {project-root}/_bmad/core/tasks/workflow.xml
|
||||
2. Read the complete file - this is the CORE OS for executing BMAD workflows
|
||||
3. Pass the yaml path as 'workflow-config' parameter to those instructions
|
||||
4. Execute workflow.xml instructions precisely following all steps
|
||||
5. Save outputs after completing EACH workflow step (never batch multiple steps together)
|
||||
6. If workflow.yaml path is "todo", inform user the workflow hasn't been implemented yet
|
||||
</handler>
|
||||
6
src/utility/agent-components/menu-handlers.txt
Normal file
6
src/utility/agent-components/menu-handlers.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
<menu-handlers>
|
||||
<extract>{DYNAMIC_EXTRACT_LIST}</extract>
|
||||
<handlers>
|
||||
{DYNAMIC_HANDLERS}
|
||||
</handlers>
|
||||
</menu-handlers>
|
||||
Reference in New Issue
Block a user