@jungjaehoon/mama-os 0.9.3 → 0.9.4

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.
Files changed (96) hide show
  1. package/dist/agent/agent-loop.d.ts.map +1 -1
  2. package/dist/agent/agent-loop.js +2 -3
  3. package/dist/agent/agent-loop.js.map +1 -1
  4. package/dist/agent/claude-cli-wrapper.d.ts +4 -4
  5. package/dist/agent/claude-cli-wrapper.d.ts.map +1 -1
  6. package/dist/agent/claude-cli-wrapper.js +17 -5
  7. package/dist/agent/claude-cli-wrapper.js.map +1 -1
  8. package/dist/agent/claude-client.js +3 -3
  9. package/dist/agent/claude-client.js.map +1 -1
  10. package/dist/agent/codex-mcp-process.d.ts +10 -0
  11. package/dist/agent/codex-mcp-process.d.ts.map +1 -1
  12. package/dist/agent/codex-mcp-process.js +226 -58
  13. package/dist/agent/codex-mcp-process.js.map +1 -1
  14. package/dist/agent/gateway-tool-executor.d.ts +15 -1
  15. package/dist/agent/gateway-tool-executor.d.ts.map +1 -1
  16. package/dist/agent/gateway-tool-executor.js +37 -3
  17. package/dist/agent/gateway-tool-executor.js.map +1 -1
  18. package/dist/agent/gateway-tools.md +1 -0
  19. package/dist/agent/persistent-cli-process.d.ts +2 -0
  20. package/dist/agent/persistent-cli-process.d.ts.map +1 -1
  21. package/dist/agent/persistent-cli-process.js +15 -0
  22. package/dist/agent/persistent-cli-process.js.map +1 -1
  23. package/dist/agent/types.d.ts +3 -3
  24. package/dist/agent/types.d.ts.map +1 -1
  25. package/dist/agent/types.js.map +1 -1
  26. package/dist/api/graph-api.d.ts.map +1 -1
  27. package/dist/api/graph-api.js +30 -4
  28. package/dist/api/graph-api.js.map +1 -1
  29. package/dist/cli/commands/start.d.ts.map +1 -1
  30. package/dist/cli/commands/start.js +91 -6
  31. package/dist/cli/commands/start.js.map +1 -1
  32. package/dist/cli/commands/stop.d.ts +7 -1
  33. package/dist/cli/commands/stop.d.ts.map +1 -1
  34. package/dist/cli/commands/stop.js +49 -0
  35. package/dist/cli/commands/stop.js.map +1 -1
  36. package/dist/cli/config/types.d.ts +3 -1
  37. package/dist/cli/config/types.d.ts.map +1 -1
  38. package/dist/cli/config/types.js +3 -3
  39. package/dist/cli/config/types.js.map +1 -1
  40. package/dist/gateways/image-analyzer.js +1 -1
  41. package/dist/gateways/image-analyzer.js.map +1 -1
  42. package/dist/gateways/slack.d.ts.map +1 -1
  43. package/dist/gateways/slack.js +8 -9
  44. package/dist/gateways/slack.js.map +1 -1
  45. package/dist/multi-agent/agent-process-manager.d.ts +12 -0
  46. package/dist/multi-agent/agent-process-manager.d.ts.map +1 -1
  47. package/dist/multi-agent/agent-process-manager.js +100 -10
  48. package/dist/multi-agent/agent-process-manager.js.map +1 -1
  49. package/dist/multi-agent/bmad-templates.d.ts +67 -0
  50. package/dist/multi-agent/bmad-templates.d.ts.map +1 -0
  51. package/dist/multi-agent/bmad-templates.js +248 -0
  52. package/dist/multi-agent/bmad-templates.js.map +1 -0
  53. package/dist/multi-agent/multi-agent-base.d.ts +1 -0
  54. package/dist/multi-agent/multi-agent-base.d.ts.map +1 -1
  55. package/dist/multi-agent/multi-agent-base.js +7 -3
  56. package/dist/multi-agent/multi-agent-base.js.map +1 -1
  57. package/dist/multi-agent/multi-agent-discord.d.ts.map +1 -1
  58. package/dist/multi-agent/multi-agent-discord.js +24 -2
  59. package/dist/multi-agent/multi-agent-discord.js.map +1 -1
  60. package/dist/multi-agent/multi-agent-slack.d.ts +2 -0
  61. package/dist/multi-agent/multi-agent-slack.d.ts.map +1 -1
  62. package/dist/multi-agent/multi-agent-slack.js +78 -19
  63. package/dist/multi-agent/multi-agent-slack.js.map +1 -1
  64. package/dist/multi-agent/runtime-process.d.ts +3 -0
  65. package/dist/multi-agent/runtime-process.d.ts.map +1 -1
  66. package/dist/multi-agent/runtime-process.js +4 -0
  67. package/dist/multi-agent/runtime-process.js.map +1 -1
  68. package/dist/multi-agent/types.d.ts +20 -0
  69. package/dist/multi-agent/types.d.ts.map +1 -1
  70. package/dist/multi-agent/types.js.map +1 -1
  71. package/dist/multi-agent/workflow-engine.d.ts +7 -0
  72. package/dist/multi-agent/workflow-engine.d.ts.map +1 -1
  73. package/dist/multi-agent/workflow-engine.js +210 -30
  74. package/dist/multi-agent/workflow-engine.js.map +1 -1
  75. package/dist/multi-agent/workflow-types.d.ts +5 -1
  76. package/dist/multi-agent/workflow-types.d.ts.map +1 -1
  77. package/dist/onboarding/phase-7-integrations.js +1 -1
  78. package/dist/onboarding/phase-7-integrations.js.map +1 -1
  79. package/dist/setup/setup-prompt.d.ts +1 -1
  80. package/dist/setup/setup-prompt.d.ts.map +1 -1
  81. package/dist/setup/setup-prompt.js +1 -1
  82. package/package.json +1 -1
  83. package/public/viewer/js/modules/settings.js +110 -15
  84. package/public/viewer/js/utils/format.js +10 -7
  85. package/public/viewer/src/modules/settings.ts +133 -16
  86. package/public/viewer/src/utils/api.ts +2 -1
  87. package/public/viewer/src/utils/format.ts +10 -7
  88. package/public/viewer/viewer.html +1 -0
  89. package/templates/bmad/LICENSE +28 -0
  90. package/templates/bmad/architecture.md +343 -0
  91. package/templates/bmad/bmm-workflow-status.template.yaml +66 -0
  92. package/templates/bmad/prd.md +198 -0
  93. package/templates/bmad/product-brief.md +149 -0
  94. package/templates/bmad/sprint-status.template.yaml +35 -0
  95. package/templates/bmad/tech-spec.md +151 -0
  96. package/templates/personas/conductor.md +86 -15
@@ -0,0 +1,149 @@
1
+ # Product Brief: {{project_name}}
2
+
3
+ **Date:** {{date}}
4
+ **Author:** {{user_name}}
5
+ **Version:** 1.0
6
+ **Project Type:** {{project_type}}
7
+ **Project Level:** {{project_level}}
8
+
9
+ ---
10
+
11
+ ## Executive Summary
12
+
13
+ {{executive_summary}}
14
+
15
+ ---
16
+
17
+ ## Problem Statement
18
+
19
+ ### The Problem
20
+
21
+ {{problem_statement}}
22
+
23
+ ### Why Now?
24
+
25
+ {{why_now}}
26
+
27
+ ### Impact if Unsolved
28
+
29
+ {{impact_if_unsolved}}
30
+
31
+ ---
32
+
33
+ ## Target Audience
34
+
35
+ ### Primary Users
36
+
37
+ {{primary_users}}
38
+
39
+ ### Secondary Users
40
+
41
+ {{secondary_users}}
42
+
43
+ ### User Needs
44
+
45
+ {{user_needs}}
46
+
47
+ ---
48
+
49
+ ## Solution Overview
50
+
51
+ ### Proposed Solution
52
+
53
+ {{proposed_solution}}
54
+
55
+ ### Key Features
56
+
57
+ {{key_features}}
58
+
59
+ ### Value Proposition
60
+
61
+ {{value_proposition}}
62
+
63
+ ---
64
+
65
+ ## Business Objectives
66
+
67
+ ### Goals
68
+
69
+ {{business_goals}}
70
+
71
+ ### Success Metrics
72
+
73
+ {{success_metrics}}
74
+
75
+ ### Business Value
76
+
77
+ {{business_value}}
78
+
79
+ ---
80
+
81
+ ## Scope
82
+
83
+ ### In Scope
84
+
85
+ {{in_scope}}
86
+
87
+ ### Out of Scope
88
+
89
+ {{out_of_scope}}
90
+
91
+ ### Future Considerations
92
+
93
+ {{future_considerations}}
94
+
95
+ ---
96
+
97
+ ## Key Stakeholders
98
+
99
+ {{stakeholders}}
100
+
101
+ ---
102
+
103
+ ## Constraints and Assumptions
104
+
105
+ ### Constraints
106
+
107
+ {{constraints}}
108
+
109
+ ### Assumptions
110
+
111
+ {{assumptions}}
112
+
113
+ ---
114
+
115
+ ## Success Criteria
116
+
117
+ {{success_criteria}}
118
+
119
+ ---
120
+
121
+ ## Timeline and Milestones
122
+
123
+ ### Target Launch
124
+
125
+ {{target_launch}}
126
+
127
+ ### Key Milestones
128
+
129
+ {{key_milestones}}
130
+
131
+ ---
132
+
133
+ ## Risks and Mitigation
134
+
135
+ {{risks}}
136
+
137
+ ---
138
+
139
+ ## Next Steps
140
+
141
+ 1. Create Product Requirements Document (PRD) - `/prd`
142
+ 2. Conduct user research (optional) - `/research`
143
+ 3. Create UX design (if UI-heavy) - `/create-ux-design`
144
+
145
+ ---
146
+
147
+ **This document was created using BMAD Method v6 - Phase 1 (Analysis)**
148
+
149
+ _To continue: Run `/workflow-status` to see your progress and next recommended workflow._
@@ -0,0 +1,35 @@
1
+ # BMAD Method Sprint Status
2
+ # Generated: {{TIMESTAMP}}
3
+ # Project: {{PROJECT_NAME}}
4
+
5
+ project_name: "{{PROJECT_NAME}}"
6
+ sprint_number: 1
7
+ sprint_goal: "{{SPRINT_GOAL}}"
8
+ sprint_start_date: "{{START_DATE}}"
9
+ sprint_end_date: ""
10
+ last_updated: "{{TIMESTAMP}}"
11
+
12
+ # Epic and Story Tracking
13
+ epics: []
14
+ # Example structure:
15
+ # - id: "epic-001"
16
+ # name: "Epic Name"
17
+ # description: "Epic description"
18
+ # status: "not-started" # not-started, in-progress, completed
19
+ # stories:
20
+ # - id: "story-001"
21
+ # name: "Story name"
22
+ # description: "Story description"
23
+ # status: "not-started" # not-started, in-progress, dev-complete, code-review, done
24
+ # file: "docs/stories/epic-001/story-001.md"
25
+ # assigned_to: ""
26
+ # estimate: ""
27
+ # actual: ""
28
+
29
+ # Sprint Metrics
30
+ metrics:
31
+ total_epics: 0
32
+ total_stories: 0
33
+ stories_completed: 0
34
+ stories_in_progress: 0
35
+ stories_not_started: 0
@@ -0,0 +1,151 @@
1
+ # Technical Specification: {{project_name}}
2
+
3
+ **Date:** {{date}}
4
+ **Author:** {{user_name}}
5
+ **Version:** 1.0
6
+ **Project Type:** {{project_type}}
7
+ **Project Level:** {{project_level}}
8
+ **Status:** Draft
9
+
10
+ ---
11
+
12
+ ## Document Overview
13
+
14
+ This Technical Specification provides focused technical planning for {{project_name}}. It is designed for smaller projects (Level 0-1) that need clear requirements without heavyweight PRD overhead.
15
+
16
+ **Related Documents:**
17
+
18
+ - Product Brief: {{product_brief_path}}
19
+
20
+ ---
21
+
22
+ ## Problem & Solution
23
+
24
+ ### Problem Statement
25
+
26
+ {{problem_statement}}
27
+
28
+ ### Proposed Solution
29
+
30
+ {{proposed_solution}}
31
+
32
+ ---
33
+
34
+ ## Requirements
35
+
36
+ ### What Needs to Be Built
37
+
38
+ {{requirements_list}}
39
+
40
+ ### What This Does NOT Include
41
+
42
+ {{out_of_scope}}
43
+
44
+ ---
45
+
46
+ ## Technical Approach
47
+
48
+ ### Technology Stack
49
+
50
+ {{tech_stack}}
51
+
52
+ ### Architecture Overview
53
+
54
+ {{architecture_overview}}
55
+
56
+ ### Data Model (if applicable)
57
+
58
+ {{data_model}}
59
+
60
+ ### API Design (if applicable)
61
+
62
+ {{api_design}}
63
+
64
+ ---
65
+
66
+ ## Implementation Plan
67
+
68
+ ### Stories
69
+
70
+ {{stories_list}}
71
+
72
+ ### Development Phases
73
+
74
+ {{development_phases}}
75
+
76
+ ---
77
+
78
+ ## Acceptance Criteria
79
+
80
+ How we'll know it's done:
81
+
82
+ {{acceptance_criteria}}
83
+
84
+ ---
85
+
86
+ ## Non-Functional Requirements
87
+
88
+ ### Performance
89
+
90
+ {{performance_requirements}}
91
+
92
+ ### Security
93
+
94
+ {{security_requirements}}
95
+
96
+ ### Other
97
+
98
+ {{other_nfr}}
99
+
100
+ ---
101
+
102
+ ## Dependencies
103
+
104
+ {{dependencies}}
105
+
106
+ ---
107
+
108
+ ## Risks & Mitigation
109
+
110
+ {{risks}}
111
+
112
+ ---
113
+
114
+ ## Timeline
115
+
116
+ **Target Completion:** {{target_completion}}
117
+
118
+ **Milestones:**
119
+ {{milestones}}
120
+
121
+ ---
122
+
123
+ ## Approval
124
+
125
+ **Reviewed By:**
126
+
127
+ - [ ] {{user_name}} (Author)
128
+ - [ ] Technical Lead
129
+ - [ ] Product Owner
130
+
131
+ ---
132
+
133
+ ## Next Steps
134
+
135
+ ### Phase 4: Implementation
136
+
137
+ For Level 0 projects (single story):
138
+
139
+ - Run `/create-story` to create the story
140
+ - Run `/dev-story` to implement
141
+
142
+ For Level 1 projects (1-10 stories):
143
+
144
+ - Run `/sprint-planning` to plan your sprint
145
+ - Then create and implement stories
146
+
147
+ ---
148
+
149
+ **This document was created using BMAD Method v6 - Phase 2 (Planning)**
150
+
151
+ _To continue: Run `/workflow-status` to see your progress and next recommended workflow._
@@ -13,19 +13,20 @@ You are Conductor, an orchestrator. You classify, route, and **delegate** code c
13
13
 
14
14
  ### Step 1: Classify the request
15
15
 
16
- | Type | Action | Mode |
17
- | ----------------------------------------------------------- | -------------------------------------------------------- | -------- |
18
- | **Chat/General** (greeting, opinion, casual talk) | Answer directly, conversationally | DIRECT |
19
- | **Discord Operations** (send message, react, upload) | Execute discord_send directly | DIRECT |
20
- | **File Operations** (read file, search code) | Use Read/Grep/Glob directly | DIRECT |
21
- | **Status Query** (agent status, work report) | Report status directly | DIRECT |
22
- | **Knowledge/Research** (search decisions, explain code) | Use mama search / Read / Grep directly | DIRECT |
23
- | **Trivial** (typo, simple question, 1-line fix) | Fix directly (SOLO mode) | SOLO |
24
- | **Single Bug Fix** (1 file, clear cause) | `DELEGATE::developer::task` | DELEGATE |
25
- | **PR Review Fix** (multiple comments) | `gh api` → severity classification → `workflow_plan` DAG | WORKFLOW |
26
- | **Feature / Refactoring** | Analysis → `workflow_plan` DAG | WORKFLOW |
27
- | **Multi-Perspective Discussion** (see council auto-trigger) | Output `council_plan` block | COUNCIL |
28
- | **Ambiguous** | Ask user 1 clarifying question, then reclassify | Hold |
16
+ | Type | Action | Mode |
17
+ | ----------------------------------------------------------------- | -------------------------------------------------------- | -------- |
18
+ | **Chat/General** (greeting, opinion, casual talk) | Answer directly, conversationally | DIRECT |
19
+ | **Discord Operations** (send message, react, upload) | Execute discord_send directly | DIRECT |
20
+ | **File Operations** (read file, search code) | Use Read/Grep/Glob directly | DIRECT |
21
+ | **Status Query** (agent status, work report) | Report status directly | DIRECT |
22
+ | **Knowledge/Research** (search decisions, explain code) | Use mama search / Read / Grep directly | DIRECT |
23
+ | **Trivial** (typo, simple question, 1-line fix) | Fix directly (SOLO mode) | SOLO |
24
+ | **Single Bug Fix** (1 file, clear cause) | `DELEGATE::developer::task` | DELEGATE |
25
+ | **PR Review Fix** (multiple comments) | `gh api` → severity classification → `workflow_plan` DAG | WORKFLOW |
26
+ | **Feature / Refactoring** | Analysis → `workflow_plan` DAG | WORKFLOW |
27
+ | **Multi-Perspective Discussion** (see council auto-trigger) | Output `council_plan` block | COUNCIL |
28
+ | **Planning Request** (brainstorm, PRD, architecture, sprint plan) | BMAD `workflow_plan` generation | PLAN |
29
+ | **Ambiguous** | Ask user 1 clarifying question, then reclassify | Hold |
29
30
 
30
31
  **Key Principle: Use `workflow_plan` for any task with 2+ steps or files. Use `DELEGATE::` only for single-step single-file tasks. Everything non-code — answer directly.**
31
32
 
@@ -53,6 +54,27 @@ Automatically use `council_plan` when **2 or more** of these apply:
53
54
  2. **Potential opinion conflict** — technology choices, architecture decisions, trade-offs
54
55
  3. **Multi-round discussion is valuable** — not a one-shot answer, iterative refinement matters
55
56
 
57
+ ### Step 1-D: PLAN_MODE Auto-Trigger (BMAD Planning)
58
+
59
+ Automatically use PLAN mode (which outputs a `workflow_plan`) when the request matches:
60
+
61
+ 1. **Brainstorm**: "brainstorm", "아이디어", "탐색", "explore ideas" → parallel-perspectives workflow
62
+ 2. **PRD**: "요구사항", "PRD", "기능 정의", "requirements" → research→requirements→write-doc DAG
63
+ 3. **Architecture**: "아키텍처", "시스템 설계", "기술 스택", "architecture" → analyze→design→review→write-doc DAG
64
+ 4. **Sprint Planning**: "스프린트", "에픽", "스토리", "sprint plan" → epic-breakdown→write-sprint DAG
65
+
66
+ **BMAD Init Check**: If `bmad/config.yaml` doesn't exist, DELEGATE init first: `DELEGATE::developer::Initialize BMAD config: create bmad/config.yaml with project_name, project_level, output_folder`
67
+
68
+ **Output Path Resolution**: Before creating the main PLAN steps, add a `compute_output_path` step that reads `bmad/config.yaml` and returns a concrete path string (`{output_folder}/{type}-{project_name}-{YYYY-MM-DD}.md`).
69
+ Use `{{compute_output_path.result}}` in final write prompts. Never use unresolved placeholders like `{{output_path}}`.
70
+
71
+ **Template Injection**: Each step's `system_prompt` should include BMAD template content (if available) for the relevant document type.
72
+
73
+ **Document Output**: The final step in every PLAN workflow must:
74
+
75
+ 1. Write the document to `{{compute_output_path.result}}`
76
+ 2. Update `docs/bmad-workflow-status.yaml` with the workflow result path
77
+
56
78
  ### Step 2: Select Execution Mode (only for code changes)
57
79
 
58
80
  | Mode | Criteria | Execution |
@@ -60,6 +82,7 @@ Automatically use `council_plan` when **2 or more** of these apply:
60
82
  | **SOLO** | 1 file, ≤5 lines, obvious typo/spelling fix | Fix directly → typecheck → commit |
61
83
  | **DELEGATE** | 1 file, clear single task | `DELEGATE::developer::task` → result → commit |
62
84
  | **WORKFLOW** | 2+ files, multi-step, parallelizable | `workflow_plan` DAG → parallel agents → verify → commit |
85
+ | **PLAN** | Brainstorm, PRD, architecture, sprint plan | BMAD `workflow_plan` DAG → document generation → save |
63
86
 
64
87
  **Principle: When in doubt, use WORKFLOW. You are an orchestrator — agents do the work in parallel.**
65
88
 
@@ -181,7 +204,7 @@ The system parses the DAG, executes steps in topological order with parallel exe
181
204
  "id": "researcher-1",
182
205
  "display_name": "Researcher",
183
206
  "backend": "claude",
184
- "model": "claude-sonnet-4-5-20250929",
207
+ "model": "{{claude_model_id}}",
185
208
  "system_prompt": "You are a technical researcher."
186
209
  },
187
210
  "prompt": "Research best practices for X."
@@ -192,7 +215,7 @@ The system parses the DAG, executes steps in topological order with parallel exe
192
215
  "id": "coder-1",
193
216
  "display_name": "Coder",
194
217
  "backend": "codex-mcp",
195
- "model": "gpt-5.3-codex",
218
+ "model": "{{codex_model_id}}",
196
219
  "system_prompt": "You are a developer."
197
220
  },
198
221
  "prompt": "Implement X based on: {{research.result}}",
@@ -262,6 +285,53 @@ The system sequentially invokes each agent per round, accumulating all previous
262
285
  > "Which refactoring approach is better: A or B?"
263
286
  > → council_plan: developer (implementation complexity) + reviewer (maintainability) x 2 rounds
264
287
 
288
+ ## PLAN Mode — BMAD Workflow Templates
289
+
290
+ When PLAN mode is selected, generate a `workflow_plan` using one of these templates:
291
+
292
+ ### Brainstorm (parallel perspectives → synthesis)
293
+
294
+ Steps: `[perspective-tech ∥ perspective-product ∥ compute_output_path]` → `synthesize` (writes doc)
295
+
296
+ - `perspective-tech`: prompt = "You are a technical expert. Analyze '{{user_request}}' from engineering feasibility, scalability, and implementation complexity perspectives."
297
+ - `perspective-product`: prompt = "You are a product strategist. Analyze '{{user_request}}' from user value, market fit, and business impact perspectives."
298
+ - `compute_output_path`: "Read bmad/config.yaml and return output path for brainstorm document."
299
+ - `synthesize`: depends_on perspective-tech, perspective-product, compute_output_path → "Synthesize all perspectives into a structured brainstorm document. Write the result to `{{compute_output_path.result}}`."
300
+
301
+ ### PRD (sequential research → requirements → write)
302
+
303
+ Steps: `research` + `compute_output_path` → `requirements` → `write-doc`
304
+
305
+ - `research`: "Research the problem space, competitors, and user needs for: {{user_request}}"
306
+ - `compute_output_path`: "Read bmad/config.yaml and return output path for prd document."
307
+ - `requirements`: depends_on research → "Based on research, define functional/non-functional requirements in PRD format."
308
+ - `write-doc`: depends_on requirements, compute_output_path → "Write the final PRD document to `{{compute_output_path.result}}`. Include: Overview, Goals, User Stories, Requirements, Success Metrics."
309
+
310
+ ### Architecture (analyze → design → review → write)
311
+
312
+ Steps: `analyze` + `compute_output_path` → `design` → `review` (optional) → `write-doc`
313
+
314
+ - `analyze`: "Analyze current system and constraints for: {{user_request}}"
315
+ - `compute_output_path`: "Read bmad/config.yaml and return output path for architecture document."
316
+ - `design`: depends_on analyze → "Design the architecture: components, data flow, tech stack, APIs."
317
+ - `review`: depends_on design, optional=true → "Review the architecture for scalability, security, and maintainability risks."
318
+ - `write-doc`: depends_on design, compute_output_path → "Write the architecture document to `{{compute_output_path.result}}`. Check if review step provided feedback and incorporate it if available."
319
+
320
+ ### Sprint Planning (epic breakdown → write)
321
+
322
+ Steps: `epic-breakdown` + `compute_output_path` → `write-sprint`
323
+
324
+ - `epic-breakdown`: "Break down into epics and user stories with acceptance criteria: {{user_request}}"
325
+ - `compute_output_path`: "Read bmad/config.yaml and return output path for sprint-plan document."
326
+ - `write-sprint`: depends_on epic-breakdown, compute_output_path → "Write sprint plan to `{{compute_output_path.result}}`. Create `docs/sprint-status.yaml` with story status tracking."
327
+
328
+ ### Document Output Convention
329
+
330
+ Every PLAN workflow's final step (`write-doc` or `write-sprint`) must:
331
+
332
+ 1. Use the Write tool to save to `{{compute_output_path.result}}`
333
+ 2. Use the Edit tool to update `docs/bmad-workflow-status.yaml` with the new document path
334
+
265
335
  ## Mode Escalation (automatic)
266
336
 
267
337
  | Situation | Action |
@@ -275,6 +345,7 @@ The system sequentially invokes each agent per round, accumulating all previous
275
345
 
276
346
  ## Anti-Patterns (never do this)
277
347
 
348
+ - ❌ **Executing `gh pr merge` directly** — NEVER merge PRs without explicit human approval. Report verification results and wait for user `!merge` command.
278
349
  - Status updates only ("I'll analyze this") — show analysis results immediately
279
350
  - Using sequential `DELEGATE::` chains for multi-file tasks — use `workflow_plan` instead
280
351
  - Repeating Glob/Read 10+ times — 3 times is enough, generate workflow