bmad-method 6.2.1-next.3 → 6.2.1-next.30

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 (405) hide show
  1. package/AGENTS.md +1 -0
  2. package/package.json +4 -6
  3. package/src/{bmm/agents → bmm-skills/1-analysis}/bmad-agent-analyst/SKILL.md +15 -17
  4. package/src/{bmm/agents → bmm-skills/1-analysis}/bmad-agent-analyst/bmad-skill-manifest.yaml +2 -3
  5. package/src/{bmm/agents → bmm-skills/1-analysis}/bmad-agent-tech-writer/SKILL.md +13 -16
  6. package/src/{bmm/agents → bmm-skills/1-analysis}/bmad-agent-tech-writer/bmad-skill-manifest.yaml +2 -3
  7. package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/SKILL.md +2 -3
  8. package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/SKILL.md +1 -1
  9. package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/SKILL.md +1 -1
  10. package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/SKILL.md +1 -1
  11. package/src/{bmm/agents → bmm-skills/2-plan-workflows}/bmad-agent-pm/SKILL.md +14 -16
  12. package/src/{bmm/agents → bmm-skills/2-plan-workflows}/bmad-agent-pm/bmad-skill-manifest.yaml +2 -3
  13. package/src/{bmm/agents → bmm-skills/2-plan-workflows}/bmad-agent-ux-designer/SKILL.md +9 -16
  14. package/src/{bmm/agents → bmm-skills/2-plan-workflows}/bmad-agent-ux-designer/bmad-skill-manifest.yaml +2 -3
  15. package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-edit-prd/steps-e/step-e-01-discovery.md +1 -1
  16. package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-edit-prd/steps-e/step-e-01b-legacy-conversion.md +1 -1
  17. package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-edit-prd/steps-e/step-e-02-review.md +1 -1
  18. package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-edit-prd/steps-e/step-e-03-edit.md +1 -1
  19. package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-edit-prd/steps-e/step-e-04-complete.md +1 -1
  20. package/src/{bmm/agents → bmm-skills/3-solutioning}/bmad-agent-architect/SKILL.md +10 -16
  21. package/src/{bmm/agents → bmm-skills/3-solutioning}/bmad-agent-architect/bmad-skill-manifest.yaml +2 -3
  22. package/src/{bmm/agents → bmm-skills/4-implementation}/bmad-agent-dev/SKILL.md +10 -16
  23. package/src/{bmm/agents → bmm-skills/4-implementation}/bmad-agent-dev/bmad-skill-manifest.yaml +2 -3
  24. package/src/{bmm/agents → bmm-skills/4-implementation}/bmad-agent-qa/SKILL.md +9 -16
  25. package/src/{bmm/agents → bmm-skills/4-implementation}/bmad-agent-qa/bmad-skill-manifest.yaml +2 -3
  26. package/src/{bmm/agents → bmm-skills/4-implementation}/bmad-agent-quick-flow-solo-dev/SKILL.md +10 -16
  27. package/src/{bmm/agents → bmm-skills/4-implementation}/bmad-agent-quick-flow-solo-dev/bmad-skill-manifest.yaml +2 -3
  28. package/src/{bmm/agents → bmm-skills/4-implementation}/bmad-agent-sm/SKILL.md +12 -16
  29. package/src/{bmm/agents → bmm-skills/4-implementation}/bmad-agent-sm/bmad-skill-manifest.yaml +2 -3
  30. package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-code-review/steps/step-01-gather-context.md +3 -2
  31. package/src/bmm-skills/4-implementation/bmad-code-review/steps/step-02-review.md +34 -0
  32. package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-code-review/steps/step-03-triage.md +7 -8
  33. package/src/bmm-skills/4-implementation/bmad-code-review/steps/step-04-present.md +129 -0
  34. package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-code-review/workflow.md +1 -0
  35. package/src/{bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview → bmm-skills/4-implementation/bmad-quick-dev}/SKILL.md +1 -1
  36. package/src/{bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview → bmm-skills/4-implementation/bmad-quick-dev}/step-01-clarify-and-route.md +12 -13
  37. package/src/{bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview → bmm-skills/4-implementation/bmad-quick-dev}/step-02-plan.md +1 -1
  38. package/src/{bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview → bmm-skills/4-implementation/bmad-quick-dev}/step-03-implement.md +3 -3
  39. package/src/{bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview → bmm-skills/4-implementation/bmad-quick-dev}/step-04-review.md +5 -6
  40. package/src/bmm-skills/4-implementation/bmad-quick-dev/step-05-present.md +63 -0
  41. package/src/bmm-skills/4-implementation/bmad-quick-dev/step-oneshot.md +49 -0
  42. package/src/{bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview → bmm-skills/4-implementation/bmad-quick-dev}/workflow.md +2 -2
  43. package/src/{bmm → bmm-skills}/module-help.csv +3 -5
  44. package/src/{core/skills/bmad-advanced-elicitation/workflow.md → core-skills/bmad-advanced-elicitation/SKILL.md} +3 -1
  45. package/src/{core/skills/bmad-editorial-review-prose/workflow.md → core-skills/bmad-editorial-review-prose/SKILL.md} +5 -0
  46. package/src/{core/skills/bmad-editorial-review-structure/workflow.md → core-skills/bmad-editorial-review-structure/SKILL.md} +5 -0
  47. package/src/{core/skills/bmad-help/workflow.md → core-skills/bmad-help/SKILL.md} +5 -1
  48. package/src/{core/skills/bmad-index-docs/workflow.md → core-skills/bmad-index-docs/SKILL.md} +5 -0
  49. package/src/{core/skills/bmad-review-adversarial-general/workflow.md → core-skills/bmad-review-adversarial-general/SKILL.md} +5 -0
  50. package/src/{core/skills/bmad-review-edge-case-hunter/workflow.md → core-skills/bmad-review-edge-case-hunter/SKILL.md} +5 -0
  51. package/src/{core/skills/bmad-shard-doc/workflow.md → core-skills/bmad-shard-doc/SKILL.md} +5 -0
  52. package/tools/cli/commands/install.js +1 -8
  53. package/tools/cli/installers/lib/core/dependency-resolver.js +11 -11
  54. package/tools/cli/installers/lib/core/installer.js +4 -214
  55. package/tools/cli/installers/lib/core/manifest-generator.js +62 -723
  56. package/tools/cli/installers/lib/core/manifest.js +2 -2
  57. package/tools/cli/installers/lib/custom/handler.js +1 -247
  58. package/tools/cli/installers/lib/ide/_base-ide.js +0 -16
  59. package/tools/cli/installers/lib/ide/_config-driven.js +13 -168
  60. package/tools/cli/installers/lib/ide/manager.js +2 -7
  61. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +0 -1
  62. package/tools/cli/installers/lib/ide/shared/skill-manifest.js +1 -19
  63. package/tools/cli/installers/lib/modules/manager.js +12 -459
  64. package/tools/cli/lib/project-root.js +5 -5
  65. package/tools/cli/lib/ui.js +0 -19
  66. package/tools/skill-validator.md +52 -22
  67. package/tools/validate-skills.js +736 -0
  68. package/src/bmm/agents/bmad-agent-analyst/bmad-manifest.json +0 -44
  69. package/src/bmm/agents/bmad-agent-architect/bmad-manifest.json +0 -20
  70. package/src/bmm/agents/bmad-agent-dev/bmad-manifest.json +0 -20
  71. package/src/bmm/agents/bmad-agent-pm/bmad-manifest.json +0 -44
  72. package/src/bmm/agents/bmad-agent-qa/bmad-manifest.json +0 -14
  73. package/src/bmm/agents/bmad-agent-quick-flow-solo-dev/bmad-manifest.json +0 -32
  74. package/src/bmm/agents/bmad-agent-sm/bmad-manifest.json +0 -32
  75. package/src/bmm/agents/bmad-agent-tech-writer/bmad-manifest.json +0 -38
  76. package/src/bmm/agents/bmad-agent-ux-designer/bmad-manifest.json +0 -14
  77. package/src/bmm/agents/bmad-skill-manifest.yaml +0 -39
  78. package/src/bmm/data/project-context-template.md +0 -26
  79. package/src/bmm/teams/default-party.csv +0 -20
  80. package/src/bmm/teams/team-fullstack.yaml +0 -12
  81. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/SKILL.md +0 -6
  82. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/bmad-skill-manifest.yaml +0 -1
  83. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/product-brief.template.md +0 -10
  84. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-01-init.md +0 -170
  85. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-01b-continue.md +0 -158
  86. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-02-vision.md +0 -193
  87. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-03-users.md +0 -196
  88. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-04-metrics.md +0 -199
  89. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-05-scope.md +0 -213
  90. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/steps/step-06-complete.md +0 -159
  91. package/src/bmm/workflows/1-analysis/bmad-create-product-brief/workflow.md +0 -55
  92. package/src/bmm/workflows/1-analysis/bmad-product-brief-preview/bmad-skill-manifest.yaml +0 -1
  93. package/src/bmm/workflows/1-analysis/research/bmad-domain-research/bmad-skill-manifest.yaml +0 -1
  94. package/src/bmm/workflows/1-analysis/research/bmad-market-research/bmad-skill-manifest.yaml +0 -1
  95. package/src/bmm/workflows/1-analysis/research/bmad-technical-research/bmad-skill-manifest.yaml +0 -1
  96. package/src/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +0 -182
  97. package/src/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +0 -237
  98. package/src/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +0 -249
  99. package/src/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +0 -259
  100. package/src/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +0 -177
  101. package/src/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +0 -476
  102. package/src/bmm/workflows/1-analysis/research/research.template.md +0 -29
  103. package/src/bmm/workflows/2-plan-workflows/bmad-create-ux-design/bmad-skill-manifest.yaml +0 -1
  104. package/src/bmm/workflows/2-plan-workflows/bmad-edit-prd/bmad-skill-manifest.yaml +0 -1
  105. package/src/bmm/workflows/2-plan-workflows/bmad-validate-prd/bmad-skill-manifest.yaml +0 -1
  106. package/src/bmm/workflows/3-solutioning/bmad-check-implementation-readiness/bmad-skill-manifest.yaml +0 -1
  107. package/src/bmm/workflows/3-solutioning/bmad-create-architecture/bmad-skill-manifest.yaml +0 -1
  108. package/src/bmm/workflows/3-solutioning/bmad-create-epics-and-stories/bmad-skill-manifest.yaml +0 -1
  109. package/src/bmm/workflows/4-implementation/bmad-code-review/bmad-skill-manifest.yaml +0 -1
  110. package/src/bmm/workflows/4-implementation/bmad-code-review/steps/step-02-review.md +0 -41
  111. package/src/bmm/workflows/4-implementation/bmad-code-review/steps/step-04-present.md +0 -38
  112. package/src/bmm/workflows/4-implementation/bmad-correct-course/bmad-skill-manifest.yaml +0 -1
  113. package/src/bmm/workflows/4-implementation/bmad-create-story/bmad-skill-manifest.yaml +0 -1
  114. package/src/bmm/workflows/4-implementation/bmad-dev-story/bmad-skill-manifest.yaml +0 -1
  115. package/src/bmm/workflows/4-implementation/bmad-retrospective/bmad-skill-manifest.yaml +0 -1
  116. package/src/bmm/workflows/4-implementation/bmad-sprint-planning/bmad-skill-manifest.yaml +0 -1
  117. package/src/bmm/workflows/4-implementation/bmad-sprint-status/bmad-skill-manifest.yaml +0 -1
  118. package/src/bmm/workflows/bmad-document-project/bmad-skill-manifest.yaml +0 -1
  119. package/src/bmm/workflows/bmad-generate-project-context/bmad-skill-manifest.yaml +0 -1
  120. package/src/bmm/workflows/bmad-qa-generate-e2e-tests/bmad-skill-manifest.yaml +0 -1
  121. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/SKILL.md +0 -6
  122. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/bmad-skill-manifest.yaml +0 -1
  123. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-01-mode-detection.md +0 -169
  124. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-02-context-gathering.md +0 -114
  125. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-03-execute.md +0 -107
  126. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-04-self-check.md +0 -107
  127. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-05-adversarial-review.md +0 -94
  128. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/steps/step-06-resolve-findings.md +0 -144
  129. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev/workflow.md +0 -38
  130. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/bmad-skill-manifest.yaml +0 -1
  131. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/step-05-present.md +0 -17
  132. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-spec/SKILL.md +0 -6
  133. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-spec/bmad-skill-manifest.yaml +0 -1
  134. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-spec/steps/step-01-understand.md +0 -185
  135. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-spec/steps/step-02-investigate.md +0 -140
  136. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-spec/steps/step-03-generate.md +0 -123
  137. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-spec/steps/step-04-review.md +0 -195
  138. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-spec/tech-spec-template.md +0 -74
  139. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-spec/workflow.md +0 -73
  140. package/src/core/skills/bmad-advanced-elicitation/SKILL.md +0 -6
  141. package/src/core/skills/bmad-advanced-elicitation/bmad-skill-manifest.yaml +0 -1
  142. package/src/core/skills/bmad-brainstorming/bmad-skill-manifest.yaml +0 -1
  143. package/src/core/skills/bmad-distillator/bmad-skill-manifest.yaml +0 -15
  144. package/src/core/skills/bmad-editorial-review-prose/SKILL.md +0 -6
  145. package/src/core/skills/bmad-editorial-review-prose/bmad-skill-manifest.yaml +0 -1
  146. package/src/core/skills/bmad-editorial-review-structure/SKILL.md +0 -6
  147. package/src/core/skills/bmad-editorial-review-structure/bmad-skill-manifest.yaml +0 -1
  148. package/src/core/skills/bmad-help/SKILL.md +0 -6
  149. package/src/core/skills/bmad-help/bmad-skill-manifest.yaml +0 -1
  150. package/src/core/skills/bmad-index-docs/SKILL.md +0 -6
  151. package/src/core/skills/bmad-index-docs/bmad-skill-manifest.yaml +0 -1
  152. package/src/core/skills/bmad-init/bmad-skill-manifest.yaml +0 -1
  153. package/src/core/skills/bmad-party-mode/bmad-skill-manifest.yaml +0 -1
  154. package/src/core/skills/bmad-review-adversarial-general/SKILL.md +0 -6
  155. package/src/core/skills/bmad-review-adversarial-general/bmad-skill-manifest.yaml +0 -1
  156. package/src/core/skills/bmad-review-edge-case-hunter/SKILL.md +0 -6
  157. package/src/core/skills/bmad-review-edge-case-hunter/bmad-skill-manifest.yaml +0 -1
  158. package/src/core/skills/bmad-shard-doc/SKILL.md +0 -6
  159. package/src/core/skills/bmad-shard-doc/bmad-skill-manifest.yaml +0 -1
  160. package/src/core/tasks/bmad-create-prd/bmad-skill-manifest.yaml +0 -1
  161. package/src/utility/agent-components/activation-rules.txt +0 -6
  162. package/src/utility/agent-components/activation-steps.txt +0 -14
  163. package/src/utility/agent-components/agent-command-header.md +0 -1
  164. package/src/utility/agent-components/agent.customize.template.yaml +0 -41
  165. package/src/utility/agent-components/handler-action.txt +0 -4
  166. package/src/utility/agent-components/handler-data.txt +0 -5
  167. package/src/utility/agent-components/handler-exec.txt +0 -6
  168. package/src/utility/agent-components/handler-multi.txt +0 -13
  169. package/src/utility/agent-components/handler-tmpl.txt +0 -5
  170. package/src/utility/agent-components/menu-handlers.txt +0 -6
  171. package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +0 -368
  172. package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +0 -179
  173. package/tools/cli/lib/activation-builder.js +0 -165
  174. package/tools/cli/lib/agent/compiler.js +0 -516
  175. package/tools/cli/lib/agent/installer.js +0 -680
  176. package/tools/cli/lib/agent/template-engine.js +0 -152
  177. package/tools/cli/lib/agent-analyzer.js +0 -97
  178. package/tools/cli/lib/agent-party-generator.js +0 -194
  179. package/tools/cli/lib/xml-handler.js +0 -177
  180. package/tools/cli/lib/xml-to-markdown.js +0 -82
  181. package/tools/cli/lib/yaml-xml-builder.js +0 -570
  182. package/tools/schema/agent.js +0 -489
  183. /package/src/{bmm/agents → bmm-skills/1-analysis}/bmad-agent-tech-writer/explain-concept.md +0 -0
  184. /package/src/{bmm/agents → bmm-skills/1-analysis}/bmad-agent-tech-writer/mermaid-gen.md +0 -0
  185. /package/src/{bmm/agents → bmm-skills/1-analysis}/bmad-agent-tech-writer/validate-doc.md +0 -0
  186. /package/src/{bmm/agents → bmm-skills/1-analysis}/bmad-agent-tech-writer/write-document.md +0 -0
  187. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/SKILL.md +0 -0
  188. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/checklist.md +0 -0
  189. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/documentation-requirements.csv +0 -0
  190. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/instructions.md +0 -0
  191. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/templates/deep-dive-template.md +0 -0
  192. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/templates/index-template.md +0 -0
  193. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/templates/project-overview-template.md +0 -0
  194. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/templates/project-scan-report-schema.json +0 -0
  195. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/templates/source-tree-template.md +0 -0
  196. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/workflow.md +0 -0
  197. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/workflows/deep-dive-instructions.md +0 -0
  198. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/workflows/deep-dive-workflow.md +0 -0
  199. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/workflows/full-scan-instructions.md +0 -0
  200. /package/src/{bmm/workflows → bmm-skills/1-analysis}/bmad-document-project/workflows/full-scan-workflow.md +0 -0
  201. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/agents/artifact-analyzer.md +0 -0
  202. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/agents/opportunity-reviewer.md +0 -0
  203. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/agents/skeptic-reviewer.md +0 -0
  204. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/agents/web-researcher.md +0 -0
  205. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/bmad-manifest.json +0 -0
  206. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/prompts/contextual-discovery.md +0 -0
  207. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/prompts/draft-and-review.md +0 -0
  208. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/prompts/finalize.md +0 -0
  209. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/prompts/guided-elicitation.md +0 -0
  210. /package/src/{bmm/workflows/1-analysis/bmad-product-brief-preview → bmm-skills/1-analysis/bmad-product-brief}/resources/brief-template.md +0 -0
  211. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/domain-steps/step-01-init.md +0 -0
  212. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/domain-steps/step-02-domain-analysis.md +0 -0
  213. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/domain-steps/step-03-competitive-landscape.md +0 -0
  214. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/domain-steps/step-04-regulatory-focus.md +0 -0
  215. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/domain-steps/step-05-technical-trends.md +0 -0
  216. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/domain-steps/step-06-research-synthesis.md +0 -0
  217. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/research.template.md +0 -0
  218. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-domain-research/workflow.md +0 -0
  219. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/research.template.md +0 -0
  220. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/steps/step-01-init.md +0 -0
  221. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/steps/step-02-customer-behavior.md +0 -0
  222. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/steps/step-03-customer-pain-points.md +0 -0
  223. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/steps/step-04-customer-decisions.md +0 -0
  224. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/steps/step-05-competitive-analysis.md +0 -0
  225. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/steps/step-06-research-completion.md +0 -0
  226. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-market-research/workflow.md +0 -0
  227. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/research.template.md +0 -0
  228. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/technical-steps/step-01-init.md +0 -0
  229. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/technical-steps/step-02-technical-overview.md +0 -0
  230. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/technical-steps/step-03-integration-patterns.md +0 -0
  231. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/technical-steps/step-04-architectural-patterns.md +0 -0
  232. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/technical-steps/step-05-implementation-research.md +0 -0
  233. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/technical-steps/step-06-research-synthesis.md +0 -0
  234. /package/src/{bmm/workflows → bmm-skills}/1-analysis/research/bmad-technical-research/workflow.md +0 -0
  235. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/SKILL.md +0 -0
  236. /package/src/{bmm/workflows/2-plan-workflows/bmad-validate-prd → bmm-skills/2-plan-workflows/bmad-create-prd}/data/domain-complexity.csv +0 -0
  237. /package/src/{bmm/workflows/2-plan-workflows/bmad-validate-prd → bmm-skills/2-plan-workflows/bmad-create-prd}/data/prd-purpose.md +0 -0
  238. /package/src/{bmm/workflows/2-plan-workflows/bmad-validate-prd → bmm-skills/2-plan-workflows/bmad-create-prd}/data/project-types.csv +0 -0
  239. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-01-init.md +0 -0
  240. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-01b-continue.md +0 -0
  241. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-02-discovery.md +0 -0
  242. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-02b-vision.md +0 -0
  243. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-02c-executive-summary.md +0 -0
  244. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-03-success.md +0 -0
  245. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-04-journeys.md +0 -0
  246. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-05-domain.md +0 -0
  247. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-06-innovation.md +0 -0
  248. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-07-project-type.md +0 -0
  249. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-08-scoping.md +0 -0
  250. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-09-functional.md +0 -0
  251. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-10-nonfunctional.md +0 -0
  252. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-11-polish.md +0 -0
  253. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/steps-c/step-12-complete.md +0 -0
  254. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/templates/prd-template.md +0 -0
  255. /package/src/{core/tasks → bmm-skills/2-plan-workflows}/bmad-create-prd/workflow.md +0 -0
  256. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/SKILL.md +0 -0
  257. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-01-init.md +0 -0
  258. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-01b-continue.md +0 -0
  259. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-02-discovery.md +0 -0
  260. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-03-core-experience.md +0 -0
  261. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-04-emotional-response.md +0 -0
  262. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-05-inspiration.md +0 -0
  263. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-06-design-system.md +0 -0
  264. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-07-defining-experience.md +0 -0
  265. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-08-visual-foundation.md +0 -0
  266. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-09-design-directions.md +0 -0
  267. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-10-user-journeys.md +0 -0
  268. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-11-component-strategy.md +0 -0
  269. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-12-ux-patterns.md +0 -0
  270. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-13-responsive-accessibility.md +0 -0
  271. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/steps/step-14-complete.md +0 -0
  272. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/ux-design-template.md +0 -0
  273. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-create-ux-design/workflow.md +0 -0
  274. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-edit-prd/SKILL.md +0 -0
  275. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-edit-prd/workflow.md +0 -0
  276. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/SKILL.md +0 -0
  277. /package/src/{bmm/workflows/2-plan-workflows/create-prd → bmm-skills/2-plan-workflows/bmad-validate-prd}/data/domain-complexity.csv +0 -0
  278. /package/src/{bmm/workflows/2-plan-workflows/create-prd → bmm-skills/2-plan-workflows/bmad-validate-prd}/data/prd-purpose.md +0 -0
  279. /package/src/{bmm/workflows/2-plan-workflows/create-prd → bmm-skills/2-plan-workflows/bmad-validate-prd}/data/project-types.csv +0 -0
  280. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-01-discovery.md +0 -0
  281. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-02-format-detection.md +0 -0
  282. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-02b-parity-check.md +0 -0
  283. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-03-density-validation.md +0 -0
  284. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -0
  285. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-05-measurability-validation.md +0 -0
  286. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-06-traceability-validation.md +0 -0
  287. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -0
  288. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -0
  289. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-09-project-type-validation.md +0 -0
  290. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-10-smart-validation.md +0 -0
  291. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -0
  292. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-12-completeness-validation.md +0 -0
  293. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/steps-v/step-v-13-report-complete.md +0 -0
  294. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/bmad-validate-prd/workflow.md +0 -0
  295. /package/src/{core/tasks/bmad-create-prd → bmm-skills/2-plan-workflows/create-prd}/data/domain-complexity.csv +0 -0
  296. /package/src/{core/tasks/bmad-create-prd → bmm-skills/2-plan-workflows/create-prd}/data/prd-purpose.md +0 -0
  297. /package/src/{core/tasks/bmad-create-prd → bmm-skills/2-plan-workflows/create-prd}/data/project-types.csv +0 -0
  298. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +0 -0
  299. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +0 -0
  300. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +0 -0
  301. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +0 -0
  302. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -0
  303. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +0 -0
  304. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +0 -0
  305. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -0
  306. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -0
  307. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +0 -0
  308. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +0 -0
  309. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -0
  310. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +0 -0
  311. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +0 -0
  312. /package/src/{bmm/workflows → bmm-skills}/2-plan-workflows/create-prd/workflow-validate-prd.md +0 -0
  313. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/SKILL.md +0 -0
  314. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/steps/step-01-document-discovery.md +0 -0
  315. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/steps/step-02-prd-analysis.md +0 -0
  316. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/steps/step-03-epic-coverage-validation.md +0 -0
  317. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/steps/step-04-ux-alignment.md +0 -0
  318. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/steps/step-05-epic-quality-review.md +0 -0
  319. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/steps/step-06-final-assessment.md +0 -0
  320. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/templates/readiness-report-template.md +0 -0
  321. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-check-implementation-readiness/workflow.md +0 -0
  322. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/SKILL.md +0 -0
  323. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/architecture-decision-template.md +0 -0
  324. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/data/domain-complexity.csv +0 -0
  325. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/data/project-types.csv +0 -0
  326. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-01-init.md +0 -0
  327. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-01b-continue.md +0 -0
  328. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-02-context.md +0 -0
  329. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-03-starter.md +0 -0
  330. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-04-decisions.md +0 -0
  331. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-05-patterns.md +0 -0
  332. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-06-structure.md +0 -0
  333. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-07-validation.md +0 -0
  334. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/steps/step-08-complete.md +0 -0
  335. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-architecture/workflow.md +0 -0
  336. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-epics-and-stories/SKILL.md +0 -0
  337. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-epics-and-stories/steps/step-01-validate-prerequisites.md +0 -0
  338. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-epics-and-stories/steps/step-02-design-epics.md +0 -0
  339. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-epics-and-stories/steps/step-03-create-stories.md +0 -0
  340. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-epics-and-stories/steps/step-04-final-validation.md +0 -0
  341. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-epics-and-stories/templates/epics-template.md +0 -0
  342. /package/src/{bmm/workflows → bmm-skills}/3-solutioning/bmad-create-epics-and-stories/workflow.md +0 -0
  343. /package/src/{bmm/workflows → bmm-skills/3-solutioning}/bmad-generate-project-context/SKILL.md +0 -0
  344. /package/src/{bmm/workflows → bmm-skills/3-solutioning}/bmad-generate-project-context/project-context-template.md +0 -0
  345. /package/src/{bmm/workflows → bmm-skills/3-solutioning}/bmad-generate-project-context/steps/step-01-discover.md +0 -0
  346. /package/src/{bmm/workflows → bmm-skills/3-solutioning}/bmad-generate-project-context/steps/step-02-generate.md +0 -0
  347. /package/src/{bmm/workflows → bmm-skills/3-solutioning}/bmad-generate-project-context/steps/step-03-complete.md +0 -0
  348. /package/src/{bmm/workflows → bmm-skills/3-solutioning}/bmad-generate-project-context/workflow.md +0 -0
  349. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-code-review/SKILL.md +0 -0
  350. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-correct-course/SKILL.md +0 -0
  351. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-correct-course/checklist.md +0 -0
  352. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-correct-course/workflow.md +0 -0
  353. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-create-story/SKILL.md +0 -0
  354. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-create-story/checklist.md +0 -0
  355. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-create-story/discover-inputs.md +0 -0
  356. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-create-story/template.md +0 -0
  357. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-create-story/workflow.md +0 -0
  358. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-dev-story/SKILL.md +0 -0
  359. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-dev-story/checklist.md +0 -0
  360. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-dev-story/workflow.md +0 -0
  361. /package/src/{bmm/workflows → bmm-skills/4-implementation}/bmad-qa-generate-e2e-tests/SKILL.md +0 -0
  362. /package/src/{bmm/workflows → bmm-skills/4-implementation}/bmad-qa-generate-e2e-tests/checklist.md +0 -0
  363. /package/src/{bmm/workflows → bmm-skills/4-implementation}/bmad-qa-generate-e2e-tests/workflow.md +0 -0
  364. /package/src/{bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview → bmm-skills/4-implementation/bmad-quick-dev}/tech-spec-template.md +0 -0
  365. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-retrospective/SKILL.md +0 -0
  366. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-retrospective/workflow.md +0 -0
  367. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-sprint-planning/SKILL.md +0 -0
  368. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-sprint-planning/checklist.md +0 -0
  369. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-sprint-planning/sprint-status-template.yaml +0 -0
  370. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-sprint-planning/workflow.md +0 -0
  371. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-sprint-status/SKILL.md +0 -0
  372. /package/src/{bmm/workflows → bmm-skills}/4-implementation/bmad-sprint-status/workflow.md +0 -0
  373. /package/src/{bmm → bmm-skills}/module.yaml +0 -0
  374. /package/src/{core/skills → core-skills}/bmad-advanced-elicitation/methods.csv +0 -0
  375. /package/src/{core/skills → core-skills}/bmad-brainstorming/SKILL.md +0 -0
  376. /package/src/{core/skills → core-skills}/bmad-brainstorming/brain-methods.csv +0 -0
  377. /package/src/{core/skills → core-skills}/bmad-brainstorming/steps/step-01-session-setup.md +0 -0
  378. /package/src/{core/skills → core-skills}/bmad-brainstorming/steps/step-01b-continue.md +0 -0
  379. /package/src/{core/skills → core-skills}/bmad-brainstorming/steps/step-02a-user-selected.md +0 -0
  380. /package/src/{core/skills → core-skills}/bmad-brainstorming/steps/step-02b-ai-recommended.md +0 -0
  381. /package/src/{core/skills → core-skills}/bmad-brainstorming/steps/step-02c-random-selection.md +0 -0
  382. /package/src/{core/skills → core-skills}/bmad-brainstorming/steps/step-02d-progressive-flow.md +0 -0
  383. /package/src/{core/skills → core-skills}/bmad-brainstorming/steps/step-03-technique-execution.md +0 -0
  384. /package/src/{core/skills → core-skills}/bmad-brainstorming/steps/step-04-idea-organization.md +0 -0
  385. /package/src/{core/skills → core-skills}/bmad-brainstorming/template.md +0 -0
  386. /package/src/{core/skills → core-skills}/bmad-brainstorming/workflow.md +0 -0
  387. /package/src/{core/skills → core-skills}/bmad-distillator/SKILL.md +0 -0
  388. /package/src/{core/skills → core-skills}/bmad-distillator/agents/distillate-compressor.md +0 -0
  389. /package/src/{core/skills → core-skills}/bmad-distillator/agents/round-trip-reconstructor.md +0 -0
  390. /package/src/{core/skills → core-skills}/bmad-distillator/resources/compression-rules.md +0 -0
  391. /package/src/{core/skills → core-skills}/bmad-distillator/resources/distillate-format-reference.md +0 -0
  392. /package/src/{core/skills → core-skills}/bmad-distillator/resources/splitting-strategy.md +0 -0
  393. /package/src/{core/skills → core-skills}/bmad-distillator/scripts/analyze_sources.py +0 -0
  394. /package/src/{core/skills → core-skills}/bmad-distillator/scripts/tests/test_analyze_sources.py +0 -0
  395. /package/src/{core/skills → core-skills}/bmad-init/SKILL.md +0 -0
  396. /package/src/{core/skills → core-skills}/bmad-init/resources/core-module.yaml +0 -0
  397. /package/src/{core/skills → core-skills}/bmad-init/scripts/bmad_init.py +0 -0
  398. /package/src/{core/skills → core-skills}/bmad-init/scripts/tests/test_bmad_init.py +0 -0
  399. /package/src/{core/skills → core-skills}/bmad-party-mode/SKILL.md +0 -0
  400. /package/src/{core/skills → core-skills}/bmad-party-mode/steps/step-01-agent-loading.md +0 -0
  401. /package/src/{core/skills → core-skills}/bmad-party-mode/steps/step-02-discussion-orchestration.md +0 -0
  402. /package/src/{core/skills → core-skills}/bmad-party-mode/steps/step-03-graceful-exit.md +0 -0
  403. /package/src/{core/skills → core-skills}/bmad-party-mode/workflow.md +0 -0
  404. /package/src/{core → core-skills}/module-help.csv +0 -0
  405. /package/src/{core → core-skills}/module.yaml +0 -0
@@ -764,10 +764,10 @@ class Manifest {
764
764
  const configs = {};
765
765
 
766
766
  for (const moduleName of modules) {
767
- // Handle core module differently - it's in src/core not src/modules/core
767
+ // Handle core module differently - it's in src/core-skills not src/modules/core
768
768
  const configPath =
769
769
  moduleName === 'core'
770
- ? path.join(process.cwd(), 'src', 'core', 'config.yaml')
770
+ ? path.join(process.cwd(), 'src', 'core-skills', 'config.yaml')
771
771
  : path.join(process.cwd(), 'src', 'modules', moduleName, 'config.yaml');
772
772
 
773
773
  try {
@@ -2,19 +2,11 @@ const path = require('node:path');
2
2
  const fs = require('fs-extra');
3
3
  const yaml = require('yaml');
4
4
  const prompts = require('../../../lib/prompts');
5
- const { FileOps } = require('../../../lib/file-ops');
6
- const { XmlHandler } = require('../../../lib/xml-handler');
7
-
8
5
  /**
9
6
  * Handler for custom content (custom.yaml)
10
- * Installs custom agents and workflows without requiring a full module structure
7
+ * Discovers custom agents and workflows in the project
11
8
  */
12
9
  class CustomHandler {
13
- constructor() {
14
- this.fileOps = new FileOps();
15
- this.xmlHandler = new XmlHandler();
16
- }
17
-
18
10
  /**
19
11
  * Find all custom.yaml files in the project
20
12
  * @param {string} projectRoot - Project root directory
@@ -115,244 +107,6 @@ class CustomHandler {
115
107
  return null;
116
108
  }
117
109
  }
118
-
119
- /**
120
- * Install custom content
121
- * @param {string} customPath - Path to custom content directory
122
- * @param {string} bmadDir - Target bmad directory
123
- * @param {Object} config - Configuration from custom.yaml
124
- * @param {Function} fileTrackingCallback - Optional callback to track installed files
125
- * @returns {Object} Installation result
126
- */
127
- async install(customPath, bmadDir, config, fileTrackingCallback = null) {
128
- const results = {
129
- agentsInstalled: 0,
130
- workflowsInstalled: 0,
131
- filesCopied: 0,
132
- preserved: 0,
133
- errors: [],
134
- };
135
-
136
- try {
137
- // Create custom directories in bmad
138
- const bmadCustomDir = path.join(bmadDir, 'custom');
139
- const bmadAgentsDir = path.join(bmadCustomDir, 'agents');
140
- const bmadWorkflowsDir = path.join(bmadCustomDir, 'workflows');
141
-
142
- await fs.ensureDir(bmadCustomDir);
143
- await fs.ensureDir(bmadAgentsDir);
144
- await fs.ensureDir(bmadWorkflowsDir);
145
-
146
- // Process agents - compile and copy agents
147
- const agentsDir = path.join(customPath, 'agents');
148
- if (await fs.pathExists(agentsDir)) {
149
- await this.compileAndCopyAgents(agentsDir, bmadAgentsDir, bmadDir, config, fileTrackingCallback, results);
150
-
151
- // Count agent files
152
- const agentFiles = await this.findFilesRecursively(agentsDir, ['.agent.yaml', '.md']);
153
- results.agentsInstalled = agentFiles.length;
154
- }
155
-
156
- // Process workflows - copy entire workflows directory structure
157
- const workflowsDir = path.join(customPath, 'workflows');
158
- if (await fs.pathExists(workflowsDir)) {
159
- await this.copyDirectory(workflowsDir, bmadWorkflowsDir, results, fileTrackingCallback, config);
160
-
161
- // Count workflow files
162
- const workflowFiles = await this.findFilesRecursively(workflowsDir, ['.md']);
163
- results.workflowsInstalled = workflowFiles.length;
164
- }
165
-
166
- // Process any additional files at root
167
- const entries = await fs.readdir(customPath, { withFileTypes: true });
168
- for (const entry of entries) {
169
- if (entry.isFile() && entry.name !== 'custom.yaml' && !entry.name.startsWith('.') && !entry.name.endsWith('.md')) {
170
- // Skip .md files at root as they're likely docs
171
- const sourcePath = path.join(customPath, entry.name);
172
- const targetPath = path.join(bmadCustomDir, entry.name);
173
-
174
- try {
175
- // Check if file already exists
176
- if (await fs.pathExists(targetPath)) {
177
- // File already exists, preserve it
178
- results.preserved = (results.preserved || 0) + 1;
179
- } else {
180
- await fs.copy(sourcePath, targetPath);
181
- results.filesCopied++;
182
-
183
- if (fileTrackingCallback) {
184
- fileTrackingCallback(targetPath);
185
- }
186
- }
187
- } catch (error) {
188
- results.errors.push(`Failed to copy file ${entry.name}: ${error.message}`);
189
- }
190
- }
191
- }
192
- } catch (error) {
193
- results.errors.push(`Installation failed: ${error.message}`);
194
- }
195
-
196
- return results;
197
- }
198
-
199
- /**
200
- * Find all files with specific extensions recursively
201
- * @param {string} dir - Directory to search
202
- * @param {Array} extensions - File extensions to match
203
- * @returns {Array} List of matching files
204
- */
205
- async findFilesRecursively(dir, extensions) {
206
- const files = [];
207
-
208
- async function search(currentDir) {
209
- const entries = await fs.readdir(currentDir, { withFileTypes: true });
210
-
211
- for (const entry of entries) {
212
- const fullPath = path.join(currentDir, entry.name);
213
-
214
- if (entry.isDirectory()) {
215
- await search(fullPath);
216
- } else if (extensions.some((ext) => entry.name.endsWith(ext))) {
217
- files.push(fullPath);
218
- }
219
- }
220
- }
221
-
222
- await search(dir);
223
- return files;
224
- }
225
-
226
- /**
227
- * Recursively copy a directory
228
- * @param {string} sourceDir - Source directory
229
- * @param {string} targetDir - Target directory
230
- * @param {Object} results - Results object to update
231
- * @param {Function} fileTrackingCallback - Optional callback
232
- * @param {Object} config - Configuration for placeholder replacement
233
- */
234
- async copyDirectory(sourceDir, targetDir, results, fileTrackingCallback, config) {
235
- await fs.ensureDir(targetDir);
236
- const entries = await fs.readdir(sourceDir, { withFileTypes: true });
237
-
238
- for (const entry of entries) {
239
- const sourcePath = path.join(sourceDir, entry.name);
240
- const targetPath = path.join(targetDir, entry.name);
241
-
242
- if (entry.isDirectory()) {
243
- await this.copyDirectory(sourcePath, targetPath, results, fileTrackingCallback, config);
244
- } else {
245
- try {
246
- // Check if file already exists
247
- if (await fs.pathExists(targetPath)) {
248
- // File already exists, preserve it
249
- results.preserved = (results.preserved || 0) + 1;
250
- } else {
251
- // Copy with placeholder replacement for text files
252
- const textExtensions = ['.md', '.yaml', '.yml', '.txt', '.json'];
253
- if (textExtensions.some((ext) => entry.name.endsWith(ext))) {
254
- // Read source content
255
- let content = await fs.readFile(sourcePath, 'utf8');
256
-
257
- // Replace placeholders
258
- content = content.replaceAll('{user_name}', config.user_name || 'User');
259
- content = content.replaceAll('{communication_language}', config.communication_language || 'English');
260
- content = content.replaceAll('{output_folder}', config.output_folder || 'docs');
261
-
262
- // Write to target
263
- await fs.ensureDir(path.dirname(targetPath));
264
- await fs.writeFile(targetPath, content, 'utf8');
265
- } else {
266
- // Copy binary files as-is
267
- await fs.copy(sourcePath, targetPath);
268
- }
269
-
270
- results.filesCopied++;
271
- if (entry.name.endsWith('.md')) {
272
- results.workflowsInstalled++;
273
- }
274
- if (fileTrackingCallback) {
275
- fileTrackingCallback(targetPath);
276
- }
277
- }
278
- } catch (error) {
279
- results.errors.push(`Failed to copy ${entry.name}: ${error.message}`);
280
- }
281
- }
282
- }
283
- }
284
-
285
- /**
286
- * Compile .agent.yaml files to .md format and handle sidecars
287
- * @param {string} sourceAgentsPath - Source agents directory
288
- * @param {string} targetAgentsPath - Target agents directory
289
- * @param {string} bmadDir - BMAD installation directory
290
- * @param {Object} config - Configuration for placeholder replacement
291
- * @param {Function} fileTrackingCallback - Optional callback to track installed files
292
- * @param {Object} results - Results object to update
293
- */
294
- async compileAndCopyAgents(sourceAgentsPath, targetAgentsPath, bmadDir, config, fileTrackingCallback, results) {
295
- // Get all .agent.yaml files recursively
296
- const agentFiles = await this.findFilesRecursively(sourceAgentsPath, ['.agent.yaml']);
297
-
298
- for (const agentFile of agentFiles) {
299
- const relativePath = path.relative(sourceAgentsPath, agentFile).split(path.sep).join('/');
300
- const targetDir = path.join(targetAgentsPath, path.dirname(relativePath));
301
-
302
- await fs.ensureDir(targetDir);
303
-
304
- const agentName = path.basename(agentFile, '.agent.yaml');
305
- const targetMdPath = path.join(targetDir, `${agentName}.md`);
306
- // Use the actual bmadDir if available (for when installing to temp dir)
307
- const actualBmadDir = config._bmadDir || bmadDir;
308
- const customizePath = path.join(actualBmadDir, '_config', 'agents', `custom-${agentName}.customize.yaml`);
309
-
310
- // Read and compile the YAML
311
- try {
312
- const yamlContent = await fs.readFile(agentFile, 'utf8');
313
- const { compileAgent } = require('../../../lib/agent/compiler');
314
-
315
- // Create customize template if it doesn't exist
316
- if (!(await fs.pathExists(customizePath))) {
317
- const { getSourcePath } = require('../../../lib/project-root');
318
- const genericTemplatePath = getSourcePath('utility', 'agent-components', 'agent.customize.template.yaml');
319
- if (await fs.pathExists(genericTemplatePath)) {
320
- let templateContent = await fs.readFile(genericTemplatePath, 'utf8');
321
- await fs.writeFile(customizePath, templateContent, 'utf8');
322
- // Only show customize creation in verbose mode
323
- if (process.env.BMAD_VERBOSE_INSTALL === 'true') {
324
- await prompts.log.message(' Created customize: custom-' + agentName + '.customize.yaml');
325
- }
326
- }
327
- }
328
-
329
- // Compile the agent
330
- const { xml } = compileAgent(yamlContent, {}, agentName, relativePath, { config });
331
-
332
- // Replace placeholders in the compiled content
333
- let processedXml = xml;
334
- processedXml = processedXml.replaceAll('{user_name}', config.user_name || 'User');
335
- processedXml = processedXml.replaceAll('{communication_language}', config.communication_language || 'English');
336
- processedXml = processedXml.replaceAll('{output_folder}', config.output_folder || 'docs');
337
-
338
- // Write the compiled MD file
339
- await fs.writeFile(targetMdPath, processedXml, 'utf8');
340
-
341
- // Track the file
342
- if (fileTrackingCallback) {
343
- fileTrackingCallback(targetMdPath);
344
- }
345
-
346
- // Only show compilation details in verbose mode
347
- if (process.env.BMAD_VERBOSE_INSTALL === 'true') {
348
- await prompts.log.message(' Compiled agent: ' + agentName + ' -> ' + path.relative(targetAgentsPath, targetMdPath));
349
- }
350
- } catch (error) {
351
- await prompts.log.warn(' Failed to compile agent ' + agentName + ': ' + error.message);
352
- results.errors.push(`Failed to compile agent ${agentName}: ${error.message}`);
353
- }
354
- }
355
- }
356
110
  }
357
111
 
358
112
  module.exports = { CustomHandler };
@@ -1,6 +1,5 @@
1
1
  const path = require('node:path');
2
2
  const fs = require('fs-extra');
3
- const { XmlHandler } = require('../../../lib/xml-handler');
4
3
  const prompts = require('../../../lib/prompts');
5
4
  const { getSourcePath } = require('../../../lib/project-root');
6
5
  const { BMAD_FOLDER_NAME } = require('./shared/path-utils');
@@ -18,7 +17,6 @@ class BaseIdeSetup {
18
17
  this.rulesDir = null; // Override in subclasses
19
18
  this.configFile = null; // Override in subclasses when detection is file-based
20
19
  this.detectionPaths = []; // Additional paths that indicate the IDE is configured
21
- this.xmlHandler = new XmlHandler();
22
20
  this.bmadFolderName = BMAD_FOLDER_NAME; // Default, can be overridden
23
21
  }
24
22
 
@@ -30,15 +28,6 @@ class BaseIdeSetup {
30
28
  this.bmadFolderName = bmadFolderName;
31
29
  }
32
30
 
33
- /**
34
- * Get the agent command activation header from the central template
35
- * @returns {string} The activation header text
36
- */
37
- async getAgentCommandHeader() {
38
- const headerPath = getSourcePath('utility', 'agent-components', 'agent-command-header.md');
39
- return await fs.readFile(headerPath, 'utf8');
40
- }
41
-
42
31
  /**
43
32
  * Main setup method - must be implemented by subclasses
44
33
  * @param {string} projectDir - Project directory
@@ -511,11 +500,6 @@ class BaseIdeSetup {
511
500
  // Replace placeholders
512
501
  let processed = content;
513
502
 
514
- // Inject activation block for agent files FIRST (before replacements)
515
- if (metadata.name && content.includes('<agent')) {
516
- processed = this.xmlHandler.injectActivationSimple(processed, metadata);
517
- }
518
-
519
503
  // Only replace {project-root} if a specific projectDir is provided
520
504
  // Otherwise leave the placeholder intact
521
505
  // Note: Don't add trailing slash - paths in source include leading slash
@@ -4,9 +4,6 @@ const fs = require('fs-extra');
4
4
  const yaml = require('yaml');
5
5
  const { BaseIdeSetup } = require('./_base-ide');
6
6
  const prompts = require('../../../lib/prompts');
7
- const { AgentCommandGenerator } = require('./shared/agent-command-generator');
8
- const { WorkflowCommandGenerator } = require('./shared/workflow-command-generator');
9
- const { TaskToolCommandGenerator } = require('./shared/task-tool-command-generator');
10
7
  const csv = require('csv-parse/sync');
11
8
 
12
9
  /**
@@ -115,53 +112,20 @@ class ConfigDrivenIdeSetup extends BaseIdeSetup {
115
112
  * @returns {Promise<Object>} Installation result
116
113
  */
117
114
  async installToTarget(projectDir, bmadDir, config, options) {
118
- const { target_dir, template_type, artifact_types } = config;
115
+ const { target_dir } = config;
119
116
 
120
- // Skip targets with explicitly empty artifact_types and no verbatim skills
121
- // This prevents creating empty directories when no artifacts will be written
122
- const skipStandardArtifacts = Array.isArray(artifact_types) && artifact_types.length === 0;
123
- if (skipStandardArtifacts && !config.skill_format) {
124
- return { success: true, results: { agents: 0, workflows: 0, tasks: 0, tools: 0, skills: 0 } };
117
+ if (!config.skill_format) {
118
+ return { success: false, reason: 'missing-skill-format', error: 'Installer config missing skill_format — cannot install skills' };
125
119
  }
126
120
 
127
121
  const targetPath = path.join(projectDir, target_dir);
128
122
  await this.ensureDir(targetPath);
129
123
 
130
- const selectedModules = options.selectedModules || [];
131
- const results = { agents: 0, workflows: 0, tasks: 0, tools: 0, skills: 0 };
132
- this.skillWriteTracker = config.skill_format ? new Set() : null;
133
-
134
- // Install standard artifacts (agents, workflows, tasks, tools)
135
- if (!skipStandardArtifacts) {
136
- // Install agents
137
- if (!artifact_types || artifact_types.includes('agents')) {
138
- const agentGen = new AgentCommandGenerator(this.bmadFolderName);
139
- const { artifacts } = await agentGen.collectAgentArtifacts(bmadDir, selectedModules);
140
- results.agents = await this.writeAgentArtifacts(targetPath, artifacts, template_type, config);
141
- }
142
-
143
- // Install workflows
144
- if (!artifact_types || artifact_types.includes('workflows')) {
145
- const workflowGen = new WorkflowCommandGenerator(this.bmadFolderName);
146
- const { artifacts } = await workflowGen.collectWorkflowArtifacts(bmadDir);
147
- results.workflows = await this.writeWorkflowArtifacts(targetPath, artifacts, template_type, config);
148
- }
149
-
150
- // Install tasks and tools using template system (supports TOML for Gemini, MD for others)
151
- if (!artifact_types || artifact_types.includes('tasks') || artifact_types.includes('tools')) {
152
- const taskToolGen = new TaskToolCommandGenerator(this.bmadFolderName);
153
- const { artifacts } = await taskToolGen.collectTaskToolArtifacts(bmadDir);
154
- const taskToolResult = await this.writeTaskToolArtifacts(targetPath, artifacts, template_type, config);
155
- results.tasks = taskToolResult.tasks || 0;
156
- results.tools = taskToolResult.tools || 0;
157
- }
158
- }
124
+ this.skillWriteTracker = new Set();
125
+ const results = { skills: 0 };
159
126
 
160
- // Install verbatim skills (type: skill)
161
- if (config.skill_format) {
162
- results.skills = await this.installVerbatimSkills(projectDir, bmadDir, targetPath, config);
163
- results.skillDirectories = this.skillWriteTracker ? this.skillWriteTracker.size : 0;
164
- }
127
+ results.skills = await this.installVerbatimSkills(projectDir, bmadDir, targetPath, config);
128
+ results.skillDirectories = this.skillWriteTracker.size;
165
129
 
166
130
  await this.printSummary(results, target_dir, options);
167
131
  this.skillWriteTracker = null;
@@ -177,15 +141,11 @@ class ConfigDrivenIdeSetup extends BaseIdeSetup {
177
141
  * @returns {Promise<Object>} Installation result
178
142
  */
179
143
  async installToMultipleTargets(projectDir, bmadDir, targets, options) {
180
- const allResults = { agents: 0, workflows: 0, tasks: 0, tools: 0, skills: 0 };
144
+ const allResults = { skills: 0 };
181
145
 
182
146
  for (const target of targets) {
183
147
  const result = await this.installToTarget(projectDir, bmadDir, target, options);
184
148
  if (result.success) {
185
- allResults.agents += result.results.agents || 0;
186
- allResults.workflows += result.results.workflows || 0;
187
- allResults.tasks += result.results.tasks || 0;
188
- allResults.tools += result.results.tools || 0;
189
149
  allResults.skills += result.results.skills || 0;
190
150
  }
191
151
  }
@@ -193,118 +153,6 @@ class ConfigDrivenIdeSetup extends BaseIdeSetup {
193
153
  return { success: true, results: allResults };
194
154
  }
195
155
 
196
- /**
197
- * Write agent artifacts to target directory
198
- * @param {string} targetPath - Target directory path
199
- * @param {Array} artifacts - Agent artifacts
200
- * @param {string} templateType - Template type to use
201
- * @param {Object} config - Installation configuration
202
- * @returns {Promise<number>} Count of artifacts written
203
- */
204
- async writeAgentArtifacts(targetPath, artifacts, templateType, config = {}) {
205
- // Try to load platform-specific template, fall back to default-agent
206
- const { content: template, extension } = await this.loadTemplate(templateType, 'agent', config, 'default-agent');
207
- let count = 0;
208
-
209
- for (const artifact of artifacts) {
210
- const content = this.renderTemplate(template, artifact);
211
- const filename = this.generateFilename(artifact, 'agent', extension);
212
-
213
- if (config.skill_format) {
214
- await this.writeSkillFile(targetPath, artifact, content);
215
- } else {
216
- const filePath = path.join(targetPath, filename);
217
- await this.writeFile(filePath, content);
218
- }
219
- count++;
220
- }
221
-
222
- return count;
223
- }
224
-
225
- /**
226
- * Write workflow artifacts to target directory
227
- * @param {string} targetPath - Target directory path
228
- * @param {Array} artifacts - Workflow artifacts
229
- * @param {string} templateType - Template type to use
230
- * @param {Object} config - Installation configuration
231
- * @returns {Promise<number>} Count of artifacts written
232
- */
233
- async writeWorkflowArtifacts(targetPath, artifacts, templateType, config = {}) {
234
- let count = 0;
235
-
236
- for (const artifact of artifacts) {
237
- if (artifact.type === 'workflow-command') {
238
- const workflowTemplateType = config.md_workflow_template || `${templateType}-workflow`;
239
- const { content: template, extension } = await this.loadTemplate(workflowTemplateType, '', config, 'default-workflow');
240
- const content = this.renderTemplate(template, artifact);
241
- const filename = this.generateFilename(artifact, 'workflow', extension);
242
-
243
- if (config.skill_format) {
244
- await this.writeSkillFile(targetPath, artifact, content);
245
- } else {
246
- const filePath = path.join(targetPath, filename);
247
- await this.writeFile(filePath, content);
248
- }
249
- count++;
250
- }
251
- }
252
-
253
- return count;
254
- }
255
-
256
- /**
257
- * Write task/tool artifacts to target directory using templates
258
- * @param {string} targetPath - Target directory path
259
- * @param {Array} artifacts - Task/tool artifacts
260
- * @param {string} templateType - Template type to use
261
- * @param {Object} config - Installation configuration
262
- * @returns {Promise<Object>} Counts of tasks and tools written
263
- */
264
- async writeTaskToolArtifacts(targetPath, artifacts, templateType, config = {}) {
265
- let taskCount = 0;
266
- let toolCount = 0;
267
-
268
- // Pre-load templates to avoid repeated file I/O in the loop
269
- const taskTemplate = await this.loadTemplate(templateType, 'task', config, 'default-task');
270
- const toolTemplate = await this.loadTemplate(templateType, 'tool', config, 'default-tool');
271
-
272
- const { artifact_types } = config;
273
-
274
- for (const artifact of artifacts) {
275
- if (artifact.type !== 'task' && artifact.type !== 'tool') {
276
- continue;
277
- }
278
-
279
- // Skip if the specific artifact type is not requested in config
280
- if (artifact_types) {
281
- if (artifact.type === 'task' && !artifact_types.includes('tasks')) continue;
282
- if (artifact.type === 'tool' && !artifact_types.includes('tools')) continue;
283
- }
284
-
285
- // Use pre-loaded template based on artifact type
286
- const { content: template, extension } = artifact.type === 'task' ? taskTemplate : toolTemplate;
287
-
288
- const content = this.renderTemplate(template, artifact);
289
- const filename = this.generateFilename(artifact, artifact.type, extension);
290
-
291
- if (config.skill_format) {
292
- await this.writeSkillFile(targetPath, artifact, content);
293
- } else {
294
- const filePath = path.join(targetPath, filename);
295
- await this.writeFile(filePath, content);
296
- }
297
-
298
- if (artifact.type === 'task') {
299
- taskCount++;
300
- } else {
301
- toolCount++;
302
- }
303
- }
304
-
305
- return { tasks: taskCount, tools: toolCount };
306
- }
307
-
308
156
  /**
309
157
  * Load template based on type and configuration
310
158
  * @param {string} templateType - Template type (claude, windsurf, etc.)
@@ -630,7 +478,7 @@ LOAD and execute from: {project-root}/{{bmadFolderName}}/{{path}}
630
478
  }
631
479
 
632
480
  /**
633
- * Install verbatim skill directories (type: skill entries from skill-manifest.csv).
481
+ * Install verbatim native SKILL.md directories from skill-manifest.csv.
634
482
  * Copies the entire source directory as-is into the IDE skill directory.
635
483
  * The source SKILL.md is used directly — no frontmatter transformation or file generation.
636
484
  * @param {string} projectDir - Project directory
@@ -711,13 +559,10 @@ LOAD and execute from: {project-root}/{{bmadFolderName}}/{{path}}
711
559
  */
712
560
  async printSummary(results, targetDir, options = {}) {
713
561
  if (options.silent) return;
714
- const parts = [];
715
- const totalDirs =
716
- results.skillDirectories || (results.workflows || 0) + (results.tasks || 0) + (results.tools || 0) + (results.skills || 0);
717
- const skillCount = totalDirs - (results.agents || 0);
718
- if (skillCount > 0) parts.push(`${skillCount} skills`);
719
- if (results.agents > 0) parts.push(`${results.agents} agents`);
720
- await prompts.log.success(`${this.name} configured: ${parts.join(', ')} → ${targetDir}`);
562
+ const count = results.skillDirectories || results.skills || 0;
563
+ if (count > 0) {
564
+ await prompts.log.success(`${this.name} configured: ${count} skills ${targetDir}`);
565
+ }
721
566
  }
722
567
 
723
568
  /**
@@ -159,14 +159,9 @@ class IdeManager {
159
159
  // Build detail string from handler-returned data
160
160
  let detail = '';
161
161
  if (handlerResult && handlerResult.results) {
162
- // Config-driven handlers return { success, results: { agents, workflows, tasks, tools } }
163
162
  const r = handlerResult.results;
164
- const parts = [];
165
- const totalDirs = r.skillDirectories || (r.workflows || 0) + (r.tasks || 0) + (r.tools || 0) + (r.skills || 0);
166
- const skillCount = totalDirs - (r.agents || 0);
167
- if (skillCount > 0) parts.push(`${skillCount} skills`);
168
- if (r.agents > 0) parts.push(`${r.agents} agents`);
169
- detail = parts.join(', ');
163
+ const count = r.skillDirectories || r.skills || 0;
164
+ if (count > 0) detail = `${count} skills`;
170
165
  }
171
166
  // Propagate handler's success status (default true for backward compat)
172
167
  const success = handlerResult?.success !== false;
@@ -4,7 +4,6 @@ const { toColonPath, toDashPath, customAgentColonName, customAgentDashName, BMAD
4
4
 
5
5
  /**
6
6
  * Generates launcher command files for each agent
7
- * Similar to WorkflowCommandGenerator but for agents
8
7
  */
9
8
  class AgentCommandGenerator {
10
9
  constructor(bmadFolderName = BMAD_FOLDER_NAME) {
@@ -27,7 +27,7 @@ async function loadSkillManifest(dirPath) {
27
27
  /**
28
28
  * Get the canonicalId for a specific file from a loaded skill manifest.
29
29
  * @param {Object|null} manifest - Loaded manifest (from loadSkillManifest)
30
- * @param {string} filename - Source filename to look up (e.g., 'pm.md', 'help.md', 'pm.agent.yaml')
30
+ * @param {string} filename - Source filename to look up (e.g., 'pm.md', 'help.md')
31
31
  * @returns {string} canonicalId or empty string
32
32
  */
33
33
  function getCanonicalId(manifest, filename) {
@@ -36,12 +36,6 @@ function getCanonicalId(manifest, filename) {
36
36
  if (manifest.__single) return manifest.__single.canonicalId || '';
37
37
  // Multi-entry: look up by filename directly
38
38
  if (manifest[filename]) return manifest[filename].canonicalId || '';
39
- // Fallback: try alternate extensions for compiled files
40
- const baseName = filename.replace(/\.(md|xml)$/i, '');
41
- const agentKey = `${baseName}.agent.yaml`;
42
- if (manifest[agentKey]) return manifest[agentKey].canonicalId || '';
43
- const xmlKey = `${baseName}.xml`;
44
- if (manifest[xmlKey]) return manifest[xmlKey].canonicalId || '';
45
39
  return '';
46
40
  }
47
41
 
@@ -57,12 +51,6 @@ function getArtifactType(manifest, filename) {
57
51
  if (manifest.__single) return manifest.__single.type || null;
58
52
  // Multi-entry: look up by filename directly
59
53
  if (manifest[filename]) return manifest[filename].type || null;
60
- // Fallback: try alternate extensions for compiled files
61
- const baseName = filename.replace(/\.(md|xml)$/i, '');
62
- const agentKey = `${baseName}.agent.yaml`;
63
- if (manifest[agentKey]) return manifest[agentKey].type || null;
64
- const xmlKey = `${baseName}.xml`;
65
- if (manifest[xmlKey]) return manifest[xmlKey].type || null;
66
54
  return null;
67
55
  }
68
56
 
@@ -78,12 +66,6 @@ function getInstallToBmad(manifest, filename) {
78
66
  if (manifest.__single) return manifest.__single.install_to_bmad !== false;
79
67
  // Multi-entry: look up by filename directly
80
68
  if (manifest[filename]) return manifest[filename].install_to_bmad !== false;
81
- // Fallback: try alternate extensions for compiled files
82
- const baseName = filename.replace(/\.(md|xml)$/i, '');
83
- const agentKey = `${baseName}.agent.yaml`;
84
- if (manifest[agentKey]) return manifest[agentKey].install_to_bmad !== false;
85
- const xmlKey = `${baseName}.xml`;
86
- if (manifest[xmlKey]) return manifest[xmlKey].install_to_bmad !== false;
87
69
  return true;
88
70
  }
89
71