bmad-method 6.0.4 â 6.0.5-next.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/.augment/code_review_guidelines.yaml +2 -42
- package/.claude/skills/bmad-os-findings-triage/SKILL.md +6 -0
- package/.claude/skills/bmad-os-findings-triage/prompts/agent-prompt.md +104 -0
- package/.claude/skills/bmad-os-findings-triage/prompts/instructions.md +286 -0
- package/.claude/skills/bmad-os-review-pr/SKILL.md +1 -1
- package/.claude/skills/bmad-os-review-pr/prompts/instructions.md +63 -6
- package/.claude/skills/bmad-os-review-prompt/SKILL.md +177 -0
- package/.github/workflows/publish.yaml +243 -0
- package/CONTRIBUTING.md +1 -1
- package/README_CN.md +121 -0
- package/docs/_STYLE_GUIDE.md +10 -10
- package/docs/explanation/brainstorming.md +1 -1
- package/docs/explanation/party-mode.md +1 -1
- package/docs/explanation/preventing-agent-conflicts.md +1 -1
- package/docs/explanation/project-context.md +15 -15
- package/docs/explanation/quick-flow.md +9 -9
- package/docs/how-to/established-projects.md +7 -7
- package/docs/how-to/get-answers-about-bmad.md +2 -2
- package/docs/how-to/install-bmad.md +16 -6
- package/docs/how-to/project-context.md +2 -2
- package/docs/how-to/quick-fixes.md +5 -5
- package/docs/how-to/shard-large-documents.md +1 -1
- package/docs/how-to/upgrade-to-v6.md +8 -5
- package/docs/index.md +1 -1
- package/docs/reference/agents.md +14 -14
- package/docs/reference/commands.md +64 -70
- package/docs/reference/testing.md +1 -1
- package/docs/reference/workflow-map.md +19 -19
- package/docs/tutorials/getting-started.md +34 -34
- package/docs/zh-cn/404.md +9 -0
- package/docs/zh-cn/_STYLE_GUIDE.md +370 -0
- package/docs/zh-cn/explanation/advanced-elicitation.md +62 -0
- package/docs/zh-cn/explanation/adversarial-review.md +71 -0
- package/docs/zh-cn/explanation/brainstorming.md +43 -0
- package/docs/zh-cn/explanation/established-projects-faq.md +60 -0
- package/docs/zh-cn/explanation/party-mode.md +79 -0
- package/docs/zh-cn/explanation/preventing-agent-conflicts.md +137 -0
- package/docs/zh-cn/explanation/project-context.md +176 -0
- package/docs/zh-cn/explanation/quick-flow.md +93 -0
- package/docs/zh-cn/explanation/why-solutioning-matters.md +90 -0
- package/docs/zh-cn/how-to/customize-bmad.md +182 -0
- package/docs/zh-cn/how-to/established-projects.md +134 -0
- package/docs/zh-cn/how-to/get-answers-about-bmad.md +144 -0
- package/docs/zh-cn/how-to/install-bmad.md +105 -0
- package/docs/zh-cn/how-to/non-interactive-installation.md +181 -0
- package/docs/zh-cn/how-to/project-context.md +152 -0
- package/docs/zh-cn/how-to/quick-fixes.md +140 -0
- package/docs/zh-cn/how-to/shard-large-documents.md +86 -0
- package/docs/zh-cn/how-to/upgrade-to-v6.md +120 -0
- package/docs/zh-cn/index.md +69 -0
- package/docs/zh-cn/reference/agents.md +41 -0
- package/docs/zh-cn/reference/commands.md +166 -0
- package/docs/zh-cn/reference/modules.md +94 -0
- package/docs/zh-cn/reference/testing.md +122 -0
- package/docs/zh-cn/reference/workflow-map.md +104 -0
- package/docs/zh-cn/roadmap.mdx +152 -0
- package/docs/zh-cn/tutorials/getting-started.md +300 -0
- package/package.json +1 -1
- package/src/bmm/agents/analyst.agent.yaml +1 -1
- package/src/bmm/agents/bmad-skill-manifest.yaml +39 -0
- package/src/bmm/agents/dev.agent.yaml +2 -2
- package/src/bmm/agents/pm.agent.yaml +1 -1
- package/src/bmm/agents/qa.agent.yaml +1 -1
- package/src/bmm/agents/quick-flow-solo-dev.agent.yaml +6 -2
- package/src/bmm/agents/sm.agent.yaml +4 -4
- package/src/bmm/agents/tech-writer/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/agents/tech-writer/tech-writer.agent.yaml +1 -1
- package/src/bmm/module-help.csv +11 -10
- package/src/bmm/workflows/1-analysis/create-product-brief/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +1 -1
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +1 -1
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +1 -1
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +1 -1
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +1 -1
- package/src/bmm/workflows/1-analysis/research/bmad-skill-manifest.yaml +14 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/bmad-skill-manifest.yaml +14 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02b-vision.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02c-executive-summary.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +1 -1
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +2 -2
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +1 -1
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +1 -1
- package/src/bmm/workflows/3-solutioning/create-architecture/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +2 -2
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +2 -2
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +2 -2
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +2 -2
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +2 -2
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +2 -2
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +1 -1
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +1 -1
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +1 -1
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +1 -1
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +2 -2
- package/src/bmm/workflows/4-implementation/code-review/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/4-implementation/code-review/discover-inputs.md +88 -0
- package/src/bmm/workflows/4-implementation/code-review/workflow.md +271 -0
- package/src/bmm/workflows/4-implementation/correct-course/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/4-implementation/correct-course/checklist.md +1 -1
- package/src/bmm/workflows/4-implementation/correct-course/{instructions.md â workflow.md} +79 -12
- package/src/bmm/workflows/4-implementation/create-story/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/4-implementation/create-story/checklist.md +9 -10
- package/src/bmm/workflows/4-implementation/create-story/discover-inputs.md +88 -0
- package/src/bmm/workflows/4-implementation/create-story/workflow.md +388 -0
- package/src/bmm/workflows/4-implementation/dev-story/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/4-implementation/dev-story/{instructions.xml â workflow.md} +49 -2
- package/src/bmm/workflows/4-implementation/retrospective/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/4-implementation/retrospective/{instructions.md â workflow.md} +64 -23
- package/src/bmm/workflows/4-implementation/sprint-planning/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +1 -0
- package/src/bmm/workflows/4-implementation/sprint-planning/{instructions.md â workflow.md} +55 -10
- package/src/bmm/workflows/4-implementation/sprint-status/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/4-implementation/sprint-status/{instructions.md â workflow.md} +45 -8
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/SKILL.md +6 -0
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/bmad-skill-manifest.yaml +1 -0
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-01-clarify-and-route.md +54 -0
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-02-plan.md +39 -0
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-03-implement.md +35 -0
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-04-review.md +55 -0
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-05-present.md +19 -0
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/tech-spec-template.md +90 -0
- package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/workflow.md +84 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +8 -14
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +1 -1
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +4 -6
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +1 -1
- package/src/bmm/workflows/document-project/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/document-project/instructions.md +5 -7
- package/src/bmm/workflows/document-project/workflow.md +39 -0
- package/src/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -1
- package/src/bmm/workflows/document-project/workflows/deep-dive-workflow.md +42 -0
- package/src/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1
- package/src/bmm/workflows/document-project/workflows/full-scan-workflow.md +42 -0
- package/src/bmm/workflows/generate-project-context/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/generate-project-context/steps/step-02-generate.md +2 -2
- package/src/bmm/workflows/qa-generate-e2e-tests/bmad-skill-manifest.yaml +3 -0
- package/src/bmm/workflows/qa-generate-e2e-tests/checklist.md +1 -1
- package/src/bmm/workflows/qa-generate-e2e-tests/{instructions.md â workflow.md} +40 -7
- package/src/core/agents/bmad-master.agent.yaml +1 -1
- package/src/core/agents/bmad-skill-manifest.yaml +3 -0
- package/src/core/module-help.csv +3 -3
- package/src/core/module.yaml +1 -1
- package/src/core/tasks/bmad-help/SKILL.md +6 -0
- package/src/core/tasks/bmad-help/bmad-skill-manifest.yaml +1 -0
- package/src/core/tasks/{help.md â bmad-help/workflow.md} +6 -4
- package/src/core/tasks/bmad-review-adversarial-general/SKILL.md +6 -0
- package/src/core/tasks/bmad-review-adversarial-general/bmad-skill-manifest.yaml +1 -0
- package/src/core/tasks/bmad-review-adversarial-general/workflow.md +32 -0
- package/src/core/tasks/bmad-review-edge-case-hunter/SKILL.md +6 -0
- package/src/core/tasks/bmad-review-edge-case-hunter/bmad-skill-manifest.yaml +1 -0
- package/src/core/tasks/bmad-review-edge-case-hunter/workflow.md +62 -0
- package/src/core/tasks/bmad-skill-manifest.yaml +19 -0
- package/src/core/workflows/advanced-elicitation/bmad-skill-manifest.yaml +3 -0
- package/src/core/workflows/advanced-elicitation/workflow.md +138 -0
- package/src/core/workflows/brainstorming/bmad-skill-manifest.yaml +3 -0
- package/src/core/workflows/brainstorming/steps/step-03-technique-execution.md +1 -1
- package/src/core/workflows/brainstorming/workflow.md +1 -1
- package/src/core/workflows/party-mode/bmad-skill-manifest.yaml +3 -0
- package/src/utility/agent-components/activation-steps.txt +2 -2
- package/src/utility/agent-components/handler-multi.txt +1 -2
- package/test/adversarial-review-tests/README.md +3 -3
- package/test/adversarial-review-tests/test-cases.yaml +2 -2
- package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +1 -1
- package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +1 -1
- package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +1 -2
- package/test/fixtures/file-refs-csv/valid/bmm-style.csv +1 -1
- package/test/test-file-refs-csv.js +1 -1
- package/test/test-install-to-bmad.js +154 -0
- package/test/test-installation-components.js +1586 -2
- package/test/test-workflow-path-regex.js +88 -0
- package/tools/cli/installers/lib/core/installer.js +34 -1
- package/tools/cli/installers/lib/core/manifest-generator.js +328 -35
- package/tools/cli/installers/lib/ide/_base-ide.js +24 -15
- package/tools/cli/installers/lib/ide/_config-driven.js +472 -53
- package/tools/cli/installers/lib/ide/manager.js +23 -61
- package/tools/cli/installers/lib/ide/platform-codes.yaml +108 -30
- package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +1 -0
- package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +7 -0
- package/tools/cli/installers/lib/ide/shared/path-utils.js +68 -3
- package/tools/cli/installers/lib/ide/shared/skill-manifest.js +90 -0
- package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +2 -0
- package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +6 -145
- package/tools/cli/installers/lib/modules/manager.js +9 -132
- package/tools/cli/lib/agent/compiler.js +1 -10
- package/tools/cli/lib/agent-analyzer.js +2 -14
- package/tools/cli/lib/yaml-xml-builder.js +1 -18
- package/tools/docs/native-skills-migration-checklist.md +281 -0
- package/tools/platform-codes.yaml +1 -1
- package/tools/schema/agent.js +1 -3
- package/tools/validate-file-refs.js +2 -0
- package/website/astro.config.mjs +24 -3
- package/website/src/content/config.ts +2 -1
- package/website/src/content/i18n/zh-CN.json +28 -0
- package/src/bmm/workflows/4-implementation/code-review/instructions.xml +0 -227
- package/src/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -43
- package/src/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -53
- package/src/bmm/workflows/4-implementation/create-story/instructions.xml +0 -346
- package/src/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -52
- package/src/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -20
- package/src/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -52
- package/src/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -47
- package/src/bmm/workflows/4-implementation/sprint-status/workflow.yaml +0 -25
- package/src/bmm/workflows/document-project/workflow.yaml +0 -22
- package/src/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
- package/src/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
- package/src/bmm/workflows/qa-generate-e2e-tests/workflow.yaml +0 -42
- package/src/core/tasks/review-adversarial-general.xml +0 -49
- package/src/core/tasks/review-edge-case-hunter.xml +0 -63
- package/src/core/tasks/workflow.xml +0 -235
- package/src/core/workflows/advanced-elicitation/workflow.xml +0 -118
- package/src/utility/agent-components/handler-validate-workflow.txt +0 -7
- package/src/utility/agent-components/handler-workflow.txt +0 -10
- package/tools/cli/installers/lib/ide/codex.js +0 -440
- package/tools/cli/installers/lib/ide/github-copilot.js +0 -699
- package/tools/cli/installers/lib/ide/kilo.js +0 -269
- package/tools/cli/installers/lib/ide/rovodev.js +0 -257
- package/tools/cli/installers/lib/ide/templates/combined/default-workflow-yaml.md +0 -14
- package/tools/cli/installers/lib/ide/templates/combined/kiro-workflow-yaml.md +0 -15
- package/tools/cli/installers/lib/ide/templates/workflow-command-template.md +0 -13
- package/tools/cli/installers/lib/ide/templates/workflow-commander.md +0 -5
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
# Native Skills Migration Checklist
|
|
2
|
+
|
|
3
|
+
Branch: `refactor/all-is-skills`
|
|
4
|
+
|
|
5
|
+
Scope: migrate the BMAD-supported platforms that fully support the Agent Skills standard from legacy installer outputs to native skills output.
|
|
6
|
+
|
|
7
|
+
Current branch status:
|
|
8
|
+
|
|
9
|
+
- `Claude Code` has already been moved to `.claude/skills`
|
|
10
|
+
- `Codex CLI` has already been moved to `.agents/skills`
|
|
11
|
+
|
|
12
|
+
This checklist now includes those completed platforms plus the remaining full-support platforms.
|
|
13
|
+
|
|
14
|
+
## Claude Code
|
|
15
|
+
|
|
16
|
+
Support assumption: full Agent Skills support. BMAD has already migrated from `.claude/commands` to `.claude/skills`.
|
|
17
|
+
|
|
18
|
+
**Install:** `npm install -g @anthropic-ai/claude-code` or `brew install claude-code`
|
|
19
|
+
|
|
20
|
+
- [x] Confirm current implementation still matches Claude Code skills expectations
|
|
21
|
+
- [x] Confirm legacy cleanup for `.claude/commands`
|
|
22
|
+
- [x] Test fresh install
|
|
23
|
+
- [x] Test reinstall/upgrade from legacy command output
|
|
24
|
+
- [x] Confirm ancestor conflict protection because Claude Code inherits skills from parent directories and `ancestor_conflict_check: true` is set in platform-codes.yaml
|
|
25
|
+
- [x] Implement/extend automated tests as needed
|
|
26
|
+
|
|
27
|
+
## Codex CLI
|
|
28
|
+
|
|
29
|
+
Support assumption: full Agent Skills support. BMAD has already migrated from `.codex/prompts` to `.agents/skills`.
|
|
30
|
+
|
|
31
|
+
**Install:** `npm install -g @openai/codex`
|
|
32
|
+
|
|
33
|
+
- [x] Confirm current implementation still matches Codex CLI skills expectations
|
|
34
|
+
- [x] Confirm legacy cleanup for project and global `.codex/prompts`
|
|
35
|
+
- [x] Test fresh install
|
|
36
|
+
- [x] Test reinstall/upgrade from legacy prompt output
|
|
37
|
+
- [x] Confirm ancestor conflict protection because Codex inherits parent-directory `.agents/skills`
|
|
38
|
+
- [x] Implement/extend automated tests as needed
|
|
39
|
+
|
|
40
|
+
## Cursor
|
|
41
|
+
|
|
42
|
+
Support assumption: full Agent Skills support. BMAD currently installs legacy command files to `.cursor/commands`; target should move to a native skills directory.
|
|
43
|
+
|
|
44
|
+
- [x] Confirm current Cursor skills path and that BMAD should target `.cursor/skills`
|
|
45
|
+
- [x] Implement installer migration to native skills output
|
|
46
|
+
- [x] Add legacy cleanup for `.cursor/commands`
|
|
47
|
+
- [x] Test fresh install
|
|
48
|
+
- [x] Test reinstall/upgrade from legacy command output
|
|
49
|
+
- [x] Confirm no ancestor conflict protection is needed because a child workspace surfaced child `.cursor/skills` entries but not a parent-only skill during manual verification
|
|
50
|
+
- [x] Implement/extend automated tests
|
|
51
|
+
- [x] Commit
|
|
52
|
+
|
|
53
|
+
## Windsurf
|
|
54
|
+
|
|
55
|
+
Support assumption: full Agent Skills support. Windsurf docs confirm workspace skills at `.windsurf/skills` and global skills at `~/.codeium/windsurf/skills`. BMAD has now migrated from `.windsurf/workflows` to `.windsurf/skills`. Manual verification also confirmed that Windsurf custom skills are triggered via `@skill-name`, not slash commands.
|
|
56
|
+
|
|
57
|
+
- [x] Confirm Windsurf native skills directory as `.windsurf/skills`
|
|
58
|
+
- [x] Implement installer migration to native skills output
|
|
59
|
+
- [x] Add legacy cleanup for `.windsurf/workflows`
|
|
60
|
+
- [x] Test fresh install
|
|
61
|
+
- [x] Test reinstall/upgrade from legacy workflow output
|
|
62
|
+
- [x] Confirm no ancestor conflict protection is needed because manual Windsurf verification showed child-local `@` skills loaded while a parent-only skill was not inherited
|
|
63
|
+
- [x] Implement/extend automated tests
|
|
64
|
+
|
|
65
|
+
## Cline
|
|
66
|
+
|
|
67
|
+
Support assumption: full Agent Skills support. Cline docs confirm workspace skills at `.cline/skills/<skill-name>/SKILL.md` and global skills at `~/.cline/skills/`. BMAD has now migrated from `.clinerules/workflows` to `.cline/skills`.
|
|
68
|
+
|
|
69
|
+
**Install:** VS Code extension `saoudrizwan.claude-dev` â search "Cline" in Extensions or `code --install-extension saoudrizwan.claude-dev`
|
|
70
|
+
|
|
71
|
+
- [x] Confirm current Cline skills path is `.cline/skills/{skill-name}/SKILL.md` with YAML frontmatter (name + description)
|
|
72
|
+
- [x] Implement installer migration to native skills output
|
|
73
|
+
- [x] Add legacy cleanup for `.clinerules/workflows`
|
|
74
|
+
- [x] Test fresh install â 43 skills installed to `.cline/skills/`
|
|
75
|
+
- [x] Test reinstall/upgrade from legacy workflow output
|
|
76
|
+
- [x] Confirm no ancestor conflict protection is needed because Cline only scans workspace-local `.cline/skills/` and global `~/.cline/skills/`, with no ancestor directory inheritance
|
|
77
|
+
- [x] Implement/extend automated tests â 9 assertions in test suite 18
|
|
78
|
+
- [x] Commit
|
|
79
|
+
|
|
80
|
+
## Google Antigravity
|
|
81
|
+
|
|
82
|
+
Support assumption: full Agent Skills support. Antigravity docs confirm workspace skills at `.agent/skills/<skill-folder>/` and global skills at `~/.gemini/antigravity/skills/<skill-folder>/`. BMAD has now migrated from `.agent/workflows` to `.agent/skills`.
|
|
83
|
+
|
|
84
|
+
- [x] Confirm Antigravity native skills path and project/global precedence
|
|
85
|
+
- [x] Implement installer migration to native skills output
|
|
86
|
+
- [x] Add legacy cleanup for `.agent/workflows`
|
|
87
|
+
- [x] Test fresh install
|
|
88
|
+
- [x] Test reinstall/upgrade from legacy workflow output
|
|
89
|
+
- [x] Confirm no ancestor conflict protection is needed because manual Antigravity verification in `/tmp/antigravity-ancestor-repro/parent/child` showed only the child-local `child-only` skill, with no inherited parent `.agent/skills` entry
|
|
90
|
+
- [x] Implement/extend automated tests
|
|
91
|
+
|
|
92
|
+
## Auggie
|
|
93
|
+
|
|
94
|
+
Support assumption: full Agent Skills support. BMAD currently installs commands to `.augment/commands`; target should move to `.augment/skills`.
|
|
95
|
+
|
|
96
|
+
- [x] Confirm Auggie native skills path and compatibility loading from `.claude/skills` and `.agents/skills` via Augment docs plus local `auggie --print` repros
|
|
97
|
+
- [x] Implement installer migration to native skills output
|
|
98
|
+
- [x] Add legacy cleanup for `.augment/commands`
|
|
99
|
+
- [x] Test fresh install
|
|
100
|
+
- [x] Test reinstall/upgrade from legacy command output
|
|
101
|
+
- [x] Confirm no ancestor conflict protection is needed because local `auggie --workspace-root` repro showed child-local `.augment/skills` loading `child-only` but not parent `parent-only`
|
|
102
|
+
- [x] Implement/extend automated tests
|
|
103
|
+
- [x] Commit
|
|
104
|
+
|
|
105
|
+
## CodeBuddy
|
|
106
|
+
|
|
107
|
+
Support assumption: full Agent Skills support. CodeBuddy docs confirm workspace skills at `.codebuddy/skills/<skill-name>/SKILL.md` and global skills at `~/.codebuddy/commands/`. BMAD has now migrated from `.codebuddy/commands` to `.codebuddy/skills`.
|
|
108
|
+
|
|
109
|
+
**Install:** Download [Tencent CodeBuddy IDE](https://codebuddyide.net/) or install as VS Code extension `CodebuddyAI.codebuddy-ai`
|
|
110
|
+
|
|
111
|
+
- [x] Confirm CodeBuddy native skills path is `.codebuddy/skills/{skill-name}/SKILL.md` with YAML frontmatter (name + description) â per docs, not IDE-verified
|
|
112
|
+
- [x] Implement installer migration to native skills output
|
|
113
|
+
- [x] Add legacy cleanup for `.codebuddy/commands`
|
|
114
|
+
- [x] Test fresh install â 43 skills installed to `.codebuddy/skills/` (installer output only)
|
|
115
|
+
- [x] Test reinstall/upgrade from legacy command output
|
|
116
|
+
- [ ] **NEEDS MANUAL IDE VERIFICATION** â requires Tencent Cloud account; confirm skills appear in UI and test ancestor inheritance
|
|
117
|
+
- [x] Implement/extend automated tests â 9 assertions in test suite 19
|
|
118
|
+
- [x] Commit
|
|
119
|
+
|
|
120
|
+
## Crush
|
|
121
|
+
|
|
122
|
+
Support assumption: full Agent Skills support. Crush scans project-local `.crush/skills/` exclusively ([GitHub issue #2072](https://github.com/charmbracelet/crush/issues/2072) confirms this and requests adding `~/.agents/skills/`). BMAD has now migrated from `.crush/commands` to `.crush/skills`.
|
|
123
|
+
|
|
124
|
+
**Install:** `brew install charmbracelet/tap/crush` (macOS/Linux) or `winget install charmbracelet.crush` (Windows)
|
|
125
|
+
|
|
126
|
+
- [x] Confirm Crush project-local skills path is `.crush/skills/{skill-name}/SKILL.md` â per GitHub issue #2072 confirming `.crush/skills/` is the only scan path
|
|
127
|
+
- [x] Implement installer migration to native skills output
|
|
128
|
+
- [x] Add legacy cleanup for `.crush/commands`
|
|
129
|
+
- [x] Test fresh install â 43 skills installed to `.crush/skills/`
|
|
130
|
+
- [x] Test reinstall/upgrade from legacy command output
|
|
131
|
+
- [x] Confirm no ancestor conflict protection is needed because Crush only scans project-local `.crush/skills/`, no ancestor inheritance
|
|
132
|
+
- [x] Manual CLI verification â `crush run` lists all 10 skills and successfully triggers bmad-help
|
|
133
|
+
- [x] Implement/extend automated tests â 9 assertions in test suite 20
|
|
134
|
+
- [x] Commit
|
|
135
|
+
|
|
136
|
+
## Kiro
|
|
137
|
+
|
|
138
|
+
Support assumption: full Agent Skills support. Kiro docs confirm project skills at `.kiro/skills/<skill-name>/SKILL.md` and describe steering as a separate rules mechanism, not a required compatibility layer. BMAD has now migrated from `.kiro/steering` to `.kiro/skills`. Manual app verification also confirmed that Kiro can surface skills in Slash when the relevant UI setting is enabled, and that it does not inherit ancestor `.kiro/skills` directories.
|
|
139
|
+
|
|
140
|
+
- [x] Confirm Kiro skills path and verify BMAD should stop writing steering artifacts for this migration
|
|
141
|
+
- [x] Implement installer migration to native skills output
|
|
142
|
+
- [x] Add legacy cleanup for `.kiro/steering`
|
|
143
|
+
- [x] Test fresh install
|
|
144
|
+
- [x] Test reinstall/upgrade from legacy steering output
|
|
145
|
+
- [x] Confirm no ancestor conflict protection is needed because manual Kiro verification showed Slash-visible skills from the current workspace only, with no ancestor `.kiro/skills` inheritance
|
|
146
|
+
- [x] Implement/extend automated tests
|
|
147
|
+
|
|
148
|
+
## OpenCode
|
|
149
|
+
|
|
150
|
+
Support assumption: full Agent Skills support. BMAD currently splits output between `.opencode/agents` and `.opencode/commands`; target should consolidate to `.opencode/skills`.
|
|
151
|
+
|
|
152
|
+
- [x] Confirm OpenCode native skills path and compatibility loading from `.claude/skills` and `.agents/skills` in OpenCode docs and with local `opencode run` repros
|
|
153
|
+
- [x] Implement installer migration from multi-target legacy output to single native skills target
|
|
154
|
+
- [x] Add legacy cleanup for `.opencode/agents`, `.opencode/commands`, `.opencode/agent`, and `.opencode/command`
|
|
155
|
+
- [x] Test fresh install
|
|
156
|
+
- [x] Test reinstall/upgrade from split legacy output
|
|
157
|
+
- [x] Confirm ancestor conflict protection is required because local `opencode run` repros loaded both child-local `child-only` and ancestor `parent-only`, matching the docs that project-local skill discovery walks upward to the git worktree
|
|
158
|
+
- [x] Implement/extend automated tests
|
|
159
|
+
- [x] Commit
|
|
160
|
+
|
|
161
|
+
## Roo Code
|
|
162
|
+
|
|
163
|
+
Support assumption: full Agent Skills support. BMAD currently installs commands to `.roo/commands`; target should move to `.roo/skills` or the correct mode-aware skill directories.
|
|
164
|
+
|
|
165
|
+
**Install:** VS Code extension `RooVeterinaryInc.roo-cline` â search "Roo Code" in Extensions or `code --install-extension RooVeterinaryInc.roo-cline`
|
|
166
|
+
|
|
167
|
+
- [x] Confirm Roo native skills path is `.roo/skills/{skill-name}/SKILL.md` with `name` frontmatter matching directory exactly (lowercase, alphanumeric + hyphens only)
|
|
168
|
+
- [x] Implement installer migration to native skills output
|
|
169
|
+
- [x] Add legacy cleanup for `.roo/commands`
|
|
170
|
+
- [x] Test fresh install â 43 skills installed, verified in Roo Code v3.51
|
|
171
|
+
- [x] Test reinstall/upgrade from legacy command output
|
|
172
|
+
- [x] Confirm no ancestor conflict protection is needed because manual Roo Code v3.51 verification showed child-local `child-only` skill loaded while parent-only skill was not inherited
|
|
173
|
+
- [x] Implement/extend automated tests â 7 assertions in test suite 13
|
|
174
|
+
- [x] Commit
|
|
175
|
+
|
|
176
|
+
## Trae
|
|
177
|
+
|
|
178
|
+
Support assumption: full Agent Skills support. [Trae docs](https://docs.trae.ai/ide/skills) confirm workspace skills at `.trae/skills/<skill-name>/SKILL.md`. BMAD has now migrated from `.trae/rules` to `.trae/skills`.
|
|
179
|
+
|
|
180
|
+
**Install:** Download [standalone IDE](https://www.trae.ai/download) (macOS/Windows/Linux) or `winget install -e --id ByteDance.Trae`
|
|
181
|
+
|
|
182
|
+
- [x] Confirm Trae native skills path is `.trae/skills/{skill-name}/SKILL.md` â per official docs
|
|
183
|
+
- [x] Implement installer migration to native skills output
|
|
184
|
+
- [x] Add legacy cleanup for `.trae/rules`
|
|
185
|
+
- [x] Test fresh install â 43 skills installed to `.trae/skills/`
|
|
186
|
+
- [x] Test reinstall/upgrade from legacy rules output
|
|
187
|
+
- [x] Confirm no ancestor conflict protection is needed â Trae docs describe project-local `.trae/skills/` only
|
|
188
|
+
- [ ] **NEEDS MANUAL IDE VERIFICATION** â download Trae IDE and confirm skills appear in UI
|
|
189
|
+
- [x] Implement/extend automated tests â 9 assertions in test suite 21
|
|
190
|
+
- [x] Commit
|
|
191
|
+
|
|
192
|
+
## GitHub Copilot
|
|
193
|
+
|
|
194
|
+
Support assumption: full Agent Skills support. BMAD currently uses a custom installer that generates `.github/agents`, `.github/prompts`, and `.github/copilot-instructions.md`; target should move to `.github/skills`.
|
|
195
|
+
|
|
196
|
+
**Install:** VS Code extension `GitHub.copilot` â search "GitHub Copilot" in Extensions or `code --install-extension GitHub.copilot`
|
|
197
|
+
|
|
198
|
+
- [x] Confirm GitHub Copilot native skills path is `.github/skills/{skill-name}/SKILL.md` â also reads `.claude/skills/` automatically
|
|
199
|
+
- [x] Design the migration away from the custom prompt/agent installer model â replaced 699-line custom installer with config-driven `skill_format: true`
|
|
200
|
+
- [x] Implement native skills output, ideally with shared config-driven code where practical
|
|
201
|
+
- [x] Add legacy cleanup for `.github/agents`, `.github/prompts`, and BMAD markers in `copilot-instructions.md`
|
|
202
|
+
- [x] Test fresh install â 43 skills installed to `.github/skills/`
|
|
203
|
+
- [x] Test reinstall/upgrade from legacy custom installer output â legacy dirs removed, BMAD markers stripped, user content preserved
|
|
204
|
+
- [x] Confirm no ancestor conflict protection is needed because manual Copilot verification showed child-local `child-only` skill loaded while parent-only skill was not inherited
|
|
205
|
+
- [x] Implement/extend automated tests â 11 assertions in test suite 17 including marker cleanup
|
|
206
|
+
- [x] Commit
|
|
207
|
+
|
|
208
|
+
## KiloCoder â SUSPENDED
|
|
209
|
+
|
|
210
|
+
**Status: Kilo Code does not support the Agent Skills standard.** The original migration assumed skills support because Kilo forked from Roo Code, but manual IDE verification confirmed Kilo has not merged that feature. BMAD support is paused until Kilo implements skills.
|
|
211
|
+
|
|
212
|
+
**Install:** VS Code extension `kilocode.kilo-code` â search "Kilo Code" in Extensions or `code --install-extension kilocode.kilo-code`
|
|
213
|
+
|
|
214
|
+
- [x] ~~Confirm KiloCoder native skills path~~ â **FALSE**: assumed from Roo Code fork, not verified. Manual testing showed no skills support in the IDE
|
|
215
|
+
- [x] Config and installer code retained in platform-codes.yaml with `suspended` flag â hidden from IDE picker, setup blocked with explanation
|
|
216
|
+
- [x] Installer fails early (before writing `_bmad/`) if Kilo is the only selected IDE, protecting existing installations
|
|
217
|
+
- [x] Legacy cleanup still runs for `.kilocode/workflows` and `.kilocodemodes` when users switch to a different IDE
|
|
218
|
+
- [x] Automated tests â 7 assertions in suite 22 (suspended config, hidden from picker, setup blocked, no files written, legacy cleanup)
|
|
219
|
+
|
|
220
|
+
## Gemini CLI
|
|
221
|
+
|
|
222
|
+
Support assumption: full Agent Skills support. Gemini CLI docs confirm workspace skills at `.gemini/skills/` and user skills at `~/.gemini/skills/`. Also discovers `.agents/skills/` as an alias. BMAD previously installed TOML files to `.gemini/commands`.
|
|
223
|
+
|
|
224
|
+
**Install:** `npm install -g @google/gemini-cli` or see [geminicli.com](https://geminicli.com)
|
|
225
|
+
|
|
226
|
+
- [x] Confirm Gemini CLI native skills path is `.gemini/skills/{skill-name}/SKILL.md` (per [geminicli.com/docs/cli/skills](https://geminicli.com/docs/cli/skills/))
|
|
227
|
+
- [x] Implement native skills output â target_dir `.gemini/skills`, skill_format true, template_type default (replaces TOML templates)
|
|
228
|
+
- [x] Add legacy cleanup for `.gemini/commands` (via `legacy_targets`)
|
|
229
|
+
- [x] Test fresh install â skills written to `.gemini/skills/bmad-master/SKILL.md` with correct frontmatter
|
|
230
|
+
- [x] Test reinstall/upgrade from legacy TOML command output â legacy dir removed, skills installed
|
|
231
|
+
- [x] Confirm no ancestor conflict protection is needed â Gemini CLI uses workspace > user > extension precedence, no ancestor directory inheritance
|
|
232
|
+
- [x] Implement/extend automated tests â 9 assertions in test suite 23 (config, fresh install, legacy cleanup, reinstall)
|
|
233
|
+
- [x] Manual CLI verification â `gemini` lists all 10 skills and successfully triggers bmad-help
|
|
234
|
+
- [ ] Commit
|
|
235
|
+
|
|
236
|
+
## iFlow
|
|
237
|
+
|
|
238
|
+
Support assumption: full Agent Skills support. iFlow docs confirm workspace skills at `.iflow/skills/` and global skills at `~/.iflow/skills/`. BMAD previously installed flat files to `.iflow/commands`.
|
|
239
|
+
|
|
240
|
+
- [x] Confirm iFlow native skills path is `.iflow/skills/{skill-name}/SKILL.md`
|
|
241
|
+
- [x] Implement native skills output â target_dir `.iflow/skills`, skill_format true, template_type default
|
|
242
|
+
- [x] Add legacy cleanup for `.iflow/commands` (via `legacy_targets`)
|
|
243
|
+
- [x] Test fresh install â skills written to `.iflow/skills/bmad-master/SKILL.md`
|
|
244
|
+
- [x] Test legacy cleanup â legacy commands dir removed
|
|
245
|
+
- [x] Implement/extend automated tests â 6 assertions in test suite 24
|
|
246
|
+
- [ ] **NEEDS MANUAL IDE VERIFICATION** â install iFlow and confirm skills appear in UI and can be triggered
|
|
247
|
+
- [ ] Commit
|
|
248
|
+
|
|
249
|
+
## QwenCoder
|
|
250
|
+
|
|
251
|
+
Support assumption: full Agent Skills support. Qwen Code supports workspace skills at `.qwen/skills/` and global skills at `~/.qwen/skills/`. BMAD previously installed flat files to `.qwen/commands`.
|
|
252
|
+
|
|
253
|
+
- [x] Confirm QwenCoder native skills path is `.qwen/skills/{skill-name}/SKILL.md`
|
|
254
|
+
- [x] Implement native skills output â target_dir `.qwen/skills`, skill_format true, template_type default
|
|
255
|
+
- [x] Add legacy cleanup for `.qwen/commands` (via `legacy_targets`)
|
|
256
|
+
- [x] Test fresh install â skills written to `.qwen/skills/bmad-master/SKILL.md`
|
|
257
|
+
- [x] Test legacy cleanup â legacy commands dir removed
|
|
258
|
+
- [x] Implement/extend automated tests â 6 assertions in test suite 25
|
|
259
|
+
- [ ] **NEEDS MANUAL IDE VERIFICATION** â install QwenCoder and confirm skills appear in UI and can be triggered
|
|
260
|
+
- [ ] Commit
|
|
261
|
+
|
|
262
|
+
## Rovo Dev
|
|
263
|
+
|
|
264
|
+
Support assumption: full Agent Skills support. Rovo Dev now supports workspace skills at `.rovodev/skills/` and user skills at `~/.rovodev/skills/`. BMAD previously used a custom 257-line installer that wrote `.rovodev/workflows/` and `prompts.yml`.
|
|
265
|
+
|
|
266
|
+
- [x] Confirm Rovo Dev native skills path is `.rovodev/skills/{skill-name}/SKILL.md` (per Atlassian blog)
|
|
267
|
+
- [x] Replace 257-line custom `rovodev.js` with config-driven entry in `platform-codes.yaml`
|
|
268
|
+
- [x] Add legacy cleanup for `.rovodev/workflows` (via `legacy_targets`) and BMAD entries in `prompts.yml` (via `cleanupRovoDevPrompts()` in `_config-driven.js`)
|
|
269
|
+
- [x] Test fresh install â skills written to `.rovodev/skills/bmad-master/SKILL.md`
|
|
270
|
+
- [x] Test legacy cleanup â legacy workflows dir removed, `prompts.yml` BMAD entries stripped while preserving user entries
|
|
271
|
+
- [x] Implement/extend automated tests â 8 assertions in test suite 26
|
|
272
|
+
- [ ] **NEEDS MANUAL IDE VERIFICATION** â install Rovo Dev and confirm skills appear in UI and can be triggered
|
|
273
|
+
- [ ] Commit
|
|
274
|
+
|
|
275
|
+
## Summary Gates
|
|
276
|
+
|
|
277
|
+
- [x] All full-support BMAD platforms install `SKILL.md` directory-based output
|
|
278
|
+
- [x] No full-support platform still emits BMAD command/workflow/rule files as its primary install format
|
|
279
|
+
- [x] Legacy cleanup paths are defined for every migrated platform
|
|
280
|
+
- [x] Automated coverage exists for config-driven and custom-installer migrations
|
|
281
|
+
- [ ] Installer docs and migration notes updated after code changes land
|
package/tools/schema/agent.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
const assert = require('node:assert');
|
|
3
3
|
const { z } = require('zod');
|
|
4
4
|
|
|
5
|
-
const COMMAND_TARGET_KEYS = ['
|
|
5
|
+
const COMMAND_TARGET_KEYS = ['validate-workflow', 'exec', 'action', 'tmpl', 'data'];
|
|
6
6
|
const TRIGGER_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
|
|
7
7
|
const COMPOUND_TRIGGER_PATTERN = /^([A-Z]{1,3}) or fuzzy match on ([a-z0-9]+(?:-[a-z0-9]+)*)$/;
|
|
8
8
|
|
|
@@ -273,8 +273,6 @@ function buildMenuItemSchema() {
|
|
|
273
273
|
.object({
|
|
274
274
|
trigger: createNonEmptyString('agent.menu[].trigger'),
|
|
275
275
|
description: createNonEmptyString('agent.menu[].description'),
|
|
276
|
-
workflow: createNonEmptyString('agent.menu[].workflow').optional(),
|
|
277
|
-
'workflow-install': createNonEmptyString('agent.menu[].workflow-install').optional(),
|
|
278
276
|
'validate-workflow': createNonEmptyString('agent.menu[].validate-workflow').optional(),
|
|
279
277
|
exec: createNonEmptyString('agent.menu[].exec').optional(),
|
|
280
278
|
action: createNonEmptyString('agent.menu[].action').optional(),
|
|
@@ -324,6 +324,8 @@ function extractCsvRefs(filePath, content) {
|
|
|
324
324
|
const raw = record['workflow-file'];
|
|
325
325
|
if (!raw || raw.trim() === '') continue;
|
|
326
326
|
if (!isResolvable(raw)) continue;
|
|
327
|
+
// skill: prefixed references are resolved by the IDE/CLI, not as file paths
|
|
328
|
+
if (raw.startsWith('skill:')) continue;
|
|
327
329
|
|
|
328
330
|
// Line = header (1) + data row index (0-based) + 1
|
|
329
331
|
const line = i + 2;
|
package/website/astro.config.mjs
CHANGED
|
@@ -36,11 +36,28 @@ export default defineConfig({
|
|
|
36
36
|
},
|
|
37
37
|
|
|
38
38
|
integrations: [
|
|
39
|
-
|
|
39
|
+
// Exclude custom 404 pages (all locales) from the sitemap â they are
|
|
40
|
+
// treated as normal content docs by Starlight even with disable404Route.
|
|
41
|
+
sitemap({
|
|
42
|
+
filter: (page) => !/\/404(\/|$)/.test(new URL(page).pathname),
|
|
43
|
+
}),
|
|
40
44
|
starlight({
|
|
41
45
|
title: 'BMAD Method',
|
|
42
46
|
tagline: 'AI-driven agile development with specialized agents and workflows that scale from bug fixes to enterprise platforms.',
|
|
43
47
|
|
|
48
|
+
// i18n: English as root (no URL prefix), Chinese at /zh-cn/
|
|
49
|
+
defaultLocale: 'root',
|
|
50
|
+
locales: {
|
|
51
|
+
root: {
|
|
52
|
+
label: 'English',
|
|
53
|
+
lang: 'en',
|
|
54
|
+
},
|
|
55
|
+
'zh-cn': {
|
|
56
|
+
label: 'įŽäŊ䏿',
|
|
57
|
+
lang: 'zh-CN',
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
|
|
44
61
|
logo: {
|
|
45
62
|
light: './public/img/bmad-light.png',
|
|
46
63
|
dark: './public/img/bmad-dark.png',
|
|
@@ -89,25 +106,29 @@ export default defineConfig({
|
|
|
89
106
|
|
|
90
107
|
// Sidebar configuration (Diataxis structure)
|
|
91
108
|
sidebar: [
|
|
92
|
-
{ label: 'Welcome', slug: 'index' },
|
|
93
|
-
{ label: 'Roadmap', slug: 'roadmap' },
|
|
109
|
+
{ label: 'Welcome', translations: { 'zh-CN': 'æŦĸčŋ' }, slug: 'index' },
|
|
110
|
+
{ label: 'Roadmap', translations: { 'zh-CN': '莝įēŋåž' }, slug: 'roadmap' },
|
|
94
111
|
{
|
|
95
112
|
label: 'Tutorials',
|
|
113
|
+
translations: { 'zh-CN': 'æį¨' },
|
|
96
114
|
collapsed: false,
|
|
97
115
|
autogenerate: { directory: 'tutorials' },
|
|
98
116
|
},
|
|
99
117
|
{
|
|
100
118
|
label: 'How-To Guides',
|
|
119
|
+
translations: { 'zh-CN': 'æäŊæå' },
|
|
101
120
|
collapsed: true,
|
|
102
121
|
autogenerate: { directory: 'how-to' },
|
|
103
122
|
},
|
|
104
123
|
{
|
|
105
124
|
label: 'Explanation',
|
|
125
|
+
translations: { 'zh-CN': 'æĻåŋĩ蝴æ' },
|
|
106
126
|
collapsed: true,
|
|
107
127
|
autogenerate: { directory: 'explanation' },
|
|
108
128
|
},
|
|
109
129
|
{
|
|
110
130
|
label: 'Reference',
|
|
131
|
+
translations: { 'zh-CN': 'åč' },
|
|
111
132
|
collapsed: true,
|
|
112
133
|
autogenerate: { directory: 'reference' },
|
|
113
134
|
},
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { defineCollection } from 'astro:content';
|
|
2
|
-
import { docsSchema } from '@astrojs/starlight/schema';
|
|
2
|
+
import { docsSchema, i18nSchema } from '@astrojs/starlight/schema';
|
|
3
3
|
|
|
4
4
|
export const collections = {
|
|
5
5
|
docs: defineCollection({ schema: docsSchema() }),
|
|
6
|
+
i18n: defineCollection({ type: 'data', schema: i18nSchema() }),
|
|
6
7
|
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"skipLink.label": "莺čŊŦå°å
厚",
|
|
3
|
+
"search.label": "æį´ĸ",
|
|
4
|
+
"search.ctrlKey": "Ctrl",
|
|
5
|
+
"search.cancelLabel": "åæļ",
|
|
6
|
+
"themeSelect.accessibleLabel": "éæŠä¸ģéĸ",
|
|
7
|
+
"themeSelect.dark": "æˇąč˛",
|
|
8
|
+
"themeSelect.light": "æĩ
č˛",
|
|
9
|
+
"themeSelect.auto": "čĒå¨",
|
|
10
|
+
"languageSelect.accessibleLabel": "éæŠč¯č¨",
|
|
11
|
+
"menuButton.accessibleLabel": "čå",
|
|
12
|
+
"sidebarNav.accessibleLabel": "ä¸ģå¯ŧčĒ",
|
|
13
|
+
"tableOfContents.onThisPage": "æŦéĄĩå
厚",
|
|
14
|
+
"tableOfContents.overview": "æĻčŋ°",
|
|
15
|
+
"i18n.untranslatedContent": "æ¤å
åŽšå°æĒæäžä¸æįŋģč¯ã",
|
|
16
|
+
"page.editLink": "įŧčžéĄĩéĸ",
|
|
17
|
+
"page.lastUpdated": "æåæ´æ°īŧ",
|
|
18
|
+
"page.previousLink": "ä¸ä¸éĄĩ",
|
|
19
|
+
"page.nextLink": "ä¸ä¸éĄĩ",
|
|
20
|
+
"page.draft": "æ¤å
厚ä¸ēčį¨ŋīŧä¸äŧå
åĢ卿ŖåŧįæŦä¸ã",
|
|
21
|
+
"404.text": "éĄĩéĸæĒæžå°ãč¯ˇæŖæĨ URL æå°č¯äŊŋ፿į´ĸã",
|
|
22
|
+
"aside.note": "æŗ¨æ",
|
|
23
|
+
"aside.tip": "æį¤ē",
|
|
24
|
+
"aside.caution": "čĻå",
|
|
25
|
+
"aside.danger": "åąéŠ",
|
|
26
|
+
"fileTree.directory": "įŽåŊ",
|
|
27
|
+
"builtWithStarlight.label": "äŊŋ፠Starlight æåģē"
|
|
28
|
+
}
|
|
@@ -1,227 +0,0 @@
|
|
|
1
|
-
<workflow>
|
|
2
|
-
<critical>The workflow execution engine is governed by: {project-root}/_bmad/core/tasks/workflow.xml</critical>
|
|
3
|
-
<critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
|
|
4
|
-
<critical>Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level}</critical>
|
|
5
|
-
<critical>Generate all documents in {document_output_language}</critical>
|
|
6
|
-
|
|
7
|
-
<critical>đĨ YOU ARE AN ADVERSARIAL CODE REVIEWER - Find what's wrong or missing! đĨ</critical>
|
|
8
|
-
<critical>Your purpose: Validate story file claims against actual implementation</critical>
|
|
9
|
-
<critical>Challenge everything: Are tasks marked [x] actually done? Are ACs really implemented?</critical>
|
|
10
|
-
<critical>Find 3-10 specific issues in every review minimum - no lazy "looks good" reviews - YOU are so much better than the dev agent
|
|
11
|
-
that wrote this slop</critical>
|
|
12
|
-
<critical>Read EVERY file in the File List - verify implementation against story requirements</critical>
|
|
13
|
-
<critical>Tasks marked complete but not done = CRITICAL finding</critical>
|
|
14
|
-
<critical>Acceptance Criteria not implemented = HIGH severity finding</critical>
|
|
15
|
-
<critical>Do not review files that are not part of the application's source code. Always exclude the _bmad/ and _bmad-output/ folders from the review. Always exclude IDE and CLI configuration folders like .cursor/ and .windsurf/ and .claude/</critical>
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
<step n="1" goal="Load story and discover changes">
|
|
19
|
-
<action>Use provided {{story_path}} or ask user which story file to review</action>
|
|
20
|
-
<action>Read COMPLETE story file</action>
|
|
21
|
-
<action>Set {{story_key}} = extracted key from filename (e.g., "1-2-user-authentication.md" â "1-2-user-authentication") or story
|
|
22
|
-
metadata</action>
|
|
23
|
-
<action>Parse sections: Story, Acceptance Criteria, Tasks/Subtasks, Dev Agent Record â File List, Change Log</action>
|
|
24
|
-
|
|
25
|
-
<!-- Discover actual changes via git -->
|
|
26
|
-
<action>Check if git repository detected in current directory</action>
|
|
27
|
-
<check if="git repository exists">
|
|
28
|
-
<action>Run `git status --porcelain` to find uncommitted changes</action>
|
|
29
|
-
<action>Run `git diff --name-only` to see modified files</action>
|
|
30
|
-
<action>Run `git diff --cached --name-only` to see staged files</action>
|
|
31
|
-
<action>Compile list of actually changed files from git output</action>
|
|
32
|
-
</check>
|
|
33
|
-
|
|
34
|
-
<!-- Cross-reference story File List vs git reality -->
|
|
35
|
-
<action>Compare story's Dev Agent Record â File List with actual git changes</action>
|
|
36
|
-
<action>Note discrepancies:
|
|
37
|
-
- Files in git but not in story File List
|
|
38
|
-
- Files in story File List but no git changes
|
|
39
|
-
- Missing documentation of what was actually changed
|
|
40
|
-
</action>
|
|
41
|
-
|
|
42
|
-
<invoke-protocol name="discover_inputs" />
|
|
43
|
-
<action>Load {project_context} for coding standards (if exists)</action>
|
|
44
|
-
</step>
|
|
45
|
-
|
|
46
|
-
<step n="2" goal="Build review attack plan">
|
|
47
|
-
<action>Extract ALL Acceptance Criteria from story</action>
|
|
48
|
-
<action>Extract ALL Tasks/Subtasks with completion status ([x] vs [ ])</action>
|
|
49
|
-
<action>From Dev Agent Record â File List, compile list of claimed changes</action>
|
|
50
|
-
|
|
51
|
-
<action>Create review plan:
|
|
52
|
-
1. **AC Validation**: Verify each AC is actually implemented
|
|
53
|
-
2. **Task Audit**: Verify each [x] task is really done
|
|
54
|
-
3. **Code Quality**: Security, performance, maintainability
|
|
55
|
-
4. **Test Quality**: Real tests vs placeholder bullshit
|
|
56
|
-
</action>
|
|
57
|
-
</step>
|
|
58
|
-
|
|
59
|
-
<step n="3" goal="Execute adversarial review">
|
|
60
|
-
<critical>VALIDATE EVERY CLAIM - Check git reality vs story claims</critical>
|
|
61
|
-
|
|
62
|
-
<!-- Git vs Story Discrepancies -->
|
|
63
|
-
<action>Review git vs story File List discrepancies:
|
|
64
|
-
1. **Files changed but not in story File List** â MEDIUM finding (incomplete documentation)
|
|
65
|
-
2. **Story lists files but no git changes** â HIGH finding (false claims)
|
|
66
|
-
3. **Uncommitted changes not documented** â MEDIUM finding (transparency issue)
|
|
67
|
-
</action>
|
|
68
|
-
|
|
69
|
-
<!-- Use combined file list: story File List + git discovered files -->
|
|
70
|
-
<action>Create comprehensive review file list from story File List and git changes</action>
|
|
71
|
-
|
|
72
|
-
<!-- AC Validation -->
|
|
73
|
-
<action>For EACH Acceptance Criterion:
|
|
74
|
-
1. Read the AC requirement
|
|
75
|
-
2. Search implementation files for evidence
|
|
76
|
-
3. Determine: IMPLEMENTED, PARTIAL, or MISSING
|
|
77
|
-
4. If MISSING/PARTIAL â HIGH SEVERITY finding
|
|
78
|
-
</action>
|
|
79
|
-
|
|
80
|
-
<!-- Task Completion Audit -->
|
|
81
|
-
<action>For EACH task marked [x]:
|
|
82
|
-
1. Read the task description
|
|
83
|
-
2. Search files for evidence it was actually done
|
|
84
|
-
3. **CRITICAL**: If marked [x] but NOT DONE â CRITICAL finding
|
|
85
|
-
4. Record specific proof (file:line)
|
|
86
|
-
</action>
|
|
87
|
-
|
|
88
|
-
<!-- Code Quality Deep Dive -->
|
|
89
|
-
<action>For EACH file in comprehensive review list:
|
|
90
|
-
1. **Security**: Look for injection risks, missing validation, auth issues
|
|
91
|
-
2. **Performance**: N+1 queries, inefficient loops, missing caching
|
|
92
|
-
3. **Error Handling**: Missing try/catch, poor error messages
|
|
93
|
-
4. **Code Quality**: Complex functions, magic numbers, poor naming
|
|
94
|
-
5. **Test Quality**: Are tests real assertions or placeholders?
|
|
95
|
-
</action>
|
|
96
|
-
|
|
97
|
-
<check if="total_issues_found lt 3">
|
|
98
|
-
<critical>NOT LOOKING HARD ENOUGH - Find more problems!</critical>
|
|
99
|
-
<action>Re-examine code for:
|
|
100
|
-
- Edge cases and null handling
|
|
101
|
-
- Architecture violations
|
|
102
|
-
- Documentation gaps
|
|
103
|
-
- Integration issues
|
|
104
|
-
- Dependency problems
|
|
105
|
-
- Git commit message quality (if applicable)
|
|
106
|
-
</action>
|
|
107
|
-
<action>Find at least 3 more specific, actionable issues</action>
|
|
108
|
-
</check>
|
|
109
|
-
</step>
|
|
110
|
-
|
|
111
|
-
<step n="4" goal="Present findings and fix them">
|
|
112
|
-
<action>Categorize findings: HIGH (must fix), MEDIUM (should fix), LOW (nice to fix)</action>
|
|
113
|
-
<action>Set {{fixed_count}} = 0</action>
|
|
114
|
-
<action>Set {{action_count}} = 0</action>
|
|
115
|
-
|
|
116
|
-
<output>**đĨ CODE REVIEW FINDINGS, {user_name}!**
|
|
117
|
-
|
|
118
|
-
**Story:** {{story_file}}
|
|
119
|
-
**Git vs Story Discrepancies:** {{git_discrepancy_count}} found
|
|
120
|
-
**Issues Found:** {{high_count}} High, {{medium_count}} Medium, {{low_count}} Low
|
|
121
|
-
|
|
122
|
-
## đ´ CRITICAL ISSUES
|
|
123
|
-
- Tasks marked [x] but not actually implemented
|
|
124
|
-
- Acceptance Criteria not implemented
|
|
125
|
-
- Story claims files changed but no git evidence
|
|
126
|
-
- Security vulnerabilities
|
|
127
|
-
|
|
128
|
-
## đĄ MEDIUM ISSUES
|
|
129
|
-
- Files changed but not documented in story File List
|
|
130
|
-
- Uncommitted changes not tracked
|
|
131
|
-
- Performance problems
|
|
132
|
-
- Poor test coverage/quality
|
|
133
|
-
- Code maintainability issues
|
|
134
|
-
|
|
135
|
-
## đĸ LOW ISSUES
|
|
136
|
-
- Code style improvements
|
|
137
|
-
- Documentation gaps
|
|
138
|
-
- Git commit message quality
|
|
139
|
-
</output>
|
|
140
|
-
|
|
141
|
-
<ask>What should I do with these issues?
|
|
142
|
-
|
|
143
|
-
1. **Fix them automatically** - I'll update the code and tests
|
|
144
|
-
2. **Create action items** - Add to story Tasks/Subtasks for later
|
|
145
|
-
3. **Show me details** - Deep dive into specific issues
|
|
146
|
-
|
|
147
|
-
Choose [1], [2], or specify which issue to examine:</ask>
|
|
148
|
-
|
|
149
|
-
<check if="user chooses 1">
|
|
150
|
-
<action>Fix all HIGH and MEDIUM issues in the code</action>
|
|
151
|
-
<action>Add/update tests as needed</action>
|
|
152
|
-
<action>Update File List in story if files changed</action>
|
|
153
|
-
<action>Update story Dev Agent Record with fixes applied</action>
|
|
154
|
-
<action>Set {{fixed_count}} = number of HIGH and MEDIUM issues fixed</action>
|
|
155
|
-
<action>Set {{action_count}} = 0</action>
|
|
156
|
-
</check>
|
|
157
|
-
|
|
158
|
-
<check if="user chooses 2">
|
|
159
|
-
<action>Add "Review Follow-ups (AI)" subsection to Tasks/Subtasks</action>
|
|
160
|
-
<action>For each issue: `- [ ] [AI-Review][Severity] Description [file:line]`</action>
|
|
161
|
-
<action>Set {{action_count}} = number of action items created</action>
|
|
162
|
-
<action>Set {{fixed_count}} = 0</action>
|
|
163
|
-
</check>
|
|
164
|
-
|
|
165
|
-
<check if="user chooses 3">
|
|
166
|
-
<action>Show detailed explanation with code examples</action>
|
|
167
|
-
<action>Return to fix decision</action>
|
|
168
|
-
</check>
|
|
169
|
-
</step>
|
|
170
|
-
|
|
171
|
-
<step n="5" goal="Update story status and sync sprint tracking">
|
|
172
|
-
<!-- Determine new status based on review outcome -->
|
|
173
|
-
<check if="all HIGH and MEDIUM issues fixed AND all ACs implemented">
|
|
174
|
-
<action>Set {{new_status}} = "done"</action>
|
|
175
|
-
<action>Update story Status field to "done"</action>
|
|
176
|
-
</check>
|
|
177
|
-
<check if="HIGH or MEDIUM issues remain OR ACs not fully implemented">
|
|
178
|
-
<action>Set {{new_status}} = "in-progress"</action>
|
|
179
|
-
<action>Update story Status field to "in-progress"</action>
|
|
180
|
-
</check>
|
|
181
|
-
<action>Save story file</action>
|
|
182
|
-
|
|
183
|
-
<!-- Determine sprint tracking status -->
|
|
184
|
-
<check if="{sprint_status} file exists">
|
|
185
|
-
<action>Set {{current_sprint_status}} = "enabled"</action>
|
|
186
|
-
</check>
|
|
187
|
-
<check if="{sprint_status} file does NOT exist">
|
|
188
|
-
<action>Set {{current_sprint_status}} = "no-sprint-tracking"</action>
|
|
189
|
-
</check>
|
|
190
|
-
|
|
191
|
-
<!-- Sync sprint-status.yaml when story status changes (only if sprint tracking enabled) -->
|
|
192
|
-
<check if="{{current_sprint_status}} != 'no-sprint-tracking'">
|
|
193
|
-
<action>Load the FULL file: {sprint_status}</action>
|
|
194
|
-
<action>Find development_status key matching {{story_key}}</action>
|
|
195
|
-
|
|
196
|
-
<check if="{{new_status}} == 'done'">
|
|
197
|
-
<action>Update development_status[{{story_key}}] = "done"</action>
|
|
198
|
-
<action>Save file, preserving ALL comments and structure</action>
|
|
199
|
-
<output>â
Sprint status synced: {{story_key}} â done</output>
|
|
200
|
-
</check>
|
|
201
|
-
|
|
202
|
-
<check if="{{new_status}} == 'in-progress'">
|
|
203
|
-
<action>Update development_status[{{story_key}}] = "in-progress"</action>
|
|
204
|
-
<action>Save file, preserving ALL comments and structure</action>
|
|
205
|
-
<output>đ Sprint status synced: {{story_key}} â in-progress</output>
|
|
206
|
-
</check>
|
|
207
|
-
|
|
208
|
-
<check if="story key not found in sprint status">
|
|
209
|
-
<output>â ī¸ Story file updated, but sprint-status sync failed: {{story_key}} not found in sprint-status.yaml</output>
|
|
210
|
-
</check>
|
|
211
|
-
</check>
|
|
212
|
-
|
|
213
|
-
<check if="{{current_sprint_status}} == 'no-sprint-tracking'">
|
|
214
|
-
<output>âšī¸ Story status updated (no sprint tracking configured)</output>
|
|
215
|
-
</check>
|
|
216
|
-
|
|
217
|
-
<output>**â
Review Complete!**
|
|
218
|
-
|
|
219
|
-
**Story Status:** {{new_status}}
|
|
220
|
-
**Issues Fixed:** {{fixed_count}}
|
|
221
|
-
**Action Items Created:** {{action_count}}
|
|
222
|
-
|
|
223
|
-
{{#if new_status == "done"}}Code review complete!{{else}}Address the action items and continue development.{{/if}}
|
|
224
|
-
</output>
|
|
225
|
-
</step>
|
|
226
|
-
|
|
227
|
-
</workflow>
|