bmalph 1.0.0 → 2.2.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 (455) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +398 -217
  3. package/bmad/bmm/agents/analyst.agent.yaml +43 -36
  4. package/bmad/bmm/agents/architect.agent.yaml +29 -28
  5. package/bmad/bmm/agents/dev.agent.yaml +38 -38
  6. package/bmad/bmm/agents/pm.agent.yaml +44 -46
  7. package/bmad/bmm/agents/qa.agent.yaml +58 -0
  8. package/bmad/bmm/agents/quick-flow-solo-dev.agent.yaml +32 -32
  9. package/bmad/bmm/agents/sm.agent.yaml +37 -36
  10. package/bmad/bmm/agents/tech-writer/tech-writer-sidecar/documentation-standards.md +223 -223
  11. package/bmad/bmm/agents/tech-writer/tech-writer.agent.yaml +46 -45
  12. package/bmad/bmm/agents/ux-designer.agent.yaml +27 -26
  13. package/bmad/bmm/data/project-context-template.md +26 -26
  14. package/bmad/bmm/module-help.csv +31 -31
  15. package/bmad/bmm/module.yaml +50 -44
  16. package/bmad/bmm/teams/default-party.csv +20 -21
  17. package/bmad/bmm/teams/team-fullstack.yaml +12 -12
  18. package/bmad/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -10
  19. package/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +177 -177
  20. package/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +161 -161
  21. package/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +199 -199
  22. package/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +202 -202
  23. package/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +205 -205
  24. package/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +219 -219
  25. package/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +162 -162
  26. package/bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md +57 -58
  27. package/bmad/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -137
  28. package/bmad/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -229
  29. package/bmad/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -238
  30. package/bmad/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -206
  31. package/bmad/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -234
  32. package/bmad/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +443 -443
  33. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -182
  34. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -237
  35. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -249
  36. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -259
  37. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -177
  38. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +475 -475
  39. package/bmad/bmm/workflows/1-analysis/research/research.template.md +29 -29
  40. package/bmad/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -137
  41. package/bmad/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -239
  42. package/bmad/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -248
  43. package/bmad/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -202
  44. package/bmad/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +233 -239
  45. package/bmad/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +486 -486
  46. package/bmad/bmm/workflows/1-analysis/research/workflow-domain-research.md +54 -0
  47. package/bmad/bmm/workflows/1-analysis/research/workflow-market-research.md +54 -0
  48. package/bmad/bmm/workflows/1-analysis/research/workflow-technical-research.md +54 -0
  49. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/data/domain-complexity.csv +14 -12
  50. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/data/prd-purpose.md +197 -197
  51. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/data/project-types.csv +10 -10
  52. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-01-init.md +191 -191
  53. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-01b-continue.md +153 -153
  54. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-02-discovery.md +224 -224
  55. package/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02b-vision.md +154 -0
  56. package/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02c-executive-summary.md +170 -0
  57. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-03-success.md +226 -226
  58. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-04-journeys.md +213 -213
  59. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-05-domain.md +207 -207
  60. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-06-innovation.md +226 -226
  61. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-07-project-type.md +237 -237
  62. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-08-scoping.md +228 -228
  63. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-09-functional.md +231 -231
  64. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-10-nonfunctional.md +242 -242
  65. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-11-polish.md +217 -217
  66. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-c/step-12-complete.md +124 -124
  67. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-e/step-e-01-discovery.md +247 -247
  68. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-e/step-e-01b-legacy-conversion.md +208 -208
  69. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-e/step-e-02-review.md +249 -249
  70. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-e/step-e-03-edit.md +253 -253
  71. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-e/step-e-04-complete.md +168 -168
  72. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-01-discovery.md +226 -218
  73. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-02-format-detection.md +191 -191
  74. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-02b-parity-check.md +209 -209
  75. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-03-density-validation.md +174 -174
  76. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-04-brief-coverage-validation.md +214 -214
  77. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-05-measurability-validation.md +228 -228
  78. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-06-traceability-validation.md +217 -217
  79. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-07-implementation-leakage-validation.md +205 -205
  80. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-08-domain-compliance-validation.md +243 -243
  81. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-09-project-type-validation.md +263 -263
  82. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-10-smart-validation.md +209 -209
  83. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-11-holistic-quality-validation.md +264 -264
  84. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-12-completeness-validation.md +242 -242
  85. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/steps-v/step-v-13-report-complete.md +231 -231
  86. package/bmad/bmm/workflows/2-plan-workflows/{prd → create-prd}/templates/prd-template.md +10 -10
  87. package/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-create-prd.md +63 -0
  88. package/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-edit-prd.md +65 -0
  89. package/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +63 -0
  90. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -135
  91. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -127
  92. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -190
  93. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -216
  94. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -219
  95. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -234
  96. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -252
  97. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -254
  98. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -224
  99. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -224
  100. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -241
  101. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -248
  102. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -237
  103. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -264
  104. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +171 -171
  105. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -13
  106. package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +42 -43
  107. package/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +184 -190
  108. package/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +172 -178
  109. package/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +173 -179
  110. package/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +133 -139
  111. package/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +245 -252
  112. package/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +129 -135
  113. package/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -4
  114. package/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +54 -55
  115. package/bmad/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -12
  116. package/bmad/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +12 -10
  117. package/bmad/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +6 -6
  118. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -153
  119. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +164 -164
  120. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -224
  121. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +331 -331
  122. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -318
  123. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -359
  124. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -379
  125. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -359
  126. package/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +76 -76
  127. package/bmad/bmm/workflows/3-solutioning/create-architecture/workflow.md +49 -50
  128. package/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -259
  129. package/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -233
  130. package/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -272
  131. package/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +149 -149
  132. package/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -57
  133. package/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +58 -59
  134. package/bmad/bmm/workflows/4-implementation/code-review/checklist.md +23 -23
  135. package/bmad/bmm/workflows/4-implementation/code-review/instructions.xml +226 -226
  136. package/bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +44 -51
  137. package/bmad/bmm/workflows/4-implementation/correct-course/checklist.md +288 -288
  138. package/bmad/bmm/workflows/4-implementation/correct-course/instructions.md +207 -206
  139. package/bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +54 -60
  140. package/bmad/bmm/workflows/4-implementation/create-story/checklist.md +358 -358
  141. package/bmad/bmm/workflows/4-implementation/create-story/instructions.xml +346 -345
  142. package/bmad/bmm/workflows/4-implementation/create-story/template.md +49 -49
  143. package/bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +53 -61
  144. package/bmad/bmm/workflows/4-implementation/dev-story/checklist.md +80 -80
  145. package/bmad/bmm/workflows/4-implementation/dev-story/instructions.xml +410 -410
  146. package/bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +21 -27
  147. package/bmad/bmm/workflows/4-implementation/retrospective/instructions.md +1444 -1443
  148. package/bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +53 -58
  149. package/bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -33
  150. package/bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +226 -225
  151. package/bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -55
  152. package/bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +47 -54
  153. package/bmad/bmm/workflows/4-implementation/sprint-status/instructions.md +230 -229
  154. package/bmad/bmm/workflows/4-implementation/sprint-status/workflow.yaml +25 -36
  155. package/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +174 -156
  156. package/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +118 -120
  157. package/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +111 -113
  158. package/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +111 -113
  159. package/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +104 -106
  160. package/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +146 -140
  161. package/bmad/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +50 -50
  162. package/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +191 -189
  163. package/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +144 -144
  164. package/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +127 -128
  165. package/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +200 -191
  166. package/bmad/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +74 -74
  167. package/bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +79 -79
  168. package/bmad/bmm/workflows/document-project/checklist.md +245 -245
  169. package/bmad/bmm/workflows/document-project/documentation-requirements.csv +12 -12
  170. package/bmad/bmm/workflows/document-project/instructions.md +130 -221
  171. package/bmad/bmm/workflows/document-project/templates/deep-dive-template.md +345 -345
  172. package/bmad/bmm/workflows/document-project/templates/index-template.md +169 -169
  173. package/bmad/bmm/workflows/document-project/templates/project-overview-template.md +103 -103
  174. package/bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -160
  175. package/bmad/bmm/workflows/document-project/templates/source-tree-template.md +135 -135
  176. package/bmad/bmm/workflows/document-project/workflow.yaml +22 -30
  177. package/bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -298
  178. package/bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -31
  179. package/bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -1106
  180. package/bmad/bmm/workflows/document-project/workflows/full-scan.yaml +31 -31
  181. package/bmad/bmm/workflows/generate-project-context/project-context-template.md +21 -0
  182. package/bmad/bmm/workflows/generate-project-context/steps/step-01-discover.md +184 -0
  183. package/bmad/bmm/workflows/generate-project-context/steps/step-02-generate.md +318 -0
  184. package/bmad/bmm/workflows/generate-project-context/steps/step-03-complete.md +278 -0
  185. package/bmad/bmm/workflows/generate-project-context/workflow.md +49 -0
  186. package/bmad/bmm/workflows/qa/automate/checklist.md +33 -0
  187. package/bmad/bmm/workflows/qa/automate/instructions.md +110 -0
  188. package/bmad/bmm/workflows/qa/automate/workflow.yaml +44 -0
  189. package/bmad/core/agents/bmad-master.agent.yaml +30 -30
  190. package/bmad/core/module-help.csv +9 -11
  191. package/bmad/core/module.yaml +25 -25
  192. package/bmad/core/tasks/editorial-review-prose.xml +102 -91
  193. package/bmad/core/tasks/editorial-review-structure.xml +209 -198
  194. package/bmad/core/tasks/help.md +85 -0
  195. package/bmad/core/tasks/index-docs.xml +64 -64
  196. package/bmad/core/tasks/review-adversarial-general.xml +48 -48
  197. package/bmad/core/tasks/shard-doc.xml +107 -108
  198. package/bmad/core/tasks/workflow.xml +234 -234
  199. package/bmad/core/workflows/advanced-elicitation/methods.csv +51 -51
  200. package/bmad/core/workflows/advanced-elicitation/workflow.xml +116 -116
  201. package/bmad/core/workflows/brainstorming/brain-methods.csv +61 -61
  202. package/bmad/core/workflows/brainstorming/steps/step-01-session-setup.md +197 -197
  203. package/bmad/core/workflows/brainstorming/steps/step-01b-continue.md +122 -122
  204. package/bmad/core/workflows/brainstorming/steps/step-02a-user-selected.md +225 -225
  205. package/bmad/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +237 -237
  206. package/bmad/core/workflows/brainstorming/steps/step-02c-random-selection.md +209 -209
  207. package/bmad/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +264 -264
  208. package/bmad/core/workflows/brainstorming/steps/step-03-technique-execution.md +399 -399
  209. package/bmad/core/workflows/brainstorming/steps/step-04-idea-organization.md +303 -303
  210. package/bmad/core/workflows/brainstorming/template.md +15 -15
  211. package/bmad/core/workflows/brainstorming/workflow.md +58 -58
  212. package/bmad/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -138
  213. package/bmad/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +187 -187
  214. package/bmad/core/workflows/party-mode/steps/step-03-graceful-exit.md +168 -157
  215. package/bmad/core/workflows/party-mode/workflow.md +194 -194
  216. package/bundled-versions.json +3 -0
  217. package/dist/cli.js +61 -6
  218. package/dist/commands/check-updates.d.ts +5 -0
  219. package/dist/commands/check-updates.js +63 -0
  220. package/dist/commands/doctor.d.ts +39 -1
  221. package/dist/commands/doctor.js +348 -79
  222. package/dist/commands/init.d.ts +2 -0
  223. package/dist/commands/init.js +41 -15
  224. package/dist/commands/status.d.ts +7 -1
  225. package/dist/commands/status.js +111 -42
  226. package/dist/commands/upgrade.d.ts +7 -1
  227. package/dist/commands/upgrade.js +43 -12
  228. package/dist/installer.d.ts +19 -2
  229. package/dist/installer.js +305 -66
  230. package/dist/transition/artifacts.d.ts +2 -0
  231. package/dist/transition/artifacts.js +46 -0
  232. package/dist/transition/context.d.ts +19 -0
  233. package/dist/transition/context.js +261 -0
  234. package/dist/transition/fix-plan.d.ts +15 -0
  235. package/dist/transition/fix-plan.js +94 -0
  236. package/dist/transition/index.d.ts +9 -0
  237. package/dist/transition/index.js +16 -0
  238. package/dist/transition/orchestration.d.ts +2 -0
  239. package/dist/transition/orchestration.js +243 -0
  240. package/dist/transition/specs-changelog.d.ts +3 -0
  241. package/dist/transition/specs-changelog.js +75 -0
  242. package/dist/transition/specs-index.d.ts +22 -0
  243. package/dist/transition/specs-index.js +157 -0
  244. package/dist/transition/story-parsing.d.ts +7 -0
  245. package/dist/transition/story-parsing.js +124 -0
  246. package/dist/transition/tech-stack.d.ts +3 -0
  247. package/dist/transition/tech-stack.js +79 -0
  248. package/dist/transition/types.d.ts +60 -0
  249. package/dist/transition/types.js +1 -0
  250. package/dist/utils/config.d.ts +4 -0
  251. package/dist/utils/config.js +14 -4
  252. package/dist/utils/constants.d.ts +70 -0
  253. package/dist/utils/constants.js +97 -0
  254. package/dist/utils/dryrun.d.ts +7 -0
  255. package/dist/utils/dryrun.js +48 -0
  256. package/dist/utils/errors.d.ts +63 -0
  257. package/dist/utils/errors.js +86 -0
  258. package/dist/utils/file-system.d.ts +24 -0
  259. package/dist/utils/file-system.js +99 -0
  260. package/dist/utils/github.d.ts +83 -0
  261. package/dist/utils/github.js +230 -0
  262. package/dist/utils/json.js +3 -3
  263. package/dist/utils/logger.d.ts +6 -0
  264. package/dist/utils/logger.js +27 -0
  265. package/dist/utils/state.d.ts +4 -7
  266. package/dist/utils/state.js +147 -26
  267. package/dist/utils/validate.d.ts +40 -0
  268. package/dist/utils/validate.js +175 -1
  269. package/package.json +75 -59
  270. package/ralph/RALPH-REFERENCE.md +412 -0
  271. package/ralph/lib/circuit_breaker.sh +463 -330
  272. package/ralph/lib/date_utils.sh +104 -53
  273. package/ralph/lib/enable_core.sh +815 -0
  274. package/ralph/lib/response_analyzer.sh +884 -768
  275. package/ralph/lib/task_sources.sh +577 -0
  276. package/ralph/lib/timeout_utils.sh +145 -145
  277. package/ralph/lib/wizard_utils.sh +547 -0
  278. package/ralph/ralph_import.sh +636 -0
  279. package/ralph/ralph_loop.sh +1793 -1391
  280. package/ralph/ralph_monitor.sh +125 -0
  281. package/ralph/templates/AGENT.md +158 -158
  282. package/ralph/templates/PROMPT.md +285 -292
  283. package/ralph/templates/fix_plan.md +27 -27
  284. package/ralph/templates/ralphrc.template +102 -0
  285. package/ralph/templates/specs/.gitkeep +1 -1
  286. package/slash-commands/advanced-elicitation.md +1 -1
  287. package/slash-commands/adversarial-review.md +1 -1
  288. package/slash-commands/analyst.md +1 -1
  289. package/slash-commands/architect.md +1 -1
  290. package/slash-commands/bmad-help.md +1 -1
  291. package/slash-commands/bmalph-implement.md +152 -152
  292. package/slash-commands/brainstorm-project.md +1 -1
  293. package/slash-commands/brainstorming.md +1 -1
  294. package/slash-commands/correct-course.md +1 -1
  295. package/slash-commands/create-architecture.md +1 -1
  296. package/slash-commands/create-brief.md +1 -1
  297. package/slash-commands/create-epics-stories.md +1 -1
  298. package/slash-commands/create-prd.md +1 -1
  299. package/slash-commands/create-story.md +1 -1
  300. package/slash-commands/create-ux.md +1 -1
  301. package/slash-commands/dev.md +1 -1
  302. package/slash-commands/document-project.md +1 -1
  303. package/slash-commands/domain-research.md +1 -1
  304. package/slash-commands/editorial-prose.md +1 -1
  305. package/slash-commands/editorial-structure.md +1 -1
  306. package/slash-commands/execute-workflow.md +1 -1
  307. package/slash-commands/generate-project-context.md +1 -0
  308. package/slash-commands/implementation-readiness.md +1 -1
  309. package/slash-commands/index-docs.md +1 -1
  310. package/slash-commands/market-research.md +1 -1
  311. package/slash-commands/party-mode.md +1 -1
  312. package/slash-commands/pm.md +1 -1
  313. package/slash-commands/qa-automate.md +1 -0
  314. package/slash-commands/qa.md +1 -0
  315. package/slash-commands/quick-dev.md +1 -1
  316. package/slash-commands/quick-flow-solo-dev.md +1 -1
  317. package/slash-commands/retrospective.md +1 -1
  318. package/slash-commands/shard-doc.md +1 -1
  319. package/slash-commands/sm.md +1 -1
  320. package/slash-commands/sprint-planning.md +1 -1
  321. package/slash-commands/sprint-status.md +1 -1
  322. package/slash-commands/tech-spec.md +1 -1
  323. package/slash-commands/tech-writer.md +1 -0
  324. package/slash-commands/technical-research.md +1 -1
  325. package/slash-commands/ux-designer.md +1 -1
  326. package/slash-commands/validate-architecture.md +1 -1
  327. package/slash-commands/validate-brief.md +1 -1
  328. package/slash-commands/validate-epics-stories.md +1 -1
  329. package/slash-commands/validate-prd.md +1 -1
  330. package/slash-commands/validate-story.md +1 -1
  331. package/slash-commands/validate-ux.md +1 -1
  332. package/bmad/bmm/agents/tea.agent.yaml +0 -63
  333. package/bmad/bmm/sub-modules/claude-code/config.yaml +0 -4
  334. package/bmad/bmm/sub-modules/claude-code/injections.yaml +0 -242
  335. package/bmad/bmm/sub-modules/claude-code/readme.md +0 -87
  336. package/bmad/bmm/testarch/knowledge/adr-quality-readiness-checklist.md +0 -350
  337. package/bmad/bmm/testarch/knowledge/api-request.md +0 -442
  338. package/bmad/bmm/testarch/knowledge/api-testing-patterns.md +0 -843
  339. package/bmad/bmm/testarch/knowledge/auth-session.md +0 -552
  340. package/bmad/bmm/testarch/knowledge/burn-in.md +0 -273
  341. package/bmad/bmm/testarch/knowledge/ci-burn-in.md +0 -675
  342. package/bmad/bmm/testarch/knowledge/component-tdd.md +0 -486
  343. package/bmad/bmm/testarch/knowledge/contract-testing.md +0 -957
  344. package/bmad/bmm/testarch/knowledge/data-factories.md +0 -500
  345. package/bmad/bmm/testarch/knowledge/email-auth.md +0 -721
  346. package/bmad/bmm/testarch/knowledge/error-handling.md +0 -725
  347. package/bmad/bmm/testarch/knowledge/feature-flags.md +0 -750
  348. package/bmad/bmm/testarch/knowledge/file-utils.md +0 -463
  349. package/bmad/bmm/testarch/knowledge/fixture-architecture.md +0 -401
  350. package/bmad/bmm/testarch/knowledge/fixtures-composition.md +0 -382
  351. package/bmad/bmm/testarch/knowledge/intercept-network-call.md +0 -430
  352. package/bmad/bmm/testarch/knowledge/log.md +0 -429
  353. package/bmad/bmm/testarch/knowledge/network-error-monitor.md +0 -405
  354. package/bmad/bmm/testarch/knowledge/network-first.md +0 -486
  355. package/bmad/bmm/testarch/knowledge/network-recorder.md +0 -527
  356. package/bmad/bmm/testarch/knowledge/nfr-criteria.md +0 -670
  357. package/bmad/bmm/testarch/knowledge/overview.md +0 -286
  358. package/bmad/bmm/testarch/knowledge/playwright-config.md +0 -730
  359. package/bmad/bmm/testarch/knowledge/probability-impact.md +0 -601
  360. package/bmad/bmm/testarch/knowledge/recurse.md +0 -421
  361. package/bmad/bmm/testarch/knowledge/risk-governance.md +0 -615
  362. package/bmad/bmm/testarch/knowledge/selective-testing.md +0 -732
  363. package/bmad/bmm/testarch/knowledge/selector-resilience.md +0 -527
  364. package/bmad/bmm/testarch/knowledge/test-healing-patterns.md +0 -644
  365. package/bmad/bmm/testarch/knowledge/test-levels-framework.md +0 -473
  366. package/bmad/bmm/testarch/knowledge/test-priorities-matrix.md +0 -373
  367. package/bmad/bmm/testarch/knowledge/test-quality.md +0 -664
  368. package/bmad/bmm/testarch/knowledge/timing-debugging.md +0 -372
  369. package/bmad/bmm/testarch/knowledge/visual-debugging.md +0 -524
  370. package/bmad/bmm/testarch/tea-index.csv +0 -35
  371. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +0 -200
  372. package/bmad/bmm/workflows/1-analysis/research/workflow.md +0 -173
  373. package/bmad/bmm/workflows/2-plan-workflows/prd/validation-report-prd-workflow.md +0 -433
  374. package/bmad/bmm/workflows/2-plan-workflows/prd/workflow.md +0 -150
  375. package/bmad/bmm/workflows/bmad-quick-flow/quick-dev/data/project-levels.yaml +0 -59
  376. package/bmad/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +0 -90
  377. package/bmad/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +0 -127
  378. package/bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +0 -39
  379. package/bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +0 -130
  380. package/bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +0 -27
  381. package/bmad/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +0 -43
  382. package/bmad/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +0 -141
  383. package/bmad/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +0 -27
  384. package/bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +0 -49
  385. package/bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +0 -241
  386. package/bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +0 -27
  387. package/bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +0 -38
  388. package/bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +0 -133
  389. package/bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +0 -27
  390. package/bmad/bmm/workflows/testarch/atdd/atdd-checklist-template.md +0 -363
  391. package/bmad/bmm/workflows/testarch/atdd/checklist.md +0 -374
  392. package/bmad/bmm/workflows/testarch/atdd/instructions.md +0 -806
  393. package/bmad/bmm/workflows/testarch/atdd/workflow.yaml +0 -47
  394. package/bmad/bmm/workflows/testarch/automate/checklist.md +0 -582
  395. package/bmad/bmm/workflows/testarch/automate/instructions.md +0 -1324
  396. package/bmad/bmm/workflows/testarch/automate/workflow.yaml +0 -54
  397. package/bmad/bmm/workflows/testarch/ci/checklist.md +0 -247
  398. package/bmad/bmm/workflows/testarch/ci/github-actions-template.yaml +0 -198
  399. package/bmad/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +0 -149
  400. package/bmad/bmm/workflows/testarch/ci/instructions.md +0 -536
  401. package/bmad/bmm/workflows/testarch/ci/workflow.yaml +0 -47
  402. package/bmad/bmm/workflows/testarch/framework/checklist.md +0 -320
  403. package/bmad/bmm/workflows/testarch/framework/instructions.md +0 -481
  404. package/bmad/bmm/workflows/testarch/framework/workflow.yaml +0 -49
  405. package/bmad/bmm/workflows/testarch/nfr-assess/checklist.md +0 -407
  406. package/bmad/bmm/workflows/testarch/nfr-assess/instructions.md +0 -726
  407. package/bmad/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +0 -461
  408. package/bmad/bmm/workflows/testarch/nfr-assess/workflow.yaml +0 -49
  409. package/bmad/bmm/workflows/testarch/test-design/checklist.md +0 -407
  410. package/bmad/bmm/workflows/testarch/test-design/instructions.md +0 -1158
  411. package/bmad/bmm/workflows/testarch/test-design/test-design-architecture-template.md +0 -213
  412. package/bmad/bmm/workflows/testarch/test-design/test-design-qa-template.md +0 -286
  413. package/bmad/bmm/workflows/testarch/test-design/test-design-template.md +0 -294
  414. package/bmad/bmm/workflows/testarch/test-design/workflow.yaml +0 -71
  415. package/bmad/bmm/workflows/testarch/test-review/checklist.md +0 -472
  416. package/bmad/bmm/workflows/testarch/test-review/instructions.md +0 -628
  417. package/bmad/bmm/workflows/testarch/test-review/test-review-template.md +0 -390
  418. package/bmad/bmm/workflows/testarch/test-review/workflow.yaml +0 -48
  419. package/bmad/bmm/workflows/testarch/trace/checklist.md +0 -642
  420. package/bmad/bmm/workflows/testarch/trace/instructions.md +0 -1030
  421. package/bmad/bmm/workflows/testarch/trace/trace-template.md +0 -675
  422. package/bmad/bmm/workflows/testarch/trace/workflow.yaml +0 -57
  423. package/bmad/core/resources/excalidraw/README.md +0 -160
  424. package/bmad/core/resources/excalidraw/excalidraw-helpers.md +0 -127
  425. package/bmad/core/resources/excalidraw/library-loader.md +0 -50
  426. package/bmad/core/resources/excalidraw/validate-json-instructions.md +0 -79
  427. package/bmad/core/tasks/bmad-help.md +0 -62
  428. package/dist/commands/guide.d.ts +0 -1
  429. package/dist/commands/guide.js +0 -19
  430. package/dist/commands/implement.d.ts +0 -1
  431. package/dist/commands/implement.js +0 -83
  432. package/dist/commands/plan.d.ts +0 -5
  433. package/dist/commands/plan.js +0 -44
  434. package/dist/commands/reset.d.ts +0 -5
  435. package/dist/commands/reset.js +0 -35
  436. package/dist/commands/resume.d.ts +0 -1
  437. package/dist/commands/resume.js +0 -44
  438. package/dist/commands/start.d.ts +0 -5
  439. package/dist/commands/start.js +0 -54
  440. package/dist/transition.d.ts +0 -52
  441. package/dist/transition.js +0 -656
  442. package/slash-commands/atdd.md +0 -1
  443. package/slash-commands/continuous-integration.md +0 -1
  444. package/slash-commands/create-dataflow.md +0 -1
  445. package/slash-commands/create-diagram.md +0 -1
  446. package/slash-commands/create-flowchart.md +0 -1
  447. package/slash-commands/create-wireframe.md +0 -1
  448. package/slash-commands/nfr-assess.md +0 -1
  449. package/slash-commands/tea.md +0 -1
  450. package/slash-commands/test-automate.md +0 -1
  451. package/slash-commands/test-design.md +0 -1
  452. package/slash-commands/test-framework.md +0 -1
  453. package/slash-commands/test-review.md +0 -1
  454. package/slash-commands/test-trace.md +0 -1
  455. package/slash-commands/validate-test-design.md +0 -1
@@ -1,194 +1,194 @@
1
- ---
2
- name: party-mode
3
- description: Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations
4
- ---
5
-
6
- # Party Mode Workflow
7
-
8
- **Goal:** Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations
9
-
10
- **Your Role:** You are a party mode facilitator and multi-agent conversation orchestrator. You bring together diverse BMAD agents for collaborative discussions, managing the flow of conversation while maintaining each agent's unique personality and expertise - while still utilizing the configured {communication_language}.
11
-
12
- ---
13
-
14
- ## WORKFLOW ARCHITECTURE
15
-
16
- This uses **micro-file architecture** with **sequential conversation orchestration**:
17
-
18
- - Step 01 loads agent manifest and initializes party mode
19
- - Step 02 orchestrates the ongoing multi-agent discussion
20
- - Step 03 handles graceful party mode exit
21
- - Conversation state tracked in frontmatter
22
- - Agent personalities maintained through merged manifest data
23
-
24
- ---
25
-
26
- ## INITIALIZATION
27
-
28
- ### Configuration Loading
29
-
30
- Load config from `{project-root}/_bmad/core/config.yaml` and resolve:
31
-
32
- - `project_name`, `output_folder`, `user_name`
33
- - `communication_language`, `document_output_language`, `user_skill_level`
34
- - `date` as a system-generated value
35
- - Agent manifest path: `{project-root}/_bmad/_config/agent-manifest.csv`
36
-
37
- ### Paths
38
-
39
- - `installed_path` = `{project-root}/_bmad/core/workflows/party-mode`
40
- - `agent_manifest_path` = `{project-root}/_bmad/_config/agent-manifest.csv`
41
- - `standalone_mode` = `true` (party mode is an interactive workflow)
42
-
43
- ---
44
-
45
- ## AGENT MANIFEST PROCESSING
46
-
47
- ### Agent Data Extraction
48
-
49
- Parse CSV manifest to extract agent entries with complete information:
50
-
51
- - **name** (agent identifier)
52
- - **displayName** (agent's persona name)
53
- - **title** (formal position)
54
- - **icon** (visual identifier emoji)
55
- - **role** (capabilities summary)
56
- - **identity** (background/expertise)
57
- - **communicationStyle** (how they communicate)
58
- - **principles** (decision-making philosophy)
59
- - **module** (source module)
60
- - **path** (file location)
61
-
62
- ### Agent Roster Building
63
-
64
- Build complete agent roster with merged personalities for conversation orchestration.
65
-
66
- ---
67
-
68
- ## EXECUTION
69
-
70
- Execute party mode activation and conversation orchestration:
71
-
72
- ### Party Mode Activation
73
-
74
- **Your Role:** You are a party mode facilitator creating an engaging multi-agent conversation environment.
75
-
76
- **Welcome Activation:**
77
-
78
- "🎉 PARTY MODE ACTIVATED! 🎉
79
-
80
- Welcome {{user_name}}! All BMAD agents are here and ready for a dynamic group discussion. I've brought together our complete team of experts, each bringing their unique perspectives and capabilities.
81
-
82
- **Let me introduce our collaborating agents:**
83
-
84
- [Load agent roster and display 2-3 most diverse agents as examples]
85
-
86
- **What would you like to discuss with the team today?**"
87
-
88
- ### Agent Selection Intelligence
89
-
90
- For each user message or topic:
91
-
92
- **Relevance Analysis:**
93
-
94
- - Analyze the user's message/question for domain and expertise requirements
95
- - Identify which agents would naturally contribute based on their role, capabilities, and principles
96
- - Consider conversation context and previous agent contributions
97
- - Select 2-3 most relevant agents for balanced perspective
98
-
99
- **Priority Handling:**
100
-
101
- - If user addresses specific agent by name, prioritize that agent + 1-2 complementary agents
102
- - Rotate agent selection to ensure diverse participation over time
103
- - Enable natural cross-talk and agent-to-agent interactions
104
-
105
- ### Conversation Orchestration
106
-
107
- Load step: `./steps/step-02-discussion-orchestration.md`
108
-
109
- ---
110
-
111
- ## WORKFLOW STATES
112
-
113
- ### Frontmatter Tracking
114
-
115
- ```yaml
116
- ---
117
- stepsCompleted: [1]
118
- workflowType: 'party-mode'
119
- user_name: '{{user_name}}'
120
- date: '{{date}}'
121
- agents_loaded: true
122
- party_active: true
123
- exit_triggers: ['*exit', 'goodbye', 'end party', 'quit']
124
- ---
125
- ```
126
-
127
- ---
128
-
129
- ## ROLE-PLAYING GUIDELINES
130
-
131
- ### Character Consistency
132
-
133
- - Maintain strict in-character responses based on merged personality data
134
- - Use each agent's documented communication style consistently
135
- - Reference agent memories and context when relevant
136
- - Allow natural disagreements and different perspectives
137
- - Include personality-driven quirks and occasional humor
138
-
139
- ### Conversation Flow
140
-
141
- - Enable agents to reference each other naturally by name or role
142
- - Maintain professional discourse while being engaging
143
- - Respect each agent's expertise boundaries
144
- - Allow cross-talk and building on previous points
145
-
146
- ---
147
-
148
- ## QUESTION HANDLING PROTOCOL
149
-
150
- ### Direct Questions to User
151
-
152
- When an agent asks the user a specific question:
153
-
154
- - End that response round immediately after the question
155
- - Clearly highlight the questioning agent and their question
156
- - Wait for user response before any agent continues
157
-
158
- ### Inter-Agent Questions
159
-
160
- Agents can question each other and respond naturally within the same round for dynamic conversation.
161
-
162
- ---
163
-
164
- ## EXIT CONDITIONS
165
-
166
- ### Automatic Triggers
167
-
168
- Exit party mode when user message contains any exit triggers:
169
-
170
- - `*exit`, `goodbye`, `end party`, `quit`
171
-
172
- ### Graceful Conclusion
173
-
174
- If conversation naturally concludes:
175
-
176
- - Ask user if they'd like to continue or end party mode
177
- - Exit gracefully when user indicates completion
178
-
179
- ---
180
-
181
- ## MODERATION NOTES
182
-
183
- **Quality Control:**
184
-
185
- - If discussion becomes circular, have bmad-master summarize and redirect
186
- - Balance fun and productivity based on conversation tone
187
- - Ensure all agents stay true to their merged personalities
188
- - Exit gracefully when user indicates completion
189
-
190
- **Conversation Management:**
191
-
192
- - Rotate agent participation to ensure inclusive discussion
193
- - Handle topic drift while maintaining productive conversation
194
- - Facilitate cross-agent collaboration and knowledge sharing
1
+ ---
2
+ name: party-mode
3
+ description: Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations
4
+ ---
5
+
6
+ # Party Mode Workflow
7
+
8
+ **Goal:** Orchestrates group discussions between all installed BMAD agents, enabling natural multi-agent conversations
9
+
10
+ **Your Role:** You are a party mode facilitator and multi-agent conversation orchestrator. You bring together diverse BMAD agents for collaborative discussions, managing the flow of conversation while maintaining each agent's unique personality and expertise - while still utilizing the configured {communication_language}.
11
+
12
+ ---
13
+
14
+ ## WORKFLOW ARCHITECTURE
15
+
16
+ This uses **micro-file architecture** with **sequential conversation orchestration**:
17
+
18
+ - Step 01 loads agent manifest and initializes party mode
19
+ - Step 02 orchestrates the ongoing multi-agent discussion
20
+ - Step 03 handles graceful party mode exit
21
+ - Conversation state tracked in frontmatter
22
+ - Agent personalities maintained through merged manifest data
23
+
24
+ ---
25
+
26
+ ## INITIALIZATION
27
+
28
+ ### Configuration Loading
29
+
30
+ Load config from `{project-root}/_bmad/core/config.yaml` and resolve:
31
+
32
+ - `project_name`, `output_folder`, `user_name`
33
+ - `communication_language`, `document_output_language`, `user_skill_level`
34
+ - `date` as a system-generated value
35
+ - Agent manifest path: `{project-root}/_bmad/_config/agent-manifest.csv`
36
+
37
+ ### Paths
38
+
39
+ - `installed_path` = `{project-root}/_bmad/core/workflows/party-mode`
40
+ - `agent_manifest_path` = `{project-root}/_bmad/_config/agent-manifest.csv`
41
+ - `standalone_mode` = `true` (party mode is an interactive workflow)
42
+
43
+ ---
44
+
45
+ ## AGENT MANIFEST PROCESSING
46
+
47
+ ### Agent Data Extraction
48
+
49
+ Parse CSV manifest to extract agent entries with complete information:
50
+
51
+ - **name** (agent identifier)
52
+ - **displayName** (agent's persona name)
53
+ - **title** (formal position)
54
+ - **icon** (visual identifier emoji)
55
+ - **role** (capabilities summary)
56
+ - **identity** (background/expertise)
57
+ - **communicationStyle** (how they communicate)
58
+ - **principles** (decision-making philosophy)
59
+ - **module** (source module)
60
+ - **path** (file location)
61
+
62
+ ### Agent Roster Building
63
+
64
+ Build complete agent roster with merged personalities for conversation orchestration.
65
+
66
+ ---
67
+
68
+ ## EXECUTION
69
+
70
+ Execute party mode activation and conversation orchestration:
71
+
72
+ ### Party Mode Activation
73
+
74
+ **Your Role:** You are a party mode facilitator creating an engaging multi-agent conversation environment.
75
+
76
+ **Welcome Activation:**
77
+
78
+ "🎉 PARTY MODE ACTIVATED! 🎉
79
+
80
+ Welcome {{user_name}}! All BMAD agents are here and ready for a dynamic group discussion. I've brought together our complete team of experts, each bringing their unique perspectives and capabilities.
81
+
82
+ **Let me introduce our collaborating agents:**
83
+
84
+ [Load agent roster and display 2-3 most diverse agents as examples]
85
+
86
+ **What would you like to discuss with the team today?**"
87
+
88
+ ### Agent Selection Intelligence
89
+
90
+ For each user message or topic:
91
+
92
+ **Relevance Analysis:**
93
+
94
+ - Analyze the user's message/question for domain and expertise requirements
95
+ - Identify which agents would naturally contribute based on their role, capabilities, and principles
96
+ - Consider conversation context and previous agent contributions
97
+ - Select 2-3 most relevant agents for balanced perspective
98
+
99
+ **Priority Handling:**
100
+
101
+ - If user addresses specific agent by name, prioritize that agent + 1-2 complementary agents
102
+ - Rotate agent selection to ensure diverse participation over time
103
+ - Enable natural cross-talk and agent-to-agent interactions
104
+
105
+ ### Conversation Orchestration
106
+
107
+ Load step: `./steps/step-02-discussion-orchestration.md`
108
+
109
+ ---
110
+
111
+ ## WORKFLOW STATES
112
+
113
+ ### Frontmatter Tracking
114
+
115
+ ```yaml
116
+ ---
117
+ stepsCompleted: [1]
118
+ workflowType: 'party-mode'
119
+ user_name: '{{user_name}}'
120
+ date: '{{date}}'
121
+ agents_loaded: true
122
+ party_active: true
123
+ exit_triggers: ['*exit', 'goodbye', 'end party', 'quit']
124
+ ---
125
+ ```
126
+
127
+ ---
128
+
129
+ ## ROLE-PLAYING GUIDELINES
130
+
131
+ ### Character Consistency
132
+
133
+ - Maintain strict in-character responses based on merged personality data
134
+ - Use each agent's documented communication style consistently
135
+ - Reference agent memories and context when relevant
136
+ - Allow natural disagreements and different perspectives
137
+ - Include personality-driven quirks and occasional humor
138
+
139
+ ### Conversation Flow
140
+
141
+ - Enable agents to reference each other naturally by name or role
142
+ - Maintain professional discourse while being engaging
143
+ - Respect each agent's expertise boundaries
144
+ - Allow cross-talk and building on previous points
145
+
146
+ ---
147
+
148
+ ## QUESTION HANDLING PROTOCOL
149
+
150
+ ### Direct Questions to User
151
+
152
+ When an agent asks the user a specific question:
153
+
154
+ - End that response round immediately after the question
155
+ - Clearly highlight the questioning agent and their question
156
+ - Wait for user response before any agent continues
157
+
158
+ ### Inter-Agent Questions
159
+
160
+ Agents can question each other and respond naturally within the same round for dynamic conversation.
161
+
162
+ ---
163
+
164
+ ## EXIT CONDITIONS
165
+
166
+ ### Automatic Triggers
167
+
168
+ Exit party mode when user message contains any exit triggers:
169
+
170
+ - `*exit`, `goodbye`, `end party`, `quit`
171
+
172
+ ### Graceful Conclusion
173
+
174
+ If conversation naturally concludes:
175
+
176
+ - Ask user if they'd like to continue or end party mode
177
+ - Exit gracefully when user indicates completion
178
+
179
+ ---
180
+
181
+ ## MODERATION NOTES
182
+
183
+ **Quality Control:**
184
+
185
+ - If discussion becomes circular, have bmad-master summarize and redirect
186
+ - Balance fun and productivity based on conversation tone
187
+ - Ensure all agents stay true to their merged personalities
188
+ - Exit gracefully when user indicates completion
189
+
190
+ **Conversation Management:**
191
+
192
+ - Rotate agent participation to ensure inclusive discussion
193
+ - Handle topic drift while maintaining productive conversation
194
+ - Facilitate cross-agent collaboration and knowledge sharing
@@ -0,0 +1,3 @@
1
+ {
2
+ "bmadCommit": "aa573bdb"
3
+ }
package/dist/cli.js CHANGED
@@ -1,26 +1,81 @@
1
+ import { resolve } from "path";
2
+ import { stat } from "fs/promises";
1
3
  import { Command } from "commander";
2
4
  import { initCommand } from "./commands/init.js";
3
5
  import { upgradeCommand } from "./commands/upgrade.js";
4
6
  import { doctorCommand } from "./commands/doctor.js";
5
- import { setVerbose } from "./utils/logger.js";
7
+ import { checkUpdatesCommand } from "./commands/check-updates.js";
8
+ import { statusCommand } from "./commands/status.js";
9
+ import { setVerbose, setQuiet } from "./utils/logger.js";
6
10
  import { getPackageVersion } from "./installer.js";
11
+ import { isEnoent } from "./utils/errors.js";
7
12
  const program = new Command();
8
13
  program
9
14
  .name("bmalph")
10
15
  .description("BMAD-METHOD + Ralph integration — structured planning to autonomous implementation")
11
16
  .version(getPackageVersion())
12
17
  .option("--verbose", "Enable debug logging")
18
+ .option("--no-color", "Disable colored output")
19
+ .option("--quiet", "Suppress non-essential output")
20
+ .option("-C, --project-dir <path>", "Run in specified directory")
13
21
  .hook("preAction", () => {
14
- if (program.opts().verbose) {
22
+ const opts = program.opts();
23
+ if (opts.verbose) {
15
24
  setVerbose(true);
16
25
  }
26
+ if (opts.quiet) {
27
+ setQuiet(true);
28
+ }
29
+ if (opts.color === false) {
30
+ process.env.FORCE_COLOR = "0";
31
+ }
17
32
  });
33
+ function resolveProjectDir() {
34
+ const dir = program.opts().projectDir;
35
+ return dir ? resolve(dir) : process.cwd();
36
+ }
37
+ async function resolveAndValidateProjectDir() {
38
+ const dir = resolveProjectDir();
39
+ try {
40
+ const stats = await stat(dir);
41
+ if (!stats.isDirectory()) {
42
+ throw new Error(`Path is not a directory: ${dir}`);
43
+ }
44
+ }
45
+ catch (err) {
46
+ if (isEnoent(err)) {
47
+ throw new Error(`Project directory not found: ${dir}`, { cause: err });
48
+ }
49
+ throw err;
50
+ }
51
+ return dir;
52
+ }
18
53
  program
19
54
  .command("init")
20
55
  .description("Initialize bmalph in the current project")
21
56
  .option("-n, --name <name>", "Project name")
22
57
  .option("-d, --description <desc>", "Project description")
23
- .action(initCommand);
24
- program.command("upgrade").description("Update bundled assets to current version").action(upgradeCommand);
25
- program.command("doctor").description("Check installation health").action(doctorCommand);
26
- program.parse();
58
+ .option("--dry-run", "Preview changes without writing files")
59
+ .action(async (opts) => initCommand({ ...opts, projectDir: await resolveAndValidateProjectDir() }));
60
+ program
61
+ .command("upgrade")
62
+ .description("Update bundled assets to current version")
63
+ .option("--dry-run", "Preview changes without writing files")
64
+ .option("--force", "Skip confirmation prompts")
65
+ .action(async (opts) => upgradeCommand({ ...opts, projectDir: await resolveAndValidateProjectDir() }));
66
+ program
67
+ .command("doctor")
68
+ .description("Check installation health")
69
+ .option("--json", "Output as JSON")
70
+ .action(async (opts) => doctorCommand({ ...opts, projectDir: await resolveAndValidateProjectDir() }));
71
+ program
72
+ .command("check-updates")
73
+ .description("Check if bundled BMAD version is up to date with upstream")
74
+ .option("--json", "Output as JSON")
75
+ .action(checkUpdatesCommand);
76
+ program
77
+ .command("status")
78
+ .description("Show current project status and phase")
79
+ .option("--json", "Output as JSON")
80
+ .action(async (opts) => statusCommand({ ...opts, projectDir: await resolveAndValidateProjectDir() }));
81
+ void program.parseAsync();
@@ -0,0 +1,5 @@
1
+ interface CheckUpdatesOptions {
2
+ json?: boolean;
3
+ }
4
+ export declare function checkUpdatesCommand(options?: CheckUpdatesOptions): Promise<void>;
5
+ export {};
@@ -0,0 +1,63 @@
1
+ import chalk from "chalk";
2
+ import { getBundledVersions } from "../installer.js";
3
+ import { checkUpstream } from "../utils/github.js";
4
+ import { withErrorHandling } from "../utils/errors.js";
5
+ export async function checkUpdatesCommand(options = {}) {
6
+ await withErrorHandling(() => runCheckUpdates(options));
7
+ }
8
+ async function runCheckUpdates(options) {
9
+ const bundled = getBundledVersions();
10
+ if (!options.json) {
11
+ console.log(chalk.dim("Checking upstream versions...\n"));
12
+ }
13
+ const result = await checkUpstream(bundled);
14
+ if (options.json) {
15
+ const hasUpdates = result.bmad !== null && !result.bmad.isUpToDate;
16
+ const output = {
17
+ bmad: result.bmad,
18
+ errors: result.errors,
19
+ hasUpdates,
20
+ };
21
+ console.log(JSON.stringify(output, null, 2));
22
+ return;
23
+ }
24
+ // Human-readable output
25
+ if (result.bmad) {
26
+ if (result.bmad.isUpToDate) {
27
+ console.log(chalk.green(` ✓ BMAD-METHOD: up to date (${result.bmad.bundledSha})`));
28
+ }
29
+ else {
30
+ console.log(chalk.yellow(` ! BMAD-METHOD: updates available (${result.bmad.bundledSha} → ${result.bmad.latestSha})`));
31
+ console.log(chalk.dim(` → ${result.bmad.compareUrl}`));
32
+ }
33
+ }
34
+ else {
35
+ const bmadError = result.errors.find((e) => e.repo === "bmad");
36
+ const reason = bmadError ? getErrorReason(bmadError) : "unknown error";
37
+ console.log(chalk.yellow(` ? BMAD-METHOD: Could not check (${reason})`));
38
+ }
39
+ // Summary
40
+ console.log();
41
+ if (result.bmad !== null && result.bmad.isUpToDate && result.errors.length === 0) {
42
+ console.log(chalk.green("Up to date."));
43
+ }
44
+ else if (result.bmad !== null && !result.bmad.isUpToDate) {
45
+ console.log(chalk.yellow("Updates available."));
46
+ }
47
+ }
48
+ function getErrorReason(error) {
49
+ switch (error.type) {
50
+ case "network":
51
+ return "network error";
52
+ case "timeout":
53
+ return "request timed out";
54
+ case "rate-limit":
55
+ return "rate limited";
56
+ case "not-found":
57
+ return "repository not found";
58
+ case "api-error":
59
+ return `API error (${error.status || "unknown"})`;
60
+ default:
61
+ return "unknown error";
62
+ }
63
+ }
@@ -1 +1,39 @@
1
- export declare function doctorCommand(): Promise<void>;
1
+ /**
2
+ * Result of a single doctor check.
3
+ */
4
+ export interface CheckResult {
5
+ label: string;
6
+ passed: boolean;
7
+ detail?: string;
8
+ hint?: string;
9
+ }
10
+ /**
11
+ * Function signature for doctor checks.
12
+ * Takes a project directory and returns a check result.
13
+ */
14
+ export type CheckFunction = (projectDir: string) => Promise<CheckResult>;
15
+ /**
16
+ * Definition of a single doctor check in the registry.
17
+ */
18
+ export interface CheckDefinition {
19
+ /** Unique identifier for the check */
20
+ id: string;
21
+ /** The check function to execute */
22
+ run: CheckFunction;
23
+ }
24
+ interface DoctorOptions {
25
+ json?: boolean;
26
+ projectDir: string;
27
+ }
28
+ export declare function doctorCommand(options: DoctorOptions): Promise<void>;
29
+ interface DoctorResult {
30
+ passed: number;
31
+ failed: number;
32
+ }
33
+ export declare function runDoctor(options: DoctorOptions): Promise<DoctorResult>;
34
+ /**
35
+ * Registry of all doctor checks in execution order.
36
+ * Each check has a unique ID and a run function that takes a project directory.
37
+ */
38
+ export declare const CHECK_REGISTRY: CheckDefinition[];
39
+ export {};