mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
refactor(config): replace hardcoded .bmad paths with {bmad_folder} placeholder
Remove hardcoded .bmad folder references throughout documentation and source files, replacing them with the configurable {bmad_folder} placeholder. This change enables users to customize the BMAD installation folder name via configuration, improving flexibility and reducing coupling to a specific directory structure.
Changes include:
- Update all documentation to reference {bmad_folder} instead of .bmad
- Remove legacy configuration files from .bmad and .claude directories
- Update workflow.xml and CLI documentation with new placeholder syntax
This commit is contained in:
@@ -67,24 +67,25 @@
|
||||
</execute-tags>
|
||||
</substep>
|
||||
|
||||
<substep n="2c" title="Handle Special Output Tags">
|
||||
<substep n="2c" title="Handle template-output Tags">
|
||||
<if tag="template-output">
|
||||
<mandate>Generate content for this section</mandate>
|
||||
<mandate>Save to file (Write first time, Edit subsequent)</mandate>
|
||||
<action>Show checkpoint separator: ━━━━━━━━━━━━━━━━━━━━━━━</action>
|
||||
<action>Display generated content</action>
|
||||
<ask>[a] Advanced Elicitation, [c] Continue, [p] Party-Mode, [y] YOLO the rest of this document only, or converse about this
|
||||
section with the agent? WAIT for response. <if response="a">
|
||||
<action>Start the advanced elicitation workflow @/.bmad/core/workflows/party-mode/workflow.yaml</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_folder}/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</action>
|
||||
<action>Start the party-mode workflow {project-root}/{bmad_folder}/core/workflows/party-mode/workflow.yaml</action>
|
||||
</if>
|
||||
<if response="y">
|
||||
<if
|
||||
response="y">
|
||||
<action>Enter #yolo mode for the rest of the workflow</action>
|
||||
</if>
|
||||
</ask>
|
||||
@@ -202,7 +203,7 @@
|
||||
</strategy>
|
||||
|
||||
<strategy name="SELECTIVE_LOAD">
|
||||
<desc>Load specific shard using template variable - used for epics with {{epic_num}}</desc>
|
||||
<desc>Load specific shard using template variable - example: used for epics with {{epic_num}}</desc>
|
||||
<action>Check for template variables in sharded_single pattern (e.g., {{epic_num}})</action>
|
||||
<action>If variable undefined, ask user for value OR infer from context</action>
|
||||
<action>Resolve template to specific file path</action>
|
||||
@@ -211,13 +212,14 @@
|
||||
</strategy>
|
||||
|
||||
<strategy name="INDEX_GUIDED">
|
||||
<desc>Load index.md, analyze structure, then intelligently load relevant docs</desc>
|
||||
<mandate>DO NOT BE LAZY - use best judgment to load documents that might have relevant information</mandate>
|
||||
<desc>Load index.md, analyze structure and description of each doc in the index, then intelligently load relevant docs</desc>
|
||||
<mandate>DO NOT BE LAZY - use best judgment to load documents that might have relevant information, even if only a 5% chance</mandate>
|
||||
<action>Load index.md from sharded directory</action>
|
||||
<action>Parse table of contents, links, section headers</action>
|
||||
<action>Analyze workflow's purpose and objective</action>
|
||||
<action>Identify which linked/referenced documents are likely relevant</action>
|
||||
<example>If workflow is about authentication and index shows "Auth Overview", "Payment Setup", "Deployment" → Load auth docs, consider deployment docs, skip payment</example>
|
||||
<example>If workflow is about authentication and index shows "Auth Overview", "Payment Setup", "Deployment" → Load auth
|
||||
docs, consider deployment docs, skip payment</example>
|
||||
<action>Load all identified relevant documents</action>
|
||||
<action>Store combined content in variable: {pattern_name_content}</action>
|
||||
<note>When in doubt, LOAD IT - context is valuable, being thorough is better than missing critical info</note>
|
||||
@@ -228,7 +230,7 @@
|
||||
<substep n="2c" title="Handle Not Found">
|
||||
<check if="no matches for whole OR sharded">
|
||||
<action>Set {pattern_name_content} to empty string</action>
|
||||
<action>Note in session: "No {pattern_name} files found" (not an error, just unavailable)</action>
|
||||
<action>Note in session: "No {pattern_name} files found" (not an error, just unavailable, offer use change to provide)</action>
|
||||
</check>
|
||||
</substep>
|
||||
</step>
|
||||
@@ -248,25 +250,15 @@
|
||||
<usage-in-instructions>
|
||||
<example desc="Typical usage in workflow instructions.md">
|
||||
<step n="0" goal="Discover and load project context">
|
||||
<invoke-protocol name="discover_inputs" />
|
||||
<invoke-protocol name="discover_inputs" />
|
||||
</step>
|
||||
|
||||
<step n="1" goal="Analyze requirements">
|
||||
<action>Review {prd_content} for functional requirements</action>
|
||||
<action>Cross-reference with {architecture_content} for technical constraints</action>
|
||||
<action>Review {prd_content} for functional requirements</action>
|
||||
<action>Cross-reference with {architecture_content} for technical constraints</action>
|
||||
</step>
|
||||
</example>
|
||||
</usage-in-instructions>
|
||||
|
||||
<load-strategy-defaults>
|
||||
<default pattern="prd">FULL_LOAD</default>
|
||||
<default pattern="architecture">FULL_LOAD</default>
|
||||
<default pattern="ux_design">FULL_LOAD</default>
|
||||
<default pattern="gdd">FULL_LOAD</default>
|
||||
<default pattern="epics">SELECTIVE_LOAD</default>
|
||||
<default pattern="document_project">INDEX_GUIDED</default>
|
||||
<default pattern="*">FULL_LOAD</default>
|
||||
</load-strategy-defaults>
|
||||
</protocol>
|
||||
</protocols>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user