The install directory is now configurable, with a few minute issues

This commit is contained in:
Brian Madison
2025-11-08 13:58:43 -06:00
parent a4bbfc4b6e
commit 1728acfb0f
224 changed files with 1303 additions and 1036 deletions

View File

@@ -5,26 +5,32 @@ prompt:
- "This will impact all selected modules, either additions or upgrades."
bmad_folder:
prompt: "What is the root that all modules should be installed to?"
prompt: "What is the root folder for BMAD installation? (Recommended: .bmad)"
default: ".bmad"
result: "{value}"
regex: "^[a-zA-Z0-9._-]{1,20}$"
user_name:
prompt: "What is your name?"
prompt: "What shall the agents call you?"
default: "BMad"
result: "{value}"
communication_language:
prompt: "Preferred Chat Language?"
prompt: "Preferred Chat Language/Style? (English, Mandarin, English Pirate, etc...)"
default: "English"
result: "{value}"
document_output_language:
prompt: "Preferred Document Output Language?"
default: "English"
default: "{communication_language}"
result: "{value}"
output_folder:
prompt: "Where should the generated output default save location be?"
default: "docs"
result: "{project-root}/{value}"
install_user_docs:
prompt: "Install user documentation and optimized agent intelligence to each selected modules docs folder?"
default: true
result: "{value}"

View File

@@ -49,14 +49,6 @@ async function configureForIDE(ide) {
// Claude Code specific Core configurations
break;
}
case 'cursor': {
// Cursor specific Core configurations
break;
}
case 'windsurf': {
// Windsurf specific Core configurations
break;
}
// Add more IDEs as needed
default: {
// No specific configuration needed

View File

@@ -3,7 +3,7 @@
agent:
metadata:
id: "bmad/core/agents/bmad-master.md"
id: "{bmad_folder}/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_folder}/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_folder}/_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_folder}/_cfg/workflow-manifest.csv"
description: "List Workflows"
- trigger: "party-mode"
workflow: "{project-root}/bmad/core/workflows/party-mode/workflow.yaml"
workflow: "{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.yaml"
description: "Group chat with all agents"
# Empty prompts section (no custom prompts for this agent)

View File

@@ -1,7 +1,7 @@
<agent id="bmad/core/agents/bmad-orchestrator.md" name="BMad Orchestrator" title="BMad Web Orchestrator" icon="🎭" localskip="true">
<agent id="{bmad_folder}/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
<step n="2">CRITICAL: This bundle contains ALL agents as XML nodes with id="{bmad_folder}/..." 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>
@@ -15,7 +15,7 @@
<handler type="workflow">
When menu item has: workflow="workflow-id"
1. Find workflow node by id in this bundle (e.g., &lt;workflow id="workflow-id"&gt;)
2. CRITICAL: Always LOAD bmad/core/tasks/workflow.xml if referenced
2. CRITICAL: Always LOAD {bmad_folder}/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
@@ -48,7 +48,7 @@
<handler type="validate-workflow">
When menu item has: validate-workflow="workflow-id"
1. MUST LOAD bmad/core/tasks/validate-workflow.xml
1. MUST LOAD {bmad_folder}/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

View File

@@ -1,4 +1,4 @@
<task id="bmad/core/tasks/adv-elicit.xml" name="Advanced Elicitation" standalone="true">
<task id="{bmad_folder}/core/tasks/adv-elicit.xml" name="Advanced Elicitation" standalone="true">
<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>

View File

@@ -1,4 +1,4 @@
<task id="bmad/core/tasks/index-docs" name="Index Docs"
<task id="{bmad_folder}/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>

View File

@@ -1,4 +1,4 @@
<task id="bmad/core/tasks/validate-workflow.xml" name="Validate Workflow Output">
<task id="{bmad_folder}/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>

View File

@@ -1,4 +1,4 @@
<task id="bmad/core/tasks/workflow.xml" name="Execute Workflow">
<task id="{bmad_folder}/core/tasks/workflow.xml" name="Execute Workflow">
<objective>Execute given workflow by loading its configuration, following instructions, and producing output</objective>
<llm critical="true">

View File

@@ -1,4 +1,4 @@
<tool id="bmad/core/tasks/shard-doc" name="Shard Document"
<tool id="{bmad_folder}/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>

View File

@@ -35,7 +35,7 @@ workflow brainstorming --data /path/to/context.md
### Configuration
The workflow leverages configuration from `/bmad/cis/config.yaml`:
The workflow leverages configuration from `/{bmad_folder}/cis/config.yaml`:
- **output_folder**: Where session results are saved
- **user_name**: Session participant identification
@@ -185,7 +185,7 @@ The workflow includes 36 techniques organized into 7 categories:
## Requirements
- No special software requirements
- Access to the CIS module configuration (`/bmad/cis/config.yaml`)
- Access to the CIS module configuration (`/{bmad_folder}/cis/config.yaml`)
- Active participation and engagement throughout the interactive session
- Optional: Domain context document for focused brainstorming

View File

@@ -3,8 +3,8 @@
## Workflow
<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/core/workflows/brainstorming/workflow.yaml</critical>
<critical>The workflow execution engine is governed by: {project_root}/{bmad_folder}/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project_root}/{bmad_folder}/core/workflows/brainstorming/workflow.yaml</critical>
<step n="1" goal="Session Setup">
@@ -254,7 +254,7 @@ Analyze the session to identify deeper patterns:
2. **Surface key insights** - What realizations emerged during the process? -> insights_learnings
3. **Note surprising connections** - What unexpected relationships were discovered? -> insights_learnings
<invoke-task halt="true">{project-root}/bmad/core/tasks/adv-elicit.xml</invoke-task>
<invoke-task halt="true">{project-root}/{bmad_folder}/core/tasks/adv-elicit.xml</invoke-task>
<template-output>key_themes, insights_learnings</template-output>

View File

@@ -4,7 +4,7 @@ description: "Facilitate interactive brainstorming sessions using diverse creati
author: "BMad"
# Critical variables load from config_source
config_source: "{project-root}/bmad/cis/config.yaml"
config_source: "{project-root}/{bmad_folder}/cis/config.yaml"
output_folder: "{config_source}:output_folder"
user_name: "{config_source}:user_name"
date: system-generated
@@ -18,7 +18,7 @@ recommended_inputs:
# Example: data="{path}/context.md" provides domain-specific guidance
# Module path and component files
installed_path: "{project-root}/bmad/core/workflows/brainstorming"
installed_path: "{project-root}/{bmad_folder}/core/workflows/brainstorming"
template: "{installed_path}/template.md"
instructions: "{installed_path}/instructions.md"
validation: "{installed_path}/checklist.md"
@@ -33,11 +33,11 @@ web_bundle:
name: "brainstorming"
description: "Facilitate interactive brainstorming sessions using diverse creative techniques. This workflow facilitates interactive brainstorming sessions using diverse creative techniques. The session is highly interactive, with the AI acting as a facilitator to guide the user through various ideation methods to generate and refine creative solutions."
author: "BMad"
template: "bmad/core/workflows/brainstorming/template.md"
instructions: "bmad/core/workflows/brainstorming/instructions.md"
brain_techniques: "bmad/core/workflows/brainstorming/brain-methods.csv"
template: "{bmad_folder}/core/workflows/brainstorming/template.md"
instructions: "{bmad_folder}/core/workflows/brainstorming/instructions.md"
brain_techniques: "{bmad_folder}/core/workflows/brainstorming/brain-methods.csv"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/core/workflows/brainstorming/instructions.md"
- "bmad/core/workflows/brainstorming/brain-methods.csv"
- "bmad/core/workflows/brainstorming/template.md"
- "{bmad_folder}/core/workflows/brainstorming/instructions.md"
- "{bmad_folder}/core/workflows/brainstorming/brain-methods.csv"
- "{bmad_folder}/core/workflows/brainstorming/template.md"

View File

@@ -1,6 +1,6 @@
# Party Mode - Multi-Agent Discussion Instructions
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>The workflow execution engine is governed by: {project_root}/{bmad_folder}/core/tasks/workflow.xml</critical>
<critical>This workflow orchestrates group discussions between all installed BMAD agents</critical>
<workflow>

View File

@@ -4,13 +4,13 @@ description: "Orchestrates group discussions between all installed BMAD agents,
author: "BMad"
# Critical data sources - manifest and config overrides
agent_manifest: "{project-root}/bmad/_cfg/agent-manifest.csv"
agent_overrides: "{project-root}/bmad/_cfg/agents/*.customize.yaml"
agent_manifest: "{project-root}/{bmad_folder}/_cfg/agent-manifest.csv"
agent_overrides: "{project-root}/{bmad_folder}/_cfg/agents/*.customize.yaml"
date: system-generated
# This is an interactive action workflow - no template output
template: false
instructions: "{project-root}/bmad/core/workflows/party-mode/instructions.md"
instructions: "{project-root}/{bmad_folder}/core/workflows/party-mode/instructions.md"
# Exit conditions
exit_triggers: