bmad-method 6.0.0-alpha.10 → 6.0.0-alpha.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +219 -1105
- package/README.md +129 -359
- package/docs/custom-agent-installation.md +169 -0
- package/{v6-open-items.md → docs/v6-open-items.md} +1 -1
- package/package.json +4 -2
- package/src/core/resources/excalidraw/README.md +160 -0
- package/src/core/resources/excalidraw/library-loader.md +50 -0
- package/src/modules/bmb/docs/agent-compilation.md +340 -0
- package/src/modules/bmb/docs/agent-menu-patterns.md +524 -0
- package/src/modules/bmb/docs/expert-agent-architecture.md +364 -0
- package/src/modules/bmb/docs/index.md +55 -0
- package/src/modules/bmb/docs/module-agent-architecture.md +367 -0
- package/src/modules/bmb/docs/simple-agent-architecture.md +288 -0
- package/src/modules/bmb/docs/understanding-agent-types.md +184 -0
- package/src/modules/bmb/reference/agents/expert-examples/journal-keeper/README.md +242 -0
- package/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper-sidecar/breakthroughs.md +24 -0
- package/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper-sidecar/instructions.md +108 -0
- package/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper-sidecar/memories.md +46 -0
- package/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper-sidecar/mood-patterns.md +39 -0
- package/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml +152 -0
- package/src/modules/bmb/reference/agents/module-examples/README.md +50 -0
- package/src/modules/bmb/reference/agents/module-examples/security-engineer.agent.yaml +53 -0
- package/src/modules/bmb/reference/agents/module-examples/trend-analyst.agent.yaml +57 -0
- package/src/modules/bmb/reference/agents/simple-examples/README.md +223 -0
- package/src/modules/bmb/reference/agents/simple-examples/commit-poet.agent.yaml +126 -0
- package/src/modules/bmb/reference/readme.md +3 -0
- package/src/modules/bmb/workflows/create-agent/agent-validation-checklist.md +174 -0
- package/src/modules/bmb/workflows/create-agent/brainstorm-context.md +99 -120
- package/src/modules/bmb/workflows/create-agent/communication-presets.csv +61 -0
- package/src/modules/bmb/workflows/create-agent/instructions.md +126 -65
- package/src/modules/bmb/workflows/create-agent/workflow.yaml +19 -12
- package/src/modules/bmb/workflows/edit-agent/README.md +174 -47
- package/src/modules/bmb/workflows/edit-agent/instructions.md +397 -33
- package/src/modules/bmb/workflows/edit-agent/workflow.yaml +24 -8
- package/src/modules/bmgd/workflows/4-production/story-context/workflow.yaml +1 -1
- package/src/modules/bmm/agents/analyst.agent.yaml +2 -2
- package/src/modules/bmm/agents/architect.agent.yaml +10 -2
- package/src/modules/bmm/agents/dev.agent.yaml +2 -2
- package/src/modules/bmm/agents/pm.agent.yaml +7 -3
- package/src/modules/bmm/agents/sm.agent.yaml +2 -2
- package/src/modules/bmm/agents/tea.agent.yaml +2 -2
- package/src/modules/bmm/agents/tech-writer.agent.yaml +15 -3
- package/src/modules/bmm/agents/ux-designer.agent.yaml +6 -2
- package/src/modules/bmm/docs/README.md +4 -0
- package/src/modules/bmm/docs/images/workflow-method-greenfield.excalidraw +5919 -0
- package/src/modules/bmm/docs/images/workflow-method-greenfield.svg +2 -0
- package/src/modules/bmm/docs/quick-start.md +6 -0
- package/src/modules/bmm/docs/scale-adaptive-system.md +6 -0
- package/src/modules/bmm/docs/workflows-implementation.md +10 -0
- package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.yaml +4 -4
- package/src/modules/bmm/workflows/{2-plan-workflows → 3-solutioning}/create-epics-and-stories/workflow.yaml +5 -5
- package/src/modules/bmm/workflows/4-implementation/story-context/workflow.yaml +1 -1
- package/src/modules/bmm/workflows/{frame-expert → diagrams}/create-dataflow/instructions.md +7 -8
- package/src/modules/bmm/workflows/diagrams/create-dataflow/workflow.yaml +27 -0
- package/src/modules/bmm/workflows/{frame-expert → diagrams}/create-diagram/instructions.md +9 -10
- package/src/modules/bmm/workflows/diagrams/create-diagram/workflow.yaml +27 -0
- package/src/modules/bmm/workflows/{frame-expert → diagrams}/create-flowchart/instructions.md +4 -5
- package/src/modules/bmm/workflows/diagrams/create-flowchart/workflow.yaml +27 -0
- package/src/modules/bmm/workflows/{frame-expert → diagrams}/create-wireframe/instructions.md +3 -3
- package/src/modules/bmm/workflows/diagrams/create-wireframe/workflow.yaml +27 -0
- package/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +18 -30
- package/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +2 -14
- package/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml +2 -14
- package/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml +2 -14
- package/src/modules/cis/agents/presentation-master.agent.yaml +60 -0
- package/tools/cli/commands/agent-install.js +409 -0
- package/tools/cli/installers/lib/core/installer.js +119 -0
- package/tools/cli/installers/lib/ide/_base-ide.js +25 -0
- package/tools/cli/installers/lib/ide/antigravity.js +463 -0
- package/tools/cli/installers/lib/ide/claude-code.js +43 -0
- package/tools/cli/installers/lib/ide/codex.js +217 -32
- package/tools/cli/installers/lib/ide/cursor.js +48 -0
- package/tools/cli/installers/lib/ide/github-copilot.js +74 -0
- package/tools/cli/installers/lib/ide/manager.js +35 -0
- package/tools/cli/installers/lib/ide/opencode.js +45 -0
- package/tools/cli/installers/lib/ide/windsurf.js +47 -0
- package/tools/cli/lib/agent/compiler.js +390 -0
- package/tools/cli/lib/agent/installer.js +725 -0
- package/tools/cli/lib/agent/template-engine.js +152 -0
- package/docs/installers-bundlers/web-bundler-usage.md +0 -54
- package/src/modules/bmb/workflows/create-agent/README.md +0 -203
- package/src/modules/bmb/workflows/create-agent/agent-architecture.md +0 -415
- package/src/modules/bmb/workflows/create-agent/agent-command-patterns.md +0 -759
- package/src/modules/bmb/workflows/create-agent/agent-types.md +0 -292
- package/src/modules/bmb/workflows/create-agent/checklist.md +0 -62
- package/src/modules/bmb/workflows/create-agent/communication-styles.md +0 -202
- package/src/modules/bmb/workflows/edit-agent/checklist.md +0 -112
- package/src/modules/bmb/workflows/redoc/README.md +0 -87
- package/src/modules/bmb/workflows/redoc/checklist.md +0 -99
- package/src/modules/bmb/workflows/redoc/instructions.md +0 -265
- package/src/modules/bmb/workflows/redoc/workflow.yaml +0 -34
- package/src/modules/bmm/agents/frame-expert.agent.yaml +0 -42
- package/src/modules/bmm/workflows/frame-expert/create-dataflow/workflow.yaml +0 -24
- package/src/modules/bmm/workflows/frame-expert/create-diagram/workflow.yaml +0 -25
- package/src/modules/bmm/workflows/frame-expert/create-flowchart/workflow.yaml +0 -28
- package/src/modules/bmm/workflows/frame-expert/create-wireframe/workflow.yaml +0 -24
- package/src/modules/bmm/workflows/workflow-status/paths/game-design.yaml +0 -52
- /package/src/{modules/bmm/workflows/frame-expert/_shared → core/resources/excalidraw}/excalidraw-helpers.md +0 -0
- /package/src/{modules/bmm/workflows/frame-expert/_shared → core/resources/excalidraw}/validate-json-instructions.md +0 -0
- /package/src/modules/bmm/workflows/{2-plan-workflows → 3-solutioning}/create-epics-and-stories/epics-template.md +0 -0
- /package/src/modules/bmm/workflows/{2-plan-workflows → 3-solutioning}/create-epics-and-stories/instructions.md +0 -0
- /package/src/modules/bmm/workflows/{frame-expert → diagrams}/_shared/excalidraw-library.json +0 -0
- /package/src/modules/bmm/workflows/{frame-expert → diagrams}/_shared/excalidraw-templates.yaml +0 -0
- /package/src/modules/bmm/workflows/{frame-expert → diagrams}/create-dataflow/checklist.md +0 -0
- /package/src/modules/bmm/workflows/{frame-expert → diagrams}/create-diagram/checklist.md +0 -0
- /package/src/modules/bmm/workflows/{frame-expert → diagrams}/create-flowchart/checklist.md +0 -0
- /package/src/modules/bmm/workflows/{frame-expert → diagrams}/create-wireframe/checklist.md +0 -0
|
@@ -0,0 +1,524 @@
|
|
|
1
|
+
# BMAD Agent Menu Patterns
|
|
2
|
+
|
|
3
|
+
Design patterns for agent menus in YAML source files.
|
|
4
|
+
|
|
5
|
+
## Menu Structure
|
|
6
|
+
|
|
7
|
+
Agents define menus in YAML, with triggers auto-prefixed with `*` during compilation:
|
|
8
|
+
|
|
9
|
+
```yaml
|
|
10
|
+
menu:
|
|
11
|
+
- trigger: action-name
|
|
12
|
+
[handler]: [value]
|
|
13
|
+
description: 'What this command does'
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
**Note:** `*help` and `*exit` are auto-injected by the compiler - DO NOT include them.
|
|
17
|
+
|
|
18
|
+
## Handler Types
|
|
19
|
+
|
|
20
|
+
### 1. Action Handler (Prompts & Inline)
|
|
21
|
+
|
|
22
|
+
For simple and expert agents with self-contained logic.
|
|
23
|
+
|
|
24
|
+
**Reference to Prompt ID:**
|
|
25
|
+
|
|
26
|
+
```yaml
|
|
27
|
+
prompts:
|
|
28
|
+
- id: analyze-code
|
|
29
|
+
content: |
|
|
30
|
+
<instructions>
|
|
31
|
+
Analyze the provided code for patterns and issues.
|
|
32
|
+
</instructions>
|
|
33
|
+
|
|
34
|
+
<process>
|
|
35
|
+
1. Identify code structure
|
|
36
|
+
2. Check for anti-patterns
|
|
37
|
+
3. Suggest improvements
|
|
38
|
+
</process>
|
|
39
|
+
|
|
40
|
+
menu:
|
|
41
|
+
- trigger: analyze
|
|
42
|
+
action: '#analyze-code'
|
|
43
|
+
description: 'Analyze code patterns'
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**Inline Instruction:**
|
|
47
|
+
|
|
48
|
+
```yaml
|
|
49
|
+
menu:
|
|
50
|
+
- trigger: quick-check
|
|
51
|
+
action: 'Perform a quick syntax validation on the current file'
|
|
52
|
+
description: 'Quick syntax check'
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**When to Use:**
|
|
56
|
+
|
|
57
|
+
- Simple/Expert agents with self-contained operations
|
|
58
|
+
- `#id` for complex, multi-step prompts
|
|
59
|
+
- Inline text for simple, one-line instructions
|
|
60
|
+
|
|
61
|
+
### 2. Workflow Handler
|
|
62
|
+
|
|
63
|
+
For module agents orchestrating multi-step processes.
|
|
64
|
+
|
|
65
|
+
```yaml
|
|
66
|
+
menu:
|
|
67
|
+
- trigger: create-prd
|
|
68
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/prd/workflow.yaml'
|
|
69
|
+
description: 'Create Product Requirements Document'
|
|
70
|
+
|
|
71
|
+
- trigger: brainstorm
|
|
72
|
+
workflow: '{project-root}/{bmad_folder}/core/workflows/brainstorming/workflow.yaml'
|
|
73
|
+
description: 'Guided brainstorming session'
|
|
74
|
+
|
|
75
|
+
# Placeholder for unimplemented workflows
|
|
76
|
+
- trigger: future-feature
|
|
77
|
+
workflow: 'todo'
|
|
78
|
+
description: 'Coming soon'
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**When to Use:**
|
|
82
|
+
|
|
83
|
+
- Module agents with workflow integration
|
|
84
|
+
- Multi-step document generation
|
|
85
|
+
- Complex interactive processes
|
|
86
|
+
- Use "todo" for planned but unimplemented features
|
|
87
|
+
|
|
88
|
+
### 3. Exec Handler
|
|
89
|
+
|
|
90
|
+
For executing tasks directly.
|
|
91
|
+
|
|
92
|
+
```yaml
|
|
93
|
+
menu:
|
|
94
|
+
- trigger: validate
|
|
95
|
+
exec: '{project-root}/{bmad_folder}/core/tasks/validate-workflow.xml'
|
|
96
|
+
description: 'Validate document structure'
|
|
97
|
+
|
|
98
|
+
- trigger: advanced-elicitation
|
|
99
|
+
exec: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
|
100
|
+
description: 'Advanced elicitation techniques'
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**When to Use:**
|
|
104
|
+
|
|
105
|
+
- Single-operation tasks
|
|
106
|
+
- Core system operations
|
|
107
|
+
- Utility functions
|
|
108
|
+
|
|
109
|
+
### 4. Template Handler
|
|
110
|
+
|
|
111
|
+
For document generation with templates.
|
|
112
|
+
|
|
113
|
+
```yaml
|
|
114
|
+
menu:
|
|
115
|
+
- trigger: create-brief
|
|
116
|
+
exec: '{project-root}/{bmad_folder}/core/tasks/create-doc.xml'
|
|
117
|
+
tmpl: '{project-root}/{bmad_folder}/bmm/templates/brief.md'
|
|
118
|
+
description: 'Create project brief'
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
**When to Use:**
|
|
122
|
+
|
|
123
|
+
- Template-based document creation
|
|
124
|
+
- Combine `exec` with `tmpl` path
|
|
125
|
+
- Structured output generation
|
|
126
|
+
|
|
127
|
+
### 5. Data Handler
|
|
128
|
+
|
|
129
|
+
Universal attribute for supplementary information.
|
|
130
|
+
|
|
131
|
+
```yaml
|
|
132
|
+
menu:
|
|
133
|
+
- trigger: team-standup
|
|
134
|
+
exec: '{project-root}/{bmad_folder}/bmm/tasks/standup.xml'
|
|
135
|
+
data: '{project-root}/{bmad_folder}/_cfg/agent-manifest.csv'
|
|
136
|
+
description: 'Run team standup'
|
|
137
|
+
|
|
138
|
+
- trigger: analyze-metrics
|
|
139
|
+
action: 'Analyze these metrics and identify trends'
|
|
140
|
+
data: '{project-root}/_data/metrics.json'
|
|
141
|
+
description: 'Analyze performance metrics'
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**When to Use:**
|
|
145
|
+
|
|
146
|
+
- Add to ANY handler type
|
|
147
|
+
- Reference data files (CSV, JSON, YAML)
|
|
148
|
+
- Provide context for operations
|
|
149
|
+
|
|
150
|
+
## Platform-Specific Menus
|
|
151
|
+
|
|
152
|
+
Control visibility based on deployment target:
|
|
153
|
+
|
|
154
|
+
```yaml
|
|
155
|
+
menu:
|
|
156
|
+
- trigger: git-flow
|
|
157
|
+
exec: '{project-root}/{bmad_folder}/bmm/tasks/git-flow.xml'
|
|
158
|
+
description: 'Git workflow operations'
|
|
159
|
+
ide-only: true # Only in IDE environments
|
|
160
|
+
|
|
161
|
+
- trigger: advanced-elicitation
|
|
162
|
+
exec: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
|
163
|
+
description: 'Advanced elicitation'
|
|
164
|
+
web-only: true # Only in web bundles
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## Trigger Naming Conventions
|
|
168
|
+
|
|
169
|
+
### Action-Based (Recommended)
|
|
170
|
+
|
|
171
|
+
```yaml
|
|
172
|
+
# Creation
|
|
173
|
+
- trigger: create-prd
|
|
174
|
+
- trigger: build-module
|
|
175
|
+
- trigger: generate-report
|
|
176
|
+
|
|
177
|
+
# Analysis
|
|
178
|
+
- trigger: analyze-requirements
|
|
179
|
+
- trigger: review-code
|
|
180
|
+
- trigger: validate-architecture
|
|
181
|
+
|
|
182
|
+
# Operations
|
|
183
|
+
- trigger: update-status
|
|
184
|
+
- trigger: sync-data
|
|
185
|
+
- trigger: deploy-changes
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
### Domain-Based
|
|
189
|
+
|
|
190
|
+
```yaml
|
|
191
|
+
# Development
|
|
192
|
+
- trigger: brainstorm
|
|
193
|
+
- trigger: architect
|
|
194
|
+
- trigger: refactor
|
|
195
|
+
|
|
196
|
+
# Project Management
|
|
197
|
+
- trigger: sprint-plan
|
|
198
|
+
- trigger: retrospective
|
|
199
|
+
- trigger: standup
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Bad Patterns
|
|
203
|
+
|
|
204
|
+
```yaml
|
|
205
|
+
# TOO VAGUE
|
|
206
|
+
- trigger: do
|
|
207
|
+
- trigger: run
|
|
208
|
+
- trigger: process
|
|
209
|
+
|
|
210
|
+
# TOO LONG
|
|
211
|
+
- trigger: create-comprehensive-product-requirements-document
|
|
212
|
+
|
|
213
|
+
# NO VERB
|
|
214
|
+
- trigger: prd
|
|
215
|
+
- trigger: config
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
## Menu Organization
|
|
219
|
+
|
|
220
|
+
### Recommended Order
|
|
221
|
+
|
|
222
|
+
```yaml
|
|
223
|
+
menu:
|
|
224
|
+
# Note: *help auto-injected first by compiler
|
|
225
|
+
|
|
226
|
+
# 1. Primary workflows (main value)
|
|
227
|
+
- trigger: workflow-init
|
|
228
|
+
workflow: '...'
|
|
229
|
+
description: 'Start here - initialize workflow'
|
|
230
|
+
|
|
231
|
+
- trigger: create-prd
|
|
232
|
+
workflow: '...'
|
|
233
|
+
description: 'Create PRD'
|
|
234
|
+
|
|
235
|
+
# 2. Secondary operations
|
|
236
|
+
- trigger: validate
|
|
237
|
+
exec: '...'
|
|
238
|
+
description: 'Validate document'
|
|
239
|
+
|
|
240
|
+
# 3. Utilities
|
|
241
|
+
- trigger: party-mode
|
|
242
|
+
workflow: '...'
|
|
243
|
+
description: 'Multi-agent discussion'
|
|
244
|
+
|
|
245
|
+
# Note: *exit auto-injected last by compiler
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
### Grouping by Phase
|
|
249
|
+
|
|
250
|
+
```yaml
|
|
251
|
+
menu:
|
|
252
|
+
# Analysis Phase
|
|
253
|
+
- trigger: brainstorm
|
|
254
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/1-analysis/brainstorm/workflow.yaml'
|
|
255
|
+
description: 'Brainstorm ideas'
|
|
256
|
+
|
|
257
|
+
- trigger: research
|
|
258
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/1-analysis/research/workflow.yaml'
|
|
259
|
+
description: 'Conduct research'
|
|
260
|
+
|
|
261
|
+
# Planning Phase
|
|
262
|
+
- trigger: prd
|
|
263
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/2-planning/prd/workflow.yaml'
|
|
264
|
+
description: 'Create PRD'
|
|
265
|
+
|
|
266
|
+
- trigger: architecture
|
|
267
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/2-planning/architecture/workflow.yaml'
|
|
268
|
+
description: 'Design architecture'
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
## Description Best Practices
|
|
272
|
+
|
|
273
|
+
### Good Descriptions
|
|
274
|
+
|
|
275
|
+
```yaml
|
|
276
|
+
# Clear action + object
|
|
277
|
+
- description: 'Create Product Requirements Document'
|
|
278
|
+
|
|
279
|
+
# Specific outcome
|
|
280
|
+
- description: 'Analyze security vulnerabilities'
|
|
281
|
+
|
|
282
|
+
# User benefit
|
|
283
|
+
- description: 'Optimize code for performance'
|
|
284
|
+
|
|
285
|
+
# Context when needed
|
|
286
|
+
- description: 'Start here - initialize workflow path'
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
### Poor Descriptions
|
|
290
|
+
|
|
291
|
+
```yaml
|
|
292
|
+
# Too vague
|
|
293
|
+
- description: 'Process'
|
|
294
|
+
|
|
295
|
+
# Technical jargon
|
|
296
|
+
- description: 'Execute WF123'
|
|
297
|
+
|
|
298
|
+
# Missing context
|
|
299
|
+
- description: 'Run'
|
|
300
|
+
|
|
301
|
+
# Redundant with trigger
|
|
302
|
+
- description: 'Create PRD' # trigger: create-prd (too similar)
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
## Prompts Section (Simple/Expert Agents)
|
|
306
|
+
|
|
307
|
+
### Prompt Structure
|
|
308
|
+
|
|
309
|
+
```yaml
|
|
310
|
+
prompts:
|
|
311
|
+
- id: unique-identifier
|
|
312
|
+
content: |
|
|
313
|
+
<instructions>
|
|
314
|
+
What this prompt accomplishes
|
|
315
|
+
</instructions>
|
|
316
|
+
|
|
317
|
+
<process>
|
|
318
|
+
1. First step
|
|
319
|
+
{{#if custom_option}}
|
|
320
|
+
2. Conditional step
|
|
321
|
+
{{/if}}
|
|
322
|
+
3. Final step
|
|
323
|
+
</process>
|
|
324
|
+
|
|
325
|
+
<output_format>
|
|
326
|
+
Expected structure of results
|
|
327
|
+
</output_format>
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
### Semantic XML Tags in Prompts
|
|
331
|
+
|
|
332
|
+
Use XML tags to structure prompt content:
|
|
333
|
+
|
|
334
|
+
- `<instructions>` - What to do
|
|
335
|
+
- `<process>` - Step-by-step approach
|
|
336
|
+
- `<output_format>` - Expected results
|
|
337
|
+
- `<examples>` - Sample outputs
|
|
338
|
+
- `<constraints>` - Limitations
|
|
339
|
+
- `<context>` - Background information
|
|
340
|
+
|
|
341
|
+
### Handlebars in Prompts
|
|
342
|
+
|
|
343
|
+
Customize based on install_config:
|
|
344
|
+
|
|
345
|
+
```yaml
|
|
346
|
+
prompts:
|
|
347
|
+
- id: analyze
|
|
348
|
+
content: |
|
|
349
|
+
{{#if detailed_mode}}
|
|
350
|
+
Perform comprehensive analysis with full explanations.
|
|
351
|
+
{{/if}}
|
|
352
|
+
{{#unless detailed_mode}}
|
|
353
|
+
Quick analysis focusing on key points.
|
|
354
|
+
{{/unless}}
|
|
355
|
+
|
|
356
|
+
Address {{user_name}} in {{communication_style}} tone.
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
## Path Variables
|
|
360
|
+
|
|
361
|
+
### Always Use Variables
|
|
362
|
+
|
|
363
|
+
```yaml
|
|
364
|
+
# GOOD - Portable paths
|
|
365
|
+
workflow: "{project-root}/{bmad_folder}/bmm/workflows/prd/workflow.yaml"
|
|
366
|
+
exec: "{project-root}/{bmad_folder}/core/tasks/validate.xml"
|
|
367
|
+
data: "{project-root}/_data/metrics.csv"
|
|
368
|
+
|
|
369
|
+
# BAD - Hardcoded paths
|
|
370
|
+
workflow: "/Users/john/project/.bmad/bmm/workflows/prd/workflow.yaml"
|
|
371
|
+
exec: "../../../core/tasks/validate.xml"
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
### Available Variables
|
|
375
|
+
|
|
376
|
+
- `{project-root}` - Project root directory
|
|
377
|
+
- `{bmad_folder}` - BMAD installation folder
|
|
378
|
+
- `{agent-folder}` - Agent installation directory (Expert agents)
|
|
379
|
+
- `{output_folder}` - Document output location
|
|
380
|
+
- `{user_name}` - User's name from config
|
|
381
|
+
- `{communication_language}` - Language preference
|
|
382
|
+
|
|
383
|
+
## Complete Examples
|
|
384
|
+
|
|
385
|
+
### Simple Agent Menu
|
|
386
|
+
|
|
387
|
+
```yaml
|
|
388
|
+
prompts:
|
|
389
|
+
- id: format-code
|
|
390
|
+
content: |
|
|
391
|
+
<instructions>
|
|
392
|
+
Format the provided code according to style guidelines.
|
|
393
|
+
</instructions>
|
|
394
|
+
|
|
395
|
+
Apply:
|
|
396
|
+
- Consistent indentation
|
|
397
|
+
- Proper spacing
|
|
398
|
+
- Clear naming conventions
|
|
399
|
+
|
|
400
|
+
menu:
|
|
401
|
+
- trigger: format
|
|
402
|
+
action: '#format-code'
|
|
403
|
+
description: 'Format code to style guidelines'
|
|
404
|
+
|
|
405
|
+
- trigger: lint
|
|
406
|
+
action: 'Check code for common issues and anti-patterns'
|
|
407
|
+
description: 'Lint code for issues'
|
|
408
|
+
|
|
409
|
+
- trigger: suggest
|
|
410
|
+
action: 'Suggest improvements for code readability'
|
|
411
|
+
description: 'Suggest improvements'
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
### Expert Agent Menu
|
|
415
|
+
|
|
416
|
+
```yaml
|
|
417
|
+
critical_actions:
|
|
418
|
+
- 'Load {agent-folder}/memories.md'
|
|
419
|
+
- 'Follow {agent-folder}/instructions.md'
|
|
420
|
+
- 'ONLY access {agent-folder}/'
|
|
421
|
+
|
|
422
|
+
prompts:
|
|
423
|
+
- id: reflect
|
|
424
|
+
content: |
|
|
425
|
+
Guide {{user_name}} through reflection on recent entries.
|
|
426
|
+
Reference patterns from memories.md naturally.
|
|
427
|
+
|
|
428
|
+
menu:
|
|
429
|
+
- trigger: write
|
|
430
|
+
action: '#reflect'
|
|
431
|
+
description: 'Write journal entry'
|
|
432
|
+
|
|
433
|
+
- trigger: save
|
|
434
|
+
action: 'Update {agent-folder}/memories.md with session insights'
|
|
435
|
+
description: "Save today's session"
|
|
436
|
+
|
|
437
|
+
- trigger: patterns
|
|
438
|
+
action: 'Analyze recent entries for recurring themes'
|
|
439
|
+
description: 'View patterns'
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
### Module Agent Menu
|
|
443
|
+
|
|
444
|
+
```yaml
|
|
445
|
+
menu:
|
|
446
|
+
- trigger: workflow-init
|
|
447
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/workflow-status/init/workflow.yaml'
|
|
448
|
+
description: 'Initialize workflow path (START HERE)'
|
|
449
|
+
|
|
450
|
+
- trigger: brainstorm
|
|
451
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/1-analysis/brainstorm/workflow.yaml'
|
|
452
|
+
description: 'Guided brainstorming'
|
|
453
|
+
|
|
454
|
+
- trigger: prd
|
|
455
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/2-planning/prd/workflow.yaml'
|
|
456
|
+
description: 'Create PRD'
|
|
457
|
+
|
|
458
|
+
- trigger: architecture
|
|
459
|
+
workflow: '{project-root}/{bmad_folder}/bmm/workflows/2-planning/architecture/workflow.yaml'
|
|
460
|
+
description: 'Design architecture'
|
|
461
|
+
|
|
462
|
+
- trigger: party-mode
|
|
463
|
+
workflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.yaml'
|
|
464
|
+
description: 'Multi-agent discussion'
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
## Validation Checklist
|
|
468
|
+
|
|
469
|
+
- [ ] No duplicate triggers
|
|
470
|
+
- [ ] Triggers don't start with `*` (auto-added)
|
|
471
|
+
- [ ] Every item has a description
|
|
472
|
+
- [ ] Paths use variables, not hardcoded
|
|
473
|
+
- [ ] `#id` references exist in prompts section
|
|
474
|
+
- [ ] Workflow paths resolve or are "todo"
|
|
475
|
+
- [ ] No `*help` or `*exit` (auto-injected)
|
|
476
|
+
- [ ] Descriptions are clear and action-oriented
|
|
477
|
+
- [ ] Platform-specific flags used correctly (ide-only, web-only)
|
|
478
|
+
|
|
479
|
+
## Common Mistakes
|
|
480
|
+
|
|
481
|
+
### Duplicate Triggers
|
|
482
|
+
|
|
483
|
+
```yaml
|
|
484
|
+
# BAD - compiler will fail
|
|
485
|
+
- trigger: analyze
|
|
486
|
+
action: '#first'
|
|
487
|
+
description: 'First analysis'
|
|
488
|
+
|
|
489
|
+
- trigger: analyze
|
|
490
|
+
action: '#second'
|
|
491
|
+
description: 'Second analysis'
|
|
492
|
+
```
|
|
493
|
+
|
|
494
|
+
### Including Auto-Injected Items
|
|
495
|
+
|
|
496
|
+
```yaml
|
|
497
|
+
# BAD - these are auto-injected
|
|
498
|
+
menu:
|
|
499
|
+
- trigger: help
|
|
500
|
+
description: 'Show help'
|
|
501
|
+
|
|
502
|
+
- trigger: exit
|
|
503
|
+
description: 'Exit agent'
|
|
504
|
+
```
|
|
505
|
+
|
|
506
|
+
### Missing Prompt Reference
|
|
507
|
+
|
|
508
|
+
```yaml
|
|
509
|
+
# BAD - prompt id doesn't exist
|
|
510
|
+
menu:
|
|
511
|
+
- trigger: analyze
|
|
512
|
+
action: '#nonexistent-prompt'
|
|
513
|
+
description: 'Analysis'
|
|
514
|
+
```
|
|
515
|
+
|
|
516
|
+
### Hardcoded Paths
|
|
517
|
+
|
|
518
|
+
```yaml
|
|
519
|
+
# BAD - not portable
|
|
520
|
+
menu:
|
|
521
|
+
- trigger: run
|
|
522
|
+
workflow: '/absolute/path/to/workflow.yaml'
|
|
523
|
+
description: 'Run workflow'
|
|
524
|
+
```
|