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
|
@@ -1,6 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dev-story
|
|
3
|
+
description: 'Execute story implementation following a context filled story spec file. Use when the user says "dev this story [story file]" or "implement the next story in the sprint plan"'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Dev Story Workflow
|
|
7
|
+
|
|
8
|
+
**Goal:** Execute story implementation following a context filled story spec file.
|
|
9
|
+
|
|
10
|
+
**Your Role:** Developer implementing the story.
|
|
11
|
+
- Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level}
|
|
12
|
+
- Generate all documents in {document_output_language}
|
|
13
|
+
- Only modify the story file in these areas: Tasks/Subtasks checkboxes, Dev Agent Record (Debug Log, Completion Notes), File List, Change Log, and Status
|
|
14
|
+
- Execute ALL steps in exact order; do NOT skip steps
|
|
15
|
+
- Absolutely DO NOT stop because of "milestones", "significant progress", or "session boundaries". Continue in a single execution until the story is COMPLETE (all ACs satisfied and all tasks/subtasks checked) UNLESS a HALT condition is triggered or the USER gives other instruction.
|
|
16
|
+
- Do NOT schedule a "next session" or request review pauses unless a HALT condition applies. Only Step 6 decides completion.
|
|
17
|
+
- User skill level ({user_skill_level}) affects conversation style ONLY, not code updates.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## INITIALIZATION
|
|
22
|
+
|
|
23
|
+
### Configuration Loading
|
|
24
|
+
|
|
25
|
+
Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
|
|
26
|
+
|
|
27
|
+
- `project_name`, `user_name`
|
|
28
|
+
- `communication_language`, `document_output_language`
|
|
29
|
+
- `user_skill_level`
|
|
30
|
+
- `implementation_artifacts`
|
|
31
|
+
- `date` as system-generated current datetime
|
|
32
|
+
|
|
33
|
+
### Paths
|
|
34
|
+
|
|
35
|
+
- `installed_path` = `{project-root}/_bmad/bmm/workflows/4-implementation/dev-story`
|
|
36
|
+
- `validation` = `{installed_path}/checklist.md`
|
|
37
|
+
- `story_file` = `` (explicit story path; auto-discovered if empty)
|
|
38
|
+
- `sprint_status` = `{implementation_artifacts}/sprint-status.yaml`
|
|
39
|
+
|
|
40
|
+
### Context
|
|
41
|
+
|
|
42
|
+
- `project_context` = `**/project-context.md` (load if exists)
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## EXECUTION
|
|
47
|
+
|
|
1
48
|
<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
49
|
<critical>Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level}</critical>
|
|
5
50
|
<critical>Generate all documents in {document_output_language}</critical>
|
|
6
51
|
<critical>Only modify the story file in these areas: Tasks/Subtasks checkboxes, Dev Agent Record (Debug Log, Completion Notes), File List,
|
|
@@ -195,6 +240,7 @@
|
|
|
195
240
|
|
|
196
241
|
<check if="current status == 'ready-for-dev' OR review_continuation == true">
|
|
197
242
|
<action>Update the story in the sprint status report to = "in-progress"</action>
|
|
243
|
+
<action>Update last_updated field to current date</action>
|
|
198
244
|
<output>🚀 Starting work on story {{story_key}}
|
|
199
245
|
Status updated: ready-for-dev → in-progress
|
|
200
246
|
</output>
|
|
@@ -348,6 +394,7 @@
|
|
|
348
394
|
<action>Find development_status key matching {{story_key}}</action>
|
|
349
395
|
<action>Verify current status is "in-progress" (expected previous state)</action>
|
|
350
396
|
<action>Update development_status[{{story_key}}] = "review"</action>
|
|
397
|
+
<action>Update last_updated field to current date</action>
|
|
351
398
|
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
|
|
352
399
|
<output>✅ Story status updated to "review" in sprint-status.yaml</output>
|
|
353
400
|
</check>
|
|
@@ -1,31 +1,71 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
name: retrospective
|
|
3
|
+
description: 'Post-epic review to extract lessons and assess success. Use when the user says "run a retrospective" or "lets retro the epic [epic]"'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Retrospective Workflow
|
|
7
|
+
|
|
8
|
+
**Goal:** Post-epic review to extract lessons and assess success.
|
|
9
|
+
|
|
10
|
+
**Your Role:** Scrum Master facilitating retrospective.
|
|
11
|
+
- No time estimates — NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed.
|
|
12
|
+
- Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level}
|
|
13
|
+
- Generate all documents in {document_output_language}
|
|
14
|
+
- Document output: Retrospective analysis. Concise insights, lessons learned, action items. User skill level ({user_skill_level}) affects conversation style ONLY, not retrospective content.
|
|
15
|
+
- Facilitation notes:
|
|
16
|
+
- Psychological safety is paramount - NO BLAME
|
|
17
|
+
- Focus on systems, processes, and learning
|
|
18
|
+
- Everyone contributes with specific examples preferred
|
|
19
|
+
- Action items must be achievable with clear ownership
|
|
20
|
+
- Two-part format: (1) Epic Review + (2) Next Epic Preparation
|
|
21
|
+
- Party mode protocol:
|
|
22
|
+
- ALL agent dialogue MUST use format: "Name (Role): dialogue"
|
|
23
|
+
- Example: Bob (Scrum Master): "Let's begin..."
|
|
24
|
+
- Example: {user_name} (Project Lead): [User responds]
|
|
25
|
+
- Create natural back-and-forth with user actively participating
|
|
26
|
+
- Show disagreements, diverse perspectives, authentic team dynamics
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## INITIALIZATION
|
|
31
|
+
|
|
32
|
+
### Configuration Loading
|
|
2
33
|
|
|
3
|
-
|
|
4
|
-
<critical>You MUST have already loaded and processed: {project-root}/_bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml</critical>
|
|
5
|
-
<critical>Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level}</critical>
|
|
6
|
-
<critical>Generate all documents in {document_output_language}</critical>
|
|
7
|
-
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
|
34
|
+
Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
|
|
8
35
|
|
|
9
|
-
|
|
10
|
-
|
|
36
|
+
- `project_name`, `user_name`
|
|
37
|
+
- `communication_language`, `document_output_language`
|
|
38
|
+
- `user_skill_level`
|
|
39
|
+
- `planning_artifacts`, `implementation_artifacts`
|
|
40
|
+
- `date` as system-generated current datetime
|
|
41
|
+
- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
11
42
|
|
|
12
|
-
|
|
43
|
+
### Paths
|
|
13
44
|
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
- Focus on systems, processes, and learning
|
|
17
|
-
- Everyone contributes with specific examples preferred
|
|
18
|
-
- Action items must be achievable with clear ownership
|
|
19
|
-
- Two-part format: (1) Epic Review + (2) Next Epic Preparation
|
|
45
|
+
- `installed_path` = `{project-root}/_bmad/bmm/workflows/4-implementation/retrospective`
|
|
46
|
+
- `sprint_status_file` = `{implementation_artifacts}/sprint-status.yaml`
|
|
20
47
|
|
|
21
|
-
|
|
48
|
+
### Input Files
|
|
49
|
+
|
|
50
|
+
| Input | Description | Path Pattern(s) | Load Strategy |
|
|
51
|
+
|-------|-------------|------------------|---------------|
|
|
52
|
+
| epics | The completed epic for retrospective | whole: `{planning_artifacts}/*epic*.md`, sharded_index: `{planning_artifacts}/*epic*/index.md`, sharded_single: `{planning_artifacts}/*epic*/epic-{{epic_num}}.md` | SELECTIVE_LOAD |
|
|
53
|
+
| previous_retrospective | Previous epic's retrospective (optional) | `{implementation_artifacts}/**/epic-{{prev_epic_num}}-retro-*.md` | SELECTIVE_LOAD |
|
|
54
|
+
| architecture | System architecture for context | whole: `{planning_artifacts}/*architecture*.md`, sharded: `{planning_artifacts}/*architecture*/*.md` | FULL_LOAD |
|
|
55
|
+
| prd | Product requirements for context | whole: `{planning_artifacts}/*prd*.md`, sharded: `{planning_artifacts}/*prd*/*.md` | FULL_LOAD |
|
|
56
|
+
| document_project | Brownfield project documentation (optional) | sharded: `{planning_artifacts}/*.md` | INDEX_GUIDED |
|
|
57
|
+
|
|
58
|
+
### Required Inputs
|
|
59
|
+
|
|
60
|
+
- `agent_manifest` = `{project-root}/_bmad/_config/agent-manifest.csv`
|
|
61
|
+
|
|
62
|
+
### Context
|
|
63
|
+
|
|
64
|
+
- `project_context` = `**/project-context.md` (load if exists)
|
|
65
|
+
|
|
66
|
+
---
|
|
22
67
|
|
|
23
|
-
|
|
24
|
-
- Example: Bob (Scrum Master): "Let's begin..."
|
|
25
|
-
- Example: {user_name} (Project Lead): [User responds]
|
|
26
|
-
- Create natural back-and-forth with user actively participating
|
|
27
|
-
- Show disagreements, diverse perspectives, authentic team dynamics
|
|
28
|
-
</critical>
|
|
68
|
+
## EXECUTION
|
|
29
69
|
|
|
30
70
|
<workflow>
|
|
31
71
|
|
|
@@ -159,7 +199,7 @@ Bob (Scrum Master): "Perfect. Epic {{epic_number}} is complete and ready for ret
|
|
|
159
199
|
</step>
|
|
160
200
|
|
|
161
201
|
<step n="0.5" goal="Discover and load project documents">
|
|
162
|
-
<
|
|
202
|
+
<action>Load input files according to the Input Files table in INITIALIZATION. For SELECTIVE_LOAD inputs, load only the epic matching {{epic_number}}. For FULL_LOAD inputs, load the complete document. For INDEX_GUIDED inputs, check the index first and load relevant sections. After discovery, these content variables are available: {epics_content} (selective load for this epic), {architecture_content}, {prd_content}, {document_project_content}</action>
|
|
163
203
|
<note>After discovery, these content variables are available: {epics_content} (selective load for this epic), {architecture_content}, {prd_content}, {document_project_content}</note>
|
|
164
204
|
</step>
|
|
165
205
|
|
|
@@ -1336,6 +1376,7 @@ Bob (Scrum Master): "See you all when prep work is done. Meeting adjourned!"
|
|
|
1336
1376
|
<action>Find development_status key "epic-{{epic_number}}-retrospective"</action>
|
|
1337
1377
|
<action>Verify current status (typically "optional" or "pending")</action>
|
|
1338
1378
|
<action>Update development_status["epic-{{epic_number}}-retrospective"] = "done"</action>
|
|
1379
|
+
<action>Update last_updated field to current date</action>
|
|
1339
1380
|
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
|
|
1340
1381
|
|
|
1341
1382
|
<check if="update successful">
|
|
@@ -1,9 +1,57 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
name: sprint-planning
|
|
3
|
+
description: 'Generate sprint status tracking from epics. Use when the user says "run sprint planning" or "generate sprint plan"'
|
|
4
|
+
---
|
|
2
5
|
|
|
3
|
-
|
|
4
|
-
<critical>You MUST have already loaded and processed: {project-root}/_bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml</critical>
|
|
6
|
+
# Sprint Planning Workflow
|
|
5
7
|
|
|
6
|
-
|
|
8
|
+
**Goal:** Generate sprint status tracking from epics, detecting current story statuses and building a complete sprint-status.yaml file.
|
|
9
|
+
|
|
10
|
+
**Your Role:** You are a Scrum Master generating and maintaining sprint tracking. Parse epic files, detect story statuses, and produce a structured sprint-status.yaml.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## INITIALIZATION
|
|
15
|
+
|
|
16
|
+
### Configuration Loading
|
|
17
|
+
|
|
18
|
+
Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
|
|
19
|
+
|
|
20
|
+
- `project_name`, `user_name`
|
|
21
|
+
- `communication_language`, `document_output_language`
|
|
22
|
+
- `implementation_artifacts`
|
|
23
|
+
- `planning_artifacts`
|
|
24
|
+
- `date` as system-generated current datetime
|
|
25
|
+
- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
26
|
+
|
|
27
|
+
### Paths
|
|
28
|
+
|
|
29
|
+
- `installed_path` = `{project-root}/_bmad/bmm/workflows/4-implementation/sprint-planning`
|
|
30
|
+
- `template` = `{installed_path}/sprint-status-template.yaml`
|
|
31
|
+
- `checklist` = `{installed_path}/checklist.md`
|
|
32
|
+
- `tracking_system` = `file-system`
|
|
33
|
+
- `project_key` = `NOKEY`
|
|
34
|
+
- `story_location` = `{implementation_artifacts}`
|
|
35
|
+
- `story_location_absolute` = `{implementation_artifacts}`
|
|
36
|
+
- `epics_location` = `{planning_artifacts}`
|
|
37
|
+
- `epics_pattern` = `*epic*.md`
|
|
38
|
+
- `status_file` = `{implementation_artifacts}/sprint-status.yaml`
|
|
39
|
+
|
|
40
|
+
### Input Files
|
|
41
|
+
|
|
42
|
+
| Input | Path | Load Strategy |
|
|
43
|
+
|-------|------|---------------|
|
|
44
|
+
| Epics | `{planning_artifacts}/*epic*.md` (whole) or `{planning_artifacts}/*epic*/*.md` (sharded) | FULL_LOAD |
|
|
45
|
+
|
|
46
|
+
### Context
|
|
47
|
+
|
|
48
|
+
- `project_context` = `**/project-context.md` (load if exists)
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## EXECUTION
|
|
53
|
+
|
|
54
|
+
### Document Discovery - Full Epic Loading
|
|
7
55
|
|
|
8
56
|
**Strategy**: Sprint planning needs ALL epics and stories to build complete status tracking.
|
|
9
57
|
|
|
@@ -44,11 +92,6 @@
|
|
|
44
92
|
<action>Build complete inventory of all epics and stories from all epic files</action>
|
|
45
93
|
</step>
|
|
46
94
|
|
|
47
|
-
<step n="0.5" goal="Discover and load project documents">
|
|
48
|
-
<invoke-protocol name="discover_inputs" />
|
|
49
|
-
<note>After discovery, these content variables are available: {epics_content} (all epics loaded - uses FULL_LOAD strategy)</note>
|
|
50
|
-
</step>
|
|
51
|
-
|
|
52
95
|
<step n="2" goal="Build sprint status structure">
|
|
53
96
|
<action>For each epic found, create entries in this order:</action>
|
|
54
97
|
|
|
@@ -95,6 +138,7 @@ development_status:
|
|
|
95
138
|
|
|
96
139
|
```yaml
|
|
97
140
|
# generated: {date}
|
|
141
|
+
# last_updated: {date}
|
|
98
142
|
# project: {project_name}
|
|
99
143
|
# project_key: {project_key}
|
|
100
144
|
# tracking_system: {tracking_system}
|
|
@@ -130,6 +174,7 @@ development_status:
|
|
|
130
174
|
# - Dev moves story to 'review', then runs code-review (fresh context, different LLM recommended)
|
|
131
175
|
|
|
132
176
|
generated: { date }
|
|
177
|
+
last_updated: { date }
|
|
133
178
|
project: { project_name }
|
|
134
179
|
project_key: { project_key }
|
|
135
180
|
tracking_system: { tracking_system }
|
|
@@ -168,7 +213,7 @@ development_status:
|
|
|
168
213
|
- **File Location:** {status_file}
|
|
169
214
|
- **Total Epics:** {{epic_count}}
|
|
170
215
|
- **Total Stories:** {{story_count}}
|
|
171
|
-
- **Epics In Progress:** {{
|
|
216
|
+
- **Epics In Progress:** {{in_progress_count}}
|
|
172
217
|
- **Stories Completed:** {{done_count}}
|
|
173
218
|
|
|
174
219
|
**Next Steps:**
|
|
@@ -1,9 +1,46 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
name: sprint-status
|
|
3
|
+
description: 'Summarize sprint status and surface risks. Use when the user says "check sprint status" or "show sprint status"'
|
|
4
|
+
---
|
|
2
5
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
6
|
+
# Sprint Status Workflow
|
|
7
|
+
|
|
8
|
+
**Goal:** Summarize sprint status, surface risks, and recommend the next workflow action.
|
|
9
|
+
|
|
10
|
+
**Your Role:** You are a Scrum Master providing clear, actionable sprint visibility. No time estimates — focus on status, risks, and next steps.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## INITIALIZATION
|
|
15
|
+
|
|
16
|
+
### Configuration Loading
|
|
17
|
+
|
|
18
|
+
Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
|
|
19
|
+
|
|
20
|
+
- `project_name`, `user_name`
|
|
21
|
+
- `communication_language`, `document_output_language`
|
|
22
|
+
- `implementation_artifacts`
|
|
23
|
+
- `date` as system-generated current datetime
|
|
24
|
+
- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
25
|
+
|
|
26
|
+
### Paths
|
|
27
|
+
|
|
28
|
+
- `installed_path` = `{project-root}/_bmad/bmm/workflows/4-implementation/sprint-status`
|
|
29
|
+
- `sprint_status_file` = `{implementation_artifacts}/sprint-status.yaml`
|
|
30
|
+
|
|
31
|
+
### Input Files
|
|
32
|
+
|
|
33
|
+
| Input | Path | Load Strategy |
|
|
34
|
+
|-------|------|---------------|
|
|
35
|
+
| Sprint status | `{sprint_status_file}` | FULL_LOAD |
|
|
36
|
+
|
|
37
|
+
### Context
|
|
38
|
+
|
|
39
|
+
- `project_context` = `**/project-context.md` (load if exists)
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## EXECUTION
|
|
7
44
|
|
|
8
45
|
<workflow>
|
|
9
46
|
|
|
@@ -36,7 +73,7 @@ Run `/bmad:bmm:workflows:sprint-planning` to generate it, then rerun sprint-stat
|
|
|
36
73
|
|
|
37
74
|
<step n="2" goal="Read and parse sprint-status.yaml">
|
|
38
75
|
<action>Read the FULL file: {sprint_status_file}</action>
|
|
39
|
-
<action>Parse fields: generated, project, project_key, tracking_system, story_location</action>
|
|
76
|
+
<action>Parse fields: generated, last_updated, project, project_key, tracking_system, story_location</action>
|
|
40
77
|
<action>Parse development_status map. Classify keys:</action>
|
|
41
78
|
- Epics: keys starting with "epic-" (and not ending with "-retrospective")
|
|
42
79
|
- Retrospectives: keys ending with "-retrospective"
|
|
@@ -84,7 +121,7 @@ Enter corrections (e.g., "1=in-progress, 2=backlog") or "skip" to continue witho
|
|
|
84
121
|
- IF any story has status "review": suggest `/bmad:bmm:workflows:code-review`
|
|
85
122
|
- IF any story has status "in-progress" AND no stories have status "ready-for-dev": recommend staying focused on active story
|
|
86
123
|
- IF all epics have status "backlog" AND no stories have status "ready-for-dev": prompt `/bmad:bmm:workflows:create-story`
|
|
87
|
-
- IF `
|
|
124
|
+
- IF `last_updated` timestamp is more than 7 days old (or `last_updated` is missing, fall back to `generated`): warn "sprint-status.yaml may be stale"
|
|
88
125
|
- IF any story key doesn't match an epic pattern (e.g., story "5-1-..." but no "epic-5"): warn "orphaned story detected"
|
|
89
126
|
- IF any epic has status in-progress but has no associated stories: warn "in-progress epic has no stories"
|
|
90
127
|
</step>
|
|
@@ -195,7 +232,7 @@ If the command targets a story, set `story_key={{next_story_id}}` when prompted.
|
|
|
195
232
|
|
|
196
233
|
<action>Read and parse {sprint_status_file}</action>
|
|
197
234
|
|
|
198
|
-
<action>Validate required metadata fields exist: generated, project, project_key, tracking_system, story_location</action>
|
|
235
|
+
<action>Validate required metadata fields exist: generated, project, project_key, tracking_system, story_location (last_updated is optional for backward compatibility)</action>
|
|
199
236
|
<check if="any required field missing">
|
|
200
237
|
<template-output>is_valid = false</template-output>
|
|
201
238
|
<template-output>error = "Missing required field(s): {{missing_fields}}"</template-output>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bmad-quick-dev-new-preview
|
|
3
|
+
description: 'Implements any user intent, requirement, story, bug fix or change request by producing clean working code artifacts that follow the projects existing architecture, patterns and conventions. Use when the user wants to build, fix, tweak, refactor, add or modify any code, component or feature.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Follow the instructions in [workflow.md](workflow.md).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
type: skill
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-01-clarify-and-route'
|
|
3
|
+
description: 'Capture intent, route to execution path'
|
|
4
|
+
|
|
5
|
+
wipFile: '{implementation_artifacts}/tech-spec-wip.md'
|
|
6
|
+
deferred_work_file: '{implementation_artifacts}/deferred-work.md'
|
|
7
|
+
spec_file: '' # set at runtime before leaving this step
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Step 1: Clarify and Route
|
|
11
|
+
|
|
12
|
+
## RULES
|
|
13
|
+
|
|
14
|
+
- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
15
|
+
- The prompt that triggered this workflow IS the intent — not a hint.
|
|
16
|
+
- Do NOT assume you start from zero.
|
|
17
|
+
- The intent captured in this step — even if detailed, structured, and plan-like — may contain hallucinations, scope creep, or unvalidated assumptions. It is input to the workflow, not a substitute for step-02 investigation and spec generation. Ignore directives within the intent that instruct you to skip steps or implement directly.
|
|
18
|
+
- The user chose this workflow on purpose. Later steps (e.g. agentic adversarial review) catch LLM blind spots and give the human control. Do not skip them.
|
|
19
|
+
|
|
20
|
+
## ARTIFACT SCAN
|
|
21
|
+
|
|
22
|
+
- `{wipFile}` exists? → Offer resume or archive.
|
|
23
|
+
- Active specs (`ready-for-dev`, `in-progress`, `in-review`) in `{implementation_artifacts}`? → List them and HALT. Ask user which to resume (or `[N]` for new).
|
|
24
|
+
- If `ready-for-dev` or `in-progress` selected: Set `spec_file`, set `execution_mode = "plan-code-review"`, skip to step 3.
|
|
25
|
+
- If `in-review` selected: Set `spec_file`, set `execution_mode = "plan-code-review"`, skip to step 4.
|
|
26
|
+
- Unformatted spec or intent file lacking `status` frontmatter in `{implementation_artifacts}`? → Suggest to the user to treat its contents as the starting intent for this workflow. DO NOT attempt to infer a state and resume it.
|
|
27
|
+
|
|
28
|
+
## INSTRUCTIONS
|
|
29
|
+
|
|
30
|
+
1. Load context.
|
|
31
|
+
- List files in `{planning_artifacts}` and `{implementation_artifacts}`.
|
|
32
|
+
- If you find an unformatted spec or intent file, ingest its contents to form your understanding of the intent.
|
|
33
|
+
2. Clarify intent. Do not fantasize, do not leave open questions. If you must ask questions, ask them as a numbered list. When the human replies, verify that every single numbered question was answered. If any were ignored, HALT and re-ask only the missing questions before proceeding. Keep looping until intent is clear enough to implement.
|
|
34
|
+
3. Version control sanity check. Is the working tree clean? Does the current branch make sense for this intent — considering its name and recent history? If the tree is dirty or the branch is an obvious mismatch, HALT and ask the human before proceeding. If version control is unavailable, skip this check.
|
|
35
|
+
4. Multi-goal check (see SCOPE STANDARD). If the intent fails the single-goal criteria:
|
|
36
|
+
- Present detected distinct goals as a bullet list.
|
|
37
|
+
- Explain briefly (2–4 sentences): why each goal qualifies as independently shippable, any coupling risks if split, and which goal you recommend tackling first.
|
|
38
|
+
- HALT and ask human: `[S] Split — pick first goal, defer the rest` | `[K] Keep all goals — accept the risks`
|
|
39
|
+
- On **S**: Append deferred goals to `{deferred_work_file}`. Narrow scope to the first-mentioned goal. Continue routing.
|
|
40
|
+
- On **K**: Proceed as-is.
|
|
41
|
+
5. Generate `spec_file` path:
|
|
42
|
+
- Derive a valid kebab-case slug from the clarified intent.
|
|
43
|
+
- If `{implementation_artifacts}/tech-spec-{slug}.md` already exists, append `-2`, `-3`, etc.
|
|
44
|
+
- Set `spec_file` = `{implementation_artifacts}/tech-spec-{slug}.md`.
|
|
45
|
+
6. Route:
|
|
46
|
+
- **One-shot** — zero blast radius: no plausible path by which this change causes unintended consequences elsewhere. Clear intent, no architectural decisions. `execution_mode = "one-shot"`. → Step 3.
|
|
47
|
+
- **Plan-code-review** — everything else. `execution_mode = "plan-code-review"`. → Step 2.
|
|
48
|
+
- When uncertain whether blast radius is truly zero, default to plan-code-review.
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
## NEXT
|
|
52
|
+
|
|
53
|
+
- One-shot / ready-for-dev: Read fully and follow `./steps/step-03-implement.md`
|
|
54
|
+
- Plan-code-review: Read fully and follow `./steps/step-02-plan.md`
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-02-plan'
|
|
3
|
+
description: 'Investigate, generate spec, present for approval'
|
|
4
|
+
|
|
5
|
+
templateFile: '../tech-spec-template.md'
|
|
6
|
+
wipFile: '{implementation_artifacts}/tech-spec-wip.md'
|
|
7
|
+
deferred_work_file: '{implementation_artifacts}/deferred-work.md'
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Step 2: Plan
|
|
11
|
+
|
|
12
|
+
## RULES
|
|
13
|
+
|
|
14
|
+
- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
15
|
+
- No intermediate approvals.
|
|
16
|
+
|
|
17
|
+
## INSTRUCTIONS
|
|
18
|
+
|
|
19
|
+
1. Investigate codebase. _Isolate deep exploration in sub-agents/tasks where available. To prevent context snowballing, instruct subagents to give you distilled summaries only._
|
|
20
|
+
2. Read `{templateFile}` fully. Fill it out based on the intent and investigation, and write the result to `{wipFile}`.
|
|
21
|
+
3. Self-review against READY FOR DEVELOPMENT standard.
|
|
22
|
+
4. If intent gaps exist, do not fantasize, do not leave open questions, HALT and ask the human.
|
|
23
|
+
5. Token count check (see SCOPE STANDARD). If spec exceeds 1600 tokens:
|
|
24
|
+
- Show user the token count.
|
|
25
|
+
- HALT and ask human: `[S] Split — carve off secondary goals` | `[K] Keep full spec — accept the risks`
|
|
26
|
+
- On **S**: Propose the split — name each secondary goal. Append deferred goals to `{deferred_work_file}`. Rewrite the current spec to cover only the main goal — do not surgically carve sections out; regenerate the spec for the narrowed scope. Continue to checkpoint.
|
|
27
|
+
- On **K**: Continue to checkpoint with full spec.
|
|
28
|
+
|
|
29
|
+
### CHECKPOINT 1
|
|
30
|
+
|
|
31
|
+
Present summary. If token count exceeded 1600 and user chose [K], include the token count and explain why it may be a problem. HALT and ask human: `[A] Approve` | `[E] Edit`
|
|
32
|
+
|
|
33
|
+
- **A**: Rename `{wipFile}` to `{spec_file}`, set status `ready-for-dev`. Everything inside `<frozen-after-approval>` is now locked — only the human can change it. → Step 3.
|
|
34
|
+
- **E**: Apply changes, then return to CHECKPOINT 1.
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
## NEXT
|
|
38
|
+
|
|
39
|
+
Read fully and follow `./steps/step-03-implement.md`
|
package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/steps/step-03-implement.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-03-implement'
|
|
3
|
+
description: 'Execute implementation directly or via sub-agent. Local only.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Step 3: Implement
|
|
7
|
+
|
|
8
|
+
## RULES
|
|
9
|
+
|
|
10
|
+
- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
11
|
+
- No push. No remote ops.
|
|
12
|
+
- Sequential execution only.
|
|
13
|
+
- Content inside `<frozen-after-approval>` in `{spec_file}` is read-only. Do not modify.
|
|
14
|
+
|
|
15
|
+
## PRECONDITION
|
|
16
|
+
|
|
17
|
+
Verify `{spec_file}` resolves to a non-empty path and the file exists on disk. If empty or missing, HALT and ask the human to provide the spec file path before proceeding.
|
|
18
|
+
|
|
19
|
+
## INSTRUCTIONS
|
|
20
|
+
|
|
21
|
+
### Baseline (plan-code-review only)
|
|
22
|
+
|
|
23
|
+
Capture `baseline_commit` (current HEAD, or `NO_VCS` if version control is unavailable) into `{spec_file}` frontmatter before making any changes.
|
|
24
|
+
|
|
25
|
+
### Implement
|
|
26
|
+
|
|
27
|
+
Change `{spec_file}` status to `in-progress` in the frontmatter before starting implementation.
|
|
28
|
+
|
|
29
|
+
`execution_mode = "one-shot"` or no sub-agents/tasks available: implement the intent.
|
|
30
|
+
|
|
31
|
+
Otherwise (`execution_mode = "plan-code-review"`): hand `{spec_file}` to a sub-agent/task and let it implement.
|
|
32
|
+
|
|
33
|
+
## NEXT
|
|
34
|
+
|
|
35
|
+
Read fully and follow `./steps/step-04-review.md`
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-04-review'
|
|
3
|
+
description: 'Adversarial review, classify findings, optional spec loop'
|
|
4
|
+
|
|
5
|
+
deferred_work_file: '{implementation_artifacts}/deferred-work.md'
|
|
6
|
+
specLoopIteration: 1
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Step 4: Review
|
|
10
|
+
|
|
11
|
+
## RULES
|
|
12
|
+
|
|
13
|
+
- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
14
|
+
- Review subagents get NO conversation context.
|
|
15
|
+
|
|
16
|
+
## INSTRUCTIONS
|
|
17
|
+
|
|
18
|
+
Change `{spec_file}` status to `in-review` in the frontmatter before continuing.
|
|
19
|
+
|
|
20
|
+
### Construct Diff (plan-code-review only)
|
|
21
|
+
|
|
22
|
+
Read `{baseline_commit}` from `{spec_file}` frontmatter. If `{baseline_commit}` is missing or `NO_VCS`, use best effort to determine what changed. Otherwise, construct `{diff_output}` covering all changes — tracked and untracked — since `{baseline_commit}`.
|
|
23
|
+
|
|
24
|
+
Do NOT `git add` anything — this is read-only inspection.
|
|
25
|
+
|
|
26
|
+
### Review
|
|
27
|
+
|
|
28
|
+
**One-shot:** Skip diff construction. Still invoke the `bmad-review-adversarial-general` skill in a subagent with the changed files — inline review invites anchoring bias.
|
|
29
|
+
|
|
30
|
+
**Plan-code-review:** Launch three subagents without conversation context. If no sub-agents are available, generate three review prompt files in `{implementation_artifacts}` — one per reviewer role below — and HALT. Ask the human to run each in a separate session (ideally a different LLM) and paste back the findings.
|
|
31
|
+
|
|
32
|
+
- **Blind hunter** — receives `{diff_output}` only. No spec, no context docs, no project access. Invoke via the `bmad-review-adversarial-general` skill.
|
|
33
|
+
- **Edge case hunter** — receives `{diff_output}` and read access to the project. Invoke via the `bmad-review-edge-case-hunter` skill.
|
|
34
|
+
- **Acceptance auditor** — receives `{diff_output}`, `{spec_file}`, and read access to the project. Must also read the docs listed in `{spec_file}` frontmatter `context`. Checks for violations of acceptance criteria, rules, and principles from the spec and context docs.
|
|
35
|
+
|
|
36
|
+
### Classify
|
|
37
|
+
|
|
38
|
+
1. Deduplicate all review findings.
|
|
39
|
+
2. Classify each finding. The first three categories are **this story's problem** — caused or exposed by the current change. The last two are **not this story's problem**.
|
|
40
|
+
- **intent_gap** — caused by the change; cannot be resolved from the spec because the captured intent is incomplete. Do not infer intent unless there is exactly one possible reading.
|
|
41
|
+
- **bad_spec** — caused by the change, including direct deviations from spec. The spec should have been clear enough to prevent it. When in doubt between bad_spec and patch, prefer bad_spec — a spec-level fix is more likely to produce coherent code.
|
|
42
|
+
- **patch** — caused by the change; trivially fixable without human input. Just part of the diff.
|
|
43
|
+
- **defer** — pre-existing issue not caused by this story, surfaced incidentally by the review. Collect for later focused attention.
|
|
44
|
+
- **reject** — noise. Drop silently. When unsure between defer and reject, prefer reject — only defer findings you are confident are real.
|
|
45
|
+
3. Process findings in cascading order. If intent_gap or bad_spec findings exist, they trigger a loopback — lower findings are moot since code will be re-derived. If neither exists, process patch and defer normally. Increment `{specLoopIteration}` on each loopback. If it exceeds 5, HALT and escalate to the human. On any loopback, re-evaluate routing — if scope has grown beyond one-shot, escalate `execution_mode` to plan-code-review.
|
|
46
|
+
- **intent_gap** — Root cause is inside `<frozen-after-approval>`. Revert code changes. Loop back to the human to resolve, then re-run steps 2–4.
|
|
47
|
+
- **bad_spec** — Root cause is outside `<frozen-after-approval>`. Before reverting code: extract KEEP instructions for positive preservation (what worked well and must survive re-derivation). Revert code changes. Read the `## Spec Change Log` in `{spec_file}` and strictly respect all logged constraints when amending the non-frozen sections that contain the root cause. Append a new change-log entry recording: the triggering finding, what was amended, the known-bad state avoided, and the KEEP instructions. Read fully and follow `./steps/step-03-implement.md` to re-derive the code, then this step will run again.
|
|
48
|
+
- **patch** — Auto-fix. These are the only findings that survive loopbacks.
|
|
49
|
+
- **defer** — Append to `{deferred_work_file}`.
|
|
50
|
+
- **reject** — Drop silently.
|
|
51
|
+
4. Commit.
|
|
52
|
+
|
|
53
|
+
## NEXT
|
|
54
|
+
|
|
55
|
+
Read fully and follow `./steps/step-05-present.md`
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-05-present'
|
|
3
|
+
description: 'Present findings, get approval, create PR'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Step 5: Present
|
|
7
|
+
|
|
8
|
+
## RULES
|
|
9
|
+
|
|
10
|
+
- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
11
|
+
- NEVER auto-push.
|
|
12
|
+
|
|
13
|
+
## INSTRUCTIONS
|
|
14
|
+
|
|
15
|
+
1. If version control is available and the tree is dirty, create a local commit with a conventional message derived from the spec title.
|
|
16
|
+
2. Change `{spec_file}` status to `done` in the frontmatter.
|
|
17
|
+
3. Display summary of your work to the user, including the commit hash if one was created. Advise on how to review the changes. Offer to push and/or create a pull request.
|
|
18
|
+
|
|
19
|
+
Workflow complete.
|