bmad-overlay 0.1.1

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 (73) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/LICENSE +21 -0
  3. package/PUBLISH.md +82 -0
  4. package/QUICKSTART.md +69 -0
  5. package/README.md +84 -0
  6. package/agents/orchestrator.md +94 -0
  7. package/config/agent-map.yaml +40 -0
  8. package/customizations/bmm-dev.customize.yaml +25 -0
  9. package/customizations/bmm-pm.customize.yaml +24 -0
  10. package/customizations/bmm-qa.customize.yaml +23 -0
  11. package/install/INSTALL.md +151 -0
  12. package/install/check-package.mjs +21 -0
  13. package/install/install-overlay.mjs +279 -0
  14. package/install/install-overlay.sh +14 -0
  15. package/install/merge-bmad-customizations.mjs +179 -0
  16. package/package.json +32 -0
  17. package/policies/routing-policy.md +60 -0
  18. package/runtime/README.md +112 -0
  19. package/runtime/STAGE_RUNNER.md +53 -0
  20. package/runtime/codex-orchestrator.js +922 -0
  21. package/runtime/codex-stage-runner.js +747 -0
  22. package/skills/README.md +38 -0
  23. package/skills/orchestrator-advance-stage/SKILL.md +55 -0
  24. package/skills/orchestrator-advance-stage/bmad-skill-manifest.yaml +1 -0
  25. package/skills/orchestrator-advance-stage/workflow.md +47 -0
  26. package/skills/orchestrator-block-stage/SKILL.md +44 -0
  27. package/skills/orchestrator-block-stage/bmad-skill-manifest.yaml +1 -0
  28. package/skills/orchestrator-block-stage/workflow.md +44 -0
  29. package/skills/orchestrator-close-run/SKILL.md +59 -0
  30. package/skills/orchestrator-close-run/bmad-skill-manifest.yaml +1 -0
  31. package/skills/orchestrator-close-run/workflow.md +47 -0
  32. package/skills/orchestrator-execute-active-stage/SKILL.md +50 -0
  33. package/skills/orchestrator-execute-active-stage/bmad-skill-manifest.yaml +1 -0
  34. package/skills/orchestrator-execute-active-stage/workflow.md +42 -0
  35. package/skills/orchestrator-launch-council/SKILL.md +53 -0
  36. package/skills/orchestrator-launch-council/bmad-skill-manifest.yaml +1 -0
  37. package/skills/orchestrator-launch-council/workflow.md +43 -0
  38. package/skills/orchestrator-resume-stage/SKILL.md +47 -0
  39. package/skills/orchestrator-resume-stage/bmad-skill-manifest.yaml +1 -0
  40. package/skills/orchestrator-resume-stage/workflow.md +45 -0
  41. package/skills/orchestrator-start-run/SKILL.md +62 -0
  42. package/skills/orchestrator-start-run/bmad-skill-manifest.yaml +1 -0
  43. package/skills/orchestrator-start-run/workflow.md +47 -0
  44. package/templates/CLAUDE.md +51 -0
  45. package/templates/analysis-synthesis.md +25 -0
  46. package/templates/analyst-seat-output.yaml +7 -0
  47. package/templates/architecture-handoff.yaml +8 -0
  48. package/templates/architecture-seat-output.yaml +7 -0
  49. package/templates/architecture-synthesis.md +23 -0
  50. package/templates/current-stage.yaml +26 -0
  51. package/templates/delivery-seat-output.yaml +7 -0
  52. package/templates/delivery-synthesis.md +27 -0
  53. package/templates/docs-index.md +19 -0
  54. package/templates/docs-studio-layout.md +88 -0
  55. package/templates/feature-index.md +21 -0
  56. package/templates/intake-request.yaml +12 -0
  57. package/templates/pm-handoff.yaml +11 -0
  58. package/templates/pm-seat-output.yaml +7 -0
  59. package/templates/pm-synthesis.md +25 -0
  60. package/templates/qa-review-findings.yaml +7 -0
  61. package/templates/qa-review-handoff.yaml +10 -0
  62. package/templates/qa-review-seat-output.yaml +7 -0
  63. package/templates/qa-review-summary.md +21 -0
  64. package/templates/run-manifest.md +46 -0
  65. package/templates/stage-handoff.yaml +8 -0
  66. package/workflows/councils/analyst-council.md +229 -0
  67. package/workflows/councils/architecture-council.md +240 -0
  68. package/workflows/councils/delivery-council.md +379 -0
  69. package/workflows/councils/orchestrator-governance.md +474 -0
  70. package/workflows/councils/pm-council.md +241 -0
  71. package/workflows/councils/qa-review-council.md +241 -0
  72. package/workflows/new-saas.md +51 -0
  73. package/workflows/orchestrated-saas-studio.md +155 -0
@@ -0,0 +1,229 @@
1
+ # Council Spec: Analyst Council
2
+
3
+ ## Purpose
4
+
5
+ Convert a vague or partially defined product request into an analysis synthesis that a PM council can use without rereading raw discovery.
6
+
7
+ ## Entry Conditions
8
+
9
+ Run when:
10
+
11
+ - the request is net-new
12
+ - the product framing is weak
13
+ - the ICP is unclear
14
+ - the value proposition is still fuzzy
15
+ - the orchestrator confidence is not high
16
+
17
+ ## Inputs
18
+
19
+ ### Required
20
+
21
+ - orchestrator intake brief
22
+
23
+ ### Optional but preferred
24
+
25
+ - `docs/index.md`
26
+ - existing feature docs
27
+ - `product-brief.md`
28
+ - `PRD.md`
29
+ - existing research docs
30
+ - `_bmad-output/project-context.md`
31
+
32
+ ## Seats
33
+
34
+ ### Lead Analyst
35
+
36
+ Owns convergence and synthesis.
37
+
38
+ Prompt contract:
39
+
40
+ - read the orchestrator intake first
41
+ - read any existing authoritative docs before reacting
42
+ - identify the key tensions between the other seats
43
+ - force a single recommendation, not a vague summary
44
+ - write the final synthesis and handoff
45
+
46
+ Must produce:
47
+
48
+ - council synthesis
49
+ - council handoff
50
+
51
+ ### Market Analyst
52
+
53
+ Owns competitors, substitutes, positioning, monetization clues.
54
+
55
+ Prompt contract:
56
+
57
+ - analyze the market category
58
+ - identify substitutes even if direct competitors are unknown
59
+ - infer where willingness to pay might exist
60
+ - avoid pretending certainty when evidence is weak
61
+
62
+ Must produce:
63
+
64
+ - alternatives today
65
+ - positioning notes
66
+ - market risks
67
+
68
+ ### User Problem Analyst
69
+
70
+ Owns ICP, JTBD, pain points, outcomes, value proposition clues.
71
+
72
+ Prompt contract:
73
+
74
+ - define the most likely first user
75
+ - identify the concrete pain they experience today
76
+ - translate that pain into desired outcomes
77
+ - prefer one primary ICP over a broad list
78
+
79
+ Must produce:
80
+
81
+ - primary ICP
82
+ - top pains
83
+ - desired outcomes
84
+ - early value proposition framing
85
+
86
+ ### Feasibility Analyst
87
+
88
+ Owns technical, data, workflow, and operational constraints.
89
+
90
+ Prompt contract:
91
+
92
+ - identify hidden complexity
93
+ - detect integration or data dependencies
94
+ - call out operational realities that may change MVP shape
95
+ - bias toward constraints that affect scope immediately
96
+
97
+ Must produce:
98
+
99
+ - feasibility constraints
100
+ - implementation complexity notes
101
+ - operational risks
102
+
103
+ ### Adversarial Analyst
104
+
105
+ Owns failure analysis, weak assumptions, fake differentiation, and false demand.
106
+
107
+ Prompt contract:
108
+
109
+ - attack the strongest assumption, not the weakest one
110
+ - challenge fake novelty and vanity scope
111
+ - identify why the product may not be compelling enough
112
+ - keep criticism actionable
113
+
114
+ Must produce:
115
+
116
+ - adversarial findings
117
+ - weak assumptions
118
+ - reasons to narrow or reject
119
+
120
+ ## Output Files
121
+
122
+ - `docs/studio/runs/<run_id>/analysis-synthesis.md`
123
+ - `docs/studio/runs/<run_id>/analysis-handoff.yaml`
124
+ - `docs/studio/runs/<run_id>/analysis-market-analyst.yaml`
125
+ - `docs/studio/runs/<run_id>/analysis-user-problem-analyst.yaml`
126
+ - `docs/studio/runs/<run_id>/analysis-feasibility-analyst.yaml`
127
+ - `docs/studio/runs/<run_id>/analysis-adversarial-analyst.yaml`
128
+
129
+ These are overlay-owned artifacts and are intentionally kept under `docs/studio/runs/<run_id>/`.
130
+
131
+ ## Per-Seat Output Contract
132
+
133
+ Each seat should return a concise structured note:
134
+
135
+ ```yaml
136
+ seat: ""
137
+ focus: ""
138
+ key_findings: []
139
+ risks: []
140
+ assumptions: []
141
+ recommendation: ""
142
+ confidence: "high|medium|low"
143
+ ```
144
+
145
+ These seat outputs are persistent files in `docs/studio/runs/<run_id>/`, not ephemeral intermediate results.
146
+
147
+ ## Lead Analyst Synthesis Contract
148
+
149
+ The Lead Analyst must produce one synthesis document with these sections:
150
+
151
+ 1. Request Summary
152
+ 2. Problem Statement
153
+ 3. Primary ICP
154
+ 4. Top Pains and Outcomes
155
+ 5. Alternatives Today
156
+ 6. Value Proposition
157
+ 7. V1 Scope Boundary
158
+ 8. Assumptions To Validate
159
+ 9. Feasibility Constraints
160
+ 10. Adversarial Findings
161
+ 11. Council Decision
162
+ 12. Recommended Input To PM Council
163
+
164
+ ## Lead Analyst Writing Rules
165
+
166
+ - do not dump all seat notes verbatim
167
+ - resolve contradictions explicitly
168
+ - if confidence is low, say why
169
+ - convert analysis into PM-ready framing
170
+ - name what is still unknown, but do not block for trivia
171
+
172
+ ## Handoff To PM Council
173
+
174
+ The analyst handoff must answer these PM-facing questions:
175
+
176
+ - what exact product opportunity should PM shape?
177
+ - who is the first user and why them?
178
+ - what should PM keep out of MVP?
179
+ - what assumptions must PM preserve or validate?
180
+ - what major risks should influence prioritization?
181
+
182
+ ## PM Handoff Contract
183
+
184
+ Suggested structure:
185
+
186
+ ```yaml
187
+ stage: "analyst-council"
188
+ decision: "continue|narrow|reject"
189
+ why: ""
190
+ must_read_next:
191
+ - "docs/studio/runs/<run_id>/analysis-synthesis.md"
192
+ artifacts_updated:
193
+ - "docs/studio/runs/<run_id>/analysis-synthesis.md"
194
+ - "docs/studio/runs/<run_id>/analysis-handoff.yaml"
195
+ open_questions: []
196
+ blocked_by: []
197
+ recommended_next_stage: "pm-council|orchestrator"
198
+ ```
199
+
200
+ ## Minimum Required Synthesis
201
+
202
+ - problem statement
203
+ - primary ICP
204
+ - top pains
205
+ - value proposition
206
+ - V1 scope boundary
207
+ - assumptions to validate
208
+ - continue/narrow/reject decision
209
+
210
+ ## Escalation Threshold
211
+
212
+ Escalate only for:
213
+
214
+ - multiple equally plausible product directions
215
+ - no inferable ICP
216
+ - conflict with existing authoritative docs
217
+ - external business decision required
218
+
219
+ ## Next Consumer
220
+
221
+ - `PM Council`
222
+
223
+ ## Suggested Execution Order
224
+
225
+ 1. Market Analyst
226
+ 2. User Problem Analyst
227
+ 3. Feasibility Analyst
228
+ 4. Adversarial Analyst
229
+ 5. Lead Analyst synthesis
@@ -0,0 +1,240 @@
1
+ # Council Spec: Architecture Council
2
+
3
+ ## Purpose
4
+
5
+ Translate a PM-ready product plan into implementation strategy, system boundaries, technical decisions, and delivery constraints that the Delivery Council can execute without reopening product discovery.
6
+
7
+ ## Entry Conditions
8
+
9
+ Run when:
10
+
11
+ - a product brief or PRD exists
12
+ - the MVP scope is stable enough to design against
13
+ - the implementation path needs explicit technical decisions
14
+ - the request is not just a trivial copy change or content tweak
15
+ - the orchestrator confidence is not low on product framing
16
+
17
+ ## Skip Conditions
18
+
19
+ The orchestrator may skip or shorten the Architecture Council when all of the following are true:
20
+
21
+ - the change is fully bounded and uses an already established pattern
22
+ - no new system boundary, data model, or integration is introduced
23
+ - the Delivery Council can implement from existing project context and stories
24
+ - the request is clearly a minor follow-up to an already-approved slice
25
+
26
+ If skipped, the orchestrator must record a short rationale in the handoff path and point to the authoritative architecture source already in force.
27
+
28
+ ## Inputs
29
+
30
+ ### Required
31
+
32
+ - PM council synthesis
33
+ - orchestrator intake brief
34
+
35
+ ### Optional but preferred
36
+
37
+ - `docs/index.md`
38
+ - feature-local docs
39
+ - `_bmad-output/project-context.md`
40
+ - `_bmad-output/planning-artifacts/product-brief.md`
41
+ - `_bmad-output/planning-artifacts/PRD.md`
42
+ - any existing architecture docs
43
+ - any existing stories or epic breakdowns
44
+
45
+ ## Seats
46
+
47
+ ### Lead Architect
48
+
49
+ Owns convergence and the final architecture synthesis.
50
+
51
+ Prompt contract:
52
+
53
+ - read PM synthesis before forming any architectural position
54
+ - identify the minimum safe implementation shape
55
+ - resolve contradictions between seats explicitly
56
+ - turn architecture choices into deployable constraints
57
+ - write the final synthesis and handoff
58
+
59
+ Must produce:
60
+
61
+ - architecture synthesis
62
+ - architecture handoff
63
+
64
+ ### Application Architect
65
+
66
+ Owns application boundaries, API shape, module structure, and service seams.
67
+
68
+ Prompt contract:
69
+
70
+ - identify the simplest app structure that preserves clarity
71
+ - define boundaries that keep implementation from becoming tangled
72
+ - call out API and module decisions that developers must follow
73
+ - avoid over-architecting if a monolith suffices
74
+
75
+ Must produce:
76
+
77
+ - application structure notes
78
+ - API and boundary risks
79
+ - module boundary recommendations
80
+
81
+ ### Data Architect
82
+
83
+ Owns schema, persistence, tenancy, state, migration, and reporting concerns.
84
+
85
+ Prompt contract:
86
+
87
+ - identify the minimal durable data model
88
+ - call out migration and tenancy implications
89
+ - flag places where data shape will constrain delivery
90
+ - keep schema decisions explicit and avoid ambiguity
91
+
92
+ Must produce:
93
+
94
+ - data model notes
95
+ - persistence risks
96
+ - migration concerns
97
+
98
+ ### Delivery Architect
99
+
100
+ Owns decomposition into implementation slices and sequencing for execution.
101
+
102
+ Prompt contract:
103
+
104
+ - break architecture into buildable slices
105
+ - identify dependencies between slices
106
+ - protect the Delivery Council from vague scope
107
+ - prefer slices that can be implemented and tested independently
108
+
109
+ Must produce:
110
+
111
+ - delivery slices
112
+ - sequencing notes
113
+ - dependency map
114
+
115
+ ### Constraint Reviewer
116
+
117
+ Owns hidden coupling, scaling traps, edge cases, and feasibility friction.
118
+
119
+ Prompt contract:
120
+
121
+ - attack assumptions that would leak into implementation
122
+ - identify risks that only appear under load or with real users
123
+ - challenge architecture choices that create avoidable fragility
124
+ - keep feedback actionable and scoped
125
+
126
+ Must produce:
127
+
128
+ - constraint risks
129
+ - edge cases
130
+ - rejection or caution notes
131
+
132
+ ## Output Files
133
+
134
+ - `docs/studio/runs/<run_id>/architecture-synthesis.md`
135
+ - `docs/studio/runs/<run_id>/architecture-handoff.yaml`
136
+ - `docs/studio/runs/<run_id>/architecture-application-architect.yaml`
137
+ - `docs/studio/runs/<run_id>/architecture-data-architect.yaml`
138
+ - `docs/studio/runs/<run_id>/architecture-delivery-architect.yaml`
139
+ - `docs/studio/runs/<run_id>/architecture-constraint-reviewer.yaml`
140
+
141
+ These are overlay-owned artifacts and are intentionally kept in `docs/studio/runs/<run_id>/`.
142
+
143
+ ## Per-Seat Output Contract
144
+
145
+ Each seat should return a concise structured note:
146
+
147
+ ```yaml
148
+ seat: ""
149
+ focus: ""
150
+ key_findings: []
151
+ risks: []
152
+ assumptions: []
153
+ recommendation: ""
154
+ confidence: "high|medium|low"
155
+ ```
156
+
157
+ These seat outputs are persistent files in `docs/studio/runs/<run_id>/`, not ephemeral intermediate results.
158
+
159
+ ## Lead Architect Synthesis Contract
160
+
161
+ The Lead Architect must produce one synthesis document with these sections:
162
+
163
+ 1. Request Summary
164
+ 2. Product and Scope Anchors
165
+ 3. Key Technical Decisions
166
+ 4. System Boundaries
167
+ 5. Data and State Decisions
168
+ 6. API and Module Decisions
169
+ 7. Delivery Slices
170
+ 8. Constraints and Risks
171
+ 9. Deferred Decisions
172
+ 10. Council Decision
173
+ 11. Recommended Input To Delivery Council
174
+
175
+ ## Lead Architect Writing Rules
176
+
177
+ - do not restate PM content unless it affects implementation
178
+ - make decisions explicit and citable
179
+ - prefer boring, safe patterns when they fit
180
+ - identify what must stay stable for the Delivery Council
181
+ - do not introduce unnecessary abstraction
182
+
183
+ ## Handoff To Delivery Council
184
+
185
+ The architecture handoff must answer these delivery-facing questions:
186
+
187
+ - what implementation slices should be built first?
188
+ - what boundaries must developers not cross?
189
+ - what data or API decisions are locked?
190
+ - what risks should shape ordering and tests?
191
+ - what should the Delivery Council treat as non-negotiable?
192
+
193
+ ## Delivery Handoff Contract
194
+
195
+ Suggested structure:
196
+
197
+ ```yaml
198
+ stage: "architecture-council"
199
+ decision: "continue|narrow|reject"
200
+ why: ""
201
+ must_read_next:
202
+ - "docs/studio/runs/<run_id>/architecture-synthesis.md"
203
+ artifacts_updated:
204
+ - "docs/studio/runs/<run_id>/architecture-synthesis.md"
205
+ - "docs/studio/runs/<run_id>/architecture-handoff.yaml"
206
+ open_questions: []
207
+ blocked_by: []
208
+ recommended_next_stage: "delivery-council|orchestrator"
209
+ ```
210
+
211
+ ## Minimum Required Synthesis
212
+
213
+ - product and scope anchors
214
+ - key technical decisions
215
+ - system boundaries
216
+ - data and state decisions
217
+ - delivery slices
218
+ - constraints and risks
219
+ - continue/narrow/reject decision
220
+
221
+ ## Escalation Threshold
222
+
223
+ Escalate only for:
224
+
225
+ - product scope that is still unstable enough to invalidate architecture
226
+ - architectural directions that are materially incompatible
227
+ - missing critical information that cannot be inferred from docs or code
228
+ - external infrastructure, security, or cost decisions that require the user
229
+
230
+ ## Next Consumer
231
+
232
+ - `Delivery Council`
233
+
234
+ ## Suggested Execution Order
235
+
236
+ 1. Application Architect
237
+ 2. Data Architect
238
+ 3. Delivery Architect
239
+ 4. Constraint Reviewer
240
+ 5. Lead Architect synthesis