@sleighmaster/bmad 1.1.2 → 1.2.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/data/_bmad/.custom-files.json +68 -0
- package/data/_bmad/_config/agent-manifest.csv +11 -0
- package/data/_bmad/_config/agents/bmm-analyst.customize.yaml +41 -0
- package/data/_bmad/_config/agents/bmm-architect.customize.yaml +41 -0
- package/data/_bmad/_config/agents/bmm-dev.customize.yaml +41 -0
- package/data/_bmad/_config/agents/bmm-pm.customize.yaml +41 -0
- package/data/_bmad/_config/agents/bmm-quick-flow-solo-dev.customize.yaml +41 -0
- package/data/_bmad/_config/agents/bmm-quinn.customize.yaml +41 -0
- package/data/_bmad/_config/agents/bmm-sm.customize.yaml +41 -0
- package/data/_bmad/_config/agents/bmm-tech-writer.customize.yaml +41 -0
- package/data/_bmad/_config/agents/bmm-ux-designer.customize.yaml +41 -0
- package/data/_bmad/_config/agents/core-bmad-master.customize.yaml +41 -0
- package/data/_bmad/_config/bmad-help.csv +40 -0
- package/data/_bmad/_config/files-manifest.csv +216 -0
- package/data/_bmad/_config/manifest.yaml +21 -0
- package/data/_bmad/_config/task-manifest.csv +9 -0
- package/data/_bmad/_config/tool-manifest.csv +1 -0
- package/data/_bmad/_config/workflow-manifest.csv +25 -0
- package/data/_bmad/bmm/agents/analyst.md +76 -0
- package/data/_bmad/bmm/agents/architect.md +58 -0
- package/data/_bmad/bmm/agents/dev.md +81 -0
- package/data/_bmad/bmm/agents/pm.md +72 -0
- package/data/_bmad/bmm/agents/quick-flow-solo-dev.md +69 -0
- package/data/_bmad/bmm/agents/quinn.md +92 -0
- package/data/_bmad/bmm/agents/sm.md +96 -0
- package/data/_bmad/bmm/agents/tech-writer/tech-writer.md +70 -0
- package/data/_bmad/bmm/agents/ux-designer.md +57 -0
- package/data/_bmad/bmm/config.yaml +17 -0
- package/data/_bmad/bmm/data/github-templates/.github/ISSUE_TEMPLATE/bug.md +43 -0
- package/data/_bmad/bmm/data/github-templates/.github/ISSUE_TEMPLATE/story.md +30 -0
- package/data/_bmad/bmm/data/github-templates/.github/PULL_REQUEST_TEMPLATE.md +41 -0
- package/data/_bmad/bmm/data/github-templates/.github/workflows/release-on-tag.yml +52 -0
- package/data/_bmad/bmm/data/project-context-template.md +26 -0
- package/data/_bmad/bmm/module-help.csv +32 -0
- package/data/_bmad/bmm/teams/default-party.csv +20 -0
- package/data/_bmad/bmm/teams/team-fullstack.yaml +12 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +177 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +161 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +199 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +202 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +205 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +219 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +162 -0
- package/data/_bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md +58 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +443 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +200 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +475 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/research.template.md +29 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +239 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +486 -0
- package/data/_bmad/bmm/workflows/1-analysis/research/workflow.md +173 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +13 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +197 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv +11 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md +191 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md +153 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +224 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +226 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +213 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +207 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +226 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +237 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +228 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +231 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +242 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +217 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +124 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +247 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +249 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md +253 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md +168 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +218 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +191 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +209 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +174 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +228 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +217 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +263 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +209 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +242 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +231 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md +10 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/validation-report-prd-workflow.md +433 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-prd/workflow.md +150 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +171 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
- package/data/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +43 -0
- package/data/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +190 -0
- package/data/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +178 -0
- package/data/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +179 -0
- package/data/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +139 -0
- package/data/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +252 -0
- package/data/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +135 -0
- package/data/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
- package/data/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +55 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +11 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +164 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +331 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +76 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-architecture/workflow.md +50 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +261 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +170 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
- package/data/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +59 -0
- package/data/_bmad/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
- package/data/_bmad/bmm/workflows/4-implementation/code-review/instructions.xml +227 -0
- package/data/_bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +51 -0
- package/data/_bmad/bmm/workflows/4-implementation/correct-course/checklist.md +288 -0
- package/data/_bmad/bmm/workflows/4-implementation/correct-course/instructions.md +206 -0
- package/data/_bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +59 -0
- package/data/_bmad/bmm/workflows/4-implementation/create-story/checklist.md +358 -0
- package/data/_bmad/bmm/workflows/4-implementation/create-story/instructions.xml +416 -0
- package/data/_bmad/bmm/workflows/4-implementation/create-story/template.md +60 -0
- package/data/_bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +60 -0
- package/data/_bmad/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
- package/data/_bmad/bmm/workflows/4-implementation/dev-story/instructions.xml +531 -0
- package/data/_bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +25 -0
- package/data/_bmad/bmm/workflows/4-implementation/import-issue/checklist.md +85 -0
- package/data/_bmad/bmm/workflows/4-implementation/import-issue/instructions.xml +402 -0
- package/data/_bmad/bmm/workflows/4-implementation/import-issue/workflow.yaml +42 -0
- package/data/_bmad/bmm/workflows/4-implementation/retrospective/instructions.md +1443 -0
- package/data/_bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +58 -0
- package/data/_bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
- package/data/_bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +225 -0
- package/data/_bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
- package/data/_bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +54 -0
- package/data/_bmad/bmm/workflows/4-implementation/sprint-status/instructions.md +229 -0
- package/data/_bmad/bmm/workflows/4-implementation/sprint-status/workflow.yaml +35 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +176 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +120 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +113 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +113 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +106 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +149 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +50 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +192 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +145 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +128 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +201 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +74 -0
- package/data/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +79 -0
- package/data/_bmad/bmm/workflows/document-project/checklist.md +245 -0
- package/data/_bmad/bmm/workflows/document-project/documentation-requirements.csv +12 -0
- package/data/_bmad/bmm/workflows/document-project/instructions.md +221 -0
- package/data/_bmad/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
- package/data/_bmad/bmm/workflows/document-project/templates/index-template.md +169 -0
- package/data/_bmad/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
- package/data/_bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
- package/data/_bmad/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
- package/data/_bmad/bmm/workflows/document-project/workflow.yaml +28 -0
- package/data/_bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
- package/data/_bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
- package/data/_bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
- package/data/_bmad/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +90 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +127 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +39 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +130 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +26 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +43 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +141 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +26 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +49 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +241 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +26 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +38 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +133 -0
- package/data/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +26 -0
- package/data/_bmad/bmm/workflows/github-release/instructions.xml +183 -0
- package/data/_bmad/bmm/workflows/github-release/workflow.yaml +17 -0
- package/data/_bmad/bmm/workflows/github-setup/instructions.xml +241 -0
- package/data/_bmad/bmm/workflows/github-setup/workflow.yaml +13 -0
- package/data/_bmad/bmm/workflows/qa/automate/checklist.md +33 -0
- package/data/_bmad/bmm/workflows/qa/automate/instructions.md +110 -0
- package/data/_bmad/bmm/workflows/qa/automate/workflow.yaml +47 -0
- package/data/_bmad/core/agents/bmad-master.md +56 -0
- package/data/_bmad/core/config.yaml +9 -0
- package/data/_bmad/core/module-help.csv +9 -0
- package/data/_bmad/core/resources/excalidraw/README.md +160 -0
- package/data/_bmad/core/resources/excalidraw/excalidraw-helpers.md +127 -0
- package/data/_bmad/core/resources/excalidraw/library-loader.md +50 -0
- package/data/_bmad/core/resources/excalidraw/validate-json-instructions.md +79 -0
- package/data/_bmad/core/tasks/editorial-review-prose.xml +100 -0
- package/data/_bmad/core/tasks/editorial-review-structure.xml +209 -0
- package/data/_bmad/core/tasks/help.md +62 -0
- package/data/_bmad/core/tasks/index-docs.xml +65 -0
- package/data/_bmad/core/tasks/review-adversarial-general.xml +48 -0
- package/data/_bmad/core/tasks/shard-doc.xml +109 -0
- package/data/_bmad/core/tasks/workflow.xml +235 -0
- package/data/_bmad/core/workflows/advanced-elicitation/methods.csv +51 -0
- package/data/_bmad/core/workflows/advanced-elicitation/workflow.xml +117 -0
- package/data/_bmad/core/workflows/brainstorming/brain-methods.csv +62 -0
- package/data/_bmad/core/workflows/brainstorming/steps/step-01-session-setup.md +197 -0
- package/data/_bmad/core/workflows/brainstorming/steps/step-01b-continue.md +122 -0
- package/data/_bmad/core/workflows/brainstorming/steps/step-02a-user-selected.md +225 -0
- package/data/_bmad/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +237 -0
- package/data/_bmad/core/workflows/brainstorming/steps/step-02c-random-selection.md +209 -0
- package/data/_bmad/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +264 -0
- package/data/_bmad/core/workflows/brainstorming/steps/step-03-technique-execution.md +399 -0
- package/data/_bmad/core/workflows/brainstorming/steps/step-04-idea-organization.md +303 -0
- package/data/_bmad/core/workflows/brainstorming/template.md +15 -0
- package/data/_bmad/core/workflows/brainstorming/workflow.md +58 -0
- package/data/_bmad/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -0
- package/data/_bmad/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +187 -0
- package/data/_bmad/core/workflows/party-mode/steps/step-03-graceful-exit.md +157 -0
- package/data/_bmad/core/workflows/party-mode/workflow.md +194 -0
- package/data/_bmad/hooks/commit-msg +61 -0
- package/data/_bmad/hooks/install-hooks.ps1 +85 -0
- package/data/_bmad/hooks/pre-commit +28 -0
- package/data/claude-commands/bmad-agent-bmad-master.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-analyst.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-architect.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-dev.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-pm.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-quick-flow-solo-dev.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-quinn.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-sm.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-tech-writer.md +15 -0
- package/data/claude-commands/bmad-agent-bmm-ux-designer.md +15 -0
- package/data/claude-commands/bmad-bmm-check-implementation-readiness.md +6 -0
- package/data/claude-commands/bmad-bmm-code-review.md +14 -0
- package/data/claude-commands/bmad-bmm-correct-course.md +14 -0
- package/data/claude-commands/bmad-bmm-create-architecture.md +6 -0
- package/data/claude-commands/bmad-bmm-create-epics-and-stories.md +6 -0
- package/data/claude-commands/bmad-bmm-create-excalidraw-dataflow.md +14 -0
- package/data/claude-commands/bmad-bmm-create-excalidraw-diagram.md +14 -0
- package/data/claude-commands/bmad-bmm-create-excalidraw-flowchart.md +14 -0
- package/data/claude-commands/bmad-bmm-create-excalidraw-wireframe.md +14 -0
- package/data/claude-commands/bmad-bmm-create-prd.md +6 -0
- package/data/claude-commands/bmad-bmm-create-product-brief.md +6 -0
- package/data/claude-commands/bmad-bmm-create-story.md +14 -0
- package/data/claude-commands/bmad-bmm-create-ux-design.md +6 -0
- package/data/claude-commands/bmad-bmm-dev-story.md +14 -0
- package/data/claude-commands/bmad-bmm-document-project.md +14 -0
- package/data/claude-commands/bmad-bmm-github-release.md +12 -0
- package/data/claude-commands/bmad-bmm-github-setup.md +12 -0
- package/data/claude-commands/bmad-bmm-qa-automate.md +14 -0
- package/data/claude-commands/bmad-bmm-quick-dev.md +6 -0
- package/data/claude-commands/bmad-bmm-quick-spec.md +6 -0
- package/data/claude-commands/bmad-bmm-research.md +6 -0
- package/data/claude-commands/bmad-bmm-retrospective.md +14 -0
- package/data/claude-commands/bmad-bmm-sprint-planning.md +14 -0
- package/data/claude-commands/bmad-bmm-sprint-status.md +14 -0
- package/data/claude-commands/bmad-brainstorming.md +6 -0
- package/data/claude-commands/bmad-editorial-review-prose.md +9 -0
- package/data/claude-commands/bmad-editorial-review-structure.md +10 -0
- package/data/claude-commands/bmad-help.md +9 -0
- package/data/claude-commands/bmad-index-docs.md +9 -0
- package/data/claude-commands/bmad-party-mode.md +6 -0
- package/data/claude-commands/bmad-review-adversarial-general.md +9 -0
- package/data/claude-commands/bmad-shard-doc.md +9 -0
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +67 -50
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +41 -37
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +54 -94
- package/dist/commands/update.js.map +1 -1
- package/dist/services/installer.d.ts +2 -3
- package/dist/services/installer.d.ts.map +1 -1
- package/dist/services/installer.js +42 -39
- package/dist/services/installer.js.map +1 -1
- package/package.json +3 -2
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
<workflow>
|
|
2
|
+
<critical>The workflow execution engine is governed by: {project-root}/_bmad/core/tasks/workflow.xml</critical>
|
|
3
|
+
<critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
|
|
4
|
+
<critical>Communicate all responses in {communication_language}</critical>
|
|
5
|
+
|
|
6
|
+
<step n="1" goal="릴리즈 정보 수집">
|
|
7
|
+
<critical>🏷️ GITHUB RELEASE - 태그 생성 및 릴리즈 등록</critical>
|
|
8
|
+
|
|
9
|
+
<action>git repository 확인: git rev-parse --git-dir</action>
|
|
10
|
+
<check if="git repository NOT detected">
|
|
11
|
+
<output>🚫 Git 저장소가 감지되지 않습니다. 릴리즈를 생성할 수 없습니다.</output>
|
|
12
|
+
<action>HALT</action>
|
|
13
|
+
</check>
|
|
14
|
+
|
|
15
|
+
<action>gh CLI 인증 확인: gh auth status</action>
|
|
16
|
+
<check if="gh auth 실패">
|
|
17
|
+
<output>🚫 GitHub CLI 인증이 필요합니다.
|
|
18
|
+
`gh auth login`을 실행하여 인증해주세요.
|
|
19
|
+
</output>
|
|
20
|
+
<action>HALT</action>
|
|
21
|
+
</check>
|
|
22
|
+
|
|
23
|
+
<action>현재 태그 목록 조회: git tag --list --sort=-v:refname | head -10</action>
|
|
24
|
+
<action>가장 최근 태그 확인</action>
|
|
25
|
+
|
|
26
|
+
<output>📋 **릴리즈 정보**
|
|
27
|
+
|
|
28
|
+
**최근 태그:** {{latest_tag}} (없으면 "첫 번째 릴리즈")
|
|
29
|
+
**현재 브랜치:** {{current_branch}}
|
|
30
|
+
**마지막 커밋:** {{last_commit_hash}} - {{last_commit_message}}
|
|
31
|
+
</output>
|
|
32
|
+
|
|
33
|
+
<ask>새 버전을 입력해주세요 (예: v1.0.0, v1.1.0):
|
|
34
|
+
- Major (v2.0.0): 호환되지 않는 API 변경
|
|
35
|
+
- Minor (v1.1.0): 새로운 기능 추가 (하위 호환)
|
|
36
|
+
- Patch (v1.0.1): 버그 수정
|
|
37
|
+
</ask>
|
|
38
|
+
|
|
39
|
+
<action>입력된 버전 유효성 검사 (v로 시작, semantic versioning 형식)</action>
|
|
40
|
+
<check if="유효하지 않은 버전 형식">
|
|
41
|
+
<output>⚠️ 버전 형식이 올바르지 않습니다. 예: v1.0.0</output>
|
|
42
|
+
<ask>다시 입력해주세요:</ask>
|
|
43
|
+
</check>
|
|
44
|
+
|
|
45
|
+
<action>{{new_version}} 저장</action>
|
|
46
|
+
</step>
|
|
47
|
+
|
|
48
|
+
<step n="2" goal="릴리즈 노트 생성">
|
|
49
|
+
<critical>📝 RELEASE NOTES - 완료된 스토리/PR 기반 자동 생성</critical>
|
|
50
|
+
|
|
51
|
+
<check if="{{latest_tag}} 존재">
|
|
52
|
+
<action>이전 태그 이후 커밋 조회:
|
|
53
|
+
git log {{latest_tag}}..HEAD --pretty=format:"- %s" --no-merges
|
|
54
|
+
</action>
|
|
55
|
+
</check>
|
|
56
|
+
|
|
57
|
+
<check if="첫 번째 릴리즈">
|
|
58
|
+
<action>모든 커밋 조회:
|
|
59
|
+
git log --pretty=format:"- %s" --no-merges | head -50
|
|
60
|
+
</action>
|
|
61
|
+
</check>
|
|
62
|
+
|
|
63
|
+
<action>커밋 메시지를 타입별로 분류:
|
|
64
|
+
- feat: 새로운 기능
|
|
65
|
+
- fix: 버그 수정
|
|
66
|
+
- refactor: 리팩토링
|
|
67
|
+
- docs: 문서
|
|
68
|
+
- test: 테스트
|
|
69
|
+
- chore: 기타
|
|
70
|
+
</action>
|
|
71
|
+
|
|
72
|
+
<check if="sprint_status 파일 존재">
|
|
73
|
+
<action>완료된 스토리 목록 추출 (status: done)</action>
|
|
74
|
+
</check>
|
|
75
|
+
|
|
76
|
+
<action>릴리즈 노트 초안 생성</action>
|
|
77
|
+
|
|
78
|
+
<output>📝 **릴리즈 노트 초안**
|
|
79
|
+
|
|
80
|
+
## {{new_version}}
|
|
81
|
+
|
|
82
|
+
### ✨ New Features
|
|
83
|
+
{{feat_commits}}
|
|
84
|
+
|
|
85
|
+
### 🐛 Bug Fixes
|
|
86
|
+
{{fix_commits}}
|
|
87
|
+
|
|
88
|
+
### 🔧 Improvements
|
|
89
|
+
{{refactor_commits}}
|
|
90
|
+
|
|
91
|
+
### 📚 Documentation
|
|
92
|
+
{{docs_commits}}
|
|
93
|
+
|
|
94
|
+
### Completed Stories
|
|
95
|
+
{{completed_stories}}
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
*Generated by BMAD Method*
|
|
99
|
+
</output>
|
|
100
|
+
|
|
101
|
+
<ask>릴리즈 노트를 수정하시겠습니까? [y/n]
|
|
102
|
+
- y: 수정 내용 입력
|
|
103
|
+
- n: 현재 내용으로 진행
|
|
104
|
+
</ask>
|
|
105
|
+
|
|
106
|
+
<check if="user wants to edit">
|
|
107
|
+
<ask>수정할 내용을 입력해주세요:</ask>
|
|
108
|
+
<action>릴리즈 노트 업데이트</action>
|
|
109
|
+
</check>
|
|
110
|
+
</step>
|
|
111
|
+
|
|
112
|
+
<step n="3" goal="태그 생성 및 Push">
|
|
113
|
+
<critical>🏷️ TAG CREATION - Git 태그 생성 및 원격 저장소 Push</critical>
|
|
114
|
+
|
|
115
|
+
<output>⚠️ **태그 생성 확인**
|
|
116
|
+
|
|
117
|
+
**버전:** {{new_version}}
|
|
118
|
+
**대상 커밋:** {{target_commit}}
|
|
119
|
+
**릴리즈 노트:** (위 내용 참조)
|
|
120
|
+
|
|
121
|
+
태그가 생성되면 GitHub Actions가 자동으로 릴리즈를 생성합니다.
|
|
122
|
+
</output>
|
|
123
|
+
|
|
124
|
+
<ask>태그를 생성하시겠습니까? [y/n]</ask>
|
|
125
|
+
|
|
126
|
+
<check if="user confirms">
|
|
127
|
+
<action>Annotated 태그 생성:
|
|
128
|
+
git tag -a {{new_version}} -m "Release {{new_version}}
|
|
129
|
+
|
|
130
|
+
{{release_notes}}"
|
|
131
|
+
</action>
|
|
132
|
+
|
|
133
|
+
<check if="태그 생성 성공">
|
|
134
|
+
<output>✅ 태그 생성됨: {{new_version}}</output>
|
|
135
|
+
</check>
|
|
136
|
+
|
|
137
|
+
<check if="태그 생성 실패">
|
|
138
|
+
<output>🚫 태그 생성 실패: {{error_message}}</output>
|
|
139
|
+
<action>HALT</action>
|
|
140
|
+
</check>
|
|
141
|
+
|
|
142
|
+
<action>태그 Push:
|
|
143
|
+
git push origin {{new_version}}
|
|
144
|
+
</action>
|
|
145
|
+
|
|
146
|
+
<check if="push 성공">
|
|
147
|
+
<output>✅ 태그 Push 완료: {{new_version}}
|
|
148
|
+
|
|
149
|
+
GitHub Actions가 릴리즈를 자동으로 생성합니다.
|
|
150
|
+
릴리즈 페이지: https://github.com/{{owner}}/{{repo}}/releases/tag/{{new_version}}
|
|
151
|
+
</output>
|
|
152
|
+
</check>
|
|
153
|
+
|
|
154
|
+
<check if="push 실패">
|
|
155
|
+
<output>⚠️ 태그 Push 실패: {{error_message}}
|
|
156
|
+
|
|
157
|
+
로컬 태그는 생성되었습니다. 수동으로 push해주세요:
|
|
158
|
+
git push origin {{new_version}}
|
|
159
|
+
</output>
|
|
160
|
+
</check>
|
|
161
|
+
</check>
|
|
162
|
+
|
|
163
|
+
<check if="user cancels">
|
|
164
|
+
<output>❌ 릴리즈 취소됨</output>
|
|
165
|
+
<action>HALT</action>
|
|
166
|
+
</check>
|
|
167
|
+
</step>
|
|
168
|
+
|
|
169
|
+
<step n="4" goal="릴리즈 완료 및 정리">
|
|
170
|
+
<output>🎉 **릴리즈 완료!**
|
|
171
|
+
|
|
172
|
+
**버전:** {{new_version}}
|
|
173
|
+
**태그:** {{new_version}}
|
|
174
|
+
**릴리즈 URL:** https://github.com/{{owner}}/{{repo}}/releases/tag/{{new_version}}
|
|
175
|
+
|
|
176
|
+
**다음 단계:**
|
|
177
|
+
1. GitHub에서 릴리즈 페이지 확인
|
|
178
|
+
2. 필요시 릴리즈 노트 추가 편집
|
|
179
|
+
3. 릴리즈 자산(assets) 업로드 (필요한 경우)
|
|
180
|
+
</output>
|
|
181
|
+
</step>
|
|
182
|
+
|
|
183
|
+
</workflow>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
name: github-release
|
|
2
|
+
description: "수동 트리거로 GitHub 태그 생성 및 릴리즈 등록"
|
|
3
|
+
author: "BMAD"
|
|
4
|
+
|
|
5
|
+
config_source: "{project-root}/_bmad/bmm/config.yaml"
|
|
6
|
+
installed_path: "{project-root}/_bmad/bmm/workflows/github-release"
|
|
7
|
+
instructions: "{installed_path}/instructions.xml"
|
|
8
|
+
template: false
|
|
9
|
+
standalone: true
|
|
10
|
+
|
|
11
|
+
variables:
|
|
12
|
+
sprint_status: "{config_source:implementation_artifacts}/sprint-status.yaml"
|
|
13
|
+
|
|
14
|
+
input_file_patterns:
|
|
15
|
+
sprint_status:
|
|
16
|
+
whole: "{config_source:implementation_artifacts}/sprint-status.yaml"
|
|
17
|
+
load_strategy: "FULL_LOAD"
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
<workflow>
|
|
2
|
+
<critical>The workflow execution engine is governed by: {project-root}/_bmad/core/tasks/workflow.xml</critical>
|
|
3
|
+
<critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
|
|
4
|
+
<critical>Communicate all responses in {communication_language}</critical>
|
|
5
|
+
|
|
6
|
+
<step n="1" goal="환경 확인">
|
|
7
|
+
<critical>🔧 GITHUB SETUP - 프로젝트에 GitHub 설정 적용</critical>
|
|
8
|
+
|
|
9
|
+
<output>📋 **GitHub 설정 초기화**
|
|
10
|
+
|
|
11
|
+
이 워크플로우는 프로젝트에 다음 GitHub 설정을 적용합니다:
|
|
12
|
+
- GitHub Actions 워크플로우 (release-on-tag.yml)
|
|
13
|
+
- Issue 템플릿 (story.md, bug.md)
|
|
14
|
+
- Pull Request 템플릿
|
|
15
|
+
|
|
16
|
+
</output>
|
|
17
|
+
|
|
18
|
+
<action>git repository 확인: git rev-parse --git-dir</action>
|
|
19
|
+
<check if="git repository NOT detected">
|
|
20
|
+
<output>⚠️ Git 저장소가 감지되지 않습니다.</output>
|
|
21
|
+
<ask>Git 저장소를 초기화하시겠습니까? [y/n]</ask>
|
|
22
|
+
<check if="user confirms">
|
|
23
|
+
<action>git init</action>
|
|
24
|
+
<output>✅ Git 저장소 초기화 완료</output>
|
|
25
|
+
</check>
|
|
26
|
+
<check if="user cancels">
|
|
27
|
+
<output>❌ GitHub 설정을 적용하려면 Git 저장소가 필요합니다.</output>
|
|
28
|
+
<action>HALT</action>
|
|
29
|
+
</check>
|
|
30
|
+
</check>
|
|
31
|
+
|
|
32
|
+
<action>gh CLI 확인: gh --version</action>
|
|
33
|
+
<check if="gh CLI not installed">
|
|
34
|
+
<output>⚠️ GitHub CLI(gh)가 설치되지 않았습니다.
|
|
35
|
+
|
|
36
|
+
설치 방법:
|
|
37
|
+
- Windows: winget install GitHub.cli
|
|
38
|
+
- macOS: brew install gh
|
|
39
|
+
- Linux: https://github.com/cli/cli#installation
|
|
40
|
+
|
|
41
|
+
설치 후 `gh auth login`으로 인증해주세요.
|
|
42
|
+
</output>
|
|
43
|
+
<ask>gh CLI 없이 템플릿만 복사하시겠습니까? [y/n]</ask>
|
|
44
|
+
<check if="user cancels">
|
|
45
|
+
<action>HALT</action>
|
|
46
|
+
</check>
|
|
47
|
+
</check>
|
|
48
|
+
|
|
49
|
+
<action>gh CLI 인증 확인: gh auth status</action>
|
|
50
|
+
<check if="gh auth 실패">
|
|
51
|
+
<output>⚠️ GitHub CLI 인증이 필요합니다.</output>
|
|
52
|
+
<ask>`gh auth login`을 실행하시겠습니까? [y/n]</ask>
|
|
53
|
+
<check if="user confirms">
|
|
54
|
+
<action>gh auth login 안내 제공</action>
|
|
55
|
+
</check>
|
|
56
|
+
</check>
|
|
57
|
+
</step>
|
|
58
|
+
|
|
59
|
+
<step n="2" goal="기존 설정 확인">
|
|
60
|
+
<action>기존 .github 디렉토리 확인</action>
|
|
61
|
+
|
|
62
|
+
<check if=".github 디렉토리 존재">
|
|
63
|
+
<output>📁 기존 .github 디렉토리가 발견되었습니다.
|
|
64
|
+
|
|
65
|
+
**기존 파일:**
|
|
66
|
+
{{existing_files}}
|
|
67
|
+
</output>
|
|
68
|
+
|
|
69
|
+
<ask>기존 파일을 어떻게 처리할까요?
|
|
70
|
+
1. 덮어쓰기 (기존 파일 백업)
|
|
71
|
+
2. 병합 (기존 파일 유지, 없는 것만 추가)
|
|
72
|
+
3. 취소
|
|
73
|
+
</ask>
|
|
74
|
+
|
|
75
|
+
<check if="user chooses 1">
|
|
76
|
+
<action>기존 .github 디렉토리 백업: .github.backup.{{timestamp}}</action>
|
|
77
|
+
<action>{{overwrite_mode}} = true</action>
|
|
78
|
+
</check>
|
|
79
|
+
|
|
80
|
+
<check if="user chooses 2">
|
|
81
|
+
<action>{{merge_mode}} = true</action>
|
|
82
|
+
</check>
|
|
83
|
+
|
|
84
|
+
<check if="user chooses 3">
|
|
85
|
+
<output>❌ GitHub 설정 취소됨</output>
|
|
86
|
+
<action>HALT</action>
|
|
87
|
+
</check>
|
|
88
|
+
</check>
|
|
89
|
+
|
|
90
|
+
<check if=".github 디렉토리 없음">
|
|
91
|
+
<output>ℹ️ 새로운 .github 디렉토리를 생성합니다.</output>
|
|
92
|
+
</check>
|
|
93
|
+
</step>
|
|
94
|
+
|
|
95
|
+
<step n="3" goal="GitHub 템플릿 복사">
|
|
96
|
+
<critical>📋 COPY TEMPLATES - GitHub 템플릿 파일 복사</critical>
|
|
97
|
+
|
|
98
|
+
<action>.github/workflows 디렉토리 생성</action>
|
|
99
|
+
<action>.github/ISSUE_TEMPLATE 디렉토리 생성</action>
|
|
100
|
+
|
|
101
|
+
<!-- GitHub Actions 복사 -->
|
|
102
|
+
<check if="{{overwrite_mode}} OR workflows/release-on-tag.yml 없음">
|
|
103
|
+
<action>복사: {{github_templates}}/.github/workflows/release-on-tag.yml
|
|
104
|
+
→ {{target_github_dir}}/workflows/release-on-tag.yml</action>
|
|
105
|
+
<output>✅ GitHub Actions 워크플로우 복사됨: release-on-tag.yml</output>
|
|
106
|
+
</check>
|
|
107
|
+
|
|
108
|
+
<!-- Issue 템플릿 복사 -->
|
|
109
|
+
<check if="{{overwrite_mode}} OR ISSUE_TEMPLATE/story.md 없음">
|
|
110
|
+
<action>복사: {{github_templates}}/.github/ISSUE_TEMPLATE/story.md
|
|
111
|
+
→ {{target_github_dir}}/ISSUE_TEMPLATE/story.md</action>
|
|
112
|
+
<output>✅ Issue 템플릿 복사됨: story.md</output>
|
|
113
|
+
</check>
|
|
114
|
+
|
|
115
|
+
<check if="{{overwrite_mode}} OR ISSUE_TEMPLATE/bug.md 없음">
|
|
116
|
+
<action>복사: {{github_templates}}/.github/ISSUE_TEMPLATE/bug.md
|
|
117
|
+
→ {{target_github_dir}}/ISSUE_TEMPLATE/bug.md</action>
|
|
118
|
+
<output>✅ Issue 템플릿 복사됨: bug.md</output>
|
|
119
|
+
</check>
|
|
120
|
+
|
|
121
|
+
<!-- PR 템플릿 복사 -->
|
|
122
|
+
<check if="{{overwrite_mode}} OR PULL_REQUEST_TEMPLATE.md 없음">
|
|
123
|
+
<action>복사: {{github_templates}}/.github/PULL_REQUEST_TEMPLATE.md
|
|
124
|
+
→ {{target_github_dir}}/PULL_REQUEST_TEMPLATE.md</action>
|
|
125
|
+
<output>✅ PR 템플릿 복사됨: PULL_REQUEST_TEMPLATE.md</output>
|
|
126
|
+
</check>
|
|
127
|
+
</step>
|
|
128
|
+
|
|
129
|
+
<step n="4" goal="원격 저장소 확인">
|
|
130
|
+
<action>원격 저장소 확인: git remote -v</action>
|
|
131
|
+
|
|
132
|
+
<check if="원격 저장소 없음">
|
|
133
|
+
<output>⚠️ 원격 저장소가 설정되지 않았습니다.</output>
|
|
134
|
+
<ask>GitHub 저장소를 생성하시겠습니까? [y/n]</ask>
|
|
135
|
+
|
|
136
|
+
<check if="user confirms">
|
|
137
|
+
<ask>저장소 이름을 입력해주세요:</ask>
|
|
138
|
+
<ask>공개(public) 또는 비공개(private)? [public/private]</ask>
|
|
139
|
+
<action>gh repo create {{repo_name}} --{{visibility}} --source=. --remote=origin</action>
|
|
140
|
+
<output>✅ GitHub 저장소 생성됨: {{repo_url}}</output>
|
|
141
|
+
</check>
|
|
142
|
+
</check>
|
|
143
|
+
|
|
144
|
+
<check if="원격 저장소 존재">
|
|
145
|
+
<action>저장소 정보 추출: {{owner}}/{{repo}}</action>
|
|
146
|
+
<output>✅ 원격 저장소: {{owner}}/{{repo}}</output>
|
|
147
|
+
</check>
|
|
148
|
+
</step>
|
|
149
|
+
|
|
150
|
+
<step n="5" goal="저장소 머지 규칙 설정">
|
|
151
|
+
<critical>⚙️ REPO SETTINGS - 저장소 머지 규칙 설정</critical>
|
|
152
|
+
|
|
153
|
+
<output>📋 **저장소 머지 규칙 설정**
|
|
154
|
+
|
|
155
|
+
다음 설정을 적용합니다:
|
|
156
|
+
- Merge Commit만 허용 (머지 기록 유지)
|
|
157
|
+
- Squash Merge 비활성화
|
|
158
|
+
- Rebase Merge 비활성화
|
|
159
|
+
- 머지 후 브랜치 자동 삭제
|
|
160
|
+
</output>
|
|
161
|
+
|
|
162
|
+
<ask>저장소 머지 규칙을 설정하시겠습니까? [y/n]</ask>
|
|
163
|
+
|
|
164
|
+
<check if="user confirms">
|
|
165
|
+
<action>gh repo edit --enable-merge-commit --enable-squash-merge=false --enable-rebase-merge=false --delete-branch-on-merge</action>
|
|
166
|
+
<output>✅ 저장소 머지 규칙 설정 완료:
|
|
167
|
+
- Merge Commit: 허용
|
|
168
|
+
- Squash Merge: 비활성화
|
|
169
|
+
- Rebase Merge: 비활성화
|
|
170
|
+
- Delete Branch on Merge: 활성화</output>
|
|
171
|
+
</check>
|
|
172
|
+
|
|
173
|
+
<check if="user cancels">
|
|
174
|
+
<output>ℹ️ 저장소 머지 규칙 설정 건너뜀</output>
|
|
175
|
+
</check>
|
|
176
|
+
</step>
|
|
177
|
+
|
|
178
|
+
<step n="6" goal=".gitignore 설정">
|
|
179
|
+
<critical>📝 GITIGNORE - Claude 로컬 설정 제외</critical>
|
|
180
|
+
|
|
181
|
+
<output>📋 **.gitignore 설정**
|
|
182
|
+
|
|
183
|
+
다음 항목을 .gitignore에 추가합니다:
|
|
184
|
+
- .claude/settings.local.json (로컬 설정)
|
|
185
|
+
- .claude/plans/ (계획 파일)
|
|
186
|
+
</output>
|
|
187
|
+
|
|
188
|
+
<action>.gitignore 파일 확인</action>
|
|
189
|
+
|
|
190
|
+
<check if=".gitignore에 .claude/settings.local.json 없음">
|
|
191
|
+
<action>.gitignore에 추가:
|
|
192
|
+
# Claude Code (로컬 설정)
|
|
193
|
+
.claude/settings.local.json
|
|
194
|
+
.claude/plans/
|
|
195
|
+
</action>
|
|
196
|
+
<output>✅ .gitignore에 Claude 로컬 설정 제외 추가</output>
|
|
197
|
+
</check>
|
|
198
|
+
|
|
199
|
+
<check if=".gitignore에 이미 설정됨">
|
|
200
|
+
<output>ℹ️ .gitignore 이미 설정됨</output>
|
|
201
|
+
</check>
|
|
202
|
+
</step>
|
|
203
|
+
|
|
204
|
+
<step n="7" goal="설정 완료 및 안내">
|
|
205
|
+
<output>🎉 **GitHub 설정 완료!**
|
|
206
|
+
|
|
207
|
+
**적용된 설정:**
|
|
208
|
+
✅ .github/workflows/release-on-tag.yml - 태그 push 시 자동 릴리즈
|
|
209
|
+
✅ .github/ISSUE_TEMPLATE/story.md - 스토리 이슈 템플릿
|
|
210
|
+
✅ .github/ISSUE_TEMPLATE/bug.md - 버그 리포트 템플릿
|
|
211
|
+
✅ .github/PULL_REQUEST_TEMPLATE.md - PR 템플릿
|
|
212
|
+
✅ 저장소 머지 규칙 - Merge Commit만 허용, 브랜치 자동 삭제
|
|
213
|
+
✅ .gitignore - Claude 로컬 설정 제외
|
|
214
|
+
|
|
215
|
+
**다음 단계:**
|
|
216
|
+
1. 변경사항 커밋: `git add .github && git commit -m "chore: add GitHub templates"`
|
|
217
|
+
2. 원격 저장소에 Push: `git push origin main`
|
|
218
|
+
3. GitHub Actions 확인: https://github.com/{{owner}}/{{repo}}/actions
|
|
219
|
+
|
|
220
|
+
**사용 방법:**
|
|
221
|
+
- 릴리즈 생성: SM 에이전트에서 `*github-release` 실행
|
|
222
|
+
- 또는 태그 push: `git tag v1.0.0 && git push origin v1.0.0`
|
|
223
|
+
</output>
|
|
224
|
+
|
|
225
|
+
<ask>변경사항을 지금 커밋하고 Push하시겠습니까? [y/n]</ask>
|
|
226
|
+
|
|
227
|
+
<check if="user confirms">
|
|
228
|
+
<action>git add .github</action>
|
|
229
|
+
<action>git commit -m "chore: add GitHub templates and workflows
|
|
230
|
+
|
|
231
|
+
- Add release-on-tag.yml for automatic releases
|
|
232
|
+
- Add issue templates (story, bug)
|
|
233
|
+
- Add pull request template
|
|
234
|
+
|
|
235
|
+
Generated by BMAD Method"</action>
|
|
236
|
+
<action>git push origin {{current_branch}}</action>
|
|
237
|
+
<output>✅ 변경사항 Push 완료!</output>
|
|
238
|
+
</check>
|
|
239
|
+
</step>
|
|
240
|
+
|
|
241
|
+
</workflow>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
name: github-setup
|
|
2
|
+
description: "BMAD 프로젝트에 GitHub 설정 자동 적용 (Actions, 템플릿 등)"
|
|
3
|
+
author: "BMAD"
|
|
4
|
+
|
|
5
|
+
config_source: "{project-root}/_bmad/bmm/config.yaml"
|
|
6
|
+
installed_path: "{project-root}/_bmad/bmm/workflows/github-setup"
|
|
7
|
+
instructions: "{installed_path}/instructions.xml"
|
|
8
|
+
template: false
|
|
9
|
+
standalone: true
|
|
10
|
+
|
|
11
|
+
variables:
|
|
12
|
+
github_templates: "{project-root}/_bmad/bmm/data/github-templates"
|
|
13
|
+
target_github_dir: "{project-root}/.github"
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Quinn Automate - Validation Checklist
|
|
2
|
+
|
|
3
|
+
## Test Generation
|
|
4
|
+
|
|
5
|
+
- [ ] API tests generated (if applicable)
|
|
6
|
+
- [ ] E2E tests generated (if UI exists)
|
|
7
|
+
- [ ] Tests use standard test framework APIs
|
|
8
|
+
- [ ] Tests cover happy path
|
|
9
|
+
- [ ] Tests cover 1-2 critical error cases
|
|
10
|
+
|
|
11
|
+
## Test Quality
|
|
12
|
+
|
|
13
|
+
- [ ] All generated tests run successfully
|
|
14
|
+
- [ ] Tests use proper locators (semantic, accessible)
|
|
15
|
+
- [ ] Tests have clear descriptions
|
|
16
|
+
- [ ] No hardcoded waits or sleeps
|
|
17
|
+
- [ ] Tests are independent (no order dependency)
|
|
18
|
+
|
|
19
|
+
## Output
|
|
20
|
+
|
|
21
|
+
- [ ] Test summary created
|
|
22
|
+
- [ ] Tests saved to appropriate directories
|
|
23
|
+
- [ ] Summary includes coverage metrics
|
|
24
|
+
|
|
25
|
+
## Validation
|
|
26
|
+
|
|
27
|
+
Run the tests using your project's test command.
|
|
28
|
+
|
|
29
|
+
**Expected**: All tests pass ✅
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
**Need more comprehensive testing?** Install [Test Architect (TEA)](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/) for advanced workflows.
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# Quinn QA - Automate
|
|
2
|
+
|
|
3
|
+
**Goal**: Generate automated API and E2E tests for implemented code.
|
|
4
|
+
|
|
5
|
+
**Scope**: This workflow generates tests ONLY. It does **not** perform code review or story validation (use Code Review `CR` for that).
|
|
6
|
+
|
|
7
|
+
## Instructions
|
|
8
|
+
|
|
9
|
+
### Step 0: Detect Test Framework
|
|
10
|
+
|
|
11
|
+
Check project for existing test framework:
|
|
12
|
+
|
|
13
|
+
- Look for `package.json` dependencies (playwright, jest, vitest, cypress, etc.)
|
|
14
|
+
- Check for existing test files to understand patterns
|
|
15
|
+
- Use whatever test framework the project already has
|
|
16
|
+
- If no framework exists:
|
|
17
|
+
- Analyze source code to determine project type (React, Vue, Node API, etc.)
|
|
18
|
+
- Search online for current recommended test framework for that stack
|
|
19
|
+
- Suggest the meta framework and use it (or ask user to confirm)
|
|
20
|
+
|
|
21
|
+
### Step 1: Identify Features
|
|
22
|
+
|
|
23
|
+
Ask user what to test:
|
|
24
|
+
|
|
25
|
+
- Specific feature/component name
|
|
26
|
+
- Directory to scan (e.g., `src/components/`)
|
|
27
|
+
- Or auto-discover features in the codebase
|
|
28
|
+
|
|
29
|
+
### Step 2: Generate API Tests (if applicable)
|
|
30
|
+
|
|
31
|
+
For API endpoints/services, generate tests that:
|
|
32
|
+
|
|
33
|
+
- Test status codes (200, 400, 404, 500)
|
|
34
|
+
- Validate response structure
|
|
35
|
+
- Cover happy path + 1-2 error cases
|
|
36
|
+
- Use project's existing test framework patterns
|
|
37
|
+
|
|
38
|
+
### Step 3: Generate E2E Tests (if UI exists)
|
|
39
|
+
|
|
40
|
+
For UI features, generate tests that:
|
|
41
|
+
|
|
42
|
+
- Test user workflows end-to-end
|
|
43
|
+
- Use semantic locators (roles, labels, text)
|
|
44
|
+
- Focus on user interactions (clicks, form fills, navigation)
|
|
45
|
+
- Assert visible outcomes
|
|
46
|
+
- Keep tests linear and simple
|
|
47
|
+
- Follow project's existing test patterns
|
|
48
|
+
|
|
49
|
+
### Step 4: Run Tests
|
|
50
|
+
|
|
51
|
+
Execute tests to verify they pass (use project's test command).
|
|
52
|
+
|
|
53
|
+
If failures occur, fix them immediately.
|
|
54
|
+
|
|
55
|
+
### Step 5: Create Summary
|
|
56
|
+
|
|
57
|
+
Output markdown summary:
|
|
58
|
+
|
|
59
|
+
```markdown
|
|
60
|
+
# Test Automation Summary
|
|
61
|
+
|
|
62
|
+
## Generated Tests
|
|
63
|
+
|
|
64
|
+
### API Tests
|
|
65
|
+
- [x] tests/api/endpoint.spec.ts - Endpoint validation
|
|
66
|
+
|
|
67
|
+
### E2E Tests
|
|
68
|
+
- [x] tests/e2e/feature.spec.ts - User workflow
|
|
69
|
+
|
|
70
|
+
## Coverage
|
|
71
|
+
- API endpoints: 5/10 covered
|
|
72
|
+
- UI features: 3/8 covered
|
|
73
|
+
|
|
74
|
+
## Next Steps
|
|
75
|
+
- Run tests in CI
|
|
76
|
+
- Add more edge cases as needed
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Keep It Simple
|
|
80
|
+
|
|
81
|
+
**Do:**
|
|
82
|
+
|
|
83
|
+
- Use standard test framework APIs
|
|
84
|
+
- Focus on happy path + critical errors
|
|
85
|
+
- Write readable, maintainable tests
|
|
86
|
+
- Run tests to verify they pass
|
|
87
|
+
|
|
88
|
+
**Avoid:**
|
|
89
|
+
|
|
90
|
+
- Complex fixture composition
|
|
91
|
+
- Over-engineering
|
|
92
|
+
- Unnecessary abstractions
|
|
93
|
+
|
|
94
|
+
**For Advanced Features:**
|
|
95
|
+
|
|
96
|
+
If the project needs:
|
|
97
|
+
|
|
98
|
+
- Risk-based test strategy
|
|
99
|
+
- Test design planning
|
|
100
|
+
- Quality gates and NFR assessment
|
|
101
|
+
- Comprehensive coverage analysis
|
|
102
|
+
- Advanced testing patterns and utilities
|
|
103
|
+
|
|
104
|
+
→ **Install Test Architect (TEA) module**: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/>
|
|
105
|
+
|
|
106
|
+
## Output
|
|
107
|
+
|
|
108
|
+
Save summary to: `{implementation_artifacts}/tests/test-summary.md`
|
|
109
|
+
|
|
110
|
+
**Done!** Tests generated and verified.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Quinn QA workflow: Automate
|
|
2
|
+
name: qa-automate
|
|
3
|
+
description: "Generate tests quickly for existing features using standard test patterns"
|
|
4
|
+
author: "BMad"
|
|
5
|
+
|
|
6
|
+
# Critical variables from config
|
|
7
|
+
config_source: "{project-root}/_bmad/bmm/config.yaml"
|
|
8
|
+
output_folder: "{config_source}:output_folder"
|
|
9
|
+
implementation_artifacts: "{config_source}:implementation_artifacts"
|
|
10
|
+
user_name: "{config_source}:user_name"
|
|
11
|
+
communication_language: "{config_source}:communication_language"
|
|
12
|
+
document_output_language: "{config_source}:document_output_language"
|
|
13
|
+
date: system-generated
|
|
14
|
+
|
|
15
|
+
# Workflow components
|
|
16
|
+
installed_path: "{project-root}/_bmad/bmm/workflows/qa/automate"
|
|
17
|
+
instructions: "{installed_path}/instructions.md"
|
|
18
|
+
validation: "{installed_path}/checklist.md"
|
|
19
|
+
template: false
|
|
20
|
+
|
|
21
|
+
# Variables and inputs
|
|
22
|
+
variables:
|
|
23
|
+
# Directory paths
|
|
24
|
+
test_dir: "{project-root}/tests" # Root test directory
|
|
25
|
+
source_dir: "{project-root}" # Source code directory
|
|
26
|
+
|
|
27
|
+
# Output configuration
|
|
28
|
+
default_output_file: "{implementation_artifacts}/tests/test-summary.md"
|
|
29
|
+
|
|
30
|
+
# Required tools
|
|
31
|
+
required_tools:
|
|
32
|
+
- read_file # Read source code and existing tests
|
|
33
|
+
- write_file # Create test files
|
|
34
|
+
- create_directory # Create test directories
|
|
35
|
+
- list_files # Discover features
|
|
36
|
+
- search_repo # Find patterns
|
|
37
|
+
- glob # Find files
|
|
38
|
+
|
|
39
|
+
tags:
|
|
40
|
+
- qa
|
|
41
|
+
- automation
|
|
42
|
+
- testing
|
|
43
|
+
|
|
44
|
+
execution_hints:
|
|
45
|
+
interactive: false
|
|
46
|
+
autonomous: true
|
|
47
|
+
iterative: false
|