ma-agents 3.4.8 → 3.5.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 (762) hide show
  1. package/AiAudit.md +7 -0
  2. package/README.md +78 -29
  3. package/_bmad-output/implementation-artifacts/17-10-rework-generate-backlog.md +237 -0
  4. package/_bmad-output/implementation-artifacts/17-11-rework-add-to-sprint.md +339 -0
  5. package/_bmad-output/implementation-artifacts/17-12-rework-remove-from-sprint.md +348 -0
  6. package/_bmad-output/implementation-artifacts/17-13-rework-sprint-status-view.md +383 -0
  7. package/_bmad-output/implementation-artifacts/17-14-rework-cleanup-done.md +348 -0
  8. package/_bmad-output/implementation-artifacts/17-15-rework-bmad-sprint-planning.md +385 -0
  9. package/_bmad-output/implementation-artifacts/17-16-rework-add-sprint.md +362 -0
  10. package/_bmad-output/implementation-artifacts/17-17-rework-modify-sprint.md +477 -0
  11. package/_bmad-output/implementation-artifacts/17-18-rework-bmad-dev-story.md +377 -0
  12. package/_bmad-output/implementation-artifacts/17-19-rework-story-status-lookup.md +301 -0
  13. package/_bmad-output/implementation-artifacts/17-20-rework-bmad-sprint-status.md +508 -0
  14. package/_bmad-output/implementation-artifacts/17-21-new-close-sprint.md +455 -0
  15. package/_bmad-output/implementation-artifacts/17-22-jira-adapter-pattern.md +325 -0
  16. package/_bmad-output/implementation-artifacts/17-23-migration-deprecation-old-files.md +403 -0
  17. package/_bmad-output/implementation-artifacts/17-24-rework-prioritize-backlog.md +344 -0
  18. package/_bmad-output/implementation-artifacts/17-9-unified-sprint-status-schema.md +279 -0
  19. package/_bmad-output/implementation-artifacts/4-1-vs-agent-registry-entry.md +173 -0
  20. package/_bmad-output/implementation-artifacts/4-2-vs-skill-template-format.md +129 -0
  21. package/_bmad-output/implementation-artifacts/5-5-explicit-parameter-passing.md +274 -0
  22. package/_bmad-output/implementation-artifacts/5-6-fix-space-in-path-bug.md +186 -0
  23. package/_bmad-output/implementation-artifacts/7-1-test-infrastructure-setup.md +144 -0
  24. package/_bmad-output/implementation-artifacts/7-2-installer-pipeline-tests.md +132 -0
  25. package/_bmad-output/implementation-artifacts/7-3-bmad-pipeline-tests.md +119 -0
  26. package/_bmad-output/implementation-artifacts/7-4-cli-command-routing-tests.md +162 -0
  27. package/_bmad-output/implementation-artifacts/deferred-work.md +9 -0
  28. package/_bmad-output/implementation-artifacts/done/1-1-ci-cd-yes-flag.md +200 -0
  29. package/_bmad-output/implementation-artifacts/done/10-1-ensure-bmad-output-not-gitignored.md +172 -0
  30. package/_bmad-output/implementation-artifacts/done/10-2-document-bmad-output-policy.md +102 -0
  31. package/_bmad-output/implementation-artifacts/done/11-1-auto-bug-detection-skill.md +119 -0
  32. package/_bmad-output/implementation-artifacts/done/11-2-bug-story-extension-workflow.md +132 -0
  33. package/_bmad-output/implementation-artifacts/done/11-3-integrate-bug-detection-code-review.md +111 -0
  34. package/_bmad-output/implementation-artifacts/done/12-1-add-sprint-workflow.md +126 -0
  35. package/_bmad-output/implementation-artifacts/done/12-2-add-to-sprint-workflow.md +137 -0
  36. package/_bmad-output/implementation-artifacts/done/12-3-modify-sprint-workflow.md +127 -0
  37. package/_bmad-output/implementation-artifacts/done/12-4-sprint-status-assigned-items.md +129 -0
  38. package/_bmad-output/implementation-artifacts/done/13-1-project-context-template-and-generator.md +179 -0
  39. package/_bmad-output/implementation-artifacts/done/13-2-install-pipeline-integration.md +138 -0
  40. package/_bmad-output/implementation-artifacts/done/13-3-bmad-critical-actions-update.md +150 -0
  41. package/_bmad-output/implementation-artifacts/done/13-4-retrospective-expansion-trigger.md +128 -0
  42. package/_bmad-output/implementation-artifacts/done/13-5-document-project-context-generation.md +118 -0
  43. package/_bmad-output/implementation-artifacts/done/15-1-bump-bmad-method-to-6-2-1.md +132 -0
  44. package/_bmad-output/implementation-artifacts/done/15-2-restructure-extension-module.md +174 -0
  45. package/_bmad-output/implementation-artifacts/done/15-3-convert-custom-agents-to-skill-folders.md +183 -0
  46. package/_bmad-output/implementation-artifacts/done/15-4-convert-mil498-workflows-to-skill-md.md +252 -0
  47. package/_bmad-output/implementation-artifacts/done/15-5-convert-sre-devops-cyber-workflows.md +232 -0
  48. package/_bmad-output/implementation-artifacts/done/15-6-separate-built-in-agent-customizations.md +163 -0
  49. package/_bmad-output/implementation-artifacts/done/15-7-migration-detection-and-upgrade-path.md +133 -0
  50. package/_bmad-output/implementation-artifacts/done/15-8-validate-migrated-agents-and-workflows.md +172 -0
  51. package/_bmad-output/implementation-artifacts/done/15-8-validation-report.md +342 -0
  52. package/_bmad-output/implementation-artifacts/done/16-1-repository-layout-wizard.md +223 -0
  53. package/_bmad-output/implementation-artifacts/done/16-2-config-storage-and-cross-reference.md +180 -0
  54. package/_bmad-output/implementation-artifacts/done/16-3-project-context-multi-repo-section.md +136 -0
  55. package/_bmad-output/implementation-artifacts/done/16-4-validate-cross-repo-path-resolution.md +137 -0
  56. package/_bmad-output/implementation-artifacts/done/16-4-validation-report.md +79 -0
  57. package/_bmad-output/implementation-artifacts/done/16-5-fix-config-lost-on-update.md +110 -0
  58. package/_bmad-output/implementation-artifacts/done/16-6-repo-sync-check-skill.md +116 -0
  59. package/_bmad-output/implementation-artifacts/done/16-7-portable-path-storage.md +109 -0
  60. package/_bmad-output/implementation-artifacts/done/16-8-cicd-remote-mode.md +97 -0
  61. package/_bmad-output/implementation-artifacts/done/16-9-reconfigure-layout-workflow.md +125 -0
  62. package/_bmad-output/implementation-artifacts/done/17-1-sprint-entity-model.md +322 -0
  63. package/_bmad-output/implementation-artifacts/done/17-2-flat-backlog-model.md +264 -0
  64. package/_bmad-output/implementation-artifacts/done/17-3-bug-as-story-type.md +208 -0
  65. package/_bmad-output/implementation-artifacts/done/17-4-backlog-to-sprint-workflow.md +209 -0
  66. package/_bmad-output/implementation-artifacts/done/17-5-sprint-to-backlog-workflow.md +221 -0
  67. package/_bmad-output/implementation-artifacts/done/17-6-done-item-cleanup.md +273 -0
  68. package/_bmad-output/implementation-artifacts/done/17-7-multi-criteria-prioritization.md +235 -0
  69. package/_bmad-output/implementation-artifacts/done/17-8-rework-sprint-status-display.md +285 -0
  70. package/_bmad-output/implementation-artifacts/done/2-1-cpp-coding-standards-skill.md +188 -0
  71. package/_bmad-output/implementation-artifacts/done/2-2-csharp-coding-standards-skill.md +211 -0
  72. package/_bmad-output/implementation-artifacts/done/2-3-python-coding-standards-skill.md +189 -0
  73. package/_bmad-output/implementation-artifacts/done/3-1-skill-scaffolding-tool.md +184 -0
  74. package/_bmad-output/implementation-artifacts/done/3-2-skill-validation-tool.md +178 -0
  75. package/_bmad-output/implementation-artifacts/done/3-3-mandatory-skill-designation.md +136 -0
  76. package/_bmad-output/implementation-artifacts/done/3-4-bmad-persona-customization-tooling.md +141 -0
  77. package/_bmad-output/implementation-artifacts/done/3-5-specialized-agent-development-tooling.md +145 -0
  78. package/_bmad-output/implementation-artifacts/done/5-1-bmad-method-direct-dependency.md +188 -0
  79. package/_bmad-output/implementation-artifacts/done/5-2-bmad-cache-build-script.md +219 -0
  80. package/_bmad-output/implementation-artifacts/done/5-3-pre-populate-bmad-cache.md +234 -0
  81. package/_bmad-output/implementation-artifacts/done/5-4-validate-bundled-installation.md +274 -0
  82. package/_bmad-output/implementation-artifacts/done/6-1-methodology-presentation-bundle.md +173 -0
  83. package/_bmad-output/implementation-artifacts/done/8-1-move-instruction-injection-to-top.md +131 -0
  84. package/_bmad-output/implementation-artifacts/done/8-2-agent-aware-injection-strategy.md +124 -0
  85. package/_bmad-output/implementation-artifacts/done/8-3-create-bmad-extension-module.md +187 -0
  86. package/_bmad-output/implementation-artifacts/done/8-4-integration-verification.md +102 -0
  87. package/_bmad-output/implementation-artifacts/done/8-5-per-agent-enforcement-hooks-research.md +126 -0
  88. package/_bmad-output/implementation-artifacts/done/8-6-context-persistence-research.md +101 -0
  89. package/_bmad-output/implementation-artifacts/done/9-1-register-opencode-agent.md +73 -0
  90. package/_bmad-output/implementation-artifacts/done/9-2-json-merge-injection.md +91 -0
  91. package/_bmad-output/implementation-artifacts/done/9-3-json-merge-existing.md +113 -0
  92. package/_bmad-output/implementation-artifacts/done/9-4-json-error-handling.md +90 -0
  93. package/_bmad-output/implementation-artifacts/epic-11-12-shared-guardrails.md +53 -0
  94. package/_bmad-output/implementation-artifacts/epic-15-adversarial-fixes.md +287 -0
  95. package/_bmad-output/implementation-artifacts/epic-16-adversarial-review.md +49 -0
  96. package/_bmad-output/implementation-artifacts/epic-16-edge-case-review.md +230 -0
  97. package/_bmad-output/implementation-artifacts/epic-17-adversarial-review.md +37 -0
  98. package/_bmad-output/implementation-artifacts/epic-17-edge-case-review.md +140 -0
  99. package/_bmad-output/implementation-artifacts/sprint-status.yaml +83 -0
  100. package/_bmad-output/methodology/BMAD_AI_Development_Training.pptx +0 -0
  101. package/_bmad-output/methodology/version.json +7 -0
  102. package/_bmad-output/planning-artifacts/adapter-pattern-spec.md +508 -0
  103. package/_bmad-output/planning-artifacts/architecture.md +1619 -0
  104. package/_bmad-output/planning-artifacts/domain-research-roocode-2026-03-31.md +295 -0
  105. package/_bmad-output/planning-artifacts/epics.md +3287 -0
  106. package/_bmad-output/planning-artifacts/mil498-workflow-audit.md +290 -0
  107. package/_bmad-output/planning-artifacts/prd.md +684 -0
  108. package/_bmad-output/planning-artifacts/product-brief-agents-2026-03-08.md +214 -0
  109. package/_bmad-output/planning-artifacts/sprint-status-schema.md +506 -0
  110. package/_bmad-output/project-context.md +47 -0
  111. package/bin/cli.js +5 -4
  112. package/lib/agents.js +16 -1
  113. package/lib/bmad-extension/module-help.csv +27 -22
  114. package/lib/bmad-extension/skills/add-sprint/SKILL.md +120 -152
  115. package/lib/bmad-extension/skills/add-to-sprint/SKILL.md +170 -116
  116. package/{.opencode/skills/add-to-sprint → lib/bmad-extension/skills/bmad-dev-story}/bmad-skill-manifest.yaml +1 -1
  117. package/{.opencode → lib/bmad-extension}/skills/bmad-dev-story/checklist.md +13 -13
  118. package/{.opencode → lib/bmad-extension}/skills/bmad-dev-story/workflow.md +103 -44
  119. package/lib/bmad-extension/skills/bmad-ma-agent-mil498/SKILL.md +2 -1
  120. package/lib/bmad-extension/skills/bmad-sprint-planning/SKILL.md +6 -0
  121. package/{.opencode/skills/create-bug-story → lib/bmad-extension/skills/bmad-sprint-planning}/bmad-skill-manifest.yaml +1 -1
  122. package/lib/bmad-extension/skills/bmad-sprint-planning/checklist.md +74 -0
  123. package/lib/bmad-extension/skills/bmad-sprint-planning/sprint-status-template.yaml +89 -0
  124. package/lib/bmad-extension/skills/bmad-sprint-planning/workflow.md +372 -0
  125. package/lib/bmad-extension/skills/bmad-sprint-status/SKILL.md +6 -0
  126. package/{.opencode/skills/cleanup-done → lib/bmad-extension/skills/bmad-sprint-status}/bmad-skill-manifest.yaml +1 -1
  127. package/lib/bmad-extension/skills/bmad-sprint-status/workflow.md +434 -0
  128. package/lib/bmad-extension/skills/cleanup-done/SKILL.md +154 -98
  129. package/lib/bmad-extension/skills/close-sprint/SKILL.md +379 -0
  130. package/{.opencode/skills/add-sprint → lib/bmad-extension/skills/close-sprint}/bmad-skill-manifest.yaml +1 -1
  131. package/lib/bmad-extension/skills/create-bug-story/SKILL.md +7 -75
  132. package/lib/bmad-extension/skills/generate-backlog/SKILL.md +152 -140
  133. package/lib/bmad-extension/skills/mil498-requirement-quality/SKILL.md +105 -0
  134. package/lib/bmad-extension/skills/mil498-requirement-quality/bmad-skill-manifest.yaml +5 -0
  135. package/lib/bmad-extension/skills/mil498-ssdd/prompts/05-validate.md +4 -0
  136. package/lib/bmad-extension/skills/modify-sprint/SKILL.md +224 -235
  137. package/lib/bmad-extension/skills/prioritize-backlog/SKILL.md +157 -135
  138. package/lib/bmad-extension/skills/remove-from-sprint/SKILL.md +125 -104
  139. package/lib/bmad-extension/skills/sprint-status-view/SKILL.md +153 -239
  140. package/lib/bmad-extension/workflows/add-sprint/workflow.md +119 -155
  141. package/lib/bmad-extension/workflows/add-to-sprint/workflow.md +233 -3
  142. package/lib/bmad-extension/workflows/modify-sprint/workflow.md +228 -181
  143. package/lib/bmad-extension/workflows/remove-from-sprint/workflow.md +164 -0
  144. package/lib/bmad-extension/workflows/sprint-status-view/workflow.md +165 -3
  145. package/mil498/README.md +4 -0
  146. package/out.txt +0 -0
  147. package/package.json +1 -1
  148. package/skills/add-sprint/SKILL.md +165 -0
  149. package/skills/add-sprint/skill.json +7 -0
  150. package/skills/add-to-sprint/SKILL.md +231 -0
  151. package/skills/add-to-sprint/skill.json +7 -0
  152. package/skills/bmad-sprint-planning/SKILL.md +321 -0
  153. package/skills/bmad-sprint-planning/skill.json +7 -0
  154. package/skills/bmad-sprint-status/SKILL.md +273 -0
  155. package/skills/bmad-sprint-status/skill.json +7 -0
  156. package/skills/cleanup-done/SKILL.md +203 -0
  157. package/skills/cleanup-done/skill.json +7 -0
  158. package/skills/close-sprint/SKILL.md +370 -0
  159. package/skills/close-sprint/skill.json +7 -0
  160. package/skills/generate-backlog/SKILL.md +178 -0
  161. package/skills/generate-backlog/skill.json +7 -0
  162. package/skills/modify-sprint/SKILL.md +302 -0
  163. package/skills/modify-sprint/skill.json +7 -0
  164. package/skills/prioritize-backlog/SKILL.md +203 -0
  165. package/skills/prioritize-backlog/skill.json +7 -0
  166. package/skills/remove-from-sprint/SKILL.md +174 -0
  167. package/skills/remove-from-sprint/skill.json +7 -0
  168. package/skills/sprint-status-view/SKILL.md +173 -0
  169. package/skills/sprint-status-view/skill.json +7 -0
  170. package/skills/story-status-lookup/SKILL.md +21 -6
  171. package/skills/story-status-lookup/skill.json +2 -2
  172. package/test/extension-module-restructure.test.js +12 -11
  173. package/test/migration-validation.test.js +10 -10
  174. package/.opencode/skills/.ma-agents.json +0 -122
  175. package/.opencode/skills/MANIFEST.yaml +0 -126
  176. package/.opencode/skills/add-sprint/SKILL.md +0 -207
  177. package/.opencode/skills/add-to-sprint/SKILL.md +0 -189
  178. package/.opencode/skills/bmad-advanced-elicitation/SKILL.md +0 -137
  179. package/.opencode/skills/bmad-advanced-elicitation/methods.csv +0 -51
  180. package/.opencode/skills/bmad-agent-analyst/SKILL.md +0 -56
  181. package/.opencode/skills/bmad-agent-analyst/bmad-skill-manifest.yaml +0 -11
  182. package/.opencode/skills/bmad-agent-architect/SKILL.md +0 -52
  183. package/.opencode/skills/bmad-agent-architect/bmad-skill-manifest.yaml +0 -11
  184. package/.opencode/skills/bmad-agent-dev/SKILL.md +0 -62
  185. package/.opencode/skills/bmad-agent-dev/bmad-skill-manifest.yaml +0 -11
  186. package/.opencode/skills/bmad-agent-pm/SKILL.md +0 -57
  187. package/.opencode/skills/bmad-agent-pm/bmad-skill-manifest.yaml +0 -11
  188. package/.opencode/skills/bmad-agent-qa/SKILL.md +0 -59
  189. package/.opencode/skills/bmad-agent-qa/bmad-skill-manifest.yaml +0 -11
  190. package/.opencode/skills/bmad-agent-quick-flow-solo-dev/SKILL.md +0 -51
  191. package/.opencode/skills/bmad-agent-quick-flow-solo-dev/bmad-skill-manifest.yaml +0 -11
  192. package/.opencode/skills/bmad-agent-sm/SKILL.md +0 -53
  193. package/.opencode/skills/bmad-agent-sm/bmad-skill-manifest.yaml +0 -11
  194. package/.opencode/skills/bmad-agent-tech-writer/SKILL.md +0 -55
  195. package/.opencode/skills/bmad-agent-tech-writer/bmad-skill-manifest.yaml +0 -11
  196. package/.opencode/skills/bmad-agent-tech-writer/explain-concept.md +0 -20
  197. package/.opencode/skills/bmad-agent-tech-writer/mermaid-gen.md +0 -20
  198. package/.opencode/skills/bmad-agent-tech-writer/validate-doc.md +0 -19
  199. package/.opencode/skills/bmad-agent-tech-writer/write-document.md +0 -20
  200. package/.opencode/skills/bmad-agent-ux-designer/SKILL.md +0 -53
  201. package/.opencode/skills/bmad-agent-ux-designer/bmad-skill-manifest.yaml +0 -11
  202. package/.opencode/skills/bmad-brainstorming/SKILL.md +0 -6
  203. package/.opencode/skills/bmad-brainstorming/brain-methods.csv +0 -62
  204. package/.opencode/skills/bmad-brainstorming/steps/step-01-session-setup.md +0 -214
  205. package/.opencode/skills/bmad-brainstorming/steps/step-01b-continue.md +0 -124
  206. package/.opencode/skills/bmad-brainstorming/steps/step-02a-user-selected.md +0 -229
  207. package/.opencode/skills/bmad-brainstorming/steps/step-02b-ai-recommended.md +0 -239
  208. package/.opencode/skills/bmad-brainstorming/steps/step-02c-random-selection.md +0 -211
  209. package/.opencode/skills/bmad-brainstorming/steps/step-02d-progressive-flow.md +0 -266
  210. package/.opencode/skills/bmad-brainstorming/steps/step-03-technique-execution.md +0 -401
  211. package/.opencode/skills/bmad-brainstorming/steps/step-04-idea-organization.md +0 -305
  212. package/.opencode/skills/bmad-brainstorming/template.md +0 -15
  213. package/.opencode/skills/bmad-brainstorming/workflow.md +0 -53
  214. package/.opencode/skills/bmad-check-implementation-readiness/SKILL.md +0 -6
  215. package/.opencode/skills/bmad-check-implementation-readiness/steps/step-01-document-discovery.md +0 -179
  216. package/.opencode/skills/bmad-check-implementation-readiness/steps/step-02-prd-analysis.md +0 -168
  217. package/.opencode/skills/bmad-check-implementation-readiness/steps/step-03-epic-coverage-validation.md +0 -169
  218. package/.opencode/skills/bmad-check-implementation-readiness/steps/step-04-ux-alignment.md +0 -129
  219. package/.opencode/skills/bmad-check-implementation-readiness/steps/step-05-epic-quality-review.md +0 -241
  220. package/.opencode/skills/bmad-check-implementation-readiness/steps/step-06-final-assessment.md +0 -126
  221. package/.opencode/skills/bmad-check-implementation-readiness/templates/readiness-report-template.md +0 -4
  222. package/.opencode/skills/bmad-check-implementation-readiness/workflow.md +0 -49
  223. package/.opencode/skills/bmad-cis-design-thinking/SKILL.md +0 -6
  224. package/.opencode/skills/bmad-cis-design-thinking/bmad-skill-manifest.yaml +0 -1
  225. package/.opencode/skills/bmad-cis-design-thinking/design-methods.csv +0 -31
  226. package/.opencode/skills/bmad-cis-design-thinking/template.md +0 -111
  227. package/.opencode/skills/bmad-cis-design-thinking/workflow.md +0 -242
  228. package/.opencode/skills/bmad-cis-innovation-strategy/SKILL.md +0 -6
  229. package/.opencode/skills/bmad-cis-innovation-strategy/bmad-skill-manifest.yaml +0 -1
  230. package/.opencode/skills/bmad-cis-innovation-strategy/innovation-frameworks.csv +0 -31
  231. package/.opencode/skills/bmad-cis-innovation-strategy/template.md +0 -189
  232. package/.opencode/skills/bmad-cis-innovation-strategy/workflow.md +0 -315
  233. package/.opencode/skills/bmad-cis-problem-solving/SKILL.md +0 -6
  234. package/.opencode/skills/bmad-cis-problem-solving/bmad-skill-manifest.yaml +0 -1
  235. package/.opencode/skills/bmad-cis-problem-solving/solving-methods.csv +0 -31
  236. package/.opencode/skills/bmad-cis-problem-solving/template.md +0 -165
  237. package/.opencode/skills/bmad-cis-problem-solving/workflow.md +0 -291
  238. package/.opencode/skills/bmad-cis-storytelling/SKILL.md +0 -6
  239. package/.opencode/skills/bmad-cis-storytelling/bmad-skill-manifest.yaml +0 -1
  240. package/.opencode/skills/bmad-cis-storytelling/story-types.csv +0 -26
  241. package/.opencode/skills/bmad-cis-storytelling/template.md +0 -113
  242. package/.opencode/skills/bmad-cis-storytelling/workflow.md +0 -321
  243. package/.opencode/skills/bmad-code-review/SKILL.md +0 -6
  244. package/.opencode/skills/bmad-code-review/steps/step-01-gather-context.md +0 -62
  245. package/.opencode/skills/bmad-code-review/steps/step-02-review.md +0 -34
  246. package/.opencode/skills/bmad-code-review/steps/step-03-triage.md +0 -49
  247. package/.opencode/skills/bmad-code-review/steps/step-04-present.md +0 -129
  248. package/.opencode/skills/bmad-code-review/workflow.md +0 -55
  249. package/.opencode/skills/bmad-correct-course/SKILL.md +0 -6
  250. package/.opencode/skills/bmad-correct-course/checklist.md +0 -288
  251. package/.opencode/skills/bmad-correct-course/workflow.md +0 -267
  252. package/.opencode/skills/bmad-create-architecture/SKILL.md +0 -6
  253. package/.opencode/skills/bmad-create-architecture/architecture-decision-template.md +0 -12
  254. package/.opencode/skills/bmad-create-architecture/data/domain-complexity.csv +0 -13
  255. package/.opencode/skills/bmad-create-architecture/data/project-types.csv +0 -7
  256. package/.opencode/skills/bmad-create-architecture/steps/step-01-init.md +0 -153
  257. package/.opencode/skills/bmad-create-architecture/steps/step-01b-continue.md +0 -173
  258. package/.opencode/skills/bmad-create-architecture/steps/step-02-context.md +0 -224
  259. package/.opencode/skills/bmad-create-architecture/steps/step-03-starter.md +0 -329
  260. package/.opencode/skills/bmad-create-architecture/steps/step-04-decisions.md +0 -318
  261. package/.opencode/skills/bmad-create-architecture/steps/step-05-patterns.md +0 -359
  262. package/.opencode/skills/bmad-create-architecture/steps/step-06-structure.md +0 -379
  263. package/.opencode/skills/bmad-create-architecture/steps/step-07-validation.md +0 -359
  264. package/.opencode/skills/bmad-create-architecture/steps/step-08-complete.md +0 -76
  265. package/.opencode/skills/bmad-create-architecture/workflow.md +0 -38
  266. package/.opencode/skills/bmad-create-epics-and-stories/SKILL.md +0 -6
  267. package/.opencode/skills/bmad-create-epics-and-stories/steps/step-01-validate-prerequisites.md +0 -255
  268. package/.opencode/skills/bmad-create-epics-and-stories/steps/step-02-design-epics.md +0 -212
  269. package/.opencode/skills/bmad-create-epics-and-stories/steps/step-03-create-stories.md +0 -255
  270. package/.opencode/skills/bmad-create-epics-and-stories/steps/step-04-final-validation.md +0 -131
  271. package/.opencode/skills/bmad-create-epics-and-stories/templates/epics-template.md +0 -61
  272. package/.opencode/skills/bmad-create-epics-and-stories/workflow.md +0 -53
  273. package/.opencode/skills/bmad-create-prd/SKILL.md +0 -6
  274. package/.opencode/skills/bmad-create-prd/data/domain-complexity.csv +0 -15
  275. package/.opencode/skills/bmad-create-prd/data/prd-purpose.md +0 -197
  276. package/.opencode/skills/bmad-create-prd/data/project-types.csv +0 -11
  277. package/.opencode/skills/bmad-create-prd/steps-c/step-01-init.md +0 -178
  278. package/.opencode/skills/bmad-create-prd/steps-c/step-01b-continue.md +0 -161
  279. package/.opencode/skills/bmad-create-prd/steps-c/step-02-discovery.md +0 -208
  280. package/.opencode/skills/bmad-create-prd/steps-c/step-02b-vision.md +0 -142
  281. package/.opencode/skills/bmad-create-prd/steps-c/step-02c-executive-summary.md +0 -158
  282. package/.opencode/skills/bmad-create-prd/steps-c/step-03-success.md +0 -214
  283. package/.opencode/skills/bmad-create-prd/steps-c/step-04-journeys.md +0 -201
  284. package/.opencode/skills/bmad-create-prd/steps-c/step-05-domain.md +0 -194
  285. package/.opencode/skills/bmad-create-prd/steps-c/step-06-innovation.md +0 -211
  286. package/.opencode/skills/bmad-create-prd/steps-c/step-07-project-type.md +0 -222
  287. package/.opencode/skills/bmad-create-prd/steps-c/step-08-scoping.md +0 -216
  288. package/.opencode/skills/bmad-create-prd/steps-c/step-09-functional.md +0 -219
  289. package/.opencode/skills/bmad-create-prd/steps-c/step-10-nonfunctional.md +0 -230
  290. package/.opencode/skills/bmad-create-prd/steps-c/step-11-polish.md +0 -221
  291. package/.opencode/skills/bmad-create-prd/steps-c/step-12-complete.md +0 -115
  292. package/.opencode/skills/bmad-create-prd/templates/prd-template.md +0 -10
  293. package/.opencode/skills/bmad-create-prd/workflow.md +0 -62
  294. package/.opencode/skills/bmad-create-story/SKILL.md +0 -6
  295. package/.opencode/skills/bmad-create-story/checklist.md +0 -357
  296. package/.opencode/skills/bmad-create-story/discover-inputs.md +0 -88
  297. package/.opencode/skills/bmad-create-story/template.md +0 -49
  298. package/.opencode/skills/bmad-create-story/workflow.md +0 -380
  299. package/.opencode/skills/bmad-create-ux-design/SKILL.md +0 -6
  300. package/.opencode/skills/bmad-create-ux-design/steps/step-01-init.md +0 -135
  301. package/.opencode/skills/bmad-create-ux-design/steps/step-01b-continue.md +0 -127
  302. package/.opencode/skills/bmad-create-ux-design/steps/step-02-discovery.md +0 -190
  303. package/.opencode/skills/bmad-create-ux-design/steps/step-03-core-experience.md +0 -217
  304. package/.opencode/skills/bmad-create-ux-design/steps/step-04-emotional-response.md +0 -220
  305. package/.opencode/skills/bmad-create-ux-design/steps/step-05-inspiration.md +0 -235
  306. package/.opencode/skills/bmad-create-ux-design/steps/step-06-design-system.md +0 -253
  307. package/.opencode/skills/bmad-create-ux-design/steps/step-07-defining-experience.md +0 -255
  308. package/.opencode/skills/bmad-create-ux-design/steps/step-08-visual-foundation.md +0 -225
  309. package/.opencode/skills/bmad-create-ux-design/steps/step-09-design-directions.md +0 -225
  310. package/.opencode/skills/bmad-create-ux-design/steps/step-10-user-journeys.md +0 -242
  311. package/.opencode/skills/bmad-create-ux-design/steps/step-11-component-strategy.md +0 -249
  312. package/.opencode/skills/bmad-create-ux-design/steps/step-12-ux-patterns.md +0 -238
  313. package/.opencode/skills/bmad-create-ux-design/steps/step-13-responsive-accessibility.md +0 -265
  314. package/.opencode/skills/bmad-create-ux-design/steps/step-14-complete.md +0 -171
  315. package/.opencode/skills/bmad-create-ux-design/ux-design-template.md +0 -13
  316. package/.opencode/skills/bmad-create-ux-design/workflow.md +0 -36
  317. package/.opencode/skills/bmad-distillator/SKILL.md +0 -178
  318. package/.opencode/skills/bmad-distillator/agents/distillate-compressor.md +0 -116
  319. package/.opencode/skills/bmad-distillator/agents/round-trip-reconstructor.md +0 -68
  320. package/.opencode/skills/bmad-distillator/resources/compression-rules.md +0 -51
  321. package/.opencode/skills/bmad-distillator/resources/distillate-format-reference.md +0 -227
  322. package/.opencode/skills/bmad-distillator/resources/splitting-strategy.md +0 -78
  323. package/.opencode/skills/bmad-distillator/scripts/analyze_sources.py +0 -300
  324. package/.opencode/skills/bmad-distillator/scripts/tests/test_analyze_sources.py +0 -204
  325. package/.opencode/skills/bmad-document-project/SKILL.md +0 -6
  326. package/.opencode/skills/bmad-document-project/checklist.md +0 -245
  327. package/.opencode/skills/bmad-document-project/documentation-requirements.csv +0 -12
  328. package/.opencode/skills/bmad-document-project/instructions.md +0 -128
  329. package/.opencode/skills/bmad-document-project/templates/deep-dive-template.md +0 -345
  330. package/.opencode/skills/bmad-document-project/templates/index-template.md +0 -169
  331. package/.opencode/skills/bmad-document-project/templates/project-overview-template.md +0 -103
  332. package/.opencode/skills/bmad-document-project/templates/project-scan-report-schema.json +0 -160
  333. package/.opencode/skills/bmad-document-project/templates/source-tree-template.md +0 -135
  334. package/.opencode/skills/bmad-document-project/workflow.md +0 -27
  335. package/.opencode/skills/bmad-document-project/workflows/deep-dive-instructions.md +0 -299
  336. package/.opencode/skills/bmad-document-project/workflows/deep-dive-workflow.md +0 -34
  337. package/.opencode/skills/bmad-document-project/workflows/full-scan-instructions.md +0 -1107
  338. package/.opencode/skills/bmad-document-project/workflows/full-scan-workflow.md +0 -34
  339. package/.opencode/skills/bmad-domain-research/SKILL.md +0 -6
  340. package/.opencode/skills/bmad-domain-research/domain-steps/step-01-init.md +0 -137
  341. package/.opencode/skills/bmad-domain-research/domain-steps/step-02-domain-analysis.md +0 -229
  342. package/.opencode/skills/bmad-domain-research/domain-steps/step-03-competitive-landscape.md +0 -238
  343. package/.opencode/skills/bmad-domain-research/domain-steps/step-04-regulatory-focus.md +0 -206
  344. package/.opencode/skills/bmad-domain-research/domain-steps/step-05-technical-trends.md +0 -234
  345. package/.opencode/skills/bmad-domain-research/domain-steps/step-06-research-synthesis.md +0 -444
  346. package/.opencode/skills/bmad-domain-research/research.template.md +0 -29
  347. package/.opencode/skills/bmad-domain-research/workflow.md +0 -49
  348. package/.opencode/skills/bmad-edit-prd/SKILL.md +0 -6
  349. package/.opencode/skills/bmad-edit-prd/steps-e/step-e-01-discovery.md +0 -242
  350. package/.opencode/skills/bmad-edit-prd/steps-e/step-e-01b-legacy-conversion.md +0 -204
  351. package/.opencode/skills/bmad-edit-prd/steps-e/step-e-02-review.md +0 -245
  352. package/.opencode/skills/bmad-edit-prd/steps-e/step-e-03-edit.md +0 -250
  353. package/.opencode/skills/bmad-edit-prd/steps-e/step-e-04-complete.md +0 -165
  354. package/.opencode/skills/bmad-edit-prd/workflow.md +0 -63
  355. package/.opencode/skills/bmad-editorial-review-prose/SKILL.md +0 -86
  356. package/.opencode/skills/bmad-editorial-review-structure/SKILL.md +0 -179
  357. package/.opencode/skills/bmad-generate-project-context/SKILL.md +0 -6
  358. package/.opencode/skills/bmad-generate-project-context/project-context-template.md +0 -21
  359. package/.opencode/skills/bmad-generate-project-context/steps/step-01-discover.md +0 -186
  360. package/.opencode/skills/bmad-generate-project-context/steps/step-02-generate.md +0 -321
  361. package/.opencode/skills/bmad-generate-project-context/steps/step-03-complete.md +0 -278
  362. package/.opencode/skills/bmad-generate-project-context/workflow.md +0 -43
  363. package/.opencode/skills/bmad-help/SKILL.md +0 -73
  364. package/.opencode/skills/bmad-index-docs/SKILL.md +0 -66
  365. package/.opencode/skills/bmad-init/SKILL.md +0 -100
  366. package/.opencode/skills/bmad-init/resources/core-module.yaml +0 -25
  367. package/.opencode/skills/bmad-init/scripts/bmad_init.py +0 -593
  368. package/.opencode/skills/bmad-init/scripts/tests/test_bmad_init.py +0 -329
  369. package/.opencode/skills/bmad-ma-agent-cyber/SKILL.md +0 -49
  370. package/.opencode/skills/bmad-ma-agent-cyber/bmad-skill-manifest.yaml +0 -11
  371. package/.opencode/skills/bmad-ma-agent-devops/SKILL.md +0 -49
  372. package/.opencode/skills/bmad-ma-agent-devops/bmad-skill-manifest.yaml +0 -11
  373. package/.opencode/skills/bmad-ma-agent-mil498/SKILL.md +0 -53
  374. package/.opencode/skills/bmad-ma-agent-mil498/bmad-skill-manifest.yaml +0 -11
  375. package/.opencode/skills/bmad-ma-agent-ml/.gitkeep +0 -0
  376. package/.opencode/skills/bmad-ma-agent-ml/SKILL.md +0 -59
  377. package/.opencode/skills/bmad-ma-agent-ml/bmad-skill-manifest.yaml +0 -11
  378. package/.opencode/skills/bmad-ma-agent-sre/.gitkeep +0 -0
  379. package/.opencode/skills/bmad-ma-agent-sre/SKILL.md +0 -49
  380. package/.opencode/skills/bmad-ma-agent-sre/bmad-skill-manifest.yaml +0 -11
  381. package/.opencode/skills/bmad-market-research/SKILL.md +0 -6
  382. package/.opencode/skills/bmad-market-research/research.template.md +0 -29
  383. package/.opencode/skills/bmad-market-research/steps/step-01-init.md +0 -184
  384. package/.opencode/skills/bmad-market-research/steps/step-02-customer-behavior.md +0 -239
  385. package/.opencode/skills/bmad-market-research/steps/step-03-customer-pain-points.md +0 -251
  386. package/.opencode/skills/bmad-market-research/steps/step-04-customer-decisions.md +0 -261
  387. package/.opencode/skills/bmad-market-research/steps/step-05-competitive-analysis.md +0 -173
  388. package/.opencode/skills/bmad-market-research/steps/step-06-research-completion.md +0 -478
  389. package/.opencode/skills/bmad-market-research/workflow.md +0 -49
  390. package/.opencode/skills/bmad-party-mode/SKILL.md +0 -6
  391. package/.opencode/skills/bmad-party-mode/steps/step-01-agent-loading.md +0 -138
  392. package/.opencode/skills/bmad-party-mode/steps/step-02-discussion-orchestration.md +0 -187
  393. package/.opencode/skills/bmad-party-mode/steps/step-03-graceful-exit.md +0 -167
  394. package/.opencode/skills/bmad-party-mode/workflow.md +0 -190
  395. package/.opencode/skills/bmad-product-brief/SKILL.md +0 -87
  396. package/.opencode/skills/bmad-product-brief/agents/artifact-analyzer.md +0 -60
  397. package/.opencode/skills/bmad-product-brief/agents/opportunity-reviewer.md +0 -44
  398. package/.opencode/skills/bmad-product-brief/agents/skeptic-reviewer.md +0 -44
  399. package/.opencode/skills/bmad-product-brief/agents/web-researcher.md +0 -49
  400. package/.opencode/skills/bmad-product-brief/bmad-manifest.json +0 -17
  401. package/.opencode/skills/bmad-product-brief/prompts/contextual-discovery.md +0 -57
  402. package/.opencode/skills/bmad-product-brief/prompts/draft-and-review.md +0 -86
  403. package/.opencode/skills/bmad-product-brief/prompts/finalize.md +0 -75
  404. package/.opencode/skills/bmad-product-brief/prompts/guided-elicitation.md +0 -70
  405. package/.opencode/skills/bmad-product-brief/resources/brief-template.md +0 -60
  406. package/.opencode/skills/bmad-qa-generate-e2e-tests/SKILL.md +0 -6
  407. package/.opencode/skills/bmad-qa-generate-e2e-tests/checklist.md +0 -33
  408. package/.opencode/skills/bmad-qa-generate-e2e-tests/workflow.md +0 -136
  409. package/.opencode/skills/bmad-quick-dev/SKILL.md +0 -6
  410. package/.opencode/skills/bmad-quick-dev/spec-template.md +0 -88
  411. package/.opencode/skills/bmad-quick-dev/step-01-clarify-and-route.md +0 -64
  412. package/.opencode/skills/bmad-quick-dev/step-02-plan.md +0 -35
  413. package/.opencode/skills/bmad-quick-dev/step-03-implement.md +0 -37
  414. package/.opencode/skills/bmad-quick-dev/step-04-review.md +0 -49
  415. package/.opencode/skills/bmad-quick-dev/step-05-present.md +0 -63
  416. package/.opencode/skills/bmad-quick-dev/step-oneshot.md +0 -49
  417. package/.opencode/skills/bmad-quick-dev/workflow.md +0 -79
  418. package/.opencode/skills/bmad-retrospective/SKILL.md +0 -6
  419. package/.opencode/skills/bmad-retrospective/workflow.md +0 -1479
  420. package/.opencode/skills/bmad-review-adversarial-general/SKILL.md +0 -37
  421. package/.opencode/skills/bmad-review-edge-case-hunter/SKILL.md +0 -67
  422. package/.opencode/skills/bmad-shard-doc/SKILL.md +0 -105
  423. package/.opencode/skills/bmad-sprint-planning/SKILL.md +0 -6
  424. package/.opencode/skills/bmad-sprint-planning/checklist.md +0 -33
  425. package/.opencode/skills/bmad-sprint-planning/sprint-status-template.yaml +0 -56
  426. package/.opencode/skills/bmad-sprint-planning/workflow.md +0 -263
  427. package/.opencode/skills/bmad-sprint-status/SKILL.md +0 -6
  428. package/.opencode/skills/bmad-sprint-status/workflow.md +0 -261
  429. package/.opencode/skills/bmad-technical-research/SKILL.md +0 -6
  430. package/.opencode/skills/bmad-technical-research/research.template.md +0 -29
  431. package/.opencode/skills/bmad-technical-research/technical-steps/step-01-init.md +0 -137
  432. package/.opencode/skills/bmad-technical-research/technical-steps/step-02-technical-overview.md +0 -239
  433. package/.opencode/skills/bmad-technical-research/technical-steps/step-03-integration-patterns.md +0 -248
  434. package/.opencode/skills/bmad-technical-research/technical-steps/step-04-architectural-patterns.md +0 -202
  435. package/.opencode/skills/bmad-technical-research/technical-steps/step-05-implementation-research.md +0 -233
  436. package/.opencode/skills/bmad-technical-research/technical-steps/step-06-research-synthesis.md +0 -487
  437. package/.opencode/skills/bmad-technical-research/workflow.md +0 -50
  438. package/.opencode/skills/bmad-validate-prd/SKILL.md +0 -6
  439. package/.opencode/skills/bmad-validate-prd/data/domain-complexity.csv +0 -15
  440. package/.opencode/skills/bmad-validate-prd/data/prd-purpose.md +0 -197
  441. package/.opencode/skills/bmad-validate-prd/data/project-types.csv +0 -11
  442. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-01-discovery.md +0 -221
  443. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-02-format-detection.md +0 -188
  444. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-02b-parity-check.md +0 -206
  445. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-03-density-validation.md +0 -171
  446. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -211
  447. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-05-measurability-validation.md +0 -225
  448. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-06-traceability-validation.md +0 -214
  449. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -202
  450. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -240
  451. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-09-project-type-validation.md +0 -260
  452. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-10-smart-validation.md +0 -206
  453. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -261
  454. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-12-completeness-validation.md +0 -239
  455. package/.opencode/skills/bmad-validate-prd/steps-v/step-v-13-report-complete.md +0 -229
  456. package/.opencode/skills/bmad-validate-prd/workflow.md +0 -62
  457. package/.opencode/skills/cleanup-done/.gitkeep +0 -0
  458. package/.opencode/skills/cleanup-done/SKILL.md +0 -159
  459. package/.opencode/skills/create-bug-story/.gitkeep +0 -0
  460. package/.opencode/skills/create-bug-story/SKILL.md +0 -263
  461. package/.opencode/skills/cyber-generate-certs/.gitkeep +0 -0
  462. package/.opencode/skills/cyber-generate-certs/SKILL.md +0 -27
  463. package/.opencode/skills/cyber-generate-certs/bmad-skill-manifest.yaml +0 -3
  464. package/.opencode/skills/cyber-immunity-estimation/.gitkeep +0 -0
  465. package/.opencode/skills/cyber-immunity-estimation/SKILL.md +0 -29
  466. package/.opencode/skills/cyber-immunity-estimation/bmad-skill-manifest.yaml +0 -3
  467. package/.opencode/skills/cyber-security-audit/.gitkeep +0 -0
  468. package/.opencode/skills/cyber-security-audit/SKILL.md +0 -27
  469. package/.opencode/skills/cyber-security-audit/bmad-skill-manifest.yaml +0 -3
  470. package/.opencode/skills/cyber-vault-secrets/.gitkeep +0 -0
  471. package/.opencode/skills/cyber-vault-secrets/SKILL.md +0 -28
  472. package/.opencode/skills/cyber-vault-secrets/bmad-skill-manifest.yaml +0 -3
  473. package/.opencode/skills/cyber-verify-docker-users/.gitkeep +0 -0
  474. package/.opencode/skills/cyber-verify-docker-users/SKILL.md +0 -23
  475. package/.opencode/skills/cyber-verify-docker-users/bmad-skill-manifest.yaml +0 -3
  476. package/.opencode/skills/cyber-verify-image-signature/.gitkeep +0 -0
  477. package/.opencode/skills/cyber-verify-image-signature/SKILL.md +0 -22
  478. package/.opencode/skills/cyber-verify-image-signature/bmad-skill-manifest.yaml +0 -3
  479. package/.opencode/skills/cyber-vulnerability-scan/.gitkeep +0 -0
  480. package/.opencode/skills/cyber-vulnerability-scan/SKILL.md +0 -28
  481. package/.opencode/skills/cyber-vulnerability-scan/bmad-skill-manifest.yaml +0 -3
  482. package/.opencode/skills/devops-configure-infrastructure/.gitkeep +0 -0
  483. package/.opencode/skills/devops-configure-infrastructure/SKILL.md +0 -27
  484. package/.opencode/skills/devops-configure-infrastructure/bmad-skill-manifest.yaml +0 -3
  485. package/.opencode/skills/devops-disconnected-deployment/.gitkeep +0 -0
  486. package/.opencode/skills/devops-disconnected-deployment/SKILL.md +0 -27
  487. package/.opencode/skills/devops-disconnected-deployment/bmad-skill-manifest.yaml +0 -3
  488. package/.opencode/skills/devops-docker-compose-setup/.gitkeep +0 -0
  489. package/.opencode/skills/devops-docker-compose-setup/SKILL.md +0 -26
  490. package/.opencode/skills/devops-docker-compose-setup/bmad-skill-manifest.yaml +0 -3
  491. package/.opencode/skills/devops-manage-helm/.gitkeep +0 -0
  492. package/.opencode/skills/devops-manage-helm/SKILL.md +0 -28
  493. package/.opencode/skills/devops-manage-helm/bmad-skill-manifest.yaml +0 -3
  494. package/.opencode/skills/devops-sign-docker-image/.gitkeep +0 -0
  495. package/.opencode/skills/devops-sign-docker-image/SKILL.md +0 -24
  496. package/.opencode/skills/devops-sign-docker-image/bmad-skill-manifest.yaml +0 -3
  497. package/.opencode/skills/generate-backlog/.gitkeep +0 -0
  498. package/.opencode/skills/generate-backlog/SKILL.md +0 -183
  499. package/.opencode/skills/generate-backlog/bmad-skill-manifest.yaml +0 -3
  500. package/.opencode/skills/git-workflow-skill/SKILL.md +0 -194
  501. package/.opencode/skills/git-workflow-skill/hooks/commit-msg +0 -61
  502. package/.opencode/skills/git-workflow-skill/hooks/pre-commit +0 -38
  503. package/.opencode/skills/git-workflow-skill/hooks/prepare-commit-msg +0 -56
  504. package/.opencode/skills/git-workflow-skill/scripts/finish-feature.sh +0 -192
  505. package/.opencode/skills/git-workflow-skill/scripts/install-hooks.sh +0 -55
  506. package/.opencode/skills/git-workflow-skill/scripts/start-feature.sh +0 -110
  507. package/.opencode/skills/git-workflow-skill/scripts/validate-workflow.sh +0 -229
  508. package/.opencode/skills/js-ts-dependency-mgmt/SKILL.md +0 -49
  509. package/.opencode/skills/js-ts-dependency-mgmt/examples/dependency_mgmt.md +0 -60
  510. package/.opencode/skills/js-ts-security-skill/SKILL.md +0 -64
  511. package/.opencode/skills/js-ts-security-skill/scripts/verify-security.sh +0 -136
  512. package/.opencode/skills/logging-best-practices/SKILL.md +0 -50
  513. package/.opencode/skills/logging-best-practices/examples/cpp.md +0 -36
  514. package/.opencode/skills/logging-best-practices/examples/csharp.md +0 -49
  515. package/.opencode/skills/logging-best-practices/examples/javascript.md +0 -77
  516. package/.opencode/skills/logging-best-practices/examples/python.md +0 -57
  517. package/.opencode/skills/logging-best-practices/references/logging-standards.md +0 -29
  518. package/.opencode/skills/mil498-ocd/.gitkeep +0 -0
  519. package/.opencode/skills/mil498-ocd/SKILL.md +0 -30
  520. package/.opencode/skills/mil498-ocd/bmad-skill-manifest.yaml +0 -5
  521. package/.opencode/skills/mil498-ocd/prompts/01-discover-project-artifacts.md +0 -26
  522. package/.opencode/skills/mil498-ocd/prompts/02-load-template.md +0 -10
  523. package/.opencode/skills/mil498-ocd/prompts/03-generate-document.md +0 -90
  524. package/.opencode/skills/mil498-ocd/prompts/04-validate.md +0 -14
  525. package/.opencode/skills/mil498-ocd/prompts/05-review.md +0 -15
  526. package/.opencode/skills/mil498-ocd/prompts/06-save.md +0 -15
  527. package/.opencode/skills/mil498-sdd/.gitkeep +0 -0
  528. package/.opencode/skills/mil498-sdd/SKILL.md +0 -30
  529. package/.opencode/skills/mil498-sdd/bmad-skill-manifest.yaml +0 -5
  530. package/.opencode/skills/mil498-sdd/prompts/01-discover-project-artifacts.md +0 -50
  531. package/.opencode/skills/mil498-sdd/prompts/02-load-template.md +0 -10
  532. package/.opencode/skills/mil498-sdd/prompts/03-generate-document.md +0 -98
  533. package/.opencode/skills/mil498-sdd/prompts/04-validate.md +0 -16
  534. package/.opencode/skills/mil498-sdd/prompts/05-review.md +0 -15
  535. package/.opencode/skills/mil498-sdd/prompts/06-save.md +0 -19
  536. package/.opencode/skills/mil498-sdd/template.md +0 -163
  537. package/.opencode/skills/mil498-sdp/.gitkeep +0 -0
  538. package/.opencode/skills/mil498-sdp/SKILL.md +0 -30
  539. package/.opencode/skills/mil498-sdp/bmad-skill-manifest.yaml +0 -5
  540. package/.opencode/skills/mil498-sdp/prompts/01-discover-project-artifacts.md +0 -32
  541. package/.opencode/skills/mil498-sdp/prompts/02-load-template.md +0 -10
  542. package/.opencode/skills/mil498-sdp/prompts/03-generate-document.md +0 -187
  543. package/.opencode/skills/mil498-sdp/prompts/04-validate.md +0 -13
  544. package/.opencode/skills/mil498-sdp/prompts/05-review.md +0 -15
  545. package/.opencode/skills/mil498-sdp/prompts/06-save.md +0 -14
  546. package/.opencode/skills/mil498-srs/.gitkeep +0 -0
  547. package/.opencode/skills/mil498-srs/SKILL.md +0 -30
  548. package/.opencode/skills/mil498-srs/bmad-skill-manifest.yaml +0 -5
  549. package/.opencode/skills/mil498-srs/prompts/01-discover-project-artifacts.md +0 -42
  550. package/.opencode/skills/mil498-srs/prompts/02-load-template.md +0 -10
  551. package/.opencode/skills/mil498-srs/prompts/03-generate-document.md +0 -100
  552. package/.opencode/skills/mil498-srs/prompts/04-validate.md +0 -16
  553. package/.opencode/skills/mil498-srs/prompts/05-review.md +0 -15
  554. package/.opencode/skills/mil498-srs/prompts/06-save.md +0 -18
  555. package/.opencode/skills/mil498-ssdd/.gitkeep +0 -0
  556. package/.opencode/skills/mil498-ssdd/SKILL.md +0 -32
  557. package/.opencode/skills/mil498-ssdd/bmad-skill-manifest.yaml +0 -5
  558. package/.opencode/skills/mil498-ssdd/prompts/01-discover-project-artifacts.md +0 -32
  559. package/.opencode/skills/mil498-ssdd/prompts/02-load-template.md +0 -10
  560. package/.opencode/skills/mil498-ssdd/prompts/03-csci-discovery-interview.md +0 -43
  561. package/.opencode/skills/mil498-ssdd/prompts/04-generate-document.md +0 -96
  562. package/.opencode/skills/mil498-ssdd/prompts/05-validate.md +0 -14
  563. package/.opencode/skills/mil498-ssdd/prompts/06-review.md +0 -16
  564. package/.opencode/skills/mil498-ssdd/prompts/07-save.md +0 -16
  565. package/.opencode/skills/mil498-sss/.gitkeep +0 -0
  566. package/.opencode/skills/mil498-sss/SKILL.md +0 -31
  567. package/.opencode/skills/mil498-sss/bmad-skill-manifest.yaml +0 -5
  568. package/.opencode/skills/mil498-sss/prompts/01-discover-project-artifacts.md +0 -31
  569. package/.opencode/skills/mil498-sss/prompts/02-load-template.md +0 -10
  570. package/.opencode/skills/mil498-sss/prompts/03-generate-document.md +0 -108
  571. package/.opencode/skills/mil498-sss/prompts/04-validate.md +0 -16
  572. package/.opencode/skills/mil498-sss/prompts/05-review.md +0 -15
  573. package/.opencode/skills/mil498-sss/prompts/06-save.md +0 -15
  574. package/.opencode/skills/mil498-std/.gitkeep +0 -0
  575. package/.opencode/skills/mil498-std/SKILL.md +0 -30
  576. package/.opencode/skills/mil498-std/bmad-skill-manifest.yaml +0 -5
  577. package/.opencode/skills/mil498-std/prompts/01-discover-project-artifacts.md +0 -42
  578. package/.opencode/skills/mil498-std/prompts/02-load-template.md +0 -10
  579. package/.opencode/skills/mil498-std/prompts/03-generate-document.md +0 -117
  580. package/.opencode/skills/mil498-std/prompts/04-validate.md +0 -15
  581. package/.opencode/skills/mil498-std/prompts/05-review.md +0 -15
  582. package/.opencode/skills/mil498-std/prompts/06-save.md +0 -15
  583. package/.opencode/skills/ml-advise/.gitkeep +0 -0
  584. package/.opencode/skills/ml-advise/SKILL.md +0 -76
  585. package/.opencode/skills/ml-advise/bmad-skill-manifest.yaml +0 -3
  586. package/.opencode/skills/ml-advise/skill.json +0 -7
  587. package/.opencode/skills/ml-analysis/.gitkeep +0 -0
  588. package/.opencode/skills/ml-analysis/SKILL.md +0 -60
  589. package/.opencode/skills/ml-analysis/bmad-skill-manifest.yaml +0 -3
  590. package/.opencode/skills/ml-analysis/skill.json +0 -7
  591. package/.opencode/skills/ml-architecture/.gitkeep +0 -0
  592. package/.opencode/skills/ml-architecture/SKILL.md +0 -55
  593. package/.opencode/skills/ml-architecture/bmad-skill-manifest.yaml +0 -3
  594. package/.opencode/skills/ml-architecture/skill.json +0 -7
  595. package/.opencode/skills/ml-detailed-design/.gitkeep +0 -0
  596. package/.opencode/skills/ml-detailed-design/SKILL.md +0 -67
  597. package/.opencode/skills/ml-detailed-design/bmad-skill-manifest.yaml +0 -3
  598. package/.opencode/skills/ml-detailed-design/skill.json +0 -7
  599. package/.opencode/skills/ml-eda/.gitkeep +0 -0
  600. package/.opencode/skills/ml-eda/SKILL.md +0 -56
  601. package/.opencode/skills/ml-eda/bmad-skill-manifest.yaml +0 -3
  602. package/.opencode/skills/ml-eda/scripts/baseline_classifier.py +0 -522
  603. package/.opencode/skills/ml-eda/scripts/class_weights_calculator.py +0 -295
  604. package/.opencode/skills/ml-eda/scripts/clustering_explorer.py +0 -383
  605. package/.opencode/skills/ml-eda/scripts/eda_analyzer.py +0 -654
  606. package/.opencode/skills/ml-eda/skill.json +0 -7
  607. package/.opencode/skills/ml-experiment/.gitkeep +0 -0
  608. package/.opencode/skills/ml-experiment/SKILL.md +0 -74
  609. package/.opencode/skills/ml-experiment/assets/advanced_trainer_configs.py +0 -430
  610. package/.opencode/skills/ml-experiment/assets/quick_trainer_setup.py +0 -233
  611. package/.opencode/skills/ml-experiment/assets/template_datamodule.py +0 -219
  612. package/.opencode/skills/ml-experiment/assets/template_gnn_module.py +0 -341
  613. package/.opencode/skills/ml-experiment/assets/template_lightning_module.py +0 -158
  614. package/.opencode/skills/ml-experiment/bmad-skill-manifest.yaml +0 -3
  615. package/.opencode/skills/ml-experiment/skill.json +0 -7
  616. package/.opencode/skills/ml-hparam/.gitkeep +0 -0
  617. package/.opencode/skills/ml-hparam/SKILL.md +0 -81
  618. package/.opencode/skills/ml-hparam/bmad-skill-manifest.yaml +0 -3
  619. package/.opencode/skills/ml-hparam/skill.json +0 -7
  620. package/.opencode/skills/ml-ideation/.gitkeep +0 -0
  621. package/.opencode/skills/ml-ideation/SKILL.md +0 -50
  622. package/.opencode/skills/ml-ideation/bmad-skill-manifest.yaml +0 -3
  623. package/.opencode/skills/ml-ideation/scripts/validate_ml_prd.py +0 -287
  624. package/.opencode/skills/ml-ideation/skill.json +0 -7
  625. package/.opencode/skills/ml-infra/.gitkeep +0 -0
  626. package/.opencode/skills/ml-infra/SKILL.md +0 -58
  627. package/.opencode/skills/ml-infra/bmad-skill-manifest.yaml +0 -3
  628. package/.opencode/skills/ml-infra/skill.json +0 -7
  629. package/.opencode/skills/ml-retrospective/.gitkeep +0 -0
  630. package/.opencode/skills/ml-retrospective/SKILL.md +0 -63
  631. package/.opencode/skills/ml-retrospective/bmad-skill-manifest.yaml +0 -3
  632. package/.opencode/skills/ml-retrospective/skill.json +0 -7
  633. package/.opencode/skills/ml-revision/.gitkeep +0 -0
  634. package/.opencode/skills/ml-revision/SKILL.md +0 -82
  635. package/.opencode/skills/ml-revision/bmad-skill-manifest.yaml +0 -3
  636. package/.opencode/skills/ml-revision/skill.json +0 -7
  637. package/.opencode/skills/ml-techspec/.gitkeep +0 -0
  638. package/.opencode/skills/ml-techspec/SKILL.md +0 -80
  639. package/.opencode/skills/ml-techspec/bmad-skill-manifest.yaml +0 -3
  640. package/.opencode/skills/ml-techspec/skill.json +0 -7
  641. package/.opencode/skills/modify-sprint/.gitkeep +0 -0
  642. package/.opencode/skills/modify-sprint/SKILL.md +0 -322
  643. package/.opencode/skills/modify-sprint/bmad-skill-manifest.yaml +0 -3
  644. package/.opencode/skills/open-presentation/SKILL.md +0 -35
  645. package/.opencode/skills/opentelemetry-best-practices/SKILL.md +0 -34
  646. package/.opencode/skills/opentelemetry-best-practices/examples/go.md +0 -32
  647. package/.opencode/skills/opentelemetry-best-practices/examples/javascript.md +0 -58
  648. package/.opencode/skills/opentelemetry-best-practices/examples/python.md +0 -37
  649. package/.opencode/skills/opentelemetry-best-practices/references/otel-standards.md +0 -37
  650. package/.opencode/skills/prioritize-backlog/.gitkeep +0 -0
  651. package/.opencode/skills/prioritize-backlog/SKILL.md +0 -195
  652. package/.opencode/skills/prioritize-backlog/bmad-skill-manifest.yaml +0 -3
  653. package/.opencode/skills/project-context-expansion/.gitkeep +0 -0
  654. package/.opencode/skills/project-context-expansion/SKILL.md +0 -238
  655. package/.opencode/skills/project-context-expansion/bmad-skill-manifest.yaml +0 -3
  656. package/.opencode/skills/python-best-practices/SKILL.md +0 -385
  657. package/.opencode/skills/python-dependency-mgmt/SKILL.md +0 -42
  658. package/.opencode/skills/python-dependency-mgmt/examples/dependency_mgmt.md +0 -67
  659. package/.opencode/skills/python-security-skill/SKILL.md +0 -56
  660. package/.opencode/skills/python-security-skill/examples/security.md +0 -56
  661. package/.opencode/skills/remove-from-sprint/.gitkeep +0 -0
  662. package/.opencode/skills/remove-from-sprint/SKILL.md +0 -163
  663. package/.opencode/skills/remove-from-sprint/bmad-skill-manifest.yaml +0 -3
  664. package/.opencode/skills/self-signed-cert/SKILL.md +0 -42
  665. package/.opencode/skills/self-signed-cert/scripts/generate-cert.ps1 +0 -45
  666. package/.opencode/skills/self-signed-cert/scripts/generate-cert.sh +0 -43
  667. package/.opencode/skills/skill-creator/SKILL.md +0 -196
  668. package/.opencode/skills/skill-creator/references/output-patterns.md +0 -82
  669. package/.opencode/skills/skill-creator/references/workflows.md +0 -28
  670. package/.opencode/skills/skill-creator/scripts/init_skill.py +0 -208
  671. package/.opencode/skills/skill-creator/scripts/package_skill.py +0 -99
  672. package/.opencode/skills/skill-creator/scripts/quick_validate.py +0 -113
  673. package/.opencode/skills/sprint-status-view/.gitkeep +0 -0
  674. package/.opencode/skills/sprint-status-view/SKILL.md +0 -263
  675. package/.opencode/skills/sprint-status-view/bmad-skill-manifest.yaml +0 -3
  676. package/.opencode/skills/sre-check-deployment-status/.gitkeep +0 -0
  677. package/.opencode/skills/sre-check-deployment-status/SKILL.md +0 -32
  678. package/.opencode/skills/sre-check-deployment-status/bmad-skill-manifest.yaml +0 -3
  679. package/.opencode/skills/sre-check-secrets/.gitkeep +0 -0
  680. package/.opencode/skills/sre-check-secrets/SKILL.md +0 -23
  681. package/.opencode/skills/sre-check-secrets/bmad-skill-manifest.yaml +0 -3
  682. package/.opencode/skills/sre-check-system-status/.gitkeep +0 -0
  683. package/.opencode/skills/sre-check-system-status/SKILL.md +0 -27
  684. package/.opencode/skills/sre-check-system-status/bmad-skill-manifest.yaml +0 -3
  685. package/.opencode/skills/sre-day-2-ops/.gitkeep +0 -0
  686. package/.opencode/skills/sre-day-2-ops/SKILL.md +0 -26
  687. package/.opencode/skills/sre-day-2-ops/bmad-skill-manifest.yaml +0 -3
  688. package/.opencode/skills/sre-deployment-strategies/.gitkeep +0 -0
  689. package/.opencode/skills/sre-deployment-strategies/SKILL.md +0 -28
  690. package/.opencode/skills/sre-deployment-strategies/bmad-skill-manifest.yaml +0 -3
  691. package/.opencode/skills/sre-fix-deployments/.gitkeep +0 -0
  692. package/.opencode/skills/sre-fix-deployments/SKILL.md +0 -25
  693. package/.opencode/skills/sre-fix-deployments/bmad-skill-manifest.yaml +0 -3
  694. package/.opencode/skills/sre-gitops-status/.gitkeep +0 -0
  695. package/.opencode/skills/sre-gitops-status/SKILL.md +0 -25
  696. package/.opencode/skills/sre-gitops-status/bmad-skill-manifest.yaml +0 -3
  697. package/.opencode/skills/story-status-lookup/SKILL.md +0 -78
  698. package/.opencode/skills/test-accompanied-development/SKILL.md +0 -50
  699. package/.opencode/skills/test-generator/SKILL.md +0 -65
  700. package/.opencode/skills/vercel-react-best-practices/SKILL.md +0 -109
  701. package/.opencode/skills/verify-hardened-docker-skill/SKILL.md +0 -442
  702. package/.opencode/skills/verify-hardened-docker-skill/scripts/verify-docker-hardening.sh +0 -439
  703. package/.roo/rules/00-ma-agents.md +0 -13
  704. package/.roo/skills/.ma-agents.json +0 -122
  705. package/.roo/skills/MANIFEST.yaml +0 -126
  706. package/.roo/skills/git-workflow-skill/SKILL.md +0 -194
  707. package/.roo/skills/git-workflow-skill/hooks/commit-msg +0 -61
  708. package/.roo/skills/git-workflow-skill/hooks/pre-commit +0 -38
  709. package/.roo/skills/git-workflow-skill/hooks/prepare-commit-msg +0 -56
  710. package/.roo/skills/git-workflow-skill/scripts/finish-feature.sh +0 -192
  711. package/.roo/skills/git-workflow-skill/scripts/install-hooks.sh +0 -55
  712. package/.roo/skills/git-workflow-skill/scripts/start-feature.sh +0 -110
  713. package/.roo/skills/git-workflow-skill/scripts/validate-workflow.sh +0 -229
  714. package/.roo/skills/js-ts-dependency-mgmt/SKILL.md +0 -49
  715. package/.roo/skills/js-ts-dependency-mgmt/examples/dependency_mgmt.md +0 -60
  716. package/.roo/skills/js-ts-security-skill/SKILL.md +0 -64
  717. package/.roo/skills/js-ts-security-skill/scripts/verify-security.sh +0 -136
  718. package/.roo/skills/logging-best-practices/SKILL.md +0 -50
  719. package/.roo/skills/logging-best-practices/examples/cpp.md +0 -36
  720. package/.roo/skills/logging-best-practices/examples/csharp.md +0 -49
  721. package/.roo/skills/logging-best-practices/examples/javascript.md +0 -77
  722. package/.roo/skills/logging-best-practices/examples/python.md +0 -57
  723. package/.roo/skills/logging-best-practices/references/logging-standards.md +0 -29
  724. package/.roo/skills/open-presentation/SKILL.md +0 -35
  725. package/.roo/skills/opentelemetry-best-practices/SKILL.md +0 -34
  726. package/.roo/skills/opentelemetry-best-practices/examples/go.md +0 -32
  727. package/.roo/skills/opentelemetry-best-practices/examples/javascript.md +0 -58
  728. package/.roo/skills/opentelemetry-best-practices/examples/python.md +0 -37
  729. package/.roo/skills/opentelemetry-best-practices/references/otel-standards.md +0 -37
  730. package/.roo/skills/python-best-practices/SKILL.md +0 -385
  731. package/.roo/skills/python-dependency-mgmt/SKILL.md +0 -42
  732. package/.roo/skills/python-dependency-mgmt/examples/dependency_mgmt.md +0 -67
  733. package/.roo/skills/python-security-skill/SKILL.md +0 -56
  734. package/.roo/skills/python-security-skill/examples/security.md +0 -56
  735. package/.roo/skills/self-signed-cert/SKILL.md +0 -42
  736. package/.roo/skills/self-signed-cert/scripts/generate-cert.ps1 +0 -45
  737. package/.roo/skills/self-signed-cert/scripts/generate-cert.sh +0 -43
  738. package/.roo/skills/skill-creator/SKILL.md +0 -196
  739. package/.roo/skills/skill-creator/references/output-patterns.md +0 -82
  740. package/.roo/skills/skill-creator/references/workflows.md +0 -28
  741. package/.roo/skills/skill-creator/scripts/init_skill.py +0 -208
  742. package/.roo/skills/skill-creator/scripts/package_skill.py +0 -99
  743. package/.roo/skills/skill-creator/scripts/quick_validate.py +0 -113
  744. package/.roo/skills/story-status-lookup/SKILL.md +0 -78
  745. package/.roo/skills/test-accompanied-development/SKILL.md +0 -50
  746. package/.roo/skills/test-generator/SKILL.md +0 -65
  747. package/.roo/skills/vercel-react-best-practices/SKILL.md +0 -109
  748. package/.roo/skills/verify-hardened-docker-skill/SKILL.md +0 -442
  749. package/.roo/skills/verify-hardened-docker-skill/scripts/verify-docker-hardening.sh +0 -439
  750. package/opencode.json +0 -5
  751. /package/{.opencode/skills/add-sprint → lib/bmad-extension/skills/bmad-dev-story}/.gitkeep +0 -0
  752. /package/{.opencode → lib/bmad-extension}/skills/bmad-dev-story/SKILL.md +0 -0
  753. /package/{.opencode/skills/add-to-sprint → lib/bmad-extension/skills/bmad-sprint-planning}/.gitkeep +0 -0
  754. /package/{.opencode/skills/bmad-ma-agent-cyber → lib/bmad-extension/skills/bmad-sprint-status}/.gitkeep +0 -0
  755. /package/{.opencode/skills/bmad-ma-agent-devops → lib/bmad-extension/skills/close-sprint}/.gitkeep +0 -0
  756. /package/{.opencode/skills/bmad-ma-agent-mil498 → lib/bmad-extension/skills/mil498-requirement-quality}/.gitkeep +0 -0
  757. /package/{.opencode/skills/mil498-ocd/template.md → mil498/OCD.md} +0 -0
  758. /package/{.opencode/skills/mil498-sdp/template.md → mil498/SDP.md} +0 -0
  759. /package/{.opencode/skills/mil498-srs/template.md → mil498/SRS.md} +0 -0
  760. /package/{.opencode/skills/mil498-ssdd/template.md → mil498/SSDD.md} +0 -0
  761. /package/{.opencode/skills/mil498-sss/template.md → mil498/SSS.md} +0 -0
  762. /package/{.opencode/skills/mil498-std/template.md → mil498/STD.md} +0 -0
@@ -1,287 +0,0 @@
1
- #!/usr/bin/env python3
2
- """
3
- validate_prd.py — BMAD DL Lifecycle
4
- Validates docs/prd/01_PRD.md for completeness before architecture begins.
5
-
6
- Usage:
7
- python3 scripts/validate_prd.py <prd_path>
8
- python3 scripts/validate_prd.py docs/prd/01_PRD.md
9
-
10
- Exit codes:
11
- 0 — PASS
12
- 1 — validation errors found
13
- 2 — file not found or unreadable
14
- """
15
-
16
- from __future__ import annotations
17
-
18
- import re
19
- import sys
20
- from dataclasses import dataclass, field
21
- from pathlib import Path
22
-
23
-
24
- # ── Configuration ─────────────────────────────────────────────────────────────
25
-
26
- REQUIRED_SECTIONS = ["Project Overview", "Traceable Requirements", "Status"]
27
- REQUIRED_REQ_CATEGORIES = {"System", "Data", "Performance"}
28
- REQUIRED_REQ_PREFIXES = {"REQ-SYS", "REQ-DATA", "REQ-PERF"}
29
- STATUS_APPROVAL_PATTERN = re.compile(r"\[x\]\s*Approved", re.IGNORECASE)
30
-
31
- # Table column indices (0-based after splitting on |)
32
- COL_REQ_ID = 1
33
- COL_CATEGORY = 2
34
- COL_DESCRIPTION = 3
35
- COL_ACCEPTANCE = 4
36
-
37
-
38
- # ── Data structures ────────────────────────────────────────────────────────────
39
-
40
- @dataclass
41
- class Requirement:
42
- req_id: str
43
- category: str
44
- description: str
45
- acceptance_criteria: str
46
- line_number: int
47
-
48
-
49
- @dataclass
50
- class ValidationResult:
51
- errors: list[str] = field(default_factory=list)
52
- warnings: list[str] = field(default_factory=list)
53
-
54
- @property
55
- def passed(self) -> bool:
56
- return len(self.errors) == 0
57
-
58
- def add_error(self, msg: str) -> None:
59
- self.errors.append(msg)
60
-
61
- def add_warning(self, msg: str) -> None:
62
- self.warnings.append(msg)
63
-
64
-
65
- # ── Parsing helpers ────────────────────────────────────────────────────────────
66
-
67
- def _clean_cell(cell: str) -> str:
68
- return cell.strip().strip("*`[]")
69
-
70
-
71
- def _is_separator_row(row: str) -> bool:
72
- return bool(re.match(r"^\s*\|[\s\-:|]+\|\s*$", row))
73
-
74
-
75
- def parse_requirements_table(lines: list[str]) -> list[Requirement]:
76
- """Extract requirement rows from the markdown table in section B."""
77
- requirements: list[Requirement] = []
78
- in_table = False
79
-
80
- for i, line in enumerate(lines, start=1):
81
- if re.match(r"\|\s*Requirement\s*ID", line, re.IGNORECASE):
82
- in_table = True
83
- continue
84
- if not in_table:
85
- continue
86
- if _is_separator_row(line):
87
- continue
88
- if not line.strip().startswith("|"):
89
- in_table = False
90
- continue
91
-
92
- cells = line.split("|")
93
- if len(cells) < 5:
94
- continue
95
-
96
- req_id = _clean_cell(cells[COL_REQ_ID])
97
- category = _clean_cell(cells[COL_CATEGORY])
98
- description = _clean_cell(cells[COL_DESCRIPTION])
99
- acceptance = _clean_cell(cells[COL_ACCEPTANCE])
100
-
101
- # Skip placeholder / header rows
102
- if not req_id or req_id.startswith(":") or "Requirement" in req_id:
103
- continue
104
-
105
- requirements.append(Requirement(
106
- req_id=req_id,
107
- category=category,
108
- description=description,
109
- acceptance_criteria=acceptance,
110
- line_number=i,
111
- ))
112
-
113
- return requirements
114
-
115
-
116
- def find_sections(text: str) -> set[str]:
117
- """Return set of section headings found (### A., ### B., etc.)."""
118
- return set(re.findall(r"###\s+[A-Z]\.\s+(.+)", text))
119
-
120
-
121
- # ── Validation checks ──────────────────────────────────────────────────────────
122
-
123
- def check_required_sections(text: str, result: ValidationResult) -> None:
124
- sections = find_sections(text)
125
- for required in REQUIRED_SECTIONS:
126
- if not any(required.lower() in s.lower() for s in sections):
127
- result.add_error(f"Missing required section: '### X. {required}'")
128
-
129
-
130
- def check_requirements_table(lines: list[str], result: ValidationResult) -> list[Requirement]:
131
- reqs = parse_requirements_table(lines)
132
-
133
- if not reqs:
134
- result.add_error(
135
- "No requirements found in the Traceable Requirements table. "
136
- "Ensure the table header contains 'Requirement ID'."
137
- )
138
- return []
139
-
140
- return reqs
141
-
142
-
143
- def check_req_id_format(reqs: list[Requirement], result: ValidationResult) -> None:
144
- pattern = re.compile(r"^REQ-[A-Z]+-\d+$")
145
- for req in reqs:
146
- if not pattern.match(req.req_id):
147
- result.add_error(
148
- f"Line {req.line_number}: Invalid REQ-ID format '{req.req_id}'. "
149
- f"Expected pattern: REQ-<CATEGORY>-<NUMBER> (e.g. REQ-PERF-01)"
150
- )
151
-
152
-
153
- def check_category_coverage(reqs: list[Requirement], result: ValidationResult) -> None:
154
- found_prefixes = {req.req_id.rsplit("-", 1)[0] for req in reqs}
155
- missing = REQUIRED_REQ_PREFIXES - found_prefixes
156
- for prefix in sorted(missing):
157
- result.add_error(
158
- f"No requirement with prefix '{prefix}-' found. "
159
- f"Every PRD must include at least one {prefix} requirement."
160
- )
161
-
162
-
163
- def check_empty_fields(reqs: list[Requirement], result: ValidationResult) -> None:
164
- placeholder_patterns = [
165
- re.compile(r"^\[.+\]$"), # [Placeholder text]
166
- re.compile(r"^\.{3}$"), # ...
167
- re.compile(r"^-$"), # -
168
- re.compile(r"^TBD$", re.IGNORECASE),
169
- ]
170
-
171
- def _is_placeholder(value: str) -> bool:
172
- return not value or any(p.match(value) for p in placeholder_patterns)
173
-
174
- for req in reqs:
175
- if _is_placeholder(req.description):
176
- result.add_error(
177
- f"Line {req.line_number}: REQ '{req.req_id}' has an empty or placeholder Description."
178
- )
179
- if _is_placeholder(req.acceptance_criteria):
180
- result.add_error(
181
- f"Line {req.line_number}: REQ '{req.req_id}' has an empty or placeholder Acceptance Criteria. "
182
- f"Every requirement must have measurable acceptance criteria."
183
- )
184
- if _is_placeholder(req.category):
185
- result.add_error(
186
- f"Line {req.line_number}: REQ '{req.req_id}' has an empty Category."
187
- )
188
-
189
-
190
- def check_status_approval(text: str, result: ValidationResult) -> None:
191
- if not STATUS_APPROVAL_PATTERN.search(text):
192
- result.add_error(
193
- "Status section does not show approval. "
194
- "Expected: '* [x] Approved for Architecture Design'"
195
- )
196
-
197
-
198
- def check_duplicate_req_ids(reqs: list[Requirement], result: ValidationResult) -> None:
199
- seen: dict[str, int] = {}
200
- for req in reqs:
201
- if req.req_id in seen:
202
- result.add_error(
203
- f"Duplicate REQ-ID '{req.req_id}' found at line {req.line_number} "
204
- f"(first seen at line {seen[req.req_id]})."
205
- )
206
- else:
207
- seen[req.req_id] = req.line_number
208
-
209
-
210
- def check_minimum_requirements(reqs: list[Requirement], result: ValidationResult) -> None:
211
- if len(reqs) < 3:
212
- result.add_warning(
213
- f"Only {len(reqs)} requirement(s) found. A meaningful PRD typically has "
214
- f"at least one each of REQ-SYS, REQ-DATA, and REQ-PERF."
215
- )
216
-
217
-
218
- # ── Main ───────────────────────────────────────────────────────────────────────
219
-
220
- def validate(prd_path: Path) -> ValidationResult:
221
- result = ValidationResult()
222
-
223
- try:
224
- text = prd_path.read_text(encoding="utf-8")
225
- except FileNotFoundError:
226
- result.add_error(f"File not found: {prd_path}")
227
- return result
228
- except OSError as e:
229
- result.add_error(f"Cannot read file: {e}")
230
- return result
231
-
232
- lines = text.splitlines()
233
-
234
- check_required_sections(text, result)
235
- reqs = check_requirements_table(lines, result)
236
-
237
- if reqs:
238
- check_req_id_format(reqs, result)
239
- check_category_coverage(reqs, result)
240
- check_empty_fields(reqs, result)
241
- check_duplicate_req_ids(reqs, result)
242
- check_minimum_requirements(reqs, result)
243
-
244
- check_status_approval(text, result)
245
-
246
- return result
247
-
248
-
249
- def print_report(prd_path: Path, result: ValidationResult) -> None:
250
- print(f"\nValidating: {prd_path}")
251
- print("─" * 60)
252
-
253
- if result.passed and not result.warnings:
254
- print("✓ PRD validation PASSED — ready for architecture phase.")
255
- return
256
-
257
- if result.errors:
258
- print(f"✗ FAILED — {len(result.errors)} error(s) must be fixed:\n")
259
- for i, err in enumerate(result.errors, 1):
260
- print(f" {i}. {err}")
261
-
262
- if result.warnings:
263
- print(f"\n⚠ {len(result.warnings)} warning(s):\n")
264
- for w in result.warnings:
265
- print(f" • {w}")
266
-
267
- if result.passed:
268
- print("\n✓ PRD validation PASSED (with warnings).")
269
-
270
-
271
- def main() -> int:
272
- if len(sys.argv) < 2:
273
- print("Usage: python3 validate_prd.py <prd_path>", file=sys.stderr)
274
- print("Example: python3 validate_prd.py docs/prd/01_PRD.md", file=sys.stderr)
275
- return 2
276
-
277
- prd_path = Path(sys.argv[1])
278
- result = validate(prd_path)
279
- print_report(prd_path, result)
280
-
281
- if not result.passed:
282
- return 1
283
- return 0
284
-
285
-
286
- if __name__ == "__main__":
287
- sys.exit(main())
@@ -1,7 +0,0 @@
1
- {
2
- "name": "ML Ideation & Framing",
3
- "description": "Frames the Machine Learning problem, defines the Research Thesis, and produces the PRD requirements.",
4
- "version": "1.0.0",
5
- "author": "Demerzel (ML Scientist)",
6
- "tags": ["Machine Learning", "Planning", "Ideation"]
7
- }
File without changes
@@ -1,58 +0,0 @@
1
- ---
2
- name: ml-infra
3
- description: ML Infra — Set up the Python environment, install dependencies, and run a smoke test before full training
4
- ---
5
-
6
- # ML Stage 5 — Infrastructure & Smoke Test
7
-
8
- Validate the full pipeline end-to-end on a tiny data slice before committing to a full training run.
9
-
10
- ## Instructions
11
-
12
- ### 1. Load Context
13
- - Read `_bmad-output/planning-artifacts/ml-techspec.md` — confirm it is LOCKED
14
- - If TechSpec is not locked, STOP: "TechSpec must be locked before infrastructure setup. Run /ml-techspec first."
15
- - Read `configs/ml_config.yaml` for tracking_tool setting
16
-
17
- ### 2. Environment Setup
18
- Guide the user through (or execute if tools are available):
19
- ```bash
20
- uv venv
21
- uv sync
22
- ```
23
- If new dependencies were added in architecture stage:
24
- ```bash
25
- uv add <package1> <package2>
26
- ```
27
-
28
- ### 3. Configure Experiment Tracking
29
- Based on `tracking_tool` in config:
30
- - **wandb**: Verify `import wandb; wandb.login()` works. Create project if needed.
31
- - **mlflow**: Verify `import mlflow; mlflow.set_tracking_uri(...)` works.
32
- - **clearml**: Verify `clearml-init` has been run.
33
- - **local**: Confirm `logs/` directory exists for CSV/JSON run logs.
34
-
35
- ### 4. Write Smoke Test Script
36
- If `scripts/smoke_test.py` does not exist, create it:
37
- - Load first 100 rows of training data
38
- - Run the full preprocessing pipeline
39
- - Instantiate the model with fixed hyperparameters from TechSpec
40
- - Train on 80 rows, predict on 20 rows
41
- - Log one metric to the tracking tool
42
- - Assert the pipeline completes without error
43
-
44
- Run the smoke test: `uv run python scripts/smoke_test.py`
45
-
46
- ### 5. Verify Outputs
47
- Confirm:
48
- - Environment activates cleanly (`uv run python --version`)
49
- - All imports resolve (no ModuleNotFoundError)
50
- - Data loads from the path specified in TechSpec
51
- - Preprocessing pipeline runs without error
52
- - Smoke test metric appears in tracking tool dashboard (or local log)
53
-
54
- ### 6. Confirm & Advance
55
- - Report smoke test result: PASS or FAIL with error details
56
- - On PASS: "Infrastructure validated. Proceed to **Stage 6 — /ml-experiment** to run the full experiment."
57
- - On FAIL: Fix the issue before advancing. Do not proceed to full training with a broken pipeline.
58
- - STOP and WAIT for user confirmation
@@ -1,3 +0,0 @@
1
- type: skill
2
- name: ml-infra
3
- module: ma-skills
@@ -1,7 +0,0 @@
1
- {
2
- "name": "ML Infrastructure Build",
3
- "description": "Builds all engineering infrastructure (data pipelines, training loops, tracking, eval) for experiments.",
4
- "version": "1.0.0",
5
- "author": "Demerzel (ML Scientist)",
6
- "tags": ["Machine Learning", "Infrastructure", "MLOps", "Data Pipeline", "Training"]
7
- }
File without changes
@@ -1,63 +0,0 @@
1
- ---
2
- name: ml-retrospective
3
- description: ML Retrospective - Capture learnings, document what worked and what failed, and produce a reusable knowledge artifact
4
- ---
5
-
6
- # ML Stage 8 - Retrospective
7
-
8
- Close the experiment loop. Document learnings so the next experiment starts smarter.
9
-
10
- ## Instructions
11
-
12
- ### 1. Load Context
13
- - Read all artifacts in `_bmad-output/planning-artifacts/`
14
- - Read all artifacts in `_bmad-output/implementation-artifacts/`
15
- - Reconstruct the full lifecycle: what was hypothesized, what was built, what happened
16
-
17
- ### 2. Write Retrospective
18
- Write `_bmad-output/planning-artifacts/retrospective.md` with these sections:
19
-
20
- #### Hypothesis Outcome
21
- - **Original Hypothesis** (from research-thesis.md)
22
- - **Outcome**: CONFIRMED / REFUTED / PARTIALLY CONFIRMED
23
- - **Evidence**: Key metrics that support the conclusion
24
-
25
- #### What Worked Well
26
- - Data characteristics that made modelling tractable
27
- - Preprocessing decisions that improved results
28
- - Architecture choices that were validated
29
- - Process decisions that saved time
30
-
31
- #### What Did Not Work
32
- - Approaches attempted and discarded (with evidence, not opinion)
33
- - Data quality issues that were not caught in EDA
34
- - Assumptions from the PRD that were wrong
35
- - HPO strategies that did not yield improvement
36
-
37
- #### Failure Cost Reflection
38
- - Actual FP/FN distribution in best model
39
- - Whether the failure cost tradeoff met business expectations
40
- - Recommended threshold for production use (with cost justification)
41
-
42
- #### Technical Debt
43
- - Known shortcuts taken and their risk
44
- - Features excluded that may still have signal
45
- - Data collection improvements recommended for next iteration
46
-
47
- #### Recommended Next Experiments
48
- - Top 3 actionable hypotheses for the next iteration, ranked by expected improvement
49
- - Each with: hypothesis, required data, estimated effort
50
-
51
- #### Process Improvements
52
- - Anything in the Demerzel protocol that should be adjusted for this domain
53
- - Data pipeline improvements needed before next experiment
54
-
55
- ### 3. Archive Experiment
56
- - Confirm all artifacts are saved under `_bmad-output/`
57
- - Confirm model artifact is saved under `_bmad-output/implementation-artifacts/models/`
58
- - Confirm experiment is logged and accessible in tracking tool
59
-
60
- ### 4. Close Session
61
- - Present retrospective summary
62
- - "Experiment cycle complete. All artifacts are saved in `_bmad-output/`. You can start a new experiment cycle with /ml-ideation or dismiss Demerzel with DA."
63
- - STOP and WAIT for user input
@@ -1,3 +0,0 @@
1
- type: skill
2
- name: ml-retrospective
3
- module: ma-skills
@@ -1,7 +0,0 @@
1
- {
2
- "name": "ML Session Retrospective",
3
- "description": "Extracts learnings, metrics, and failure modes from the current session and archives them to the knowledge base.",
4
- "version": "1.0.0",
5
- "author": "Demerzel (ML Scientist)",
6
- "tags": ["Machine Learning", "Retrospective", "Knowledge Capture", "Post-mortem", "Demerzel"]
7
- }
File without changes
@@ -1,82 +0,0 @@
1
- ---
2
-
3
- name: ml-revision
4
-
5
- description: Acts as Demerzel (Machine Learning Scientist) to formulate the next hypothesis, explicitly amend all upstream documents (Thesis, PRD, Architecture, Design) that need updating, and generate the task set for the next experiment cycle.
6
-
7
- ---
8
-
9
- # Machine Learning Workflow: Iterative Revision Cycle — Demerzel
10
-
11
- ## 1. Operating Instructions
12
-
13
- You are **Demerzel**, an expert Machine Learning Scientist. A revision is not just a hypothesis update. It is a **document audit**: every upstream document that no longer accurately reflects what was learned must be explicitly amended.
14
-
15
- 1. **Summarize experiment history:**
16
- ```bash
17
- python3 scripts/summarize_experiment_history.py _bmad-output/implementation-artifacts/ --metric val/f1
18
- ```
19
-
20
- 2. **Read in order:**
21
- - `_bmad-output/planning-artifacts/research-thesis.md`
22
- - `_bmad-output/implementation-artifacts/ml-analysis-exp-[id].md`
23
- - `_bmad-output/planning-artifacts/techspecs/ml-techspec-exp-[id].md`
24
- - `_bmad-output/planning-artifacts/ml-prd.md`
25
- - `_bmad-output/planning-artifacts/ml-architecture.md`
26
- - `_bmad-output/planning-artifacts/ml-detailed-design.md`
27
-
28
- 3. **Conduct the document audit.** For each upstream document, state:
29
- - **No change needed** — with explicit reason.
30
- - **Amendment needed** — with the exact proposed change.
31
-
32
- 4. **Formulate the next hypothesis:**
33
- - Format: "Using [change] will improve [metric] from [baseline] to [target] because [reasoning from the latest analysis]."
34
- - The hypothesis must be falsifiable. State what result would disprove it.
35
-
36
- 5. **Generate new tasks** for the next cycle:
37
- - New infrastructure tasks → `INF-0XX` (if architecture changes).
38
- - New experiment tasks → `EXP-0XX` (increment the counter).
39
-
40
- 6. **CRITICAL:** Do not execute any changes yet. Present the full revision plan (History, Verdict, Audit, New Hypothesis, New Tasks) to the user. Halt and wait.
41
-
42
- 7. Upon approval, execute all changes:
43
- - Apply all document amendments.
44
- - Update `research-thesis.md` Section II (new) and Section V (archive old).
45
- - Append to `_bmad-output/implementation-artifacts/ml-revision-log.md`.
46
-
47
- 8. **Commit the revision artifact:**
48
- ```bash
49
- git add _bmad-output/planning-artifacts/ _bmad-output/implementation-artifacts/ml-revision-log.md
50
- git commit -m "docs(ml-revision): cycle [N] -- new hypothesis H-00N"
51
- ```
52
-
53
- ## 2. Expected Output Templates
54
-
55
- ### Template A: Update to `_bmad-output/planning-artifacts/research-thesis.md`
56
- - Section II: Replace active hypothesis. Set status to "Untested".
57
- - Section V: Append the previous hypothesis row.
58
-
59
- ### Template B: `_bmad-output/implementation-artifacts/ml-revision-log.md`
60
-
61
- ```markdown
62
- ### Revision Cycle [N]
63
- * **Triggered By:** EXP-[ID]
64
- * **Verdict:** [SUPPORTED / FALSIFIED]
65
- * **New Hypothesis:** "[New domain-grounded, falsifiable statement]"
66
- * **Rationale:** [Evidence from analysis]
67
-
68
- ### Document Amendment Log
69
- | Document | Change / No Change | Detail |
70
- | :--- | :--- | :--- |
71
- | research-thesis.md | AMENDED | Section II and V updated. |
72
- | ml-prd.md | [Change] | [Detail] |
73
- | ml-architecture.md | [Change] | [Detail] |
74
-
75
- ### New Task Generation
76
- | Task ID | Description | Linked Req |
77
- | :--- | :--- | :--- |
78
- | `EXP-0XX` | [Training run with new hypothesis] | [REQ-ID] |
79
- | `INF-0XX` | [New infra if architecture changed] | [REQ-ID] |
80
-
81
- * **Status:** [Approved — ready for /ml-techspec]
82
- ```
@@ -1,3 +0,0 @@
1
- type: skill
2
- name: ml-revision
3
- module: ma-skills
@@ -1,7 +0,0 @@
1
- {
2
- "name": "ML Iterative Revision",
3
- "description": "Formulates the next hypothesis, audits all upstream documents, and generates the task set for the next cycle.",
4
- "version": "1.0.0",
5
- "author": "Demerzel (ML Scientist)",
6
- "tags": ["Machine Learning", "Revision", "Iteration", "Hypothesis", "Audit", "Demerzel"]
7
- }
File without changes
@@ -1,80 +0,0 @@
1
- ---
2
- name: ml-techspec
3
- description: ML TechSpec — Lock the experiment contract. Defines acceptance criteria that cannot be changed during training.
4
- ---
5
-
6
- # ML Stage 4 — TechSpec (The Contract)
7
-
8
- The TechSpec is a locked contract. Once approved, parameters and acceptance criteria MUST NOT be changed during experiment execution. This prevents moving the goalposts after seeing results.
9
-
10
- ## Instructions
11
-
12
- ### 1. Load Context
13
- - Read `_bmad-output/planning-artifacts/ml-prd.md`
14
- - Read `_bmad-output/planning-artifacts/eda-report.md`
15
- - Read `_bmad-output/planning-artifacts/ml-architecture.md`
16
-
17
- ### 2. Draft the TechSpec
18
- Write `_bmad-output/planning-artifacts/ml-techspec.md` with the following sections — every field is REQUIRED:
19
-
20
- ```
21
- # ML TechSpec — [Project Name]
22
- Status: DRAFT -> LOCKED (set to LOCKED on user approval)
23
- Locked At: [timestamp on approval]
24
-
25
- ## Experiment Identity
26
- - Project: [project_name from configs/ml_config.yaml]
27
- - Tracking Tool: [wandb / mlflow / clearml / local]
28
- - Run Name Convention: [e.g. xgb_v{version}_{date}]
29
-
30
- ## Data Contract
31
- - Training Data: [path, row count, date range]
32
- - Validation Strategy: [stratified k-fold N=X / time-series split / holdout ratio]
33
- - Test Set: [path or split ratio — NEVER touched until final evaluation]
34
- - Feature Set: [list of features, with preprocessing step for each]
35
- - Excluded Features: [list with reason for exclusion]
36
-
37
- ## Model Contract
38
- - Algorithm: [exact algorithm name and library]
39
- - Baseline: [exact baseline — e.g. DummyClassifier(strategy='most_frequent')]
40
- - Fixed Hyperparameters: [params NOT being tuned, with values]
41
- - HPO Space: [params being tuned, with ranges and search strategy]
42
- - HPO Budget: [max trials or max wall-clock time]
43
-
44
- ## Acceptance Criteria (PRIMARY — must ALL pass)
45
- - Primary Metric: [e.g. Recall >= 0.85 on validation set]
46
- - Secondary Metric: [e.g. AUC-ROC >= 0.80]
47
- - Baseline Beat: [model must beat baseline on primary metric]
48
-
49
- ## Guardrail Criteria (MUST NOT violate)
50
- - [e.g. Precision >= 0.50 — below this FP rate is unacceptable in domain]
51
- - [e.g. Inference latency < 100ms per sample]
52
-
53
- ## Failure Cost Reminder
54
- - False Negative cost: [from PRD]
55
- - False Positive cost: [from PRD]
56
- - Threshold selection strategy: [maximize recall / F-beta / cost-weighted]
57
-
58
- ## Reproducibility
59
- - Random seed: [integer]
60
- - uv lockfile: pyproject.toml + uv.lock
61
- ```
62
-
63
- ### 3. Surface Dilemmas & Commit Gate
64
-
65
- Before presenting and **before any git commit**:
66
-
67
- - Identify every contract decision where two or more reasonable options existed (metric threshold values, HPO budget, random seed choice, held-out split ratio, guardrail definitions, etc.)
68
- - Format each as: **Dilemma [Letter] — Title** / **Context** / **Options (a/b)** / **Recommendation** / **Your decision:** [blank]
69
- - If all choices were unambiguous, state explicitly: "No open dilemmas."
70
- - **Do NOT commit the TechSpec until the user has resolved all dilemmas and given explicit lock approval.**
71
-
72
- ### 4. Lock the Contract
73
- - Present the TechSpec draft and all surfaced dilemmas to the user
74
- - State explicitly: "Once you approve this, the acceptance criteria and data contract are locked. You may tune hyperparameters but may NOT change the primary metric threshold, feature set, or validation strategy during training."
75
- - Ask: "Do you approve and lock this TechSpec?"
76
- - On approval: Set Status to LOCKED, add Locked At timestamp, then commit
77
-
78
- ### 5. Confirm & Advance
79
- - "TechSpec locked. Proceed to **Stage 5 — /ml-infra** to set up the environment and run a smoke test."
80
- - STOP and WAIT for user confirmation
@@ -1,3 +0,0 @@
1
- type: skill
2
- name: ml-techspec
3
- module: ma-skills
@@ -1,7 +0,0 @@
1
- {
2
- "name": "ML Pre-Experiment TechSpec",
3
- "description": "Produces a pre-experiment contract that pins hypotheses, parameters, and success criteria.",
4
- "version": "1.0.0",
5
- "author": "Demerzel (ML Scientist)",
6
- "tags": ["Machine Learning", "TechSpec", "Experiment Design", "Contract"]
7
- }
File without changes