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,24 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: devops-sign-docker-image
|
|
3
|
-
description: Cryptographically sign Docker images using certificates and Cosign
|
|
4
|
-
type: skill
|
|
5
|
-
triggers:
|
|
6
|
-
- "sign docker image"
|
|
7
|
-
- "docker image signing"
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# sign-docker-image.md
|
|
11
|
-
# Docker Image Signing Workflow
|
|
12
|
-
|
|
13
|
-
This workflow guides the DevOps agent through the process of cryptographically signing a Docker image.
|
|
14
|
-
|
|
15
|
-
## Instructions
|
|
16
|
-
1. **Select Image**: Identify the image to sign.
|
|
17
|
-
2. **Get Digest**: Retrieve the immutable digest: `docker inspect --format='{{index .RepoDigests 0}}' {image_name}`.
|
|
18
|
-
3. **Prepare Certificate**: Locate the certificate file provided by the user.
|
|
19
|
-
4. **Execute Signing**:
|
|
20
|
-
- Use the `docker-image-signing` skill.
|
|
21
|
-
- Path: `skills/docker-image-signing/scripts/sign-image.sh`
|
|
22
|
-
- Run: `bash skills/docker-image-signing/scripts/sign-image.sh {image_digest} {cert_file} {key_file}`
|
|
23
|
-
5. **Verify**: Confirm the signature using `cosign verify`.
|
|
24
|
-
6. **Report**: provide the signed image reference to the user.
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Docker Hardening Verification
|
|
3
|
-
description: Audits Docker images for security best practices, least privilege, and OpenShift compliance.
|
|
4
|
-
---
|
|
5
|
-
# Docker Hardening Verification
|
|
6
|
-
|
|
7
|
-
## Purpose
|
|
8
|
-
Audit Docker images to ensure they follow security best practices, specifically focusing on non-root execution and least privilege principles required for hardened clusters like OpenShift.
|
|
9
|
-
|
|
10
|
-
## Instructions
|
|
11
|
-
1. **Inspect Image**: Use `docker inspect` or `podman inspect` to check metadata.
|
|
12
|
-
2. **Verify User**:
|
|
13
|
-
- Ensure `USER` is defined and is NOT `root` or `0`.
|
|
14
|
-
- Recommended: Use a high-numbered UID (e.g., `1001`).
|
|
15
|
-
3. **Check Permissions**:
|
|
16
|
-
- Ensure sensitive directories are not world-writable.
|
|
17
|
-
- Check for `setuid`/`setgid` bits on binaries.
|
|
18
|
-
4. **OpenShift Compliance**:
|
|
19
|
-
- Verify that the image doesn't require specific UIDs if it's meant to run with an arbitrary assigned UID (OpenShift's default).
|
|
20
|
-
- Check if the `/etc/passwd` entry handles arbitrary UIDs (e.g., by using `nss_wrapper` or similar).
|
|
21
|
-
|
|
22
|
-
## Rules
|
|
23
|
-
- Fail the audit if `USER root` is detected.
|
|
24
|
-
- Flag a warning if many unnecessary packages/tools are present.
|
|
25
|
-
- Ensure only necessary ports are exposed.
|
|
26
|
-
|
|
27
|
-
## Usage
|
|
28
|
-
Run `scripts/verify-hardening.sh <image_name>`
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
# verify-hardening.sh - Part of ma-agents docker-hardening-verification skill
|
|
3
|
-
|
|
4
|
-
IMAGE=$1
|
|
5
|
-
|
|
6
|
-
if [ -z "$IMAGE" ]; then
|
|
7
|
-
echo "Usage: $0 <image_name>"
|
|
8
|
-
exit 1
|
|
9
|
-
fi
|
|
10
|
-
|
|
11
|
-
echo "Auditing image: $IMAGE"
|
|
12
|
-
|
|
13
|
-
# 1. Check User
|
|
14
|
-
USER_VAL=$(docker inspect --format='{{.Config.User}}' "$IMAGE")
|
|
15
|
-
|
|
16
|
-
if [ -z "$USER_VAL" ] || [ "$USER_VAL" == "root" ] || [ "$USER_VAL" == "0" ]; then
|
|
17
|
-
echo "[FAIL] Image runs as root! Definining a non-root USER is mandatory for hardened clusters."
|
|
18
|
-
else
|
|
19
|
-
echo "[PASS] Image runs as user: $USER_VAL"
|
|
20
|
-
fi
|
|
21
|
-
|
|
22
|
-
# 2. Check for sensitive capabilities (simplified check)
|
|
23
|
-
CAPS=$(docker inspect --format='{{.Config.CapAdd}}' "$IMAGE")
|
|
24
|
-
if [ "$CAPS" != "<nil>" ] && [ -n "$CAPS" ]; then
|
|
25
|
-
echo "[WARNING] Image has explicitly added capabilities: $CAPS"
|
|
26
|
-
fi
|
|
27
|
-
|
|
28
|
-
# 3. Check for exposed ports
|
|
29
|
-
PORTS=$(docker inspect --format='{{range $p, $conf := .Config.ExposedPorts}}{{$p}} {{end}}' "$IMAGE")
|
|
30
|
-
echo "[INFO] Exposed ports: ${PORTS:-none}"
|
|
31
|
-
|
|
32
|
-
# 4. OpenShift specific check (arbitrary UID support)
|
|
33
|
-
# This is a heuristic check looking for common entrypoint patterns
|
|
34
|
-
ENTRYPOINT=$(docker inspect --format='{{.Config.Entrypoint}}' "$IMAGE")
|
|
35
|
-
if [[ "$ENTRYPOINT" == *"bash"* ]]; then
|
|
36
|
-
echo "[INFO] Entrypoint uses bash, manual check for UID mapping recommended."
|
|
37
|
-
fi
|
|
38
|
-
|
|
39
|
-
echo "Summary: Audit complete for $IMAGE"
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Docker Image Signing
|
|
3
|
-
description: Automates the signing of Docker images using certificates and Cosign/Notary.
|
|
4
|
-
---
|
|
5
|
-
# Docker Image Signing
|
|
6
|
-
|
|
7
|
-
## Purpose
|
|
8
|
-
Ensure the integrity and authenticity of Docker images by signing them with a cryptographic key/certificate. This prevents unauthorized image substitution and ensures only trusted images are deployed.
|
|
9
|
-
|
|
10
|
-
## Instructions
|
|
11
|
-
1. **Tool Selection**: Use `cosign` (recommended) or `notary`.
|
|
12
|
-
2. **Environment Check**: Verify that the signing tool and Docker/Podman are installed.
|
|
13
|
-
3. **Signing Process**:
|
|
14
|
-
- Load the provided certificate/key.
|
|
15
|
-
- Run the signing command against the target image (using its SHA256 digest for immutability).
|
|
16
|
-
4. **Verification**: Always run a verification check immediately after signing.
|
|
17
|
-
|
|
18
|
-
## Rules
|
|
19
|
-
- NEVER sign images by tag alone; use the immutable digest (e.g., `image@sha256:...`).
|
|
20
|
-
- Private keys must be handled as secrets and never stored in the clear.
|
|
21
|
-
- Ensure the certificate provided is valid and not expired.
|
|
22
|
-
|
|
23
|
-
## Usage
|
|
24
|
-
Run the provided script in `scripts/sign-image.sh` with:
|
|
25
|
-
- `IMAGE`: The image reference with digest.
|
|
26
|
-
- `CERT`: Path to the certificate file.
|
|
27
|
-
- `KEY`: Path to the private key file.
|
|
28
|
-
- `PASSPHRASE`: (Optional) Key passphrase.
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
# sign-image.sh - Part of ma-agents docker-image-signing skill
|
|
3
|
-
|
|
4
|
-
IMAGE=$1
|
|
5
|
-
CERT=$2
|
|
6
|
-
KEY=$3
|
|
7
|
-
PASSPHRASE=$4
|
|
8
|
-
|
|
9
|
-
if [ -z "$IMAGE" ] || [ -z "$CERT" ] || [ -z "$KEY" ]; then
|
|
10
|
-
echo "Usage: $0 <image_digest> <cert_file> <key_file> [passphrase]"
|
|
11
|
-
exit 1
|
|
12
|
-
fi
|
|
13
|
-
|
|
14
|
-
echo "Signing image: $IMAGE"
|
|
15
|
-
|
|
16
|
-
# Check for cosign
|
|
17
|
-
if command -v cosign &> /dev/null; then
|
|
18
|
-
echo "Using Cosign for signing..."
|
|
19
|
-
if [ -n "$PASSPHRASE" ]; then
|
|
20
|
-
export COSIGN_PASSWORD=$PASSPHRASE
|
|
21
|
-
fi
|
|
22
|
-
cosign sign --key "$KEY" --cert "$CERT" "$IMAGE"
|
|
23
|
-
else
|
|
24
|
-
echo "Error: cosign not found. Please install cosign to use this skill."
|
|
25
|
-
exit 1
|
|
26
|
-
fi
|
|
27
|
-
|
|
28
|
-
if [ $? -eq 0 ]; then
|
|
29
|
-
echo "Successfully signed $IMAGE"
|
|
30
|
-
else
|
|
31
|
-
echo "Failed to sign $IMAGE"
|
|
32
|
-
exit 1
|
|
33
|
-
fi
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Document Revision History
|
|
3
|
-
description: Manages a revision history table at the beginning of generated documents, tracking changes per version.
|
|
4
|
-
---
|
|
5
|
-
# Document Revision History
|
|
6
|
-
|
|
7
|
-
Manage a revision history table at the beginning of every generated or updated document. This ensures traceability of changes across document versions.
|
|
8
|
-
|
|
9
|
-
## Policy
|
|
10
|
-
|
|
11
|
-
### 1. Revision History Table Required
|
|
12
|
-
|
|
13
|
-
Every document generated or updated by the agent MUST include a **Revision History** table immediately after the document title (before the Table of Contents or Section 1).
|
|
14
|
-
|
|
15
|
-
### 2. Table Format
|
|
16
|
-
|
|
17
|
-
Use the following markdown table format:
|
|
18
|
-
|
|
19
|
-
```markdown
|
|
20
|
-
| Version | Date | Author | Changes |
|
|
21
|
-
|---------|------|--------|---------|
|
|
22
|
-
| 1.0 | 2026-03-02 | Agent (Claude) | Initial document generation |
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
### 3. Column Definitions
|
|
26
|
-
|
|
27
|
-
| Column | Description |
|
|
28
|
-
|--------|-------------|
|
|
29
|
-
| **Version** | Document version number (e.g., 1.0, 1.1, 2.0). Use semantic versioning: major version for structural changes, minor for content updates |
|
|
30
|
-
| **Date** | Date of the change in `YYYY-MM-DD` format |
|
|
31
|
-
| **Author** | Who made the change — use `Agent (<model>)` for AI-generated content, or the user's name for user-directed changes |
|
|
32
|
-
| **Changes** | Brief summary of ALL changes made in this version. One line per version — consolidate multiple changes into a single descriptive entry |
|
|
33
|
-
|
|
34
|
-
### 4. Rules for New Documents
|
|
35
|
-
|
|
36
|
-
When **generating a new document** for the first time:
|
|
37
|
-
- Add the revision history table immediately after the document title
|
|
38
|
-
- Set version to `1.0`
|
|
39
|
-
- Set date to today's date
|
|
40
|
-
- Set author to `Agent (<model>)` where `<model>` is the AI model name
|
|
41
|
-
- Set changes to `Initial document generation`
|
|
42
|
-
|
|
43
|
-
### 5. Rules for Updated Documents
|
|
44
|
-
|
|
45
|
-
When **updating an existing document**:
|
|
46
|
-
- Read the existing revision history table
|
|
47
|
-
- Determine the new version number:
|
|
48
|
-
- **Minor increment** (e.g., 1.0 → 1.1): Content updates, corrections, additions to existing sections
|
|
49
|
-
- **Major increment** (e.g., 1.1 → 2.0): Structural changes, section reorganization, significant rewrites
|
|
50
|
-
- Add a **single new row** summarizing ALL changes made in this update session
|
|
51
|
-
- Do NOT create multiple rows for changes made in the same session — consolidate them into one line
|
|
52
|
-
- Preserve all previous revision history entries
|
|
53
|
-
|
|
54
|
-
### 6. Changes Column Guidelines
|
|
55
|
-
|
|
56
|
-
Write concise but descriptive change summaries:
|
|
57
|
-
|
|
58
|
-
**Good examples:**
|
|
59
|
-
- `Added Sections 7-8 (impacts, analysis), expanded interface requirements to cover categories a-g`
|
|
60
|
-
- `Updated capability requirements based on user feedback, added 3 new interfaces`
|
|
61
|
-
- `Fixed traceability matrix, corrected section numbering`
|
|
62
|
-
|
|
63
|
-
**Bad examples:**
|
|
64
|
-
- `Updated document` (too vague)
|
|
65
|
-
- `Changed section 3.2.1 requirement SRS-CAP-001 description from X to Y, then changed 3.2.2...` (too granular — summarize)
|
|
66
|
-
|
|
67
|
-
### 7. Placement
|
|
68
|
-
|
|
69
|
-
The revision history table MUST appear in this order within the document:
|
|
70
|
-
|
|
71
|
-
```markdown
|
|
72
|
-
# Document Title
|
|
73
|
-
|
|
74
|
-
| Version | Date | Author | Changes |
|
|
75
|
-
|---------|------|--------|---------|
|
|
76
|
-
| 1.0 | 2026-03-02 | Agent (Claude) | Initial document generation |
|
|
77
|
-
|
|
78
|
-
> MIL-STD-498 or other document metadata...
|
|
79
|
-
|
|
80
|
-
## Table of Contents (if applicable)
|
|
81
|
-
|
|
82
|
-
## 1. Scope
|
|
83
|
-
...
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
### 8. Multi-Author Sessions
|
|
87
|
-
|
|
88
|
-
If the user provides their name or the changes are user-directed corrections:
|
|
89
|
-
- Use the user's name as author
|
|
90
|
-
- If both the agent and user contribute in the same session, use `{user_name} / Agent (<model>)`
|
|
91
|
-
|
|
92
|
-
## Example
|
|
93
|
-
|
|
94
|
-
A document updated twice would have:
|
|
95
|
-
|
|
96
|
-
```markdown
|
|
97
|
-
# Software Requirements Specification (SRS)
|
|
98
|
-
|
|
99
|
-
| Version | Date | Author | Changes |
|
|
100
|
-
|---------|------|--------|---------|
|
|
101
|
-
| 1.0 | 2026-03-01 | Agent (Claude) | Initial document generation from SSDD and PRD artifacts |
|
|
102
|
-
| 1.1 | 2026-03-02 | Joseph / Agent (Claude) | Added 4 interface requirements per user feedback, corrected capability traceability to SSDD |
|
|
103
|
-
| 2.0 | 2026-03-15 | Agent (Claude) | Major rewrite: restructured CSCI decomposition after SSDD v2.0, updated all requirement IDs |
|
|
104
|
-
```
|
|
File without changes
|
|
@@ -1,183 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: generate-backlog
|
|
3
|
-
description: Generate or refresh a flat backlog.yaml from epics and bug stories, preserving existing priority and sprint assignments
|
|
4
|
-
type: skill
|
|
5
|
-
triggers:
|
|
6
|
-
- "generate backlog"
|
|
7
|
-
- "refresh backlog"
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Generate Backlog Workflow
|
|
11
|
-
|
|
12
|
-
Generate or refresh a flat `backlog.yaml` from epic stories and bug reports. Preserves existing priority and sprint assignments, appends new items, removes stale items, and re-numbers priorities 1..N.
|
|
13
|
-
|
|
14
|
-
<workflow>
|
|
15
|
-
|
|
16
|
-
<step n="1" goal="Load sources">
|
|
17
|
-
<action>Read `_bmad-output/planning-artifacts/epics.md` — this is the master list of epics with their stories.</action>
|
|
18
|
-
<check if="epics.md does not exist">
|
|
19
|
-
<output>**Error:** `_bmad-output/planning-artifacts/epics.md` not found. Cannot generate backlog without an epics file.</output>
|
|
20
|
-
<action>Exit workflow</action>
|
|
21
|
-
</check>
|
|
22
|
-
|
|
23
|
-
<action>Glob `_bmad-output/implementation-artifacts/bug-*.md` to discover all bug story files.</action>
|
|
24
|
-
<action>Store the list of bug files as {{bug_files}} (may be empty — zero bugs is valid).</action>
|
|
25
|
-
|
|
26
|
-
<action>Read `_bmad-output/implementation-artifacts/sprint-status.yaml` if it exists — this provides the current status of each story (done, in-progress, backlog, etc.).</action>
|
|
27
|
-
<action>Store the status map as {{status_map}} (keyed by story id). If the file does not exist, use an empty map.</action>
|
|
28
|
-
|
|
29
|
-
<action>Read `_bmad-output/implementation-artifacts/backlog.yaml` if it exists — this is the existing backlog to merge with.</action>
|
|
30
|
-
<action>Store the existing backlog items as {{existing_items}} (list). If the file does not exist, use an empty list.</action>
|
|
31
|
-
|
|
32
|
-
<output>
|
|
33
|
-
**Sources loaded:**
|
|
34
|
-
- epics.md: found
|
|
35
|
-
- Bug files: {{bug_files | length}} file(s)
|
|
36
|
-
- sprint-status.yaml: {{status_map exists ? "found" : "not found (empty status)"}}
|
|
37
|
-
- Existing backlog.yaml: {{existing_items | length}} item(s)
|
|
38
|
-
</output>
|
|
39
|
-
</step>
|
|
40
|
-
|
|
41
|
-
<step n="2" goal="Extract stories from epics">
|
|
42
|
-
<action>Parse `epics.md` to extract every story from every epic. Each epic is a level-2 heading (`## Epic N: ...`) and each story within it is a level-3 heading (`### Story N.M: ...`) or a list item following the pattern `- **Story N.M:** Title` or `- N.M: Title`.</action>
|
|
43
|
-
|
|
44
|
-
<action>For each story found:
|
|
45
|
-
- Derive {{story_id}} as a kebab-case slug: `"{epic_number}-{story_number}-{title_slug}"` (e.g., `"5-5-explicit-parameter-passing"`)
|
|
46
|
-
- Title slug: lowercase, replace spaces/underscores with hyphens, remove non-alphanumeric/non-hyphen characters, collapse consecutive hyphens, trim leading/trailing hyphens
|
|
47
|
-
- Set {{epic}} to the epic number (integer)
|
|
48
|
-
- Set {{title}} to the story title text
|
|
49
|
-
- Look up status from {{status_map}} using the story identifier. If found and status is `done`, skip this story (exclude from backlog). If found, use that status. If not found, default to `backlog`.
|
|
50
|
-
- Set {{type}} = `story`
|
|
51
|
-
- Set {{severity}} = `null`
|
|
52
|
-
- Set {{sprint}} = `null`
|
|
53
|
-
- Set {{priority}} = `null` (will be assigned during merge/sort)
|
|
54
|
-
</action>
|
|
55
|
-
|
|
56
|
-
<action>Store the extracted stories as {{extracted_stories}} list.</action>
|
|
57
|
-
<output>Extracted {{extracted_stories | length}} active stories from epics (done items excluded).</output>
|
|
58
|
-
</step>
|
|
59
|
-
|
|
60
|
-
<step n="3" goal="Extract bugs">
|
|
61
|
-
<action>For each file in {{bug_files}}:
|
|
62
|
-
- Read the file and parse the YAML frontmatter (between `---` delimiters)
|
|
63
|
-
- Extract `title`, `severity`, and `status` from frontmatter
|
|
64
|
-
- Derive {{bug_id}} from the **filename**, not the title: strip the `bug-` prefix and `.md` extension, then uppercase to `"BUG-{slug}"` (e.g., `bug-login-crash.md` → `BUG-login-crash`)
|
|
65
|
-
- Use `status` from frontmatter directly (bugs track their own status). If `status` is missing, default to `backlog`. If status is `done`, skip this bug (exclude from backlog).
|
|
66
|
-
- Build a backlog item:
|
|
67
|
-
- id: {{bug_id}}
|
|
68
|
-
- type: `bug`
|
|
69
|
-
- epic: `null`
|
|
70
|
-
- title: {{title}}
|
|
71
|
-
- priority: `null` (assigned during merge/sort)
|
|
72
|
-
- status: {{frontmatter_status or "backlog"}}
|
|
73
|
-
- sprint: `null`
|
|
74
|
-
- severity: {{severity}}
|
|
75
|
-
</action>
|
|
76
|
-
|
|
77
|
-
<action>Store the extracted bugs as {{extracted_bugs}} list.</action>
|
|
78
|
-
<output>Extracted {{extracted_bugs | length}} active bugs (done items excluded).</output>
|
|
79
|
-
</step>
|
|
80
|
-
|
|
81
|
-
<step n="4" goal="Merge with existing backlog">
|
|
82
|
-
<action>Combine {{extracted_stories}} and {{extracted_bugs}} into {{new_items}} list.</action>
|
|
83
|
-
|
|
84
|
-
<action>Build a lookup map from {{existing_items}} keyed by `id`.</action>
|
|
85
|
-
|
|
86
|
-
<action>For each item in {{new_items}}:
|
|
87
|
-
- If an item with the same `id` exists in {{existing_items}}:
|
|
88
|
-
- **Preserve** the existing `priority` value
|
|
89
|
-
- **Preserve** the existing `sprint` assignment
|
|
90
|
-
- **Update** `status` from the freshly extracted value (which may reflect sprint-status.yaml changes)
|
|
91
|
-
- **Update** `title`, `type`, `epic`, `severity` from the freshly extracted values (source of truth)
|
|
92
|
-
- If no matching item exists in {{existing_items}}:
|
|
93
|
-
- This is a new item — keep all freshly extracted values
|
|
94
|
-
- Set `priority` to `null` (will be placed at the end during sort)
|
|
95
|
-
</action>
|
|
96
|
-
|
|
97
|
-
<action>Identify stale items: any item in {{existing_items}} whose `id` does NOT appear in {{new_items}}. These items no longer exist in the source files and should be removed.</action>
|
|
98
|
-
|
|
99
|
-
<action>Store the final merged list as {{merged_items}}.</action>
|
|
100
|
-
<action>Store the count of new items added as {{new_count}}.</action>
|
|
101
|
-
<action>Store the count of stale items removed as {{stale_count}}.</action>
|
|
102
|
-
<action>Store the count of preserved items as {{preserved_count}}.</action>
|
|
103
|
-
|
|
104
|
-
<output>
|
|
105
|
-
**Merge results:**
|
|
106
|
-
- Preserved (existing): {{preserved_count}}
|
|
107
|
-
- New items added: {{new_count}}
|
|
108
|
-
- Stale items removed: {{stale_count}}
|
|
109
|
-
</output>
|
|
110
|
-
</step>
|
|
111
|
-
|
|
112
|
-
<step n="5" goal="Write backlog.yaml">
|
|
113
|
-
<action>Sort {{merged_items}} for final output:
|
|
114
|
-
1. Items WITH an existing numeric `priority` come first, sorted ascending by priority
|
|
115
|
-
2. Items WITHOUT a priority (`null`) come after, sorted by:
|
|
116
|
-
a. `type`: bugs before stories (bugs get priority attention)
|
|
117
|
-
b. `severity` for bugs: critical > high > medium > low
|
|
118
|
-
c. `epic` number ascending for stories (lower epics first)
|
|
119
|
-
d. `id` alphabetically as final tiebreaker
|
|
120
|
-
</action>
|
|
121
|
-
|
|
122
|
-
<action>Re-number priorities sequentially 1..N across all items in the sorted list.</action>
|
|
123
|
-
|
|
124
|
-
<action>Get current ISO timestamp as {{generated_at}}.</action>
|
|
125
|
-
|
|
126
|
-
<action>Write `_bmad-output/implementation-artifacts/backlog.yaml` with this structure:
|
|
127
|
-
|
|
128
|
-
```yaml
|
|
129
|
-
# Flat Backlog — auto-generated by generate-backlog
|
|
130
|
-
# Generated: {{generated_at}}
|
|
131
|
-
# Total items: {{merged_items | length}}
|
|
132
|
-
#
|
|
133
|
-
# Schema per item:
|
|
134
|
-
# id, type, epic, title, priority, status, sprint, severity
|
|
135
|
-
|
|
136
|
-
backlog:
|
|
137
|
-
- id: "5-5-explicit-parameter-passing"
|
|
138
|
-
type: story
|
|
139
|
-
epic: 5
|
|
140
|
-
title: "Explicit Parameter Passing"
|
|
141
|
-
priority: 1
|
|
142
|
-
status: backlog
|
|
143
|
-
sprint: null
|
|
144
|
-
severity: null
|
|
145
|
-
# ... remaining items ...
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
**YAML output rules:**
|
|
149
|
-
- Always quote `id` and `title` fields (they contain hyphens and special characters)
|
|
150
|
-
- `epic` is an integer for stories, `null` for bugs
|
|
151
|
-
- `sprint` is a string like `"sprint-3"` if assigned, or `null`
|
|
152
|
-
- `severity` is a string (`critical`, `high`, `medium`, `low`) for bugs, `null` for stories
|
|
153
|
-
- `status` is one of: `backlog`, `ready-for-dev`, `in-progress`, `review` (done items excluded)
|
|
154
|
-
- `priority` is always a positive integer (1 = highest priority)
|
|
155
|
-
- Use 2-space indentation for YAML
|
|
156
|
-
</action>
|
|
157
|
-
|
|
158
|
-
<output>Backlog written to `_bmad-output/implementation-artifacts/backlog.yaml` with {{merged_items | length}} items.</output>
|
|
159
|
-
</step>
|
|
160
|
-
|
|
161
|
-
<step n="6" goal="Report summary">
|
|
162
|
-
<output>
|
|
163
|
-
## Backlog Generation Complete
|
|
164
|
-
|
|
165
|
-
| Metric | Count |
|
|
166
|
-
|----------------------|-------|
|
|
167
|
-
| Total items | {{merged_items | length}} |
|
|
168
|
-
| Stories | {{story_count}} |
|
|
169
|
-
| Bugs | {{bug_count}} |
|
|
170
|
-
| New items added | {{new_count}} |
|
|
171
|
-
| Stale items removed | {{stale_count}} |
|
|
172
|
-
| Items preserved | {{preserved_count}} |
|
|
173
|
-
|
|
174
|
-
**Output:** `_bmad-output/implementation-artifacts/backlog.yaml`
|
|
175
|
-
|
|
176
|
-
**Next Steps:**
|
|
177
|
-
- Review priorities — new items are appended at the end; reorder as needed
|
|
178
|
-
- Use `/add-to-sprint` to assign high-priority items to the current sprint
|
|
179
|
-
- Use `/sprint-status-view` to see sprint progress
|
|
180
|
-
</output>
|
|
181
|
-
</step>
|
|
182
|
-
|
|
183
|
-
</workflow>
|
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Git Workflow
|
|
3
|
-
description: MANDATORY worktree-based workflow for ALL file-changing activities. Enforces isolated feature branches, conventional commits, and PR-based merging.
|
|
4
|
-
---
|
|
5
|
-
# Mandatory Usage Policy (CRITICAL)
|
|
6
|
-
|
|
7
|
-
**This skill is MANDATORY for all activities that modify tracked files in this repository.**
|
|
8
|
-
|
|
9
|
-
1. **Before starting ANY work** that changes source code, config files, or documentation: You MUST run `./scripts/start-feature.sh` (or the equivalent `git worktree add`) to create an isolated feature branch and worktree.
|
|
10
|
-
2. **During development**: You MUST perform all file-writing activities inside the newly created worktree directory.
|
|
11
|
-
3. **After completing work**: You MUST run `./scripts/finish-feature.sh` (or the equivalent rebase/push/PR/cleanup sequence) to integrate your changes and clean up the worktree.
|
|
12
|
-
|
|
13
|
-
**Failure to follow this workflow is a violation of repository standards.**
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
# Git Workflow (Worktree-Based)
|
|
18
|
-
|
|
19
|
-
Multi-agent parallel development using git worktrees. Each agent gets an isolated working directory — no branch switching, no conflicts between agents.
|
|
20
|
-
|
|
21
|
-
## Bundled Tools
|
|
22
|
-
|
|
23
|
-
### Scripts (scripts/)
|
|
24
|
-
| Script | Purpose |
|
|
25
|
-
|--------|---------|
|
|
26
|
-
| `start-feature.sh <type> <desc>` | Create worktree + feature branch from dev |
|
|
27
|
-
| `finish-feature.sh [path]` | Rebase, push, create PR, remove worktree |
|
|
28
|
-
| `validate-workflow.sh [--list]` | Check workflow compliance / list worktrees |
|
|
29
|
-
| `install-hooks.sh` | Install git hooks to repo |
|
|
30
|
-
|
|
31
|
-
### Git Hooks (hooks/)
|
|
32
|
-
| Hook | Purpose |
|
|
33
|
-
|------|---------|
|
|
34
|
-
| `pre-commit` | Blocks commits on dev/main (shared across worktrees) |
|
|
35
|
-
| `commit-msg` | Validates conventional commit format |
|
|
36
|
-
| `prepare-commit-msg` | Adds commit message template |
|
|
37
|
-
|
|
38
|
-
**Install hooks:** Run `scripts/install-hooks.sh` in target repository.
|
|
39
|
-
|
|
40
|
-
### Requirements
|
|
41
|
-
- Git (2.15+ for worktree support)
|
|
42
|
-
- GitHub CLI (`gh`) - Required for automatic PR creation
|
|
43
|
-
```bash
|
|
44
|
-
# macOS
|
|
45
|
-
brew install gh
|
|
46
|
-
# Windows
|
|
47
|
-
winget install --id GitHub.cli
|
|
48
|
-
# Linux
|
|
49
|
-
apt install gh
|
|
50
|
-
|
|
51
|
-
# Authenticate
|
|
52
|
-
gh auth login
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
## Mandatory Pre-Change Check
|
|
58
|
-
|
|
59
|
-
Before making ANY change to repository files (that are not in .gitignore):
|
|
60
|
-
|
|
61
|
-
1. Check if files to be changed are tracked:
|
|
62
|
-
```bash
|
|
63
|
-
git check-ignore -v <file-path>
|
|
64
|
-
```
|
|
65
|
-
If file is ignored → proceed without this workflow
|
|
66
|
-
If file is tracked → continue with steps below
|
|
67
|
-
|
|
68
|
-
2. Verify `dev` branch exists:
|
|
69
|
-
```bash
|
|
70
|
-
git fetch origin
|
|
71
|
-
git branch -a | grep -E '(^|\/)dev$'
|
|
72
|
-
```
|
|
73
|
-
3. If `dev` does not exist → **STOP and ask user** to create it or specify base branch
|
|
74
|
-
|
|
75
|
-
## Multi-Agent Development Flow
|
|
76
|
-
|
|
77
|
-
```
|
|
78
|
-
Main repo (stays on dev) ─── always clean, never modified directly
|
|
79
|
-
│
|
|
80
|
-
├── .worktrees/auth-system/ ← Agent 1: feature/auth-system
|
|
81
|
-
│ └── (isolated copy of repo, own branch, own changes)
|
|
82
|
-
│
|
|
83
|
-
├── .worktrees/api-refactor/ ← Agent 2: bugfix/api-refactor
|
|
84
|
-
│ └── (isolated copy of repo, own branch, own changes)
|
|
85
|
-
│
|
|
86
|
-
└── .worktrees/update-docs/ ← Agent 3: chore/update-docs
|
|
87
|
-
└── (isolated copy of repo, own branch, own changes)
|
|
88
|
-
|
|
89
|
-
Each worktree:
|
|
90
|
-
1. Has its own directory and branch
|
|
91
|
-
2. Shares git history with the main repo
|
|
92
|
-
3. Can commit, push, and create PRs independently
|
|
93
|
-
4. Gets cleaned up automatically after finish-feature.sh
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
### Starting Work
|
|
97
|
-
|
|
98
|
-
**Using script (recommended):**
|
|
99
|
-
```bash
|
|
100
|
-
./scripts/start-feature.sh feature my-feature-name
|
|
101
|
-
# Output: .worktrees/my-feature-name/ created
|
|
102
|
-
cd .worktrees/my-feature-name/
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
**Manual:**
|
|
106
|
-
```bash
|
|
107
|
-
git worktree add .worktrees/<desc> -b feature/<desc> origin/dev
|
|
108
|
-
cd .worktrees/<desc>
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
### Branch Naming
|
|
112
|
-
|
|
113
|
-
| Type | Use Case |
|
|
114
|
-
|------|----------|
|
|
115
|
-
| `feature/<desc>` | New functionality |
|
|
116
|
-
| `bugfix/<desc>` | Bug fixes |
|
|
117
|
-
| `hotfix/<desc>` | Urgent production fixes |
|
|
118
|
-
| `chore/<desc>` | Maintenance tasks |
|
|
119
|
-
|
|
120
|
-
### Completing Work
|
|
121
|
-
|
|
122
|
-
**Using script (recommended):**
|
|
123
|
-
```bash
|
|
124
|
-
# Run from inside the worktree
|
|
125
|
-
./scripts/finish-feature.sh
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
This script will:
|
|
129
|
-
1. Validate you're on a feature branch
|
|
130
|
-
2. Validate commit messages (conventional commits)
|
|
131
|
-
3. Rebase on latest `dev` branch
|
|
132
|
-
4. Push the feature branch
|
|
133
|
-
5. **Automatically create a PR to `dev`** (requires `gh` CLI)
|
|
134
|
-
6. **Remove the worktree** (auto-cleanup)
|
|
135
|
-
|
|
136
|
-
**Note:** If `gh` CLI is not installed, the script will skip PR creation. The branch will still be pushed.
|
|
137
|
-
|
|
138
|
-
**Manual:**
|
|
139
|
-
```bash
|
|
140
|
-
# From inside the worktree
|
|
141
|
-
git fetch origin dev
|
|
142
|
-
git rebase origin/dev
|
|
143
|
-
git push -u origin <branch-name>
|
|
144
|
-
gh pr create --base dev --head <branch-name>
|
|
145
|
-
|
|
146
|
-
# Clean up from main repo
|
|
147
|
-
cd /path/to/main/repo
|
|
148
|
-
git worktree remove .worktrees/<desc>
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
### Managing Worktrees
|
|
152
|
-
|
|
153
|
-
```bash
|
|
154
|
-
# List all active worktrees
|
|
155
|
-
git worktree list
|
|
156
|
-
# or
|
|
157
|
-
./scripts/validate-workflow.sh --list
|
|
158
|
-
|
|
159
|
-
# Remove a specific worktree
|
|
160
|
-
git worktree remove .worktrees/<desc>
|
|
161
|
-
|
|
162
|
-
# Clean up stale references
|
|
163
|
-
git worktree prune
|
|
164
|
-
|
|
165
|
-
# Validate workflow compliance
|
|
166
|
-
./scripts/validate-workflow.sh
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
## Commit Format (Conventional Commits)
|
|
170
|
-
|
|
171
|
-
```
|
|
172
|
-
<type>(<scope>): <description>
|
|
173
|
-
|
|
174
|
-
[optional body]
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
**Types:** `feat`, `fix`, `chore`, `docs`, `refactor`, `test`
|
|
178
|
-
|
|
179
|
-
**Examples:**
|
|
180
|
-
- `feat(auth): add OAuth2 flow support`
|
|
181
|
-
- `fix(api): handle null response from endpoint`
|
|
182
|
-
- `chore(deps): update Helm chart dependencies`
|
|
183
|
-
- `docs(readme): add deployment instructions`
|
|
184
|
-
|
|
185
|
-
## Critical Rules
|
|
186
|
-
|
|
187
|
-
- **NEVER** modify tracked files without being in a worktree on a feature branch.
|
|
188
|
-
- **NEVER** commit directly to `dev` or `main`.
|
|
189
|
-
- **ALWAYS** check if a file is gitignored before applying this workflow.
|
|
190
|
-
- **ALWAYS** create a worktree **BEFORE** calling any file-writing tools (write_to_file, replace_file_content, etc.).
|
|
191
|
-
- **ALWAYS** rebase on `dev` before pushing.
|
|
192
|
-
- **ALWAYS** use conventional commit format.
|
|
193
|
-
- **ALWAYS** add `.worktrees/` to your `.gitignore`.
|
|
194
|
-
- **ALWAYS** finish the workflow by creating a PR and removing the worktree once work is verified.
|