bmad-method 6.0.3 → 6.0.5-next.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 (271) hide show
  1. package/.augment/code_review_guidelines.yaml +2 -42
  2. package/.claude/skills/bmad-os-findings-triage/SKILL.md +6 -0
  3. package/.claude/skills/bmad-os-findings-triage/prompts/agent-prompt.md +104 -0
  4. package/.claude/skills/bmad-os-findings-triage/prompts/instructions.md +286 -0
  5. package/.claude/skills/bmad-os-review-pr/SKILL.md +1 -1
  6. package/.claude/skills/bmad-os-review-pr/prompts/instructions.md +63 -6
  7. package/.claude/skills/bmad-os-review-prompt/SKILL.md +177 -0
  8. package/.claude/skills/bmad-os-root-cause-analysis/SKILL.md +12 -0
  9. package/.claude/skills/bmad-os-root-cause-analysis/prompts/instructions.md +74 -0
  10. package/.github/ISSUE_TEMPLATE/config.yaml +1 -1
  11. package/.github/ISSUE_TEMPLATE/documentation.yaml +1 -1
  12. package/.github/workflows/publish.yaml +243 -0
  13. package/CHANGELOG.md +32 -0
  14. package/CONTRIBUTING.md +1 -1
  15. package/README.md +8 -8
  16. package/README_CN.md +121 -0
  17. package/docs/_STYLE_GUIDE.md +10 -10
  18. package/docs/explanation/brainstorming.md +1 -1
  19. package/docs/explanation/party-mode.md +1 -1
  20. package/docs/explanation/preventing-agent-conflicts.md +1 -1
  21. package/docs/explanation/project-context.md +15 -15
  22. package/docs/explanation/quick-flow.md +9 -9
  23. package/docs/how-to/established-projects.md +7 -7
  24. package/docs/how-to/get-answers-about-bmad.md +2 -2
  25. package/docs/how-to/install-bmad.md +16 -6
  26. package/docs/how-to/project-context.md +2 -2
  27. package/docs/how-to/quick-fixes.md +5 -5
  28. package/docs/how-to/shard-large-documents.md +1 -1
  29. package/docs/how-to/upgrade-to-v6.md +8 -5
  30. package/docs/index.md +2 -2
  31. package/docs/reference/agents.md +14 -14
  32. package/docs/reference/commands.md +64 -70
  33. package/docs/reference/testing.md +1 -1
  34. package/docs/reference/workflow-map.md +19 -19
  35. package/docs/tutorials/getting-started.md +34 -34
  36. package/docs/zh-cn/404.md +9 -0
  37. package/docs/zh-cn/_STYLE_GUIDE.md +370 -0
  38. package/docs/zh-cn/explanation/advanced-elicitation.md +62 -0
  39. package/docs/zh-cn/explanation/adversarial-review.md +71 -0
  40. package/docs/zh-cn/explanation/brainstorming.md +43 -0
  41. package/docs/zh-cn/explanation/established-projects-faq.md +60 -0
  42. package/docs/zh-cn/explanation/party-mode.md +79 -0
  43. package/docs/zh-cn/explanation/preventing-agent-conflicts.md +137 -0
  44. package/docs/zh-cn/explanation/project-context.md +176 -0
  45. package/docs/zh-cn/explanation/quick-flow.md +93 -0
  46. package/docs/zh-cn/explanation/why-solutioning-matters.md +90 -0
  47. package/docs/zh-cn/how-to/customize-bmad.md +182 -0
  48. package/docs/zh-cn/how-to/established-projects.md +134 -0
  49. package/docs/zh-cn/how-to/get-answers-about-bmad.md +144 -0
  50. package/docs/zh-cn/how-to/install-bmad.md +105 -0
  51. package/docs/zh-cn/how-to/non-interactive-installation.md +181 -0
  52. package/docs/zh-cn/how-to/project-context.md +152 -0
  53. package/docs/zh-cn/how-to/quick-fixes.md +140 -0
  54. package/docs/zh-cn/how-to/shard-large-documents.md +86 -0
  55. package/docs/zh-cn/how-to/upgrade-to-v6.md +120 -0
  56. package/docs/zh-cn/index.md +69 -0
  57. package/docs/zh-cn/reference/agents.md +41 -0
  58. package/docs/zh-cn/reference/commands.md +166 -0
  59. package/docs/zh-cn/reference/modules.md +94 -0
  60. package/docs/zh-cn/reference/testing.md +122 -0
  61. package/docs/zh-cn/reference/workflow-map.md +104 -0
  62. package/docs/zh-cn/roadmap.mdx +152 -0
  63. package/docs/zh-cn/tutorials/getting-started.md +300 -0
  64. package/package.json +1 -1
  65. package/src/bmm/agents/analyst.agent.yaml +1 -1
  66. package/src/bmm/agents/bmad-skill-manifest.yaml +39 -0
  67. package/src/bmm/agents/dev.agent.yaml +2 -2
  68. package/src/bmm/agents/pm.agent.yaml +1 -1
  69. package/src/bmm/agents/qa.agent.yaml +1 -1
  70. package/src/bmm/agents/quick-flow-solo-dev.agent.yaml +6 -2
  71. package/src/bmm/agents/sm.agent.yaml +4 -4
  72. package/src/bmm/agents/tech-writer/bmad-skill-manifest.yaml +3 -0
  73. package/src/bmm/agents/tech-writer/tech-writer.agent.yaml +1 -1
  74. package/src/bmm/module-help.csv +11 -10
  75. package/src/bmm/workflows/1-analysis/create-product-brief/bmad-skill-manifest.yaml +3 -0
  76. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +1 -1
  77. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +1 -1
  78. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +1 -1
  79. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +1 -1
  80. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +1 -1
  81. package/src/bmm/workflows/1-analysis/research/bmad-skill-manifest.yaml +14 -0
  82. package/src/bmm/workflows/2-plan-workflows/create-prd/bmad-skill-manifest.yaml +14 -0
  83. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +1 -1
  84. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02b-vision.md +1 -1
  85. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02c-executive-summary.md +1 -1
  86. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +1 -1
  87. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +1 -1
  88. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +1 -1
  89. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +1 -1
  90. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +1 -1
  91. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +1 -1
  92. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +1 -1
  93. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +1 -1
  94. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +1 -1
  95. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +1 -1
  96. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +1 -1
  97. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +1 -1
  98. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +1 -1
  99. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +1 -1
  100. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +1 -1
  101. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +1 -1
  102. package/src/bmm/workflows/2-plan-workflows/create-ux-design/bmad-skill-manifest.yaml +3 -0
  103. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +1 -1
  104. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +2 -2
  105. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +2 -2
  106. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +2 -2
  107. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +2 -2
  108. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +2 -2
  109. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +2 -2
  110. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +2 -2
  111. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +2 -2
  112. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +2 -2
  113. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +2 -2
  114. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +2 -2
  115. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +1 -1
  116. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/bmad-skill-manifest.yaml +3 -0
  117. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +1 -1
  118. package/src/bmm/workflows/3-solutioning/create-architecture/bmad-skill-manifest.yaml +3 -0
  119. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +2 -2
  120. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +2 -2
  121. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +2 -2
  122. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +2 -2
  123. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +2 -2
  124. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +2 -2
  125. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +1 -1
  126. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/bmad-skill-manifest.yaml +3 -0
  127. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +1 -1
  128. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +1 -1
  129. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +1 -1
  130. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +2 -2
  131. package/src/bmm/workflows/4-implementation/code-review/bmad-skill-manifest.yaml +3 -0
  132. package/src/bmm/workflows/4-implementation/code-review/discover-inputs.md +88 -0
  133. package/src/bmm/workflows/4-implementation/code-review/workflow.md +271 -0
  134. package/src/bmm/workflows/4-implementation/correct-course/bmad-skill-manifest.yaml +3 -0
  135. package/src/bmm/workflows/4-implementation/correct-course/checklist.md +1 -1
  136. package/src/bmm/workflows/4-implementation/correct-course/{instructions.md → workflow.md} +79 -12
  137. package/src/bmm/workflows/4-implementation/create-story/bmad-skill-manifest.yaml +3 -0
  138. package/src/bmm/workflows/4-implementation/create-story/checklist.md +9 -10
  139. package/src/bmm/workflows/4-implementation/create-story/discover-inputs.md +88 -0
  140. package/src/bmm/workflows/4-implementation/create-story/workflow.md +388 -0
  141. package/src/bmm/workflows/4-implementation/dev-story/bmad-skill-manifest.yaml +3 -0
  142. package/src/bmm/workflows/4-implementation/dev-story/{instructions.xml → workflow.md} +49 -2
  143. package/src/bmm/workflows/4-implementation/retrospective/bmad-skill-manifest.yaml +3 -0
  144. package/src/bmm/workflows/4-implementation/retrospective/{instructions.md → workflow.md} +64 -23
  145. package/src/bmm/workflows/4-implementation/sprint-planning/bmad-skill-manifest.yaml +3 -0
  146. package/src/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +1 -0
  147. package/src/bmm/workflows/4-implementation/sprint-planning/{instructions.md → workflow.md} +55 -10
  148. package/src/bmm/workflows/4-implementation/sprint-status/bmad-skill-manifest.yaml +3 -0
  149. package/src/bmm/workflows/4-implementation/sprint-status/{instructions.md → workflow.md} +45 -8
  150. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/SKILL.md +6 -0
  151. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/bmad-skill-manifest.yaml +1 -0
  152. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-01-clarify-and-route.md +54 -0
  153. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-02-plan.md +39 -0
  154. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-03-implement.md +35 -0
  155. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-04-review.md +55 -0
  156. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-05-present.md +19 -0
  157. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/tech-spec-template.md +90 -0
  158. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/workflow.md +84 -0
  159. package/src/bmm/workflows/bmad-quick-flow/quick-dev/bmad-skill-manifest.yaml +3 -0
  160. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +8 -14
  161. package/src/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +1 -1
  162. package/src/bmm/workflows/bmad-quick-flow/quick-spec/bmad-skill-manifest.yaml +3 -0
  163. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +4 -6
  164. package/src/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +1 -1
  165. package/src/bmm/workflows/document-project/bmad-skill-manifest.yaml +3 -0
  166. package/src/bmm/workflows/document-project/instructions.md +5 -7
  167. package/src/bmm/workflows/document-project/workflow.md +39 -0
  168. package/src/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -1
  169. package/src/bmm/workflows/document-project/workflows/deep-dive-workflow.md +42 -0
  170. package/src/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1
  171. package/src/bmm/workflows/document-project/workflows/full-scan-workflow.md +42 -0
  172. package/src/bmm/workflows/generate-project-context/bmad-skill-manifest.yaml +3 -0
  173. package/src/bmm/workflows/generate-project-context/steps/step-02-generate.md +2 -2
  174. package/src/bmm/workflows/qa-generate-e2e-tests/bmad-skill-manifest.yaml +3 -0
  175. package/src/bmm/workflows/qa-generate-e2e-tests/checklist.md +1 -1
  176. package/src/bmm/workflows/qa-generate-e2e-tests/{instructions.md → workflow.md} +40 -7
  177. package/src/core/agents/bmad-master.agent.yaml +1 -1
  178. package/src/core/agents/bmad-skill-manifest.yaml +3 -0
  179. package/src/core/module-help.csv +3 -2
  180. package/src/core/module.yaml +1 -1
  181. package/src/core/tasks/bmad-help/SKILL.md +6 -0
  182. package/src/core/tasks/bmad-help/bmad-skill-manifest.yaml +1 -0
  183. package/src/core/tasks/{help.md → bmad-help/workflow.md} +6 -4
  184. package/src/core/tasks/bmad-review-adversarial-general/SKILL.md +6 -0
  185. package/src/core/tasks/bmad-review-adversarial-general/bmad-skill-manifest.yaml +1 -0
  186. package/src/core/tasks/bmad-review-adversarial-general/workflow.md +32 -0
  187. package/src/core/tasks/bmad-review-edge-case-hunter/SKILL.md +6 -0
  188. package/src/core/tasks/bmad-review-edge-case-hunter/bmad-skill-manifest.yaml +1 -0
  189. package/src/core/tasks/bmad-review-edge-case-hunter/workflow.md +62 -0
  190. package/src/core/tasks/bmad-skill-manifest.yaml +19 -0
  191. package/src/core/workflows/advanced-elicitation/bmad-skill-manifest.yaml +3 -0
  192. package/src/core/workflows/advanced-elicitation/workflow.md +138 -0
  193. package/src/core/workflows/brainstorming/bmad-skill-manifest.yaml +3 -0
  194. package/src/core/workflows/brainstorming/steps/step-01-session-setup.md +31 -18
  195. package/src/core/workflows/brainstorming/steps/step-01b-continue.md +1 -1
  196. package/src/core/workflows/brainstorming/steps/step-03-technique-execution.md +3 -3
  197. package/src/core/workflows/brainstorming/steps/step-04-idea-organization.md +2 -2
  198. package/src/core/workflows/brainstorming/workflow.md +5 -3
  199. package/src/core/workflows/party-mode/bmad-skill-manifest.yaml +3 -0
  200. package/src/core/workflows/party-mode/workflow.md +1 -1
  201. package/src/utility/agent-components/activation-steps.txt +2 -2
  202. package/src/utility/agent-components/handler-multi.txt +1 -2
  203. package/test/adversarial-review-tests/README.md +3 -3
  204. package/test/adversarial-review-tests/test-cases.yaml +2 -2
  205. package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +1 -1
  206. package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +1 -1
  207. package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +1 -2
  208. package/test/fixtures/file-refs-csv/valid/bmm-style.csv +1 -1
  209. package/test/test-file-refs-csv.js +1 -1
  210. package/test/test-install-to-bmad.js +154 -0
  211. package/test/test-installation-components.js +1586 -2
  212. package/test/test-workflow-path-regex.js +88 -0
  213. package/tools/cli/installers/install-messages.yaml +1 -1
  214. package/tools/cli/installers/lib/core/installer.js +34 -1
  215. package/tools/cli/installers/lib/core/manifest-generator.js +332 -41
  216. package/tools/cli/installers/lib/ide/_base-ide.js +24 -15
  217. package/tools/cli/installers/lib/ide/_config-driven.js +547 -53
  218. package/tools/cli/installers/lib/ide/manager.js +26 -62
  219. package/tools/cli/installers/lib/ide/platform-codes.yaml +116 -29
  220. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +1 -0
  221. package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +7 -0
  222. package/tools/cli/installers/lib/ide/shared/path-utils.js +68 -3
  223. package/tools/cli/installers/lib/ide/shared/skill-manifest.js +90 -0
  224. package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +2 -0
  225. package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +6 -145
  226. package/tools/cli/installers/lib/ide/templates/agent-command-template.md +1 -1
  227. package/tools/cli/installers/lib/ide/templates/combined/default-workflow.md +1 -1
  228. package/tools/cli/installers/lib/ide/templates/combined/gemini-workflow-yaml.toml +1 -1
  229. package/tools/cli/installers/lib/ide/templates/combined/gemini-workflow.toml +1 -1
  230. package/tools/cli/installers/lib/ide/templates/combined/opencode-agent.md +1 -1
  231. package/tools/cli/installers/lib/ide/templates/combined/opencode-task.md +0 -1
  232. package/tools/cli/installers/lib/ide/templates/combined/opencode-tool.md +0 -1
  233. package/tools/cli/installers/lib/ide/templates/combined/opencode-workflow-yaml.md +0 -1
  234. package/tools/cli/installers/lib/ide/templates/combined/opencode-workflow.md +0 -1
  235. package/tools/cli/installers/lib/modules/manager.js +9 -132
  236. package/tools/cli/lib/agent/compiler.js +1 -10
  237. package/tools/cli/lib/agent-analyzer.js +2 -14
  238. package/tools/cli/lib/yaml-xml-builder.js +1 -18
  239. package/tools/docs/native-skills-migration-checklist.md +281 -0
  240. package/tools/platform-codes.yaml +1 -1
  241. package/tools/schema/agent.js +1 -3
  242. package/tools/validate-file-refs.js +2 -0
  243. package/website/astro.config.mjs +24 -3
  244. package/website/src/content/config.ts +2 -1
  245. package/website/src/content/i18n/zh-CN.json +28 -0
  246. package/src/bmm/workflows/4-implementation/code-review/instructions.xml +0 -227
  247. package/src/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -43
  248. package/src/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -53
  249. package/src/bmm/workflows/4-implementation/create-story/instructions.xml +0 -346
  250. package/src/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -52
  251. package/src/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -20
  252. package/src/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -52
  253. package/src/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -47
  254. package/src/bmm/workflows/4-implementation/sprint-status/workflow.yaml +0 -25
  255. package/src/bmm/workflows/document-project/workflow.yaml +0 -22
  256. package/src/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
  257. package/src/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
  258. package/src/bmm/workflows/qa-generate-e2e-tests/workflow.yaml +0 -42
  259. package/src/core/tasks/review-adversarial-general.xml +0 -49
  260. package/src/core/tasks/workflow.xml +0 -235
  261. package/src/core/workflows/advanced-elicitation/workflow.xml +0 -118
  262. package/src/utility/agent-components/handler-validate-workflow.txt +0 -7
  263. package/src/utility/agent-components/handler-workflow.txt +0 -10
  264. package/tools/cli/installers/lib/ide/codex.js +0 -440
  265. package/tools/cli/installers/lib/ide/github-copilot.js +0 -699
  266. package/tools/cli/installers/lib/ide/kilo.js +0 -269
  267. package/tools/cli/installers/lib/ide/rovodev.js +0 -257
  268. package/tools/cli/installers/lib/ide/templates/combined/default-workflow-yaml.md +0 -14
  269. package/tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md +0 -15
  270. package/tools/cli/installers/lib/ide/templates/workflow-command-template.md +0 -13
  271. package/tools/cli/installers/lib/ide/templates/workflow-commander.md +0 -5
@@ -289,7 +289,7 @@ class BaseIdeSetup {
289
289
  // Get core workflows
290
290
  const coreWorkflowsPath = path.join(bmadDir, 'core', 'workflows');
291
291
  if (await fs.pathExists(coreWorkflowsPath)) {
292
- const coreWorkflows = await this.findWorkflowYamlFiles(coreWorkflowsPath);
292
+ const coreWorkflows = await this.findWorkflowFiles(coreWorkflowsPath);
293
293
  workflows.push(
294
294
  ...coreWorkflows.map((w) => ({
295
295
  ...w,
@@ -304,7 +304,7 @@ class BaseIdeSetup {
304
304
  if (entry.isDirectory() && entry.name !== 'core' && entry.name !== '_config' && entry.name !== 'agents') {
305
305
  const moduleWorkflowsPath = path.join(bmadDir, entry.name, 'workflows');
306
306
  if (await fs.pathExists(moduleWorkflowsPath)) {
307
- const moduleWorkflows = await this.findWorkflowYamlFiles(moduleWorkflowsPath);
307
+ const moduleWorkflows = await this.findWorkflowFiles(moduleWorkflowsPath);
308
308
  workflows.push(
309
309
  ...moduleWorkflows.map((w) => ({
310
310
  ...w,
@@ -324,11 +324,13 @@ class BaseIdeSetup {
324
324
  }
325
325
 
326
326
  /**
327
- * Recursively find workflow.yaml files
327
+ * Recursively find workflow.md files
328
328
  * @param {string} dir - Directory to search
329
+ * @param {string} [rootDir] - Original root directory (used internally for recursion)
329
330
  * @returns {Array} List of workflow file info objects
330
331
  */
331
- async findWorkflowYamlFiles(dir) {
332
+ async findWorkflowFiles(dir, rootDir = null) {
333
+ rootDir = rootDir || dir;
332
334
  const workflows = [];
333
335
 
334
336
  if (!(await fs.pathExists(dir))) {
@@ -342,14 +344,17 @@ class BaseIdeSetup {
342
344
 
343
345
  if (entry.isDirectory()) {
344
346
  // Recursively search subdirectories
345
- const subWorkflows = await this.findWorkflowYamlFiles(fullPath);
347
+ const subWorkflows = await this.findWorkflowFiles(fullPath, rootDir);
346
348
  workflows.push(...subWorkflows);
347
- } else if (entry.isFile() && entry.name === 'workflow.yaml') {
348
- // Read workflow.yaml to get name and standalone property
349
+ } else if (entry.isFile() && entry.name === 'workflow.md') {
350
+ // Read workflow.md frontmatter to get name and standalone property
349
351
  try {
350
352
  const yaml = require('yaml');
351
353
  const content = await fs.readFile(fullPath, 'utf8');
352
- const workflowData = yaml.parse(content);
354
+ const frontmatterMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
355
+ if (!frontmatterMatch) continue;
356
+
357
+ const workflowData = yaml.parse(frontmatterMatch[1]);
353
358
 
354
359
  if (workflowData && workflowData.name) {
355
360
  // Workflows are standalone by default unless explicitly false
@@ -357,7 +362,7 @@ class BaseIdeSetup {
357
362
  workflows.push({
358
363
  name: workflowData.name,
359
364
  path: fullPath,
360
- relativePath: path.relative(dir, fullPath),
365
+ relativePath: path.relative(rootDir, fullPath),
361
366
  filename: entry.name,
362
367
  description: workflowData.description || '',
363
368
  standalone: standalone,
@@ -376,9 +381,11 @@ class BaseIdeSetup {
376
381
  * Scan a directory for files with specific extension(s)
377
382
  * @param {string} dir - Directory to scan
378
383
  * @param {string|Array<string>} ext - File extension(s) to match (e.g., '.md' or ['.md', '.xml'])
384
+ * @param {string} [rootDir] - Original root directory (used internally for recursion)
379
385
  * @returns {Array} List of file info objects
380
386
  */
381
- async scanDirectory(dir, ext) {
387
+ async scanDirectory(dir, ext, rootDir = null) {
388
+ rootDir = rootDir || dir;
382
389
  const files = [];
383
390
 
384
391
  if (!(await fs.pathExists(dir))) {
@@ -395,7 +402,7 @@ class BaseIdeSetup {
395
402
 
396
403
  if (entry.isDirectory()) {
397
404
  // Recursively scan subdirectories
398
- const subFiles = await this.scanDirectory(fullPath, ext);
405
+ const subFiles = await this.scanDirectory(fullPath, ext, rootDir);
399
406
  files.push(...subFiles);
400
407
  } else if (entry.isFile()) {
401
408
  // Check if file matches any of the extensions
@@ -404,7 +411,7 @@ class BaseIdeSetup {
404
411
  files.push({
405
412
  name: path.basename(entry.name, matchedExt),
406
413
  path: fullPath,
407
- relativePath: path.relative(dir, fullPath),
414
+ relativePath: path.relative(rootDir, fullPath),
408
415
  filename: entry.name,
409
416
  });
410
417
  }
@@ -418,9 +425,11 @@ class BaseIdeSetup {
418
425
  * Scan a directory for files with specific extension(s) and check standalone attribute
419
426
  * @param {string} dir - Directory to scan
420
427
  * @param {string|Array<string>} ext - File extension(s) to match (e.g., '.md' or ['.md', '.xml'])
428
+ * @param {string} [rootDir] - Original root directory (used internally for recursion)
421
429
  * @returns {Array} List of file info objects with standalone property
422
430
  */
423
- async scanDirectoryWithStandalone(dir, ext) {
431
+ async scanDirectoryWithStandalone(dir, ext, rootDir = null) {
432
+ rootDir = rootDir || dir;
424
433
  const files = [];
425
434
 
426
435
  if (!(await fs.pathExists(dir))) {
@@ -437,7 +446,7 @@ class BaseIdeSetup {
437
446
 
438
447
  if (entry.isDirectory()) {
439
448
  // Recursively scan subdirectories
440
- const subFiles = await this.scanDirectoryWithStandalone(fullPath, ext);
449
+ const subFiles = await this.scanDirectoryWithStandalone(fullPath, ext, rootDir);
441
450
  files.push(...subFiles);
442
451
  } else if (entry.isFile()) {
443
452
  // Check if file matches any of the extensions
@@ -481,7 +490,7 @@ class BaseIdeSetup {
481
490
  files.push({
482
491
  name: path.basename(entry.name, matchedExt),
483
492
  path: fullPath,
484
- relativePath: path.relative(dir, fullPath),
493
+ relativePath: path.relative(rootDir, fullPath),
485
494
  filename: entry.name,
486
495
  standalone: standalone,
487
496
  });