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
@@ -367,15 +367,6 @@ class YamlXmlBuilder {
367
367
  const attrs = [`cmd="${trigger}"`];
368
368
 
369
369
  // Add handler attributes
370
- // If workflow-install exists, use its value for workflow attribute (vendoring)
371
- // workflow-install is build-time metadata - tells installer where to copy workflows
372
- // The final XML should only have workflow pointing to the install location
373
- if (item['workflow-install']) {
374
- attrs.push(`workflow="${item['workflow-install']}"`);
375
- } else if (item.workflow) {
376
- attrs.push(`workflow="${item.workflow}"`);
377
- }
378
-
379
370
  if (item['validate-workflow']) attrs.push(`validate-workflow="${item['validate-workflow']}"`);
380
371
  if (item.exec) attrs.push(`exec="${item.exec}"`);
381
372
  if (item.tmpl) attrs.push(`tmpl="${item.tmpl}"`);
@@ -417,8 +408,6 @@ class YamlXmlBuilder {
417
408
 
418
409
  // Add handler attributes based on exec data
419
410
  if (execData.route) attrs.push(`exec="${execData.route}"`);
420
- if (execData.workflow) attrs.push(`workflow="${execData.workflow}"`);
421
- if (execData['validate-workflow']) attrs.push(`validate-workflow="${execData['validate-workflow']}"`);
422
411
  if (execData.action) attrs.push(`action="${execData.action}"`);
423
412
  if (execData.data) attrs.push(`data="${execData.data}"`);
424
413
  if (execData.tmpl) attrs.push(`tmpl="${execData.tmpl}"`);
@@ -442,7 +431,6 @@ class YamlXmlBuilder {
442
431
  const result = {
443
432
  description: '',
444
433
  route: null,
445
- workflow: null,
446
434
  data: null,
447
435
  action: null,
448
436
  type: null,
@@ -459,12 +447,7 @@ class YamlXmlBuilder {
459
447
  }
460
448
 
461
449
  if (exec.route) {
462
- // Determine if it's a workflow or exec based on file extension or context
463
- if (exec.route.endsWith('.yaml') || exec.route.endsWith('.yml')) {
464
- result.workflow = exec.route;
465
- } else {
466
- result.route = exec.route;
467
- }
450
+ result.route = exec.route;
468
451
  }
469
452
 
470
453
  if (exec.data !== null && exec.data !== undefined) {
@@ -0,0 +1,281 @@
1
+ # Native Skills Migration Checklist
2
+
3
+ Branch: `refactor/all-is-skills`
4
+
5
+ Scope: migrate the BMAD-supported platforms that fully support the Agent Skills standard from legacy installer outputs to native skills output.
6
+
7
+ Current branch status:
8
+
9
+ - `Claude Code` has already been moved to `.claude/skills`
10
+ - `Codex CLI` has already been moved to `.agents/skills`
11
+
12
+ This checklist now includes those completed platforms plus the remaining full-support platforms.
13
+
14
+ ## Claude Code
15
+
16
+ Support assumption: full Agent Skills support. BMAD has already migrated from `.claude/commands` to `.claude/skills`.
17
+
18
+ **Install:** `npm install -g @anthropic-ai/claude-code` or `brew install claude-code`
19
+
20
+ - [x] Confirm current implementation still matches Claude Code skills expectations
21
+ - [x] Confirm legacy cleanup for `.claude/commands`
22
+ - [x] Test fresh install
23
+ - [x] Test reinstall/upgrade from legacy command output
24
+ - [x] Confirm ancestor conflict protection because Claude Code inherits skills from parent directories and `ancestor_conflict_check: true` is set in platform-codes.yaml
25
+ - [x] Implement/extend automated tests as needed
26
+
27
+ ## Codex CLI
28
+
29
+ Support assumption: full Agent Skills support. BMAD has already migrated from `.codex/prompts` to `.agents/skills`.
30
+
31
+ **Install:** `npm install -g @openai/codex`
32
+
33
+ - [x] Confirm current implementation still matches Codex CLI skills expectations
34
+ - [x] Confirm legacy cleanup for project and global `.codex/prompts`
35
+ - [x] Test fresh install
36
+ - [x] Test reinstall/upgrade from legacy prompt output
37
+ - [x] Confirm ancestor conflict protection because Codex inherits parent-directory `.agents/skills`
38
+ - [x] Implement/extend automated tests as needed
39
+
40
+ ## Cursor
41
+
42
+ Support assumption: full Agent Skills support. BMAD currently installs legacy command files to `.cursor/commands`; target should move to a native skills directory.
43
+
44
+ - [x] Confirm current Cursor skills path and that BMAD should target `.cursor/skills`
45
+ - [x] Implement installer migration to native skills output
46
+ - [x] Add legacy cleanup for `.cursor/commands`
47
+ - [x] Test fresh install
48
+ - [x] Test reinstall/upgrade from legacy command output
49
+ - [x] Confirm no ancestor conflict protection is needed because a child workspace surfaced child `.cursor/skills` entries but not a parent-only skill during manual verification
50
+ - [x] Implement/extend automated tests
51
+ - [x] Commit
52
+
53
+ ## Windsurf
54
+
55
+ Support assumption: full Agent Skills support. Windsurf docs confirm workspace skills at `.windsurf/skills` and global skills at `~/.codeium/windsurf/skills`. BMAD has now migrated from `.windsurf/workflows` to `.windsurf/skills`. Manual verification also confirmed that Windsurf custom skills are triggered via `@skill-name`, not slash commands.
56
+
57
+ - [x] Confirm Windsurf native skills directory as `.windsurf/skills`
58
+ - [x] Implement installer migration to native skills output
59
+ - [x] Add legacy cleanup for `.windsurf/workflows`
60
+ - [x] Test fresh install
61
+ - [x] Test reinstall/upgrade from legacy workflow output
62
+ - [x] Confirm no ancestor conflict protection is needed because manual Windsurf verification showed child-local `@` skills loaded while a parent-only skill was not inherited
63
+ - [x] Implement/extend automated tests
64
+
65
+ ## Cline
66
+
67
+ Support assumption: full Agent Skills support. Cline docs confirm workspace skills at `.cline/skills/<skill-name>/SKILL.md` and global skills at `~/.cline/skills/`. BMAD has now migrated from `.clinerules/workflows` to `.cline/skills`.
68
+
69
+ **Install:** VS Code extension `saoudrizwan.claude-dev` — search "Cline" in Extensions or `code --install-extension saoudrizwan.claude-dev`
70
+
71
+ - [x] Confirm current Cline skills path is `.cline/skills/{skill-name}/SKILL.md` with YAML frontmatter (name + description)
72
+ - [x] Implement installer migration to native skills output
73
+ - [x] Add legacy cleanup for `.clinerules/workflows`
74
+ - [x] Test fresh install — 43 skills installed to `.cline/skills/`
75
+ - [x] Test reinstall/upgrade from legacy workflow output
76
+ - [x] Confirm no ancestor conflict protection is needed because Cline only scans workspace-local `.cline/skills/` and global `~/.cline/skills/`, with no ancestor directory inheritance
77
+ - [x] Implement/extend automated tests — 9 assertions in test suite 18
78
+ - [x] Commit
79
+
80
+ ## Google Antigravity
81
+
82
+ Support assumption: full Agent Skills support. Antigravity docs confirm workspace skills at `.agent/skills/<skill-folder>/` and global skills at `~/.gemini/antigravity/skills/<skill-folder>/`. BMAD has now migrated from `.agent/workflows` to `.agent/skills`.
83
+
84
+ - [x] Confirm Antigravity native skills path and project/global precedence
85
+ - [x] Implement installer migration to native skills output
86
+ - [x] Add legacy cleanup for `.agent/workflows`
87
+ - [x] Test fresh install
88
+ - [x] Test reinstall/upgrade from legacy workflow output
89
+ - [x] Confirm no ancestor conflict protection is needed because manual Antigravity verification in `/tmp/antigravity-ancestor-repro/parent/child` showed only the child-local `child-only` skill, with no inherited parent `.agent/skills` entry
90
+ - [x] Implement/extend automated tests
91
+
92
+ ## Auggie
93
+
94
+ Support assumption: full Agent Skills support. BMAD currently installs commands to `.augment/commands`; target should move to `.augment/skills`.
95
+
96
+ - [x] Confirm Auggie native skills path and compatibility loading from `.claude/skills` and `.agents/skills` via Augment docs plus local `auggie --print` repros
97
+ - [x] Implement installer migration to native skills output
98
+ - [x] Add legacy cleanup for `.augment/commands`
99
+ - [x] Test fresh install
100
+ - [x] Test reinstall/upgrade from legacy command output
101
+ - [x] Confirm no ancestor conflict protection is needed because local `auggie --workspace-root` repro showed child-local `.augment/skills` loading `child-only` but not parent `parent-only`
102
+ - [x] Implement/extend automated tests
103
+ - [x] Commit
104
+
105
+ ## CodeBuddy
106
+
107
+ Support assumption: full Agent Skills support. CodeBuddy docs confirm workspace skills at `.codebuddy/skills/<skill-name>/SKILL.md` and global skills at `~/.codebuddy/commands/`. BMAD has now migrated from `.codebuddy/commands` to `.codebuddy/skills`.
108
+
109
+ **Install:** Download [Tencent CodeBuddy IDE](https://codebuddyide.net/) or install as VS Code extension `CodebuddyAI.codebuddy-ai`
110
+
111
+ - [x] Confirm CodeBuddy native skills path is `.codebuddy/skills/{skill-name}/SKILL.md` with YAML frontmatter (name + description) — per docs, not IDE-verified
112
+ - [x] Implement installer migration to native skills output
113
+ - [x] Add legacy cleanup for `.codebuddy/commands`
114
+ - [x] Test fresh install — 43 skills installed to `.codebuddy/skills/` (installer output only)
115
+ - [x] Test reinstall/upgrade from legacy command output
116
+ - [ ] **NEEDS MANUAL IDE VERIFICATION** — requires Tencent Cloud account; confirm skills appear in UI and test ancestor inheritance
117
+ - [x] Implement/extend automated tests — 9 assertions in test suite 19
118
+ - [x] Commit
119
+
120
+ ## Crush
121
+
122
+ Support assumption: full Agent Skills support. Crush scans project-local `.crush/skills/` exclusively ([GitHub issue #2072](https://github.com/charmbracelet/crush/issues/2072) confirms this and requests adding `~/.agents/skills/`). BMAD has now migrated from `.crush/commands` to `.crush/skills`.
123
+
124
+ **Install:** `brew install charmbracelet/tap/crush` (macOS/Linux) or `winget install charmbracelet.crush` (Windows)
125
+
126
+ - [x] Confirm Crush project-local skills path is `.crush/skills/{skill-name}/SKILL.md` — per GitHub issue #2072 confirming `.crush/skills/` is the only scan path
127
+ - [x] Implement installer migration to native skills output
128
+ - [x] Add legacy cleanup for `.crush/commands`
129
+ - [x] Test fresh install — 43 skills installed to `.crush/skills/`
130
+ - [x] Test reinstall/upgrade from legacy command output
131
+ - [x] Confirm no ancestor conflict protection is needed because Crush only scans project-local `.crush/skills/`, no ancestor inheritance
132
+ - [x] Manual CLI verification — `crush run` lists all 10 skills and successfully triggers bmad-help
133
+ - [x] Implement/extend automated tests — 9 assertions in test suite 20
134
+ - [x] Commit
135
+
136
+ ## Kiro
137
+
138
+ Support assumption: full Agent Skills support. Kiro docs confirm project skills at `.kiro/skills/<skill-name>/SKILL.md` and describe steering as a separate rules mechanism, not a required compatibility layer. BMAD has now migrated from `.kiro/steering` to `.kiro/skills`. Manual app verification also confirmed that Kiro can surface skills in Slash when the relevant UI setting is enabled, and that it does not inherit ancestor `.kiro/skills` directories.
139
+
140
+ - [x] Confirm Kiro skills path and verify BMAD should stop writing steering artifacts for this migration
141
+ - [x] Implement installer migration to native skills output
142
+ - [x] Add legacy cleanup for `.kiro/steering`
143
+ - [x] Test fresh install
144
+ - [x] Test reinstall/upgrade from legacy steering output
145
+ - [x] Confirm no ancestor conflict protection is needed because manual Kiro verification showed Slash-visible skills from the current workspace only, with no ancestor `.kiro/skills` inheritance
146
+ - [x] Implement/extend automated tests
147
+
148
+ ## OpenCode
149
+
150
+ Support assumption: full Agent Skills support. BMAD currently splits output between `.opencode/agents` and `.opencode/commands`; target should consolidate to `.opencode/skills`.
151
+
152
+ - [x] Confirm OpenCode native skills path and compatibility loading from `.claude/skills` and `.agents/skills` in OpenCode docs and with local `opencode run` repros
153
+ - [x] Implement installer migration from multi-target legacy output to single native skills target
154
+ - [x] Add legacy cleanup for `.opencode/agents`, `.opencode/commands`, `.opencode/agent`, and `.opencode/command`
155
+ - [x] Test fresh install
156
+ - [x] Test reinstall/upgrade from split legacy output
157
+ - [x] Confirm ancestor conflict protection is required because local `opencode run` repros loaded both child-local `child-only` and ancestor `parent-only`, matching the docs that project-local skill discovery walks upward to the git worktree
158
+ - [x] Implement/extend automated tests
159
+ - [x] Commit
160
+
161
+ ## Roo Code
162
+
163
+ Support assumption: full Agent Skills support. BMAD currently installs commands to `.roo/commands`; target should move to `.roo/skills` or the correct mode-aware skill directories.
164
+
165
+ **Install:** VS Code extension `RooVeterinaryInc.roo-cline` — search "Roo Code" in Extensions or `code --install-extension RooVeterinaryInc.roo-cline`
166
+
167
+ - [x] Confirm Roo native skills path is `.roo/skills/{skill-name}/SKILL.md` with `name` frontmatter matching directory exactly (lowercase, alphanumeric + hyphens only)
168
+ - [x] Implement installer migration to native skills output
169
+ - [x] Add legacy cleanup for `.roo/commands`
170
+ - [x] Test fresh install — 43 skills installed, verified in Roo Code v3.51
171
+ - [x] Test reinstall/upgrade from legacy command output
172
+ - [x] Confirm no ancestor conflict protection is needed because manual Roo Code v3.51 verification showed child-local `child-only` skill loaded while parent-only skill was not inherited
173
+ - [x] Implement/extend automated tests — 7 assertions in test suite 13
174
+ - [x] Commit
175
+
176
+ ## Trae
177
+
178
+ Support assumption: full Agent Skills support. [Trae docs](https://docs.trae.ai/ide/skills) confirm workspace skills at `.trae/skills/<skill-name>/SKILL.md`. BMAD has now migrated from `.trae/rules` to `.trae/skills`.
179
+
180
+ **Install:** Download [standalone IDE](https://www.trae.ai/download) (macOS/Windows/Linux) or `winget install -e --id ByteDance.Trae`
181
+
182
+ - [x] Confirm Trae native skills path is `.trae/skills/{skill-name}/SKILL.md` — per official docs
183
+ - [x] Implement installer migration to native skills output
184
+ - [x] Add legacy cleanup for `.trae/rules`
185
+ - [x] Test fresh install — 43 skills installed to `.trae/skills/`
186
+ - [x] Test reinstall/upgrade from legacy rules output
187
+ - [x] Confirm no ancestor conflict protection is needed — Trae docs describe project-local `.trae/skills/` only
188
+ - [ ] **NEEDS MANUAL IDE VERIFICATION** — download Trae IDE and confirm skills appear in UI
189
+ - [x] Implement/extend automated tests — 9 assertions in test suite 21
190
+ - [x] Commit
191
+
192
+ ## GitHub Copilot
193
+
194
+ Support assumption: full Agent Skills support. BMAD currently uses a custom installer that generates `.github/agents`, `.github/prompts`, and `.github/copilot-instructions.md`; target should move to `.github/skills`.
195
+
196
+ **Install:** VS Code extension `GitHub.copilot` — search "GitHub Copilot" in Extensions or `code --install-extension GitHub.copilot`
197
+
198
+ - [x] Confirm GitHub Copilot native skills path is `.github/skills/{skill-name}/SKILL.md` — also reads `.claude/skills/` automatically
199
+ - [x] Design the migration away from the custom prompt/agent installer model — replaced 699-line custom installer with config-driven `skill_format: true`
200
+ - [x] Implement native skills output, ideally with shared config-driven code where practical
201
+ - [x] Add legacy cleanup for `.github/agents`, `.github/prompts`, and BMAD markers in `copilot-instructions.md`
202
+ - [x] Test fresh install — 43 skills installed to `.github/skills/`
203
+ - [x] Test reinstall/upgrade from legacy custom installer output — legacy dirs removed, BMAD markers stripped, user content preserved
204
+ - [x] Confirm no ancestor conflict protection is needed because manual Copilot verification showed child-local `child-only` skill loaded while parent-only skill was not inherited
205
+ - [x] Implement/extend automated tests — 11 assertions in test suite 17 including marker cleanup
206
+ - [x] Commit
207
+
208
+ ## KiloCoder — SUSPENDED
209
+
210
+ **Status: Kilo Code does not support the Agent Skills standard.** The original migration assumed skills support because Kilo forked from Roo Code, but manual IDE verification confirmed Kilo has not merged that feature. BMAD support is paused until Kilo implements skills.
211
+
212
+ **Install:** VS Code extension `kilocode.kilo-code` — search "Kilo Code" in Extensions or `code --install-extension kilocode.kilo-code`
213
+
214
+ - [x] ~~Confirm KiloCoder native skills path~~ — **FALSE**: assumed from Roo Code fork, not verified. Manual testing showed no skills support in the IDE
215
+ - [x] Config and installer code retained in platform-codes.yaml with `suspended` flag — hidden from IDE picker, setup blocked with explanation
216
+ - [x] Installer fails early (before writing `_bmad/`) if Kilo is the only selected IDE, protecting existing installations
217
+ - [x] Legacy cleanup still runs for `.kilocode/workflows` and `.kilocodemodes` when users switch to a different IDE
218
+ - [x] Automated tests — 7 assertions in suite 22 (suspended config, hidden from picker, setup blocked, no files written, legacy cleanup)
219
+
220
+ ## Gemini CLI
221
+
222
+ Support assumption: full Agent Skills support. Gemini CLI docs confirm workspace skills at `.gemini/skills/` and user skills at `~/.gemini/skills/`. Also discovers `.agents/skills/` as an alias. BMAD previously installed TOML files to `.gemini/commands`.
223
+
224
+ **Install:** `npm install -g @google/gemini-cli` or see [geminicli.com](https://geminicli.com)
225
+
226
+ - [x] Confirm Gemini CLI native skills path is `.gemini/skills/{skill-name}/SKILL.md` (per [geminicli.com/docs/cli/skills](https://geminicli.com/docs/cli/skills/))
227
+ - [x] Implement native skills output — target_dir `.gemini/skills`, skill_format true, template_type default (replaces TOML templates)
228
+ - [x] Add legacy cleanup for `.gemini/commands` (via `legacy_targets`)
229
+ - [x] Test fresh install — skills written to `.gemini/skills/bmad-master/SKILL.md` with correct frontmatter
230
+ - [x] Test reinstall/upgrade from legacy TOML command output — legacy dir removed, skills installed
231
+ - [x] Confirm no ancestor conflict protection is needed — Gemini CLI uses workspace > user > extension precedence, no ancestor directory inheritance
232
+ - [x] Implement/extend automated tests — 9 assertions in test suite 23 (config, fresh install, legacy cleanup, reinstall)
233
+ - [x] Manual CLI verification — `gemini` lists all 10 skills and successfully triggers bmad-help
234
+ - [ ] Commit
235
+
236
+ ## iFlow
237
+
238
+ Support assumption: full Agent Skills support. iFlow docs confirm workspace skills at `.iflow/skills/` and global skills at `~/.iflow/skills/`. BMAD previously installed flat files to `.iflow/commands`.
239
+
240
+ - [x] Confirm iFlow native skills path is `.iflow/skills/{skill-name}/SKILL.md`
241
+ - [x] Implement native skills output — target_dir `.iflow/skills`, skill_format true, template_type default
242
+ - [x] Add legacy cleanup for `.iflow/commands` (via `legacy_targets`)
243
+ - [x] Test fresh install — skills written to `.iflow/skills/bmad-master/SKILL.md`
244
+ - [x] Test legacy cleanup — legacy commands dir removed
245
+ - [x] Implement/extend automated tests — 6 assertions in test suite 24
246
+ - [ ] **NEEDS MANUAL IDE VERIFICATION** — install iFlow and confirm skills appear in UI and can be triggered
247
+ - [ ] Commit
248
+
249
+ ## QwenCoder
250
+
251
+ Support assumption: full Agent Skills support. Qwen Code supports workspace skills at `.qwen/skills/` and global skills at `~/.qwen/skills/`. BMAD previously installed flat files to `.qwen/commands`.
252
+
253
+ - [x] Confirm QwenCoder native skills path is `.qwen/skills/{skill-name}/SKILL.md`
254
+ - [x] Implement native skills output — target_dir `.qwen/skills`, skill_format true, template_type default
255
+ - [x] Add legacy cleanup for `.qwen/commands` (via `legacy_targets`)
256
+ - [x] Test fresh install — skills written to `.qwen/skills/bmad-master/SKILL.md`
257
+ - [x] Test legacy cleanup — legacy commands dir removed
258
+ - [x] Implement/extend automated tests — 6 assertions in test suite 25
259
+ - [ ] **NEEDS MANUAL IDE VERIFICATION** — install QwenCoder and confirm skills appear in UI and can be triggered
260
+ - [ ] Commit
261
+
262
+ ## Rovo Dev
263
+
264
+ Support assumption: full Agent Skills support. Rovo Dev now supports workspace skills at `.rovodev/skills/` and user skills at `~/.rovodev/skills/`. BMAD previously used a custom 257-line installer that wrote `.rovodev/workflows/` and `prompts.yml`.
265
+
266
+ - [x] Confirm Rovo Dev native skills path is `.rovodev/skills/{skill-name}/SKILL.md` (per Atlassian blog)
267
+ - [x] Replace 257-line custom `rovodev.js` with config-driven entry in `platform-codes.yaml`
268
+ - [x] Add legacy cleanup for `.rovodev/workflows` (via `legacy_targets`) and BMAD entries in `prompts.yml` (via `cleanupRovoDevPrompts()` in `_config-driven.js`)
269
+ - [x] Test fresh install — skills written to `.rovodev/skills/bmad-master/SKILL.md`
270
+ - [x] Test legacy cleanup — legacy workflows dir removed, `prompts.yml` BMAD entries stripped while preserving user entries
271
+ - [x] Implement/extend automated tests — 8 assertions in test suite 26
272
+ - [ ] **NEEDS MANUAL IDE VERIFICATION** — install Rovo Dev and confirm skills appear in UI and can be triggered
273
+ - [ ] Commit
274
+
275
+ ## Summary Gates
276
+
277
+ - [x] All full-support BMAD platforms install `SKILL.md` directory-based output
278
+ - [x] No full-support platform still emits BMAD command/workflow/rule files as its primary install format
279
+ - [x] Legacy cleanup paths are defined for every migrated platform
280
+ - [x] Automated coverage exists for config-driven and custom-installer migrations
281
+ - [ ] Installer docs and migration notes updated after code changes land
@@ -50,7 +50,7 @@ platforms:
50
50
  description: "AI development tool"
51
51
 
52
52
  roo:
53
- name: "Roo Cline"
53
+ name: "Roo Code"
54
54
  preferred: false
55
55
  category: ide
56
56
  description: "Enhanced Cline fork"
@@ -2,7 +2,7 @@
2
2
  const assert = require('node:assert');
3
3
  const { z } = require('zod');
4
4
 
5
- const COMMAND_TARGET_KEYS = ['workflow', 'validate-workflow', 'exec', 'action', 'tmpl', 'data'];
5
+ const COMMAND_TARGET_KEYS = ['validate-workflow', 'exec', 'action', 'tmpl', 'data'];
6
6
  const TRIGGER_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
7
7
  const COMPOUND_TRIGGER_PATTERN = /^([A-Z]{1,3}) or fuzzy match on ([a-z0-9]+(?:-[a-z0-9]+)*)$/;
8
8
 
@@ -273,8 +273,6 @@ function buildMenuItemSchema() {
273
273
  .object({
274
274
  trigger: createNonEmptyString('agent.menu[].trigger'),
275
275
  description: createNonEmptyString('agent.menu[].description'),
276
- workflow: createNonEmptyString('agent.menu[].workflow').optional(),
277
- 'workflow-install': createNonEmptyString('agent.menu[].workflow-install').optional(),
278
276
  'validate-workflow': createNonEmptyString('agent.menu[].validate-workflow').optional(),
279
277
  exec: createNonEmptyString('agent.menu[].exec').optional(),
280
278
  action: createNonEmptyString('agent.menu[].action').optional(),
@@ -324,6 +324,8 @@ function extractCsvRefs(filePath, content) {
324
324
  const raw = record['workflow-file'];
325
325
  if (!raw || raw.trim() === '') continue;
326
326
  if (!isResolvable(raw)) continue;
327
+ // skill: prefixed references are resolved by the IDE/CLI, not as file paths
328
+ if (raw.startsWith('skill:')) continue;
327
329
 
328
330
  // Line = header (1) + data row index (0-based) + 1
329
331
  const line = i + 2;
@@ -36,11 +36,28 @@ export default defineConfig({
36
36
  },
37
37
 
38
38
  integrations: [
39
- sitemap(),
39
+ // Exclude custom 404 pages (all locales) from the sitemap — they are
40
+ // treated as normal content docs by Starlight even with disable404Route.
41
+ sitemap({
42
+ filter: (page) => !/\/404(\/|$)/.test(new URL(page).pathname),
43
+ }),
40
44
  starlight({
41
45
  title: 'BMAD Method',
42
46
  tagline: 'AI-driven agile development with specialized agents and workflows that scale from bug fixes to enterprise platforms.',
43
47
 
48
+ // i18n: English as root (no URL prefix), Chinese at /zh-cn/
49
+ defaultLocale: 'root',
50
+ locales: {
51
+ root: {
52
+ label: 'English',
53
+ lang: 'en',
54
+ },
55
+ 'zh-cn': {
56
+ label: '简体中文',
57
+ lang: 'zh-CN',
58
+ },
59
+ },
60
+
44
61
  logo: {
45
62
  light: './public/img/bmad-light.png',
46
63
  dark: './public/img/bmad-dark.png',
@@ -89,25 +106,29 @@ export default defineConfig({
89
106
 
90
107
  // Sidebar configuration (Diataxis structure)
91
108
  sidebar: [
92
- { label: 'Welcome', slug: 'index' },
93
- { label: 'Roadmap', slug: 'roadmap' },
109
+ { label: 'Welcome', translations: { 'zh-CN': '欢迎' }, slug: 'index' },
110
+ { label: 'Roadmap', translations: { 'zh-CN': '路线图' }, slug: 'roadmap' },
94
111
  {
95
112
  label: 'Tutorials',
113
+ translations: { 'zh-CN': '教程' },
96
114
  collapsed: false,
97
115
  autogenerate: { directory: 'tutorials' },
98
116
  },
99
117
  {
100
118
  label: 'How-To Guides',
119
+ translations: { 'zh-CN': '操作指南' },
101
120
  collapsed: true,
102
121
  autogenerate: { directory: 'how-to' },
103
122
  },
104
123
  {
105
124
  label: 'Explanation',
125
+ translations: { 'zh-CN': '概念说明' },
106
126
  collapsed: true,
107
127
  autogenerate: { directory: 'explanation' },
108
128
  },
109
129
  {
110
130
  label: 'Reference',
131
+ translations: { 'zh-CN': '参考' },
111
132
  collapsed: true,
112
133
  autogenerate: { directory: 'reference' },
113
134
  },
@@ -1,6 +1,7 @@
1
1
  import { defineCollection } from 'astro:content';
2
- import { docsSchema } from '@astrojs/starlight/schema';
2
+ import { docsSchema, i18nSchema } from '@astrojs/starlight/schema';
3
3
 
4
4
  export const collections = {
5
5
  docs: defineCollection({ schema: docsSchema() }),
6
+ i18n: defineCollection({ type: 'data', schema: i18nSchema() }),
6
7
  };
@@ -0,0 +1,28 @@
1
+ {
2
+ "skipLink.label": "跳转到内容",
3
+ "search.label": "搜索",
4
+ "search.ctrlKey": "Ctrl",
5
+ "search.cancelLabel": "取消",
6
+ "themeSelect.accessibleLabel": "选择主题",
7
+ "themeSelect.dark": "深色",
8
+ "themeSelect.light": "浅色",
9
+ "themeSelect.auto": "自动",
10
+ "languageSelect.accessibleLabel": "选择语言",
11
+ "menuButton.accessibleLabel": "菜单",
12
+ "sidebarNav.accessibleLabel": "主导航",
13
+ "tableOfContents.onThisPage": "本页内容",
14
+ "tableOfContents.overview": "概述",
15
+ "i18n.untranslatedContent": "此内容尚未提供中文翻译。",
16
+ "page.editLink": "编辑页面",
17
+ "page.lastUpdated": "最后更新:",
18
+ "page.previousLink": "上一页",
19
+ "page.nextLink": "下一页",
20
+ "page.draft": "此内容为草稿,不会包含在正式版本中。",
21
+ "404.text": "页面未找到。请检查 URL 或尝试使用搜索。",
22
+ "aside.note": "注意",
23
+ "aside.tip": "提示",
24
+ "aside.caution": "警告",
25
+ "aside.danger": "危险",
26
+ "fileTree.directory": "目录",
27
+ "builtWithStarlight.label": "使用 Starlight 构建"
28
+ }