ma-agents 3.4.9 → 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.
- package/AiAudit.md +7 -0
- package/README.md +78 -29
- package/_bmad-output/implementation-artifacts/17-10-rework-generate-backlog.md +237 -0
- package/_bmad-output/implementation-artifacts/17-11-rework-add-to-sprint.md +339 -0
- package/_bmad-output/implementation-artifacts/17-12-rework-remove-from-sprint.md +348 -0
- package/_bmad-output/implementation-artifacts/17-13-rework-sprint-status-view.md +383 -0
- package/_bmad-output/implementation-artifacts/17-14-rework-cleanup-done.md +348 -0
- package/_bmad-output/implementation-artifacts/17-15-rework-bmad-sprint-planning.md +385 -0
- package/_bmad-output/implementation-artifacts/17-16-rework-add-sprint.md +362 -0
- package/_bmad-output/implementation-artifacts/17-17-rework-modify-sprint.md +477 -0
- package/_bmad-output/implementation-artifacts/17-18-rework-bmad-dev-story.md +377 -0
- package/_bmad-output/implementation-artifacts/17-19-rework-story-status-lookup.md +301 -0
- package/_bmad-output/implementation-artifacts/17-20-rework-bmad-sprint-status.md +508 -0
- package/_bmad-output/implementation-artifacts/17-21-new-close-sprint.md +455 -0
- package/_bmad-output/implementation-artifacts/17-22-jira-adapter-pattern.md +325 -0
- package/_bmad-output/implementation-artifacts/17-23-migration-deprecation-old-files.md +403 -0
- package/_bmad-output/implementation-artifacts/17-24-rework-prioritize-backlog.md +344 -0
- package/_bmad-output/implementation-artifacts/17-9-unified-sprint-status-schema.md +279 -0
- package/_bmad-output/implementation-artifacts/4-1-vs-agent-registry-entry.md +173 -0
- package/_bmad-output/implementation-artifacts/4-2-vs-skill-template-format.md +129 -0
- package/_bmad-output/implementation-artifacts/5-5-explicit-parameter-passing.md +274 -0
- package/_bmad-output/implementation-artifacts/5-6-fix-space-in-path-bug.md +186 -0
- package/_bmad-output/implementation-artifacts/7-1-test-infrastructure-setup.md +144 -0
- package/_bmad-output/implementation-artifacts/7-2-installer-pipeline-tests.md +132 -0
- package/_bmad-output/implementation-artifacts/7-3-bmad-pipeline-tests.md +119 -0
- package/_bmad-output/implementation-artifacts/7-4-cli-command-routing-tests.md +162 -0
- package/_bmad-output/implementation-artifacts/deferred-work.md +9 -0
- package/_bmad-output/implementation-artifacts/done/1-1-ci-cd-yes-flag.md +200 -0
- package/_bmad-output/implementation-artifacts/done/10-1-ensure-bmad-output-not-gitignored.md +172 -0
- package/_bmad-output/implementation-artifacts/done/10-2-document-bmad-output-policy.md +102 -0
- package/_bmad-output/implementation-artifacts/done/11-1-auto-bug-detection-skill.md +119 -0
- package/_bmad-output/implementation-artifacts/done/11-2-bug-story-extension-workflow.md +132 -0
- package/_bmad-output/implementation-artifacts/done/11-3-integrate-bug-detection-code-review.md +111 -0
- package/_bmad-output/implementation-artifacts/done/12-1-add-sprint-workflow.md +126 -0
- package/_bmad-output/implementation-artifacts/done/12-2-add-to-sprint-workflow.md +137 -0
- package/_bmad-output/implementation-artifacts/done/12-3-modify-sprint-workflow.md +127 -0
- package/_bmad-output/implementation-artifacts/done/12-4-sprint-status-assigned-items.md +129 -0
- package/_bmad-output/implementation-artifacts/done/13-1-project-context-template-and-generator.md +179 -0
- package/_bmad-output/implementation-artifacts/done/13-2-install-pipeline-integration.md +138 -0
- package/_bmad-output/implementation-artifacts/done/13-3-bmad-critical-actions-update.md +150 -0
- package/_bmad-output/implementation-artifacts/done/13-4-retrospective-expansion-trigger.md +128 -0
- package/_bmad-output/implementation-artifacts/done/13-5-document-project-context-generation.md +118 -0
- package/_bmad-output/implementation-artifacts/done/15-1-bump-bmad-method-to-6-2-1.md +132 -0
- package/_bmad-output/implementation-artifacts/done/15-2-restructure-extension-module.md +174 -0
- package/_bmad-output/implementation-artifacts/done/15-3-convert-custom-agents-to-skill-folders.md +183 -0
- package/_bmad-output/implementation-artifacts/done/15-4-convert-mil498-workflows-to-skill-md.md +252 -0
- package/_bmad-output/implementation-artifacts/done/15-5-convert-sre-devops-cyber-workflows.md +232 -0
- package/_bmad-output/implementation-artifacts/done/15-6-separate-built-in-agent-customizations.md +163 -0
- package/_bmad-output/implementation-artifacts/done/15-7-migration-detection-and-upgrade-path.md +133 -0
- package/_bmad-output/implementation-artifacts/done/15-8-validate-migrated-agents-and-workflows.md +172 -0
- package/_bmad-output/implementation-artifacts/done/15-8-validation-report.md +342 -0
- package/_bmad-output/implementation-artifacts/done/16-1-repository-layout-wizard.md +223 -0
- package/_bmad-output/implementation-artifacts/done/16-2-config-storage-and-cross-reference.md +180 -0
- package/_bmad-output/implementation-artifacts/done/16-3-project-context-multi-repo-section.md +136 -0
- package/_bmad-output/implementation-artifacts/done/16-4-validate-cross-repo-path-resolution.md +137 -0
- package/_bmad-output/implementation-artifacts/done/16-4-validation-report.md +79 -0
- package/_bmad-output/implementation-artifacts/done/16-5-fix-config-lost-on-update.md +110 -0
- package/_bmad-output/implementation-artifacts/done/16-6-repo-sync-check-skill.md +116 -0
- package/_bmad-output/implementation-artifacts/done/16-7-portable-path-storage.md +109 -0
- package/_bmad-output/implementation-artifacts/done/16-8-cicd-remote-mode.md +97 -0
- package/_bmad-output/implementation-artifacts/done/16-9-reconfigure-layout-workflow.md +125 -0
- package/_bmad-output/implementation-artifacts/done/17-1-sprint-entity-model.md +322 -0
- package/_bmad-output/implementation-artifacts/done/17-2-flat-backlog-model.md +264 -0
- package/_bmad-output/implementation-artifacts/done/17-3-bug-as-story-type.md +208 -0
- package/_bmad-output/implementation-artifacts/done/17-4-backlog-to-sprint-workflow.md +209 -0
- package/_bmad-output/implementation-artifacts/done/17-5-sprint-to-backlog-workflow.md +221 -0
- package/_bmad-output/implementation-artifacts/done/17-6-done-item-cleanup.md +273 -0
- package/_bmad-output/implementation-artifacts/done/17-7-multi-criteria-prioritization.md +235 -0
- package/_bmad-output/implementation-artifacts/done/17-8-rework-sprint-status-display.md +285 -0
- package/_bmad-output/implementation-artifacts/done/2-1-cpp-coding-standards-skill.md +188 -0
- package/_bmad-output/implementation-artifacts/done/2-2-csharp-coding-standards-skill.md +211 -0
- package/_bmad-output/implementation-artifacts/done/2-3-python-coding-standards-skill.md +189 -0
- package/_bmad-output/implementation-artifacts/done/3-1-skill-scaffolding-tool.md +184 -0
- package/_bmad-output/implementation-artifacts/done/3-2-skill-validation-tool.md +178 -0
- package/_bmad-output/implementation-artifacts/done/3-3-mandatory-skill-designation.md +136 -0
- package/_bmad-output/implementation-artifacts/done/3-4-bmad-persona-customization-tooling.md +141 -0
- package/_bmad-output/implementation-artifacts/done/3-5-specialized-agent-development-tooling.md +145 -0
- package/_bmad-output/implementation-artifacts/done/5-1-bmad-method-direct-dependency.md +188 -0
- package/_bmad-output/implementation-artifacts/done/5-2-bmad-cache-build-script.md +219 -0
- package/_bmad-output/implementation-artifacts/done/5-3-pre-populate-bmad-cache.md +234 -0
- package/_bmad-output/implementation-artifacts/done/5-4-validate-bundled-installation.md +274 -0
- package/_bmad-output/implementation-artifacts/done/6-1-methodology-presentation-bundle.md +173 -0
- package/_bmad-output/implementation-artifacts/done/8-1-move-instruction-injection-to-top.md +131 -0
- package/_bmad-output/implementation-artifacts/done/8-2-agent-aware-injection-strategy.md +124 -0
- package/_bmad-output/implementation-artifacts/done/8-3-create-bmad-extension-module.md +187 -0
- package/_bmad-output/implementation-artifacts/done/8-4-integration-verification.md +102 -0
- package/_bmad-output/implementation-artifacts/done/8-5-per-agent-enforcement-hooks-research.md +126 -0
- package/_bmad-output/implementation-artifacts/done/8-6-context-persistence-research.md +101 -0
- package/_bmad-output/implementation-artifacts/done/9-1-register-opencode-agent.md +73 -0
- package/_bmad-output/implementation-artifacts/done/9-2-json-merge-injection.md +91 -0
- package/_bmad-output/implementation-artifacts/done/9-3-json-merge-existing.md +113 -0
- package/_bmad-output/implementation-artifacts/done/9-4-json-error-handling.md +90 -0
- package/_bmad-output/implementation-artifacts/epic-11-12-shared-guardrails.md +53 -0
- package/_bmad-output/implementation-artifacts/epic-15-adversarial-fixes.md +287 -0
- package/_bmad-output/implementation-artifacts/epic-16-adversarial-review.md +49 -0
- package/_bmad-output/implementation-artifacts/epic-16-edge-case-review.md +230 -0
- package/_bmad-output/implementation-artifacts/epic-17-adversarial-review.md +37 -0
- package/_bmad-output/implementation-artifacts/epic-17-edge-case-review.md +140 -0
- package/_bmad-output/implementation-artifacts/sprint-status.yaml +83 -0
- package/_bmad-output/methodology/BMAD_AI_Development_Training.pptx +0 -0
- package/_bmad-output/methodology/version.json +7 -0
- package/_bmad-output/planning-artifacts/adapter-pattern-spec.md +508 -0
- package/_bmad-output/planning-artifacts/architecture.md +1619 -0
- package/_bmad-output/planning-artifacts/domain-research-roocode-2026-03-31.md +295 -0
- package/_bmad-output/planning-artifacts/epics.md +3287 -0
- package/_bmad-output/planning-artifacts/mil498-workflow-audit.md +290 -0
- package/_bmad-output/planning-artifacts/prd.md +684 -0
- package/_bmad-output/planning-artifacts/product-brief-agents-2026-03-08.md +214 -0
- package/_bmad-output/planning-artifacts/sprint-status-schema.md +506 -0
- package/_bmad-output/project-context.md +47 -0
- package/lib/bmad-extension/module-help.csv +26 -4
- package/lib/bmad-extension/skills/add-sprint/SKILL.md +126 -72
- package/lib/bmad-extension/skills/add-to-sprint/SKILL.md +124 -96
- package/{.opencode/skills/add-to-sprint → lib/bmad-extension/skills/bmad-dev-story}/bmad-skill-manifest.yaml +1 -1
- package/{.opencode → lib/bmad-extension}/skills/bmad-dev-story/checklist.md +13 -13
- package/{.opencode → lib/bmad-extension}/skills/bmad-dev-story/workflow.md +103 -44
- package/lib/bmad-extension/skills/bmad-ma-agent-mil498/SKILL.md +2 -1
- package/lib/bmad-extension/skills/bmad-sprint-planning/SKILL.md +6 -0
- package/lib/bmad-extension/skills/bmad-sprint-planning/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension/skills/bmad-sprint-planning/checklist.md +74 -0
- package/lib/bmad-extension/skills/bmad-sprint-planning/sprint-status-template.yaml +89 -0
- package/lib/bmad-extension/skills/bmad-sprint-planning/workflow.md +372 -0
- package/lib/bmad-extension/skills/bmad-sprint-status/SKILL.md +6 -0
- package/{.opencode/skills/create-bug-story → lib/bmad-extension/skills/bmad-sprint-status}/bmad-skill-manifest.yaml +1 -1
- package/lib/bmad-extension/skills/bmad-sprint-status/workflow.md +434 -0
- package/lib/bmad-extension/skills/cleanup-done/SKILL.md +215 -0
- package/lib/bmad-extension/skills/close-sprint/SKILL.md +379 -0
- package/{.opencode/skills/add-sprint → lib/bmad-extension/skills/close-sprint}/bmad-skill-manifest.yaml +1 -1
- package/lib/bmad-extension/skills/generate-backlog/SKILL.md +195 -0
- package/lib/bmad-extension/skills/mil498-requirement-quality/SKILL.md +105 -0
- package/lib/bmad-extension/skills/mil498-requirement-quality/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension/skills/mil498-ssdd/prompts/05-validate.md +4 -0
- package/lib/bmad-extension/skills/modify-sprint/SKILL.md +227 -175
- package/lib/bmad-extension/skills/prioritize-backlog/SKILL.md +217 -0
- package/lib/bmad-extension/skills/remove-from-sprint/SKILL.md +184 -0
- package/lib/bmad-extension/skills/sprint-status-view/SKILL.md +165 -190
- package/lib/bmad-extension/workflows/add-sprint/workflow.md +125 -71
- package/lib/bmad-extension/workflows/add-to-sprint/workflow.md +123 -95
- package/lib/bmad-extension/workflows/modify-sprint/workflow.md +228 -176
- package/lib/bmad-extension/workflows/remove-from-sprint/workflow.md +164 -0
- package/lib/bmad-extension/workflows/sprint-status-view/workflow.md +162 -189
- package/mil498/README.md +4 -0
- package/out.txt +0 -0
- package/package.json +1 -1
- package/skills/add-sprint/SKILL.md +165 -0
- package/skills/add-sprint/skill.json +7 -0
- package/skills/add-to-sprint/SKILL.md +231 -0
- package/skills/add-to-sprint/skill.json +7 -0
- package/skills/bmad-sprint-planning/SKILL.md +321 -0
- package/skills/bmad-sprint-planning/skill.json +7 -0
- package/skills/bmad-sprint-status/SKILL.md +273 -0
- package/skills/bmad-sprint-status/skill.json +7 -0
- package/skills/cleanup-done/SKILL.md +203 -0
- package/skills/cleanup-done/skill.json +7 -0
- package/skills/close-sprint/SKILL.md +370 -0
- package/skills/close-sprint/skill.json +7 -0
- package/skills/generate-backlog/SKILL.md +178 -0
- package/skills/generate-backlog/skill.json +7 -0
- package/skills/modify-sprint/SKILL.md +302 -0
- package/skills/modify-sprint/skill.json +7 -0
- package/skills/prioritize-backlog/SKILL.md +203 -0
- package/skills/prioritize-backlog/skill.json +7 -0
- package/skills/remove-from-sprint/SKILL.md +174 -0
- package/skills/remove-from-sprint/skill.json +7 -0
- package/skills/sprint-status-view/SKILL.md +173 -0
- package/skills/sprint-status-view/skill.json +7 -0
- package/skills/story-status-lookup/SKILL.md +21 -6
- package/skills/story-status-lookup/skill.json +2 -2
- package/test/extension-module-restructure.test.js +12 -11
- package/test/migration-validation.test.js +10 -10
- package/.opencode/skills/.ma-agents.json +0 -241
- package/.opencode/skills/MANIFEST.yaml +0 -254
- package/.opencode/skills/add-sprint/SKILL.md +0 -207
- package/.opencode/skills/add-to-sprint/SKILL.md +0 -189
- package/.opencode/skills/ai-audit-trail/SKILL.md +0 -23
- package/.opencode/skills/auto-bug-detection/SKILL.md +0 -169
- package/.opencode/skills/bmad-advanced-elicitation/SKILL.md +0 -137
- package/.opencode/skills/bmad-advanced-elicitation/methods.csv +0 -51
- package/.opencode/skills/bmad-agent-analyst/SKILL.md +0 -56
- package/.opencode/skills/bmad-agent-analyst/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-agent-architect/SKILL.md +0 -52
- package/.opencode/skills/bmad-agent-architect/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-agent-dev/SKILL.md +0 -62
- package/.opencode/skills/bmad-agent-dev/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-agent-pm/SKILL.md +0 -57
- package/.opencode/skills/bmad-agent-pm/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-agent-qa/SKILL.md +0 -59
- package/.opencode/skills/bmad-agent-qa/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-agent-quick-flow-solo-dev/SKILL.md +0 -51
- package/.opencode/skills/bmad-agent-quick-flow-solo-dev/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-agent-sm/SKILL.md +0 -53
- package/.opencode/skills/bmad-agent-sm/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-agent-tech-writer/SKILL.md +0 -55
- package/.opencode/skills/bmad-agent-tech-writer/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-agent-tech-writer/explain-concept.md +0 -20
- package/.opencode/skills/bmad-agent-tech-writer/mermaid-gen.md +0 -20
- package/.opencode/skills/bmad-agent-tech-writer/validate-doc.md +0 -19
- package/.opencode/skills/bmad-agent-tech-writer/write-document.md +0 -20
- package/.opencode/skills/bmad-agent-ux-designer/SKILL.md +0 -53
- package/.opencode/skills/bmad-agent-ux-designer/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-brainstorming/SKILL.md +0 -6
- package/.opencode/skills/bmad-brainstorming/brain-methods.csv +0 -62
- package/.opencode/skills/bmad-brainstorming/steps/step-01-session-setup.md +0 -214
- package/.opencode/skills/bmad-brainstorming/steps/step-01b-continue.md +0 -124
- package/.opencode/skills/bmad-brainstorming/steps/step-02a-user-selected.md +0 -229
- package/.opencode/skills/bmad-brainstorming/steps/step-02b-ai-recommended.md +0 -239
- package/.opencode/skills/bmad-brainstorming/steps/step-02c-random-selection.md +0 -211
- package/.opencode/skills/bmad-brainstorming/steps/step-02d-progressive-flow.md +0 -266
- package/.opencode/skills/bmad-brainstorming/steps/step-03-technique-execution.md +0 -401
- package/.opencode/skills/bmad-brainstorming/steps/step-04-idea-organization.md +0 -305
- package/.opencode/skills/bmad-brainstorming/template.md +0 -15
- package/.opencode/skills/bmad-brainstorming/workflow.md +0 -53
- package/.opencode/skills/bmad-check-implementation-readiness/SKILL.md +0 -6
- package/.opencode/skills/bmad-check-implementation-readiness/steps/step-01-document-discovery.md +0 -179
- package/.opencode/skills/bmad-check-implementation-readiness/steps/step-02-prd-analysis.md +0 -168
- package/.opencode/skills/bmad-check-implementation-readiness/steps/step-03-epic-coverage-validation.md +0 -169
- package/.opencode/skills/bmad-check-implementation-readiness/steps/step-04-ux-alignment.md +0 -129
- package/.opencode/skills/bmad-check-implementation-readiness/steps/step-05-epic-quality-review.md +0 -241
- package/.opencode/skills/bmad-check-implementation-readiness/steps/step-06-final-assessment.md +0 -126
- package/.opencode/skills/bmad-check-implementation-readiness/templates/readiness-report-template.md +0 -4
- package/.opencode/skills/bmad-check-implementation-readiness/workflow.md +0 -49
- package/.opencode/skills/bmad-cis-design-thinking/SKILL.md +0 -6
- package/.opencode/skills/bmad-cis-design-thinking/bmad-skill-manifest.yaml +0 -1
- package/.opencode/skills/bmad-cis-design-thinking/design-methods.csv +0 -31
- package/.opencode/skills/bmad-cis-design-thinking/template.md +0 -111
- package/.opencode/skills/bmad-cis-design-thinking/workflow.md +0 -242
- package/.opencode/skills/bmad-cis-innovation-strategy/SKILL.md +0 -6
- package/.opencode/skills/bmad-cis-innovation-strategy/bmad-skill-manifest.yaml +0 -1
- package/.opencode/skills/bmad-cis-innovation-strategy/innovation-frameworks.csv +0 -31
- package/.opencode/skills/bmad-cis-innovation-strategy/template.md +0 -189
- package/.opencode/skills/bmad-cis-innovation-strategy/workflow.md +0 -315
- package/.opencode/skills/bmad-cis-problem-solving/SKILL.md +0 -6
- package/.opencode/skills/bmad-cis-problem-solving/bmad-skill-manifest.yaml +0 -1
- package/.opencode/skills/bmad-cis-problem-solving/solving-methods.csv +0 -31
- package/.opencode/skills/bmad-cis-problem-solving/template.md +0 -165
- package/.opencode/skills/bmad-cis-problem-solving/workflow.md +0 -291
- package/.opencode/skills/bmad-cis-storytelling/SKILL.md +0 -6
- package/.opencode/skills/bmad-cis-storytelling/bmad-skill-manifest.yaml +0 -1
- package/.opencode/skills/bmad-cis-storytelling/story-types.csv +0 -26
- package/.opencode/skills/bmad-cis-storytelling/template.md +0 -113
- package/.opencode/skills/bmad-cis-storytelling/workflow.md +0 -321
- package/.opencode/skills/bmad-code-review/SKILL.md +0 -6
- package/.opencode/skills/bmad-code-review/steps/step-01-gather-context.md +0 -62
- package/.opencode/skills/bmad-code-review/steps/step-02-review.md +0 -34
- package/.opencode/skills/bmad-code-review/steps/step-03-triage.md +0 -49
- package/.opencode/skills/bmad-code-review/steps/step-04-present.md +0 -129
- package/.opencode/skills/bmad-code-review/workflow.md +0 -55
- package/.opencode/skills/bmad-correct-course/SKILL.md +0 -6
- package/.opencode/skills/bmad-correct-course/checklist.md +0 -288
- package/.opencode/skills/bmad-correct-course/workflow.md +0 -267
- package/.opencode/skills/bmad-create-architecture/SKILL.md +0 -6
- package/.opencode/skills/bmad-create-architecture/architecture-decision-template.md +0 -12
- package/.opencode/skills/bmad-create-architecture/data/domain-complexity.csv +0 -13
- package/.opencode/skills/bmad-create-architecture/data/project-types.csv +0 -7
- package/.opencode/skills/bmad-create-architecture/steps/step-01-init.md +0 -153
- package/.opencode/skills/bmad-create-architecture/steps/step-01b-continue.md +0 -173
- package/.opencode/skills/bmad-create-architecture/steps/step-02-context.md +0 -224
- package/.opencode/skills/bmad-create-architecture/steps/step-03-starter.md +0 -329
- package/.opencode/skills/bmad-create-architecture/steps/step-04-decisions.md +0 -318
- package/.opencode/skills/bmad-create-architecture/steps/step-05-patterns.md +0 -359
- package/.opencode/skills/bmad-create-architecture/steps/step-06-structure.md +0 -379
- package/.opencode/skills/bmad-create-architecture/steps/step-07-validation.md +0 -359
- package/.opencode/skills/bmad-create-architecture/steps/step-08-complete.md +0 -76
- package/.opencode/skills/bmad-create-architecture/workflow.md +0 -38
- package/.opencode/skills/bmad-create-epics-and-stories/SKILL.md +0 -6
- package/.opencode/skills/bmad-create-epics-and-stories/steps/step-01-validate-prerequisites.md +0 -255
- package/.opencode/skills/bmad-create-epics-and-stories/steps/step-02-design-epics.md +0 -212
- package/.opencode/skills/bmad-create-epics-and-stories/steps/step-03-create-stories.md +0 -255
- package/.opencode/skills/bmad-create-epics-and-stories/steps/step-04-final-validation.md +0 -131
- package/.opencode/skills/bmad-create-epics-and-stories/templates/epics-template.md +0 -61
- package/.opencode/skills/bmad-create-epics-and-stories/workflow.md +0 -53
- package/.opencode/skills/bmad-create-prd/SKILL.md +0 -6
- package/.opencode/skills/bmad-create-prd/data/domain-complexity.csv +0 -15
- package/.opencode/skills/bmad-create-prd/data/prd-purpose.md +0 -197
- package/.opencode/skills/bmad-create-prd/data/project-types.csv +0 -11
- package/.opencode/skills/bmad-create-prd/steps-c/step-01-init.md +0 -178
- package/.opencode/skills/bmad-create-prd/steps-c/step-01b-continue.md +0 -161
- package/.opencode/skills/bmad-create-prd/steps-c/step-02-discovery.md +0 -208
- package/.opencode/skills/bmad-create-prd/steps-c/step-02b-vision.md +0 -142
- package/.opencode/skills/bmad-create-prd/steps-c/step-02c-executive-summary.md +0 -158
- package/.opencode/skills/bmad-create-prd/steps-c/step-03-success.md +0 -214
- package/.opencode/skills/bmad-create-prd/steps-c/step-04-journeys.md +0 -201
- package/.opencode/skills/bmad-create-prd/steps-c/step-05-domain.md +0 -194
- package/.opencode/skills/bmad-create-prd/steps-c/step-06-innovation.md +0 -211
- package/.opencode/skills/bmad-create-prd/steps-c/step-07-project-type.md +0 -222
- package/.opencode/skills/bmad-create-prd/steps-c/step-08-scoping.md +0 -216
- package/.opencode/skills/bmad-create-prd/steps-c/step-09-functional.md +0 -219
- package/.opencode/skills/bmad-create-prd/steps-c/step-10-nonfunctional.md +0 -230
- package/.opencode/skills/bmad-create-prd/steps-c/step-11-polish.md +0 -221
- package/.opencode/skills/bmad-create-prd/steps-c/step-12-complete.md +0 -115
- package/.opencode/skills/bmad-create-prd/templates/prd-template.md +0 -10
- package/.opencode/skills/bmad-create-prd/workflow.md +0 -62
- package/.opencode/skills/bmad-create-story/SKILL.md +0 -6
- package/.opencode/skills/bmad-create-story/checklist.md +0 -357
- package/.opencode/skills/bmad-create-story/discover-inputs.md +0 -88
- package/.opencode/skills/bmad-create-story/template.md +0 -49
- package/.opencode/skills/bmad-create-story/workflow.md +0 -380
- package/.opencode/skills/bmad-create-ux-design/SKILL.md +0 -6
- package/.opencode/skills/bmad-create-ux-design/steps/step-01-init.md +0 -135
- package/.opencode/skills/bmad-create-ux-design/steps/step-01b-continue.md +0 -127
- package/.opencode/skills/bmad-create-ux-design/steps/step-02-discovery.md +0 -190
- package/.opencode/skills/bmad-create-ux-design/steps/step-03-core-experience.md +0 -217
- package/.opencode/skills/bmad-create-ux-design/steps/step-04-emotional-response.md +0 -220
- package/.opencode/skills/bmad-create-ux-design/steps/step-05-inspiration.md +0 -235
- package/.opencode/skills/bmad-create-ux-design/steps/step-06-design-system.md +0 -253
- package/.opencode/skills/bmad-create-ux-design/steps/step-07-defining-experience.md +0 -255
- package/.opencode/skills/bmad-create-ux-design/steps/step-08-visual-foundation.md +0 -225
- package/.opencode/skills/bmad-create-ux-design/steps/step-09-design-directions.md +0 -225
- package/.opencode/skills/bmad-create-ux-design/steps/step-10-user-journeys.md +0 -242
- package/.opencode/skills/bmad-create-ux-design/steps/step-11-component-strategy.md +0 -249
- package/.opencode/skills/bmad-create-ux-design/steps/step-12-ux-patterns.md +0 -238
- package/.opencode/skills/bmad-create-ux-design/steps/step-13-responsive-accessibility.md +0 -265
- package/.opencode/skills/bmad-create-ux-design/steps/step-14-complete.md +0 -171
- package/.opencode/skills/bmad-create-ux-design/ux-design-template.md +0 -13
- package/.opencode/skills/bmad-create-ux-design/workflow.md +0 -36
- package/.opencode/skills/bmad-distillator/SKILL.md +0 -178
- package/.opencode/skills/bmad-distillator/agents/distillate-compressor.md +0 -116
- package/.opencode/skills/bmad-distillator/agents/round-trip-reconstructor.md +0 -68
- package/.opencode/skills/bmad-distillator/resources/compression-rules.md +0 -51
- package/.opencode/skills/bmad-distillator/resources/distillate-format-reference.md +0 -227
- package/.opencode/skills/bmad-distillator/resources/splitting-strategy.md +0 -78
- package/.opencode/skills/bmad-distillator/scripts/analyze_sources.py +0 -300
- package/.opencode/skills/bmad-distillator/scripts/tests/test_analyze_sources.py +0 -204
- package/.opencode/skills/bmad-document-project/SKILL.md +0 -6
- package/.opencode/skills/bmad-document-project/checklist.md +0 -245
- package/.opencode/skills/bmad-document-project/documentation-requirements.csv +0 -12
- package/.opencode/skills/bmad-document-project/instructions.md +0 -128
- package/.opencode/skills/bmad-document-project/templates/deep-dive-template.md +0 -345
- package/.opencode/skills/bmad-document-project/templates/index-template.md +0 -169
- package/.opencode/skills/bmad-document-project/templates/project-overview-template.md +0 -103
- package/.opencode/skills/bmad-document-project/templates/project-scan-report-schema.json +0 -160
- package/.opencode/skills/bmad-document-project/templates/source-tree-template.md +0 -135
- package/.opencode/skills/bmad-document-project/workflow.md +0 -27
- package/.opencode/skills/bmad-document-project/workflows/deep-dive-instructions.md +0 -299
- package/.opencode/skills/bmad-document-project/workflows/deep-dive-workflow.md +0 -34
- package/.opencode/skills/bmad-document-project/workflows/full-scan-instructions.md +0 -1107
- package/.opencode/skills/bmad-document-project/workflows/full-scan-workflow.md +0 -34
- package/.opencode/skills/bmad-domain-research/SKILL.md +0 -6
- package/.opencode/skills/bmad-domain-research/domain-steps/step-01-init.md +0 -137
- package/.opencode/skills/bmad-domain-research/domain-steps/step-02-domain-analysis.md +0 -229
- package/.opencode/skills/bmad-domain-research/domain-steps/step-03-competitive-landscape.md +0 -238
- package/.opencode/skills/bmad-domain-research/domain-steps/step-04-regulatory-focus.md +0 -206
- package/.opencode/skills/bmad-domain-research/domain-steps/step-05-technical-trends.md +0 -234
- package/.opencode/skills/bmad-domain-research/domain-steps/step-06-research-synthesis.md +0 -444
- package/.opencode/skills/bmad-domain-research/research.template.md +0 -29
- package/.opencode/skills/bmad-domain-research/workflow.md +0 -49
- package/.opencode/skills/bmad-edit-prd/SKILL.md +0 -6
- package/.opencode/skills/bmad-edit-prd/steps-e/step-e-01-discovery.md +0 -242
- package/.opencode/skills/bmad-edit-prd/steps-e/step-e-01b-legacy-conversion.md +0 -204
- package/.opencode/skills/bmad-edit-prd/steps-e/step-e-02-review.md +0 -245
- package/.opencode/skills/bmad-edit-prd/steps-e/step-e-03-edit.md +0 -250
- package/.opencode/skills/bmad-edit-prd/steps-e/step-e-04-complete.md +0 -165
- package/.opencode/skills/bmad-edit-prd/workflow.md +0 -63
- package/.opencode/skills/bmad-editorial-review-prose/SKILL.md +0 -86
- package/.opencode/skills/bmad-editorial-review-structure/SKILL.md +0 -179
- package/.opencode/skills/bmad-generate-project-context/SKILL.md +0 -6
- package/.opencode/skills/bmad-generate-project-context/project-context-template.md +0 -21
- package/.opencode/skills/bmad-generate-project-context/steps/step-01-discover.md +0 -186
- package/.opencode/skills/bmad-generate-project-context/steps/step-02-generate.md +0 -321
- package/.opencode/skills/bmad-generate-project-context/steps/step-03-complete.md +0 -278
- package/.opencode/skills/bmad-generate-project-context/workflow.md +0 -43
- package/.opencode/skills/bmad-help/SKILL.md +0 -73
- package/.opencode/skills/bmad-index-docs/SKILL.md +0 -66
- package/.opencode/skills/bmad-init/SKILL.md +0 -100
- package/.opencode/skills/bmad-init/resources/core-module.yaml +0 -25
- package/.opencode/skills/bmad-init/scripts/bmad_init.py +0 -593
- package/.opencode/skills/bmad-init/scripts/tests/test_bmad_init.py +0 -329
- package/.opencode/skills/bmad-ma-agent-cyber/SKILL.md +0 -49
- package/.opencode/skills/bmad-ma-agent-cyber/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-ma-agent-devops/SKILL.md +0 -49
- package/.opencode/skills/bmad-ma-agent-devops/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-ma-agent-mil498/SKILL.md +0 -53
- package/.opencode/skills/bmad-ma-agent-mil498/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-ma-agent-ml/SKILL.md +0 -59
- package/.opencode/skills/bmad-ma-agent-ml/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-ma-agent-sre/SKILL.md +0 -49
- package/.opencode/skills/bmad-ma-agent-sre/bmad-skill-manifest.yaml +0 -11
- package/.opencode/skills/bmad-market-research/SKILL.md +0 -6
- package/.opencode/skills/bmad-market-research/research.template.md +0 -29
- package/.opencode/skills/bmad-market-research/steps/step-01-init.md +0 -184
- package/.opencode/skills/bmad-market-research/steps/step-02-customer-behavior.md +0 -239
- package/.opencode/skills/bmad-market-research/steps/step-03-customer-pain-points.md +0 -251
- package/.opencode/skills/bmad-market-research/steps/step-04-customer-decisions.md +0 -261
- package/.opencode/skills/bmad-market-research/steps/step-05-competitive-analysis.md +0 -173
- package/.opencode/skills/bmad-market-research/steps/step-06-research-completion.md +0 -478
- package/.opencode/skills/bmad-market-research/workflow.md +0 -49
- package/.opencode/skills/bmad-party-mode/SKILL.md +0 -6
- package/.opencode/skills/bmad-party-mode/steps/step-01-agent-loading.md +0 -138
- package/.opencode/skills/bmad-party-mode/steps/step-02-discussion-orchestration.md +0 -187
- package/.opencode/skills/bmad-party-mode/steps/step-03-graceful-exit.md +0 -167
- package/.opencode/skills/bmad-party-mode/workflow.md +0 -190
- package/.opencode/skills/bmad-product-brief/SKILL.md +0 -87
- package/.opencode/skills/bmad-product-brief/agents/artifact-analyzer.md +0 -60
- package/.opencode/skills/bmad-product-brief/agents/opportunity-reviewer.md +0 -44
- package/.opencode/skills/bmad-product-brief/agents/skeptic-reviewer.md +0 -44
- package/.opencode/skills/bmad-product-brief/agents/web-researcher.md +0 -49
- package/.opencode/skills/bmad-product-brief/bmad-manifest.json +0 -17
- package/.opencode/skills/bmad-product-brief/prompts/contextual-discovery.md +0 -57
- package/.opencode/skills/bmad-product-brief/prompts/draft-and-review.md +0 -86
- package/.opencode/skills/bmad-product-brief/prompts/finalize.md +0 -75
- package/.opencode/skills/bmad-product-brief/prompts/guided-elicitation.md +0 -70
- package/.opencode/skills/bmad-product-brief/resources/brief-template.md +0 -60
- package/.opencode/skills/bmad-qa-generate-e2e-tests/SKILL.md +0 -6
- package/.opencode/skills/bmad-qa-generate-e2e-tests/checklist.md +0 -33
- package/.opencode/skills/bmad-qa-generate-e2e-tests/workflow.md +0 -136
- package/.opencode/skills/bmad-quick-dev/SKILL.md +0 -6
- package/.opencode/skills/bmad-quick-dev/spec-template.md +0 -88
- package/.opencode/skills/bmad-quick-dev/step-01-clarify-and-route.md +0 -64
- package/.opencode/skills/bmad-quick-dev/step-02-plan.md +0 -35
- package/.opencode/skills/bmad-quick-dev/step-03-implement.md +0 -37
- package/.opencode/skills/bmad-quick-dev/step-04-review.md +0 -49
- package/.opencode/skills/bmad-quick-dev/step-05-present.md +0 -63
- package/.opencode/skills/bmad-quick-dev/step-oneshot.md +0 -49
- package/.opencode/skills/bmad-quick-dev/workflow.md +0 -79
- package/.opencode/skills/bmad-retrospective/SKILL.md +0 -6
- package/.opencode/skills/bmad-retrospective/workflow.md +0 -1479
- package/.opencode/skills/bmad-review-adversarial-general/SKILL.md +0 -37
- package/.opencode/skills/bmad-review-edge-case-hunter/SKILL.md +0 -67
- package/.opencode/skills/bmad-shard-doc/SKILL.md +0 -105
- package/.opencode/skills/bmad-sprint-planning/SKILL.md +0 -6
- package/.opencode/skills/bmad-sprint-planning/checklist.md +0 -33
- package/.opencode/skills/bmad-sprint-planning/sprint-status-template.yaml +0 -56
- package/.opencode/skills/bmad-sprint-planning/workflow.md +0 -263
- package/.opencode/skills/bmad-sprint-status/SKILL.md +0 -6
- package/.opencode/skills/bmad-sprint-status/workflow.md +0 -261
- package/.opencode/skills/bmad-technical-research/SKILL.md +0 -6
- package/.opencode/skills/bmad-technical-research/research.template.md +0 -29
- package/.opencode/skills/bmad-technical-research/technical-steps/step-01-init.md +0 -137
- package/.opencode/skills/bmad-technical-research/technical-steps/step-02-technical-overview.md +0 -239
- package/.opencode/skills/bmad-technical-research/technical-steps/step-03-integration-patterns.md +0 -248
- package/.opencode/skills/bmad-technical-research/technical-steps/step-04-architectural-patterns.md +0 -202
- package/.opencode/skills/bmad-technical-research/technical-steps/step-05-implementation-research.md +0 -233
- package/.opencode/skills/bmad-technical-research/technical-steps/step-06-research-synthesis.md +0 -487
- package/.opencode/skills/bmad-technical-research/workflow.md +0 -50
- package/.opencode/skills/bmad-validate-prd/SKILL.md +0 -6
- package/.opencode/skills/bmad-validate-prd/data/domain-complexity.csv +0 -15
- package/.opencode/skills/bmad-validate-prd/data/prd-purpose.md +0 -197
- package/.opencode/skills/bmad-validate-prd/data/project-types.csv +0 -11
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-01-discovery.md +0 -221
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-02-format-detection.md +0 -188
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-02b-parity-check.md +0 -206
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-03-density-validation.md +0 -171
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -211
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-05-measurability-validation.md +0 -225
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-06-traceability-validation.md +0 -214
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -202
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -240
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-09-project-type-validation.md +0 -260
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-10-smart-validation.md +0 -206
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -261
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-12-completeness-validation.md +0 -239
- package/.opencode/skills/bmad-validate-prd/steps-v/step-v-13-report-complete.md +0 -229
- package/.opencode/skills/bmad-validate-prd/workflow.md +0 -62
- package/.opencode/skills/cleanup-done/SKILL.md +0 -159
- package/.opencode/skills/cmake-best-practices/SKILL.md +0 -64
- package/.opencode/skills/cmake-best-practices/examples/cmake.md +0 -59
- package/.opencode/skills/code-documentation/SKILL.md +0 -57
- package/.opencode/skills/code-documentation/examples/cpp.md +0 -29
- package/.opencode/skills/code-documentation/examples/csharp.md +0 -28
- package/.opencode/skills/code-documentation/examples/javascript_typescript.md +0 -28
- package/.opencode/skills/code-documentation/examples/python.md +0 -57
- package/.opencode/skills/code-review/SKILL.md +0 -43
- package/.opencode/skills/commit-message/SKILL.md +0 -79
- package/.opencode/skills/cpp-best-practices/SKILL.md +0 -234
- package/.opencode/skills/cpp-best-practices/examples/modern-idioms.md +0 -189
- package/.opencode/skills/cpp-best-practices/examples/naming-and-organization.md +0 -102
- package/.opencode/skills/cpp-concurrency-safety/SKILL.md +0 -60
- package/.opencode/skills/cpp-concurrency-safety/examples/concurrency.md +0 -73
- package/.opencode/skills/cpp-const-correctness/SKILL.md +0 -63
- package/.opencode/skills/cpp-const-correctness/examples/const_correctness.md +0 -54
- package/.opencode/skills/cpp-memory-handling/SKILL.md +0 -42
- package/.opencode/skills/cpp-memory-handling/examples/modern-cpp.md +0 -49
- package/.opencode/skills/cpp-memory-handling/examples/smart-pointers.md +0 -46
- package/.opencode/skills/cpp-modern-composition/SKILL.md +0 -64
- package/.opencode/skills/cpp-modern-composition/examples/composition.md +0 -51
- package/.opencode/skills/cpp-robust-interfaces/SKILL.md +0 -55
- package/.opencode/skills/cpp-robust-interfaces/examples/interfaces.md +0 -56
- package/.opencode/skills/create-bug-story/SKILL.md +0 -263
- package/.opencode/skills/create-hardened-docker-skill/SKILL.md +0 -637
- package/.opencode/skills/create-hardened-docker-skill/scripts/create-all.sh +0 -489
- package/.opencode/skills/csharp-best-practices/SKILL.md +0 -278
- package/.opencode/skills/cyber-generate-certs/.gitkeep +0 -0
- package/.opencode/skills/cyber-generate-certs/SKILL.md +0 -27
- package/.opencode/skills/cyber-generate-certs/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/cyber-immunity-estimation/.gitkeep +0 -0
- package/.opencode/skills/cyber-immunity-estimation/SKILL.md +0 -29
- package/.opencode/skills/cyber-immunity-estimation/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/cyber-security-audit/.gitkeep +0 -0
- package/.opencode/skills/cyber-security-audit/SKILL.md +0 -27
- package/.opencode/skills/cyber-security-audit/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/cyber-vault-secrets/.gitkeep +0 -0
- package/.opencode/skills/cyber-vault-secrets/SKILL.md +0 -28
- package/.opencode/skills/cyber-vault-secrets/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/cyber-verify-docker-users/.gitkeep +0 -0
- package/.opencode/skills/cyber-verify-docker-users/SKILL.md +0 -23
- package/.opencode/skills/cyber-verify-docker-users/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/cyber-verify-image-signature/.gitkeep +0 -0
- package/.opencode/skills/cyber-verify-image-signature/SKILL.md +0 -22
- package/.opencode/skills/cyber-verify-image-signature/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/cyber-vulnerability-scan/.gitkeep +0 -0
- package/.opencode/skills/cyber-vulnerability-scan/SKILL.md +0 -28
- package/.opencode/skills/cyber-vulnerability-scan/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/devops-configure-infrastructure/.gitkeep +0 -0
- package/.opencode/skills/devops-configure-infrastructure/SKILL.md +0 -27
- package/.opencode/skills/devops-configure-infrastructure/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/devops-disconnected-deployment/.gitkeep +0 -0
- package/.opencode/skills/devops-disconnected-deployment/SKILL.md +0 -27
- package/.opencode/skills/devops-disconnected-deployment/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/devops-docker-compose-setup/.gitkeep +0 -0
- package/.opencode/skills/devops-docker-compose-setup/SKILL.md +0 -26
- package/.opencode/skills/devops-docker-compose-setup/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/devops-manage-helm/.gitkeep +0 -0
- package/.opencode/skills/devops-manage-helm/SKILL.md +0 -28
- package/.opencode/skills/devops-manage-helm/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/devops-sign-docker-image/.gitkeep +0 -0
- package/.opencode/skills/devops-sign-docker-image/SKILL.md +0 -24
- package/.opencode/skills/devops-sign-docker-image/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/docker-hardening-verification/SKILL.md +0 -28
- package/.opencode/skills/docker-hardening-verification/scripts/verify-hardening.sh +0 -39
- package/.opencode/skills/docker-image-signing/SKILL.md +0 -28
- package/.opencode/skills/docker-image-signing/scripts/sign-image.sh +0 -33
- package/.opencode/skills/document-revision-history/SKILL.md +0 -104
- package/.opencode/skills/generate-backlog/.gitkeep +0 -0
- package/.opencode/skills/generate-backlog/SKILL.md +0 -183
- package/.opencode/skills/git-workflow-skill/SKILL.md +0 -194
- package/.opencode/skills/git-workflow-skill/hooks/commit-msg +0 -61
- package/.opencode/skills/git-workflow-skill/hooks/pre-commit +0 -38
- package/.opencode/skills/git-workflow-skill/hooks/prepare-commit-msg +0 -56
- package/.opencode/skills/git-workflow-skill/scripts/finish-feature.sh +0 -192
- package/.opencode/skills/git-workflow-skill/scripts/install-hooks.sh +0 -55
- package/.opencode/skills/git-workflow-skill/scripts/start-feature.sh +0 -110
- package/.opencode/skills/git-workflow-skill/scripts/validate-workflow.sh +0 -229
- package/.opencode/skills/js-ts-dependency-mgmt/SKILL.md +0 -49
- package/.opencode/skills/js-ts-dependency-mgmt/examples/dependency_mgmt.md +0 -60
- package/.opencode/skills/js-ts-security-skill/SKILL.md +0 -64
- package/.opencode/skills/js-ts-security-skill/scripts/verify-security.sh +0 -136
- package/.opencode/skills/logging-best-practices/SKILL.md +0 -50
- package/.opencode/skills/logging-best-practices/examples/cpp.md +0 -36
- package/.opencode/skills/logging-best-practices/examples/csharp.md +0 -49
- package/.opencode/skills/logging-best-practices/examples/javascript.md +0 -77
- package/.opencode/skills/logging-best-practices/examples/python.md +0 -57
- package/.opencode/skills/logging-best-practices/references/logging-standards.md +0 -29
- package/.opencode/skills/mil498-ocd/.gitkeep +0 -0
- package/.opencode/skills/mil498-ocd/SKILL.md +0 -30
- package/.opencode/skills/mil498-ocd/bmad-skill-manifest.yaml +0 -5
- package/.opencode/skills/mil498-ocd/prompts/01-discover-project-artifacts.md +0 -26
- package/.opencode/skills/mil498-ocd/prompts/02-load-template.md +0 -10
- package/.opencode/skills/mil498-ocd/prompts/03-generate-document.md +0 -90
- package/.opencode/skills/mil498-ocd/prompts/04-validate.md +0 -14
- package/.opencode/skills/mil498-ocd/prompts/05-review.md +0 -15
- package/.opencode/skills/mil498-ocd/prompts/06-save.md +0 -15
- package/.opencode/skills/mil498-sdd/.gitkeep +0 -0
- package/.opencode/skills/mil498-sdd/SKILL.md +0 -30
- package/.opencode/skills/mil498-sdd/bmad-skill-manifest.yaml +0 -5
- package/.opencode/skills/mil498-sdd/prompts/01-discover-project-artifacts.md +0 -50
- package/.opencode/skills/mil498-sdd/prompts/02-load-template.md +0 -10
- package/.opencode/skills/mil498-sdd/prompts/03-generate-document.md +0 -98
- package/.opencode/skills/mil498-sdd/prompts/04-validate.md +0 -16
- package/.opencode/skills/mil498-sdd/prompts/05-review.md +0 -15
- package/.opencode/skills/mil498-sdd/prompts/06-save.md +0 -19
- package/.opencode/skills/mil498-sdd/template.md +0 -163
- package/.opencode/skills/mil498-sdp/.gitkeep +0 -0
- package/.opencode/skills/mil498-sdp/SKILL.md +0 -30
- package/.opencode/skills/mil498-sdp/bmad-skill-manifest.yaml +0 -5
- package/.opencode/skills/mil498-sdp/prompts/01-discover-project-artifacts.md +0 -32
- package/.opencode/skills/mil498-sdp/prompts/02-load-template.md +0 -10
- package/.opencode/skills/mil498-sdp/prompts/03-generate-document.md +0 -187
- package/.opencode/skills/mil498-sdp/prompts/04-validate.md +0 -13
- package/.opencode/skills/mil498-sdp/prompts/05-review.md +0 -15
- package/.opencode/skills/mil498-sdp/prompts/06-save.md +0 -14
- package/.opencode/skills/mil498-srs/.gitkeep +0 -0
- package/.opencode/skills/mil498-srs/SKILL.md +0 -30
- package/.opencode/skills/mil498-srs/bmad-skill-manifest.yaml +0 -5
- package/.opencode/skills/mil498-srs/prompts/01-discover-project-artifacts.md +0 -42
- package/.opencode/skills/mil498-srs/prompts/02-load-template.md +0 -10
- package/.opencode/skills/mil498-srs/prompts/03-generate-document.md +0 -100
- package/.opencode/skills/mil498-srs/prompts/04-validate.md +0 -16
- package/.opencode/skills/mil498-srs/prompts/05-review.md +0 -15
- package/.opencode/skills/mil498-srs/prompts/06-save.md +0 -18
- package/.opencode/skills/mil498-ssdd/.gitkeep +0 -0
- package/.opencode/skills/mil498-ssdd/SKILL.md +0 -32
- package/.opencode/skills/mil498-ssdd/bmad-skill-manifest.yaml +0 -5
- package/.opencode/skills/mil498-ssdd/prompts/01-discover-project-artifacts.md +0 -32
- package/.opencode/skills/mil498-ssdd/prompts/02-load-template.md +0 -10
- package/.opencode/skills/mil498-ssdd/prompts/03-csci-discovery-interview.md +0 -43
- package/.opencode/skills/mil498-ssdd/prompts/04-generate-document.md +0 -96
- package/.opencode/skills/mil498-ssdd/prompts/05-validate.md +0 -14
- package/.opencode/skills/mil498-ssdd/prompts/06-review.md +0 -16
- package/.opencode/skills/mil498-ssdd/prompts/07-save.md +0 -16
- package/.opencode/skills/mil498-sss/.gitkeep +0 -0
- package/.opencode/skills/mil498-sss/SKILL.md +0 -31
- package/.opencode/skills/mil498-sss/bmad-skill-manifest.yaml +0 -5
- package/.opencode/skills/mil498-sss/prompts/01-discover-project-artifacts.md +0 -31
- package/.opencode/skills/mil498-sss/prompts/02-load-template.md +0 -10
- package/.opencode/skills/mil498-sss/prompts/03-generate-document.md +0 -108
- package/.opencode/skills/mil498-sss/prompts/04-validate.md +0 -16
- package/.opencode/skills/mil498-sss/prompts/05-review.md +0 -15
- package/.opencode/skills/mil498-sss/prompts/06-save.md +0 -15
- package/.opencode/skills/mil498-std/.gitkeep +0 -0
- package/.opencode/skills/mil498-std/SKILL.md +0 -30
- package/.opencode/skills/mil498-std/bmad-skill-manifest.yaml +0 -5
- package/.opencode/skills/mil498-std/prompts/01-discover-project-artifacts.md +0 -42
- package/.opencode/skills/mil498-std/prompts/02-load-template.md +0 -10
- package/.opencode/skills/mil498-std/prompts/03-generate-document.md +0 -117
- package/.opencode/skills/mil498-std/prompts/04-validate.md +0 -15
- package/.opencode/skills/mil498-std/prompts/05-review.md +0 -15
- package/.opencode/skills/mil498-std/prompts/06-save.md +0 -15
- package/.opencode/skills/ml-advise/.gitkeep +0 -0
- package/.opencode/skills/ml-advise/SKILL.md +0 -76
- package/.opencode/skills/ml-advise/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-advise/skill.json +0 -7
- package/.opencode/skills/ml-analysis/.gitkeep +0 -0
- package/.opencode/skills/ml-analysis/SKILL.md +0 -60
- package/.opencode/skills/ml-analysis/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-analysis/skill.json +0 -7
- package/.opencode/skills/ml-architecture/.gitkeep +0 -0
- package/.opencode/skills/ml-architecture/SKILL.md +0 -55
- package/.opencode/skills/ml-architecture/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-architecture/skill.json +0 -7
- package/.opencode/skills/ml-detailed-design/.gitkeep +0 -0
- package/.opencode/skills/ml-detailed-design/SKILL.md +0 -67
- package/.opencode/skills/ml-detailed-design/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-detailed-design/skill.json +0 -7
- package/.opencode/skills/ml-eda/.gitkeep +0 -0
- package/.opencode/skills/ml-eda/SKILL.md +0 -56
- package/.opencode/skills/ml-eda/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-eda/scripts/baseline_classifier.py +0 -522
- package/.opencode/skills/ml-eda/scripts/class_weights_calculator.py +0 -295
- package/.opencode/skills/ml-eda/scripts/clustering_explorer.py +0 -383
- package/.opencode/skills/ml-eda/scripts/eda_analyzer.py +0 -654
- package/.opencode/skills/ml-eda/skill.json +0 -7
- package/.opencode/skills/ml-experiment/.gitkeep +0 -0
- package/.opencode/skills/ml-experiment/SKILL.md +0 -74
- package/.opencode/skills/ml-experiment/assets/advanced_trainer_configs.py +0 -430
- package/.opencode/skills/ml-experiment/assets/quick_trainer_setup.py +0 -233
- package/.opencode/skills/ml-experiment/assets/template_datamodule.py +0 -219
- package/.opencode/skills/ml-experiment/assets/template_gnn_module.py +0 -341
- package/.opencode/skills/ml-experiment/assets/template_lightning_module.py +0 -158
- package/.opencode/skills/ml-experiment/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-experiment/skill.json +0 -7
- package/.opencode/skills/ml-hparam/.gitkeep +0 -0
- package/.opencode/skills/ml-hparam/SKILL.md +0 -81
- package/.opencode/skills/ml-hparam/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-hparam/skill.json +0 -7
- package/.opencode/skills/ml-ideation/.gitkeep +0 -0
- package/.opencode/skills/ml-ideation/SKILL.md +0 -50
- package/.opencode/skills/ml-ideation/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-ideation/scripts/validate_ml_prd.py +0 -287
- package/.opencode/skills/ml-ideation/skill.json +0 -7
- package/.opencode/skills/ml-infra/.gitkeep +0 -0
- package/.opencode/skills/ml-infra/SKILL.md +0 -58
- package/.opencode/skills/ml-infra/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-infra/skill.json +0 -7
- package/.opencode/skills/ml-retrospective/.gitkeep +0 -0
- package/.opencode/skills/ml-retrospective/SKILL.md +0 -63
- package/.opencode/skills/ml-retrospective/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-retrospective/skill.json +0 -7
- package/.opencode/skills/ml-revision/.gitkeep +0 -0
- package/.opencode/skills/ml-revision/SKILL.md +0 -82
- package/.opencode/skills/ml-revision/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-revision/skill.json +0 -7
- package/.opencode/skills/ml-techspec/.gitkeep +0 -0
- package/.opencode/skills/ml-techspec/SKILL.md +0 -80
- package/.opencode/skills/ml-techspec/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/ml-techspec/skill.json +0 -7
- package/.opencode/skills/modify-sprint/.gitkeep +0 -0
- package/.opencode/skills/modify-sprint/SKILL.md +0 -322
- package/.opencode/skills/modify-sprint/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/open-presentation/SKILL.md +0 -35
- package/.opencode/skills/opentelemetry-best-practices/SKILL.md +0 -34
- package/.opencode/skills/opentelemetry-best-practices/examples/go.md +0 -32
- package/.opencode/skills/opentelemetry-best-practices/examples/javascript.md +0 -58
- package/.opencode/skills/opentelemetry-best-practices/examples/python.md +0 -37
- package/.opencode/skills/opentelemetry-best-practices/references/otel-standards.md +0 -37
- package/.opencode/skills/prioritize-backlog/.gitkeep +0 -0
- package/.opencode/skills/prioritize-backlog/SKILL.md +0 -195
- package/.opencode/skills/project-context-expansion/.gitkeep +0 -0
- package/.opencode/skills/project-context-expansion/SKILL.md +0 -238
- package/.opencode/skills/project-context-expansion/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/python-best-practices/SKILL.md +0 -385
- package/.opencode/skills/python-dependency-mgmt/SKILL.md +0 -42
- package/.opencode/skills/python-dependency-mgmt/examples/dependency_mgmt.md +0 -67
- package/.opencode/skills/python-security-skill/SKILL.md +0 -56
- package/.opencode/skills/python-security-skill/examples/security.md +0 -56
- package/.opencode/skills/remove-from-sprint/.gitkeep +0 -0
- package/.opencode/skills/remove-from-sprint/SKILL.md +0 -163
- package/.opencode/skills/self-signed-cert/SKILL.md +0 -42
- package/.opencode/skills/self-signed-cert/scripts/generate-cert.ps1 +0 -45
- package/.opencode/skills/self-signed-cert/scripts/generate-cert.sh +0 -43
- package/.opencode/skills/skill-creator/SKILL.md +0 -196
- package/.opencode/skills/skill-creator/references/output-patterns.md +0 -82
- package/.opencode/skills/skill-creator/references/workflows.md +0 -28
- package/.opencode/skills/skill-creator/scripts/init_skill.py +0 -208
- package/.opencode/skills/skill-creator/scripts/package_skill.py +0 -99
- package/.opencode/skills/skill-creator/scripts/quick_validate.py +0 -113
- package/.opencode/skills/sprint-status-view/.gitkeep +0 -0
- package/.opencode/skills/sprint-status-view/SKILL.md +0 -263
- package/.opencode/skills/sprint-status-view/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/sre-check-deployment-status/.gitkeep +0 -0
- package/.opencode/skills/sre-check-deployment-status/SKILL.md +0 -32
- package/.opencode/skills/sre-check-deployment-status/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/sre-check-secrets/.gitkeep +0 -0
- package/.opencode/skills/sre-check-secrets/SKILL.md +0 -23
- package/.opencode/skills/sre-check-secrets/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/sre-check-system-status/.gitkeep +0 -0
- package/.opencode/skills/sre-check-system-status/SKILL.md +0 -27
- package/.opencode/skills/sre-check-system-status/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/sre-day-2-ops/.gitkeep +0 -0
- package/.opencode/skills/sre-day-2-ops/SKILL.md +0 -26
- package/.opencode/skills/sre-day-2-ops/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/sre-deployment-strategies/.gitkeep +0 -0
- package/.opencode/skills/sre-deployment-strategies/SKILL.md +0 -28
- package/.opencode/skills/sre-deployment-strategies/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/sre-fix-deployments/.gitkeep +0 -0
- package/.opencode/skills/sre-fix-deployments/SKILL.md +0 -25
- package/.opencode/skills/sre-fix-deployments/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/sre-gitops-status/.gitkeep +0 -0
- package/.opencode/skills/sre-gitops-status/SKILL.md +0 -25
- package/.opencode/skills/sre-gitops-status/bmad-skill-manifest.yaml +0 -3
- package/.opencode/skills/story-status-lookup/SKILL.md +0 -78
- package/.opencode/skills/test-accompanied-development/SKILL.md +0 -50
- package/.opencode/skills/test-generator/SKILL.md +0 -65
- package/.opencode/skills/vercel-react-best-practices/SKILL.md +0 -109
- package/.opencode/skills/verify-hardened-docker-skill/SKILL.md +0 -442
- package/.opencode/skills/verify-hardened-docker-skill/scripts/verify-docker-hardening.sh +0 -439
- package/.roo/rules/00-ma-agents.md +0 -13
- package/.roo/skills/.ma-agents.json +0 -241
- package/.roo/skills/MANIFEST.yaml +0 -254
- package/.roo/skills/ai-audit-trail/SKILL.md +0 -23
- package/.roo/skills/auto-bug-detection/SKILL.md +0 -169
- package/.roo/skills/cmake-best-practices/SKILL.md +0 -64
- package/.roo/skills/cmake-best-practices/examples/cmake.md +0 -59
- package/.roo/skills/code-documentation/SKILL.md +0 -57
- package/.roo/skills/code-documentation/examples/cpp.md +0 -29
- package/.roo/skills/code-documentation/examples/csharp.md +0 -28
- package/.roo/skills/code-documentation/examples/javascript_typescript.md +0 -28
- package/.roo/skills/code-documentation/examples/python.md +0 -57
- package/.roo/skills/code-review/SKILL.md +0 -43
- package/.roo/skills/commit-message/SKILL.md +0 -79
- package/.roo/skills/cpp-best-practices/SKILL.md +0 -234
- package/.roo/skills/cpp-best-practices/examples/modern-idioms.md +0 -189
- package/.roo/skills/cpp-best-practices/examples/naming-and-organization.md +0 -102
- package/.roo/skills/cpp-concurrency-safety/SKILL.md +0 -60
- package/.roo/skills/cpp-concurrency-safety/examples/concurrency.md +0 -73
- package/.roo/skills/cpp-const-correctness/SKILL.md +0 -63
- package/.roo/skills/cpp-const-correctness/examples/const_correctness.md +0 -54
- package/.roo/skills/cpp-memory-handling/SKILL.md +0 -42
- package/.roo/skills/cpp-memory-handling/examples/modern-cpp.md +0 -49
- package/.roo/skills/cpp-memory-handling/examples/smart-pointers.md +0 -46
- package/.roo/skills/cpp-modern-composition/SKILL.md +0 -64
- package/.roo/skills/cpp-modern-composition/examples/composition.md +0 -51
- package/.roo/skills/cpp-robust-interfaces/SKILL.md +0 -55
- package/.roo/skills/cpp-robust-interfaces/examples/interfaces.md +0 -56
- package/.roo/skills/create-hardened-docker-skill/SKILL.md +0 -637
- package/.roo/skills/create-hardened-docker-skill/scripts/create-all.sh +0 -489
- package/.roo/skills/csharp-best-practices/SKILL.md +0 -278
- package/.roo/skills/docker-hardening-verification/SKILL.md +0 -28
- package/.roo/skills/docker-hardening-verification/scripts/verify-hardening.sh +0 -39
- package/.roo/skills/docker-image-signing/SKILL.md +0 -28
- package/.roo/skills/docker-image-signing/scripts/sign-image.sh +0 -33
- package/.roo/skills/document-revision-history/SKILL.md +0 -104
- package/.roo/skills/git-workflow-skill/SKILL.md +0 -194
- package/.roo/skills/git-workflow-skill/hooks/commit-msg +0 -61
- package/.roo/skills/git-workflow-skill/hooks/pre-commit +0 -38
- package/.roo/skills/git-workflow-skill/hooks/prepare-commit-msg +0 -56
- package/.roo/skills/git-workflow-skill/scripts/finish-feature.sh +0 -192
- package/.roo/skills/git-workflow-skill/scripts/install-hooks.sh +0 -55
- package/.roo/skills/git-workflow-skill/scripts/start-feature.sh +0 -110
- package/.roo/skills/git-workflow-skill/scripts/validate-workflow.sh +0 -229
- package/.roo/skills/js-ts-dependency-mgmt/SKILL.md +0 -49
- package/.roo/skills/js-ts-dependency-mgmt/examples/dependency_mgmt.md +0 -60
- package/.roo/skills/js-ts-security-skill/SKILL.md +0 -64
- package/.roo/skills/js-ts-security-skill/scripts/verify-security.sh +0 -136
- package/.roo/skills/logging-best-practices/SKILL.md +0 -50
- package/.roo/skills/logging-best-practices/examples/cpp.md +0 -36
- package/.roo/skills/logging-best-practices/examples/csharp.md +0 -49
- package/.roo/skills/logging-best-practices/examples/javascript.md +0 -77
- package/.roo/skills/logging-best-practices/examples/python.md +0 -57
- package/.roo/skills/logging-best-practices/references/logging-standards.md +0 -29
- package/.roo/skills/open-presentation/SKILL.md +0 -35
- package/.roo/skills/opentelemetry-best-practices/SKILL.md +0 -34
- package/.roo/skills/opentelemetry-best-practices/examples/go.md +0 -32
- package/.roo/skills/opentelemetry-best-practices/examples/javascript.md +0 -58
- package/.roo/skills/opentelemetry-best-practices/examples/python.md +0 -37
- package/.roo/skills/opentelemetry-best-practices/references/otel-standards.md +0 -37
- package/.roo/skills/python-best-practices/SKILL.md +0 -385
- package/.roo/skills/python-dependency-mgmt/SKILL.md +0 -42
- package/.roo/skills/python-dependency-mgmt/examples/dependency_mgmt.md +0 -67
- package/.roo/skills/python-security-skill/SKILL.md +0 -56
- package/.roo/skills/python-security-skill/examples/security.md +0 -56
- package/.roo/skills/self-signed-cert/SKILL.md +0 -42
- package/.roo/skills/self-signed-cert/scripts/generate-cert.ps1 +0 -45
- package/.roo/skills/self-signed-cert/scripts/generate-cert.sh +0 -43
- package/.roo/skills/skill-creator/SKILL.md +0 -196
- package/.roo/skills/skill-creator/references/output-patterns.md +0 -82
- package/.roo/skills/skill-creator/references/workflows.md +0 -28
- package/.roo/skills/skill-creator/scripts/init_skill.py +0 -208
- package/.roo/skills/skill-creator/scripts/package_skill.py +0 -99
- package/.roo/skills/skill-creator/scripts/quick_validate.py +0 -113
- package/.roo/skills/story-status-lookup/SKILL.md +0 -78
- package/.roo/skills/test-accompanied-development/SKILL.md +0 -50
- package/.roo/skills/test-generator/SKILL.md +0 -65
- package/.roo/skills/vercel-react-best-practices/SKILL.md +0 -109
- package/.roo/skills/verify-hardened-docker-skill/SKILL.md +0 -442
- package/.roo/skills/verify-hardened-docker-skill/scripts/verify-docker-hardening.sh +0 -439
- package/opencode.json +0 -5
- /package/{.opencode/skills/add-sprint → lib/bmad-extension/skills/bmad-dev-story}/.gitkeep +0 -0
- /package/{.opencode → lib/bmad-extension}/skills/bmad-dev-story/SKILL.md +0 -0
- /package/{.opencode/skills/add-to-sprint → lib/bmad-extension/skills/bmad-sprint-planning}/.gitkeep +0 -0
- /package/{.opencode/skills/bmad-ma-agent-cyber → lib/bmad-extension/skills/bmad-sprint-status}/.gitkeep +0 -0
- /package/{.opencode/skills/bmad-ma-agent-devops → lib/bmad-extension/skills/cleanup-done}/.gitkeep +0 -0
- /package/{.opencode → lib/bmad-extension}/skills/cleanup-done/bmad-skill-manifest.yaml +0 -0
- /package/{.opencode/skills/bmad-ma-agent-mil498 → lib/bmad-extension/skills/close-sprint}/.gitkeep +0 -0
- /package/{.opencode/skills/bmad-ma-agent-ml → lib/bmad-extension/skills/generate-backlog}/.gitkeep +0 -0
- /package/{.opencode → lib/bmad-extension}/skills/generate-backlog/bmad-skill-manifest.yaml +0 -0
- /package/{.opencode/skills/bmad-ma-agent-sre → lib/bmad-extension/skills/mil498-requirement-quality}/.gitkeep +0 -0
- /package/{.opencode/skills/cleanup-done → lib/bmad-extension/skills/prioritize-backlog}/.gitkeep +0 -0
- /package/{.opencode → lib/bmad-extension}/skills/prioritize-backlog/bmad-skill-manifest.yaml +0 -0
- /package/{.opencode/skills/create-bug-story → lib/bmad-extension/skills/remove-from-sprint}/.gitkeep +0 -0
- /package/{.opencode → lib/bmad-extension}/skills/remove-from-sprint/bmad-skill-manifest.yaml +0 -0
- /package/{.opencode/skills/mil498-ocd/template.md → mil498/OCD.md} +0 -0
- /package/{.opencode/skills/mil498-sdp/template.md → mil498/SDP.md} +0 -0
- /package/{.opencode/skills/mil498-srs/template.md → mil498/SRS.md} +0 -0
- /package/{.opencode/skills/mil498-ssdd/template.md → mil498/SSDD.md} +0 -0
- /package/{.opencode/skills/mil498-sss/template.md → mil498/SSS.md} +0 -0
- /package/{.opencode/skills/mil498-std/template.md → mil498/STD.md} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: add-sprint
|
|
3
|
-
description: Guided workflow to create a new sprint with capacity limits
|
|
3
|
+
description: Guided workflow to create a new sprint entry in the sprints section of sprint-status.yaml with capacity limits, optional ISO dates, and auto-incremented ID
|
|
4
4
|
type: skill
|
|
5
5
|
triggers:
|
|
6
6
|
- "add sprint"
|
|
@@ -9,112 +9,166 @@ triggers:
|
|
|
9
9
|
|
|
10
10
|
# Add Sprint Workflow
|
|
11
11
|
|
|
12
|
-
Guided workflow to create a new sprint with capacity limits
|
|
12
|
+
Guided workflow to create a new sprint entry in the `sprints` section of `sprint-status.yaml` with capacity limits, optional ISO dates, and auto-incremented sprint ID.
|
|
13
13
|
|
|
14
14
|
<workflow>
|
|
15
15
|
|
|
16
|
-
<step n="
|
|
17
|
-
<action>
|
|
18
|
-
<
|
|
19
|
-
<
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
16
|
+
<step n="0" goal="Load configuration and validate file existence">
|
|
17
|
+
<action>Resolve the path to `sprint-status.yaml`. Check `_bmad/bmm/config.yaml` for a configured `story_location` path; if not set, default to `_bmad-output/implementation-artifacts/sprint-status.yaml`</action>
|
|
18
|
+
<action>Attempt to read the file at the resolved path</action>
|
|
19
|
+
<check if="sprint-status.yaml does not exist">
|
|
20
|
+
<output>No sprint-status.yaml found. Run sprint planning first to initialize the file.</output>
|
|
21
|
+
<action>Exit workflow</action>
|
|
22
|
+
</check>
|
|
23
|
+
<action>Read and parse the full file: `epics`, `backlog`, and `sprints` sections plus all metadata fields</action>
|
|
24
|
+
<action>Store parsed content as {{file_content}}</action>
|
|
23
25
|
</step>
|
|
24
26
|
|
|
25
|
-
<step n="
|
|
26
|
-
<action>
|
|
27
|
-
<
|
|
27
|
+
<step n="1" goal="Auto-increment sprint ID and derive default name">
|
|
28
|
+
<action>Extract all keys from the `sprints` map in {{file_content}}</action>
|
|
29
|
+
<action>Parse numeric suffix from each key matching pattern `sprint-N` (e.g., `sprint-1` → 1, `sprint-3` → 3)</action>
|
|
30
|
+
<check if="no sprint keys exist in sprints map">
|
|
31
|
+
<action>Set {{new_number}} = 1</action>
|
|
32
|
+
<action>Set {{default_name}} = "Sprint 1"</action>
|
|
33
|
+
</check>
|
|
34
|
+
<check if="sprint keys exist">
|
|
35
|
+
<action>Find the highest numeric suffix among all sprint keys; store as {{max_number}}</action>
|
|
36
|
+
<action>Set {{new_number}} = {{max_number}} + 1</action>
|
|
37
|
+
<action>Look up the sprint entry whose key has suffix {{max_number}}; read its `name` field</action>
|
|
38
|
+
<action>If the name matches pattern "Sprint N" or "Sprint N — description" or "Sprint N - description", set {{default_name}} = "Sprint {{new_number}}"; otherwise set {{default_name}} = "Sprint {{new_number}}" as safe fallback</action>
|
|
39
|
+
</check>
|
|
40
|
+
<action>Set {{sprint_id}} = "sprint-{{new_number}}"</action>
|
|
41
|
+
<action>Set {{sprint_name}} = {{default_name}}</action>
|
|
42
|
+
<output>
|
|
43
|
+
Auto-generated Sprint ID: **{{sprint_id}}**
|
|
44
|
+
Default Sprint Name: **{{sprint_name}}**
|
|
45
|
+
</output>
|
|
46
|
+
<ask>Sprint ID: {{sprint_id}} — press Enter to accept or type a different number:</ask>
|
|
47
|
+
<check if="user provides a different number">
|
|
48
|
+
<action>Set {{sprint_id}} = "sprint-{user_number}"</action>
|
|
49
|
+
<action>Check if {{sprint_id}} already exists as a key in the `sprints` map</action>
|
|
50
|
+
<check if="sprint_id already exists">
|
|
51
|
+
<output>Sprint ID {{sprint_id}} already exists in sprint-status.yaml. Please choose a different number.</output>
|
|
52
|
+
<goto step="1" sub="re-prompt for number only" />
|
|
53
|
+
</check>
|
|
54
|
+
<action>Update {{sprint_name}} default to "Sprint {user_number}"</action>
|
|
55
|
+
</check>
|
|
56
|
+
<ask>Sprint name: '{{sprint_name}}' — press Enter to accept or type a different name:</ask>
|
|
57
|
+
<check if="user provides a different name">
|
|
58
|
+
<action>Set {{sprint_name}} = user input</action>
|
|
59
|
+
</check>
|
|
60
|
+
</step>
|
|
61
|
+
|
|
62
|
+
<step n="2" goal="Gather capacity (required)">
|
|
63
|
+
<action>Explain: capacity is the maximum number of items (stories + bugs) that can be assigned to this sprint. This is advisory — skills will warn but not block when exceeded (per schema section 4.2).</action>
|
|
64
|
+
<ask>What is the sprint capacity? (Enter a positive integer)</ask>
|
|
28
65
|
<action>Store input as {{capacity_input}}</action>
|
|
29
66
|
<action>Validate {{capacity_input}} is a positive integer (greater than zero, no decimals, no non-numeric characters)</action>
|
|
30
67
|
<check if="{{capacity_input}} is NOT a positive integer">
|
|
31
|
-
<output
|
|
68
|
+
<output>Invalid capacity: "{{capacity_input}}". Capacity must be a positive integer (e.g., 5, 10, 20). Zero and negative values are not allowed.</output>
|
|
32
69
|
<goto step="2" />
|
|
33
70
|
</check>
|
|
34
71
|
<action>Store as {{capacity}} (integer)</action>
|
|
35
72
|
</step>
|
|
36
73
|
|
|
37
|
-
<step n="3" goal="Gather optional start and end
|
|
38
|
-
<
|
|
39
|
-
<
|
|
40
|
-
<
|
|
41
|
-
|
|
42
|
-
|
|
74
|
+
<step n="3" goal="Gather optional start and end dates">
|
|
75
|
+
<ask>Optional — Sprint start date (ISO format YYYY-MM-DD, press Enter to skip):</ask>
|
|
76
|
+
<action>Store as {{start_input}}</action>
|
|
77
|
+
<check if="start_input is not empty">
|
|
78
|
+
<action>Validate {{start_input}} matches ISO date pattern YYYY-MM-DD (4-digit year, 2-digit month 01-12, 2-digit day 01-31)</action>
|
|
79
|
+
<check if="start_input does not match ISO date pattern">
|
|
80
|
+
<output>Invalid date format: "{{start_input}}". Please use YYYY-MM-DD (e.g., 2026-04-15).</output>
|
|
81
|
+
<goto step="3" sub="re-prompt for start date only" />
|
|
82
|
+
</check>
|
|
83
|
+
<action>Store as {{start}} = {{start_input}}</action>
|
|
84
|
+
</check>
|
|
85
|
+
<check if="start_input is empty">
|
|
86
|
+
<action>Store as {{start}} = "" (empty string)</action>
|
|
87
|
+
</check>
|
|
88
|
+
<ask>Optional — Sprint end date (ISO format YYYY-MM-DD, press Enter to skip):</ask>
|
|
89
|
+
<action>Store as {{end_input}}</action>
|
|
90
|
+
<check if="end_input is not empty">
|
|
91
|
+
<action>Validate {{end_input}} matches ISO date pattern YYYY-MM-DD</action>
|
|
92
|
+
<check if="end_input does not match ISO date pattern">
|
|
93
|
+
<output>Invalid date format: "{{end_input}}". Please use YYYY-MM-DD (e.g., 2026-04-28).</output>
|
|
94
|
+
<goto step="3" sub="re-prompt for end date only" />
|
|
95
|
+
</check>
|
|
96
|
+
<check if="end_input is before start and start is not empty">
|
|
97
|
+
<output>Warning: end date {{end_input}} is before start date {{start}}. Continuing as requested.</output>
|
|
98
|
+
</check>
|
|
99
|
+
<action>Store as {{end}} = {{end_input}}</action>
|
|
100
|
+
</check>
|
|
101
|
+
<check if="end_input is empty">
|
|
102
|
+
<action>Store as {{end}} = "" (empty string)</action>
|
|
103
|
+
</check>
|
|
43
104
|
</step>
|
|
44
105
|
|
|
45
|
-
<step n="4" goal="
|
|
106
|
+
<step n="4" goal="Confirmation">
|
|
46
107
|
<output>
|
|
47
|
-
## Sprint Summary — Please Confirm
|
|
108
|
+
## New Sprint Summary — Please Confirm
|
|
48
109
|
|
|
49
|
-
-
|
|
50
|
-
-
|
|
51
|
-
-
|
|
52
|
-
-
|
|
53
|
-
-
|
|
54
|
-
-
|
|
110
|
+
- Sprint ID: {{sprint_id}}
|
|
111
|
+
- Sprint Name: {{sprint_name}}
|
|
112
|
+
- Capacity: {{capacity}} items
|
|
113
|
+
- Start Date: {{start}} *(empty if skipped)*
|
|
114
|
+
- End Date: {{end}} *(empty if skipped)*
|
|
115
|
+
- Status: planning
|
|
116
|
+
- Items: [] *(empty — use /add-to-sprint to assign items)*
|
|
117
|
+
- Target: sprint-status.yaml sprints section
|
|
55
118
|
</output>
|
|
56
|
-
<ask>Confirm creation? [y] Yes / [n] Cancel / [e] Edit a field
|
|
119
|
+
<ask>Confirm creation? [y] Yes / [n] Cancel / [e] Edit a field</ask>
|
|
57
120
|
<check if="user selects 'e'">
|
|
58
|
-
<ask>Which field to edit? (
|
|
59
|
-
<check if="field == '
|
|
60
|
-
<ask>New sprint number:</ask>
|
|
61
|
-
<action>Store as {{sprint_number}}</action>
|
|
62
|
-
<action>If sprint name was auto-defaulted to the old "Sprint {n}", update it to "Sprint {{sprint_number}}"</action>
|
|
63
|
-
<goto step="4" />
|
|
64
|
-
</check>
|
|
121
|
+
<ask>Which field to edit? (id / name / capacity / start / end)</ask>
|
|
122
|
+
<check if="field == 'id'"><goto step="1" /></check>
|
|
65
123
|
<check if="field == 'name'">
|
|
66
|
-
<ask>
|
|
67
|
-
<
|
|
124
|
+
<ask>Sprint name (or press Enter to use "{{sprint_name}}"):</ask>
|
|
125
|
+
<check if="input is not empty"><action>Set {{sprint_name}} = user input</action></check>
|
|
68
126
|
<goto step="4" />
|
|
69
127
|
</check>
|
|
70
128
|
<check if="field == 'capacity'"><goto step="2" /></check>
|
|
71
|
-
<check if="field == 'start'"><goto step="3" /></check>
|
|
72
|
-
<check if="field == 'end'"><goto step="3" /></check>
|
|
129
|
+
<check if="field == 'start'"><goto step="3" sub="start date only" /></check>
|
|
130
|
+
<check if="field == 'end'"><goto step="3" sub="end date only" /></check>
|
|
73
131
|
</check>
|
|
74
132
|
<check if="user selects 'n'">
|
|
75
|
-
<output
|
|
133
|
+
<output>Sprint creation cancelled.</output>
|
|
76
134
|
<action>Exit workflow</action>
|
|
77
135
|
</check>
|
|
78
136
|
</step>
|
|
79
137
|
|
|
80
|
-
<step n="5" goal="
|
|
81
|
-
<action>
|
|
82
|
-
<action>
|
|
83
|
-
<
|
|
84
|
-
<output>⚠️ A sprint plan already exists at `_bmad-output/implementation-artifacts/sprint-plan-{{sprint_number}}.yaml`.</output>
|
|
85
|
-
<ask>Overwrite existing sprint plan? [y] Yes / [n] Cancel:</ask>
|
|
86
|
-
<check if="user selects 'n'">
|
|
87
|
-
<output>❌ Sprint creation cancelled to preserve existing sprint plan.</output>
|
|
88
|
-
<action>Exit workflow</action>
|
|
89
|
-
</check>
|
|
90
|
-
</check>
|
|
91
|
-
<action>Get current ISO timestamp for created_date and last_modified</action>
|
|
92
|
-
<action>Write sprint artifact YAML to `_bmad-output/implementation-artifacts/sprint-plan-{{sprint_number}}.yaml` with this structure:
|
|
93
|
-
|
|
138
|
+
<step n="5" goal="Write sprint entry to sprint-status.yaml">
|
|
139
|
+
<action>Re-read the current content of `sprint-status.yaml` (resolved path from Step 0) to get the latest state</action>
|
|
140
|
+
<action>Get the current ISO-8601 timestamp for `last_updated`</action>
|
|
141
|
+
<action>Append a new entry to the `sprints` map with this structure:
|
|
94
142
|
```yaml
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
created_date: "{{current_iso_timestamp}}"
|
|
103
|
-
last_modified: "{{current_iso_timestamp}}"
|
|
143
|
+
{{sprint_id}}:
|
|
144
|
+
name: "{{sprint_name}}"
|
|
145
|
+
status: planning
|
|
146
|
+
capacity: {{capacity}}
|
|
147
|
+
start: "{{start}}"
|
|
148
|
+
end: "{{end}}"
|
|
149
|
+
items: []
|
|
104
150
|
```
|
|
105
151
|
</action>
|
|
152
|
+
<action>Preserve the `epics` section unchanged</action>
|
|
153
|
+
<action>Preserve the `backlog` section unchanged</action>
|
|
154
|
+
<action>Preserve all existing entries in the `sprints` section unchanged</action>
|
|
155
|
+
<action>Update the `last_updated` metadata field to the current ISO-8601 timestamp</action>
|
|
156
|
+
<action>Preserve the `generated` field unchanged (never modify)</action>
|
|
157
|
+
<action>Write the complete updated file in a single atomic write (read-modify-write pattern)</action>
|
|
158
|
+
</step>
|
|
159
|
+
|
|
160
|
+
<step n="6" goal="Summary output">
|
|
106
161
|
<output>
|
|
107
|
-
|
|
162
|
+
Sprint created successfully!
|
|
108
163
|
|
|
109
|
-
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
112
|
-
- **Status:** planning
|
|
164
|
+
- Sprint: {{sprint_name}} ({{sprint_id}})
|
|
165
|
+
- Capacity: {{capacity}} items
|
|
166
|
+
- Status: planning
|
|
113
167
|
|
|
114
|
-
|
|
115
|
-
- Use
|
|
116
|
-
- Use
|
|
117
|
-
- Use
|
|
168
|
+
Next Steps:
|
|
169
|
+
- Use /add-to-sprint to assign backlog items to this sprint
|
|
170
|
+
- Use /modify-sprint to update sprint details later
|
|
171
|
+
- Use /sprint-status-view to view sprint progress
|
|
118
172
|
</output>
|
|
119
173
|
</step>
|
|
120
174
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: add-to-sprint
|
|
3
|
-
description:
|
|
3
|
+
description: Move backlog items to a sprint in the unified sprint-status.yaml using movement semantics
|
|
4
4
|
type: skill
|
|
5
5
|
triggers:
|
|
6
6
|
- "add to sprint"
|
|
@@ -9,88 +9,81 @@ triggers:
|
|
|
9
9
|
|
|
10
10
|
# Add-to-Sprint Workflow
|
|
11
11
|
|
|
12
|
-
Guided workflow to
|
|
12
|
+
Guided workflow to move backlog items to a sprint in the unified `sprint-status.yaml` using movement semantics.
|
|
13
|
+
|
|
14
|
+
**Movement semantics:** Each item exists in exactly one location — either the `backlog` array OR a sprint's `items` array, never both. This skill atomically removes items from `backlog` and appends them to the target sprint's `items` array in a single file write.
|
|
13
15
|
|
|
14
16
|
<workflow>
|
|
15
17
|
|
|
16
|
-
<step n="
|
|
17
|
-
<action>
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
- Skip retrospective keys (keys ending with `-retrospective`)
|
|
21
|
-
- Collect story keys and their current status (backlog, ready-for-dev, in-progress, review, done)
|
|
18
|
+
<step n="0" goal="Load configuration and validate file existence">
|
|
19
|
+
<action>Resolve the path to `sprint-status.yaml`:
|
|
20
|
+
1. If `_bmad/bmm/config.yaml` exists, read `sprint_management_path` from it; the file is at `{sprint_management_path}/_bmad-output/implementation-artifacts/sprint-status.yaml`
|
|
21
|
+
2. Otherwise, use the default single-repo path: `_bmad-output/implementation-artifacts/sprint-status.yaml`
|
|
22
22
|
</action>
|
|
23
|
-
<
|
|
24
|
-
|
|
25
|
-
</
|
|
26
|
-
|
|
27
|
-
<step n="1b" goal="Discover bug story backlog items">
|
|
28
|
-
<action>Glob `_bmad-output/implementation-artifacts/bug-*.md` to discover all bug story files</action>
|
|
29
|
-
<check if="no bug files found">
|
|
30
|
-
<action>Set {{bug_stories}} = [] (empty list)</action>
|
|
31
|
-
</check>
|
|
32
|
-
<check if="bug files found">
|
|
33
|
-
<action>For each bug file, parse YAML frontmatter to extract: `type`, `severity`, `title`</action>
|
|
34
|
-
<action>Store as {{bug_stories}} — list of objects with: file, type (bug), severity, title</action>
|
|
23
|
+
<check if="file does not exist at resolved path">
|
|
24
|
+
<output>❌ No sprint-status.yaml found. Run `/bmad-sprint-planning` first to initialize the file.</output>
|
|
25
|
+
<action>Exit workflow</action>
|
|
35
26
|
</check>
|
|
27
|
+
<action>Read and parse the full file: `epics`, `backlog`, and `sprints` sections plus metadata fields</action>
|
|
28
|
+
<action>Store the complete parsed document as {{sprint_status}} for atomic write-back later</action>
|
|
36
29
|
</step>
|
|
37
30
|
|
|
38
|
-
<step n="
|
|
39
|
-
<action>
|
|
40
|
-
<action>
|
|
41
|
-
<
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
<action>Items already assigned to any sprint will NOT appear in the backlog — this prevents duplicate assignment</action>
|
|
45
|
-
<check if="no sprint files found">
|
|
46
|
-
<action>Set {{all_assigned_items}} = [] — no filtering needed when no sprints exist yet</action>
|
|
31
|
+
<step n="1" goal="Identify assignable sprints">
|
|
32
|
+
<action>Parse the `sprints` map from {{sprint_status}}</action>
|
|
33
|
+
<action>Filter to sprints with `status: planning` or `status: active` — exclude `status: closed` sprints</action>
|
|
34
|
+
<check if="no assignable sprints remain (all sprints are closed or sprints map is empty)">
|
|
35
|
+
<output>❌ No assignable sprints found. Run `/add-sprint` first to create a sprint before assigning items.</output>
|
|
36
|
+
<action>Exit workflow</action>
|
|
47
37
|
</check>
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
<
|
|
51
|
-
|
|
52
|
-
<
|
|
53
|
-
|
|
54
|
-
|
|
38
|
+
<check if="exactly one assignable sprint">
|
|
39
|
+
<action>Auto-select it as {{target_sprint}} (skip selection prompt)</action>
|
|
40
|
+
<output>ℹ️ Auto-selected the only assignable sprint: **{{target_sprint.name}}** ({{target_sprint.status}})</output>
|
|
41
|
+
</check>
|
|
42
|
+
<check if="multiple assignable sprints">
|
|
43
|
+
<action>Build a sprint selection table from the assignable sprints</action>
|
|
44
|
+
<output>
|
|
45
|
+
## Available Sprints
|
|
55
46
|
|
|
56
|
-
| # |
|
|
57
|
-
|
|
58
|
-
{{#each
|
|
59
|
-
| {{@index+1}} | {{
|
|
47
|
+
| # | Sprint | Status | Capacity | Assigned | Remaining |
|
|
48
|
+
|---|--------|--------|----------|----------|-----------|
|
|
49
|
+
{{#each assignable_sprints}}
|
|
50
|
+
| {{@index+1}} | {{name}} | {{status}} | {{capacity}} | {{items.length}} | {{capacity - items.length}} |
|
|
60
51
|
{{/each}}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
52
|
+
</output>
|
|
53
|
+
<ask>Select target sprint (enter number):</ask>
|
|
54
|
+
<action>Resolve entered number to the corresponding sprint entry and store as {{target_sprint}} (the sprint's map key and full sprint object)</action>
|
|
55
|
+
</check>
|
|
64
56
|
</step>
|
|
65
57
|
|
|
66
|
-
<step n="
|
|
67
|
-
<action>
|
|
68
|
-
<
|
|
69
|
-
|
|
58
|
+
<step n="2" goal="Display backlog items eligible for sprint assignment">
|
|
59
|
+
<action>Read the `backlog` array from {{sprint_status}}</action>
|
|
60
|
+
<action>Filter to items with `status: ready-for-dev` ONLY — schema section 4.5 movement rules require this status for sprint assignment</action>
|
|
61
|
+
<check if="no ready-for-dev items exist in the backlog">
|
|
62
|
+
<output>❌ No items eligible for sprint assignment. Items must have `status: ready-for-dev` to be added to a sprint. Items with `status: backlog` must first have a story file created (which advances them to `ready-for-dev`).</output>
|
|
70
63
|
<action>Exit workflow</action>
|
|
71
64
|
</check>
|
|
72
|
-
<action>
|
|
65
|
+
<action>Display eligible backlog items in priority order (array order = priority order, position 0 = highest priority)</action>
|
|
73
66
|
<output>
|
|
74
|
-
##
|
|
67
|
+
## Backlog Items (eligible for sprint assignment)
|
|
75
68
|
|
|
76
|
-
| # |
|
|
77
|
-
|
|
78
|
-
{{#each
|
|
79
|
-
| {{@index+1}} | {{
|
|
69
|
+
| # | ID | Title | Type | Epic | Severity |
|
|
70
|
+
|---|-----|-------|------|------|----------|
|
|
71
|
+
{{#each eligible_backlog_items}}
|
|
72
|
+
| {{@index+1}} | {{id}} | {{title}} | {{type}} | {{epic}} | {{severity}} |
|
|
80
73
|
{{/each}}
|
|
74
|
+
|
|
75
|
+
*Total eligible: {{eligible_count}} items (status: ready-for-dev)*
|
|
81
76
|
</output>
|
|
82
|
-
<ask>Select target sprint (enter number):</ask>
|
|
83
|
-
<action>Store selected sprint data as {{target_sprint}}</action>
|
|
84
77
|
</step>
|
|
85
78
|
|
|
86
|
-
<step n="
|
|
87
|
-
<action>Calculate:
|
|
88
|
-
<action>Calculate
|
|
79
|
+
<step n="3" goal="Display sprint capacity">
|
|
80
|
+
<action>Calculate capacity usage: current assigned count = `{{target_sprint.items.length}}`</action>
|
|
81
|
+
<action>Calculate remaining = `{{target_sprint.capacity}} - {{target_sprint.items.length}}`</action>
|
|
89
82
|
<output>
|
|
90
|
-
## Sprint Capacity: {{target_sprint.
|
|
83
|
+
## Sprint Capacity: {{target_sprint.name}}
|
|
91
84
|
|
|
92
85
|
- **Capacity:** {{target_sprint.capacity}} items
|
|
93
|
-
- **Assigned:** {{
|
|
86
|
+
- **Assigned:** {{target_sprint.items.length}} items
|
|
94
87
|
- **Remaining:** {{remaining_capacity}} slots
|
|
95
88
|
|
|
96
89
|
{{#if remaining_capacity <= 0}}
|
|
@@ -99,17 +92,19 @@ Guided workflow to assign backlog items (stories + bugs) to a sprint using multi
|
|
|
99
92
|
</output>
|
|
100
93
|
</step>
|
|
101
94
|
|
|
102
|
-
<step n="
|
|
103
|
-
<ask>Which backlog items do you want to consider for this sprint? Enter item numbers (comma-separated), or "all" to evaluate the full backlog:</ask>
|
|
95
|
+
<step n="4" goal="Select candidate items for this sprint">
|
|
96
|
+
<ask>Which backlog items do you want to consider for this sprint? Enter item numbers (comma-separated), or "all" to evaluate the full eligible backlog:</ask>
|
|
104
97
|
<check if="user enters 'all'">
|
|
105
|
-
<action>Set {{candidate_items}} = all items
|
|
98
|
+
<action>Set {{candidate_items}} = all items from the eligible backlog list displayed in step 2</action>
|
|
106
99
|
</check>
|
|
107
100
|
<check if="user enters item numbers">
|
|
108
|
-
<action>Resolve the entered numbers against the backlog table from step 2
|
|
101
|
+
<action>Resolve the entered numbers against the eligible backlog table from step 2</action>
|
|
102
|
+
<action>Validate all entered numbers correspond to displayed items — report error for any invalid numbers</action>
|
|
103
|
+
<action>Set {{candidate_items}} = those specific items</action>
|
|
109
104
|
</check>
|
|
110
105
|
</step>
|
|
111
106
|
|
|
112
|
-
<step n="
|
|
107
|
+
<step n="5" goal="Multi-criteria prioritization analysis">
|
|
113
108
|
<action>For each item in {{candidate_items}}, evaluate and score across criteria:
|
|
114
109
|
- **Business value:** High (H) / Medium (M) / Low (L) — impact on users or project goals
|
|
115
110
|
- **Dependency status:** Blocked (blocked by another item) / Blocking (blocks other items) / Independent
|
|
@@ -123,10 +118,10 @@ Guided workflow to assign backlog items (stories + bugs) to a sprint using multi
|
|
|
123
118
|
4. Avoid blocked items unless capacity allows waiting
|
|
124
119
|
</action>
|
|
125
120
|
<output>
|
|
126
|
-
##
|
|
121
|
+
## Prioritization Analysis
|
|
127
122
|
|
|
128
|
-
| Rank | ID
|
|
129
|
-
|
|
123
|
+
| Rank | ID | Title | Type | Business Value | Dependencies | Severity | Effort | Rationale |
|
|
124
|
+
|------|----|-------|------|----------------|--------------|----------|--------|-----------|
|
|
130
125
|
{{#each ranked_items}}
|
|
131
126
|
| {{rank}} | {{id}} | {{title}} | {{type}} | {{business_value}} | {{dependency_status}} | {{severity}} | {{effort}} | {{rationale}} |
|
|
132
127
|
{{/each}}
|
|
@@ -135,7 +130,7 @@ Guided workflow to assign backlog items (stories + bugs) to a sprint using multi
|
|
|
135
130
|
</output>
|
|
136
131
|
</step>
|
|
137
132
|
|
|
138
|
-
<step n="
|
|
133
|
+
<step n="6" goal="User confirms or adjusts selection">
|
|
139
134
|
<ask>Review the ranking above. Options:
|
|
140
135
|
- [c] Confirm recommended selection as-is
|
|
141
136
|
- [m] Modify selection (specify item numbers to include)
|
|
@@ -149,65 +144,98 @@ Choice:</ask>
|
|
|
149
144
|
</check>
|
|
150
145
|
<check if="user selects 'm'">
|
|
151
146
|
<ask>Enter item numbers to assign (comma-separated):</ask>
|
|
152
|
-
<action>
|
|
147
|
+
<action>Resolve entered numbers against the eligible backlog table from step 2</action>
|
|
148
|
+
<action>Set {{confirmed_items}} = those specific items</action>
|
|
153
149
|
</check>
|
|
154
150
|
<check if="user selects 'r'">
|
|
155
|
-
<ask>Enter item numbers in your preferred priority order (comma-separated). Only items you include will be assigned — items not listed will be excluded from this session and remain in the
|
|
156
|
-
<action>Set {{confirmed_items}} =
|
|
151
|
+
<ask>Enter item numbers in your preferred priority order (comma-separated). Only items you include will be assigned — items not listed will be excluded from this session and remain in the backlog:</ask>
|
|
152
|
+
<action>Set {{confirmed_items}} = items matching the user-provided numbers, in the order provided. Items from {{candidate_items}} NOT mentioned are excluded from this session (they remain in the backlog for future sprints).</action>
|
|
157
153
|
</check>
|
|
158
154
|
<check if="user selects 'c'">
|
|
159
|
-
<action>Set {{confirmed_items}} = recommended selection</action>
|
|
155
|
+
<action>Set {{confirmed_items}} = recommended selection from step 5</action>
|
|
160
156
|
</check>
|
|
161
|
-
<action>Store confirmed ranking in {{confirmed_ranking}} for
|
|
157
|
+
<action>Store confirmed ranking in {{confirmed_ranking}} for the audit record</action>
|
|
162
158
|
</step>
|
|
163
159
|
|
|
164
|
-
<step n="
|
|
160
|
+
<step n="7" goal="Execute movement with capacity enforcement">
|
|
161
|
+
<action>Initialize {{current_sprint_count}} = {{target_sprint.items.length}} (current assigned count before any additions this session)</action>
|
|
162
|
+
<action>Initialize {{items_to_move}} = [] (items confirmed for movement)</action>
|
|
165
163
|
<action>For each item in {{confirmed_items}}, in confirmed ranking order:</action>
|
|
166
|
-
<
|
|
167
|
-
|
|
168
|
-
<output>⚠️ **Capacity Warning:** Adding "{{item.title}}" would bring assigned items to {{new_count}}/{{target_sprint.capacity}} — exceeding sprint capacity by {{overage}}.</output>
|
|
164
|
+
<check if="adding this item would exceed sprint capacity (current_sprint_count + 1 > target_sprint.capacity)">
|
|
165
|
+
<output>⚠️ **Capacity Warning:** Adding "{{item.title}}" would bring assigned items to {{current_sprint_count + 1}}/{{target_sprint.capacity}} — exceeding sprint capacity by {{current_sprint_count + 1 - target_sprint.capacity}}.</output>
|
|
169
166
|
<ask>Options:
|
|
170
167
|
- [a] Add anyway (over-capacity acknowledged)
|
|
171
|
-
- [s] Skip this item
|
|
172
|
-
- [m]
|
|
168
|
+
- [s] Skip this item (leave in backlog)
|
|
169
|
+
- [m] Exit to run `/modify-sprint` to increase capacity first
|
|
173
170
|
|
|
174
171
|
Choice:</ask>
|
|
175
172
|
<check if="user selects 's'">
|
|
176
|
-
<action>Skip this item — do
|
|
173
|
+
<action>Skip this item — do NOT add to {{items_to_move}}. Continue to next item.</action>
|
|
177
174
|
</check>
|
|
178
175
|
<check if="user selects 'm'">
|
|
179
|
-
<output>💡 Run `/modify-sprint` to increase capacity for {{target_sprint.
|
|
180
|
-
<action>Exit workflow</action>
|
|
176
|
+
<output>💡 Run `/modify-sprint` to increase capacity for **{{target_sprint.name}}**, then re-run `/add-to-sprint`.</output>
|
|
177
|
+
<action>Exit workflow without making any changes</action>
|
|
181
178
|
</check>
|
|
179
|
+
<check if="user selects 'a'">
|
|
180
|
+
<action>Add to {{items_to_move}} and increment {{current_sprint_count}}</action>
|
|
181
|
+
</check>
|
|
182
|
+
</check>
|
|
183
|
+
<check if="item is within capacity">
|
|
184
|
+
<action>Add to {{items_to_move}} and increment {{current_sprint_count}}</action>
|
|
182
185
|
</check>
|
|
183
|
-
<action>Add item identifier to {{target_sprint.assigned_items}} list in the sprint-plan-{{target_sprint.sprint_number}}.yaml artifact</action>
|
|
184
|
-
<action>Item identifier format: story key for user stories (e.g., `12-1-add-sprint-workflow`), file basename for bugs (e.g., `bug-login-crash`)</action>
|
|
185
186
|
</step>
|
|
186
187
|
|
|
187
|
-
<step n="
|
|
188
|
-
<action>
|
|
189
|
-
|
|
190
|
-
|
|
188
|
+
<step n="8" goal="Atomic write — persist all movements to sprint-status.yaml">
|
|
189
|
+
<action>If {{items_to_move}} is empty (all items were skipped or cancelled), exit without writing.</action>
|
|
190
|
+
|
|
191
|
+
<action>**Pre-write: single-location invariant check.** Build {{all_sprint_item_ids}} = flat set of all item IDs across ALL sprints in {{sprint_status}}.sprints (every sprint, every status). For each item in {{items_to_move}}: check if its ID exists in {{all_sprint_item_ids}}. If ANY match is found:
|
|
192
|
+
<output>**Error:** Data integrity violation — item {{item.id}} already exists in a sprint. Aborting to prevent duplicate. The sprint-status.yaml file may be corrupted. No changes have been written.</output>
|
|
193
|
+
<action>Exit workflow without writing</action>
|
|
194
|
+
</action>
|
|
195
|
+
|
|
196
|
+
<action>**Pre-write: backlog re-validation.** Build {{current_backlog_ids}} = set of all item IDs currently in {{sprint_status}}.backlog. For each item in {{items_to_move}}: check if its ID exists in {{current_backlog_ids}}. If ANY item is missing:
|
|
197
|
+
<output>**Error:** Item {{item.id}} was selected for sprint assignment but is no longer in the backlog. The file may have been modified externally. No changes have been written. Please re-run `/add-to-sprint` to start fresh.</output>
|
|
198
|
+
<action>Exit workflow without writing</action>
|
|
191
199
|
</action>
|
|
192
|
-
|
|
200
|
+
|
|
201
|
+
<action>Perform ALL of the following in a single atomic write to `sprint-status.yaml`:</action>
|
|
202
|
+
<action>1. For each item in {{items_to_move}}:
|
|
203
|
+
- Build the sprint item object: copy `id`, `type`, `epic`, `title`, `status`, `severity` from the backlog item — DROP the `priority` field (sprint items do not have priority)
|
|
204
|
+
- APPEND the sprint item object to `sprints[{{target_sprint_key}}].items`
|
|
205
|
+
- REMOVE the original item object from the `backlog` array
|
|
206
|
+
</action>
|
|
207
|
+
<action>2. Renumber remaining backlog items' `priority` values sequentially (1..N) to match their new array positions (position 0 → priority 1, position 1 → priority 2, etc.)</action>
|
|
208
|
+
<action>3. Update `last_updated` to the current ISO-8601 timestamp</action>
|
|
209
|
+
<action>4. Preserve `generated`, `epics`, and all other metadata fields unchanged</action>
|
|
210
|
+
<action>5. Write the complete updated `sprint-status.yaml` in a single write operation (all removals + additions + renumbering happen together — no partial state)</action>
|
|
211
|
+
</step>
|
|
212
|
+
|
|
213
|
+
<step n="9" goal="Display summary">
|
|
193
214
|
<output>
|
|
194
|
-
##
|
|
215
|
+
## Assignment Complete
|
|
216
|
+
|
|
217
|
+
**Sprint:** {{target_sprint.name}}
|
|
218
|
+
**Items assigned this session:** {{items_to_move.length}}
|
|
195
219
|
|
|
196
|
-
|
|
197
|
-
|
|
220
|
+
| # | ID | Title | Type |
|
|
221
|
+
|---|----|-------|------|
|
|
222
|
+
{{#each items_to_move}}
|
|
223
|
+
| {{@index+1}} | {{id}} | {{title}} | {{type}} |
|
|
224
|
+
{{/each}}
|
|
198
225
|
|
|
199
226
|
### Confirmed Ranking (Audit Record)
|
|
200
227
|
|
|
201
228
|
| Rank | ID | Title | Type | Business Value | Dependencies | Severity | Effort |
|
|
202
|
-
|
|
229
|
+
|------|----|-------|------|----------------|--------------|----------|--------|
|
|
203
230
|
{{#each confirmed_ranking}}
|
|
204
231
|
| {{rank}} | {{id}} | {{title}} | {{type}} | {{business_value}} | {{dependency_status}} | {{severity}} | {{effort}} |
|
|
205
232
|
{{/each}}
|
|
206
233
|
|
|
207
|
-
**Updated Capacity:** {{
|
|
234
|
+
**Updated Capacity:** {{current_sprint_count}}/{{target_sprint.capacity}} items used ({{target_sprint.capacity - current_sprint_count}} remaining)
|
|
208
235
|
|
|
209
236
|
**Next Steps:**
|
|
210
|
-
- Use `/
|
|
237
|
+
- Use `/remove-from-sprint` to move items back to backlog if needed
|
|
238
|
+
- Use `/modify-sprint` to adjust capacity or sprint metadata
|
|
211
239
|
- Use `/sprint-status-view` to view the full sprint with all assigned items
|
|
212
240
|
</output>
|
|
213
241
|
</step>
|