bmalph 2.7.6 → 2.8.0

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 (448) hide show
  1. package/README.md +4 -4
  2. package/bmad/bmm/agents/analyst.agent.yaml +6 -6
  3. package/bmad/bmm/agents/architect.agent.yaml +2 -2
  4. package/bmad/bmm/agents/bmad-skill-manifest.yaml +39 -0
  5. package/bmad/bmm/agents/dev.agent.yaml +2 -2
  6. package/bmad/bmm/agents/pm.agent.yaml +6 -6
  7. package/bmad/bmm/agents/qa.agent.yaml +1 -1
  8. package/bmad/bmm/agents/quick-flow-solo-dev.agent.yaml +7 -3
  9. package/bmad/bmm/agents/sm.agent.yaml +4 -4
  10. package/bmad/bmm/agents/tech-writer/bmad-skill-manifest.yaml +3 -0
  11. package/bmad/bmm/agents/tech-writer/tech-writer.agent.yaml +1 -1
  12. package/bmad/bmm/agents/ux-designer.agent.yaml +1 -1
  13. package/bmad/bmm/module-help.csv +26 -25
  14. package/bmad/bmm/workflows/1-analysis/bmad-create-product-brief/SKILL.md +6 -0
  15. package/bmad/bmm/workflows/1-analysis/bmad-create-product-brief/bmad-skill-manifest.yaml +1 -0
  16. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/product-brief.template.md +2 -2
  17. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/steps/step-01-init.md +4 -11
  18. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/steps/step-01b-continue.md +0 -3
  19. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/steps/step-02-vision.md +5 -11
  20. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/steps/step-03-users.md +5 -11
  21. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/steps/step-04-metrics.md +5 -11
  22. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/steps/step-05-scope.md +5 -11
  23. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/steps/step-06-complete.md +1 -4
  24. package/bmad/bmm/workflows/1-analysis/{create-product-brief → bmad-create-product-brief}/workflow.md +4 -6
  25. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/SKILL.md +88 -0
  26. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/agents/artifact-analyzer.md +60 -0
  27. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/agents/opportunity-reviewer.md +44 -0
  28. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/agents/skeptic-reviewer.md +44 -0
  29. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/agents/web-researcher.md +49 -0
  30. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/bmad-manifest.json +17 -0
  31. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/bmad-skill-manifest.yaml +1 -0
  32. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/prompts/contextual-discovery.md +57 -0
  33. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/prompts/draft-and-review.md +86 -0
  34. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/prompts/finalize.md +75 -0
  35. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/prompts/guided-elicitation.md +70 -0
  36. package/bmad/bmm/workflows/1-analysis/bmad-product-brief-preview/resources/brief-template.md +60 -0
  37. package/bmad/bmm/workflows/1-analysis/research/bmad-domain-research/SKILL.md +6 -0
  38. package/bmad/bmm/workflows/1-analysis/research/bmad-domain-research/bmad-skill-manifest.yaml +1 -0
  39. package/bmad/bmm/workflows/1-analysis/research/{domain-steps → bmad-domain-research/domain-steps}/step-06-research-synthesis.md +2 -1
  40. package/bmad/bmm/workflows/1-analysis/research/bmad-domain-research/research.template.md +29 -0
  41. package/bmad/bmm/workflows/1-analysis/research/{workflow-domain-research.md → bmad-domain-research/workflow.md} +0 -5
  42. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/SKILL.md +6 -0
  43. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/bmad-skill-manifest.yaml +1 -0
  44. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/research.template.md +29 -0
  45. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-01-init.md +184 -0
  46. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-02-customer-behavior.md +239 -0
  47. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-03-customer-pain-points.md +251 -0
  48. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-04-customer-decisions.md +261 -0
  49. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-05-competitive-analysis.md +173 -0
  50. package/bmad/bmm/workflows/1-analysis/research/bmad-market-research/steps/step-06-research-completion.md +478 -0
  51. package/bmad/bmm/workflows/1-analysis/research/{workflow-market-research.md → bmad-market-research/workflow.md} +1 -6
  52. package/bmad/bmm/workflows/1-analysis/research/bmad-technical-research/SKILL.md +6 -0
  53. package/bmad/bmm/workflows/1-analysis/research/bmad-technical-research/bmad-skill-manifest.yaml +1 -0
  54. package/bmad/bmm/workflows/1-analysis/research/bmad-technical-research/research.template.md +29 -0
  55. package/bmad/bmm/workflows/1-analysis/research/{technical-steps → bmad-technical-research/technical-steps}/step-06-research-synthesis.md +2 -1
  56. package/bmad/bmm/workflows/1-analysis/research/{workflow-technical-research.md → bmad-technical-research/workflow.md} +0 -4
  57. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +2 -2
  58. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +2 -2
  59. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +2 -2
  60. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +2 -2
  61. package/bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +2 -1
  62. package/bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/SKILL.md +6 -0
  63. package/bmad/bmm/workflows/2-plan-workflows/bmad-create-ux-design/bmad-skill-manifest.yaml +1 -0
  64. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-01-init.md +2 -2
  65. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-01b-continue.md +1 -1
  66. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-02-discovery.md +2 -2
  67. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-03-core-experience.md +5 -4
  68. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-04-emotional-response.md +5 -4
  69. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-05-inspiration.md +5 -4
  70. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-06-design-system.md +5 -4
  71. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-07-defining-experience.md +5 -4
  72. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-08-visual-foundation.md +5 -4
  73. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-09-design-directions.md +5 -4
  74. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-10-user-journeys.md +5 -4
  75. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-11-component-strategy.md +5 -4
  76. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-12-ux-patterns.md +5 -4
  77. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-13-responsive-accessibility.md +5 -4
  78. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/steps/step-14-complete.md +3 -3
  79. package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/workflow.md +2 -8
  80. package/bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/SKILL.md +6 -0
  81. package/bmad/bmm/workflows/2-plan-workflows/bmad-edit-prd/bmad-skill-manifest.yaml +1 -0
  82. package/bmad/bmm/workflows/2-plan-workflows/{create-prd → bmad-edit-prd}/steps-e/step-e-01-discovery.md +3 -8
  83. package/bmad/bmm/workflows/2-plan-workflows/{create-prd → bmad-edit-prd}/steps-e/step-e-01b-legacy-conversion.md +1 -5
  84. package/bmad/bmm/workflows/2-plan-workflows/{create-prd → bmad-edit-prd}/steps-e/step-e-02-review.md +5 -9
  85. package/bmad/bmm/workflows/2-plan-workflows/{create-prd → bmad-edit-prd}/steps-e/step-e-03-edit.md +3 -6
  86. package/bmad/bmm/workflows/2-plan-workflows/{create-prd → bmad-edit-prd}/steps-e/step-e-04-complete.md +2 -5
  87. package/bmad/bmm/workflows/2-plan-workflows/{create-prd/workflow-edit-prd.md → bmad-edit-prd/workflow.md} +2 -4
  88. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/SKILL.md +6 -0
  89. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/bmad-skill-manifest.yaml +1 -0
  90. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/data/domain-complexity.csv +15 -0
  91. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/data/prd-purpose.md +197 -0
  92. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/data/project-types.csv +11 -0
  93. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-01-discovery.md +221 -0
  94. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-02-format-detection.md +188 -0
  95. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-02b-parity-check.md +206 -0
  96. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-03-density-validation.md +171 -0
  97. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-04-brief-coverage-validation.md +211 -0
  98. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-05-measurability-validation.md +225 -0
  99. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-06-traceability-validation.md +214 -0
  100. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-07-implementation-leakage-validation.md +202 -0
  101. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-08-domain-compliance-validation.md +240 -0
  102. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-09-project-type-validation.md +260 -0
  103. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-10-smart-validation.md +206 -0
  104. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-11-holistic-quality-validation.md +261 -0
  105. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-12-completeness-validation.md +239 -0
  106. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/steps-v/step-v-13-report-complete.md +229 -0
  107. package/bmad/bmm/workflows/2-plan-workflows/bmad-validate-prd/workflow.md +62 -0
  108. package/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +2 -4
  109. package/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +1 -1
  110. package/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +3 -3
  111. package/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +3 -2
  112. package/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +3 -1
  113. package/bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/SKILL.md +6 -0
  114. package/bmad/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/bmad-skill-manifest.yaml +1 -0
  115. package/bmad/bmm/workflows/3-solutioning/{check-implementation-readiness → bmad-check-implementation-readiness}/steps/step-01-document-discovery.md +3 -8
  116. package/bmad/bmm/workflows/3-solutioning/{check-implementation-readiness → bmad-check-implementation-readiness}/steps/step-02-prd-analysis.md +1 -5
  117. package/bmad/bmm/workflows/3-solutioning/{check-implementation-readiness → bmad-check-implementation-readiness}/steps/step-03-epic-coverage-validation.md +1 -5
  118. package/bmad/bmm/workflows/3-solutioning/{check-implementation-readiness → bmad-check-implementation-readiness}/steps/step-04-ux-alignment.md +1 -5
  119. package/bmad/bmm/workflows/3-solutioning/{check-implementation-readiness → bmad-check-implementation-readiness}/steps/step-05-epic-quality-review.md +2 -6
  120. package/bmad/bmm/workflows/3-solutioning/{check-implementation-readiness → bmad-check-implementation-readiness}/steps/step-06-final-assessment.md +1 -4
  121. package/bmad/bmm/workflows/3-solutioning/{check-implementation-readiness → bmad-check-implementation-readiness}/workflow.md +1 -6
  122. package/bmad/bmm/workflows/3-solutioning/bmad-create-architecture/SKILL.md +6 -0
  123. package/bmad/bmm/workflows/3-solutioning/bmad-create-architecture/bmad-skill-manifest.yaml +1 -0
  124. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-01-init.md +4 -4
  125. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-01b-continue.md +11 -2
  126. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-02-context.md +4 -4
  127. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-03-starter.md +5 -7
  128. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-04-decisions.md +4 -4
  129. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-05-patterns.md +4 -4
  130. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-06-structure.md +4 -4
  131. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-07-validation.md +4 -4
  132. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/steps/step-08-complete.md +1 -1
  133. package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/workflow.md +1 -12
  134. package/bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/SKILL.md +6 -0
  135. package/bmad/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/bmad-skill-manifest.yaml +1 -0
  136. package/bmad/bmm/workflows/3-solutioning/{create-epics-and-stories → bmad-create-epics-and-stories}/steps/step-01-validate-prerequisites.md +37 -41
  137. package/bmad/bmm/workflows/3-solutioning/{create-epics-and-stories → bmad-create-epics-and-stories}/steps/step-02-design-epics.md +7 -28
  138. package/bmad/bmm/workflows/3-solutioning/{create-epics-and-stories → bmad-create-epics-and-stories}/steps/step-03-create-stories.md +13 -30
  139. package/bmad/bmm/workflows/3-solutioning/{create-epics-and-stories → bmad-create-epics-and-stories}/steps/step-04-final-validation.md +3 -21
  140. package/bmad/bmm/workflows/3-solutioning/{create-epics-and-stories → bmad-create-epics-and-stories}/templates/epics-template.md +4 -0
  141. package/bmad/bmm/workflows/3-solutioning/{create-epics-and-stories → bmad-create-epics-and-stories}/workflow.md +1 -6
  142. package/bmad/bmm/workflows/4-implementation/bmad-code-review/SKILL.md +6 -0
  143. package/bmad/bmm/workflows/4-implementation/bmad-code-review/bmad-skill-manifest.yaml +1 -0
  144. package/bmad/bmm/workflows/4-implementation/bmad-code-review/steps/step-01-gather-context.md +61 -0
  145. package/bmad/bmm/workflows/4-implementation/bmad-code-review/steps/step-02-review.md +41 -0
  146. package/bmad/bmm/workflows/4-implementation/bmad-code-review/steps/step-03-triage.md +50 -0
  147. package/bmad/bmm/workflows/4-implementation/bmad-code-review/steps/step-04-present.md +38 -0
  148. package/bmad/bmm/workflows/4-implementation/bmad-code-review/workflow.md +54 -0
  149. package/bmad/bmm/workflows/4-implementation/bmad-correct-course/SKILL.md +6 -0
  150. package/bmad/bmm/workflows/4-implementation/bmad-correct-course/bmad-skill-manifest.yaml +1 -0
  151. package/bmad/bmm/workflows/4-implementation/{correct-course → bmad-correct-course}/checklist.md +1 -1
  152. package/bmad/bmm/workflows/4-implementation/{correct-course/instructions.md → bmad-correct-course/workflow.md} +74 -14
  153. package/bmad/bmm/workflows/4-implementation/bmad-create-story/SKILL.md +6 -0
  154. package/bmad/bmm/workflows/4-implementation/bmad-create-story/bmad-skill-manifest.yaml +1 -0
  155. package/bmad/bmm/workflows/4-implementation/{create-story → bmad-create-story}/checklist.md +9 -10
  156. package/bmad/bmm/workflows/4-implementation/bmad-create-story/discover-inputs.md +88 -0
  157. package/bmad/bmm/workflows/4-implementation/bmad-create-story/workflow.md +380 -0
  158. package/bmad/bmm/workflows/4-implementation/bmad-dev-story/SKILL.md +6 -0
  159. package/bmad/bmm/workflows/4-implementation/bmad-dev-story/bmad-skill-manifest.yaml +1 -0
  160. package/bmad/bmm/workflows/4-implementation/{dev-story/instructions.xml → bmad-dev-story/workflow.md} +42 -2
  161. package/bmad/bmm/workflows/4-implementation/bmad-retrospective/SKILL.md +6 -0
  162. package/bmad/bmm/workflows/4-implementation/bmad-retrospective/bmad-skill-manifest.yaml +1 -0
  163. package/bmad/bmm/workflows/4-implementation/{retrospective/instructions.md → bmad-retrospective/workflow.md} +58 -23
  164. package/bmad/bmm/workflows/4-implementation/bmad-sprint-planning/SKILL.md +6 -0
  165. package/bmad/bmm/workflows/4-implementation/bmad-sprint-planning/bmad-skill-manifest.yaml +1 -0
  166. package/bmad/bmm/workflows/4-implementation/{sprint-planning → bmad-sprint-planning}/sprint-status-template.yaml +1 -0
  167. package/bmad/bmm/workflows/4-implementation/{sprint-planning/instructions.md → bmad-sprint-planning/workflow.md} +47 -10
  168. package/bmad/bmm/workflows/4-implementation/bmad-sprint-status/SKILL.md +6 -0
  169. package/bmad/bmm/workflows/4-implementation/bmad-sprint-status/bmad-skill-manifest.yaml +1 -0
  170. package/bmad/bmm/workflows/4-implementation/{sprint-status/instructions.md → bmad-sprint-status/workflow.md} +39 -8
  171. package/bmad/bmm/workflows/bmad-document-project/SKILL.md +6 -0
  172. package/bmad/bmm/workflows/bmad-document-project/bmad-skill-manifest.yaml +1 -0
  173. package/bmad/bmm/workflows/{document-project → bmad-document-project}/instructions.md +6 -8
  174. package/bmad/bmm/workflows/bmad-document-project/workflow.md +27 -0
  175. package/bmad/bmm/workflows/{document-project → bmad-document-project}/workflows/deep-dive-instructions.md +3 -2
  176. package/bmad/bmm/workflows/bmad-document-project/workflows/deep-dive-workflow.md +34 -0
  177. package/bmad/bmm/workflows/{document-project → bmad-document-project}/workflows/full-scan-instructions.md +5 -4
  178. package/bmad/bmm/workflows/bmad-document-project/workflows/full-scan-workflow.md +34 -0
  179. package/bmad/bmm/workflows/bmad-generate-project-context/SKILL.md +6 -0
  180. package/bmad/bmm/workflows/bmad-generate-project-context/bmad-skill-manifest.yaml +1 -0
  181. package/bmad/bmm/workflows/{generate-project-context → bmad-generate-project-context}/steps/step-01-discover.md +3 -1
  182. package/bmad/bmm/workflows/{generate-project-context → bmad-generate-project-context}/steps/step-02-generate.md +7 -4
  183. package/bmad/bmm/workflows/{generate-project-context → bmad-generate-project-context}/workflow.md +2 -8
  184. package/bmad/bmm/workflows/bmad-qa-generate-e2e-tests/SKILL.md +6 -0
  185. package/bmad/bmm/workflows/bmad-qa-generate-e2e-tests/bmad-skill-manifest.yaml +1 -0
  186. package/bmad/bmm/workflows/{qa/automate/instructions.md → bmad-qa-generate-e2e-tests/workflow.md} +33 -7
  187. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/SKILL.md +6 -0
  188. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev/bmad-skill-manifest.yaml +1 -0
  189. package/bmad/bmm/workflows/bmad-quick-flow/{quick-dev → bmad-quick-dev}/steps/step-01-mode-detection.md +9 -14
  190. package/bmad/bmm/workflows/bmad-quick-flow/{quick-dev → bmad-quick-dev}/steps/step-02-context-gathering.md +1 -5
  191. package/bmad/bmm/workflows/bmad-quick-flow/{quick-dev → bmad-quick-dev}/steps/step-03-execute.md +1 -5
  192. package/bmad/bmm/workflows/bmad-quick-flow/{quick-dev → bmad-quick-dev}/steps/step-04-self-check.md +1 -5
  193. package/bmad/bmm/workflows/bmad-quick-flow/{quick-dev → bmad-quick-dev}/steps/step-05-adversarial-review.md +8 -18
  194. package/bmad/bmm/workflows/bmad-quick-flow/{quick-dev → bmad-quick-dev}/steps/step-06-resolve-findings.md +0 -2
  195. package/bmad/bmm/workflows/bmad-quick-flow/{quick-dev → bmad-quick-dev}/workflow.md +1 -13
  196. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/SKILL.md +6 -0
  197. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/bmad-skill-manifest.yaml +1 -0
  198. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-01-clarify-and-route.md +51 -0
  199. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-02-plan.md +35 -0
  200. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-03-implement.md +33 -0
  201. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-04-review.md +50 -0
  202. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-05-present.md +17 -0
  203. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/tech-spec-template.md +90 -0
  204. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/workflow.md +79 -0
  205. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/SKILL.md +6 -0
  206. package/bmad/bmm/workflows/bmad-quick-flow/bmad-quick-spec/bmad-skill-manifest.yaml +1 -0
  207. package/bmad/bmm/workflows/bmad-quick-flow/{quick-spec → bmad-quick-spec}/steps/step-01-understand.md +7 -13
  208. package/bmad/bmm/workflows/bmad-quick-flow/{quick-spec → bmad-quick-spec}/steps/step-02-investigate.md +3 -7
  209. package/bmad/bmm/workflows/bmad-quick-flow/{quick-spec → bmad-quick-spec}/steps/step-03-generate.md +1 -5
  210. package/bmad/bmm/workflows/bmad-quick-flow/{quick-spec → bmad-quick-spec}/steps/step-04-review.md +9 -14
  211. package/bmad/bmm/workflows/bmad-quick-flow/{quick-spec → bmad-quick-spec}/workflow.md +1 -7
  212. package/bmad/core/module-help.csv +10 -8
  213. package/bmad/core/module.yaml +1 -1
  214. package/bmad/core/skills/bmad-advanced-elicitation/SKILL.md +6 -0
  215. package/bmad/core/skills/bmad-advanced-elicitation/bmad-skill-manifest.yaml +1 -0
  216. package/bmad/core/skills/bmad-advanced-elicitation/workflow.md +135 -0
  217. package/bmad/core/skills/bmad-brainstorming/SKILL.md +6 -0
  218. package/bmad/core/skills/bmad-brainstorming/bmad-skill-manifest.yaml +1 -0
  219. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/steps/step-01-session-setup.md +35 -18
  220. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/steps/step-01b-continue.md +4 -2
  221. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/steps/step-02a-user-selected.md +5 -1
  222. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/steps/step-02b-ai-recommended.md +3 -1
  223. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/steps/step-02c-random-selection.md +3 -1
  224. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/steps/step-02d-progressive-flow.md +3 -1
  225. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/steps/step-03-technique-execution.md +6 -4
  226. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/steps/step-04-idea-organization.md +4 -2
  227. package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/workflow.md +4 -9
  228. package/bmad/core/skills/bmad-distillator/SKILL.md +178 -0
  229. package/bmad/core/skills/bmad-distillator/agents/distillate-compressor.md +116 -0
  230. package/bmad/core/skills/bmad-distillator/agents/round-trip-reconstructor.md +68 -0
  231. package/bmad/core/skills/bmad-distillator/bmad-skill-manifest.yaml +15 -0
  232. package/bmad/core/skills/bmad-distillator/resources/compression-rules.md +51 -0
  233. package/bmad/core/skills/bmad-distillator/resources/distillate-format-reference.md +227 -0
  234. package/bmad/core/skills/bmad-distillator/resources/splitting-strategy.md +78 -0
  235. package/bmad/core/skills/bmad-distillator/scripts/analyze_sources.py +300 -0
  236. package/bmad/core/skills/bmad-distillator/scripts/tests/test_analyze_sources.py +204 -0
  237. package/bmad/core/skills/bmad-editorial-review-prose/SKILL.md +6 -0
  238. package/bmad/core/skills/bmad-editorial-review-prose/bmad-skill-manifest.yaml +1 -0
  239. package/bmad/core/skills/bmad-editorial-review-prose/workflow.md +81 -0
  240. package/bmad/core/skills/bmad-editorial-review-structure/SKILL.md +6 -0
  241. package/bmad/core/skills/bmad-editorial-review-structure/bmad-skill-manifest.yaml +1 -0
  242. package/bmad/core/skills/bmad-editorial-review-structure/workflow.md +174 -0
  243. package/bmad/core/skills/bmad-help/SKILL.md +6 -0
  244. package/bmad/core/skills/bmad-help/bmad-skill-manifest.yaml +1 -0
  245. package/bmad/core/{tasks/help.md → skills/bmad-help/workflow.md} +11 -8
  246. package/bmad/core/skills/bmad-index-docs/SKILL.md +6 -0
  247. package/bmad/core/skills/bmad-index-docs/bmad-skill-manifest.yaml +1 -0
  248. package/bmad/core/skills/bmad-index-docs/workflow.md +61 -0
  249. package/bmad/core/skills/bmad-party-mode/SKILL.md +6 -0
  250. package/bmad/core/skills/bmad-party-mode/bmad-skill-manifest.yaml +1 -0
  251. package/bmad/core/{workflows/party-mode → skills/bmad-party-mode}/steps/step-03-graceful-exit.md +0 -1
  252. package/bmad/core/{workflows/party-mode → skills/bmad-party-mode}/workflow.md +0 -4
  253. package/bmad/core/skills/bmad-review-adversarial-general/SKILL.md +6 -0
  254. package/bmad/core/skills/bmad-review-adversarial-general/bmad-skill-manifest.yaml +1 -0
  255. package/bmad/core/skills/bmad-review-adversarial-general/workflow.md +32 -0
  256. package/bmad/core/skills/bmad-review-edge-case-hunter/SKILL.md +6 -0
  257. package/bmad/core/skills/bmad-review-edge-case-hunter/bmad-skill-manifest.yaml +1 -0
  258. package/bmad/core/skills/bmad-review-edge-case-hunter/workflow.md +62 -0
  259. package/bmad/core/skills/bmad-shard-doc/SKILL.md +6 -0
  260. package/bmad/core/skills/bmad-shard-doc/bmad-skill-manifest.yaml +1 -0
  261. package/bmad/core/skills/bmad-shard-doc/workflow.md +100 -0
  262. package/bmad/core/tasks/bmad-create-prd/SKILL.md +6 -0
  263. package/bmad/core/tasks/bmad-create-prd/bmad-skill-manifest.yaml +1 -0
  264. package/bmad/core/tasks/bmad-create-prd/data/domain-complexity.csv +15 -0
  265. package/bmad/core/tasks/bmad-create-prd/data/prd-purpose.md +197 -0
  266. package/bmad/core/tasks/bmad-create-prd/data/project-types.csv +11 -0
  267. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-01-init.md +7 -20
  268. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-01b-continue.md +29 -21
  269. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-02-discovery.md +7 -23
  270. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-02b-vision.md +5 -17
  271. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-02c-executive-summary.md +5 -17
  272. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-03-success.md +4 -16
  273. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-04-journeys.md +4 -16
  274. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-05-domain.md +7 -20
  275. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-06-innovation.md +8 -23
  276. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-07-project-type.md +6 -21
  277. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-08-scoping.md +5 -17
  278. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-09-functional.md +5 -17
  279. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-10-nonfunctional.md +5 -17
  280. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-11-polish.md +22 -18
  281. package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/steps-c/step-12-complete.md +4 -13
  282. package/bmad/{bmm/workflows/2-plan-workflows/create-prd/workflow-create-prd.md → core/tasks/bmad-create-prd/workflow.md} +3 -4
  283. package/bundled-versions.json +1 -1
  284. package/dist/commands/doctor-checks.js +14 -5
  285. package/dist/commands/doctor-checks.js.map +1 -1
  286. package/dist/commands/doctor.js +13 -4
  287. package/dist/commands/doctor.js.map +1 -1
  288. package/dist/commands/init.js +12 -2
  289. package/dist/commands/init.js.map +1 -1
  290. package/dist/commands/run.js +11 -2
  291. package/dist/commands/run.js.map +1 -1
  292. package/dist/commands/status.js +3 -2
  293. package/dist/commands/status.js.map +1 -1
  294. package/dist/commands/watch.js +5 -0
  295. package/dist/commands/watch.js.map +1 -1
  296. package/dist/installer/commands.js +33 -15
  297. package/dist/installer/commands.js.map +1 -1
  298. package/dist/installer/install.js +1 -1
  299. package/dist/installer/install.js.map +1 -1
  300. package/dist/installer/project-files.js +4 -4
  301. package/dist/installer/project-files.js.map +1 -1
  302. package/dist/installer/template-files.js +72 -6
  303. package/dist/installer/template-files.js.map +1 -1
  304. package/dist/platform/codex.js +6 -1
  305. package/dist/platform/codex.js.map +1 -1
  306. package/dist/platform/detect.js +7 -3
  307. package/dist/platform/detect.js.map +1 -1
  308. package/dist/platform/doctor-checks.js +2 -2
  309. package/dist/platform/doctor-checks.js.map +1 -1
  310. package/dist/platform/guidance.js +66 -0
  311. package/dist/platform/guidance.js.map +1 -0
  312. package/dist/platform/instructions-snippet.js +15 -0
  313. package/dist/platform/instructions-snippet.js.map +1 -1
  314. package/dist/platform/opencode.js +20 -0
  315. package/dist/platform/opencode.js.map +1 -0
  316. package/dist/platform/registry.js +2 -0
  317. package/dist/platform/registry.js.map +1 -1
  318. package/dist/platform/types.js +1 -0
  319. package/dist/platform/types.js.map +1 -1
  320. package/dist/reset.js +3 -3
  321. package/dist/reset.js.map +1 -1
  322. package/dist/run/ralph-process.js +51 -7
  323. package/dist/run/ralph-process.js.map +1 -1
  324. package/dist/run/run-dashboard.js +22 -9
  325. package/dist/run/run-dashboard.js.map +1 -1
  326. package/dist/transition/artifact-scan.js +14 -5
  327. package/dist/transition/artifact-scan.js.map +1 -1
  328. package/dist/transition/context.js +11 -3
  329. package/dist/transition/context.js.map +1 -1
  330. package/dist/utils/constants.js +4 -2
  331. package/dist/utils/constants.js.map +1 -1
  332. package/dist/watch/dashboard.js +36 -21
  333. package/dist/watch/dashboard.js.map +1 -1
  334. package/dist/watch/frame-writer.js +83 -0
  335. package/dist/watch/frame-writer.js.map +1 -0
  336. package/dist/watch/renderer.js +179 -54
  337. package/dist/watch/renderer.js.map +1 -1
  338. package/dist/watch/state-reader.js +8 -0
  339. package/dist/watch/state-reader.js.map +1 -1
  340. package/package.json +1 -1
  341. package/ralph/RALPH-REFERENCE.md +4 -4
  342. package/ralph/drivers/claude-code.sh +4 -2
  343. package/ralph/drivers/opencode.sh +147 -0
  344. package/ralph/lib/enable_core.sh +10 -2
  345. package/ralph/lib/response_analyzer.sh +337 -96
  346. package/ralph/lib/wizard_utils.sh +4 -4
  347. package/ralph/ralph_import.sh +9 -1
  348. package/ralph/ralph_loop.sh +428 -15
  349. package/ralph/templates/PROMPT.md +15 -5
  350. package/ralph/templates/ralphrc.template +31 -5
  351. package/slash-commands/advanced-elicitation.md +1 -1
  352. package/slash-commands/adversarial-review.md +1 -1
  353. package/slash-commands/bmad-help.md +1 -1
  354. package/slash-commands/bmalph.md +1 -1
  355. package/slash-commands/brainstorm-project.md +1 -1
  356. package/slash-commands/brainstorming.md +1 -1
  357. package/slash-commands/correct-course.md +1 -1
  358. package/slash-commands/create-architecture.md +1 -1
  359. package/slash-commands/create-brief.md +1 -1
  360. package/slash-commands/create-epics-stories.md +1 -1
  361. package/slash-commands/create-prd.md +1 -1
  362. package/slash-commands/create-story.md +1 -1
  363. package/slash-commands/create-ux.md +1 -1
  364. package/slash-commands/distillator.md +1 -0
  365. package/slash-commands/document-project.md +1 -1
  366. package/slash-commands/domain-research.md +1 -1
  367. package/slash-commands/edge-case-hunter.md +1 -0
  368. package/slash-commands/edit-prd.md +1 -0
  369. package/slash-commands/editorial-prose.md +1 -1
  370. package/slash-commands/editorial-structure.md +1 -1
  371. package/slash-commands/generate-project-context.md +1 -1
  372. package/slash-commands/implementation-readiness.md +1 -1
  373. package/slash-commands/index-docs.md +1 -1
  374. package/slash-commands/market-research.md +1 -1
  375. package/slash-commands/party-mode.md +1 -1
  376. package/slash-commands/qa-automate.md +1 -1
  377. package/slash-commands/quick-dev-new.md +1 -0
  378. package/slash-commands/quick-dev.md +1 -1
  379. package/slash-commands/retrospective.md +1 -1
  380. package/slash-commands/shard-doc.md +1 -1
  381. package/slash-commands/sprint-planning.md +1 -1
  382. package/slash-commands/sprint-status.md +1 -1
  383. package/slash-commands/tech-spec.md +1 -1
  384. package/slash-commands/technical-research.md +1 -1
  385. package/slash-commands/validate-architecture.md +1 -1
  386. package/slash-commands/validate-brief.md +1 -1
  387. package/slash-commands/validate-epics-stories.md +1 -1
  388. package/slash-commands/validate-prd.md +1 -1
  389. package/slash-commands/validate-story.md +1 -1
  390. package/slash-commands/validate-ux.md +1 -1
  391. package/bmad/bmm/workflows/4-implementation/code-review/checklist.md +0 -23
  392. package/bmad/bmm/workflows/4-implementation/code-review/instructions.xml +0 -227
  393. package/bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -44
  394. package/bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -54
  395. package/bmad/bmm/workflows/4-implementation/create-story/instructions.xml +0 -346
  396. package/bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -53
  397. package/bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -21
  398. package/bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -53
  399. package/bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -47
  400. package/bmad/bmm/workflows/4-implementation/sprint-status/workflow.yaml +0 -25
  401. package/bmad/bmm/workflows/document-project/workflow.yaml +0 -22
  402. package/bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
  403. package/bmad/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
  404. package/bmad/bmm/workflows/qa/automate/workflow.yaml +0 -44
  405. package/bmad/core/agents/bmad-master.agent.yaml +0 -30
  406. package/bmad/core/tasks/editorial-review-prose.xml +0 -102
  407. package/bmad/core/tasks/editorial-review-structure.xml +0 -209
  408. package/bmad/core/tasks/index-docs.xml +0 -65
  409. package/bmad/core/tasks/review-adversarial-general.xml +0 -48
  410. package/bmad/core/tasks/shard-doc.xml +0 -108
  411. package/bmad/core/tasks/workflow.xml +0 -235
  412. package/bmad/core/workflows/advanced-elicitation/workflow.xml +0 -117
  413. package/slash-commands/execute-workflow.md +0 -1
  414. /package/bmad/bmm/workflows/1-analysis/research/{domain-steps → bmad-domain-research/domain-steps}/step-01-init.md +0 -0
  415. /package/bmad/bmm/workflows/1-analysis/research/{domain-steps → bmad-domain-research/domain-steps}/step-02-domain-analysis.md +0 -0
  416. /package/bmad/bmm/workflows/1-analysis/research/{domain-steps → bmad-domain-research/domain-steps}/step-03-competitive-landscape.md +0 -0
  417. /package/bmad/bmm/workflows/1-analysis/research/{domain-steps → bmad-domain-research/domain-steps}/step-04-regulatory-focus.md +0 -0
  418. /package/bmad/bmm/workflows/1-analysis/research/{domain-steps → bmad-domain-research/domain-steps}/step-05-technical-trends.md +0 -0
  419. /package/bmad/bmm/workflows/1-analysis/research/{technical-steps → bmad-technical-research/technical-steps}/step-01-init.md +0 -0
  420. /package/bmad/bmm/workflows/1-analysis/research/{technical-steps → bmad-technical-research/technical-steps}/step-02-technical-overview.md +0 -0
  421. /package/bmad/bmm/workflows/1-analysis/research/{technical-steps → bmad-technical-research/technical-steps}/step-03-integration-patterns.md +0 -0
  422. /package/bmad/bmm/workflows/1-analysis/research/{technical-steps → bmad-technical-research/technical-steps}/step-04-architectural-patterns.md +0 -0
  423. /package/bmad/bmm/workflows/1-analysis/research/{technical-steps → bmad-technical-research/technical-steps}/step-05-implementation-research.md +0 -0
  424. /package/bmad/bmm/workflows/2-plan-workflows/{create-ux-design → bmad-create-ux-design}/ux-design-template.md +0 -0
  425. /package/bmad/bmm/workflows/3-solutioning/{check-implementation-readiness → bmad-check-implementation-readiness}/templates/readiness-report-template.md +0 -0
  426. /package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/architecture-decision-template.md +0 -0
  427. /package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/data/domain-complexity.csv +0 -0
  428. /package/bmad/bmm/workflows/3-solutioning/{create-architecture → bmad-create-architecture}/data/project-types.csv +0 -0
  429. /package/bmad/bmm/workflows/4-implementation/{create-story → bmad-create-story}/template.md +0 -0
  430. /package/bmad/bmm/workflows/4-implementation/{dev-story → bmad-dev-story}/checklist.md +0 -0
  431. /package/bmad/bmm/workflows/4-implementation/{sprint-planning → bmad-sprint-planning}/checklist.md +0 -0
  432. /package/bmad/bmm/workflows/{document-project → bmad-document-project}/checklist.md +0 -0
  433. /package/bmad/bmm/workflows/{document-project → bmad-document-project}/documentation-requirements.csv +0 -0
  434. /package/bmad/bmm/workflows/{document-project → bmad-document-project}/templates/deep-dive-template.md +0 -0
  435. /package/bmad/bmm/workflows/{document-project → bmad-document-project}/templates/index-template.md +0 -0
  436. /package/bmad/bmm/workflows/{document-project → bmad-document-project}/templates/project-overview-template.md +0 -0
  437. /package/bmad/bmm/workflows/{document-project → bmad-document-project}/templates/project-scan-report-schema.json +0 -0
  438. /package/bmad/bmm/workflows/{document-project → bmad-document-project}/templates/source-tree-template.md +0 -0
  439. /package/bmad/bmm/workflows/{generate-project-context → bmad-generate-project-context}/project-context-template.md +0 -0
  440. /package/bmad/bmm/workflows/{generate-project-context → bmad-generate-project-context}/steps/step-03-complete.md +0 -0
  441. /package/bmad/bmm/workflows/{qa/automate → bmad-qa-generate-e2e-tests}/checklist.md +0 -0
  442. /package/bmad/bmm/workflows/bmad-quick-flow/{quick-spec → bmad-quick-spec}/tech-spec-template.md +0 -0
  443. /package/bmad/core/{workflows/advanced-elicitation → skills/bmad-advanced-elicitation}/methods.csv +0 -0
  444. /package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/brain-methods.csv +0 -0
  445. /package/bmad/core/{workflows/brainstorming → skills/bmad-brainstorming}/template.md +0 -0
  446. /package/bmad/core/{workflows/party-mode → skills/bmad-party-mode}/steps/step-01-agent-loading.md +0 -0
  447. /package/bmad/core/{workflows/party-mode → skills/bmad-party-mode}/steps/step-02-discussion-orchestration.md +0 -0
  448. /package/bmad/{bmm/workflows/2-plan-workflows/create-prd → core/tasks/bmad-create-prd}/templates/prd-template.md +0 -0
@@ -97,6 +97,11 @@ export async function readAnalysisInfo(projectDir) {
97
97
  const isTestOnly = typeof a.is_test_only === "boolean" ? a.is_test_only : false;
98
98
  const isStuck = typeof a.is_stuck === "boolean" ? a.is_stuck : false;
99
99
  const exitSignal = typeof a.exit_signal === "boolean" ? a.exit_signal : false;
100
+ const tasksCompletedThisLoop = typeof a.tasks_completed_this_loop === "number" ? a.tasks_completed_this_loop : 0;
101
+ const fixPlanCompletedDelta = typeof a.fix_plan_completed_delta === "number" ? a.fix_plan_completed_delta : 0;
102
+ const hasProgressTrackingMismatch = typeof a.has_progress_tracking_mismatch === "boolean"
103
+ ? a.has_progress_tracking_mismatch
104
+ : false;
100
105
  const hasPermissionDenials = typeof a.has_permission_denials === "boolean" ? a.has_permission_denials : false;
101
106
  const permissionDenialCount = typeof a.permission_denial_count === "number" ? a.permission_denial_count : 0;
102
107
  return {
@@ -105,6 +110,9 @@ export async function readAnalysisInfo(projectDir) {
105
110
  isTestOnly,
106
111
  isStuck,
107
112
  exitSignal,
113
+ tasksCompletedThisLoop,
114
+ fixPlanCompletedDelta,
115
+ hasProgressTrackingMismatch,
108
116
  hasPermissionDenials,
109
117
  permissionDenialCount,
110
118
  };
@@ -1 +1 @@
1
- {"version":3,"file":"state-reader.js","sourceRoot":"","sources":["../../src/watch/state-reader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state-reader.js","sourceRoot":"","sources":["../../src/watch/state-reader.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bmalph",
3
- "version": "2.7.6",
3
+ "version": "2.8.0",
4
4
  "description": "Unified AI Development Framework - BMAD phases with Ralph execution loop",
5
5
  "type": "module",
6
6
  "bin": {
@@ -60,8 +60,8 @@ Environment variables > Ralph config file > script defaults
60
60
  | `MAX_CALLS_PER_HOUR` | `100` | Rate limit for API calls |
61
61
  | `CLAUDE_TIMEOUT_MINUTES` | `15` | Timeout per loop driver invocation |
62
62
  | `CLAUDE_OUTPUT_FORMAT` | `json` | Output format (json or text) |
63
- | `ALLOWED_TOOLS` | `Write,Read,Edit,MultiEdit,Glob,Grep,Task,TodoWrite,WebFetch,WebSearch,NotebookEdit,Bash` | Claude Code only. Ignored by codex, cursor, and copilot |
64
- | `CLAUDE_PERMISSION_MODE` | `auto` | Claude Code only. Prevents interactive approval workflows from blocking unattended loops |
63
+ | `ALLOWED_TOOLS` | `Write,Read,Edit,MultiEdit,Glob,Grep,Task,TodoWrite,WebFetch,WebSearch,EnterPlanMode,ExitPlanMode,NotebookEdit,Bash` | Claude Code only. Ignored by codex, cursor, and copilot |
64
+ | `CLAUDE_PERMISSION_MODE` | `bypassPermissions` | Claude Code only. Prevents interactive approval workflows from blocking unattended loops without relying on beta headers |
65
65
  | `PERMISSION_DENIAL_MODE` | `continue` | How Ralph responds to permission denials: continue, halt, or threshold |
66
66
  | `SESSION_CONTINUITY` | `true` | Maintain context across loops |
67
67
  | `SESSION_EXPIRY_HOURS` | `24` | Session expiration time |
@@ -242,7 +242,7 @@ The coding agent should include this status block at the end of each response:
242
242
  ```
243
243
  ---RALPH_STATUS---
244
244
  STATUS: IN_PROGRESS | COMPLETE | BLOCKED
245
- TASKS_COMPLETED_THIS_LOOP: <number>
245
+ TASKS_COMPLETED_THIS_LOOP: 0 | 1
246
246
  FILES_MODIFIED: <number>
247
247
  TESTS_STATUS: PASSING | FAILING | NOT_RUN
248
248
  WORK_TYPE: IMPLEMENTATION | TESTING | DOCUMENTATION | REFACTORING
@@ -351,7 +351,7 @@ When using `--monitor` with `--live`, tmux creates a 3-pane layout:
351
351
 
352
352
  **Solutions:**
353
353
  1. For Claude Code, update `ALLOWED_TOOLS` in `.ralph/.ralphrc` to include needed tools
354
- 2. For Claude Code unattended loops, keep `CLAUDE_PERMISSION_MODE="auto"` in `.ralph/.ralphrc`
354
+ 2. For Claude Code unattended loops, keep `CLAUDE_PERMISSION_MODE="bypassPermissions"` in `.ralph/.ralphrc`
355
355
  3. For codex, cursor, and copilot, review the driver's native permission settings; `ALLOWED_TOOLS` is ignored
356
356
  4. If you want unattended behavior, keep `PERMISSION_DENIAL_MODE="continue"` in `.ralph/.ralphrc`
357
357
  5. Reset circuit breaker if needed: `bash .ralph/ralph_loop.sh --reset-circuit`
@@ -39,6 +39,8 @@ driver_valid_tools() {
39
39
  "WebFetch"
40
40
  "WebSearch"
41
41
  "AskUserQuestion"
42
+ "EnterPlanMode"
43
+ "ExitPlanMode"
42
44
  "Bash"
43
45
  "Bash(git *)"
44
46
  "Bash(npm *)"
@@ -54,7 +56,7 @@ driver_supports_tool_allowlist() {
54
56
  }
55
57
 
56
58
  driver_permission_denial_help() {
57
- echo " 1. Edit $RALPHRC_FILE and keep CLAUDE_PERMISSION_MODE=auto for unattended Claude Code loops"
59
+ echo " 1. Edit $RALPHRC_FILE and keep CLAUDE_PERMISSION_MODE=bypassPermissions for unattended Claude Code loops"
58
60
  echo " 2. If Claude was denied on an interactive approval step, ALLOWED_TOOLS will not fix it"
59
61
  echo " 3. If Claude was denied on a normal tool, update ALLOWED_TOOLS to include the required tools"
60
62
  echo " 4. Common ALLOWED_TOOLS patterns:"
@@ -79,7 +81,7 @@ driver_build_command() {
79
81
  local prompt_file=$1
80
82
  local loop_context=$2
81
83
  local session_id=$3
82
- local resolved_permission_mode="${CLAUDE_PERMISSION_MODE:-auto}"
84
+ local resolved_permission_mode="${CLAUDE_PERMISSION_MODE:-bypassPermissions}"
83
85
 
84
86
  # Note: We do NOT use --dangerously-skip-permissions here. Tool permissions
85
87
  # are controlled via --allowedTools from CLAUDE_ALLOWED_TOOLS in .ralphrc.
@@ -0,0 +1,147 @@
1
+ #!/bin/bash
2
+ # OpenCode driver for Ralph
3
+ # Uses OpenCode's build agent with JSON event output and optional session resume.
4
+
5
+ driver_name() {
6
+ echo "opencode"
7
+ }
8
+
9
+ driver_display_name() {
10
+ echo "OpenCode"
11
+ }
12
+
13
+ driver_cli_binary() {
14
+ echo "opencode"
15
+ }
16
+
17
+ driver_min_version() {
18
+ echo "0.1.0"
19
+ }
20
+
21
+ driver_check_available() {
22
+ command -v "$(driver_cli_binary)" &>/dev/null
23
+ }
24
+
25
+ driver_valid_tools() {
26
+ VALID_TOOL_PATTERNS=(
27
+ "bash"
28
+ "read"
29
+ "write"
30
+ "edit"
31
+ "grep"
32
+ "question"
33
+ )
34
+ }
35
+
36
+ driver_supports_tool_allowlist() {
37
+ return 1
38
+ }
39
+
40
+ driver_permission_denial_help() {
41
+ echo " - $DRIVER_DISPLAY_NAME uses its native permission and approval model."
42
+ echo " - ALLOWED_TOOLS in $RALPHRC_FILE is ignored for this driver."
43
+ echo " - BMAD workflows can use OpenCode's native question tool when needed."
44
+ echo " - Review OpenCode permissions, then restart the loop."
45
+ }
46
+
47
+ driver_build_command() {
48
+ local prompt_file=$1
49
+ local loop_context=$2
50
+ local session_id=$3
51
+
52
+ CLAUDE_CMD_ARGS=("$(driver_cli_binary)" "run" "--agent" "build" "--format" "json")
53
+
54
+ if [[ ! -f "$prompt_file" ]]; then
55
+ echo "ERROR: Prompt file not found: $prompt_file" >&2
56
+ return 1
57
+ fi
58
+
59
+ if [[ "$CLAUDE_USE_CONTINUE" == "true" && -n "$session_id" ]]; then
60
+ CLAUDE_CMD_ARGS+=("--continue" "--session" "$session_id")
61
+ fi
62
+
63
+ local prompt_content
64
+ prompt_content=$(cat "$prompt_file")
65
+ if [[ -n "$loop_context" ]]; then
66
+ prompt_content="$loop_context
67
+
68
+ $prompt_content"
69
+ fi
70
+
71
+ CLAUDE_CMD_ARGS+=("$prompt_content")
72
+ }
73
+
74
+ driver_supports_sessions() {
75
+ return 0
76
+ }
77
+
78
+ driver_supports_live_output() {
79
+ return 0
80
+ }
81
+
82
+ driver_prepare_live_command() {
83
+ LIVE_CMD_ARGS=("${CLAUDE_CMD_ARGS[@]}")
84
+ }
85
+
86
+ driver_stream_filter() {
87
+ echo 'select((.type == "message.updated" or .type == "message.completed") and .message.role == "assistant") | ([.message.parts[]? | select(.type == "text") | .text] | join("\n"))'
88
+ }
89
+
90
+ driver_extract_session_id_from_output() {
91
+ local output_file=$1
92
+
93
+ if [[ ! -f "$output_file" ]]; then
94
+ echo ""
95
+ return 1
96
+ fi
97
+
98
+ local session_id
99
+ session_id=$(sed -n 's/.*"session"[^{]*{[^}]*"id"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p' "$output_file" | head -n 1 | tr -d '\r')
100
+
101
+ echo "$session_id"
102
+ [[ -n "$session_id" && "$session_id" != "null" ]]
103
+ }
104
+
105
+ driver_fallback_session_id() {
106
+ local cli_binary
107
+ cli_binary=$(driver_cli_binary)
108
+
109
+ local sessions_json
110
+ sessions_json=$("$cli_binary" session list --format json 2>/dev/null) || {
111
+ echo ""
112
+ return 1
113
+ }
114
+
115
+ local session_ids
116
+ if command -v jq >/dev/null 2>&1; then
117
+ session_ids=$(printf '%s' "$sessions_json" | jq -r '
118
+ if type == "array" then
119
+ [.[]?.id // empty]
120
+ elif (.sessions? | type) == "array" then
121
+ [.sessions[]?.id // empty]
122
+ else
123
+ []
124
+ end
125
+ | map(select(length > 0))
126
+ | .[]
127
+ ' 2>/dev/null | tr -d '\r')
128
+ else
129
+ session_ids=$(printf '%s' "$sessions_json" | grep -oE '"id"[[:space:]]*:[[:space:]]*"[^"]+"' | sed 's/.*"id"[[:space:]]*:[[:space:]]*"\([^"]*\)"/\1/' | tr -d '\r')
130
+ fi
131
+
132
+ local -a session_id_candidates=()
133
+ local session_id
134
+ while IFS= read -r session_id; do
135
+ if [[ -n "$session_id" && "$session_id" != "null" ]]; then
136
+ session_id_candidates+=("$session_id")
137
+ fi
138
+ done <<< "$session_ids"
139
+
140
+ if [[ ${#session_id_candidates[@]} -ne 1 ]]; then
141
+ echo ""
142
+ return 1
143
+ fi
144
+
145
+ echo "${session_id_candidates[0]}"
146
+ return 0
147
+ }
@@ -527,9 +527,17 @@ ${objectives_section}
527
527
  - ONE task per loop - focus on the most important thing
528
528
  - Search the codebase before assuming something isn't implemented
529
529
  - Write comprehensive tests with clear documentation
530
- - Update @fix_plan.md with your learnings
530
+ - Toggle completed story checkboxes in @fix_plan.md without rewriting story lines
531
531
  - Commit working changes with descriptive messages
532
532
 
533
+ ## Progress Tracking (CRITICAL)
534
+ - Ralph tracks progress by counting story checkboxes in @fix_plan.md
535
+ - When you complete a story, change \`- [ ]\` to \`- [x]\` on that exact story line
536
+ - Do NOT remove, rewrite, or reorder story lines in @fix_plan.md
537
+ - Update the checkbox before committing so the monitor updates immediately
538
+ - Set \`TASKS_COMPLETED_THIS_LOOP\` to the exact number of story checkboxes toggled this loop
539
+ - Only valid values: 0 or 1
540
+
533
541
  ## Testing Guidelines
534
542
  - LIMIT testing to ~20% of your total effort per loop
535
543
  - PRIORITIZE: Implementation > Documentation > Tests
@@ -545,7 +553,7 @@ At the end of your response, ALWAYS include this status block:
545
553
  \`\`\`
546
554
  ---RALPH_STATUS---
547
555
  STATUS: IN_PROGRESS | COMPLETE | BLOCKED
548
- TASKS_COMPLETED_THIS_LOOP: <number>
556
+ TASKS_COMPLETED_THIS_LOOP: 0 | 1
549
557
  FILES_MODIFIED: <number>
550
558
  TESTS_STATUS: PASSING | FAILING | NOT_RUN
551
559
  WORK_TYPE: IMPLEMENTATION | TESTING | DOCUMENTATION | REFACTORING