ma-agents 3.6.2 → 3.9.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 (975) hide show
  1. package/CONTRIBUTING.md +139 -0
  2. package/README.md +26 -11
  3. package/bin/cli.js +138 -37
  4. package/docs/deployment/vllm-nemotron.md +4 -2
  5. package/lib/.bmad-extension-plugin.build-1264-1777348888201/.claude-plugin/marketplace.json +109 -0
  6. package/lib/{bmad-extension → .bmad-extension-plugin.build-1264-1777348888201/skills}/module-help.csv +5 -5
  7. package/lib/.bmad-extension-plugin.build-1264-1777348888201/skills/module.yaml +20 -0
  8. package/lib/.bmad-extension-plugin.build-24696-1777348768444/.claude-plugin/marketplace.json +109 -0
  9. package/lib/.bmad-extension-plugin.build-24696-1777348768444/skills/module-help.csv +62 -0
  10. package/lib/.bmad-extension-plugin.build-24696-1777348768444/skills/module.yaml +20 -0
  11. package/lib/.bmad-extension-plugin.build-25428-1777348694953/.claude-plugin/marketplace.json +109 -0
  12. package/lib/.bmad-extension-plugin.build-25428-1777348694953/skills/module-help.csv +62 -0
  13. package/lib/.bmad-extension-plugin.build-25428-1777348694953/skills/module.yaml +20 -0
  14. package/lib/agents.js +32 -10
  15. package/lib/bmad-cache/bmb/.claude-plugin/marketplace.json +4 -11
  16. package/lib/bmad-cache/bmb/README.md +1 -1
  17. package/lib/bmad-cache/bmb/_git_preserved/index +0 -0
  18. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.idx +0 -0
  19. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/{pack-554778ad4e7254827618ebd2497c3f4bce9054a4.pack → pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.pack} +0 -0
  20. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.rev +0 -0
  21. package/lib/bmad-cache/bmb/_git_preserved/packed-refs +1 -1
  22. package/lib/bmad-cache/bmb/_git_preserved/refs/heads/main +1 -1
  23. package/lib/bmad-cache/bmb/_git_preserved/refs/tags/v1.7.0 +1 -0
  24. package/lib/bmad-cache/bmb/_git_preserved/shallow +1 -1
  25. package/lib/bmad-cache/bmb/package-lock.json +2 -2
  26. package/lib/bmad-cache/bmb/package.json +2 -7
  27. package/lib/bmad-cache/bmb/skills/bmad-agent-builder/assets/customize-template.toml +62 -0
  28. package/lib/bmad-cache/bmb/skills/bmad-agent-builder/assets/sample-customize-analyst.toml +87 -0
  29. package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/assets/customize-template.toml +56 -0
  30. package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/assets/sample-customize-product-brief.toml +51 -0
  31. package/lib/bmad-cache/bmb/tools/validate-doc-links.cjs +6 -1
  32. package/lib/bmad-cache/bmb/website/astro.config.mjs +5 -1
  33. package/lib/bmad-cache/cache-manifest.json +13 -11
  34. package/lib/bmad-cache/cis/.claude-plugin/marketplace.json +1 -1
  35. package/lib/bmad-cache/cis/README.md +1 -1
  36. package/lib/bmad-cache/cis/_git_preserved/index +0 -0
  37. package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.idx +0 -0
  38. package/lib/bmad-cache/cis/_git_preserved/objects/pack/{pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.pack → pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.pack} +0 -0
  39. package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.rev +0 -0
  40. package/lib/bmad-cache/cis/_git_preserved/packed-refs +1 -1
  41. package/lib/bmad-cache/cis/_git_preserved/refs/heads/main +1 -1
  42. package/lib/bmad-cache/cis/_git_preserved/shallow +1 -1
  43. package/lib/bmad-cache/cis/package.json +1 -1
  44. package/lib/bmad-cache/cis/src/module.yaml +49 -0
  45. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-brainstorming-coach/customize.toml +38 -0
  46. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-creative-problem-solver/customize.toml +38 -0
  47. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-design-thinking-coach/customize.toml +39 -0
  48. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-innovation-strategist/customize.toml +38 -0
  49. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-presentation-master/customize.toml +73 -0
  50. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-storyteller/customize.toml +60 -0
  51. package/lib/bmad-cache/cis/src/skills/bmad-cis-design-thinking/customize.toml +41 -0
  52. package/lib/bmad-cache/cis/src/skills/bmad-cis-innovation-strategy/customize.toml +41 -0
  53. package/lib/bmad-cache/cis/src/skills/bmad-cis-problem-solving/customize.toml +42 -0
  54. package/lib/bmad-cache/cis/src/skills/bmad-cis-storytelling/customize.toml +41 -0
  55. package/lib/bmad-cache/cis/tools/build-docs.mjs +8 -0
  56. package/lib/bmad-cache/cis/website/astro.config.mjs +34 -4
  57. package/lib/bmad-cache/cis/website/src/content/config.ts +2 -1
  58. package/lib/bmad-cache/cis/website/src/content/i18n/zh-CN.json +28 -0
  59. package/lib/bmad-cache/cis/website/src/lib/locales.mjs +27 -0
  60. package/lib/bmad-cache/gds/.claude-plugin/marketplace.json +7 -6
  61. package/lib/bmad-cache/gds/README.md +5 -3
  62. package/lib/bmad-cache/gds/_git_preserved/index +0 -0
  63. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.idx +0 -0
  64. package/lib/bmad-cache/gds/_git_preserved/objects/pack/{pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.pack → pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.pack} +0 -0
  65. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.rev +0 -0
  66. package/lib/bmad-cache/gds/_git_preserved/packed-refs +1 -1
  67. package/lib/bmad-cache/gds/_git_preserved/refs/heads/main +1 -1
  68. package/lib/bmad-cache/gds/_git_preserved/shallow +1 -1
  69. package/lib/bmad-cache/gds/package.json +1 -1
  70. package/lib/bmad-cache/gds/src/agents/gds-agent-game-architect/customize.toml +57 -0
  71. package/lib/bmad-cache/gds/src/agents/gds-agent-game-designer/customize.toml +59 -0
  72. package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/customize.toml +129 -0
  73. package/lib/bmad-cache/gds/src/agents/gds-agent-game-solo-dev/customize.toml +60 -0
  74. package/lib/bmad-cache/gds/src/agents/gds-agent-tech-writer/customize.toml +65 -0
  75. package/lib/bmad-cache/gds/src/module-help.csv +4 -4
  76. package/lib/bmad-cache/gds/src/module.yaml +43 -1
  77. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-brainstorm-game/customize.toml +41 -0
  78. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-create-game-brief/customize.toml +41 -0
  79. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/gds-domain-research/customize.toml +41 -0
  80. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-gdd/customize.toml +41 -0
  81. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-narrative/customize.toml +41 -0
  82. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-prd/customize.toml +41 -0
  83. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-ux-design/customize.toml +41 -0
  84. package/lib/bmad-cache/gds/src/workflows/2-design/gds-edit-gdd/customize.toml +41 -0
  85. package/lib/bmad-cache/gds/src/workflows/2-design/gds-edit-prd/customize.toml +41 -0
  86. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-gdd/customize.toml +41 -0
  87. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-gdd/data/genre-complexity.csv +26 -0
  88. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/customize.toml +41 -0
  89. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/data/domain-complexity.csv +15 -0
  90. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/data/project-types.csv +11 -0
  91. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-check-implementation-readiness/customize.toml +41 -0
  92. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-create-epics-and-stories/customize.toml +41 -0
  93. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/customize.toml +41 -0
  94. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-generate-project-context/customize.toml +41 -0
  95. package/lib/bmad-cache/gds/src/workflows/4-production/gds-code-review/customize.toml +41 -0
  96. package/lib/bmad-cache/gds/src/workflows/4-production/gds-correct-course/customize.toml +41 -0
  97. package/lib/bmad-cache/gds/src/workflows/4-production/gds-create-story/customize.toml +41 -0
  98. package/lib/bmad-cache/gds/src/workflows/4-production/gds-dev-story/customize.toml +41 -0
  99. package/lib/bmad-cache/gds/src/workflows/4-production/gds-retrospective/customize.toml +41 -0
  100. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-planning/customize.toml +41 -0
  101. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-status/customize.toml +41 -0
  102. package/lib/bmad-cache/gds/src/workflows/gametest/gds-e2e-scaffold/customize.toml +41 -0
  103. package/lib/bmad-cache/gds/src/workflows/gametest/gds-performance-test/customize.toml +41 -0
  104. package/lib/bmad-cache/gds/src/workflows/gametest/gds-playtest-plan/customize.toml +41 -0
  105. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-automate/customize.toml +41 -0
  106. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-design/customize.toml +41 -0
  107. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-framework/customize.toml +41 -0
  108. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-review/customize.toml +41 -0
  109. package/lib/bmad-cache/gds/src/workflows/gds-document-project/customize.toml +41 -0
  110. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev/customize.toml +41 -0
  111. package/lib/bmad-cache/tea/.claude-plugin/marketplace.json +1 -1
  112. package/lib/bmad-cache/tea/.github/CODE_OF_CONDUCT.md +128 -0
  113. package/lib/bmad-cache/tea/.github/FUNDING.yaml +15 -0
  114. package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/config.yaml +11 -0
  115. package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/feature_request.md +70 -0
  116. package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/issue.md +61 -0
  117. package/lib/bmad-cache/tea/.github/workflows/docs.yaml +66 -0
  118. package/lib/bmad-cache/tea/.github/workflows/manual-release.yaml +216 -0
  119. package/lib/bmad-cache/tea/.github/workflows/quality.yaml +117 -0
  120. package/lib/bmad-cache/tea/.vscode/settings.json +47 -0
  121. package/lib/bmad-cache/tea/README.md +63 -55
  122. package/lib/bmad-cache/tea/_git_preserved/index +0 -0
  123. package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.idx +0 -0
  124. package/lib/bmad-cache/tea/_git_preserved/objects/pack/{pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.pack → pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.pack} +0 -0
  125. package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.rev +0 -0
  126. package/lib/bmad-cache/tea/_git_preserved/packed-refs +1 -1
  127. package/lib/bmad-cache/tea/_git_preserved/refs/heads/main +1 -1
  128. package/lib/bmad-cache/tea/_git_preserved/shallow +1 -1
  129. package/lib/bmad-cache/tea/docs/explanation/engagement-models.md +1 -1
  130. package/lib/bmad-cache/tea/docs/explanation/tea-overview.md +1 -1
  131. package/lib/bmad-cache/tea/docs/glossary/index.md +1 -1
  132. package/lib/bmad-cache/tea/docs/how-to/customization/extend-tea-with-custom-workflows.md +29 -0
  133. package/lib/bmad-cache/tea/docs/how-to/workflows/run-trace.md +27 -20
  134. package/lib/bmad-cache/tea/docs/how-to/workflows/teach-me-testing.md +2 -2
  135. package/lib/bmad-cache/tea/docs/reference/commands.md +3 -3
  136. package/lib/bmad-cache/tea/docs/reference/troubleshooting.md +36 -0
  137. package/lib/bmad-cache/tea/docs/tutorials/learn-testing-tea-academy.md +1 -1
  138. package/lib/bmad-cache/tea/package-lock.json +2 -2
  139. package/lib/bmad-cache/tea/package.json +3 -3
  140. package/lib/bmad-cache/tea/src/agents/bmad-tea/SKILL.md +54 -44
  141. package/lib/bmad-cache/tea/src/agents/bmad-tea/customize.toml +104 -0
  142. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/contract-testing.md +32 -15
  143. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-broker-webhooks.md +237 -0
  144. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  145. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-mcp.md +1 -0
  146. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  147. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-overview.md +15 -12
  148. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  149. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
  150. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-module-setup.md +122 -0
  151. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-providers.md +155 -0
  152. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-risk-guidance.md +114 -0
  153. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-template-matchers.md +160 -0
  154. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  155. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-timeout-error.md +130 -0
  156. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-waiting-querying.md +167 -0
  157. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/tea-index.csv +13 -4
  158. package/lib/bmad-cache/tea/src/module.yaml +8 -0
  159. package/lib/bmad-cache/tea/src/workflows/testarch/README.md +5 -3
  160. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/SKILL.md +124 -1
  161. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/checklist.md +3 -2
  162. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/customize.toml +40 -0
  163. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/instructions.md +7 -0
  164. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-01-init.md +1 -1
  165. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-01b-continue.md +1 -1
  166. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-02-assess.md +1 -1
  167. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-01.md +1 -1
  168. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-02.md +1 -1
  169. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-03.md +1 -1
  170. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-04.md +1 -1
  171. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-05.md +1 -1
  172. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-06.md +1 -1
  173. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-07.md +1 -1
  174. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-05-completion.md +8 -0
  175. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-01-assess-workflow.md +2 -2
  176. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-02-apply-edits.md +9 -1
  177. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-v/step-v-01-validate.md +12 -3
  178. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/SKILL.md +80 -1
  179. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/customize.toml +40 -0
  180. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/instructions.md +2 -2
  181. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/contract-testing.md +32 -15
  182. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-broker-webhooks.md +237 -0
  183. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  184. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-mcp.md +1 -0
  185. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  186. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-overview.md +15 -12
  187. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  188. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
  189. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-module-setup.md +122 -0
  190. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-providers.md +155 -0
  191. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-risk-guidance.md +114 -0
  192. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-template-matchers.md +160 -0
  193. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  194. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-timeout-error.md +130 -0
  195. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-waiting-querying.md +167 -0
  196. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/tea-index.csv +13 -4
  197. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-01-preflight-and-context.md +3 -3
  198. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-02-generation-mode.md +1 -1
  199. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-03-test-strategy.md +1 -1
  200. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04-generate-tests.md +1 -1
  201. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04a-subagent-api-failing.md +1 -1
  202. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04c-aggregate.md +1 -1
  203. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-05-validate-and-complete.md +8 -0
  204. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-e/step-01-assess.md +1 -1
  205. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-e/step-02-apply-edit.md +8 -0
  206. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-v/step-01-validate.md +9 -1
  207. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/SKILL.md +80 -1
  208. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/customize.toml +40 -0
  209. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/instructions.md +2 -2
  210. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/contract-testing.md +18 -2
  211. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-broker-webhooks.md +237 -0
  212. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  213. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-mcp.md +1 -0
  214. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  215. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  216. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-module-setup.md +122 -0
  217. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-providers.md +155 -0
  218. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-risk-guidance.md +114 -0
  219. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-template-matchers.md +160 -0
  220. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  221. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-timeout-error.md +130 -0
  222. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-waiting-querying.md +167 -0
  223. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/tea-index.csv +12 -4
  224. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-01-preflight-and-context.md +1 -1
  225. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-02-identify-targets.md +1 -1
  226. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03-generate-tests.md +1 -1
  227. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03a-subagent-api.md +9 -1
  228. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03c-aggregate.md +1 -1
  229. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-04-validate-and-summarize.md +8 -0
  230. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-e/step-01-assess.md +1 -1
  231. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-e/step-02-apply-edit.md +8 -0
  232. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-v/step-01-validate.md +9 -1
  233. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/SKILL.md +80 -1
  234. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/customize.toml +40 -0
  235. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/instructions.md +2 -2
  236. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/contract-testing.md +18 -2
  237. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-broker-webhooks.md +237 -0
  238. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  239. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-mcp.md +1 -0
  240. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  241. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  242. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-module-setup.md +122 -0
  243. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-providers.md +155 -0
  244. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-risk-guidance.md +114 -0
  245. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-template-matchers.md +160 -0
  246. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  247. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-timeout-error.md +130 -0
  248. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-waiting-querying.md +167 -0
  249. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/tea-index.csv +12 -4
  250. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-01-preflight.md +1 -1
  251. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-02-generate-pipeline.md +15 -7
  252. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-03-configure-quality-gates.md +7 -2
  253. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-04-validate-and-summary.md +8 -0
  254. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-e/step-01-assess.md +1 -1
  255. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-e/step-02-apply-edit.md +8 -0
  256. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-v/step-01-validate.md +9 -1
  257. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/SKILL.md +80 -1
  258. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/customize.toml +40 -0
  259. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/instructions.md +2 -2
  260. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/contract-testing.md +18 -2
  261. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-broker-webhooks.md +237 -0
  262. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  263. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-mcp.md +1 -0
  264. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  265. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  266. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-module-setup.md +122 -0
  267. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-providers.md +155 -0
  268. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-risk-guidance.md +114 -0
  269. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-template-matchers.md +160 -0
  270. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  271. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-timeout-error.md +130 -0
  272. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-waiting-querying.md +167 -0
  273. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/tea-index.csv +12 -4
  274. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-01-preflight.md +1 -1
  275. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-02-select-framework.md +1 -1
  276. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-03-scaffold-framework.md +11 -7
  277. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-04-docs-and-scripts.md +1 -1
  278. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-05-validate-and-summary.md +8 -0
  279. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-e/step-01-assess.md +1 -1
  280. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-e/step-02-apply-edit.md +8 -0
  281. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-v/step-01-validate.md +9 -1
  282. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/SKILL.md +80 -1
  283. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/customize.toml +40 -0
  284. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/instructions.md +2 -2
  285. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/contract-testing.md +18 -2
  286. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-broker-webhooks.md +237 -0
  287. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  288. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-mcp.md +1 -0
  289. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  290. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  291. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-module-setup.md +122 -0
  292. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-providers.md +155 -0
  293. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-risk-guidance.md +114 -0
  294. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-template-matchers.md +160 -0
  295. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  296. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-timeout-error.md +130 -0
  297. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-waiting-querying.md +167 -0
  298. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/tea-index.csv +12 -4
  299. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01-load-context.md +1 -1
  300. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-02-define-thresholds.md +1 -1
  301. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-03-gather-evidence.md +1 -1
  302. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04-evaluate-and-score.md +1 -1
  303. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04e-aggregate-nfr.md +1 -1
  304. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-05-generate-report.md +8 -0
  305. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-e/step-01-assess.md +1 -1
  306. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-e/step-02-apply-edit.md +8 -0
  307. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-v/step-01-validate.md +9 -1
  308. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/SKILL.md +82 -1
  309. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/customize.toml +40 -0
  310. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/instructions.md +2 -2
  311. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/contract-testing.md +18 -2
  312. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-broker-webhooks.md +237 -0
  313. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  314. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-mcp.md +1 -0
  315. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  316. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  317. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-module-setup.md +122 -0
  318. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-providers.md +155 -0
  319. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-risk-guidance.md +114 -0
  320. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-template-matchers.md +160 -0
  321. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  322. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-timeout-error.md +130 -0
  323. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-waiting-querying.md +167 -0
  324. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/tea-index.csv +12 -4
  325. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-01-detect-mode.md +7 -1
  326. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-01b-resume.md +29 -15
  327. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-02-load-context.md +7 -1
  328. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-03-risk-and-testability.md +7 -1
  329. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-04-coverage-plan.md +7 -1
  330. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-05-generate-output.md +14 -0
  331. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-e/step-01-assess.md +1 -1
  332. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-e/step-02-apply-edit.md +8 -0
  333. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-v/step-01-validate.md +9 -1
  334. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-architecture-template.md +3 -0
  335. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-qa-template.md +3 -0
  336. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-template.md +3 -0
  337. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/SKILL.md +80 -1
  338. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/customize.toml +40 -0
  339. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/instructions.md +2 -2
  340. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/contract-testing.md +18 -2
  341. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-broker-webhooks.md +237 -0
  342. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  343. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-mcp.md +1 -0
  344. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  345. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  346. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-module-setup.md +122 -0
  347. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-providers.md +155 -0
  348. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-risk-guidance.md +114 -0
  349. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-template-matchers.md +160 -0
  350. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  351. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-timeout-error.md +130 -0
  352. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-waiting-querying.md +167 -0
  353. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/tea-index.csv +12 -4
  354. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-01-load-context.md +3 -3
  355. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-02-discover-tests.md +1 -1
  356. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03-quality-evaluation.md +1 -1
  357. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03a-subagent-determinism.md +43 -0
  358. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03f-aggregate-scores.md +1 -1
  359. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-04-generate-report.md +8 -0
  360. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-e/step-01-assess.md +1 -1
  361. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-e/step-02-apply-edit.md +8 -0
  362. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-v/step-01-validate.md +9 -1
  363. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/SKILL.md +82 -1
  364. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/checklist.md +42 -18
  365. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/customize.toml +40 -0
  366. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/instructions.md +6 -4
  367. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/contract-testing.md +18 -2
  368. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-broker-webhooks.md +237 -0
  369. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  370. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-mcp.md +1 -0
  371. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  372. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  373. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-module-setup.md +122 -0
  374. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-providers.md +155 -0
  375. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-risk-guidance.md +114 -0
  376. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-template-matchers.md +160 -0
  377. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  378. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-timeout-error.md +130 -0
  379. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-waiting-querying.md +167 -0
  380. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/tea-index.csv +12 -4
  381. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-01-load-context.md +74 -13
  382. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-01b-resume.md +1 -1
  383. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-02-discover-tests.md +24 -4
  384. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-03-map-criteria.md +15 -11
  385. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-04-analyze-gaps.md +210 -3
  386. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-05-gate-decision.md +477 -62
  387. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-e/step-01-assess.md +1 -1
  388. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-e/step-02-apply-edit.md +8 -0
  389. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-v/step-01-validate.md +9 -1
  390. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/trace-template.md +10 -2
  391. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow-plan.md +14 -11
  392. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow.yaml +24 -0
  393. package/lib/bmad-cache/tea/test/test-installation-components.js +210 -66
  394. package/lib/bmad-cache/tea/test/test-knowledge-base.js +6 -1
  395. package/lib/bmad-cache/tea/test/test-release-metadata.js +71 -0
  396. package/lib/bmad-cache/tea/tools/validate-agent-schema.js +73 -0
  397. package/lib/bmad-customize/bmm-qa.customize.yaml +1 -1
  398. package/lib/bmad-extension/.claude-plugin/marketplace.json.template +117 -0
  399. package/lib/bmad-extension/skills/add-sprint/SKILL.md +39 -0
  400. package/lib/bmad-extension/skills/add-to-sprint/SKILL.md +39 -0
  401. package/lib/bmad-extension/skills/bmad-dev-story/workflow.md +39 -0
  402. package/lib/bmad-extension/skills/bmad-sprint-planning/workflow.md +41 -0
  403. package/lib/bmad-extension/skills/bmad-sprint-status/workflow.md +39 -0
  404. package/lib/bmad-extension/skills/cleanup-done/SKILL.md +39 -0
  405. package/lib/bmad-extension/skills/close-sprint/SKILL.md +39 -0
  406. package/lib/bmad-extension/skills/generate-backlog/SKILL.md +41 -0
  407. package/lib/bmad-extension/skills/ma-agent-cyber/.gitkeep +0 -0
  408. package/lib/bmad-extension/skills/ma-agent-cyber/SKILL.md +49 -0
  409. package/lib/bmad-extension/skills/ma-agent-cyber/bmad-skill-manifest.yaml +11 -0
  410. package/lib/bmad-extension/skills/ma-agent-devops/.gitkeep +0 -0
  411. package/lib/bmad-extension/skills/ma-agent-devops/SKILL.md +49 -0
  412. package/lib/bmad-extension/skills/ma-agent-devops/bmad-skill-manifest.yaml +11 -0
  413. package/lib/bmad-extension/skills/ma-agent-ml/.gitkeep +0 -0
  414. package/lib/bmad-extension/skills/ma-agent-ml/SKILL.md +59 -0
  415. package/lib/bmad-extension/skills/ma-agent-ml/bmad-skill-manifest.yaml +11 -0
  416. package/lib/bmad-extension/skills/ma-agent-sqa/.gitkeep +0 -0
  417. package/lib/bmad-extension/skills/ma-agent-sqa/SKILL.md +59 -0
  418. package/lib/bmad-extension/skills/ma-agent-sqa/bmad-skill-manifest.yaml +11 -0
  419. package/lib/bmad-extension/skills/ma-agent-sre/.gitkeep +0 -0
  420. package/lib/bmad-extension/skills/ma-agent-sre/SKILL.md +49 -0
  421. package/lib/bmad-extension/skills/ma-agent-sre/bmad-skill-manifest.yaml +11 -0
  422. package/lib/bmad-extension/skills/modify-sprint/SKILL.md +39 -0
  423. package/lib/bmad-extension/skills/module-help.csv +62 -0
  424. package/lib/bmad-extension/skills/module.yaml +20 -0
  425. package/lib/bmad-extension/skills/prioritize-backlog/SKILL.md +39 -0
  426. package/lib/bmad-extension/skills/remove-from-sprint/SKILL.md +39 -0
  427. package/lib/bmad-extension/skills/sprint-status-view/SKILL.md +39 -0
  428. package/lib/bmad-extension-plugin/.claude-plugin/marketplace.json +109 -0
  429. package/lib/bmad-extension-plugin/skills/add-sprint/SKILL.md +214 -0
  430. package/lib/bmad-extension-plugin/skills/add-sprint/bmad-skill-manifest.yaml +3 -0
  431. package/lib/bmad-extension-plugin/skills/add-to-sprint/SKILL.md +282 -0
  432. package/lib/bmad-extension-plugin/skills/add-to-sprint/bmad-skill-manifest.yaml +3 -0
  433. package/lib/bmad-extension-plugin/skills/bmad-dev-story/SKILL.md +6 -0
  434. package/lib/bmad-extension-plugin/skills/bmad-dev-story/bmad-skill-manifest.yaml +3 -0
  435. package/lib/bmad-extension-plugin/skills/bmad-dev-story/checklist.md +80 -0
  436. package/lib/bmad-extension-plugin/skills/bmad-dev-story/workflow.md +548 -0
  437. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/SKILL.md +6 -0
  438. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/bmad-skill-manifest.yaml +3 -0
  439. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/checklist.md +74 -0
  440. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/sprint-status-template.yaml +89 -0
  441. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/workflow.md +413 -0
  442. package/lib/bmad-extension-plugin/skills/bmad-sprint-status/SKILL.md +6 -0
  443. package/lib/bmad-extension-plugin/skills/bmad-sprint-status/bmad-skill-manifest.yaml +3 -0
  444. package/lib/bmad-extension-plugin/skills/bmad-sprint-status/workflow.md +473 -0
  445. package/lib/bmad-extension-plugin/skills/cleanup-done/.gitkeep +0 -0
  446. package/lib/bmad-extension-plugin/skills/cleanup-done/SKILL.md +254 -0
  447. package/lib/bmad-extension-plugin/skills/cleanup-done/bmad-skill-manifest.yaml +3 -0
  448. package/lib/bmad-extension-plugin/skills/close-sprint/.gitkeep +0 -0
  449. package/lib/bmad-extension-plugin/skills/close-sprint/SKILL.md +418 -0
  450. package/lib/bmad-extension-plugin/skills/close-sprint/bmad-skill-manifest.yaml +3 -0
  451. package/lib/bmad-extension-plugin/skills/create-bug-story/.gitkeep +0 -0
  452. package/lib/bmad-extension-plugin/skills/create-bug-story/SKILL.md +195 -0
  453. package/lib/bmad-extension-plugin/skills/create-bug-story/bmad-skill-manifest.yaml +3 -0
  454. package/lib/bmad-extension-plugin/skills/cyber-generate-certs/.gitkeep +0 -0
  455. package/lib/bmad-extension-plugin/skills/cyber-generate-certs/SKILL.md +27 -0
  456. package/lib/bmad-extension-plugin/skills/cyber-generate-certs/bmad-skill-manifest.yaml +3 -0
  457. package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/.gitkeep +0 -0
  458. package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/SKILL.md +29 -0
  459. package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/bmad-skill-manifest.yaml +3 -0
  460. package/lib/bmad-extension-plugin/skills/cyber-security-audit/.gitkeep +0 -0
  461. package/lib/bmad-extension-plugin/skills/cyber-security-audit/SKILL.md +27 -0
  462. package/lib/bmad-extension-plugin/skills/cyber-security-audit/bmad-skill-manifest.yaml +3 -0
  463. package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/.gitkeep +0 -0
  464. package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/SKILL.md +28 -0
  465. package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/bmad-skill-manifest.yaml +3 -0
  466. package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/.gitkeep +0 -0
  467. package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/SKILL.md +23 -0
  468. package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/bmad-skill-manifest.yaml +3 -0
  469. package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/.gitkeep +0 -0
  470. package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/SKILL.md +22 -0
  471. package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/bmad-skill-manifest.yaml +3 -0
  472. package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/.gitkeep +0 -0
  473. package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/SKILL.md +28 -0
  474. package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/bmad-skill-manifest.yaml +3 -0
  475. package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/.gitkeep +0 -0
  476. package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/SKILL.md +27 -0
  477. package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/bmad-skill-manifest.yaml +3 -0
  478. package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/.gitkeep +0 -0
  479. package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/SKILL.md +27 -0
  480. package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/bmad-skill-manifest.yaml +3 -0
  481. package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/.gitkeep +0 -0
  482. package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/SKILL.md +26 -0
  483. package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/bmad-skill-manifest.yaml +3 -0
  484. package/lib/bmad-extension-plugin/skills/devops-manage-helm/.gitkeep +0 -0
  485. package/lib/bmad-extension-plugin/skills/devops-manage-helm/SKILL.md +28 -0
  486. package/lib/bmad-extension-plugin/skills/devops-manage-helm/bmad-skill-manifest.yaml +3 -0
  487. package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/.gitkeep +0 -0
  488. package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/SKILL.md +24 -0
  489. package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/bmad-skill-manifest.yaml +3 -0
  490. package/lib/bmad-extension-plugin/skills/generate-backlog/.gitkeep +0 -0
  491. package/lib/bmad-extension-plugin/skills/generate-backlog/SKILL.md +236 -0
  492. package/lib/bmad-extension-plugin/skills/generate-backlog/bmad-skill-manifest.yaml +3 -0
  493. package/lib/bmad-extension-plugin/skills/ma-agent-cyber/.gitkeep +0 -0
  494. package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/ma-agent-cyber}/SKILL.md +1 -1
  495. package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/ma-agent-cyber}/bmad-skill-manifest.yaml +1 -1
  496. package/lib/bmad-extension-plugin/skills/ma-agent-devops/.gitkeep +0 -0
  497. package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/ma-agent-devops}/SKILL.md +1 -1
  498. package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/ma-agent-devops}/bmad-skill-manifest.yaml +1 -1
  499. package/lib/bmad-extension-plugin/skills/ma-agent-ml/.gitkeep +0 -0
  500. package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/ma-agent-ml}/SKILL.md +1 -1
  501. package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/ma-agent-ml}/bmad-skill-manifest.yaml +1 -1
  502. package/lib/bmad-extension-plugin/skills/ma-agent-sqa/.gitkeep +0 -0
  503. package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/ma-agent-sqa}/SKILL.md +1 -1
  504. package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/ma-agent-sqa}/bmad-skill-manifest.yaml +1 -1
  505. package/lib/bmad-extension-plugin/skills/ma-agent-sre/.gitkeep +0 -0
  506. package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/ma-agent-sre}/SKILL.md +1 -1
  507. package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/ma-agent-sre}/bmad-skill-manifest.yaml +1 -1
  508. package/lib/bmad-extension-plugin/skills/mil498-ocd/.gitkeep +0 -0
  509. package/lib/bmad-extension-plugin/skills/mil498-ocd/SKILL.md +30 -0
  510. package/lib/bmad-extension-plugin/skills/mil498-ocd/bmad-skill-manifest.yaml +5 -0
  511. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/01-discover-project-artifacts.md +26 -0
  512. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/02-load-template.md +10 -0
  513. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/03-generate-document.md +90 -0
  514. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/04-validate.md +14 -0
  515. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/05-review.md +15 -0
  516. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/06-save.md +15 -0
  517. package/lib/bmad-extension-plugin/skills/mil498-ocd/template.md +169 -0
  518. package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/.gitkeep +0 -0
  519. package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/SKILL.md +105 -0
  520. package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/bmad-skill-manifest.yaml +5 -0
  521. package/lib/bmad-extension-plugin/skills/mil498-sdd/.gitkeep +0 -0
  522. package/lib/bmad-extension-plugin/skills/mil498-sdd/SKILL.md +30 -0
  523. package/lib/bmad-extension-plugin/skills/mil498-sdd/bmad-skill-manifest.yaml +5 -0
  524. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/01-discover-project-artifacts.md +50 -0
  525. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/02-load-template.md +10 -0
  526. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/03-generate-document.md +98 -0
  527. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/04-validate.md +16 -0
  528. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/05-review.md +15 -0
  529. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/06-save.md +19 -0
  530. package/lib/bmad-extension-plugin/skills/mil498-sdd/template.md +163 -0
  531. package/lib/bmad-extension-plugin/skills/mil498-sdp/.gitkeep +0 -0
  532. package/lib/bmad-extension-plugin/skills/mil498-sdp/SKILL.md +30 -0
  533. package/lib/bmad-extension-plugin/skills/mil498-sdp/bmad-skill-manifest.yaml +5 -0
  534. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/01-discover-project-artifacts.md +32 -0
  535. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/02-load-template.md +10 -0
  536. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/03-generate-document.md +187 -0
  537. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/04-validate.md +13 -0
  538. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/05-review.md +15 -0
  539. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/06-save.md +14 -0
  540. package/lib/bmad-extension-plugin/skills/mil498-sdp/template.md +307 -0
  541. package/lib/bmad-extension-plugin/skills/mil498-srs/.gitkeep +0 -0
  542. package/lib/bmad-extension-plugin/skills/mil498-srs/SKILL.md +30 -0
  543. package/lib/bmad-extension-plugin/skills/mil498-srs/bmad-skill-manifest.yaml +5 -0
  544. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/01-discover-project-artifacts.md +42 -0
  545. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/02-load-template.md +10 -0
  546. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/03-generate-document.md +100 -0
  547. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/04-validate.md +16 -0
  548. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/05-review.md +15 -0
  549. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/06-save.md +18 -0
  550. package/lib/bmad-extension-plugin/skills/mil498-srs/template.md +219 -0
  551. package/lib/bmad-extension-plugin/skills/mil498-ssdd/.gitkeep +0 -0
  552. package/lib/bmad-extension-plugin/skills/mil498-ssdd/SKILL.md +32 -0
  553. package/lib/bmad-extension-plugin/skills/mil498-ssdd/bmad-skill-manifest.yaml +5 -0
  554. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/01-discover-project-artifacts.md +32 -0
  555. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/02-load-template.md +10 -0
  556. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/03-csci-discovery-interview.md +43 -0
  557. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/04-generate-document.md +96 -0
  558. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/05-validate.md +18 -0
  559. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/06-review.md +16 -0
  560. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/07-save.md +16 -0
  561. package/lib/bmad-extension-plugin/skills/mil498-ssdd/template.md +154 -0
  562. package/lib/bmad-extension-plugin/skills/mil498-sss/.gitkeep +0 -0
  563. package/lib/bmad-extension-plugin/skills/mil498-sss/SKILL.md +31 -0
  564. package/lib/bmad-extension-plugin/skills/mil498-sss/bmad-skill-manifest.yaml +5 -0
  565. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/01-discover-project-artifacts.md +31 -0
  566. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/02-load-template.md +10 -0
  567. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/03-generate-document.md +108 -0
  568. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/04-validate.md +16 -0
  569. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/05-review.md +15 -0
  570. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/06-save.md +15 -0
  571. package/lib/bmad-extension-plugin/skills/mil498-sss/template.md +225 -0
  572. package/lib/bmad-extension-plugin/skills/mil498-std/.gitkeep +0 -0
  573. package/lib/bmad-extension-plugin/skills/mil498-std/SKILL.md +30 -0
  574. package/lib/bmad-extension-plugin/skills/mil498-std/bmad-skill-manifest.yaml +5 -0
  575. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/01-discover-project-artifacts.md +42 -0
  576. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/02-load-template.md +10 -0
  577. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/03-generate-document.md +117 -0
  578. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/04-validate.md +15 -0
  579. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/05-review.md +15 -0
  580. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/06-save.md +15 -0
  581. package/lib/bmad-extension-plugin/skills/mil498-std/template.md +188 -0
  582. package/lib/bmad-extension-plugin/skills/ml-advise/.gitkeep +0 -0
  583. package/lib/bmad-extension-plugin/skills/ml-advise/SKILL.md +76 -0
  584. package/lib/bmad-extension-plugin/skills/ml-advise/bmad-skill-manifest.yaml +3 -0
  585. package/lib/bmad-extension-plugin/skills/ml-advise/skill.json +7 -0
  586. package/lib/bmad-extension-plugin/skills/ml-analysis/.gitkeep +0 -0
  587. package/lib/bmad-extension-plugin/skills/ml-analysis/SKILL.md +60 -0
  588. package/lib/bmad-extension-plugin/skills/ml-analysis/bmad-skill-manifest.yaml +3 -0
  589. package/lib/bmad-extension-plugin/skills/ml-analysis/skill.json +7 -0
  590. package/lib/bmad-extension-plugin/skills/ml-architecture/.gitkeep +0 -0
  591. package/lib/bmad-extension-plugin/skills/ml-architecture/SKILL.md +55 -0
  592. package/lib/bmad-extension-plugin/skills/ml-architecture/bmad-skill-manifest.yaml +3 -0
  593. package/lib/bmad-extension-plugin/skills/ml-architecture/skill.json +7 -0
  594. package/lib/bmad-extension-plugin/skills/ml-detailed-design/.gitkeep +0 -0
  595. package/lib/bmad-extension-plugin/skills/ml-detailed-design/SKILL.md +67 -0
  596. package/lib/bmad-extension-plugin/skills/ml-detailed-design/bmad-skill-manifest.yaml +3 -0
  597. package/lib/bmad-extension-plugin/skills/ml-detailed-design/skill.json +7 -0
  598. package/lib/bmad-extension-plugin/skills/ml-eda/.gitkeep +0 -0
  599. package/lib/bmad-extension-plugin/skills/ml-eda/SKILL.md +56 -0
  600. package/lib/bmad-extension-plugin/skills/ml-eda/bmad-skill-manifest.yaml +3 -0
  601. package/lib/bmad-extension-plugin/skills/ml-eda/scripts/baseline_classifier.py +522 -0
  602. package/lib/bmad-extension-plugin/skills/ml-eda/scripts/class_weights_calculator.py +295 -0
  603. package/lib/bmad-extension-plugin/skills/ml-eda/scripts/clustering_explorer.py +383 -0
  604. package/lib/bmad-extension-plugin/skills/ml-eda/scripts/eda_analyzer.py +654 -0
  605. package/lib/bmad-extension-plugin/skills/ml-eda/skill.json +7 -0
  606. package/lib/bmad-extension-plugin/skills/ml-experiment/.gitkeep +0 -0
  607. package/lib/bmad-extension-plugin/skills/ml-experiment/SKILL.md +74 -0
  608. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/advanced_trainer_configs.py +430 -0
  609. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/quick_trainer_setup.py +233 -0
  610. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_datamodule.py +219 -0
  611. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_gnn_module.py +341 -0
  612. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_lightning_module.py +158 -0
  613. package/lib/bmad-extension-plugin/skills/ml-experiment/bmad-skill-manifest.yaml +3 -0
  614. package/lib/bmad-extension-plugin/skills/ml-experiment/skill.json +7 -0
  615. package/lib/bmad-extension-plugin/skills/ml-hparam/.gitkeep +0 -0
  616. package/lib/bmad-extension-plugin/skills/ml-hparam/SKILL.md +81 -0
  617. package/lib/bmad-extension-plugin/skills/ml-hparam/bmad-skill-manifest.yaml +3 -0
  618. package/lib/bmad-extension-plugin/skills/ml-hparam/skill.json +7 -0
  619. package/lib/bmad-extension-plugin/skills/ml-ideation/.gitkeep +0 -0
  620. package/lib/bmad-extension-plugin/skills/ml-ideation/SKILL.md +50 -0
  621. package/lib/bmad-extension-plugin/skills/ml-ideation/bmad-skill-manifest.yaml +3 -0
  622. package/lib/bmad-extension-plugin/skills/ml-ideation/scripts/validate_ml_prd.py +287 -0
  623. package/lib/bmad-extension-plugin/skills/ml-ideation/skill.json +7 -0
  624. package/lib/bmad-extension-plugin/skills/ml-infra/.gitkeep +0 -0
  625. package/lib/bmad-extension-plugin/skills/ml-infra/SKILL.md +58 -0
  626. package/lib/bmad-extension-plugin/skills/ml-infra/bmad-skill-manifest.yaml +3 -0
  627. package/lib/bmad-extension-plugin/skills/ml-infra/skill.json +7 -0
  628. package/lib/bmad-extension-plugin/skills/ml-retrospective/.gitkeep +0 -0
  629. package/lib/bmad-extension-plugin/skills/ml-retrospective/SKILL.md +63 -0
  630. package/lib/bmad-extension-plugin/skills/ml-retrospective/bmad-skill-manifest.yaml +3 -0
  631. package/lib/bmad-extension-plugin/skills/ml-retrospective/skill.json +7 -0
  632. package/lib/bmad-extension-plugin/skills/ml-revision/.gitkeep +0 -0
  633. package/lib/bmad-extension-plugin/skills/ml-revision/SKILL.md +82 -0
  634. package/lib/bmad-extension-plugin/skills/ml-revision/bmad-skill-manifest.yaml +3 -0
  635. package/lib/bmad-extension-plugin/skills/ml-revision/skill.json +7 -0
  636. package/lib/bmad-extension-plugin/skills/ml-techspec/.gitkeep +0 -0
  637. package/lib/bmad-extension-plugin/skills/ml-techspec/SKILL.md +80 -0
  638. package/lib/bmad-extension-plugin/skills/ml-techspec/bmad-skill-manifest.yaml +3 -0
  639. package/lib/bmad-extension-plugin/skills/ml-techspec/skill.json +7 -0
  640. package/lib/bmad-extension-plugin/skills/modify-sprint/.gitkeep +0 -0
  641. package/lib/bmad-extension-plugin/skills/modify-sprint/SKILL.md +350 -0
  642. package/lib/bmad-extension-plugin/skills/modify-sprint/bmad-skill-manifest.yaml +3 -0
  643. package/lib/bmad-extension-plugin/skills/module-help.csv +62 -0
  644. package/lib/bmad-extension-plugin/skills/module.yaml +20 -0
  645. package/lib/bmad-extension-plugin/skills/prioritize-backlog/.gitkeep +0 -0
  646. package/lib/bmad-extension-plugin/skills/prioritize-backlog/SKILL.md +256 -0
  647. package/lib/bmad-extension-plugin/skills/prioritize-backlog/bmad-skill-manifest.yaml +3 -0
  648. package/lib/bmad-extension-plugin/skills/project-context-expansion/.gitkeep +0 -0
  649. package/lib/bmad-extension-plugin/skills/project-context-expansion/SKILL.md +238 -0
  650. package/lib/bmad-extension-plugin/skills/project-context-expansion/bmad-skill-manifest.yaml +3 -0
  651. package/lib/bmad-extension-plugin/skills/remove-from-sprint/.gitkeep +0 -0
  652. package/lib/bmad-extension-plugin/skills/remove-from-sprint/SKILL.md +223 -0
  653. package/lib/bmad-extension-plugin/skills/remove-from-sprint/bmad-skill-manifest.yaml +3 -0
  654. package/lib/bmad-extension-plugin/skills/sprint-status-view/.gitkeep +0 -0
  655. package/lib/bmad-extension-plugin/skills/sprint-status-view/SKILL.md +216 -0
  656. package/lib/bmad-extension-plugin/skills/sprint-status-view/bmad-skill-manifest.yaml +3 -0
  657. package/lib/bmad-extension-plugin/skills/sqa-audit/.gitkeep +0 -0
  658. package/lib/bmad-extension-plugin/skills/sqa-audit/SKILL.md +279 -0
  659. package/lib/bmad-extension-plugin/skills/sqa-audit/bmad-skill-manifest.yaml +3 -0
  660. package/lib/bmad-extension-plugin/skills/sqa-ieee12207/.gitkeep +0 -0
  661. package/lib/bmad-extension-plugin/skills/sqa-ieee12207/SKILL.md +374 -0
  662. package/lib/bmad-extension-plugin/skills/sqa-ieee12207/bmad-skill-manifest.yaml +3 -0
  663. package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/.gitkeep +0 -0
  664. package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/SKILL.md +244 -0
  665. package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/bmad-skill-manifest.yaml +3 -0
  666. package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/.gitkeep +0 -0
  667. package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/SKILL.md +32 -0
  668. package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/bmad-skill-manifest.yaml +3 -0
  669. package/lib/bmad-extension-plugin/skills/sre-check-secrets/.gitkeep +0 -0
  670. package/lib/bmad-extension-plugin/skills/sre-check-secrets/SKILL.md +23 -0
  671. package/lib/bmad-extension-plugin/skills/sre-check-secrets/bmad-skill-manifest.yaml +3 -0
  672. package/lib/bmad-extension-plugin/skills/sre-check-system-status/.gitkeep +0 -0
  673. package/lib/bmad-extension-plugin/skills/sre-check-system-status/SKILL.md +27 -0
  674. package/lib/bmad-extension-plugin/skills/sre-check-system-status/bmad-skill-manifest.yaml +3 -0
  675. package/lib/bmad-extension-plugin/skills/sre-day-2-ops/.gitkeep +0 -0
  676. package/lib/bmad-extension-plugin/skills/sre-day-2-ops/SKILL.md +26 -0
  677. package/lib/bmad-extension-plugin/skills/sre-day-2-ops/bmad-skill-manifest.yaml +3 -0
  678. package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/.gitkeep +0 -0
  679. package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/SKILL.md +28 -0
  680. package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/bmad-skill-manifest.yaml +3 -0
  681. package/lib/bmad-extension-plugin/skills/sre-fix-deployments/.gitkeep +0 -0
  682. package/lib/bmad-extension-plugin/skills/sre-fix-deployments/SKILL.md +25 -0
  683. package/lib/bmad-extension-plugin/skills/sre-fix-deployments/bmad-skill-manifest.yaml +3 -0
  684. package/lib/bmad-extension-plugin/skills/sre-gitops-status/.gitkeep +0 -0
  685. package/lib/bmad-extension-plugin/skills/sre-gitops-status/SKILL.md +25 -0
  686. package/lib/bmad-extension-plugin/skills/sre-gitops-status/bmad-skill-manifest.yaml +3 -0
  687. package/lib/bmad.js +1375 -372
  688. package/lib/installer.js +367 -2
  689. package/package.json +23 -5
  690. package/scripts/build-bmad-cache.js +250 -47
  691. package/scripts/build-plugin.js +574 -0
  692. package/skills/add-sprint/SKILL.md +39 -0
  693. package/skills/add-to-sprint/SKILL.md +39 -0
  694. package/skills/bmad-sprint-planning/SKILL.md +41 -0
  695. package/skills/bmad-sprint-status/SKILL.md +39 -0
  696. package/skills/cleanup-done/SKILL.md +39 -0
  697. package/skills/close-sprint/SKILL.md +39 -0
  698. package/skills/generate-backlog/SKILL.md +41 -0
  699. package/skills/modify-sprint/SKILL.md +39 -0
  700. package/skills/prioritize-backlog/SKILL.md +39 -0
  701. package/skills/remove-from-sprint/SKILL.md +39 -0
  702. package/skills/sprint-status-view/SKILL.md +39 -0
  703. package/skills/story-status-lookup/SKILL.md +38 -21
  704. package/.ma-agents.json +0 -10
  705. package/AGENTS.md +0 -97
  706. package/AiAudit.md +0 -12
  707. package/DEVELOPMENT.md +0 -173
  708. package/MANIFEST.yaml +0 -3
  709. package/_bmad-output/implementation-artifacts/16-4-validation-report.md +0 -79
  710. package/_bmad-output/implementation-artifacts/17-10-rework-generate-backlog.md +0 -237
  711. package/_bmad-output/implementation-artifacts/17-11-rework-add-to-sprint.md +0 -339
  712. package/_bmad-output/implementation-artifacts/17-12-rework-remove-from-sprint.md +0 -348
  713. package/_bmad-output/implementation-artifacts/17-13-rework-sprint-status-view.md +0 -383
  714. package/_bmad-output/implementation-artifacts/17-14-rework-cleanup-done.md +0 -348
  715. package/_bmad-output/implementation-artifacts/17-15-rework-bmad-sprint-planning.md +0 -385
  716. package/_bmad-output/implementation-artifacts/17-16-rework-add-sprint.md +0 -362
  717. package/_bmad-output/implementation-artifacts/17-17-rework-modify-sprint.md +0 -477
  718. package/_bmad-output/implementation-artifacts/17-18-rework-bmad-dev-story.md +0 -377
  719. package/_bmad-output/implementation-artifacts/17-19-rework-story-status-lookup.md +0 -301
  720. package/_bmad-output/implementation-artifacts/17-20-rework-bmad-sprint-status.md +0 -508
  721. package/_bmad-output/implementation-artifacts/17-21-new-close-sprint.md +0 -455
  722. package/_bmad-output/implementation-artifacts/17-22-jira-adapter-pattern.md +0 -325
  723. package/_bmad-output/implementation-artifacts/17-23-migration-deprecation-old-files.md +0 -403
  724. package/_bmad-output/implementation-artifacts/17-24-rework-prioritize-backlog.md +0 -344
  725. package/_bmad-output/implementation-artifacts/17-9-unified-sprint-status-schema.md +0 -279
  726. package/_bmad-output/implementation-artifacts/19-1-knowledge-graph-core-library.md +0 -239
  727. package/_bmad-output/implementation-artifacts/19-2-graph-emission-create-prd.md +0 -171
  728. package/_bmad-output/implementation-artifacts/19-3-graph-emission-create-architecture-epics.md +0 -179
  729. package/_bmad-output/implementation-artifacts/19-4-graph-emission-create-story-remaining.md +0 -190
  730. package/_bmad-output/implementation-artifacts/19-5-open-graph-skill.md +0 -213
  731. package/_bmad-output/implementation-artifacts/19-6-interactive-visualization-renderer.md +0 -259
  732. package/_bmad-output/implementation-artifacts/19-7-llm-writability-validation-tests.md +0 -280
  733. package/_bmad-output/implementation-artifacts/21-1-install-time-profile-prompt.md +0 -181
  734. package/_bmad-output/implementation-artifacts/21-10-profile-reconfigure.md +0 -161
  735. package/_bmad-output/implementation-artifacts/21-11-profile-uninstall.md +0 -150
  736. package/_bmad-output/implementation-artifacts/21-2-universal-instruction-block-expansion.md +0 -253
  737. package/_bmad-output/implementation-artifacts/21-3-roomodes-template-bmad-modes.md +0 -229
  738. package/_bmad-output/implementation-artifacts/21-4-agents-md-template-opencode.md +0 -275
  739. package/_bmad-output/implementation-artifacts/21-5-clinerules-template-extension.md +0 -221
  740. package/_bmad-output/implementation-artifacts/21-6-onprem-layered-guardrails.md +0 -287
  741. package/_bmad-output/implementation-artifacts/21-7-bmad-persona-phase-prefix.md +0 -258
  742. package/_bmad-output/implementation-artifacts/21-8-vllm-reference-doc-readme.md +0 -158
  743. package/_bmad-output/implementation-artifacts/21-9-tests-validation.md +0 -368
  744. package/_bmad-output/implementation-artifacts/4-1-vs-agent-registry-entry.md +0 -173
  745. package/_bmad-output/implementation-artifacts/4-2-vs-skill-template-format.md +0 -129
  746. package/_bmad-output/implementation-artifacts/5-5-explicit-parameter-passing.md +0 -274
  747. package/_bmad-output/implementation-artifacts/5-6-fix-space-in-path-bug.md +0 -186
  748. package/_bmad-output/implementation-artifacts/7-1-test-infrastructure-setup.md +0 -144
  749. package/_bmad-output/implementation-artifacts/7-2-installer-pipeline-tests.md +0 -132
  750. package/_bmad-output/implementation-artifacts/7-3-bmad-pipeline-tests.md +0 -119
  751. package/_bmad-output/implementation-artifacts/7-4-cli-command-routing-tests.md +0 -162
  752. package/_bmad-output/implementation-artifacts/bug-bmad-recompile-fails-on-airgapped-network.md +0 -112
  753. package/_bmad-output/implementation-artifacts/bug-experimentalwarning-about-commonjs-loading-es-module-during-install.md +0 -57
  754. package/_bmad-output/implementation-artifacts/deferred-work.md +0 -9
  755. package/_bmad-output/implementation-artifacts/done/1-1-ci-cd-yes-flag.md +0 -200
  756. package/_bmad-output/implementation-artifacts/done/10-1-ensure-bmad-output-not-gitignored.md +0 -172
  757. package/_bmad-output/implementation-artifacts/done/10-2-document-bmad-output-policy.md +0 -102
  758. package/_bmad-output/implementation-artifacts/done/11-1-auto-bug-detection-skill.md +0 -119
  759. package/_bmad-output/implementation-artifacts/done/11-2-bug-story-extension-workflow.md +0 -132
  760. package/_bmad-output/implementation-artifacts/done/11-3-integrate-bug-detection-code-review.md +0 -111
  761. package/_bmad-output/implementation-artifacts/done/12-1-add-sprint-workflow.md +0 -126
  762. package/_bmad-output/implementation-artifacts/done/12-2-add-to-sprint-workflow.md +0 -137
  763. package/_bmad-output/implementation-artifacts/done/12-3-modify-sprint-workflow.md +0 -127
  764. package/_bmad-output/implementation-artifacts/done/12-4-sprint-status-assigned-items.md +0 -129
  765. package/_bmad-output/implementation-artifacts/done/13-1-project-context-template-and-generator.md +0 -179
  766. package/_bmad-output/implementation-artifacts/done/13-2-install-pipeline-integration.md +0 -138
  767. package/_bmad-output/implementation-artifacts/done/13-3-bmad-critical-actions-update.md +0 -150
  768. package/_bmad-output/implementation-artifacts/done/13-4-retrospective-expansion-trigger.md +0 -128
  769. package/_bmad-output/implementation-artifacts/done/13-5-document-project-context-generation.md +0 -118
  770. package/_bmad-output/implementation-artifacts/done/15-1-bump-bmad-method-to-6-2-1.md +0 -132
  771. package/_bmad-output/implementation-artifacts/done/15-2-restructure-extension-module.md +0 -174
  772. package/_bmad-output/implementation-artifacts/done/15-3-convert-custom-agents-to-skill-folders.md +0 -183
  773. package/_bmad-output/implementation-artifacts/done/15-4-convert-mil498-workflows-to-skill-md.md +0 -252
  774. package/_bmad-output/implementation-artifacts/done/15-5-convert-sre-devops-cyber-workflows.md +0 -232
  775. package/_bmad-output/implementation-artifacts/done/15-6-separate-built-in-agent-customizations.md +0 -163
  776. package/_bmad-output/implementation-artifacts/done/15-7-migration-detection-and-upgrade-path.md +0 -133
  777. package/_bmad-output/implementation-artifacts/done/15-8-validate-migrated-agents-and-workflows.md +0 -172
  778. package/_bmad-output/implementation-artifacts/done/15-8-validation-report.md +0 -342
  779. package/_bmad-output/implementation-artifacts/done/16-1-repository-layout-wizard.md +0 -223
  780. package/_bmad-output/implementation-artifacts/done/16-2-config-storage-and-cross-reference.md +0 -180
  781. package/_bmad-output/implementation-artifacts/done/16-3-project-context-multi-repo-section.md +0 -136
  782. package/_bmad-output/implementation-artifacts/done/16-4-validate-cross-repo-path-resolution.md +0 -137
  783. package/_bmad-output/implementation-artifacts/done/16-4-validation-report.md +0 -79
  784. package/_bmad-output/implementation-artifacts/done/16-5-fix-config-lost-on-update.md +0 -110
  785. package/_bmad-output/implementation-artifacts/done/16-6-repo-sync-check-skill.md +0 -116
  786. package/_bmad-output/implementation-artifacts/done/16-7-portable-path-storage.md +0 -109
  787. package/_bmad-output/implementation-artifacts/done/16-8-cicd-remote-mode.md +0 -97
  788. package/_bmad-output/implementation-artifacts/done/16-9-reconfigure-layout-workflow.md +0 -125
  789. package/_bmad-output/implementation-artifacts/done/17-1-sprint-entity-model.md +0 -322
  790. package/_bmad-output/implementation-artifacts/done/17-2-flat-backlog-model.md +0 -264
  791. package/_bmad-output/implementation-artifacts/done/17-3-bug-as-story-type.md +0 -208
  792. package/_bmad-output/implementation-artifacts/done/17-4-backlog-to-sprint-workflow.md +0 -209
  793. package/_bmad-output/implementation-artifacts/done/17-5-sprint-to-backlog-workflow.md +0 -221
  794. package/_bmad-output/implementation-artifacts/done/17-6-done-item-cleanup.md +0 -273
  795. package/_bmad-output/implementation-artifacts/done/17-7-multi-criteria-prioritization.md +0 -235
  796. package/_bmad-output/implementation-artifacts/done/17-8-rework-sprint-status-display.md +0 -285
  797. package/_bmad-output/implementation-artifacts/done/2-1-cpp-coding-standards-skill.md +0 -188
  798. package/_bmad-output/implementation-artifacts/done/2-2-csharp-coding-standards-skill.md +0 -211
  799. package/_bmad-output/implementation-artifacts/done/2-3-python-coding-standards-skill.md +0 -189
  800. package/_bmad-output/implementation-artifacts/done/3-1-skill-scaffolding-tool.md +0 -184
  801. package/_bmad-output/implementation-artifacts/done/3-2-skill-validation-tool.md +0 -178
  802. package/_bmad-output/implementation-artifacts/done/3-3-mandatory-skill-designation.md +0 -136
  803. package/_bmad-output/implementation-artifacts/done/3-4-bmad-persona-customization-tooling.md +0 -141
  804. package/_bmad-output/implementation-artifacts/done/3-5-specialized-agent-development-tooling.md +0 -145
  805. package/_bmad-output/implementation-artifacts/done/5-1-bmad-method-direct-dependency.md +0 -188
  806. package/_bmad-output/implementation-artifacts/done/5-2-bmad-cache-build-script.md +0 -219
  807. package/_bmad-output/implementation-artifacts/done/5-3-pre-populate-bmad-cache.md +0 -234
  808. package/_bmad-output/implementation-artifacts/done/5-4-validate-bundled-installation.md +0 -274
  809. package/_bmad-output/implementation-artifacts/done/6-1-methodology-presentation-bundle.md +0 -173
  810. package/_bmad-output/implementation-artifacts/done/8-1-move-instruction-injection-to-top.md +0 -131
  811. package/_bmad-output/implementation-artifacts/done/8-2-agent-aware-injection-strategy.md +0 -124
  812. package/_bmad-output/implementation-artifacts/done/8-3-create-bmad-extension-module.md +0 -187
  813. package/_bmad-output/implementation-artifacts/done/8-4-integration-verification.md +0 -102
  814. package/_bmad-output/implementation-artifacts/done/8-5-per-agent-enforcement-hooks-research.md +0 -126
  815. package/_bmad-output/implementation-artifacts/done/8-6-context-persistence-research.md +0 -101
  816. package/_bmad-output/implementation-artifacts/done/9-1-register-opencode-agent.md +0 -73
  817. package/_bmad-output/implementation-artifacts/done/9-2-json-merge-injection.md +0 -91
  818. package/_bmad-output/implementation-artifacts/done/9-3-json-merge-existing.md +0 -113
  819. package/_bmad-output/implementation-artifacts/done/9-4-json-error-handling.md +0 -90
  820. package/_bmad-output/implementation-artifacts/epic-11-12-shared-guardrails.md +0 -53
  821. package/_bmad-output/implementation-artifacts/epic-15-adversarial-fixes.md +0 -287
  822. package/_bmad-output/implementation-artifacts/epic-16-adversarial-review.md +0 -49
  823. package/_bmad-output/implementation-artifacts/epic-16-edge-case-review.md +0 -230
  824. package/_bmad-output/implementation-artifacts/epic-17-adversarial-review.md +0 -37
  825. package/_bmad-output/implementation-artifacts/epic-17-edge-case-review.md +0 -140
  826. package/_bmad-output/implementation-artifacts/sprint-status.yaml +0 -139
  827. package/_bmad-output/planning-artifacts/adapter-pattern-spec.md +0 -508
  828. package/_bmad-output/planning-artifacts/architecture.md +0 -2023
  829. package/_bmad-output/planning-artifacts/domain-research-roocode-2026-03-31.md +0 -295
  830. package/_bmad-output/planning-artifacts/epics.md +0 -4232
  831. package/_bmad-output/planning-artifacts/mil498-workflow-audit.md +0 -290
  832. package/_bmad-output/planning-artifacts/prd.md +0 -811
  833. package/_bmad-output/planning-artifacts/product-brief-agents-2026-03-08.md +0 -214
  834. package/_bmad-output/planning-artifacts/sprint-status-schema.md +0 -506
  835. package/_bmad-output/planning-artifacts/validation-report-prd-2026-04-07.md +0 -330
  836. package/_bmad-output/project-context.md +0 -47
  837. package/agents.code-workspace +0 -11
  838. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-554778ad4e7254827618ebd2497c3f4bce9054a4.idx +0 -0
  839. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-554778ad4e7254827618ebd2497c3f4bce9054a4.rev +0 -0
  840. package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.idx +0 -0
  841. package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.rev +0 -0
  842. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-brainstorming-coach/bmad-skill-manifest.yaml +0 -11
  843. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-creative-problem-solver/bmad-skill-manifest.yaml +0 -11
  844. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-design-thinking-coach/bmad-skill-manifest.yaml +0 -11
  845. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-innovation-strategist/bmad-skill-manifest.yaml +0 -11
  846. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-presentation-master/bmad-skill-manifest.yaml +0 -11
  847. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-storyteller/bmad-skill-manifest.yaml +0 -11
  848. package/lib/bmad-cache/cis/src/skills/bmad-cis-design-thinking/bmad-skill-manifest.yaml +0 -1
  849. package/lib/bmad-cache/cis/src/skills/bmad-cis-innovation-strategy/bmad-skill-manifest.yaml +0 -1
  850. package/lib/bmad-cache/cis/src/skills/bmad-cis-problem-solving/bmad-skill-manifest.yaml +0 -1
  851. package/lib/bmad-cache/cis/src/skills/bmad-cis-storytelling/bmad-skill-manifest.yaml +0 -1
  852. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.idx +0 -0
  853. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.rev +0 -0
  854. package/lib/bmad-cache/gds/src/agents/gds-agent-game-architect/bmad-skill-manifest.yaml +0 -11
  855. package/lib/bmad-cache/gds/src/agents/gds-agent-game-designer/bmad-skill-manifest.yaml +0 -11
  856. package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/bmad-skill-manifest.yaml +0 -11
  857. package/lib/bmad-cache/gds/src/agents/gds-agent-game-qa/bmad-skill-manifest.yaml +0 -11
  858. package/lib/bmad-cache/gds/src/agents/gds-agent-game-scrum-master/bmad-skill-manifest.yaml +0 -11
  859. package/lib/bmad-cache/gds/src/agents/gds-agent-game-solo-dev/bmad-skill-manifest.yaml +0 -11
  860. package/lib/bmad-cache/gds/src/agents/gds-agent-tech-writer/bmad-skill-manifest.yaml +0 -11
  861. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-brainstorm-game/bmad-skill-manifest.yaml +0 -1
  862. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-create-game-brief/bmad-skill-manifest.yaml +0 -1
  863. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/bmad-skill-manifest.yaml +0 -9
  864. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/gds-domain-research/bmad-skill-manifest.yaml +0 -1
  865. package/lib/bmad-cache/gds/src/workflows/2-design/create-prd/bmad-skill-manifest.yaml +0 -14
  866. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-gdd/bmad-skill-manifest.yaml +0 -1
  867. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-narrative/bmad-skill-manifest.yaml +0 -1
  868. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-ux-design/bmad-skill-manifest.yaml +0 -1
  869. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-check-implementation-readiness/bmad-skill-manifest.yaml +0 -1
  870. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-create-epics-and-stories/bmad-skill-manifest.yaml +0 -1
  871. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/bmad-skill-manifest.yaml +0 -1
  872. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-generate-project-context/bmad-skill-manifest.yaml +0 -1
  873. package/lib/bmad-cache/gds/src/workflows/4-production/gds-code-review/bmad-skill-manifest.yaml +0 -1
  874. package/lib/bmad-cache/gds/src/workflows/4-production/gds-correct-course/bmad-skill-manifest.yaml +0 -1
  875. package/lib/bmad-cache/gds/src/workflows/4-production/gds-create-story/bmad-skill-manifest.yaml +0 -1
  876. package/lib/bmad-cache/gds/src/workflows/4-production/gds-dev-story/bmad-skill-manifest.yaml +0 -1
  877. package/lib/bmad-cache/gds/src/workflows/4-production/gds-retrospective/bmad-skill-manifest.yaml +0 -1
  878. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-planning/bmad-skill-manifest.yaml +0 -1
  879. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-status/bmad-skill-manifest.yaml +0 -1
  880. package/lib/bmad-cache/gds/src/workflows/gametest/gds-e2e-scaffold/bmad-skill-manifest.yaml +0 -1
  881. package/lib/bmad-cache/gds/src/workflows/gametest/gds-performance-test/bmad-skill-manifest.yaml +0 -1
  882. package/lib/bmad-cache/gds/src/workflows/gametest/gds-playtest-plan/bmad-skill-manifest.yaml +0 -1
  883. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-automate/bmad-skill-manifest.yaml +0 -1
  884. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-design/bmad-skill-manifest.yaml +0 -1
  885. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-framework/bmad-skill-manifest.yaml +0 -1
  886. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-review/bmad-skill-manifest.yaml +0 -1
  887. package/lib/bmad-cache/gds/src/workflows/gds-document-project/bmad-skill-manifest.yaml +0 -1
  888. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev/bmad-skill-manifest.yaml +0 -1
  889. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev-new-preview/bmad-skill-manifest.yaml +0 -1
  890. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-spec/bmad-skill-manifest.yaml +0 -1
  891. package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.idx +0 -0
  892. package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.rev +0 -0
  893. package/lib/bmad-cache/tea/_git_preserved/refs/tags/v1.10.0 +0 -1
  894. package/lib/bmad-cache/tea/src/agents/bmad-tea/bmad-skill-manifest.yaml +0 -14
  895. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/bmad-skill-manifest.yaml +0 -1
  896. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/workflow.md +0 -90
  897. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/bmad-skill-manifest.yaml +0 -1
  898. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/workflow.md +0 -41
  899. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/bmad-skill-manifest.yaml +0 -1
  900. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/workflow.md +0 -41
  901. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/bmad-skill-manifest.yaml +0 -1
  902. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/workflow.md +0 -41
  903. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/bmad-skill-manifest.yaml +0 -1
  904. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/workflow.md +0 -41
  905. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/bmad-skill-manifest.yaml +0 -1
  906. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/workflow.md +0 -41
  907. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/bmad-skill-manifest.yaml +0 -1
  908. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/workflow.md +0 -41
  909. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/bmad-skill-manifest.yaml +0 -1
  910. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/workflow.md +0 -41
  911. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/bmad-skill-manifest.yaml +0 -1
  912. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow.md +0 -41
  913. package/lib/bmad-customizations/bmm-demerzel.customize.yaml +0 -36
  914. package/lib/bmad-customizations/demerzel.md +0 -32
  915. package/lib/bmad-customize/bmm-quick-flow-solo-dev.customize.yaml +0 -8
  916. package/lib/bmad-extension/module.yaml +0 -5
  917. package/out.txt +0 -0
  918. package/test/agent-injection-strategy.test.js +0 -129
  919. package/test/agents-md.test.js +0 -398
  920. package/test/bmad-extension.test.js +0 -283
  921. package/test/bmad-output-policy.test.js +0 -119
  922. package/test/bmad-persona-phase-prefix.test.js +0 -271
  923. package/test/bmad-version-bump.test.js +0 -313
  924. package/test/build-bmad-args.test.js +0 -368
  925. package/test/cicd-remote-mode.test.js +0 -224
  926. package/test/clinerules.test.js +0 -339
  927. package/test/config-layout.test.js +0 -230
  928. package/test/config-lost-on-update.test.js +0 -363
  929. package/test/config-storage.test.js +0 -275
  930. package/test/convert-agents-to-skills.test.js +0 -255
  931. package/test/create-agent.test.js +0 -232
  932. package/test/cross-repo-validation.test.js +0 -201
  933. package/test/enforcement-hooks.test.js +0 -324
  934. package/test/experimental-warning.test.js +0 -314
  935. package/test/extension-module-restructure.test.js +0 -407
  936. package/test/fixtures/README.md +0 -74
  937. package/test/fixtures/empty-project/README.md +0 -5
  938. package/test/fixtures/empty-project/package.json +0 -5
  939. package/test/fixtures/onprem-profile-baseline/.gitkeep +0 -2
  940. package/test/fixtures/standard-profile-baseline/.gitkeep +0 -2
  941. package/test/generate-project-context.test.js +0 -483
  942. package/test/instruction-block.test.js +0 -388
  943. package/test/instruction-injection.test.js +0 -336
  944. package/test/integration-verification.test.js +0 -433
  945. package/test/migration-validation.test.js +0 -506
  946. package/test/migration.test.js +0 -832
  947. package/test/offline-recompile.test.js +0 -267
  948. package/test/onprem-injection.test.js +0 -441
  949. package/test/onprem-layer.test.js +0 -419
  950. package/test/opencode-agent.test.js +0 -150
  951. package/test/opencode-json-error.test.js +0 -260
  952. package/test/opencode-json-injection.test.js +0 -264
  953. package/test/opencode-json-merge.test.js +0 -318
  954. package/test/portable-paths.test.js +0 -268
  955. package/test/profile.test.js +0 -301
  956. package/test/reconfigure.test.js +0 -436
  957. package/test/repo-layout.test.js +0 -246
  958. package/test/roo-code-agent.test.js +0 -166
  959. package/test/roo-code-injection.test.js +0 -172
  960. package/test/roomodes.test.js +0 -343
  961. package/test/skill-authoring.test.js +0 -272
  962. package/test/skill-customize-agent.test.js +0 -253
  963. package/test/skill-mandatory.test.js +0 -235
  964. package/test/skill-validation.test.js +0 -378
  965. package/test/story-15-5-workflow-skills.test.js +0 -311
  966. package/test/uninstall.test.js +0 -402
  967. package/test/yes-flag.test.js +0 -200
  968. /package/lib/bmad-cache/gds/src/{gametest → agents/gds-agent-game-dev/gametest}/qa-index.csv +0 -0
  969. /package/lib/bmad-cache/gds/src/workflows/2-design/{create-prd → gds-create-prd}/data/domain-complexity.csv +0 -0
  970. /package/lib/bmad-cache/gds/src/workflows/2-design/{create-prd → gds-create-prd}/data/project-types.csv +0 -0
  971. /package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/add-sprint}/.gitkeep +0 -0
  972. /package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/add-to-sprint}/.gitkeep +0 -0
  973. /package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/bmad-dev-story}/.gitkeep +0 -0
  974. /package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/bmad-sprint-planning}/.gitkeep +0 -0
  975. /package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/bmad-sprint-status}/.gitkeep +0 -0
@@ -0,0 +1,341 @@
1
+ """
2
+ template_gnn_module.py — BMAD DL Lifecycle
3
+ (Inspired by K-Dense claude-scientific-skills/pytorch-geometric/)
4
+
5
+ PyTorch Geometric (PyG) template for Graph Neural Network tasks.
6
+ Covers GCN, GAT, GraphSAGE, and GIN architectures for:
7
+ - Node classification (predicting labels for each node in a graph)
8
+ - Graph classification (predicting a label for an entire graph)
9
+
10
+ Use this for defect detection on circuit graphs, molecular property prediction,
11
+ social network analysis, or any graph-structured data.
12
+
13
+ Requires: pip install torch-geometric
14
+
15
+ Usage:
16
+ Copy this file to src/models/your_gnn.py and:
17
+ 1. Choose an architecture (GCN / GAT / GraphSAGE / GIN)
18
+ 2. Set in_channels to your node feature dimension
19
+ 3. Set out_channels to number of classes
20
+ 4. Wrap with your LightningModule or use train/test helpers directly
21
+ """
22
+
23
+ from __future__ import annotations
24
+
25
+ from typing import Optional
26
+
27
+ try:
28
+ import torch
29
+ import torch.nn as nn
30
+ import torch.nn.functional as F
31
+ HAS_TORCH = True
32
+ except ImportError:
33
+ HAS_TORCH = False
34
+ raise ImportError("Install PyTorch: pip install torch")
35
+
36
+ try:
37
+ from torch_geometric.nn import (
38
+ GCNConv, GATConv, SAGEConv, GINConv,
39
+ global_mean_pool, global_max_pool, global_add_pool,
40
+ )
41
+ from torch_geometric.data import Data, DataLoader
42
+ HAS_PYG = True
43
+ except ImportError:
44
+ HAS_PYG = False
45
+ raise ImportError(
46
+ "Install PyTorch Geometric: pip install torch-geometric\n"
47
+ "See: https://pytorch-geometric.readthedocs.io/en/latest/install/installation.html"
48
+ )
49
+
50
+
51
+ # ══════════════════════════════════════════════════════════════════════════════
52
+ # Architecture 1: GCN — Graph Convolutional Network
53
+ # Best for: Homophilic graphs (connected nodes tend to share labels)
54
+ # ══════════════════════════════════════════════════════════════════════════════
55
+
56
+ class GCN(nn.Module):
57
+ """
58
+ Graph Convolutional Network (Kipf & Welling, 2017).
59
+
60
+ Args:
61
+ in_channels: Dimension of input node features.
62
+ hidden_channels: Hidden layer dimension.
63
+ out_channels: Number of output classes.
64
+ num_layers: Number of GCN layers (2-4 recommended).
65
+ dropout: Dropout rate.
66
+ task: 'node' or 'graph' classification.
67
+ """
68
+ def __init__(
69
+ self, in_channels: int, hidden_channels: int, out_channels: int,
70
+ num_layers: int = 3, dropout: float = 0.5, task: str = "node",
71
+ ):
72
+ super().__init__()
73
+ self.task = task
74
+ self.dropout = dropout
75
+
76
+ self.convs = nn.ModuleList()
77
+ self.bns = nn.ModuleList()
78
+
79
+ for i in range(num_layers):
80
+ in_ch = in_channels if i == 0 else hidden_channels
81
+ self.convs.append(GCNConv(in_ch, hidden_channels))
82
+ self.bns.append(nn.BatchNorm1d(hidden_channels))
83
+
84
+ self.classifier = nn.Linear(hidden_channels, out_channels)
85
+
86
+ def forward(self, x: torch.Tensor, edge_index: torch.Tensor,
87
+ batch: Optional[torch.Tensor] = None) -> torch.Tensor:
88
+ for conv, bn in zip(self.convs[:-1], self.bns[:-1]):
89
+ x = F.relu(bn(conv(x, edge_index)))
90
+ x = F.dropout(x, p=self.dropout, training=self.training)
91
+
92
+ x = self.convs[-1](x, edge_index)
93
+
94
+ if self.task == "graph":
95
+ x = global_mean_pool(x, batch)
96
+
97
+ return self.classifier(x)
98
+
99
+
100
+ # ══════════════════════════════════════════════════════════════════════════════
101
+ # Architecture 2: GAT — Graph Attention Network
102
+ # Best for: Graphs where some neighbors are more important than others
103
+ # ══════════════════════════════════════════════════════════════════════════════
104
+
105
+ class GAT(nn.Module):
106
+ """
107
+ Graph Attention Network (Veličković et al., 2018).
108
+ Multi-head attention assigns different importance to each neighbor.
109
+
110
+ Args:
111
+ in_channels: Dimension of input node features.
112
+ hidden_channels: Hidden layer dimension per head.
113
+ out_channels: Number of output classes.
114
+ heads: Number of attention heads (4-8 recommended).
115
+ dropout: Dropout rate (applied to attention weights too).
116
+ task: 'node' or 'graph' classification.
117
+ """
118
+ def __init__(
119
+ self, in_channels: int, hidden_channels: int, out_channels: int,
120
+ heads: int = 4, dropout: float = 0.5, task: str = "node",
121
+ ):
122
+ super().__init__()
123
+ self.task = task
124
+ self.dropout = dropout
125
+
126
+ self.conv1 = GATConv(in_channels, hidden_channels, heads=heads, dropout=dropout)
127
+ self.conv2 = GATConv(hidden_channels * heads, out_channels, heads=1,
128
+ concat=False, dropout=dropout)
129
+ self.bn1 = nn.BatchNorm1d(hidden_channels * heads)
130
+
131
+ def forward(self, x: torch.Tensor, edge_index: torch.Tensor,
132
+ batch: Optional[torch.Tensor] = None) -> torch.Tensor:
133
+ x = F.dropout(x, p=self.dropout, training=self.training)
134
+ x = F.elu(self.bn1(self.conv1(x, edge_index)))
135
+ x = F.dropout(x, p=self.dropout, training=self.training)
136
+ x = self.conv2(x, edge_index)
137
+
138
+ if self.task == "graph":
139
+ x = global_mean_pool(x, batch)
140
+
141
+ return x # Raw logits — apply softmax/sigmoid in loss
142
+
143
+
144
+ # ══════════════════════════════════════════════════════════════════════════════
145
+ # Architecture 3: GraphSAGE — Inductive / large-graph friendly
146
+ # Best for: Large graphs, inductive settings (unseen nodes at test time)
147
+ # ══════════════════════════════════════════════════════════════════════════════
148
+
149
+ class GraphSAGE(nn.Module):
150
+ """
151
+ GraphSAGE (Hamilton et al., 2017).
152
+ Aggregates neighbor features via mean/max/LSTM — scales to large graphs.
153
+ Inductive: can generalize to unseen nodes not in the training graph.
154
+
155
+ Args:
156
+ in_channels: Dimension of input node features.
157
+ hidden_channels: Hidden layer dimension.
158
+ out_channels: Number of output classes.
159
+ num_layers: Number of SAGE layers.
160
+ dropout: Dropout rate.
161
+ task: 'node' or 'graph' classification.
162
+ """
163
+ def __init__(
164
+ self, in_channels: int, hidden_channels: int, out_channels: int,
165
+ num_layers: int = 3, dropout: float = 0.5, task: str = "node",
166
+ ):
167
+ super().__init__()
168
+ self.task = task
169
+ self.dropout = dropout
170
+
171
+ self.convs = nn.ModuleList()
172
+ self.bns = nn.ModuleList()
173
+
174
+ for i in range(num_layers):
175
+ in_ch = in_channels if i == 0 else hidden_channels
176
+ self.convs.append(SAGEConv(in_ch, hidden_channels))
177
+ self.bns.append(nn.BatchNorm1d(hidden_channels))
178
+
179
+ self.classifier = nn.Linear(hidden_channels, out_channels)
180
+
181
+ def forward(self, x: torch.Tensor, edge_index: torch.Tensor,
182
+ batch: Optional[torch.Tensor] = None) -> torch.Tensor:
183
+ for conv, bn in zip(self.convs, self.bns):
184
+ x = F.relu(bn(conv(x, edge_index)))
185
+ x = F.dropout(x, p=self.dropout, training=self.training)
186
+
187
+ if self.task == "graph":
188
+ x = global_mean_pool(x, batch)
189
+
190
+ return self.classifier(x)
191
+
192
+
193
+ # ══════════════════════════════════════════════════════════════════════════════
194
+ # Architecture 4: GIN — Graph Isomorphism Network
195
+ # Best for: Graph classification, maximally expressive (Weisfeiler-Leman equiv.)
196
+ # ══════════════════════════════════════════════════════════════════════════════
197
+
198
+ class GIN(nn.Module):
199
+ """
200
+ Graph Isomorphism Network (Xu et al., 2019).
201
+ Most expressive GNN for graph-level tasks in the WL hierarchy.
202
+ Aggregates by: h_v = MLP((1 + eps) * h_v + sum(neighbors))
203
+
204
+ Args:
205
+ in_channels: Dimension of input node features.
206
+ hidden_channels: Hidden dimension for each MLP layer.
207
+ out_channels: Number of output classes.
208
+ num_layers: Number of GIN layers (3-5 for graph classification).
209
+ dropout: Dropout rate.
210
+ """
211
+ def __init__(
212
+ self, in_channels: int, hidden_channels: int, out_channels: int,
213
+ num_layers: int = 4, dropout: float = 0.5,
214
+ ):
215
+ super().__init__()
216
+ self.dropout = dropout
217
+ self.convs = nn.ModuleList()
218
+ self.bns = nn.ModuleList()
219
+
220
+ for i in range(num_layers):
221
+ in_ch = in_channels if i == 0 else hidden_channels
222
+ mlp = nn.Sequential(
223
+ nn.Linear(in_ch, hidden_channels),
224
+ nn.BatchNorm1d(hidden_channels),
225
+ nn.ReLU(),
226
+ nn.Linear(hidden_channels, hidden_channels),
227
+ )
228
+ self.convs.append(GINConv(mlp, train_eps=True))
229
+ self.bns.append(nn.BatchNorm1d(hidden_channels))
230
+
231
+ # Jumping Knowledge: concat all layer outputs before classifier
232
+ self.classifier = nn.Sequential(
233
+ nn.Linear(hidden_channels * num_layers, hidden_channels),
234
+ nn.ReLU(),
235
+ nn.Dropout(dropout),
236
+ nn.Linear(hidden_channels, out_channels),
237
+ )
238
+
239
+ def forward(self, x: torch.Tensor, edge_index: torch.Tensor,
240
+ batch: torch.Tensor) -> torch.Tensor:
241
+ layer_outputs: list[torch.Tensor] = []
242
+ for conv, bn in zip(self.convs, self.bns):
243
+ x = F.relu(bn(conv(x, edge_index)))
244
+ x = F.dropout(x, p=self.dropout, training=self.training)
245
+ # Global pooling at each layer (Jumping Knowledge)
246
+ layer_outputs.append(global_add_pool(x, batch))
247
+
248
+ # Concatenate all layers' pooled outputs
249
+ x = torch.cat(layer_outputs, dim=1)
250
+ return self.classifier(x)
251
+
252
+
253
+ # ══════════════════════════════════════════════════════════════════════════════
254
+ # Training helpers
255
+ # ══════════════════════════════════════════════════════════════════════════════
256
+
257
+ def train_epoch(model: nn.Module, loader: "DataLoader",
258
+ optimizer: "torch.optim.Optimizer",
259
+ criterion: nn.Module, device: str) -> float:
260
+ model.train()
261
+ total_loss = 0.0
262
+ for data in loader:
263
+ data = data.to(device)
264
+ optimizer.zero_grad()
265
+ if model.__class__.__name__ == "GIN" or getattr(model, "task", "") == "graph":
266
+ out = model(data.x, data.edge_index, data.batch)
267
+ else:
268
+ out = model(data.x, data.edge_index)
269
+ if hasattr(data, "train_mask"):
270
+ out = out[data.train_mask]
271
+ target = data.y[data.train_mask]
272
+ else:
273
+ target = data.y
274
+ loss = criterion(out, target)
275
+ loss.backward()
276
+ optimizer.step()
277
+ total_loss += float(loss)
278
+ continue
279
+ loss = criterion(out, data.y)
280
+ loss.backward()
281
+ optimizer.step()
282
+ total_loss += float(loss)
283
+ return total_loss / len(loader)
284
+
285
+
286
+ @torch.no_grad()
287
+ def evaluate(model: nn.Module, loader: "DataLoader", device: str) -> float:
288
+ model.eval()
289
+ correct = total = 0
290
+ for data in loader:
291
+ data = data.to(device)
292
+ if model.__class__.__name__ == "GIN" or getattr(model, "task", "") == "graph":
293
+ out = model(data.x, data.edge_index, data.batch)
294
+ pred = out.argmax(dim=1)
295
+ correct += int((pred == data.y).sum())
296
+ total += data.y.size(0)
297
+ else:
298
+ out = model(data.x, data.edge_index)
299
+ if hasattr(data, "test_mask"):
300
+ pred = out[data.test_mask].argmax(dim=1)
301
+ correct += int((pred == data.y[data.test_mask]).sum())
302
+ total += int(data.test_mask.sum())
303
+ else:
304
+ pred = out.argmax(dim=1)
305
+ correct += int((pred == data.y).sum())
306
+ total += data.y.size(0)
307
+ return correct / total if total > 0 else 0.0
308
+
309
+
310
+ # ══════════════════════════════════════════════════════════════════════════════
311
+ # Architecture selection guide
312
+ # ══════════════════════════════════════════════════════════════════════════════
313
+
314
+ ARCHITECTURE_GUIDE = """
315
+ GNN Architecture Selection Guide — BMAD DL Lifecycle
316
+ ─────────────────────────────────────────────────────
317
+ Task: Node classification
318
+ Homophilic graph (similar nodes connected) → GCN
319
+ Attention needed (noisy neighbors) → GAT
320
+ Large / dynamic / inductive graph → GraphSAGE
321
+
322
+ Task: Graph classification
323
+ Standard accuracy → GraphSAGE or GCN + global pool
324
+ Maximum expressiveness → GIN (recommended)
325
+ Edge features matter → GAT with edge_attr
326
+
327
+ Quick model size guide:
328
+ Small dataset (<1K graphs) → 2 layers, hidden=64
329
+ Medium dataset (1K–50K) → 3 layers, hidden=128
330
+ Large dataset (50K+) → 4-5 layers, hidden=256, mini-batch DataLoader
331
+
332
+ Typical hyperparameter ranges:
333
+ hidden_channels: 64, 128, 256
334
+ num_layers: 2, 3, 4
335
+ dropout: 0.3 – 0.6
336
+ heads (GAT): 4, 8
337
+ learning_rate: 0.001 – 0.01
338
+ """
339
+
340
+ if __name__ == "__main__":
341
+ print(ARCHITECTURE_GUIDE)
@@ -0,0 +1,158 @@
1
+ """
2
+ template_lightning_module.py — BMAD DL Lifecycle
3
+ PyTorch Lightning LightningModule template for supervised classification/regression.
4
+
5
+ Drop this file into your project and fill in the TODO sections.
6
+
7
+ Usage:
8
+ Copy to src/models/your_model.py and implement:
9
+ - __init__: define layers
10
+ - forward: define forward pass
11
+ - _shared_step: compute loss + metrics for any split
12
+ The training/validation/test steps call _shared_step automatically.
13
+ """
14
+
15
+ from __future__ import annotations
16
+
17
+ from typing import Any
18
+
19
+ import torch
20
+ import torch.nn as nn
21
+ import torch.nn.functional as F
22
+
23
+ try:
24
+ import lightning as L
25
+ LightningModule = L.LightningModule
26
+ except ImportError:
27
+ try:
28
+ import pytorch_lightning as pl
29
+ LightningModule = pl.LightningModule
30
+ except ImportError:
31
+ raise ImportError(
32
+ "Install PyTorch Lightning: pip install lightning\n"
33
+ " or: pip install pytorch-lightning"
34
+ )
35
+
36
+
37
+ class YourModel(LightningModule):
38
+ """
39
+ Template LightningModule for image/tabular classification or regression.
40
+
41
+ Replace 'YourModel' with a descriptive name (e.g. DefectClassifier, FruitNet).
42
+
43
+ Args:
44
+ num_classes: Number of output classes (use 1 for binary/regression).
45
+ learning_rate: Initial learning rate for the optimizer.
46
+ weight_decay: L2 regularization weight.
47
+ """
48
+
49
+ def __init__(
50
+ self,
51
+ num_classes: int = 2,
52
+ learning_rate: float = 1e-3,
53
+ weight_decay: float = 1e-4,
54
+ ):
55
+ super().__init__()
56
+ # Saves all __init__ args to self.hparams (enables checkpointing)
57
+ self.save_hyperparameters()
58
+
59
+ # ── TODO: Define your model architecture ──────────────────────────────
60
+ # Example: simple two-layer MLP for tabular data
61
+ self.encoder = nn.Sequential(
62
+ nn.Linear(128, 64), # TODO: replace 128 with your input dim
63
+ nn.BatchNorm1d(64),
64
+ nn.ReLU(),
65
+ nn.Dropout(0.3),
66
+ )
67
+ self.classifier = nn.Linear(64, num_classes)
68
+ # ── END TODO ──────────────────────────────────────────────────────────
69
+
70
+ # Loss function
71
+ if num_classes == 1:
72
+ self.loss_fn = nn.BCEWithLogitsLoss()
73
+ else:
74
+ self.loss_fn = nn.CrossEntropyLoss()
75
+
76
+ def forward(self, x: torch.Tensor) -> torch.Tensor:
77
+ """
78
+ Forward pass.
79
+
80
+ Args:
81
+ x: Input tensor, shape depends on your architecture.
82
+ Returns:
83
+ Logits tensor of shape (batch, num_classes) or (batch, 1).
84
+ """
85
+ # ── TODO: Implement forward pass ──────────────────────────────────────
86
+ features = self.encoder(x)
87
+ logits = self.classifier(features)
88
+ return logits
89
+ # ── END TODO ──────────────────────────────────────────────────────────
90
+
91
+ def _shared_step(self, batch: Any, stage: str) -> torch.Tensor:
92
+ """
93
+ Common logic for train/val/test.
94
+
95
+ Args:
96
+ batch: Tuple of (inputs, labels) from your DataLoader.
97
+ stage: One of "train", "val", "test".
98
+ Returns:
99
+ Loss tensor.
100
+ """
101
+ # ── TODO: Unpack batch to match your DataLoader output ────────────────
102
+ x, y = batch # e.g. (images, labels) or (features, targets)
103
+ # ── END TODO ──────────────────────────────────────────────────────────
104
+
105
+ logits = self(x)
106
+
107
+ if self.hparams.num_classes == 1:
108
+ loss = self.loss_fn(logits.squeeze(1), y.float())
109
+ preds = (torch.sigmoid(logits.squeeze(1)) > 0.5).long()
110
+ else:
111
+ loss = self.loss_fn(logits, y.long())
112
+ preds = logits.argmax(dim=1)
113
+
114
+ acc = (preds == y).float().mean()
115
+
116
+ # Log metrics — appears in TensorBoard / W&B / CSV logger
117
+ self.log(f"{stage}/loss", loss, prog_bar=(stage == "val"), on_step=False, on_epoch=True)
118
+ self.log(f"{stage}/acc", acc, prog_bar=True, on_step=False, on_epoch=True)
119
+
120
+ return loss
121
+
122
+ # ── Lightning hooks (do not rename these) ─────────────────────────────────
123
+
124
+ def training_step(self, batch: Any, batch_idx: int) -> torch.Tensor:
125
+ loss = self._shared_step(batch, "train")
126
+ if torch.cuda.is_available():
127
+ self.log("gpu/memory_allocated_gb", torch.cuda.memory_allocated() / 1e9,
128
+ on_step=True, on_epoch=False, prog_bar=False)
129
+ return loss
130
+
131
+ def validation_step(self, batch: Any, batch_idx: int) -> None:
132
+ self._shared_step(batch, "val")
133
+
134
+ def test_step(self, batch: Any, batch_idx: int) -> None:
135
+ self._shared_step(batch, "test")
136
+
137
+ def configure_optimizers(self) -> dict:
138
+ """
139
+ Set up optimizer and learning rate scheduler.
140
+ Swap optimizer or scheduler as needed.
141
+ """
142
+ optimizer = torch.optim.AdamW(
143
+ self.parameters(),
144
+ lr=self.hparams.learning_rate,
145
+ weight_decay=self.hparams.weight_decay,
146
+ )
147
+ scheduler = torch.optim.lr_scheduler.CosineAnnealingLR(
148
+ optimizer,
149
+ T_max=10, # TODO: set to your total_epochs
150
+ eta_min=1e-6,
151
+ )
152
+ return {
153
+ "optimizer": optimizer,
154
+ "lr_scheduler": {
155
+ "scheduler": scheduler,
156
+ "monitor": "val/loss",
157
+ },
158
+ }
@@ -0,0 +1,3 @@
1
+ type: skill
2
+ name: ml-experiment
3
+ module: ma-skills
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "ML Experiment Execution",
3
+ "description": "Executes training runs against a locked TECHSPEC and logs metrics to W&B/MLflow/ClearML.",
4
+ "version": "1.0.0",
5
+ "author": "Demerzel (ML Scientist)",
6
+ "tags": ["Machine Learning", "Experiment", "Training", "Logging", "Demerzel"]
7
+ }
@@ -0,0 +1,81 @@
1
+ ---
2
+
3
+ name: ml-hparam
4
+
5
+ description: Acts as Demerzel (Machine Learning Scientist) to run structured hyperparameter optimization after a baseline architecture is confirmed to work. Uses Optuna, W&B Sweeps, or Ray Tune. Produces a validated best-parameter configuration for the next tuned experiment run.
6
+
7
+ ---
8
+
9
+ # Machine Learning Workflow: Hyperparameter Optimization (Conditional) — Demerzel
10
+
11
+ ## 1. Operating Instructions
12
+
13
+ You are **Demerzel**, an expert Machine Learning Scientist running structured hyperparameter search. **This stage is conditional.** Run it only after `ml-analysis` confirms the baseline architecture meets at least the "Worst case (alive)" tier in the TECHSPEC.
14
+
15
+ Your goal is to find the optimal parameter configuration within the search space defined in the TECHSPEC, then hand off validated parameters to the next `ml-experiment` run.
16
+
17
+ 1. **Verify the prerequisite:** Read the latest `ml-analysis-exp-[id].md`. Confirm: "Worst case (alive)" tier or better was reached. If not, recommend running `ml-revision` instead.
18
+
19
+ 2. **Read the TECHSPEC:** `_bmad-output/planning-artifacts/techspecs/ml-techspec-exp-[id].md` — use Section C as the HPO search space.
20
+
21
+ 3. **Run the advisor:** `/ml-advise` — check if any past HPO runs exist.
22
+
23
+ 4. **Run the HPO search:** (Optuna, W&B Sweeps, or Ray Tune).
24
+ - Define objective: Maximize the primary metric from the PRD.
25
+ - Use early stopping to save budget.
26
+ - Example (Optuna):
27
+ ```python
28
+ import optuna
29
+ def objective(trial):
30
+ lr = trial.suggest_float("lr", 1e-5, 1e-2, log=True)
31
+ # train and return f1
32
+ return f1
33
+ study = optuna.create_study(direction="maximize")
34
+ study.optimize(objective, n_trials=50)
35
+ ```
36
+
37
+ 5. **CRITICAL:** Do not write the HPO report yet. Present the top-5 parameter configurations to the user and ask for sign-off. Halt and wait.
38
+
39
+ 6. Upon confirmation, write `_bmad-output/planning-artifacts/techspecs/ml-hparam-exp-[id].md` with the validated best configuration and update the original TECHSPEC.
40
+
41
+ 7. **Commit the HPO artifact:**
42
+ ```bash
43
+ git add _bmad-output/planning-artifacts/techspecs/ml-hparam-exp-[id].md
44
+ git commit -m "docs(ml-hparam): validated best config for EXP-[id] val/f1=[score]"
45
+ ```
46
+
47
+ ## 2. Expected Output Template
48
+
49
+ ### Template A: `_bmad-output/planning-artifacts/techspecs/ml-hparam-exp-[id].md`
50
+
51
+ ```markdown
52
+ # HPO Results: EXP-[ID]
53
+
54
+ ## A. Search Summary
55
+ * **Linked Experiment:** EXP-[ID]
56
+ * **HPO Tool:** [Optuna / W&B Sweeps / Ray Tune]
57
+ * **Sweep URL:** [link]
58
+
59
+ ## B. Top Configurations
60
+ | Rank | lr | batch_size | dropout | val/f1 | Run URL |
61
+ | :--- | :--- | :--- | :--- | :--- | :--- |
62
+ | 1 (best) | 2.3e-4 | 1024 | 0.22 | 0.94 | [link] |
63
+
64
+ ## C. Parameter Importance
65
+ * [Which params had highest impact from study analysis.]
66
+
67
+ ## D. Validated Best Configuration (copy-paste ready)
68
+ ```yaml
69
+ learning_rate: 2.3e-4
70
+ batch_size: 1024
71
+ dropout: 0.22
72
+ ```
73
+
74
+ ## E. Scientist Sign-off
75
+ * [ ] Best params are within real-world acceptable ranges.
76
+ * [ ] No anomalous values.
77
+ * **Signed off by:** [Demerzel / Date]
78
+
79
+ ## F. Next Step
80
+ * Run `/ml-experiment` with run_type="tuned" using the above config.
81
+ ```
@@ -0,0 +1,3 @@
1
+ type: skill
2
+ name: ml-hparam
3
+ module: ma-skills
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "ML Hyperparameter Optimization",
3
+ "description": "Runs structured HPO using Optuna, W&B Sweeps, or Ray Tune after a baseline is confirmed.",
4
+ "version": "1.0.0",
5
+ "author": "Demerzel (ML Scientist)",
6
+ "tags": ["Machine Learning", "HPO", "Optimization", "Optuna", "Sweeps", "Demerzel"]
7
+ }
@@ -0,0 +1,50 @@
1
+ ---
2
+ name: ml-ideation
3
+ description: ML Ideation — Frame the research problem, define success criteria, and produce a Machine Learning PRD
4
+ ---
5
+
6
+ # ML Stage 1 — Ideation & PRD
7
+
8
+ Frame the ML problem rigorously before any data or modelling work begins.
9
+
10
+ ## Instructions
11
+
12
+ ### 1. Elicit Problem Context
13
+ Ask the user for (or extract from context):
14
+ - **Business problem**: What decision or process will the model improve?
15
+ - **Target variable**: What are we predicting? (classification / regression / ranking / generation)
16
+ - **Failure cost asymmetry**: What is the cost of a false negative vs a false positive in this domain?
17
+ - **Success definition**: What metric threshold constitutes a production-ready model?
18
+ - **Data availability**: What raw datasets exist and where are they located?
19
+
20
+ ### 2. Produce Research Thesis
21
+ Write `_bmad-output/planning-artifacts/research-thesis.md` with:
22
+ - **Hypothesis**: A single falsifiable statement (e.g. "We can predict X with >Y recall using features A, B, C")
23
+ - **Assumptions**: List all assumptions that must hold for the hypothesis to be testable
24
+ - **Risks**: Top 3 risks that could invalidate the hypothesis (data quality, label noise, distribution shift)
25
+ - **Null Hypothesis**: The baseline we must beat (random, heuristic, or existing system)
26
+
27
+ ### 3. Produce ML PRD
28
+ Write `_bmad-output/planning-artifacts/ml-prd.md` with sections:
29
+ - **Problem Statement** (1 paragraph)
30
+ - **Stakeholders & Users**
31
+ - **Success Metrics** (primary metric, secondary metrics, guardrail metrics)
32
+ - **Failure Cost Matrix** (FP cost vs FN cost with domain justification)
33
+ - **Data Requirements** (source, volume, freshness, labelling)
34
+ - **Out of Scope** (explicit non-goals)
35
+ - **Dependencies** (upstream data pipelines, external APIs)
36
+
37
+ ### 4. Surface Dilemmas & Commit Gate
38
+
39
+ Before presenting and **before any git commit**:
40
+
41
+ - Identify every framing choice where two or more reasonable options existed (metric threshold, failure cost ratio, scope boundary, two-stage vs single-stage, etc.)
42
+ - Format each as: **Dilemma [Letter] — Title** / **Context** / **Options (a/b)** / **Recommendation** / **Your decision:** [blank]
43
+ - If all choices were unambiguous, state explicitly: "No open dilemmas."
44
+ - **Do NOT commit any artifact until the user has responded and given explicit approval.**
45
+
46
+ ### 5. Confirm & Advance
47
+ - Present both documents to the user for review
48
+ - Ask: "Do you approve this framing, or would you like to adjust the hypothesis or success criteria?"
49
+ - On approval: commit artifacts, then say "Stage 1 complete. When ready, proceed to **Stage 2 — /ml-eda** to analyze the raw data."
50
+ - STOP and WAIT for user confirmation before advancing
@@ -0,0 +1,3 @@
1
+ type: skill
2
+ name: ml-ideation
3
+ module: ma-skills