bmad-method 5.1.3 → 6.0.0-Beta.1
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/.coderabbit.yaml +40 -0
- package/.github/CODE_OF_CONDUCT.md +128 -0
- package/.github/FUNDING.yaml +2 -2
- package/.github/ISSUE_TEMPLATE/config.yaml +8 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +11 -11
- package/.github/ISSUE_TEMPLATE/issue.md +32 -0
- package/.github/scripts/discord-helpers.sh +34 -0
- package/.github/workflows/discord.yaml +82 -17
- package/.github/workflows/docs.yaml +63 -0
- package/.github/workflows/manual-release.yaml +40 -20
- package/.github/workflows/quality.yaml +115 -0
- package/.husky/pre-commit +17 -0
- package/.markdownlint-cli2.yaml +41 -0
- package/.nvmrc +1 -0
- package/.prettierignore +9 -0
- package/.vscode/settings.json +38 -10
- package/CHANGELOG.md +1167 -372
- package/CNAME +1 -0
- package/CONTRIBUTING.md +100 -142
- package/CONTRIBUTORS.md +32 -0
- package/LICENSE +10 -1
- package/README.md +67 -170
- package/SECURITY.md +85 -0
- package/TRADEMARK.md +55 -0
- package/Wordmark.png +0 -0
- package/banner-bmad-method.png +0 -0
- package/docs/404.md +9 -0
- package/docs/_STYLE_GUIDE.md +367 -0
- package/docs/downloads.md +74 -0
- package/docs/explanation/advanced-elicitation.md +24 -0
- package/docs/explanation/adversarial-review.md +57 -0
- package/docs/explanation/brainstorming.md +31 -0
- package/docs/explanation/brownfield-faq.md +55 -0
- package/docs/explanation/party-mode.md +57 -0
- package/docs/explanation/preventing-agent-conflicts.md +110 -0
- package/docs/explanation/quick-flow.md +27 -0
- package/docs/explanation/why-solutioning-matters.md +75 -0
- package/docs/how-to/brownfield/index.md +84 -0
- package/docs/how-to/brownfield/quick-fix-in-brownfield.md +76 -0
- package/docs/how-to/customize-bmad.md +158 -0
- package/docs/how-to/get-answers-about-bmad.md +102 -0
- package/docs/how-to/install-bmad.md +82 -0
- package/docs/how-to/shard-large-documents.md +101 -0
- package/docs/how-to/upgrade-to-v6.md +131 -0
- package/docs/index.md +56 -0
- package/docs/reference/workflow-map.md +83 -0
- package/docs/tea/explanation/engagement-models.md +710 -0
- package/docs/tea/explanation/fixture-architecture.md +457 -0
- package/docs/tea/explanation/knowledge-base-system.md +554 -0
- package/docs/tea/explanation/network-first-patterns.md +853 -0
- package/docs/tea/explanation/risk-based-testing.md +586 -0
- package/docs/tea/explanation/tea-overview.md +410 -0
- package/docs/tea/explanation/test-quality-standards.md +907 -0
- package/docs/tea/explanation/testing-as-engineering.md +112 -0
- package/docs/tea/glossary/index.md +159 -0
- package/docs/tea/how-to/brownfield/use-tea-for-enterprise.md +525 -0
- package/docs/tea/how-to/brownfield/use-tea-with-existing-tests.md +577 -0
- package/docs/tea/how-to/customization/enable-tea-mcp-enhancements.md +424 -0
- package/docs/tea/how-to/customization/integrate-playwright-utils.md +813 -0
- package/docs/tea/how-to/workflows/run-atdd.md +436 -0
- package/docs/tea/how-to/workflows/run-automate.md +653 -0
- package/docs/tea/how-to/workflows/run-nfr-assess.md +679 -0
- package/docs/tea/how-to/workflows/run-test-design.md +135 -0
- package/docs/tea/how-to/workflows/run-test-review.md +605 -0
- package/docs/tea/how-to/workflows/run-trace.md +883 -0
- package/docs/tea/how-to/workflows/setup-ci.md +712 -0
- package/docs/tea/how-to/workflows/setup-test-framework.md +98 -0
- package/docs/tea/reference/commands.md +276 -0
- package/docs/tea/reference/configuration.md +678 -0
- package/docs/tea/reference/knowledge-base.md +340 -0
- package/docs/tea/tutorials/tea-lite-quickstart.md +444 -0
- package/docs/tutorials/getting-started.md +205 -0
- package/eslint.config.mjs +42 -9
- package/package.json +50 -38
- package/prettier.config.mjs +1 -1
- package/src/bmm/_module-installer/installer.js +48 -0
- package/src/bmm/agents/analyst.agent.yaml +36 -0
- package/src/bmm/agents/architect.agent.yaml +28 -0
- package/src/bmm/agents/dev.agent.yaml +38 -0
- package/src/bmm/agents/pm.agent.yaml +46 -0
- package/src/bmm/agents/quick-flow-solo-dev.agent.yaml +32 -0
- package/src/bmm/agents/sm.agent.yaml +36 -0
- package/src/bmm/agents/tea.agent.yaml +63 -0
- package/src/bmm/agents/tech-writer/tech-writer-sidecar/documentation-standards.md +224 -0
- package/src/bmm/agents/tech-writer/tech-writer.agent.yaml +45 -0
- package/src/bmm/agents/ux-designer.agent.yaml +26 -0
- package/src/bmm/data/project-context-template.md +26 -0
- package/src/bmm/module-help.csv +32 -0
- package/src/bmm/module.yaml +44 -0
- package/src/bmm/teams/default-party.csv +21 -0
- package/src/bmm/teams/team-fullstack.yaml +12 -0
- package/src/bmm/testarch/knowledge/adr-quality-readiness-checklist.md +350 -0
- package/src/bmm/testarch/knowledge/api-request.md +442 -0
- package/src/bmm/testarch/knowledge/api-testing-patterns.md +843 -0
- package/src/bmm/testarch/knowledge/auth-session.md +552 -0
- package/src/bmm/testarch/knowledge/burn-in.md +273 -0
- package/src/bmm/testarch/knowledge/ci-burn-in.md +675 -0
- package/src/bmm/testarch/knowledge/component-tdd.md +486 -0
- package/src/bmm/testarch/knowledge/contract-testing.md +957 -0
- package/src/bmm/testarch/knowledge/data-factories.md +500 -0
- package/src/bmm/testarch/knowledge/email-auth.md +721 -0
- package/src/bmm/testarch/knowledge/error-handling.md +725 -0
- package/src/bmm/testarch/knowledge/feature-flags.md +750 -0
- package/src/bmm/testarch/knowledge/file-utils.md +463 -0
- package/src/bmm/testarch/knowledge/fixture-architecture.md +401 -0
- package/src/bmm/testarch/knowledge/fixtures-composition.md +382 -0
- package/src/bmm/testarch/knowledge/intercept-network-call.md +430 -0
- package/src/bmm/testarch/knowledge/log.md +429 -0
- package/src/bmm/testarch/knowledge/network-error-monitor.md +405 -0
- package/src/bmm/testarch/knowledge/network-first.md +486 -0
- package/src/bmm/testarch/knowledge/network-recorder.md +527 -0
- package/src/bmm/testarch/knowledge/nfr-criteria.md +670 -0
- package/src/bmm/testarch/knowledge/overview.md +286 -0
- package/src/bmm/testarch/knowledge/playwright-config.md +730 -0
- package/src/bmm/testarch/knowledge/probability-impact.md +601 -0
- package/src/bmm/testarch/knowledge/recurse.md +421 -0
- package/src/bmm/testarch/knowledge/risk-governance.md +615 -0
- package/src/bmm/testarch/knowledge/selective-testing.md +732 -0
- package/src/bmm/testarch/knowledge/selector-resilience.md +527 -0
- package/src/bmm/testarch/knowledge/test-healing-patterns.md +644 -0
- package/src/bmm/testarch/knowledge/test-levels-framework.md +473 -0
- package/src/bmm/testarch/knowledge/test-priorities-matrix.md +373 -0
- package/src/bmm/testarch/knowledge/test-quality.md +664 -0
- package/src/bmm/testarch/knowledge/timing-debugging.md +372 -0
- package/src/bmm/testarch/knowledge/visual-debugging.md +524 -0
- package/src/bmm/testarch/tea-index.csv +35 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +177 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +161 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +199 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +202 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +205 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +219 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +162 -0
- package/src/bmm/workflows/1-analysis/create-product-brief/workflow.md +58 -0
- package/src/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
- package/src/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
- package/src/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
- package/src/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
- package/src/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
- package/src/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +443 -0
- package/src/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
- package/src/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
- package/src/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +200 -0
- package/src/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
- package/src/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
- package/src/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
- package/src/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +475 -0
- package/src/bmm/workflows/1-analysis/research/research.template.md +29 -0
- package/src/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
- package/src/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
- package/src/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
- package/src/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
- package/src/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +239 -0
- package/src/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +486 -0
- package/src/bmm/workflows/1-analysis/research/workflow.md +173 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +13 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +197 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv +11 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md +191 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md +153 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +224 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +226 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +213 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +207 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +226 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +237 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +228 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +231 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +242 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +217 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +124 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +247 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +249 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md +253 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md +168 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +218 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +191 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +209 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +174 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +228 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +217 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +263 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +209 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +242 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +231 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md +10 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/validation-report-prd-workflow.md +433 -0
- package/src/bmm/workflows/2-plan-workflows/create-prd/workflow.md +150 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +171 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
- package/src/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +43 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +190 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +178 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +179 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +139 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +252 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +135 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
- package/src/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +55 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +11 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +164 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +331 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +76 -0
- package/src/bmm/workflows/3-solutioning/create-architecture/workflow.md +50 -0
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -0
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +149 -0
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
- package/src/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +59 -0
- package/src/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
- package/src/bmm/workflows/4-implementation/code-review/instructions.xml +227 -0
- package/src/bmm/workflows/4-implementation/code-review/workflow.yaml +51 -0
- package/src/bmm/workflows/4-implementation/correct-course/checklist.md +288 -0
- package/src/bmm/workflows/4-implementation/correct-course/instructions.md +206 -0
- package/src/bmm/workflows/4-implementation/correct-course/workflow.yaml +60 -0
- package/src/bmm/workflows/4-implementation/create-story/checklist.md +358 -0
- package/src/bmm/workflows/4-implementation/create-story/instructions.xml +345 -0
- package/src/bmm/workflows/4-implementation/create-story/template.md +49 -0
- package/src/bmm/workflows/4-implementation/create-story/workflow.yaml +61 -0
- package/src/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
- package/src/bmm/workflows/4-implementation/dev-story/instructions.xml +410 -0
- package/src/bmm/workflows/4-implementation/dev-story/workflow.yaml +27 -0
- package/src/bmm/workflows/4-implementation/retrospective/instructions.md +1443 -0
- package/src/bmm/workflows/4-implementation/retrospective/workflow.yaml +58 -0
- package/src/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
- package/src/bmm/workflows/4-implementation/sprint-planning/instructions.md +225 -0
- package/src/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
- package/src/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +54 -0
- package/src/bmm/workflows/4-implementation/sprint-status/instructions.md +229 -0
- package/src/bmm/workflows/4-implementation/sprint-status/workflow.yaml +36 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +176 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +120 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +113 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +113 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +106 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +149 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +50 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +192 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +145 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +128 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +201 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +74 -0
- package/src/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +79 -0
- package/src/bmm/workflows/document-project/checklist.md +245 -0
- package/src/bmm/workflows/document-project/documentation-requirements.csv +12 -0
- package/src/bmm/workflows/document-project/instructions.md +221 -0
- package/src/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
- package/src/bmm/workflows/document-project/templates/index-template.md +169 -0
- package/src/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
- package/src/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
- package/src/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
- package/src/bmm/workflows/document-project/workflow.yaml +30 -0
- package/src/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
- package/src/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
- package/src/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
- package/src/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
- package/src/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +90 -0
- package/src/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +127 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +39 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +130 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +27 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +43 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +141 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +27 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +49 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +241 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +27 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +38 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +133 -0
- package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +27 -0
- package/src/bmm/workflows/testarch/atdd/atdd-checklist-template.md +363 -0
- package/src/bmm/workflows/testarch/atdd/checklist.md +374 -0
- package/src/bmm/workflows/testarch/atdd/instructions.md +806 -0
- package/src/bmm/workflows/testarch/atdd/workflow.yaml +47 -0
- package/src/bmm/workflows/testarch/automate/checklist.md +582 -0
- package/src/bmm/workflows/testarch/automate/instructions.md +1324 -0
- package/src/bmm/workflows/testarch/automate/workflow.yaml +54 -0
- package/src/bmm/workflows/testarch/ci/checklist.md +247 -0
- package/src/bmm/workflows/testarch/ci/github-actions-template.yaml +198 -0
- package/src/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +149 -0
- package/src/bmm/workflows/testarch/ci/instructions.md +536 -0
- package/src/bmm/workflows/testarch/ci/workflow.yaml +47 -0
- package/src/bmm/workflows/testarch/framework/checklist.md +320 -0
- package/src/bmm/workflows/testarch/framework/instructions.md +481 -0
- package/src/bmm/workflows/testarch/framework/workflow.yaml +49 -0
- package/src/bmm/workflows/testarch/nfr-assess/checklist.md +407 -0
- package/src/bmm/workflows/testarch/nfr-assess/instructions.md +726 -0
- package/src/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +461 -0
- package/src/bmm/workflows/testarch/nfr-assess/workflow.yaml +49 -0
- package/src/bmm/workflows/testarch/test-design/checklist.md +407 -0
- package/src/bmm/workflows/testarch/test-design/instructions.md +1158 -0
- package/src/bmm/workflows/testarch/test-design/test-design-architecture-template.md +213 -0
- package/src/bmm/workflows/testarch/test-design/test-design-qa-template.md +286 -0
- package/src/bmm/workflows/testarch/test-design/test-design-template.md +294 -0
- package/src/bmm/workflows/testarch/test-design/workflow.yaml +71 -0
- package/src/bmm/workflows/testarch/test-review/checklist.md +472 -0
- package/src/bmm/workflows/testarch/test-review/instructions.md +628 -0
- package/src/bmm/workflows/testarch/test-review/test-review-template.md +390 -0
- package/src/bmm/workflows/testarch/test-review/workflow.yaml +48 -0
- package/src/bmm/workflows/testarch/trace/checklist.md +642 -0
- package/src/bmm/workflows/testarch/trace/instructions.md +1030 -0
- package/src/bmm/workflows/testarch/trace/trace-template.md +675 -0
- package/src/bmm/workflows/testarch/trace/workflow.yaml +57 -0
- package/src/core/_module-installer/installer.js +60 -0
- package/src/core/agents/bmad-master.agent.yaml +29 -0
- package/src/core/module-help.csv +9 -0
- package/src/core/module.yaml +25 -0
- package/src/core/resources/excalidraw/README.md +160 -0
- package/src/core/resources/excalidraw/excalidraw-helpers.md +127 -0
- package/src/core/resources/excalidraw/library-loader.md +50 -0
- package/src/core/resources/excalidraw/validate-json-instructions.md +79 -0
- package/src/core/tasks/editorial-review-prose.xml +100 -0
- package/src/core/tasks/editorial-review-structure.xml +209 -0
- package/src/core/tasks/help.md +62 -0
- package/src/core/tasks/index-docs.xml +65 -0
- package/src/core/tasks/review-adversarial-general.xml +48 -0
- package/src/core/tasks/shard-doc.xml +109 -0
- package/src/core/tasks/workflow.xml +235 -0
- package/src/core/workflows/advanced-elicitation/methods.csv +51 -0
- package/src/core/workflows/advanced-elicitation/workflow.xml +117 -0
- package/src/core/workflows/brainstorming/brain-methods.csv +62 -0
- package/src/core/workflows/brainstorming/steps/step-01-session-setup.md +197 -0
- package/src/core/workflows/brainstorming/steps/step-01b-continue.md +122 -0
- package/src/core/workflows/brainstorming/steps/step-02a-user-selected.md +225 -0
- package/src/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +237 -0
- package/src/core/workflows/brainstorming/steps/step-02c-random-selection.md +209 -0
- package/src/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +264 -0
- package/src/core/workflows/brainstorming/steps/step-03-technique-execution.md +399 -0
- package/src/core/workflows/brainstorming/steps/step-04-idea-organization.md +303 -0
- package/src/core/workflows/brainstorming/template.md +15 -0
- package/src/core/workflows/brainstorming/workflow.md +58 -0
- package/src/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -0
- package/src/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +187 -0
- package/src/core/workflows/party-mode/steps/step-03-graceful-exit.md +157 -0
- package/src/core/workflows/party-mode/workflow.md +194 -0
- package/src/utility/agent-components/activation-rules.txt +6 -0
- package/src/utility/agent-components/activation-steps.txt +14 -0
- package/src/utility/agent-components/agent-command-header.md +1 -0
- package/src/utility/agent-components/agent.customize.template.yaml +41 -0
- package/src/utility/agent-components/handler-action.txt +4 -0
- package/src/utility/agent-components/handler-data.txt +5 -0
- package/src/utility/agent-components/handler-exec.txt +6 -0
- package/src/utility/agent-components/handler-multi.txt +14 -0
- package/src/utility/agent-components/handler-tmpl.txt +5 -0
- package/src/utility/agent-components/handler-validate-workflow.txt +7 -0
- package/src/utility/agent-components/handler-workflow.txt +10 -0
- package/src/utility/agent-components/menu-handlers.txt +6 -0
- package/test/README.md +295 -0
- package/test/adversarial-review-tests/README.md +56 -0
- package/test/adversarial-review-tests/sample-content.md +46 -0
- package/test/adversarial-review-tests/test-cases.yaml +103 -0
- package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +30 -0
- package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +22 -0
- package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +20 -0
- package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/compound-invalid-format.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/compound-mismatched-kebab.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +31 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +23 -0
- package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +29 -0
- package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +31 -0
- package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +28 -0
- package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +28 -0
- package/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +5 -0
- package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +28 -0
- package/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +11 -0
- package/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +19 -0
- package/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +18 -0
- package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +22 -0
- package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +27 -0
- package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +31 -0
- package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +22 -0
- package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +38 -0
- package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/menu-triggers/compound-triggers.agent.yaml +31 -0
- package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +34 -0
- package/test/fixtures/agent-schema/valid/metadata/core-agent-with-module.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/metadata/module-agent-missing-module.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/metadata/wrong-module-value.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +24 -0
- package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +22 -0
- package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +28 -0
- package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +30 -0
- package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +24 -0
- package/test/test-agent-schema.js +387 -0
- package/test/test-cli-integration.sh +159 -0
- package/test/test-installation-components.js +214 -0
- package/test/unit-test-schema.js +133 -0
- package/tools/bmad-npx-wrapper.js +11 -12
- package/tools/build-docs.js +577 -0
- package/tools/cli/README.md +7 -0
- package/tools/cli/bmad-cli.js +58 -0
- package/tools/cli/commands/install.js +87 -0
- package/tools/cli/commands/status.js +65 -0
- package/tools/cli/external-official-modules.yaml +44 -0
- package/tools/cli/installers/install-messages.yaml +59 -0
- package/tools/cli/installers/lib/core/config-collector.js +1079 -0
- package/tools/cli/installers/lib/core/custom-module-cache.js +259 -0
- package/tools/cli/installers/lib/core/dependency-resolver.js +739 -0
- package/tools/cli/installers/lib/core/detector.js +223 -0
- package/tools/cli/installers/lib/core/ide-config-manager.js +156 -0
- package/tools/cli/installers/lib/core/installer.js +2826 -0
- package/tools/cli/installers/lib/core/manifest-generator.js +1054 -0
- package/tools/cli/installers/lib/core/manifest.js +1036 -0
- package/tools/cli/installers/lib/custom/handler.js +363 -0
- package/tools/cli/installers/lib/ide/STANDARDIZATION_PLAN.md +208 -0
- package/tools/cli/installers/lib/ide/_base-ide.js +655 -0
- package/tools/cli/installers/lib/ide/antigravity.js +474 -0
- package/tools/cli/installers/lib/ide/auggie.js +244 -0
- package/tools/cli/installers/lib/ide/claude-code.js +506 -0
- package/tools/cli/installers/lib/ide/cline.js +272 -0
- package/tools/cli/installers/lib/ide/codex.js +412 -0
- package/tools/cli/installers/lib/ide/crush.js +149 -0
- package/tools/cli/installers/lib/ide/cursor.js +160 -0
- package/tools/cli/installers/lib/ide/gemini.js +301 -0
- package/tools/cli/installers/lib/ide/github-copilot.js +383 -0
- package/tools/cli/installers/lib/ide/iflow.js +191 -0
- package/tools/cli/installers/lib/ide/kilo.js +250 -0
- package/tools/cli/installers/lib/ide/kiro-cli.js +326 -0
- package/tools/cli/installers/lib/ide/manager.js +244 -0
- package/tools/cli/installers/lib/ide/opencode.js +257 -0
- package/tools/cli/installers/lib/ide/qwen.js +372 -0
- package/tools/cli/installers/lib/ide/roo.js +273 -0
- package/tools/cli/installers/lib/ide/rovo-dev.js +290 -0
- package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +165 -0
- package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +158 -0
- package/tools/cli/installers/lib/ide/shared/module-injections.js +136 -0
- package/tools/cli/installers/lib/ide/shared/path-utils.js +165 -0
- package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +268 -0
- package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +293 -0
- package/tools/cli/installers/lib/ide/templates/agent-command-template.md +14 -0
- package/tools/cli/installers/lib/ide/templates/gemini-agent-command.toml +14 -0
- package/tools/cli/installers/lib/ide/templates/gemini-task-command.toml +12 -0
- package/tools/cli/installers/lib/ide/templates/workflow-command-template.md +13 -0
- package/tools/cli/installers/lib/ide/templates/workflow-commander.md +5 -0
- package/tools/cli/installers/lib/ide/trae.js +313 -0
- package/tools/cli/installers/lib/ide/windsurf.js +258 -0
- package/tools/cli/installers/lib/message-loader.js +85 -0
- package/tools/cli/installers/lib/modules/external-manager.js +135 -0
- package/tools/cli/installers/lib/modules/manager.js +1375 -0
- package/tools/cli/lib/activation-builder.js +163 -0
- package/tools/cli/lib/agent/compiler.js +522 -0
- package/tools/cli/lib/agent/installer.js +716 -0
- package/tools/cli/lib/agent/template-engine.js +152 -0
- package/tools/cli/lib/agent-analyzer.js +109 -0
- package/tools/cli/lib/agent-party-generator.js +194 -0
- package/tools/cli/lib/cli-utils.js +227 -0
- package/tools/cli/lib/config.js +213 -0
- package/tools/cli/lib/file-ops.js +204 -0
- package/tools/cli/lib/platform-codes.js +116 -0
- package/tools/cli/lib/project-root.js +77 -0
- package/tools/cli/lib/prompts.js +433 -0
- package/tools/cli/lib/ui.js +1716 -0
- package/tools/cli/lib/xml-handler.js +177 -0
- package/tools/cli/lib/xml-to-markdown.js +82 -0
- package/tools/{yaml-format.js → cli/lib/yaml-format.js} +9 -17
- package/tools/cli/lib/yaml-xml-builder.js +587 -0
- package/tools/docs/BUNDLE_DISTRIBUTION_SETUP.md +95 -0
- package/tools/docs/fix-refs.md +91 -0
- package/tools/docs/index.md +2 -0
- package/tools/fix-doc-links.js +288 -0
- package/tools/flattener/ignoreRules.js +2 -6
- package/tools/flattener/main.js +31 -121
- package/tools/flattener/projectRoot.js +3 -8
- package/tools/flattener/stats.helpers.js +8 -35
- package/tools/flattener/stats.js +1 -6
- package/tools/flattener/test-matrix.js +1 -5
- package/tools/flattener/xml.js +1 -7
- package/tools/format-workflow-md.js +263 -0
- package/tools/lib/xml-utils.js +13 -0
- package/tools/maintainer/review-pr-README.md +55 -0
- package/tools/maintainer/review-pr.md +242 -0
- package/tools/migrate-custom-module-paths.js +124 -0
- package/tools/platform-codes.yaml +157 -0
- package/tools/schema/agent.js +491 -0
- package/tools/validate-agent-schema.js +110 -0
- package/tools/validate-doc-links.js +371 -0
- package/tools/validate-svg-changes.sh +356 -0
- package/website/README.md +76 -0
- package/website/_basement/components/WorkflowGuide.astro +444 -0
- package/website/_basement/pages/workflow-guide.astro +17 -0
- package/website/astro.config.mjs +169 -0
- package/website/public/favicon.ico +0 -0
- package/website/public/img/bmad-dark.png +0 -0
- package/website/public/img/bmad-light.png +0 -0
- package/website/public/img/logo.svg +4 -0
- package/website/public/img/workflow-map.png +0 -0
- package/website/public/robots.txt +37 -0
- package/website/public/workflow-map-diagram.html +361 -0
- package/website/src/components/Banner.astro +59 -0
- package/website/src/components/Header.astro +121 -0
- package/website/src/components/MobileMenuFooter.astro +53 -0
- package/website/src/content/config.ts +6 -0
- package/website/src/lib/site-url.js +25 -0
- package/website/src/pages/404.astro +11 -0
- package/website/src/rehype-base-paths.js +89 -0
- package/website/src/rehype-markdown-links.js +117 -0
- package/website/src/styles/custom.css +500 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -32
- package/.github/workflows/format-check.yaml +0 -42
- package/bmad-core/agent-teams/team-all.yaml +0 -14
- package/bmad-core/agent-teams/team-fullstack.yaml +0 -18
- package/bmad-core/agent-teams/team-ide-minimal.yaml +0 -10
- package/bmad-core/agent-teams/team-no-ui.yaml +0 -13
- package/bmad-core/agents/analyst.md +0 -81
- package/bmad-core/agents/architect.md +0 -83
- package/bmad-core/agents/bmad-master.md +0 -107
- package/bmad-core/agents/bmad-orchestrator.md +0 -149
- package/bmad-core/agents/dev.md +0 -75
- package/bmad-core/agents/pm.md +0 -81
- package/bmad-core/agents/po.md +0 -76
- package/bmad-core/agents/qa.md +0 -88
- package/bmad-core/agents/sm.md +0 -62
- package/bmad-core/agents/ux-expert.md +0 -66
- package/bmad-core/checklists/architect-checklist.md +0 -438
- package/bmad-core/checklists/change-checklist.md +0 -182
- package/bmad-core/checklists/pm-checklist.md +0 -370
- package/bmad-core/checklists/po-master-checklist.md +0 -432
- package/bmad-core/checklists/story-dod-checklist.md +0 -94
- package/bmad-core/checklists/story-draft-checklist.md +0 -153
- package/bmad-core/core-config.yaml +0 -20
- package/bmad-core/data/bmad-kb.md +0 -806
- package/bmad-core/data/brainstorming-techniques.md +0 -36
- package/bmad-core/data/elicitation-methods.md +0 -154
- package/bmad-core/data/technical-preferences.md +0 -3
- package/bmad-core/data/test-levels-framework.md +0 -146
- package/bmad-core/data/test-priorities-matrix.md +0 -172
- package/bmad-core/tasks/advanced-elicitation.md +0 -117
- package/bmad-core/tasks/brownfield-create-epic.md +0 -160
- package/bmad-core/tasks/brownfield-create-story.md +0 -147
- package/bmad-core/tasks/correct-course.md +0 -70
- package/bmad-core/tasks/create-brownfield-story.md +0 -312
- package/bmad-core/tasks/create-deep-research-prompt.md +0 -278
- package/bmad-core/tasks/create-next-story.md +0 -112
- package/bmad-core/tasks/document-project.md +0 -343
- package/bmad-core/tasks/facilitate-brainstorming-session.md +0 -136
- package/bmad-core/tasks/generate-ai-frontend-prompt.md +0 -51
- package/bmad-core/tasks/index-docs.md +0 -173
- package/bmad-core/tasks/kb-mode-interaction.md +0 -75
- package/bmad-core/tasks/nfr-assess.md +0 -343
- package/bmad-core/tasks/qa-gate.md +0 -159
- package/bmad-core/tasks/review-story.md +0 -314
- package/bmad-core/tasks/risk-profile.md +0 -353
- package/bmad-core/tasks/shard-doc.md +0 -185
- package/bmad-core/tasks/test-design.md +0 -174
- package/bmad-core/tasks/trace-requirements.md +0 -264
- package/bmad-core/tasks/validate-next-story.md +0 -134
- package/bmad-core/templates/architecture-tmpl.yaml +0 -650
- package/bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
- package/bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -476
- package/bmad-core/templates/brownfield-prd-tmpl.yaml +0 -280
- package/bmad-core/templates/competitor-analysis-tmpl.yaml +0 -306
- package/bmad-core/templates/front-end-architecture-tmpl.yaml +0 -218
- package/bmad-core/templates/front-end-spec-tmpl.yaml +0 -349
- package/bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -823
- package/bmad-core/templates/market-research-tmpl.yaml +0 -252
- package/bmad-core/templates/prd-tmpl.yaml +0 -202
- package/bmad-core/templates/project-brief-tmpl.yaml +0 -221
- package/bmad-core/templates/qa-gate-tmpl.yaml +0 -102
- package/bmad-core/templates/story-tmpl.yaml +0 -137
- package/bmad-core/workflows/brownfield-fullstack.yaml +0 -297
- package/bmad-core/workflows/brownfield-service.yaml +0 -187
- package/bmad-core/workflows/brownfield-ui.yaml +0 -197
- package/bmad-core/workflows/greenfield-fullstack.yaml +0 -240
- package/bmad-core/workflows/greenfield-service.yaml +0 -206
- package/bmad-core/workflows/greenfield-ui.yaml +0 -235
- package/common/tasks/create-doc.md +0 -101
- package/common/tasks/execute-checklist.md +0 -86
- package/common/utils/bmad-doc-template.md +0 -325
- package/common/utils/workflow-management.md +0 -69
- package/dist/agents/analyst.txt +0 -2889
- package/dist/agents/architect.txt +0 -3552
- package/dist/agents/bmad-master.txt +0 -8769
- package/dist/agents/bmad-orchestrator.txt +0 -1513
- package/dist/agents/dev.txt +0 -414
- package/dist/agents/pm.txt +0 -2204
- package/dist/agents/po.txt +0 -1346
- package/dist/agents/qa.txt +0 -1987
- package/dist/agents/sm.txt +0 -658
- package/dist/agents/ux-expert.txt +0 -694
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +0 -2371
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +0 -1620
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +0 -815
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -10952
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +0 -4012
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +0 -3698
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +0 -450
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +0 -973
- package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -15376
- package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +0 -2075
- package/dist/teams/team-all.txt +0 -12682
- package/dist/teams/team-fullstack.txt +0 -10421
- package/dist/teams/team-ide-minimal.txt +0 -5103
- package/dist/teams/team-no-ui.txt +0 -8980
- package/docs/GUIDING-PRINCIPLES.md +0 -91
- package/docs/core-architecture.md +0 -219
- package/docs/enhanced-ide-development-workflow.md +0 -248
- package/docs/expansion-packs.md +0 -280
- package/docs/how-to-contribute-with-pull-requests.md +0 -158
- package/docs/user-guide.md +0 -504
- package/docs/versioning-and-releases.md +0 -147
- package/docs/versions.md +0 -48
- package/docs/working-in-the-brownfield.md +0 -597
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/Complete AI Agent System - Flowchart.svg +0 -102
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.1 Google Cloud Project Setup/1.1.1 - Initial Project Configuration - bash copy.txt +0 -13
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.1 Google Cloud Project Setup/1.1.1 - Initial Project Configuration - bash.txt +0 -13
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.2 Agent Development Kit Installation/1.2.2 - Basic Project Structure - txt.txt +0 -25
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.3 Core Configuration Files/1.3.1 - settings.py +0 -34
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.3 Core Configuration Files/1.3.2 - main.py - Base Application.py +0 -70
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/PART 1 - Google Cloud Vertex AI Setup Documentation/1.4 Deployment Configuration/1.4.2 - cloudbuild.yaml +0 -26
- package/expansion-packs/Complete AI Agent System - Blank Templates & Google Cloud Setup/README.md +0 -109
- package/expansion-packs/README.md +0 -3
- package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +0 -13
- package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +0 -71
- package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -78
- package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -64
- package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +0 -201
- package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +0 -160
- package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +0 -8
- package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -250
- package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +0 -647
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -110
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +0 -216
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -290
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +0 -613
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +0 -356
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +0 -343
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +0 -253
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +0 -484
- package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +0 -183
- package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +0 -175
- package/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +0 -14
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +0 -80
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +0 -77
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +0 -78
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +0 -65
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +0 -391
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +0 -203
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +0 -201
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +0 -124
- package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +0 -6
- package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +0 -769
- package/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -586
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -110
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +0 -141
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +0 -184
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -290
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +0 -200
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +0 -1030
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +0 -356
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +0 -705
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +0 -256
- package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +0 -484
- package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +0 -183
- package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +0 -175
- package/expansion-packs/bmad-infrastructure-devops/README.md +0 -147
- package/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.md +0 -71
- package/expansion-packs/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +0 -484
- package/expansion-packs/bmad-infrastructure-devops/config.yaml +0 -9
- package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +0 -305
- package/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -159
- package/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -153
- package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +0 -424
- package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +0 -629
- package/release_notes.md +0 -33
- package/tools/builders/web-builder.js +0 -675
- package/tools/bump-all-versions.js +0 -115
- package/tools/bump-expansion-version.js +0 -90
- package/tools/cli.js +0 -152
- package/tools/installer/README.md +0 -8
- package/tools/installer/bin/bmad.js +0 -585
- package/tools/installer/config/ide-agent-config.yaml +0 -58
- package/tools/installer/config/install.config.yaml +0 -123
- package/tools/installer/lib/config-loader.js +0 -257
- package/tools/installer/lib/file-manager.js +0 -389
- package/tools/installer/lib/ide-base-setup.js +0 -228
- package/tools/installer/lib/ide-setup.js +0 -1441
- package/tools/installer/lib/installer.js +0 -1995
- package/tools/installer/lib/memory-profiler.js +0 -225
- package/tools/installer/lib/module-manager.js +0 -114
- package/tools/installer/lib/resource-locator.js +0 -308
- package/tools/installer/package.json +0 -44
- package/tools/lib/dependency-resolver.js +0 -175
- package/tools/lib/yaml-utils.js +0 -29
- package/tools/md-assets/web-agent-startup-instructions.md +0 -39
- package/tools/preview-release-notes.js +0 -66
- package/tools/shared/bannerArt.js +0 -105
- package/tools/sync-installer-version.js +0 -32
- package/tools/update-expansion-version.js +0 -53
- package/tools/upgraders/v3-to-v4-upgrader.js +0 -672
- package/tools/version-bump.js +0 -94
|
@@ -0,0 +1,444 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Getting Started with Test Architect"
|
|
3
|
+
description: Learn Test Architect fundamentals by generating and running tests for an existing demo app in 30 minutes
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Welcome! **Test Architect (TEA) Lite** is the simplest way to get started with TEA - just use the `automate` workflow (e.g., `/automate` in Claude Code) to generate tests for existing features. Perfect for beginners who want to learn TEA fundamentals quickly.
|
|
7
|
+
|
|
8
|
+
## What You'll Build
|
|
9
|
+
|
|
10
|
+
By the end of this 30-minute tutorial, you'll have:
|
|
11
|
+
- A working Playwright test framework
|
|
12
|
+
- Your first risk-based test plan
|
|
13
|
+
- Passing tests for an existing demo app feature
|
|
14
|
+
|
|
15
|
+
:::note[Prerequisites]
|
|
16
|
+
- Node.js installed (v20 or later)
|
|
17
|
+
- 30 minutes of focused time
|
|
18
|
+
- We'll use TodoMVC (<https://todomvc.com/examples/react/dist/>) as our demo app
|
|
19
|
+
:::
|
|
20
|
+
|
|
21
|
+
:::tip[Quick Path]
|
|
22
|
+
Load TEA (`tea`) → scaffold framework (`framework`) → create test plan (`test-design`) → generate tests (`automate`) → run with `npx playwright test`.
|
|
23
|
+
:::
|
|
24
|
+
|
|
25
|
+
## TEA Approaches Explained
|
|
26
|
+
|
|
27
|
+
Before we start, understand the three ways to use TEA:
|
|
28
|
+
|
|
29
|
+
- **TEA Lite** (this tutorial): Beginner using just the `automate` workflow to test existing features
|
|
30
|
+
- **TEA Solo**: Using TEA standalone without full BMad Method integration
|
|
31
|
+
- **TEA Integrated**: Full BMad Method with all TEA workflows across phases
|
|
32
|
+
|
|
33
|
+
This tutorial focuses on **TEA Lite** - the fastest way to see TEA in action.
|
|
34
|
+
|
|
35
|
+
## Step 0: Setup (2 minutes)
|
|
36
|
+
|
|
37
|
+
We'll test TodoMVC, a standard demo app used across testing documentation.
|
|
38
|
+
|
|
39
|
+
**Demo App:** <https://todomvc.com/examples/react/dist/>
|
|
40
|
+
|
|
41
|
+
No installation needed - TodoMVC runs in your browser. Open the link above and:
|
|
42
|
+
1. Add a few todos (type and press Enter)
|
|
43
|
+
2. Mark some as complete (click checkbox)
|
|
44
|
+
3. Try the "All", "Active", "Completed" filters
|
|
45
|
+
|
|
46
|
+
You've just explored the features we'll test!
|
|
47
|
+
|
|
48
|
+
## Step 1: Install BMad and Scaffold Framework (10 minutes)
|
|
49
|
+
|
|
50
|
+
### Install BMad Method
|
|
51
|
+
|
|
52
|
+
Install BMad (see installation guide for latest command).
|
|
53
|
+
|
|
54
|
+
When prompted:
|
|
55
|
+
- **Select modules:** Choose "BMM: BMad Method" (press Space, then Enter)
|
|
56
|
+
- **Project name:** Keep default or enter your project name
|
|
57
|
+
- **Experience level:** Choose "beginner" for this tutorial
|
|
58
|
+
- **Planning artifacts folder:** Keep default
|
|
59
|
+
- **Implementation artifacts folder:** Keep default
|
|
60
|
+
- **Project knowledge folder:** Keep default
|
|
61
|
+
- **Enable TEA Playwright Model Context Protocol (MCP) enhancements?** Choose "No" for now (we'll explore this later)
|
|
62
|
+
- **Using playwright-utils?** Choose "No" for now (we'll explore this later)
|
|
63
|
+
|
|
64
|
+
BMad is now installed! You'll see a `_bmad/` folder in your project.
|
|
65
|
+
|
|
66
|
+
### Load TEA Agent
|
|
67
|
+
|
|
68
|
+
Start a new chat with your AI assistant (Claude, etc.) and type:
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
tea
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
This loads the Test Architect agent. You'll see TEA's menu with available workflows.
|
|
75
|
+
|
|
76
|
+
### Scaffold Test Framework
|
|
77
|
+
|
|
78
|
+
In your chat, run:
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
framework
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
TEA will ask you questions:
|
|
85
|
+
|
|
86
|
+
**Q: What's your tech stack?**
|
|
87
|
+
A: "We're testing a React web application (TodoMVC)"
|
|
88
|
+
|
|
89
|
+
**Q: Which test framework?**
|
|
90
|
+
A: "Playwright"
|
|
91
|
+
|
|
92
|
+
**Q: Testing scope?**
|
|
93
|
+
A: "End-to-end (E2E) testing for a web application"
|
|
94
|
+
|
|
95
|
+
**Q: Continuous integration/continuous deployment (CI/CD) platform?**
|
|
96
|
+
A: "GitHub Actions" (or your preference)
|
|
97
|
+
|
|
98
|
+
TEA will generate:
|
|
99
|
+
- `tests/` directory with Playwright config
|
|
100
|
+
- `playwright.config.ts` with base configuration
|
|
101
|
+
- Sample test structure
|
|
102
|
+
- `.env.example` for environment variables
|
|
103
|
+
- `.nvmrc` for Node version
|
|
104
|
+
|
|
105
|
+
**Verify the setup:**
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
npm install
|
|
109
|
+
npx playwright install
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
You now have a production-ready test framework!
|
|
113
|
+
|
|
114
|
+
## Step 2: Your First Test Design (5 minutes)
|
|
115
|
+
|
|
116
|
+
Test design is where TEA shines - risk-based planning before writing tests.
|
|
117
|
+
|
|
118
|
+
### Run Test Design
|
|
119
|
+
|
|
120
|
+
In your chat with TEA, run:
|
|
121
|
+
|
|
122
|
+
```
|
|
123
|
+
test-design
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**Q: System-level or epic-level?**
|
|
127
|
+
A: "Epic-level - I want to test TodoMVC's basic functionality"
|
|
128
|
+
|
|
129
|
+
**Q: What feature are you testing?**
|
|
130
|
+
A: "TodoMVC's core operations - creating, completing, and deleting todos"
|
|
131
|
+
|
|
132
|
+
**Q: Any specific risks or concerns?**
|
|
133
|
+
A: "We want to ensure the filter buttons (All, Active, Completed) work correctly"
|
|
134
|
+
|
|
135
|
+
TEA will analyze and create `test-design-epic-1.md` with:
|
|
136
|
+
|
|
137
|
+
1. **Risk Assessment**
|
|
138
|
+
- Probability × Impact scoring
|
|
139
|
+
- Risk categories (TECH, SEC, PERF, DATA, BUS, OPS)
|
|
140
|
+
- High-risk areas identified
|
|
141
|
+
|
|
142
|
+
2. **Test Priorities**
|
|
143
|
+
- P0: Critical path (creating and displaying todos)
|
|
144
|
+
- P1: High value (completing todos, filters)
|
|
145
|
+
- P2: Medium value (deleting todos)
|
|
146
|
+
- P3: Low value (edge cases)
|
|
147
|
+
|
|
148
|
+
3. **Coverage Strategy**
|
|
149
|
+
- E2E tests for user workflows
|
|
150
|
+
- Which scenarios need testing
|
|
151
|
+
- Suggested test structure
|
|
152
|
+
|
|
153
|
+
**Review the test design file** - notice how TEA provides a systematic approach to what needs testing and why.
|
|
154
|
+
|
|
155
|
+
## Step 3: Generate Tests for Existing Features (5 minutes)
|
|
156
|
+
|
|
157
|
+
Now the magic happens - TEA generates tests based on your test design.
|
|
158
|
+
|
|
159
|
+
### Run Automate
|
|
160
|
+
|
|
161
|
+
In your chat with TEA, run:
|
|
162
|
+
|
|
163
|
+
```
|
|
164
|
+
automate
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
**Q: What are you testing?**
|
|
168
|
+
A: "TodoMVC React app at <https://todomvc.com/examples/react/dist/> - focus on the test design we just created"
|
|
169
|
+
|
|
170
|
+
**Q: Reference existing docs?**
|
|
171
|
+
A: "Yes, use test-design-epic-1.md"
|
|
172
|
+
|
|
173
|
+
**Q: Any specific test scenarios?**
|
|
174
|
+
A: "Cover the P0 and P1 scenarios from the test design"
|
|
175
|
+
|
|
176
|
+
TEA will generate:
|
|
177
|
+
|
|
178
|
+
**`tests/e2e/todomvc.spec.ts`** with tests like:
|
|
179
|
+
```typescript
|
|
180
|
+
import { test, expect } from '@playwright/test';
|
|
181
|
+
|
|
182
|
+
test.describe('TodoMVC - Core Functionality', () => {
|
|
183
|
+
test.beforeEach(async ({ page }) => {
|
|
184
|
+
await page.goto('https://todomvc.com/examples/react/dist/');
|
|
185
|
+
});
|
|
186
|
+
|
|
187
|
+
test('should create a new todo', async ({ page }) => {
|
|
188
|
+
// TodoMVC uses a simple input without placeholder or test IDs
|
|
189
|
+
const todoInput = page.locator('.new-todo');
|
|
190
|
+
await todoInput.fill('Buy groceries');
|
|
191
|
+
await todoInput.press('Enter');
|
|
192
|
+
|
|
193
|
+
// Verify todo appears in list
|
|
194
|
+
await expect(page.locator('.todo-list li')).toContainText('Buy groceries');
|
|
195
|
+
});
|
|
196
|
+
|
|
197
|
+
test('should mark todo as complete', async ({ page }) => {
|
|
198
|
+
// Create a todo
|
|
199
|
+
const todoInput = page.locator('.new-todo');
|
|
200
|
+
await todoInput.fill('Complete tutorial');
|
|
201
|
+
await todoInput.press('Enter');
|
|
202
|
+
|
|
203
|
+
// Mark as complete using the toggle checkbox
|
|
204
|
+
await page.locator('.todo-list li .toggle').click();
|
|
205
|
+
|
|
206
|
+
// Verify completed state
|
|
207
|
+
await expect(page.locator('.todo-list li')).toHaveClass(/completed/);
|
|
208
|
+
});
|
|
209
|
+
|
|
210
|
+
test('should filter todos by status', async ({ page }) => {
|
|
211
|
+
// Create multiple todos
|
|
212
|
+
const todoInput = page.locator('.new-todo');
|
|
213
|
+
await todoInput.fill('Buy groceries');
|
|
214
|
+
await todoInput.press('Enter');
|
|
215
|
+
await todoInput.fill('Write tests');
|
|
216
|
+
await todoInput.press('Enter');
|
|
217
|
+
|
|
218
|
+
// Complete the first todo ("Buy groceries")
|
|
219
|
+
await page.locator('.todo-list li .toggle').first().click();
|
|
220
|
+
|
|
221
|
+
// Test Active filter (shows only incomplete todos)
|
|
222
|
+
await page.locator('.filters a[href="#/active"]').click();
|
|
223
|
+
await expect(page.locator('.todo-list li')).toHaveCount(1);
|
|
224
|
+
await expect(page.locator('.todo-list li')).toContainText('Write tests');
|
|
225
|
+
|
|
226
|
+
// Test Completed filter (shows only completed todos)
|
|
227
|
+
await page.locator('.filters a[href="#/completed"]').click();
|
|
228
|
+
await expect(page.locator('.todo-list li')).toHaveCount(1);
|
|
229
|
+
await expect(page.locator('.todo-list li')).toContainText('Buy groceries');
|
|
230
|
+
});
|
|
231
|
+
});
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
TEA also creates:
|
|
235
|
+
- **`tests/README.md`** - How to run tests, project conventions
|
|
236
|
+
- **Definition of Done summary** - What makes a test "good"
|
|
237
|
+
|
|
238
|
+
### With Playwright Utils (Optional Enhancement)
|
|
239
|
+
|
|
240
|
+
If you have `tea_use_playwright_utils: true` in your config, TEA generates tests using production-ready utilities:
|
|
241
|
+
|
|
242
|
+
**Vanilla Playwright:**
|
|
243
|
+
```typescript
|
|
244
|
+
test('should mark todo as complete', async ({ page, request }) => {
|
|
245
|
+
// Manual API call
|
|
246
|
+
const response = await request.post('/api/todos', {
|
|
247
|
+
data: { title: 'Complete tutorial' }
|
|
248
|
+
});
|
|
249
|
+
const todo = await response.json();
|
|
250
|
+
|
|
251
|
+
await page.goto('/');
|
|
252
|
+
await page.locator(`.todo-list li:has-text("${todo.title}") .toggle`).click();
|
|
253
|
+
await expect(page.locator('.todo-list li')).toHaveClass(/completed/);
|
|
254
|
+
});
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
**With Playwright Utils:**
|
|
258
|
+
```typescript
|
|
259
|
+
import { test } from '@seontechnologies/playwright-utils/api-request/fixtures';
|
|
260
|
+
import { expect } from '@playwright/test';
|
|
261
|
+
|
|
262
|
+
test('should mark todo as complete', async ({ page, apiRequest }) => {
|
|
263
|
+
// Typed API call with cleaner syntax
|
|
264
|
+
const { status, body: todo } = await apiRequest({
|
|
265
|
+
method: 'POST',
|
|
266
|
+
path: '/api/todos',
|
|
267
|
+
body: { title: 'Complete tutorial' }
|
|
268
|
+
});
|
|
269
|
+
|
|
270
|
+
expect(status).toBe(201);
|
|
271
|
+
await page.goto('/');
|
|
272
|
+
await page.locator(`.todo-list li:has-text("${todo.title}") .toggle`).click();
|
|
273
|
+
await expect(page.locator('.todo-list li')).toHaveClass(/completed/);
|
|
274
|
+
});
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
**Benefits:**
|
|
278
|
+
- Type-safe API responses (`{ status, body }`)
|
|
279
|
+
- Automatic retry for 5xx errors
|
|
280
|
+
- Built-in schema validation
|
|
281
|
+
- Cleaner, more maintainable code
|
|
282
|
+
|
|
283
|
+
See [Integrate Playwright Utils](/docs/tea/how-to/customization/integrate-playwright-utils.md) to enable this.
|
|
284
|
+
|
|
285
|
+
## Step 4: Run and Validate (5 minutes)
|
|
286
|
+
|
|
287
|
+
Time to see your tests in action!
|
|
288
|
+
|
|
289
|
+
### Run the Tests
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
npx playwright test
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
You should see:
|
|
296
|
+
```
|
|
297
|
+
Running 3 tests using 1 worker
|
|
298
|
+
|
|
299
|
+
✓ tests/e2e/todomvc.spec.ts:7:3 › should create a new todo (2s)
|
|
300
|
+
✓ tests/e2e/todomvc.spec.ts:15:3 › should mark todo as complete (2s)
|
|
301
|
+
✓ tests/e2e/todomvc.spec.ts:30:3 › should filter todos by status (3s)
|
|
302
|
+
|
|
303
|
+
3 passed (7s)
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
All green! Your tests are passing against the existing TodoMVC app.
|
|
307
|
+
|
|
308
|
+
### View Test Report
|
|
309
|
+
|
|
310
|
+
```bash
|
|
311
|
+
npx playwright show-report
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
Opens a beautiful HTML report showing:
|
|
315
|
+
- Test execution timeline
|
|
316
|
+
- Screenshots (if any failures)
|
|
317
|
+
- Trace viewer for debugging
|
|
318
|
+
|
|
319
|
+
### What Just Happened?
|
|
320
|
+
|
|
321
|
+
You used **TEA Lite** to:
|
|
322
|
+
1. Scaffold a production-ready test framework (`framework`)
|
|
323
|
+
2. Create a risk-based test plan (`test-design`)
|
|
324
|
+
3. Generate comprehensive tests (`automate`)
|
|
325
|
+
4. Run tests against an existing application
|
|
326
|
+
|
|
327
|
+
All in 30 minutes!
|
|
328
|
+
|
|
329
|
+
## What You Learned
|
|
330
|
+
|
|
331
|
+
Congratulations! You've completed the TEA Lite tutorial. You learned:
|
|
332
|
+
|
|
333
|
+
### Quick Reference
|
|
334
|
+
|
|
335
|
+
| Command | Purpose |
|
|
336
|
+
| -------------- | ------------------------------------ |
|
|
337
|
+
| `tea` | Load the TEA agent |
|
|
338
|
+
| `framework` | Scaffold test infrastructure |
|
|
339
|
+
| `test-design` | Risk-based test planning |
|
|
340
|
+
| `automate` | Generate tests for existing features |
|
|
341
|
+
|
|
342
|
+
### TEA Principles
|
|
343
|
+
- **Risk-based testing** - Depth scales with impact (P0 vs P3)
|
|
344
|
+
- **Test design first** - Plan before generating
|
|
345
|
+
- **Network-first patterns** - Tests wait for actual responses (no hard waits)
|
|
346
|
+
- **Production-ready from day one** - Not toy examples
|
|
347
|
+
|
|
348
|
+
:::tip[Key Takeaway]
|
|
349
|
+
TEA Lite (just `automate`) is perfect for beginners learning TEA fundamentals, testing existing applications, quick test coverage expansion, and teams wanting fast results.
|
|
350
|
+
:::
|
|
351
|
+
|
|
352
|
+
## Understanding ATDD vs Automate
|
|
353
|
+
|
|
354
|
+
This tutorial used the `automate` workflow to generate tests for **existing features** (tests pass immediately).
|
|
355
|
+
|
|
356
|
+
**When to use `automate`:**
|
|
357
|
+
- Feature already exists
|
|
358
|
+
- Want to add test coverage
|
|
359
|
+
- Tests should pass on first run
|
|
360
|
+
|
|
361
|
+
**When to use `atdd` (Acceptance Test-Driven Development):**
|
|
362
|
+
- Feature doesn't exist yet (Test-Driven Development workflow)
|
|
363
|
+
- Want failing tests BEFORE implementation
|
|
364
|
+
- Following red → green → refactor cycle
|
|
365
|
+
|
|
366
|
+
See [How to Run ATDD](/docs/tea/how-to/workflows/run-atdd.md) for the test-drive development (TDD) approach.
|
|
367
|
+
|
|
368
|
+
## Next Steps
|
|
369
|
+
|
|
370
|
+
### Level Up Your TEA Skills
|
|
371
|
+
|
|
372
|
+
**How-To Guides** (task-oriented):
|
|
373
|
+
- [How to Run Test Design](/docs/tea/how-to/workflows/run-test-design.md) - Deep dive into risk assessment
|
|
374
|
+
- [How to Run ATDD](/docs/tea/how-to/workflows/run-atdd.md) - Generate failing tests first (TDD)
|
|
375
|
+
- [How to Set Up CI Pipeline](/docs/tea/how-to/workflows/setup-ci.md) - Automate test execution
|
|
376
|
+
- [How to Review Test Quality](/docs/tea/how-to/workflows/run-test-review.md) - Audit test quality
|
|
377
|
+
|
|
378
|
+
**Explanation** (understanding-oriented):
|
|
379
|
+
- [TEA Overview](/docs/tea/explanation/tea-overview.md) - Complete TEA capabilities
|
|
380
|
+
- [Testing as Engineering](/docs/tea/explanation/testing-as-engineering.md) - **Why TEA exists** (problem + solution)
|
|
381
|
+
- [Risk-Based Testing](/docs/tea/explanation/risk-based-testing.md) - How risk scoring works
|
|
382
|
+
|
|
383
|
+
**Reference** (quick lookup):
|
|
384
|
+
- [TEA Command Reference](/docs/tea/reference/commands.md) - All 8 TEA workflows
|
|
385
|
+
- [TEA Configuration](/docs/tea/reference/configuration.md) - Config options
|
|
386
|
+
- [Glossary](/docs/tea/glossary/index.md) - TEA terminology
|
|
387
|
+
|
|
388
|
+
### Try TEA Solo
|
|
389
|
+
|
|
390
|
+
Ready for standalone usage without full BMad Method? Use TEA Solo:
|
|
391
|
+
- Run any TEA workflow independently
|
|
392
|
+
- Bring your own requirements
|
|
393
|
+
- Use on non-BMad projects
|
|
394
|
+
|
|
395
|
+
See [TEA Overview](/docs/tea/explanation/tea-overview.md) for engagement models.
|
|
396
|
+
|
|
397
|
+
### Go Full TEA Integrated
|
|
398
|
+
|
|
399
|
+
Want the complete quality operating model? Try TEA Integrated with BMad Method:
|
|
400
|
+
- Phase 2: Planning with non-functional requirements (NFR) assessment
|
|
401
|
+
- Phase 3: Architecture testability review
|
|
402
|
+
- Phase 4: Per-epic test design → `atdd` → `automate`
|
|
403
|
+
- Release Gate: Coverage traceability and gate decisions
|
|
404
|
+
|
|
405
|
+
See [BMad Method Documentation](/) for the full workflow.
|
|
406
|
+
|
|
407
|
+
## Common Questions
|
|
408
|
+
|
|
409
|
+
- [Why can't my tests find elements?](#why-cant-my-tests-find-elements)
|
|
410
|
+
- [How do I fix network timeouts?](#how-do-i-fix-network-timeouts)
|
|
411
|
+
|
|
412
|
+
### Why can't my tests find elements?
|
|
413
|
+
|
|
414
|
+
TodoMVC doesn't use test IDs or accessible roles consistently. The selectors in this tutorial use CSS classes that match TodoMVC's actual structure:
|
|
415
|
+
|
|
416
|
+
```typescript
|
|
417
|
+
// TodoMVC uses these CSS classes:
|
|
418
|
+
page.locator('.new-todo') // Input field
|
|
419
|
+
page.locator('.todo-list li') // Todo items
|
|
420
|
+
page.locator('.toggle') // Checkbox
|
|
421
|
+
|
|
422
|
+
// If testing your own app, prefer accessible selectors:
|
|
423
|
+
page.getByRole('textbox')
|
|
424
|
+
page.getByRole('listitem')
|
|
425
|
+
page.getByRole('checkbox')
|
|
426
|
+
```
|
|
427
|
+
|
|
428
|
+
In production code, use accessible selectors (`getByRole`, `getByLabel`, `getByText`) for better resilience. TodoMVC is used here for learning, not as a selector best practice example.
|
|
429
|
+
|
|
430
|
+
### How do I fix network timeouts?
|
|
431
|
+
|
|
432
|
+
Increase timeout in `playwright.config.ts`:
|
|
433
|
+
|
|
434
|
+
```typescript
|
|
435
|
+
use: {
|
|
436
|
+
timeout: 30000, // 30 seconds
|
|
437
|
+
}
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
## Getting Help
|
|
441
|
+
|
|
442
|
+
- **Documentation:** <https://docs.bmad-method.org>
|
|
443
|
+
- **GitHub Issues:** <https://github.com/bmad-code-org/bmad-method/issues>
|
|
444
|
+
- **Discord:** Join the BMAD community
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Getting Started"
|
|
3
|
+
description: Install BMad and build your first project
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Build software faster using AI-powered workflows with specialized agents that guide you through planning, architecture, and implementation.
|
|
7
|
+
|
|
8
|
+
## What You'll Learn
|
|
9
|
+
|
|
10
|
+
- Install and initialize BMad Method for a new project
|
|
11
|
+
- Choose the right planning track for your project size
|
|
12
|
+
- Progress through phases from requirements to working code
|
|
13
|
+
- Use agents and workflows effectively
|
|
14
|
+
|
|
15
|
+
:::note[Prerequisites]
|
|
16
|
+
- **Node.js 20+** — Required for the installer
|
|
17
|
+
- **Git** — Recommended for version control
|
|
18
|
+
- **AI-powered IDE** — Claude Code, Cursor, Windsurf, or similar
|
|
19
|
+
- **A project idea** — Even a simple one works for learning
|
|
20
|
+
:::
|
|
21
|
+
|
|
22
|
+
:::tip[Quick Path]
|
|
23
|
+
**Install** → `npx bmad-method install`
|
|
24
|
+
**Plan** → PM creates PRD, Architect creates architecture
|
|
25
|
+
**Build** → SM manages sprints, DEV implements stories
|
|
26
|
+
**Fresh chats** for each workflow to avoid context issues.
|
|
27
|
+
:::
|
|
28
|
+
|
|
29
|
+
## Understanding BMad
|
|
30
|
+
|
|
31
|
+
BMad helps you build software through guided workflows with specialized AI agents. The process follows four phases:
|
|
32
|
+
|
|
33
|
+
| Phase | Name | What Happens |
|
|
34
|
+
| ----- | -------------- | --------------------------------------------------- |
|
|
35
|
+
| 1 | Analysis | Brainstorming, research, product brief *(optional)* |
|
|
36
|
+
| 2 | Planning | Create requirements (PRD or tech-spec) |
|
|
37
|
+
| 3 | Solutioning | Design architecture *(BMad Method/Enterprise only)* |
|
|
38
|
+
| 4 | Implementation | Build epic by epic, story by story |
|
|
39
|
+
|
|
40
|
+
**[Open the Workflow Map](/docs/reference/workflow-map.md)** to explore phases, workflows, and context management.
|
|
41
|
+
|
|
42
|
+
Based on your project's complexity, BMad offers three planning tracks:
|
|
43
|
+
|
|
44
|
+
| Track | Best For | Documents Created |
|
|
45
|
+
| --------------- | ------------------------------------------------------ | -------------------------------------- |
|
|
46
|
+
| **Quick Flow** | Bug fixes, simple features, clear scope (1-15 stories) | Tech-spec only |
|
|
47
|
+
| **BMad Method** | Products, platforms, complex features (10-50+ stories) | PRD + Architecture + UX |
|
|
48
|
+
| **Enterprise** | Compliance, multi-tenant systems (30+ stories) | PRD + Architecture + Security + DevOps |
|
|
49
|
+
|
|
50
|
+
:::note
|
|
51
|
+
Story counts are guidance, not definitions. Choose your track based on planning needs, not story math.
|
|
52
|
+
:::
|
|
53
|
+
|
|
54
|
+
## Installation
|
|
55
|
+
|
|
56
|
+
Open a terminal in your project directory and run:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
npx bmad-method install
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
When prompted to select modules, choose **BMad Method**.
|
|
63
|
+
|
|
64
|
+
The installer creates two folders:
|
|
65
|
+
- `_bmad/` — agents, workflows, tasks, and configuration
|
|
66
|
+
- `_bmad-output/` — empty for now, but this is where your artifacts will be saved
|
|
67
|
+
|
|
68
|
+
Open your AI IDE in the project folder. Run the `help` workflow (`/bmad-help` on most platforms) to see what to do next — it detects what you've completed and recommends the next step.
|
|
69
|
+
|
|
70
|
+
:::caution[Fresh Chats]
|
|
71
|
+
Always start a fresh chat for each workflow. This prevents context limitations from causing issues.
|
|
72
|
+
:::
|
|
73
|
+
|
|
74
|
+
## Step 1: Create Your Plan
|
|
75
|
+
|
|
76
|
+
Work through phases 1-3. **Use fresh chats for each workflow.**
|
|
77
|
+
|
|
78
|
+
### Phase 1: Analysis (Optional)
|
|
79
|
+
|
|
80
|
+
All workflows in this phase are optional:
|
|
81
|
+
- **brainstorming** — Guided ideation
|
|
82
|
+
- **research** — Market and technical research
|
|
83
|
+
- **create-product-brief** — Recommended foundation document
|
|
84
|
+
|
|
85
|
+
### Phase 2: Planning (Required)
|
|
86
|
+
|
|
87
|
+
**For BMad Method and Enterprise tracks:**
|
|
88
|
+
1. Load the **PM agent** in a new chat
|
|
89
|
+
2. Run the `prd` workflow
|
|
90
|
+
3. Output: `PRD.md`
|
|
91
|
+
|
|
92
|
+
**For Quick Flow track:**
|
|
93
|
+
- Use the `quick-spec` workflow instead of PRD, then skip to implementation
|
|
94
|
+
|
|
95
|
+
:::note[UX Design (Optional)]
|
|
96
|
+
If your project has a user interface, load the **UX-Designer agent** and run the UX design workflow after creating your PRD.
|
|
97
|
+
:::
|
|
98
|
+
|
|
99
|
+
### Phase 3: Solutioning (BMad Method/Enterprise)
|
|
100
|
+
|
|
101
|
+
**Create Architecture**
|
|
102
|
+
1. Load the **Architect agent** in a new chat
|
|
103
|
+
2. Run `create-architecture`
|
|
104
|
+
3. Output: Architecture document with technical decisions
|
|
105
|
+
|
|
106
|
+
**Create Epics and Stories**
|
|
107
|
+
|
|
108
|
+
:::tip[V6 Improvement]
|
|
109
|
+
Epics and stories are now created *after* architecture. This produces better quality stories because architecture decisions (database, API patterns, tech stack) directly affect how work should be broken down.
|
|
110
|
+
:::
|
|
111
|
+
|
|
112
|
+
1. Load the **PM agent** in a new chat
|
|
113
|
+
2. Run `create-epics-and-stories`
|
|
114
|
+
3. The workflow uses both PRD and Architecture to create technically-informed stories
|
|
115
|
+
|
|
116
|
+
**Implementation Readiness Check** *(Highly Recommended)*
|
|
117
|
+
1. Load the **Architect agent** in a new chat
|
|
118
|
+
2. Run `check-implementation-readiness`
|
|
119
|
+
3. Validates cohesion across all planning documents
|
|
120
|
+
|
|
121
|
+
## Step 2: Build Your Project
|
|
122
|
+
|
|
123
|
+
Once planning is complete, move to implementation. **Each workflow should run in a fresh chat.**
|
|
124
|
+
|
|
125
|
+
### Initialize Sprint Planning
|
|
126
|
+
|
|
127
|
+
Load the **SM agent** and run `sprint-planning`. This creates `sprint-status.yaml` to track all epics and stories.
|
|
128
|
+
|
|
129
|
+
### The Build Cycle
|
|
130
|
+
|
|
131
|
+
For each story, repeat this cycle with fresh chats:
|
|
132
|
+
|
|
133
|
+
| Step | Agent | Workflow | Purpose |
|
|
134
|
+
| ---- | ----- | -------------- | ---------------------------------- |
|
|
135
|
+
| 1 | SM | `create-story` | Create story file from epic |
|
|
136
|
+
| 2 | DEV | `dev-story` | Implement the story |
|
|
137
|
+
| 3 | DEV | `code-review` | Quality validation *(recommended)* |
|
|
138
|
+
|
|
139
|
+
After completing all stories in an epic, load the **SM agent** and run `retrospective`.
|
|
140
|
+
|
|
141
|
+
## What You've Accomplished
|
|
142
|
+
|
|
143
|
+
You've learned the foundation of building with BMad:
|
|
144
|
+
|
|
145
|
+
- Installed BMad and configured it for your IDE
|
|
146
|
+
- Initialized a project with your chosen planning track
|
|
147
|
+
- Created planning documents (PRD, Architecture, Epics & Stories)
|
|
148
|
+
- Understood the build cycle for implementation
|
|
149
|
+
|
|
150
|
+
Your project now has:
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
your-project/
|
|
154
|
+
├── _bmad/ # BMad configuration
|
|
155
|
+
├── _bmad-output/
|
|
156
|
+
│ ├── PRD.md # Your requirements document
|
|
157
|
+
│ ├── architecture.md # Technical decisions
|
|
158
|
+
│ ├── epics/ # Epic and story files
|
|
159
|
+
│ └── sprint-status.yaml # Sprint tracking
|
|
160
|
+
└── ...
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## Quick Reference
|
|
164
|
+
|
|
165
|
+
| Workflow | Agent | Purpose |
|
|
166
|
+
| -------------------------------- | --------- | ------------------------------------ |
|
|
167
|
+
| `help` | Any | Get guidance on what to do next |
|
|
168
|
+
| `prd` | PM | Create Product Requirements Document |
|
|
169
|
+
| `create-architecture` | Architect | Create architecture document |
|
|
170
|
+
| `create-epics-and-stories` | PM | Break down PRD into epics |
|
|
171
|
+
| `check-implementation-readiness` | Architect | Validate planning cohesion |
|
|
172
|
+
| `sprint-planning` | SM | Initialize sprint tracking |
|
|
173
|
+
| `create-story` | SM | Create a story file |
|
|
174
|
+
| `dev-story` | DEV | Implement a story |
|
|
175
|
+
| `code-review` | DEV | Review implemented code |
|
|
176
|
+
|
|
177
|
+
## Common Questions
|
|
178
|
+
|
|
179
|
+
**Do I always need architecture?**
|
|
180
|
+
Only for BMad Method and Enterprise tracks. Quick Flow skips from tech-spec to implementation.
|
|
181
|
+
|
|
182
|
+
**Can I change my plan later?**
|
|
183
|
+
Yes. The SM agent has a `correct-course` workflow for handling scope changes.
|
|
184
|
+
|
|
185
|
+
**What if I want to brainstorm first?**
|
|
186
|
+
Load the Analyst agent and run `brainstorming` before starting your PRD.
|
|
187
|
+
|
|
188
|
+
**Do I need to follow a strict order?**
|
|
189
|
+
Not strictly. Once you learn the flow, you can run workflows directly using the Quick Reference above.
|
|
190
|
+
|
|
191
|
+
## Getting Help
|
|
192
|
+
|
|
193
|
+
- **During workflows** — Agents guide you with questions and explanations
|
|
194
|
+
- **Community** — [Discord](https://discord.gg/gk8jAdXWmj) (#bmad-method-help, #report-bugs-and-issues)
|
|
195
|
+
- **Stuck?** — Run `help` to see what to do next
|
|
196
|
+
|
|
197
|
+
## Key Takeaways
|
|
198
|
+
|
|
199
|
+
:::tip[Remember These]
|
|
200
|
+
- **Always use fresh chats** — Start a new chat for each workflow
|
|
201
|
+
- **Track matters** — Quick Flow uses quick-spec; Method/Enterprise need PRD and architecture
|
|
202
|
+
- **Use `help` when stuck** — It detects your progress and suggests next steps
|
|
203
|
+
:::
|
|
204
|
+
|
|
205
|
+
Ready to start? Install BMad and let the agents guide you through your first project.
|