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,57 +0,0 @@
1
- # Test Architect workflow: trace (enhanced with gate decision)
2
- name: testarch-trace
3
- description: "Generate requirements-to-tests traceability matrix, analyze coverage, and make quality gate decision (PASS/CONCERNS/FAIL/WAIVED)"
4
- author: "BMad"
5
-
6
- # Critical variables from config
7
- config_source: "{project-root}/_bmad/bmm/config.yaml"
8
- output_folder: "{config_source}:output_folder"
9
- user_name: "{config_source}:user_name"
10
- communication_language: "{config_source}:communication_language"
11
- document_output_language: "{config_source}:document_output_language"
12
- date: system-generated
13
-
14
- # Workflow components
15
- installed_path: "{project-root}/_bmad/bmm/workflows/testarch/trace"
16
- instructions: "{installed_path}/instructions.md"
17
- validation: "{installed_path}/checklist.md"
18
- template: "{installed_path}/trace-template.md"
19
-
20
- # Variables and inputs
21
- variables:
22
- # Directory paths
23
- test_dir: "{project-root}/tests" # Root test directory
24
- source_dir: "{project-root}/src" # Source code directory
25
-
26
- # Workflow behavior
27
- coverage_levels: "e2e,api,component,unit" # Which test levels to trace
28
- gate_type: "story" # story | epic | release | hotfix - determines gate scope
29
- decision_mode: "deterministic" # deterministic (rule-based) | manual (team decision)
30
-
31
- # Output configuration
32
- default_output_file: "{output_folder}/traceability-matrix.md"
33
-
34
- # Required tools
35
- required_tools:
36
- - read_file # Read story, test files, BMad artifacts
37
- - write_file # Create traceability matrix, gate YAML
38
- - list_files # Discover test files
39
- - search_repo # Find tests by test ID, describe blocks
40
- - glob # Find test files matching patterns
41
-
42
- tags:
43
- - qa
44
- - traceability
45
- - test-architect
46
- - coverage
47
- - requirements
48
- - gate
49
- - decision
50
- - release
51
-
52
- execution_hints:
53
- interactive: false # Minimize prompts
54
- autonomous: true # Proceed without user input unless blocked
55
- iterative: true
56
-
57
- web_bundle: false
@@ -1,160 +0,0 @@
1
- # Core Excalidraw Resources
2
-
3
- Universal knowledge for creating Excalidraw diagrams. All agents that create Excalidraw files should reference these resources.
4
-
5
- ## Purpose
6
-
7
- Provides the **HOW** (universal knowledge) while agents provide the **WHAT** (domain-specific application).
8
-
9
- **Core = "How to create Excalidraw elements"**
10
-
11
- - How to group shapes with text labels
12
- - How to calculate text width
13
- - How to create arrows with proper bindings
14
- - How to validate JSON syntax
15
- - Base structure and primitives
16
-
17
- **Agents = "What diagrams to create"**
18
-
19
- - Frame Expert (BMM): Technical flowcharts, architecture diagrams, wireframes
20
- - Presentation Master (CIS): Pitch decks, creative visuals, Rube Goldberg machines
21
- - Tech Writer (BMM): Documentation diagrams, concept explanations
22
-
23
- ## Files in This Directory
24
-
25
- ### excalidraw-helpers.md
26
-
27
- **Universal element creation patterns**
28
-
29
- - Text width calculation
30
- - Element grouping rules (shapes + labels)
31
- - Grid alignment
32
- - Arrow creation (straight, elbow)
33
- - Theme application
34
- - Validation checklist
35
- - Optimization rules
36
-
37
- **Agents reference this to:**
38
-
39
- - Create properly grouped shapes
40
- - Calculate text dimensions
41
- - Connect elements with arrows
42
- - Ensure valid structure
43
-
44
- ### validate-json-instructions.md
45
-
46
- **Universal JSON validation process**
47
-
48
- - How to validate Excalidraw JSON
49
- - Common errors and fixes
50
- - Workflow integration
51
- - Error recovery
52
-
53
- **Agents reference this to:**
54
-
55
- - Validate files after creation
56
- - Fix syntax errors
57
- - Ensure files can be opened in Excalidraw
58
-
59
- ### library-loader.md (Future)
60
-
61
- **How to load external .excalidrawlib files**
62
-
63
- - Programmatic library loading
64
- - Community library integration
65
- - Custom library management
66
-
67
- **Status:** To be developed when implementing external library support.
68
-
69
- ## How Agents Use These Resources
70
-
71
- ### Example: Frame Expert (Technical Diagrams)
72
-
73
- ```yaml
74
- # workflows/excalidraw-diagrams/create-flowchart/workflow.yaml
75
- helpers: '{project-root}/_bmad/core/resources/excalidraw/excalidraw-helpers.md'
76
- json_validation: '{project-root}/_bmad/core/resources/excalidraw/validate-json-instructions.md'
77
- ```
78
-
79
- **Domain-specific additions:**
80
-
81
- ```yaml
82
- # workflows/excalidraw-diagrams/_shared/flowchart-templates.yaml
83
- flowchart:
84
- start_node:
85
- type: ellipse
86
- width: 120
87
- height: 60
88
- process_box:
89
- type: rectangle
90
- width: 160
91
- height: 80
92
- decision_diamond:
93
- type: diamond
94
- width: 140
95
- height: 100
96
- ```
97
-
98
- ### Example: Presentation Master (Creative Visuals)
99
-
100
- ```yaml
101
- # workflows/create-visual-metaphor/workflow.yaml
102
- helpers: '{project-root}/_bmad/core/resources/excalidraw/excalidraw-helpers.md'
103
- json_validation: '{project-root}/_bmad/core/resources/excalidraw/validate-json-instructions.md'
104
- ```
105
-
106
- **Domain-specific additions:**
107
-
108
- ```yaml
109
- # workflows/_shared/creative-templates.yaml
110
- rube_goldberg:
111
- whimsical_connector:
112
- type: arrow
113
- strokeStyle: dashed
114
- roughness: 2
115
- playful_box:
116
- type: rectangle
117
- roundness: 12
118
- ```
119
-
120
- ## What Doesn't Belong in Core
121
-
122
- **Domain-Specific Elements:**
123
-
124
- - Flowchart-specific templates (belongs in Frame Expert)
125
- - Pitch deck layouts (belongs in Presentation Master)
126
- - Documentation-specific styles (belongs in Tech Writer)
127
-
128
- **Agent Workflows:**
129
-
130
- - How to create a flowchart (Frame Expert workflow)
131
- - How to create a pitch deck (Presentation Master workflow)
132
- - Step-by-step diagram creation (agent-specific)
133
-
134
- **Theming:**
135
-
136
- - Currently in agent workflows
137
- - **Future:** Will be refactored to core as user-configurable themes
138
-
139
- ## Architecture Principle
140
-
141
- **Single Source of Truth:**
142
-
143
- - Core holds universal knowledge
144
- - Agents reference core, don't duplicate
145
- - Updates to core benefit all agents
146
- - Agents specialize with domain knowledge
147
-
148
- **DRY (Don't Repeat Yourself):**
149
-
150
- - Element creation logic: ONCE in core
151
- - Text width calculation: ONCE in core
152
- - Validation process: ONCE in core
153
- - Arrow binding patterns: ONCE in core
154
-
155
- ## Future Enhancements
156
-
157
- 1. **External Library Loader** - Load .excalidrawlib files from libraries.excalidraw.com
158
- 2. **Theme Management** - User-configurable color themes saved in core
159
- 3. **Component Library** - Shared reusable components across agents
160
- 4. **Layout Algorithms** - Auto-layout helpers for positioning elements
@@ -1,127 +0,0 @@
1
- # Excalidraw Element Creation Guidelines
2
-
3
- ## Text Width Calculation
4
-
5
- For text elements inside shapes (labels):
6
-
7
- ```
8
- text_width = (text.length × fontSize × 0.6) + 20
9
- ```
10
-
11
- Round to nearest 10 for grid alignment.
12
-
13
- ## Element Grouping Rules
14
-
15
- **CRITICAL:** When creating shapes with labels:
16
-
17
- 1. Generate unique IDs:
18
- - `shape-id` for the shape
19
- - `text-id` for the text
20
- - `group-id` for the group
21
-
22
- 2. Shape element must have:
23
- - `groupIds: [group-id]`
24
- - `boundElements: [{type: "text", id: text-id}]`
25
-
26
- 3. Text element must have:
27
- - `containerId: shape-id`
28
- - `groupIds: [group-id]` (SAME as shape)
29
- - `textAlign: "center"`
30
- - `verticalAlign: "middle"`
31
- - `width: calculated_width`
32
-
33
- ## Grid Alignment
34
-
35
- - Snap all `x`, `y` coordinates to 20px grid
36
- - Formula: `Math.round(value / 20) * 20`
37
- - Spacing between elements: 60px minimum
38
-
39
- ## Arrow Creation
40
-
41
- ### Straight Arrows
42
-
43
- Use for forward flow (left-to-right, top-to-bottom):
44
-
45
- ```json
46
- {
47
- "type": "arrow",
48
- "startBinding": {
49
- "elementId": "source-shape-id",
50
- "focus": 0,
51
- "gap": 10
52
- },
53
- "endBinding": {
54
- "elementId": "target-shape-id",
55
- "focus": 0,
56
- "gap": 10
57
- },
58
- "points": [[0, 0], [distance_x, distance_y]]
59
- }
60
- ```
61
-
62
- ### Elbow Arrows
63
-
64
- Use for upward flow, backward flow, or complex routing:
65
-
66
- ```json
67
- {
68
- "type": "arrow",
69
- "startBinding": {...},
70
- "endBinding": {...},
71
- "points": [
72
- [0, 0],
73
- [intermediate_x, 0],
74
- [intermediate_x, intermediate_y],
75
- [final_x, final_y]
76
- ],
77
- "elbowed": true
78
- }
79
- ```
80
-
81
- ### Update Connected Shapes
82
-
83
- After creating arrow, update `boundElements` on both connected shapes:
84
-
85
- ```json
86
- {
87
- "id": "shape-id",
88
- "boundElements": [
89
- { "type": "text", "id": "text-id" },
90
- { "type": "arrow", "id": "arrow-id" }
91
- ]
92
- }
93
- ```
94
-
95
- ## Theme Application
96
-
97
- Theme colors should be applied consistently:
98
-
99
- - **Shapes**: `backgroundColor` from theme primary fill
100
- - **Borders**: `strokeColor` from theme accent
101
- - **Text**: `strokeColor` = "#1e1e1e" (dark text)
102
- - **Arrows**: `strokeColor` from theme accent
103
-
104
- ## Validation Checklist
105
-
106
- Before saving, verify:
107
-
108
- - [ ] All shapes with labels have matching `groupIds`
109
- - [ ] All text elements have `containerId` pointing to parent shape
110
- - [ ] Text width calculated properly (no cutoff)
111
- - [ ] Text alignment set (`textAlign` + `verticalAlign`)
112
- - [ ] All elements snapped to 20px grid
113
- - [ ] All arrows have `startBinding` and `endBinding`
114
- - [ ] `boundElements` array updated on connected shapes
115
- - [ ] Theme colors applied consistently
116
- - [ ] No metadata or history in final output
117
- - [ ] All IDs are unique
118
-
119
- ## Optimization
120
-
121
- Remove from final output:
122
-
123
- - `appState` object
124
- - `files` object (unless images used)
125
- - All elements with `isDeleted: true`
126
- - Unused library items
127
- - Version history
@@ -1,50 +0,0 @@
1
- # External Library Loader
2
-
3
- **Status:** Placeholder for future implementation
4
-
5
- ## Purpose
6
-
7
- Load external .excalidrawlib files from <https://libraries.excalidraw.com> or custom sources.
8
-
9
- ## Planned Capabilities
10
-
11
- - Load libraries by URL
12
- - Load libraries from local files
13
- - Merge multiple libraries
14
- - Filter library components
15
- - Cache loaded libraries
16
-
17
- ## API Reference
18
-
19
- Will document how to use:
20
-
21
- - `importLibrary(url)` - Load library from URL
22
- - `loadSceneOrLibraryFromBlob()` - Load from file
23
- - `mergeLibraryItems()` - Combine libraries
24
-
25
- ## Usage Example
26
-
27
- ```yaml
28
- # Future workflow.yaml structure
29
- libraries:
30
- - url: 'https://libraries.excalidraw.com/libraries/...'
31
- filter: ['aws', 'cloud']
32
- - path: '{project-root}/_data/custom-library.excalidrawlib'
33
- ```
34
-
35
- ## Implementation Notes
36
-
37
- This will be developed when agents need to leverage the extensive library ecosystem available at <https://libraries.excalidraw.com>.
38
-
39
- Hundreds of pre-built component libraries exist for:
40
-
41
- - AWS/Cloud icons
42
- - UI/UX components
43
- - Business diagrams
44
- - Mind map shapes
45
- - Floor plans
46
- - And much more...
47
-
48
- ## User Configuration
49
-
50
- Future: Users will be able to configure favorite libraries in their BMAD config for automatic loading.
@@ -1,79 +0,0 @@
1
- # JSON Validation Instructions
2
-
3
- ## Purpose
4
-
5
- Validate Excalidraw JSON files after saving to catch syntax errors (missing commas, brackets, quotes).
6
-
7
- ## How to Validate
8
-
9
- Use Node.js built-in JSON parsing to validate the file:
10
-
11
- ```bash
12
- node -e "JSON.parse(require('fs').readFileSync('FILE_PATH', 'utf8')); console.log('✓ Valid JSON')"
13
- ```
14
-
15
- Replace `FILE_PATH` with the actual file path.
16
-
17
- ## Exit Codes
18
-
19
- - Exit code 0 = Valid JSON
20
- - Exit code 1 = Invalid JSON (syntax error)
21
-
22
- ## Error Output
23
-
24
- If invalid, Node.js will output:
25
-
26
- - Error message with description
27
- - Position in file where error occurred
28
- - Line and column information (if available)
29
-
30
- ## Common Errors and Fixes
31
-
32
- ### Missing Comma
33
-
34
- ```
35
- SyntaxError: Expected ',' or '}' after property value
36
- ```
37
-
38
- **Fix:** Add comma after the property value
39
-
40
- ### Missing Bracket/Brace
41
-
42
- ```
43
- SyntaxError: Unexpected end of JSON input
44
- ```
45
-
46
- **Fix:** Add missing closing bracket `]` or brace `}`
47
-
48
- ### Extra Comma (Trailing)
49
-
50
- ```
51
- SyntaxError: Unexpected token ,
52
- ```
53
-
54
- **Fix:** Remove the trailing comma before `]` or `}`
55
-
56
- ### Missing Quote
57
-
58
- ```
59
- SyntaxError: Unexpected token
60
- ```
61
-
62
- **Fix:** Add missing quote around string value
63
-
64
- ## Workflow Integration
65
-
66
- After saving an Excalidraw file, run validation:
67
-
68
- 1. Save the file
69
- 2. Run: `node -e "JSON.parse(require('fs').readFileSync('{{save_location}}', 'utf8')); console.log('✓ Valid JSON')"`
70
- 3. If validation fails:
71
- - Read the error message for line/position
72
- - Open the file at that location
73
- - Fix the syntax error
74
- - Save and re-validate
75
- 4. Repeat until validation passes
76
-
77
- ## Critical Rule
78
-
79
- **NEVER delete the file due to validation errors - always fix the syntax error at the reported location.**
@@ -1,62 +0,0 @@
1
- ---
2
- name: bmad-help
3
- description: Get unstuck by showing what workflow steps come next or answering questions about what to do
4
- standalone: true
5
- ---
6
-
7
- # Task: BMAD Help
8
-
9
- ## KEY RULES
10
-
11
- - **Empty `phase` = anytime** — Universal tools work regardless of workflow state
12
- - **Numbered phases indicate sequence** — Phases like `1-discover` → `2-define` → `3-build` → `4-ship` flow in order (naming varies by module)
13
- - **Stay in module** — Guide through the active module's workflow based on phase+sequence ordering
14
- - **Descriptions contain routing** — Read for alternate paths (e.g., "back to previous if fixes needed")
15
- - **`required=true` blocks progress** — Required workflows must complete before proceeding to later phases
16
- - **Artifacts reveal completion** — Search resolved output paths for `outputs` patterns, fuzzy-match found files to workflow rows
17
-
18
- ## MODULE DETECTION
19
-
20
- - **Empty `module` column** → universal tools (work across all modules)
21
- - **Named `module`** → module-specific workflows
22
-
23
- Detect the active module from conversation context, recent workflows, or user query keywords. If ambiguous, ask the user.
24
-
25
- ## INPUT ANALYSIS
26
-
27
- Determine what was just completed:
28
- - Did someone state they completed something? Proceed as if that was the input.
29
- - Was a workflow just completed in this conversation? Proceed as if that was the input.
30
- - Search resolved artifact locations for files; fuzzy-match to workflow `outputs` patterns.
31
- - If an `index.md` exists, read it for additional context.
32
- - If still unclear, ask: "What workflow did you most recently complete?"
33
-
34
- ## EXECUTION
35
-
36
- 1. **Load catalog** — Load `{project-root}/_bmad/_config/bmad-help.csv`
37
-
38
- 2. **Resolve output locations** — Scan each folder under `_bmad/` (except `_config`) for `config.yaml`. For each workflow row, resolve its `output-location` variables against that module's config so artifact paths can be searched.
39
-
40
- 3. **Analyze input** — Task may provide a workflow name/code, conversational phrase, or nothing. Infer what was just completed using INPUT ANALYSIS above.
41
-
42
- 4. **Detect active module** — Use MODULE DETECTION above to determine which module the user is working in.
43
-
44
- 5. **Present recommendations** — Show next steps based on completed workflows, phase/sequence ordering (KEY RULES), and artifact detection. Format per the following
45
-
46
- ## RECOMMENDED OUTPUT FORMAT
47
-
48
- **Optional items first** — List optional workflows until a required step is reached
49
- **Required items next** — List the next required workflow
50
- For each item show:
51
- - Workflow **name**
52
- - **Command** (prefixed with `/`, e.g., `/bmad:example:build-prototype`)
53
- - **Agent** title and display name from the CSV (e.g., "🎨 Alex (Designer)")
54
- - Brief **description**
55
-
56
- ### Additional response output guidance to convey:
57
- - Run each workflow in a **fresh context window**
58
- - Load the agent using (`/` + `agent-command`), or run the workflow command directly
59
- - For **validation workflows**: recommend using a different high-quality LLM if available
60
- - For conversational requests: match the user's tone while presenting clearly
61
-
62
- 6. Return to the calling process after presenting recommendations.
@@ -1 +0,0 @@
1
- export declare function guideCommand(): void;
@@ -1,19 +0,0 @@
1
- import chalk from "chalk";
2
- export function guideCommand() {
3
- console.log(chalk.bold("\nBMALPH Workflow\n"));
4
- console.log(chalk.blue(" BMAD — Structured Planning"));
5
- console.log(chalk.dim(" ─────────────────────────────────────────"));
6
- console.log(` Phase 1 Analysis Requirements, research, risks`);
7
- console.log(` Phase 2 Planning PRD, stories, MVP scope`);
8
- console.log(` Phase 3 Design Architecture, data model, API\n`);
9
- console.log(chalk.blue(" Ralph — Autonomous Implementation"));
10
- console.log(chalk.dim(" ─────────────────────────────────────────"));
11
- console.log(` Phase 4 Implementation TDD build, code review, validation\n`);
12
- console.log(chalk.dim(" Each phase runs iteratively with human checkpoints."));
13
- console.log(chalk.dim(" The loop detects completion and advances automatically.\n"));
14
- console.log("Commands:");
15
- console.log(` ${chalk.cyan("bmalph start")} Begin from Phase 1`);
16
- console.log(` ${chalk.cyan("bmalph status")} Check current progress`);
17
- console.log(` ${chalk.cyan("bmalph resume")} Continue from last checkpoint`);
18
- console.log(` ${chalk.cyan("/bmalph")} Interactive mode in Claude Code`);
19
- }
@@ -1 +0,0 @@
1
- export declare function implementCommand(): Promise<void>;
@@ -1,83 +0,0 @@
1
- import chalk from "chalk";
2
- import { spawn } from "child_process";
3
- import { access } from "fs/promises";
4
- import { join } from "path";
5
- import { readState, writeState } from "../utils/state.js";
6
- import { isInitialized } from "../installer.js";
7
- import { runTransition } from "../transition.js";
8
- export async function implementCommand() {
9
- try {
10
- await runImplement();
11
- }
12
- catch (err) {
13
- const message = err instanceof Error ? err.message : String(err);
14
- console.error(chalk.red(`Error: ${message}`));
15
- process.exit(1);
16
- }
17
- }
18
- async function runImplement() {
19
- const projectDir = process.cwd();
20
- if (!(await isInitialized(projectDir))) {
21
- console.log(chalk.red("bmalph is not initialized. Run 'bmalph init' first."));
22
- return;
23
- }
24
- // Check if Ralph loop script exists
25
- const loopScript = join(projectDir, ".ralph/ralph_loop.sh");
26
- try {
27
- await access(loopScript);
28
- }
29
- catch {
30
- console.log(chalk.red("Ralph loop script not found at .ralph/ralph_loop.sh"));
31
- console.log("Run 'bmalph init' to install Ralph.");
32
- return;
33
- }
34
- // Run transition: BMAD artifacts → Ralph inputs
35
- console.log(chalk.blue("Transitioning BMAD artifacts to Ralph format..."));
36
- try {
37
- const result = await runTransition(projectDir);
38
- if (result.fixPlanPreserved) {
39
- console.log(chalk.green("Preserved existing @fix_plan.md (has progress)"));
40
- }
41
- else {
42
- console.log(chalk.green(`Generated fix_plan.md with ${result.storiesCount} stories`));
43
- }
44
- for (const warning of result.warnings) {
45
- console.log(chalk.yellow(`Warning: ${warning}`));
46
- }
47
- }
48
- catch (err) {
49
- const message = err instanceof Error ? err.message : String(err);
50
- console.log(chalk.red(`Transition failed: ${message}`));
51
- return;
52
- }
53
- // Update state
54
- const now = new Date().toISOString();
55
- const state = await readState(projectDir);
56
- const newState = {
57
- currentPhase: 4,
58
- status: "implementing",
59
- startedAt: state?.startedAt ?? now,
60
- lastUpdated: now,
61
- };
62
- await writeState(projectDir, newState);
63
- // Start Ralph loop
64
- console.log(chalk.blue("\nStarting Ralph autonomous loop..."));
65
- console.log(chalk.dim("Press Ctrl+C to stop the loop.\n"));
66
- const child = spawn("bash", [loopScript], {
67
- cwd: projectDir,
68
- stdio: "inherit",
69
- env: { ...process.env, RALPH_DIR: join(projectDir, ".ralph") },
70
- });
71
- child.on("close", (code) => {
72
- if (code === 0) {
73
- console.log(chalk.green("\nRalph loop completed successfully."));
74
- }
75
- else {
76
- console.log(chalk.yellow(`\nRalph loop exited with code ${code}`));
77
- }
78
- });
79
- child.on("error", (err) => {
80
- console.log(chalk.red(`Failed to start Ralph loop: ${err.message}`));
81
- console.log(chalk.dim("Ensure bash is available and ralph_loop.sh is executable."));
82
- });
83
- }
@@ -1,5 +0,0 @@
1
- interface PlanOptions {
2
- phase?: string;
3
- }
4
- export declare function planCommand(options: PlanOptions): Promise<void>;
5
- export {};