bmad-method-quarkus 1.0.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 (380) hide show
  1. package/.claude-plugin/marketplace.json +53 -0
  2. package/AGENTS.md +12 -0
  3. package/LICENSE +30 -0
  4. package/README.md +94 -0
  5. package/README_CN.md +108 -0
  6. package/README_VN.md +109 -0
  7. package/bmad-modules.yaml +133 -0
  8. package/package.json +123 -0
  9. package/removals.txt +87 -0
  10. package/src/bmm-skills/agents/bmad-agent-analyst/SKILL.md +76 -0
  11. package/src/bmm-skills/agents/bmad-agent-analyst/customize.toml +105 -0
  12. package/src/bmm-skills/agents/bmad-agent-architect/SKILL.md +76 -0
  13. package/src/bmm-skills/agents/bmad-agent-architect/customize.toml +65 -0
  14. package/src/bmm-skills/agents/bmad-agent-dev/SKILL.md +76 -0
  15. package/src/bmm-skills/agents/bmad-agent-dev/customize.toml +83 -0
  16. package/src/bmm-skills/agents/bmad-agent-pm/SKILL.md +76 -0
  17. package/src/bmm-skills/agents/bmad-agent-pm/customize.toml +75 -0
  18. package/src/bmm-skills/agents/bmad-agent-ux-designer/SKILL.md +76 -0
  19. package/src/bmm-skills/agents/bmad-agent-ux-designer/customize.toml +60 -0
  20. package/src/bmm-skills/agents/bmad-quarkus-architect/.memlog.md +12 -0
  21. package/src/bmm-skills/agents/bmad-quarkus-architect/.memlog.md:Zone.Identifier +0 -0
  22. package/src/bmm-skills/agents/bmad-quarkus-architect/SKILL.md +86 -0
  23. package/src/bmm-skills/agents/bmad-quarkus-architect/SKILL.md:Zone.Identifier +0 -0
  24. package/src/bmm-skills/agents/bmad-quarkus-architect/customize.toml +37 -0
  25. package/src/bmm-skills/agents/bmad-quarkus-architect/customize.toml:Zone.Identifier +0 -0
  26. package/src/bmm-skills/agents/bmad-quarkus-architect/references/enrich-stories.md +19 -0
  27. package/src/bmm-skills/agents/bmad-quarkus-architect/references/enrich-stories.md:Zone.Identifier +0 -0
  28. package/src/bmm-skills/agents/bmad-quarkus-architect/references/prompt-quality-canon.md +79 -0
  29. package/src/bmm-skills/agents/bmad-quarkus-architect/references/prompt-quality-canon.md:Zone.Identifier +0 -0
  30. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/SKILL.md +80 -0
  31. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/SKILL.md:Zone.Identifier +0 -0
  32. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/assets/module-help.csv +9 -0
  33. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/assets/module-help.csv:Zone.Identifier +0 -0
  34. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/assets/module.yaml +16 -0
  35. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/assets/module.yaml:Zone.Identifier +0 -0
  36. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/scripts/cleanup-legacy.py +287 -0
  37. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/scripts/cleanup-legacy.py:Zone.Identifier +0 -0
  38. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/scripts/merge-config.py +441 -0
  39. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/scripts/merge-config.py:Zone.Identifier +0 -0
  40. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/scripts/merge-help-csv.py +246 -0
  41. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/bqa-setup/scripts/merge-help-csv.py:Zone.Identifier +0 -0
  42. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-error-handling-i18n/SKILL.md +181 -0
  43. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-error-handling-i18n/SKILL.md:Zone.Identifier +0 -0
  44. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-grpc-services/SKILL.md +141 -0
  45. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-grpc-services/SKILL.md:Zone.Identifier +0 -0
  46. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-hexagonal-core/SKILL.md +392 -0
  47. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-hexagonal-core/SKILL.md:Zone.Identifier +0 -0
  48. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-kafka-messaging/SKILL.md +148 -0
  49. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-kafka-messaging/SKILL.md:Zone.Identifier +0 -0
  50. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-observability-otel/SKILL.md +180 -0
  51. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-observability-otel/SKILL.md:Zone.Identifier +0 -0
  52. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-openapi-tmforum/SKILL.md +128 -0
  53. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-openapi-tmforum/SKILL.md:Zone.Identifier +0 -0
  54. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-sql-jdbc-agroal/SKILL.md +245 -0
  55. package/src/bmm-skills/agents/bmad-quarkus-architect/skills/quarkus-sql-jdbc-agroal/SKILL.md:Zone.Identifier +0 -0
  56. package/src/bmm-skills/module-help.csv +19 -0
  57. package/src/bmm-skills/module.yaml +92 -0
  58. package/src/bmm-skills/plan/bmad-architecture/SKILL.md +85 -0
  59. package/src/bmm-skills/plan/bmad-architecture/assets/spine-template.md +79 -0
  60. package/src/bmm-skills/plan/bmad-architecture/customize.toml +102 -0
  61. package/src/bmm-skills/plan/bmad-architecture/references/headless.md +26 -0
  62. package/src/bmm-skills/plan/bmad-architecture/references/reviewer-gate.md +13 -0
  63. package/src/bmm-skills/plan/bmad-architecture/scripts/lint_spine.py +257 -0
  64. package/src/bmm-skills/plan/bmad-architecture/scripts/tests/test_lint_spine.py +270 -0
  65. package/src/bmm-skills/plan/bmad-create-epics-and-stories/SKILL.md +93 -0
  66. package/src/bmm-skills/plan/bmad-create-epics-and-stories/customize.toml +41 -0
  67. package/src/bmm-skills/plan/bmad-create-epics-and-stories/steps/step-01-validate-prerequisites.md +263 -0
  68. package/src/bmm-skills/plan/bmad-create-epics-and-stories/steps/step-02-design-epics.md +242 -0
  69. package/src/bmm-skills/plan/bmad-create-epics-and-stories/steps/step-03-create-stories.md +255 -0
  70. package/src/bmm-skills/plan/bmad-create-epics-and-stories/steps/step-04-final-validation.md +143 -0
  71. package/src/bmm-skills/plan/bmad-create-epics-and-stories/templates/epics-template.md +61 -0
  72. package/src/bmm-skills/plan/bmad-generate-project-context/SKILL.md +10 -0
  73. package/src/bmm-skills/plan/bmad-prd/SKILL.md +94 -0
  74. package/src/bmm-skills/plan/bmad-prd/assets/headless-schemas.md +76 -0
  75. package/src/bmm-skills/plan/bmad-prd/assets/prd-template.md +165 -0
  76. package/src/bmm-skills/plan/bmad-prd/assets/prd-validation-checklist.md +135 -0
  77. package/src/bmm-skills/plan/bmad-prd/assets/validation-report-template.html +325 -0
  78. package/src/bmm-skills/plan/bmad-prd/customize.toml +149 -0
  79. package/src/bmm-skills/plan/bmad-prd/references/headless.md +39 -0
  80. package/src/bmm-skills/plan/bmad-prd/references/validate.md +97 -0
  81. package/src/bmm-skills/plan/bmad-prfaq/SKILL.md +135 -0
  82. package/src/bmm-skills/plan/bmad-prfaq/agents/artifact-analyzer.md +60 -0
  83. package/src/bmm-skills/plan/bmad-prfaq/agents/web-researcher.md +49 -0
  84. package/src/bmm-skills/plan/bmad-prfaq/assets/prfaq-template.md +62 -0
  85. package/src/bmm-skills/plan/bmad-prfaq/bmad-manifest.json +16 -0
  86. package/src/bmm-skills/plan/bmad-prfaq/customize.toml +41 -0
  87. package/src/bmm-skills/plan/bmad-prfaq/references/customer-faq.md +55 -0
  88. package/src/bmm-skills/plan/bmad-prfaq/references/internal-faq.md +51 -0
  89. package/src/bmm-skills/plan/bmad-prfaq/references/press-release.md +60 -0
  90. package/src/bmm-skills/plan/bmad-prfaq/references/verdict.md +83 -0
  91. package/src/bmm-skills/plan/bmad-product-brief/SKILL.md +91 -0
  92. package/src/bmm-skills/plan/bmad-product-brief/assets/brief-template.md +41 -0
  93. package/src/bmm-skills/plan/bmad-product-brief/customize.toml +101 -0
  94. package/src/bmm-skills/plan/bmad-project-context/SKILL.md +110 -0
  95. package/src/bmm-skills/plan/bmad-project-context/customize.toml +24 -0
  96. package/src/bmm-skills/plan/bmad-project-context/references/best-practices.md +65 -0
  97. package/src/bmm-skills/plan/bmad-project-context/references/template.md +55 -0
  98. package/src/bmm-skills/plan/bmad-spec/SKILL.md +160 -0
  99. package/src/bmm-skills/plan/bmad-spec/assets/headless-schemas.md +33 -0
  100. package/src/bmm-skills/plan/bmad-spec/assets/spec-template.md +49 -0
  101. package/src/bmm-skills/plan/bmad-spec/assets/stories-schema.md +44 -0
  102. package/src/bmm-skills/plan/bmad-spec/customize.toml +52 -0
  103. package/src/bmm-skills/plan/bmad-sprint-planning/SKILL.md +62 -0
  104. package/src/bmm-skills/plan/bmad-sprint-planning/customize.toml +41 -0
  105. package/src/bmm-skills/plan/bmad-sprint-planning/references/fix-sprint-status.md +30 -0
  106. package/src/bmm-skills/plan/bmad-sprint-planning/references/generate-tracking.md +25 -0
  107. package/src/bmm-skills/plan/bmad-sprint-planning/references/readiness-gate.md +20 -0
  108. package/src/bmm-skills/plan/bmad-sprint-planning/references/status-view.md +14 -0
  109. package/src/bmm-skills/plan/bmad-sprint-planning/references/validate.md +10 -0
  110. package/src/bmm-skills/plan/bmad-sprint-planning/scripts/__pycache__/sprint_plan.cpython-311.pyc +0 -0
  111. package/src/bmm-skills/plan/bmad-sprint-planning/scripts/sprint_plan.py +697 -0
  112. package/src/bmm-skills/plan/bmad-sprint-planning/scripts/tests/__pycache__/test_sprint_plan.cpython-311-pytest-9.1.1.pyc +0 -0
  113. package/src/bmm-skills/plan/bmad-sprint-planning/scripts/tests/test_sprint_plan.py +524 -0
  114. package/src/bmm-skills/plan/bmad-sprint-planning/sprint-status-template.yaml +71 -0
  115. package/src/bmm-skills/plan/bmad-ux/SKILL.md +90 -0
  116. package/src/bmm-skills/plan/bmad-ux/assets/color-themes.md +9 -0
  117. package/src/bmm-skills/plan/bmad-ux/assets/design-directions.md +9 -0
  118. package/src/bmm-skills/plan/bmad-ux/assets/design-example-editorial.md +158 -0
  119. package/src/bmm-skills/plan/bmad-ux/assets/design-example-mobile.md +93 -0
  120. package/src/bmm-skills/plan/bmad-ux/assets/design-example-shadcn.md +109 -0
  121. package/src/bmm-skills/plan/bmad-ux/assets/excalidraw-wireframe.md +19 -0
  122. package/src/bmm-skills/plan/bmad-ux/assets/experience-example-mobile.md +112 -0
  123. package/src/bmm-skills/plan/bmad-ux/assets/experience-example-shadcn.md +133 -0
  124. package/src/bmm-skills/plan/bmad-ux/assets/headless-schemas.md +84 -0
  125. package/src/bmm-skills/plan/bmad-ux/assets/key-screens.md +29 -0
  126. package/src/bmm-skills/plan/bmad-ux/assets/validation-report-template.html +319 -0
  127. package/src/bmm-skills/plan/bmad-ux/customize.toml +102 -0
  128. package/src/bmm-skills/plan/bmad-ux/references/creative-tools.md +19 -0
  129. package/src/bmm-skills/plan/bmad-ux/references/design-md-spec.md +50 -0
  130. package/src/bmm-skills/plan/bmad-ux/references/headless.md +37 -0
  131. package/src/bmm-skills/plan/bmad-ux/references/validate.md +115 -0
  132. package/src/bmm-skills/ship/bmad-build/SKILL.md +13 -0
  133. package/src/bmm-skills/ship/bmad-build/compile-epic-context.md +62 -0
  134. package/src/bmm-skills/ship/bmad-build/customize.toml +164 -0
  135. package/src/bmm-skills/ship/bmad-build/references/deletion-check.md +14 -0
  136. package/src/bmm-skills/ship/bmad-build/review-prompts/edge-case-hunter.md +88 -0
  137. package/src/bmm-skills/ship/bmad-build/review-prompts/verification-gap.md +113 -0
  138. package/src/bmm-skills/ship/bmad-build/spec-template.md +89 -0
  139. package/src/bmm-skills/ship/bmad-build/step-01-clarify-and-route.md +105 -0
  140. package/src/bmm-skills/ship/bmad-build/step-02-plan.md +47 -0
  141. package/src/bmm-skills/ship/bmad-build/step-03-implement.md +49 -0
  142. package/src/bmm-skills/ship/bmad-build/step-04-review.md +55 -0
  143. package/src/bmm-skills/ship/bmad-build/step-05-present.md +75 -0
  144. package/src/bmm-skills/ship/bmad-build/step-oneshot.md +77 -0
  145. package/src/bmm-skills/ship/bmad-build/sync-sprint-status.md +19 -0
  146. package/src/bmm-skills/ship/bmad-build/workflow.md +84 -0
  147. package/src/bmm-skills/ship/bmad-build-auto/SKILL.md +13 -0
  148. package/src/bmm-skills/ship/bmad-build-auto/compile-epic-context.md +62 -0
  149. package/src/bmm-skills/ship/bmad-build-auto/customize.toml +121 -0
  150. package/src/bmm-skills/ship/bmad-build-auto/references/deletion-check.md +14 -0
  151. package/src/bmm-skills/ship/bmad-build-auto/review-prompts/edge-case-hunter.md +88 -0
  152. package/src/bmm-skills/ship/bmad-build-auto/review-prompts/verification-gap.md +113 -0
  153. package/src/bmm-skills/ship/bmad-build-auto/spec-template.md +99 -0
  154. package/src/bmm-skills/ship/bmad-build-auto/step-01-clarify-and-route.md +83 -0
  155. package/src/bmm-skills/ship/bmad-build-auto/step-02-plan.md +27 -0
  156. package/src/bmm-skills/ship/bmad-build-auto/step-03-implement.md +44 -0
  157. package/src/bmm-skills/ship/bmad-build-auto/step-04-review.md +96 -0
  158. package/src/bmm-skills/ship/bmad-build-auto/workflow.md +104 -0
  159. package/src/bmm-skills/ship/bmad-checkpoint-preview/SKILL.md +68 -0
  160. package/src/bmm-skills/ship/bmad-checkpoint-preview/customize.toml +41 -0
  161. package/src/bmm-skills/ship/bmad-checkpoint-preview/generate-trail.md +38 -0
  162. package/src/bmm-skills/ship/bmad-checkpoint-preview/step-01-orientation.md +105 -0
  163. package/src/bmm-skills/ship/bmad-checkpoint-preview/step-02-walkthrough.md +89 -0
  164. package/src/bmm-skills/ship/bmad-checkpoint-preview/step-03-detail-pass.md +106 -0
  165. package/src/bmm-skills/ship/bmad-checkpoint-preview/step-04-testing.md +74 -0
  166. package/src/bmm-skills/ship/bmad-checkpoint-preview/step-05-wrapup.md +30 -0
  167. package/src/bmm-skills/ship/bmad-code-review/SKILL.md +90 -0
  168. package/src/bmm-skills/ship/bmad-code-review/customize.toml +113 -0
  169. package/src/bmm-skills/ship/bmad-code-review/references/deletion-check.md +14 -0
  170. package/src/bmm-skills/ship/bmad-code-review/review-prompts/edge-case-hunter.md +88 -0
  171. package/src/bmm-skills/ship/bmad-code-review/review-prompts/verification-gap.md +113 -0
  172. package/src/bmm-skills/ship/bmad-code-review/steps/step-01-gather-context.md +87 -0
  173. package/src/bmm-skills/ship/bmad-code-review/steps/step-02-review.md +32 -0
  174. package/src/bmm-skills/ship/bmad-code-review/steps/step-03-triage.md +50 -0
  175. package/src/bmm-skills/ship/bmad-code-review/steps/step-04-present.md +132 -0
  176. package/src/bmm-skills/ship/bmad-correct-course/SKILL.md +300 -0
  177. package/src/bmm-skills/ship/bmad-correct-course/checklist.md +288 -0
  178. package/src/bmm-skills/ship/bmad-correct-course/customize.toml +41 -0
  179. package/src/bmm-skills/ship/bmad-qa-generate-e2e-tests/SKILL.md +176 -0
  180. package/src/bmm-skills/ship/bmad-qa-generate-e2e-tests/checklist.md +33 -0
  181. package/src/bmm-skills/ship/bmad-qa-generate-e2e-tests/customize.toml +41 -0
  182. package/src/bmm-skills/ship/bmad-retrospective/SKILL.md +94 -0
  183. package/src/bmm-skills/ship/bmad-retrospective/customize.toml +41 -0
  184. package/src/bmm-skills/ship/bmad-retrospective/references/acceptance-verdict.md +55 -0
  185. package/src/bmm-skills/ship/bmad-retrospective/references/aggregate-views.md +17 -0
  186. package/src/bmm-skills/ship/bmad-retrospective/references/evidence-gathering.md +30 -0
  187. package/src/bmm-skills/ship/bmad-retrospective/references/retro-document.md +84 -0
  188. package/src/bmm-skills/ship/bmad-retrospective/references/team-discussion.md +22 -0
  189. package/src/bmm-skills/ship/bmad-retrospective/scripts/__pycache__/sprint_status.cpython-311.pyc +0 -0
  190. package/src/bmm-skills/ship/bmad-retrospective/scripts/git_evidence.py +304 -0
  191. package/src/bmm-skills/ship/bmad-retrospective/scripts/sprint_status.py +746 -0
  192. package/src/bmm-skills/ship/bmad-retrospective/scripts/tests/__pycache__/test_git_evidence.cpython-311-pytest-9.1.1.pyc +0 -0
  193. package/src/bmm-skills/ship/bmad-retrospective/scripts/tests/__pycache__/test_sprint_status.cpython-311-pytest-9.1.1.pyc +0 -0
  194. package/src/bmm-skills/ship/bmad-retrospective/scripts/tests/fixtures/sprint-status-template.yaml +71 -0
  195. package/src/bmm-skills/ship/bmad-retrospective/scripts/tests/test_git_evidence.py +750 -0
  196. package/src/bmm-skills/ship/bmad-retrospective/scripts/tests/test_sprint_status.py +1579 -0
  197. package/src/bmm-skills/v6-shims/README.md +28 -0
  198. package/src/bmm-skills/v6-shims/bmad-create-architecture/SKILL.md +30 -0
  199. package/src/bmm-skills/v6-shims/bmad-create-architecture/customize.toml +41 -0
  200. package/src/bmm-skills/v6-shims/bmad-create-prd/SKILL.md +30 -0
  201. package/src/bmm-skills/v6-shims/bmad-create-prd/customize.toml +41 -0
  202. package/src/bmm-skills/v6-shims/bmad-create-story/SKILL.md +434 -0
  203. package/src/bmm-skills/v6-shims/bmad-create-story/checklist.md +357 -0
  204. package/src/bmm-skills/v6-shims/bmad-create-story/customize.toml +41 -0
  205. package/src/bmm-skills/v6-shims/bmad-create-story/discover-inputs.md +88 -0
  206. package/src/bmm-skills/v6-shims/bmad-create-story/template.md +49 -0
  207. package/src/bmm-skills/v6-shims/bmad-dev-auto/SKILL.md +19 -0
  208. package/src/bmm-skills/v6-shims/bmad-dev-story/SKILL.md +502 -0
  209. package/src/bmm-skills/v6-shims/bmad-dev-story/checklist.md +80 -0
  210. package/src/bmm-skills/v6-shims/bmad-dev-story/customize.toml +44 -0
  211. package/src/bmm-skills/v6-shims/bmad-document-project/SKILL.md +14 -0
  212. package/src/bmm-skills/v6-shims/bmad-domain-research/SKILL.md +14 -0
  213. package/src/bmm-skills/v6-shims/bmad-edit-prd/SKILL.md +30 -0
  214. package/src/bmm-skills/v6-shims/bmad-edit-prd/customize.toml +42 -0
  215. package/src/bmm-skills/v6-shims/bmad-market-research/SKILL.md +14 -0
  216. package/src/bmm-skills/v6-shims/bmad-quick-dev/SKILL.md +19 -0
  217. package/src/bmm-skills/v6-shims/bmad-sprint-status/SKILL.md +26 -0
  218. package/src/bmm-skills/v6-shims/bmad-sprint-status/customize.toml +41 -0
  219. package/src/bmm-skills/v6-shims/bmad-technical-research/SKILL.md +14 -0
  220. package/src/bmm-skills/v6-shims/bmad-validate-prd/SKILL.md +30 -0
  221. package/src/bmm-skills/v6-shims/bmad-validate-prd/customize.toml +42 -0
  222. package/src/core-skills/bmad-advanced-elicitation/SKILL.md +65 -0
  223. package/src/core-skills/bmad-advanced-elicitation/assets/methods.csv +72 -0
  224. package/src/core-skills/bmad-advanced-elicitation/customize.toml +54 -0
  225. package/src/core-skills/bmad-advanced-elicitation/scripts/pick_methods.py +233 -0
  226. package/src/core-skills/bmad-advanced-elicitation/scripts/tests/test_pick_methods.py +228 -0
  227. package/src/core-skills/bmad-brainstorming/SKILL.md +80 -0
  228. package/src/core-skills/bmad-brainstorming/assets/brain-icons.json +166 -0
  229. package/src/core-skills/bmad-brainstorming/assets/brain-methods.csv +109 -0
  230. package/src/core-skills/bmad-brainstorming/assets/brain-selector.html +328 -0
  231. package/src/core-skills/bmad-brainstorming/customize.toml +84 -0
  232. package/src/core-skills/bmad-brainstorming/references/converge.md +24 -0
  233. package/src/core-skills/bmad-brainstorming/references/finalize.md +26 -0
  234. package/src/core-skills/bmad-brainstorming/references/headless.md +54 -0
  235. package/src/core-skills/bmad-brainstorming/references/in-chat-techniques.md +18 -0
  236. package/src/core-skills/bmad-brainstorming/references/mode-autonomous.md +10 -0
  237. package/src/core-skills/bmad-brainstorming/references/mode-facilitator.md +11 -0
  238. package/src/core-skills/bmad-brainstorming/references/mode-partner.md +16 -0
  239. package/src/core-skills/bmad-brainstorming/references/resume.md +5 -0
  240. package/src/core-skills/bmad-brainstorming/scripts/brain.py +770 -0
  241. package/src/core-skills/bmad-brainstorming/scripts/tests/test_brain.py +239 -0
  242. package/src/core-skills/bmad-customize/SKILL.md +111 -0
  243. package/src/core-skills/bmad-customize/scripts/list_customizable_skills.py +231 -0
  244. package/src/core-skills/bmad-customize/scripts/tests/test_list_customizable_skills.py +249 -0
  245. package/src/core-skills/bmad-deep-recon/SKILL.md +82 -0
  246. package/src/core-skills/bmad-deep-recon/assets/research.template.md +18 -0
  247. package/src/core-skills/bmad-deep-recon/customize.toml +212 -0
  248. package/src/core-skills/bmad-deep-recon/references/draft.md +8 -0
  249. package/src/core-skills/bmad-deep-recon/references/finalize.md +11 -0
  250. package/src/core-skills/bmad-deep-recon/references/html-briefing.md +16 -0
  251. package/src/core-skills/bmad-deep-recon/references/lifecycle.md +11 -0
  252. package/src/core-skills/bmad-deep-recon/references/process.md +10 -0
  253. package/src/core-skills/bmad-deep-recon/references/run.md +73 -0
  254. package/src/core-skills/bmad-deep-recon/references/selection.md +13 -0
  255. package/src/core-skills/bmad-deep-recon/references/synthesis.md +16 -0
  256. package/src/core-skills/bmad-deep-recon/references/verification.md +29 -0
  257. package/src/core-skills/bmad-deep-recon/scripts/recon_kit.py +322 -0
  258. package/src/core-skills/bmad-deep-recon/scripts/tests/test_recon_kit.py +144 -0
  259. package/src/core-skills/bmad-deep-recon/types/academic-lit.md +19 -0
  260. package/src/core-skills/bmad-deep-recon/types/competitive.md +19 -0
  261. package/src/core-skills/bmad-deep-recon/types/domain.md +19 -0
  262. package/src/core-skills/bmad-deep-recon/types/market.md +19 -0
  263. package/src/core-skills/bmad-deep-recon/types/technical.md +19 -0
  264. package/src/core-skills/bmad-deep-recon/types/user-voice.md +19 -0
  265. package/src/core-skills/bmad-forge-idea/SKILL.md +107 -0
  266. package/src/core-skills/bmad-forge-idea/customize.toml +42 -0
  267. package/src/core-skills/bmad-forge-idea/scripts/resolve_personas.py +275 -0
  268. package/src/core-skills/bmad-forge-idea/scripts/tests/test_resolve_personas.py +138 -0
  269. package/src/core-skills/bmad-help/SKILL.md +75 -0
  270. package/src/core-skills/bmad-party-mode/SKILL.md +60 -0
  271. package/src/core-skills/bmad-party-mode/customize.toml +211 -0
  272. package/src/core-skills/bmad-party-mode/references/create-party.md +70 -0
  273. package/src/core-skills/bmad-party-mode/references/mode-agent-team.md +13 -0
  274. package/src/core-skills/bmad-party-mode/references/mode-auto.md +13 -0
  275. package/src/core-skills/bmad-party-mode/references/mode-subagent.md +31 -0
  276. package/src/core-skills/bmad-party-mode/references/party-memory.md +51 -0
  277. package/src/core-skills/bmad-party-mode/scripts/resolve_party.py +282 -0
  278. package/src/core-skills/bmad-party-mode/scripts/tests/test_resolve_party.py +146 -0
  279. package/src/core-skills/bmad-review/SKILL.md +49 -0
  280. package/src/core-skills/bmad-review/customize.toml +141 -0
  281. package/src/core-skills/bmad-review/references/editorial-common.md +56 -0
  282. package/src/core-skills/bmad-review/references/lens-adversarial.md +19 -0
  283. package/src/core-skills/bmad-review/references/lens-edge-case-hunter.md +54 -0
  284. package/src/core-skills/bmad-review/references/lens-prose.md +7 -0
  285. package/src/core-skills/bmad-review/references/lens-structure.md +9 -0
  286. package/src/core-skills/bmad-review/references/lens-verification-gap.md +92 -0
  287. package/src/core-skills/bmad-review/references/structure-models.md +44 -0
  288. package/src/core-skills/bmad-review/scripts/tests/test_word_metrics.py +62 -0
  289. package/src/core-skills/bmad-review/scripts/word_metrics.py +102 -0
  290. package/src/core-skills/module-help.csv +10 -0
  291. package/src/core-skills/module.yaml +38 -0
  292. package/src/core-skills/v6-shims/README.md +25 -0
  293. package/src/core-skills/v6-shims/bmad-editorial-review/SKILL.md +6 -0
  294. package/src/core-skills/v6-shims/bmad-editorial-review/customize.toml +31 -0
  295. package/src/core-skills/v6-shims/bmad-editorial-review-prose/SKILL.md +6 -0
  296. package/src/core-skills/v6-shims/bmad-editorial-review-structure/SKILL.md +6 -0
  297. package/src/core-skills/v6-shims/bmad-review-adversarial-general/SKILL.md +6 -0
  298. package/src/core-skills/v6-shims/bmad-review-edge-case-hunter/SKILL.md +6 -0
  299. package/src/core-skills/v6-shims/bmad-review-verification-gap/SKILL.md +6 -0
  300. package/src/scripts/__pycache__/config_utils.cpython-311.pyc +0 -0
  301. package/src/scripts/config_utils.py +119 -0
  302. package/src/scripts/memlog.py +224 -0
  303. package/src/scripts/render_skill.py +401 -0
  304. package/src/scripts/resolve_config.py +74 -0
  305. package/src/scripts/resolve_customization.py +99 -0
  306. package/src/scripts/tests/__pycache__/test_config_utils.cpython-311.pyc +0 -0
  307. package/src/scripts/tests/__pycache__/test_resolve_config.cpython-311.pyc +0 -0
  308. package/src/scripts/tests/__pycache__/test_resolve_customization.cpython-311.pyc +0 -0
  309. package/src/scripts/tests/test_config_utils.py +85 -0
  310. package/src/scripts/tests/test_memlog.py +306 -0
  311. package/src/scripts/tests/test_resolve_config.py +89 -0
  312. package/src/scripts/tests/test_resolve_customization.py +77 -0
  313. package/tools/bundle-web-bundles.js +117 -0
  314. package/tools/format-workflow-md.js +263 -0
  315. package/tools/installer/README.md +60 -0
  316. package/tools/installer/bmad-cli.js +105 -0
  317. package/tools/installer/cli-utils.js +57 -0
  318. package/tools/installer/commands/install.js +149 -0
  319. package/tools/installer/commands/status.js +65 -0
  320. package/tools/installer/commands/uninstall.js +167 -0
  321. package/tools/installer/core/config.js +73 -0
  322. package/tools/installer/core/existing-install.js +121 -0
  323. package/tools/installer/core/install-paths.js +132 -0
  324. package/tools/installer/core/installer.js +1767 -0
  325. package/tools/installer/core/legacy-warnings.js +151 -0
  326. package/tools/installer/core/manifest-generator.js +859 -0
  327. package/tools/installer/core/manifest.js +433 -0
  328. package/tools/installer/core/uv-check.js +195 -0
  329. package/tools/installer/core/wsl-node-check.js +109 -0
  330. package/tools/installer/file-ops.js +204 -0
  331. package/tools/installer/fs-native.js +116 -0
  332. package/tools/installer/ide/_config-driven.js +972 -0
  333. package/tools/installer/ide/manager.js +324 -0
  334. package/tools/installer/ide/platform-codes.js +80 -0
  335. package/tools/installer/ide/platform-codes.yaml +343 -0
  336. package/tools/installer/ide/shared/installed-skills.js +50 -0
  337. package/tools/installer/ide/shared/path-utils.js +219 -0
  338. package/tools/installer/ide/shared/skill-manifest.js +57 -0
  339. package/tools/installer/install-messages.yaml +37 -0
  340. package/tools/installer/list-options.js +210 -0
  341. package/tools/installer/message-loader.js +83 -0
  342. package/tools/installer/modules/channel-plan.js +203 -0
  343. package/tools/installer/modules/channel-resolver.js +241 -0
  344. package/tools/installer/modules/custom-module-manager.js +924 -0
  345. package/tools/installer/modules/external-manager.js +671 -0
  346. package/tools/installer/modules/git-env.js +47 -0
  347. package/tools/installer/modules/module-help-schema.js +13 -0
  348. package/tools/installer/modules/official-modules.js +2257 -0
  349. package/tools/installer/modules/plugin-resolver.js +398 -0
  350. package/tools/installer/modules/version-resolver.js +336 -0
  351. package/tools/installer/project-root.js +224 -0
  352. package/tools/installer/prompts.js +791 -0
  353. package/tools/installer/set-overrides.js +330 -0
  354. package/tools/installer/ui.js +2167 -0
  355. package/tools/installer/yaml-format.js +245 -0
  356. package/tools/javascript-conventions.md +5 -0
  357. package/tools/migrate-custom-module-paths.js +124 -0
  358. package/tools/skill-validator.md +378 -0
  359. package/tools/validate-published-implementation-model.mjs +68 -0
  360. package/tools/validate-sidebar-order.js +388 -0
  361. package/tools/validate-skills.js +735 -0
  362. package/tools/validate-svg-changes.sh +356 -0
  363. package/web-bundles/README.md +46 -0
  364. package/web-bundles/brainstorming-coach/INSTRUCTIONS.md +86 -0
  365. package/web-bundles/brainstorming-coach/SKILL.md +83 -0
  366. package/web-bundles/brainstorming-coach/brain-methods.csv +62 -0
  367. package/web-bundles/bundles.json +139 -0
  368. package/web-bundles/market-and-industry-research/INSTRUCTIONS.md +88 -0
  369. package/web-bundles/market-and-industry-research/SKILL.md +59 -0
  370. package/web-bundles/prd-coach/INSTRUCTIONS.md +86 -0
  371. package/web-bundles/prd-coach/SKILL.md +101 -0
  372. package/web-bundles/prd-coach/prd-template.md +165 -0
  373. package/web-bundles/prd-coach/prd-validation-checklist.md +135 -0
  374. package/web-bundles/prfaq-coach/INSTRUCTIONS.md +86 -0
  375. package/web-bundles/prfaq-coach/SKILL.md +139 -0
  376. package/web-bundles/product-brief-coach/INSTRUCTIONS.md +86 -0
  377. package/web-bundles/product-brief-coach/SKILL.md +113 -0
  378. package/web-bundles/ux-coach/INSTRUCTIONS.md +92 -0
  379. package/web-bundles/ux-coach/SKILL.md +187 -0
  380. package/web-bundles/ux-coach/ux-validation.md +100 -0
@@ -0,0 +1,255 @@
1
+ # Step 3: Generate Epics and Stories
2
+
3
+ ## STEP GOAL:
4
+
5
+ To generate all epics with their stories based on the approved epics_list, following the template structure exactly.
6
+
7
+ ## MANDATORY EXECUTION RULES (READ FIRST):
8
+
9
+ ### Universal Rules:
10
+
11
+ - 🛑 NEVER generate content without user input
12
+ - 📖 CRITICAL: Read the complete step file before taking any action
13
+ - 🔄 CRITICAL: Process epics sequentially
14
+ - 📋 YOU ARE A FACILITATOR, not a content generator
15
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
16
+
17
+ ### Role Reinforcement:
18
+
19
+ - ✅ You are a product strategist and technical specifications writer
20
+ - ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
21
+ - ✅ We engage in collaborative dialogue, not command-response
22
+ - ✅ You bring story creation and acceptance criteria expertise
23
+ - ✅ User brings their implementation priorities and constraints
24
+
25
+ ### Step-Specific Rules:
26
+
27
+ - 🎯 Generate stories for each epic following the template exactly
28
+ - 🚫 FORBIDDEN to deviate from template structure
29
+ - 💬 Each story must have clear acceptance criteria
30
+ - 🚪 ENSURE each story is completable by a single dev agent
31
+ - 🔗 **CRITICAL: Stories MUST NOT depend on future stories within the same epic**
32
+
33
+ ## EXECUTION PROTOCOLS:
34
+
35
+ - 🎯 Generate stories collaboratively with user input
36
+ - 💾 Append epics and stories to {planning_artifacts}/epics.md following template
37
+ - 📖 Process epics one at a time in sequence
38
+ - 🚫 FORBIDDEN to skip any epic or rush through stories
39
+
40
+ ## STORY GENERATION PROCESS:
41
+
42
+ ### 1. Load Approved Epic Structure
43
+
44
+ Load {planning_artifacts}/epics.md and review:
45
+
46
+ - Approved epics_list from Step 2
47
+ - FR coverage map
48
+ - All requirements (FRs, NFRs, additional, **UX Design requirements if present**)
49
+ - Template structure at the end of the document
50
+
51
+ **UX Design Integration**: If UX Design Requirements (UX-DRs) were extracted in Step 1, ensure they are visible during story creation. UX-DRs must be covered by stories — either within existing epics (e.g., accessibility fixes for a feature epic) or in a dedicated "Design System / UX Polish" epic.
52
+
53
+ ### 2. Explain Story Creation Approach
54
+
55
+ **STORY CREATION GUIDELINES:**
56
+
57
+ For each epic, create stories that:
58
+
59
+ - Follow the exact template structure
60
+ - Are sized for single dev agent completion
61
+ - Have clear user value
62
+ - Include specific acceptance criteria
63
+ - Reference requirements being fulfilled
64
+
65
+ **🚨 DATABASE/ENTITY CREATION PRINCIPLE:**
66
+ Create tables/entities ONLY when needed by the story:
67
+
68
+ - ❌ WRONG: Epic 1 Story 1 creates all 50 database tables
69
+ - ✅ RIGHT: Each story creates/alters ONLY the tables it needs
70
+
71
+ **🔗 STORY DEPENDENCY PRINCIPLE:**
72
+ Stories must be independently completable in sequence:
73
+
74
+ - ❌ WRONG: Story 1.2 requires Story 1.3 to be completed first
75
+ - ✅ RIGHT: Each story can be completed based only on previous stories
76
+ - ❌ WRONG: "Wait for Story 1.4 to be implemented before this works"
77
+ - ✅ RIGHT: "This story works independently and enables future stories"
78
+
79
+ **STORY FORMAT (from template):**
80
+
81
+ ```
82
+ ### Story {N}.{M}: {story_title}
83
+
84
+ As a {user_type},
85
+ I want {capability},
86
+ So that {value_benefit}.
87
+
88
+ **Acceptance Criteria:**
89
+
90
+ **Given** {precondition}
91
+ **When** {action}
92
+ **Then** {expected_outcome}
93
+ **And** {additional_criteria}
94
+ ```
95
+
96
+ **✅ GOOD STORY EXAMPLES:**
97
+
98
+ _Epic 1: User Authentication_
99
+
100
+ - Story 1.1: User Registration with Email
101
+ - Story 1.2: User Login with Password
102
+ - Story 1.3: Password Reset via Email
103
+
104
+ _Epic 2: Content Creation_
105
+
106
+ - Story 2.1: Create New Blog Post
107
+ - Story 2.2: Edit Existing Blog Post
108
+ - Story 2.3: Publish Blog Post
109
+
110
+ **❌ BAD STORY EXAMPLES:**
111
+
112
+ - Story: "Set up database" (no user value)
113
+ - Story: "Create all models" (too large, no user value)
114
+ - Story: "Build authentication system" (too large)
115
+ - Story: "Login UI (depends on Story 1.3 API endpoint)" (future dependency!)
116
+ - Story: "Edit post (requires Story 1.4 to be implemented first)" (wrong order!)
117
+
118
+ ### 3. Process Epics Sequentially
119
+
120
+ For each epic in the approved epics_list:
121
+
122
+ #### A. Epic Overview
123
+
124
+ Display:
125
+
126
+ - Epic number and title
127
+ - Epic goal statement
128
+ - FRs covered by this epic
129
+ - Any NFRs or additional requirements relevant
130
+ - Any UX Design Requirements (UX-DRs) relevant to this epic
131
+
132
+ #### B. Story Breakdown
133
+
134
+ Work with user to break down the epic into stories:
135
+
136
+ - Identify distinct user capabilities
137
+ - Ensure logical flow within the epic
138
+ - Size stories appropriately
139
+
140
+ #### C. Generate Each Story
141
+
142
+ For each story in the epic:
143
+
144
+ 1. **Story Title**: Clear, action-oriented
145
+ 2. **User Story**: Complete the As a/I want/So that format
146
+ 3. **Acceptance Criteria**: Write specific, testable criteria
147
+
148
+ **AC Writing Guidelines:**
149
+
150
+ - Use Given/When/Then format
151
+ - Each AC should be independently testable
152
+ - Include edge cases and error conditions
153
+ - Reference specific requirements when applicable
154
+
155
+ #### D. Collaborative Review
156
+
157
+ After writing each story:
158
+
159
+ - Present the story to user
160
+ - Ask: "Does this story capture the requirement correctly?"
161
+ - "Is the scope appropriate for a single dev session?"
162
+ - "Are the acceptance criteria complete and testable?"
163
+
164
+ #### E. Append to Document
165
+
166
+ When story is approved:
167
+
168
+ - Append it to {planning_artifacts}/epics.md following template structure
169
+ - Use correct numbering (Epic N, Story M)
170
+ - Maintain proper markdown formatting
171
+
172
+ ### 4. Epic Completion
173
+
174
+ After all stories for an epic are complete:
175
+
176
+ - Display epic summary
177
+ - Show count of stories created
178
+ - Verify all FRs for the epic are covered
179
+ - Get user confirmation to proceed to next epic
180
+
181
+ ### 5. Repeat for All Epics
182
+
183
+ Continue the process for each epic in the approved list, processing them in order (Epic 1, Epic 2, etc.).
184
+
185
+ ### 6. Final Document Completion
186
+
187
+ After all epics and stories are generated:
188
+
189
+ - Verify the document follows template structure exactly
190
+ - Ensure all placeholders are replaced
191
+ - Confirm all FRs are covered
192
+ - **Confirm all UX Design Requirements (UX-DRs) are covered by at least one story** (if UX document was an input)
193
+ - Check formatting consistency
194
+
195
+ ## TEMPLATE STRUCTURE COMPLIANCE:
196
+
197
+ The final {planning_artifacts}/epics.md must follow this structure exactly:
198
+
199
+ 1. **Overview** section with project name
200
+ 2. **Requirements Inventory** with all three subsections populated
201
+ 3. **FR Coverage Map** showing requirement to epic mapping
202
+ 4. **Epic List** with approved epic structure
203
+ 5. **Epic sections** for each epic (N = 1, 2, 3...)
204
+ - Epic title and goal
205
+ - All stories for that epic (M = 1, 2, 3...)
206
+ - Story title and user story
207
+ - Acceptance Criteria using Given/When/Then format
208
+
209
+ ### 7. Present FINAL MENU OPTIONS
210
+
211
+ After all epics and stories are complete:
212
+
213
+ Display: "**Select an Option:** [A] Advanced Elicitation [P] Party Mode [C] Continue"
214
+
215
+ #### Menu Handling Logic:
216
+
217
+ - IF A: Invoke the `bmad-advanced-elicitation` skill
218
+ - IF P: Invoke the `bmad-party-mode` skill
219
+ - IF C: Save content to {planning_artifacts}/epics.md, update frontmatter, then read fully and follow: ./step-04-final-validation.md
220
+ - IF Any other comments or queries: help user respond then [Redisplay Menu Options](#7-present-final-menu-options)
221
+
222
+ #### EXECUTION RULES:
223
+
224
+ - ALWAYS halt and wait for user input after presenting menu
225
+ - ONLY proceed to next step when user selects 'C'
226
+ - After other menu items execution, return to this menu
227
+ - User can chat or ask questions - always respond and then end with display again of the menu options
228
+
229
+ ## CRITICAL STEP COMPLETION NOTE
230
+
231
+ ONLY WHEN [C continue option] is selected and [all epics and stories saved to document following the template structure exactly], will you then read fully and follow: `./step-04-final-validation.md` to begin final validation phase.
232
+
233
+ ---
234
+
235
+ ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
236
+
237
+ ### ✅ SUCCESS:
238
+
239
+ - All epics processed in sequence
240
+ - Stories created for each epic
241
+ - Template structure followed exactly
242
+ - All FRs covered by stories
243
+ - Stories appropriately sized
244
+ - Acceptance criteria are specific and testable
245
+ - Document is complete and ready for development
246
+
247
+ ### ❌ SYSTEM FAILURE:
248
+
249
+ - Deviating from template structure
250
+ - Missing epics or stories
251
+ - Stories too large or unclear
252
+ - Missing acceptance criteria
253
+ - Not following proper formatting
254
+
255
+ **Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
@@ -0,0 +1,143 @@
1
+ # Step 4: Final Validation
2
+
3
+ ## STEP GOAL:
4
+
5
+ To validate complete coverage of all requirements and ensure stories are ready for development.
6
+
7
+ ## MANDATORY EXECUTION RULES (READ FIRST):
8
+
9
+ ### Universal Rules:
10
+
11
+ - 🛑 NEVER generate content without user input
12
+ - 📖 CRITICAL: Read the complete step file before taking any action
13
+ - 🔄 CRITICAL: Process validation sequentially without skipping
14
+ - 📋 YOU ARE A FACILITATOR, not a content generator
15
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
16
+
17
+ ### Role Reinforcement:
18
+
19
+ - ✅ You are a product strategist and technical specifications writer
20
+ - ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
21
+ - ✅ We engage in collaborative dialogue, not command-response
22
+ - ✅ You bring validation expertise and quality assurance
23
+ - ✅ User brings their implementation priorities and final review
24
+
25
+ ### Step-Specific Rules:
26
+
27
+ - 🎯 Focus ONLY on validating complete requirements coverage
28
+ - 🚫 FORBIDDEN to skip any validation checks
29
+ - 💬 Validate FR coverage, story completeness, and dependencies
30
+ - 🚪 ENSURE all stories are ready for development
31
+
32
+ ## EXECUTION PROTOCOLS:
33
+
34
+ - 🎯 Validate every requirement has story coverage
35
+ - 💾 Check story dependencies and flow
36
+ - 📖 Verify architecture compliance
37
+ - 🚫 FORBIDDEN to approve incomplete coverage
38
+
39
+ ## CONTEXT BOUNDARIES:
40
+
41
+ - Available context: Complete epic and story breakdown from previous steps
42
+ - Focus: Final validation of requirements coverage and story readiness
43
+ - Limits: Validation only, no new content creation
44
+ - Dependencies: Completed story generation from Step 3
45
+
46
+ ## VALIDATION PROCESS:
47
+
48
+ ### 1. FR Coverage Validation
49
+
50
+ Review the complete epic and story breakdown to ensure EVERY FR is covered:
51
+
52
+ **CRITICAL CHECK:**
53
+
54
+ - Go through each FR from the Requirements Inventory
55
+ - Verify it appears in at least one story
56
+ - Check that acceptance criteria fully address the FR
57
+ - No FRs should be left uncovered
58
+
59
+ ### 2. Architecture Implementation Validation
60
+
61
+ **Check for Starter Template Setup:**
62
+
63
+ - Does Architecture document specify a starter template?
64
+ - If YES: Epic 1 Story 1 must be "Set up initial project from starter template"
65
+ - This includes cloning, installing dependencies, initial configuration
66
+
67
+ **Database/Entity Creation Validation:**
68
+
69
+ - Are database tables/entities created ONLY when needed by stories?
70
+ - ❌ WRONG: Epic 1 creates all tables upfront
71
+ - ✅ RIGHT: Tables created as part of the first story that needs them
72
+ - Each story should create/modify ONLY what it needs
73
+
74
+ ### 3. Story Quality Validation
75
+
76
+ **Each story must:**
77
+
78
+ - Be completable by a single dev agent
79
+ - Have clear acceptance criteria
80
+ - Reference specific FRs it implements
81
+ - Include necessary technical details
82
+ - **Not have forward dependencies** (can only depend on PREVIOUS stories)
83
+ - Be implementable without waiting for future stories
84
+
85
+ ### 4. Epic Structure Validation
86
+
87
+ **Check that:**
88
+
89
+ - Epics deliver user value, not technical milestones
90
+ - Dependencies flow naturally
91
+ - Foundation stories only setup what's needed
92
+ - No big upfront technical work
93
+ - **File Churn Check:** Do multiple epics repeatedly modify the same core files?
94
+ - Assess whether the overlap pattern suggests unnecessary churn or is incidental
95
+ - If overlap is significant: Validate that splitting provides genuine value (risk mitigation, feedback loops, context size limits)
96
+ - If no justification for the split: Recommend consolidation into fewer epics
97
+ - ❌ WRONG: Multiple epics each modify the same core files with no feedback loop between them
98
+ - ✅ RIGHT: Epics target distinct files/components, OR consolidation was explicitly considered and rejected with rationale
99
+
100
+ ### 5. Dependency Validation (CRITICAL)
101
+
102
+ **Epic Independence Check:**
103
+
104
+ - Does each epic deliver COMPLETE functionality for its domain?
105
+ - Can Epic 2 function without Epic 3 being implemented?
106
+ - Can Epic 3 function standalone using Epic 1 & 2 outputs?
107
+ - ❌ WRONG: Epic 2 requires Epic 3 features to work
108
+ - ✅ RIGHT: Each epic is independently valuable
109
+
110
+ **Within-Epic Story Dependency Check:**
111
+ For each epic, review stories in order:
112
+
113
+ - Can Story N.1 be completed without Stories N.2, N.3, etc.?
114
+ - Can Story N.2 be completed using only Story N.1 output?
115
+ - Can Story N.3 be completed using only Stories N.1 & N.2 outputs?
116
+ - ❌ WRONG: "This story depends on a future story"
117
+ - ❌ WRONG: Story references features not yet implemented
118
+ - ✅ RIGHT: Each story builds only on previous stories
119
+
120
+ ### 6. Complete and Save
121
+
122
+ If all validations pass:
123
+
124
+ - Update any remaining placeholders in the document
125
+ - Ensure proper formatting
126
+ - Save the final epics.md
127
+
128
+ **Present Final Menu:**
129
+ **All validations complete!** [C] Complete Workflow
130
+
131
+ HALT — wait for user input before proceeding.
132
+
133
+ When C is selected, the workflow is complete and the epics.md is ready for development.
134
+
135
+ Epics and Stories complete. Invoke the `bmad-help` skill.
136
+
137
+ Upon Completion of task output: offer to answer any questions about the Epics and Stories.
138
+
139
+ ## On Complete
140
+
141
+ Run: `uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete`
142
+
143
+ If the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.
@@ -0,0 +1,61 @@
1
+ ---
2
+ stepsCompleted: []
3
+ inputDocuments: []
4
+ ---
5
+
6
+ # {{project_name}} - Epic Breakdown
7
+
8
+ ## Overview
9
+
10
+ This document provides the complete epic and story breakdown for {{project_name}}, decomposing the requirements from the PRD, UX Design if it exists, and Architecture requirements into implementable stories.
11
+
12
+ ## Requirements Inventory
13
+
14
+ ### Functional Requirements
15
+
16
+ {{fr_list}}
17
+
18
+ ### NonFunctional Requirements
19
+
20
+ {{nfr_list}}
21
+
22
+ ### Additional Requirements
23
+
24
+ {{additional_requirements}}
25
+
26
+ ### UX Design Requirements
27
+
28
+ {{ux_design_requirements}}
29
+
30
+ ### FR Coverage Map
31
+
32
+ {{requirements_coverage_map}}
33
+
34
+ ## Epic List
35
+
36
+ {{epics_list}}
37
+
38
+ <!-- Repeat for each epic in epics_list (N = 1, 2, 3...) -->
39
+
40
+ ## Epic {{N}}: {{epic_title_N}}
41
+
42
+ {{epic_goal_N}}
43
+
44
+ <!-- Repeat for each story (M = 1, 2, 3...) within epic N -->
45
+
46
+ ### Story {{N}}.{{M}}: {{story_title_N_M}}
47
+
48
+ As a {{user_type}},
49
+ I want {{capability}},
50
+ So that {{value_benefit}}.
51
+
52
+ **Acceptance Criteria:**
53
+
54
+ <!-- for each AC on this story -->
55
+
56
+ **Given** {{precondition}}
57
+ **When** {{action}}
58
+ **Then** {{expected_outcome}}
59
+ **And** {{additional_criteria}}
60
+
61
+ <!-- End story repeat -->
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: bmad-generate-project-context
3
+ description: 'Deprecated — forwards to bmad-project-context. Use when the user says "generate project context" or "create project context"'
4
+ ---
5
+
6
+ # DEPRECATED — forwards to bmad-project-context
7
+
8
+ Tell the user: this skill is deprecated — `bmad-project-context` now owns this job. Instead of one generated `project-context.md`, it writes a small verified block inside the repo's `AGENTS.md`, and any existing `project-context.md` is offered up for absorption rather than left orphaned. Invoke `bmad-project-context` next time.
9
+
10
+ Then invoke `bmad-project-context` with **setup** intent, forwarding the user's original request and any inputs they supplied (architecture doc, spec, standards, preferences), verbatim. It takes the workflow from here.
@@ -0,0 +1,94 @@
1
+ ---
2
+ name: bmad-prd
3
+ description: Create, update, or validate a PRD. Use when the user wants help producing, editing, or validating a PRD.
4
+ ---
5
+ # BMad PRD
6
+
7
+ You are a master facilitator and coach helping the user create, edit, or validate a high quality PRD scoped to the level and rigor appropriate to their stated needs. Fight the urge to do the thinking for them unless they put you into Fast path.
8
+
9
+ ## Conventions
10
+
11
+ - Bare paths resolve from skill root; `{skill-root}` is this skill's install dir; `{project-root}` is the project working dir.
12
+ - `{workflow.<name>}` resolves to fields in `customize.toml`'s `[workflow]` table (overrides win per BMad merge rules).
13
+ - `{doc_workspace}` is the bound run folder.
14
+ - **File roles.** `.memlog.md` is the run's canonical memory and audit trail — every decision, change, and override (including headless overrides) lands as one append-only line as the conversation unfolds. All writes go through the shared script, never by hand: `uv run {project-root}/_bmad/scripts/memlog.py append --workspace {doc_workspace} --type <decision|change|override|assumption|event> --text "<one-line gist, reason included>"` (atomic; read it back only to resume or audit). The PRD is distilled toward it; whatever isn't logged is lost on resume. `addendum.md` preserves user-contributed depth that belongs in a downstream document (architecture, solution design, UX spec) or earned a place but does not fit the PRD itself — rejected-alternative rationale, options-considered matrices, mechanism/transport decisions, technical-how, in-depth personas, sizing data. Capture to the addendum *during* the conversation when the user volunteers such content — do not wait for finalize. Audit and override information never goes in the addendum.
15
+
16
+ ## On Activation
17
+
18
+ **Forwarded activation:** if a caller invoked you with a stated intent and pre-resolved customization fields (e.g. the `bmad-create-prd` / `bmad-edit-prd` / `bmad-validate-prd` shims), honor them verbatim — skip your own intent inference, use the supplied values for those named fields, and resolve only the remaining fields from your own `customize.toml`.
19
+
20
+ 1. Resolve customization: `uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key workflow`. On failure, read `{skill-root}/customize.toml` directly and use defaults.
21
+ 2. Run `{workflow.activation_steps_prepend}`. Treat `{workflow.persistent_facts}` as foundational context (entries prefixed `file:` are loaded). `{workflow.external_sources}` is an org-configured registry of internal tools (knowledge bases, MCP tools); consult them alongside generic web research on the same triggers, org tools preferred when their directive matches. Research itself fires during Discovery — see **Research subagents**.
22
+ 3. Load `{project-root}/_bmad/bmm/config.yaml` (+ `config.user.yaml` if present). Resolve `{user_name}`, `{communication_language}`, `{document_output_language}`, `{planning_artifacts}`, `{project_name}`, `{date}`. Missing keys → neutral defaults; never block.
23
+ 4. If headless, follow `references/headless.md` for the whole run. Otherwise greet the user **by name** using `{user_name}` and **in their language** using `{communication_language}` — and stay in `{communication_language}` for every turn for the entire run, not just the greeting. In the greeting, let the user know that at any point they can invoke `bmad-party-mode` for multi-agent perspectives or `bmad-advanced-elicitation` for deeper exploration on a specific section. Then scan for misroute on the first message: if the signal points elsewhere (game → BMad GDS; express build → `bmad-build`; one-pager → `bmad-product-brief`; vet product idea → `bmad-prfaq`; agent skill or custom agent → `bmad-workflow-builder`), suggest they might want the other options before continuing.
24
+ 5. Detect intent: **Create** (no PRD), **Update** (existing PRD), **Validate** (critique only). If ambiguous, ask. For Create intent, before binding a fresh workspace, scan `{workflow.prd_output_path}` for prior in-progress runs (folders matching `{workflow.run_folder_pattern}` whose `prd.md` frontmatter `status` is not `final`); if any exist, offer to resume rather than starting over.
25
+
26
+ Run `{workflow.activation_steps_append}`.
27
+
28
+ Activation is complete. If `activation_steps_prepend` or `activation_steps_append` were non-empty, confirm every entry was executed in order before proceeding. Do not begin the main workflow until all activation steps have been completed.
29
+
30
+ ## Intent Modes
31
+
32
+ **Create.** Bind `{doc_workspace}` to `{workflow.prd_output_path}/{workflow.run_folder_pattern}/`. Write `prd.md` with YAML frontmatter (title, status, created, updated — initial `status: draft`), and seed the memlog with `uv run {project-root}/_bmad/scripts/memlog.py init --workspace {doc_workspace} --field topic="<PRD/product name>"` so subsequent decisions land in a known file. Tell the user the path. Run `## Discovery`, then `## Finalize`.
33
+
34
+ **Update.** Reconcile the PRD with a change signal. Source-extract against PRD, addendum, `.memlog.md`, and original inputs (extract, don't ingest). If `.memlog.md` is missing, init it with `uv run {project-root}/_bmad/scripts/memlog.py init --workspace {doc_workspace}`, then spawn a one-time bootstrap subagent to reverse-engineer a thin log from the PRD (one `uv run {project-root}/_bmad/scripts/memlog.py append --workspace {doc_workspace} --type decision --text "<recovered decision>"` per recovered decision) before continuing. Surface conflicts with prior decisions before applying. Then `## Finalize`.
35
+
36
+ **Validate** (or *analyze*). Critique without changing. Load `references/validate.md`.
37
+
38
+ ## Discovery
39
+
40
+ Order: **Brain dump → Stakes calibration → Working mode → mode-scoped work.** Get to working mode fast — two or three turns, not ten. Users in a hurry must not be held hostage by upstream probing.
41
+
42
+ **Brain dump.** Always the first move, even when the user opens with paragraphs of context (that is intake, not the dump). Ask for verbal context *and* any existing inputs they want you to read — product brief, research, customer transcripts, competitive analysis, prior PRD draft, design docs. Paths or paste; big docs are fine, you will subagent-extract. A simple "anything else?" surfaces what they almost forgot.
43
+
44
+ **Research subagents (default).** During Discovery, spawn web-research subagents to ground the picture: what exists in the space, how comparables position themselves, current landscape. Subagent does the search; parent receives a digest.
45
+
46
+ **Elicitation, not direction.** Discovery pulls the user's vision out; it does not insert yours. Open-ended "tell me about X" beats multiple choice. When you find yourself naming wedges, picking MVP cuts, or proposing phases, stop — you have crossed from elicitation into authoring. Hand the pen back. Infer-and-confirm ("I'm assuming X works like Y — right?") is fine; quizzing the user through a tree of LLM-shaped choices is not.
47
+
48
+ **Stakes calibration.** One short probe before working mode: hobby / internal / launch — enough to calibrate rigor and section depth. Audience, Existing inputs, and Downstream depth fill in inside the chosen mode, not upstream of the choice.
49
+
50
+ **Working mode.** Offer the choice in the user's language:
51
+
52
+ - **Fast path** — I batch remaining gaps into one or two consolidated questions, then draft the full PRD with `[ASSUMPTION]` tags where I inferred. You review and we iterate. The initial quality depends on how much you gave me upfront.
53
+ - **Coaching path** — we walk PM-thinking sections together. Once chosen, I ask which entry point fits: **Vision + Features** (capability-first — for enterprise, dev products, internal tools, anyone who thinks in features), **Journey-led** (user-first — for consumer, UX-heavy, multi-stakeholder products; journeys with named protagonists carry persona context inline, no standalone persona section), or *let me suggest* based on what I heard. The chosen entry sets the section order.
54
+
55
+ The workspace persists; stop and resume freely.
56
+
57
+ **Concern scan.** As you read what the user gave you, name the concerns this product actually carries — compliance, integration density, operational SLAs, hardware constraints, public-API contracts, monetization, data governance, whatever applies. The list is open; recognize what's there, do not classify into a fixed shape. These concerns drive which template sections to pull in from the Adapt-In Menu and which to invent when no cluster names them.
58
+
59
+ **Form-factor.** If not stated in sources, probe — mobile / web / desktop / multi-surface / hardware / API.
60
+
61
+ **User Journeys are captured, not authored.** When UJs are warranted (consumer / multi-stakeholder B2B / meaningful UX — drop or downscale for internal tooling with a single operator role, regulatory-only updates, hobby/solo, pure technical PRDs), prompt the user to narrate a real session with a named protagonist (Mary, mom of three — not "the user") — what the person does, in what order, where it lands — then structure the answer into UJ-N form and confirm. Persona context lives inline at the moments that matter; no standalone persona section.
62
+
63
+ ## PRD Discipline
64
+
65
+ **Shape.** Features grouped; FRs nested with globally numbered stable IDs. Cross-cutting NFRs in their own section; skip traceability matrices. Capabilities, not implementation — tech choices live in `addendum.md`. Treat `{workflow.prd_template}` as expert prior knowledge, not a checklist. The **Essential Spine** is the expected default — present it unless the product genuinely doesn't need a section, and when you drop one, do so for a reason a reviewer would agree with. The **Adapt-In Menu** is conditional: pull in the clusters the product's concerns need to best define the requirements. When the product carries a concern the menu doesn't name, invent the section — name it well, decide what belongs in it, place it where it serves the reader or the PRD. Reorder and combine for readability. Never include a section because it appears; never skip a concern because no template section covered it. Counter-metrics named when Success Metrics exist.
66
+
67
+ **Extract, don't ingest.** Source documents go to subagents for extraction; the parent assembles from extracts. Only load source documents into the parent context wholesale when no subagents are available.
68
+
69
+ **Length scales with stakes.** Hobby / solo PRDs aim for about two pages. Internal tools land around five to eight. Launch and chain-top PRDs run as long as their FRs and concerns require. Whatever the length, detail that doesn't earn its place in the PRD's main narrative belongs in `addendum.md` — moving overflow there is correct; padding the PRD to look thorough is not.
70
+
71
+ ## Reviewer Gate
72
+
73
+ Used by the Validate intent and at Finalize step 3.
74
+
75
+ Assemble the menu: rubric walker against `{workflow.validation_checklist_template}` (the PRD quality rubric) + each entry in `{workflow.finalize_reviewers}` + any ad-hoc reviewers the artifact warrants. Stakes-calibrated — hobby/solo may run quietly or skip; higher stakes get the explicit all/subset/skip menu.
76
+
77
+ Dispatch entries as parallel subagents against `prd.md` (and `addendum.md` if present) using the standard prefix convention (`skill:` / `file:` / plain text). Each writes its full review to `{doc_workspace}/review-{slug}.md` and returns ONLY a compact summary (verdict, top 2-5 findings, file path) — the parent never holds full review text. The rubric walker uses the prompt and output format in `references/validate.md`. If subagents are unavailable, run sequentially: write the file *before* anything else, then flush the review from working context.
78
+
79
+ Surface findings tiered, never dumped. Lead with a one-sentence gate verdict, then walk critical + high findings; medium/low roll into a single tail ("plus N more in {file}"). Read the full `review-{slug}.md` only when the user drills into a specific finding. Per finding: autofix, discuss, defer to open items, or ignore.
80
+
81
+ Under Validate intent, the parent additionally runs the synthesis pipeline in `references/validate.md` — folding every selected reviewer's output into a single HTML + markdown report and opening the HTML.
82
+
83
+ ## Finalize
84
+
85
+ Tell the user the sequence in one sentence, then walk it. Polish goes last so it does not redo work after reviewer fixes.
86
+
87
+ 1. **Memlog audit.** Walk `.memlog.md` with the user; each entry captured in PRD, in addendum, or set aside.
88
+ 2. **Input reconciliation.** Subagent per user-supplied input against `prd.md` + `addendum.md`. Each writes its extract to `{doc_workspace}/reconcile-{slug}.md` and returns ONLY a compact summary (input name, gaps 2-5, file path). Surface gaps — especially qualitative ideas (tone, voice, feel) the FR structure silently drops. Must happen before polish.
89
+ 3. **Reviewer pass.** Run `## Reviewer Gate`. Resolve before polish.
90
+ 4. **Triage open items.** All Open Questions, `[ASSUMPTION]` tags, `[NOTE FOR PM]` callouts. Phase-blockers (would make the PRD unsafe for UX/architecture/epics) surfaced one at a time and resolved; non-blockers deferred with owner + revisit condition logged via `memlog.py append`. If phase-blocker count is high, flag it.
91
+ 5. **Polish.** Apply `{workflow.doc_standards}` to `prd.md` and `addendum.md` in declared order (structural passes before prose — prose should not polish soon-to-be-cut text). Parallelize across documents, sequential within.
92
+ 6. **External handoffs.** Execute `{workflow.external_handoffs}`; surface returned URLs/IDs. Skip and flag unavailable tools.
93
+ 7. **Close.** Set `prd.md` frontmatter `status: final` and `updated` to `{date}` so future invocations distinguish this PRD from in-progress drafts. Record finalization via `uv run {project-root}/_bmad/scripts/memlog.py append --workspace {doc_workspace} --type event --text "PRD finalized"`. Share artifact paths. Common next: `bmad-ux`, `bmad-architecture`, `bmad-create-epics-and-stories`; invoke `bmad-help` for authoritative routing.
94
+ 8. Run `{workflow.on_complete}` if non-empty.
@@ -0,0 +1,76 @@
1
+ # Headless Mode JSON Schemas
2
+
3
+ Every headless run ends with one of these payloads. Omit keys for artifacts not produced.
4
+
5
+ ## Common fields
6
+
7
+ - `status` — `"complete"`, `"blocked"`, or `"partial"`
8
+ - `intent` — `"create"`, `"update"`, or `"validate"` (matches the detected intent)
9
+ - `reason` — required when `status` is `"blocked"`; one-sentence explanation
10
+ - `assumptions` — array of inferred values that were not directly confirmed by inputs
11
+ - `open_questions` — array of items that need a human decision before the artifact can be considered final
12
+
13
+ ## Create
14
+
15
+ ```json
16
+ {
17
+ "status": "complete",
18
+ "intent": "create",
19
+ "prd": "{doc_workspace}/prd.md",
20
+ "addendum": "{doc_workspace}/addendum.md",
21
+ "memlog": "{doc_workspace}/.memlog.md",
22
+ "open_questions": [],
23
+ "assumptions": [],
24
+ "external_handoffs": [
25
+ {"directive": "Confluence upload", "tool": "corp:confluence_upload", "url": "https://confluence.corp/PROD/123", "status": "ok"}
26
+ ]
27
+ }
28
+ ```
29
+
30
+ ## Update
31
+
32
+ ```json
33
+ {
34
+ "status": "complete",
35
+ "intent": "update",
36
+ "prd": "{doc_workspace}/prd.md",
37
+ "memlog": "{doc_workspace}/.memlog.md",
38
+ "changes_summary": "1-3 sentences describing what changed and why",
39
+ "conflicts_with_prior_decisions": [],
40
+ "open_questions": [],
41
+ "external_handoffs": [
42
+ {"directive": "Confluence upload", "tool": "corp:confluence_upload", "url": "https://confluence.corp/PROD/123", "status": "ok"}
43
+ ]
44
+ }
45
+ ```
46
+
47
+ ## Validate
48
+
49
+ ```json
50
+ {
51
+ "status": "complete",
52
+ "intent": "validate",
53
+ "validation_report": "{doc_workspace}/validation-report.md",
54
+ "findings_summary": {
55
+ "critical": 0,
56
+ "high": 0,
57
+ "medium": 0,
58
+ "low": 0
59
+ },
60
+ "offer_to_update": true
61
+ }
62
+ ```
63
+
64
+ `validation_report` is always written for Validate intent — the path here is required, not optional.
65
+
66
+ ## Blocked
67
+
68
+ ```json
69
+ {
70
+ "status": "blocked",
71
+ "intent": "update",
72
+ "reason": "Change signal ambiguous — could be a scope expansion or a clarification; no inferred direction"
73
+ }
74
+ ```
75
+
76
+ Always include the intent (best-guess if not certain) and a one-sentence `reason`.