@cregis-dev/cckit 0.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/LICENSE +21 -0
- package/README.md +253 -0
- package/bin/cckit.js +3 -0
- package/package.json +52 -0
- package/registry.json +194 -0
- package/src/adapters/trae-adapter.js +90 -0
- package/src/cli.js +88 -0
- package/src/commands/add.js +192 -0
- package/src/commands/init.js +333 -0
- package/src/commands/status.js +62 -0
- package/src/commands/sync.js +325 -0
- package/src/commands/update.js +425 -0
- package/src/core/config.js +82 -0
- package/src/core/differ.js +57 -0
- package/src/core/installer.js +97 -0
- package/src/core/plugin-installer.js +237 -0
- package/src/core/registry.js +75 -0
- package/src/core/templatize.js +42 -0
- package/src/core/upstream.js +357 -0
- package/src/utils/fs.js +50 -0
- package/src/utils/logger.js +16 -0
- package/templates/bmad/_config/agent-manifest.csv +12 -0
- package/templates/bmad/_config/agents/bmm-analyst.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-architect.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-dev.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-pm.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-qa.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-quick-flow-solo-dev.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-sm.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-tech-writer.customize.yaml +41 -0
- package/templates/bmad/_config/agents/bmm-ux-designer.customize.yaml +41 -0
- package/templates/bmad/_config/agents/core-bmad-master.customize.yaml +41 -0
- package/templates/bmad/_config/agents/tea-tea.customize.yaml +41 -0
- package/templates/bmad/_config/bmad-help.csv +48 -0
- package/templates/bmad/_config/files-manifest.csv +431 -0
- package/templates/bmad/_config/ides/claude-code.yaml +5 -0
- package/templates/bmad/_config/ides/opencode.yaml +5 -0
- package/templates/bmad/_config/ides/trae.yaml +5 -0
- package/templates/bmad/_config/task-manifest.csv +7 -0
- package/templates/bmad/_config/tool-manifest.csv +1 -0
- package/templates/bmad/_config/workflow-manifest.csv +35 -0
- package/templates/bmad/bmm/agents/analyst.md +78 -0
- package/templates/bmad/bmm/agents/architect.md +58 -0
- package/templates/bmad/bmm/agents/dev.md +69 -0
- package/templates/bmad/bmm/agents/pm.md +72 -0
- package/templates/bmad/bmm/agents/qa.md +92 -0
- package/templates/bmad/bmm/agents/quick-flow-solo-dev.md +69 -0
- package/templates/bmad/bmm/agents/sm.md +70 -0
- package/templates/bmad/bmm/agents/tech-writer/tech-writer.md +70 -0
- package/templates/bmad/bmm/agents/ux-designer.md +57 -0
- package/templates/bmad/bmm/config.yaml +15 -0
- package/templates/bmad/bmm/data/project-context-template.md +26 -0
- package/templates/bmad/bmm/module-help.csv +31 -0
- package/templates/bmad/bmm/teams/default-party.csv +20 -0
- package/templates/bmad/bmm/teams/team-fullstack.yaml +12 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +177 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +161 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +199 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +202 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +205 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +219 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +162 -0
- package/templates/bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md +57 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +444 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +476 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/research.template.md +29 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +233 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +487 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/workflow-domain-research.md +54 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/workflow-market-research.md +54 -0
- package/templates/bmad/bmm/workflows/1-analysis/research/workflow-technical-research.md +54 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +15 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +197 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/data/project-types.csv +11 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01-init.md +191 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-01b-continue.md +152 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +224 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02b-vision.md +154 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02c-executive-summary.md +170 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +226 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +213 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +207 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +226 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +237 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +228 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +231 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +242 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +217 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-12-complete.md +124 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +247 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-02-review.md +249 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-03-edit.md +253 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-04-complete.md +168 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +226 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +191 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +209 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +174 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +228 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +217 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +263 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +209 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +242 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +231 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/templates/prd-template.md +10 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-create-prd.md +63 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-edit-prd.md +65 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +63 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +171 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
- package/templates/bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +42 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +184 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +172 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +173 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +133 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +245 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +129 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
- package/templates/bmad/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +54 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +13 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +173 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +329 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +76 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-architecture/workflow.md +49 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +149 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
- package/templates/bmad/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +58 -0
- package/templates/bmad/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
- package/templates/bmad/bmm/workflows/4-implementation/code-review/instructions.xml +227 -0
- package/templates/bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +43 -0
- package/templates/bmad/bmm/workflows/4-implementation/correct-course/checklist.md +288 -0
- package/templates/bmad/bmm/workflows/4-implementation/correct-course/instructions.md +207 -0
- package/templates/bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +53 -0
- package/templates/bmad/bmm/workflows/4-implementation/create-story/checklist.md +358 -0
- package/templates/bmad/bmm/workflows/4-implementation/create-story/instructions.xml +346 -0
- package/templates/bmad/bmm/workflows/4-implementation/create-story/template.md +49 -0
- package/templates/bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +52 -0
- package/templates/bmad/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
- package/templates/bmad/bmm/workflows/4-implementation/dev-story/instructions.xml +410 -0
- package/templates/bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +20 -0
- package/templates/bmad/bmm/workflows/4-implementation/retrospective/instructions.md +1444 -0
- package/templates/bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +52 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +226 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +47 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-status/instructions.md +230 -0
- package/templates/bmad/bmm/workflows/4-implementation/sprint-status/workflow.yaml +25 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +174 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +118 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +111 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +111 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +104 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +146 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +50 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +189 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +143 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +126 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +200 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +74 -0
- package/templates/bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +79 -0
- package/templates/bmad/bmm/workflows/document-project/checklist.md +245 -0
- package/templates/bmad/bmm/workflows/document-project/documentation-requirements.csv +12 -0
- package/templates/bmad/bmm/workflows/document-project/instructions.md +130 -0
- package/templates/bmad/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
- package/templates/bmad/bmm/workflows/document-project/templates/index-template.md +169 -0
- package/templates/bmad/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
- package/templates/bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
- package/templates/bmad/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
- package/templates/bmad/bmm/workflows/document-project/workflow.yaml +22 -0
- package/templates/bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
- package/templates/bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
- package/templates/bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
- package/templates/bmad/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
- package/templates/bmad/bmm/workflows/generate-project-context/project-context-template.md +21 -0
- package/templates/bmad/bmm/workflows/generate-project-context/steps/step-01-discover.md +184 -0
- package/templates/bmad/bmm/workflows/generate-project-context/steps/step-02-generate.md +318 -0
- package/templates/bmad/bmm/workflows/generate-project-context/steps/step-03-complete.md +278 -0
- package/templates/bmad/bmm/workflows/generate-project-context/workflow.md +49 -0
- package/templates/bmad/bmm/workflows/qa/automate/checklist.md +33 -0
- package/templates/bmad/bmm/workflows/qa/automate/instructions.md +110 -0
- package/templates/bmad/bmm/workflows/qa/automate/workflow.yaml +44 -0
- package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/checklist.md +33 -0
- package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/instructions.md +110 -0
- package/templates/bmad/bmm/workflows/qa-generate-e2e-tests/workflow.yaml +42 -0
- package/templates/bmad/commands/bmad-agent-bmad-master.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-analyst.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-architect.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-dev.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-pm.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-qa.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-quick-flow-solo-dev.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-sm.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-tech-writer.md +15 -0
- package/templates/bmad/commands/bmad-agent-bmm-ux-designer.md +15 -0
- package/templates/bmad/commands/bmad-agent-tea-tea.md +15 -0
- package/templates/bmad/commands/bmad-bmm-check-implementation-readiness.md +6 -0
- package/templates/bmad/commands/bmad-bmm-code-review.md +14 -0
- package/templates/bmad/commands/bmad-bmm-correct-course.md +14 -0
- package/templates/bmad/commands/bmad-bmm-create-architecture.md +6 -0
- package/templates/bmad/commands/bmad-bmm-create-epics-and-stories.md +6 -0
- package/templates/bmad/commands/bmad-bmm-create-prd.md +6 -0
- package/templates/bmad/commands/bmad-bmm-create-product-brief.md +6 -0
- package/templates/bmad/commands/bmad-bmm-create-story.md +14 -0
- package/templates/bmad/commands/bmad-bmm-create-ux-design.md +6 -0
- package/templates/bmad/commands/bmad-bmm-dev-story.md +14 -0
- package/templates/bmad/commands/bmad-bmm-document-project.md +14 -0
- package/templates/bmad/commands/bmad-bmm-domain-research.md +6 -0
- package/templates/bmad/commands/bmad-bmm-edit-prd.md +6 -0
- package/templates/bmad/commands/bmad-bmm-generate-project-context.md +6 -0
- package/templates/bmad/commands/bmad-bmm-market-research.md +6 -0
- package/templates/bmad/commands/bmad-bmm-qa-automate.md +15 -0
- package/templates/bmad/commands/bmad-bmm-qa-generate-e2e-tests.md +14 -0
- package/templates/bmad/commands/bmad-bmm-quick-dev.md +6 -0
- package/templates/bmad/commands/bmad-bmm-quick-spec.md +6 -0
- package/templates/bmad/commands/bmad-bmm-retrospective.md +14 -0
- package/templates/bmad/commands/bmad-bmm-sprint-planning.md +14 -0
- package/templates/bmad/commands/bmad-bmm-sprint-status.md +14 -0
- package/templates/bmad/commands/bmad-bmm-technical-research.md +6 -0
- package/templates/bmad/commands/bmad-bmm-validate-prd.md +6 -0
- package/templates/bmad/commands/bmad-brainstorming.md +6 -0
- package/templates/bmad/commands/bmad-editorial-review-prose.md +10 -0
- package/templates/bmad/commands/bmad-editorial-review-structure.md +10 -0
- package/templates/bmad/commands/bmad-help.md +10 -0
- package/templates/bmad/commands/bmad-index-docs.md +10 -0
- package/templates/bmad/commands/bmad-party-mode.md +6 -0
- package/templates/bmad/commands/bmad-review-adversarial-general.md +10 -0
- package/templates/bmad/commands/bmad-shard-doc.md +10 -0
- package/templates/bmad/commands/bmad-tea-teach-me-testing.md +6 -0
- package/templates/bmad/commands/bmad-tea-testarch-atdd.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-automate.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-ci.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-framework.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-nfr.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-test-design.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-test-review.md +14 -0
- package/templates/bmad/commands/bmad-tea-testarch-trace.md +14 -0
- package/templates/bmad/core/agents/bmad-master.md +56 -0
- package/templates/bmad/core/config.yaml +8 -0
- package/templates/bmad/core/module-help.csv +9 -0
- package/templates/bmad/core/tasks/editorial-review-prose.xml +102 -0
- package/templates/bmad/core/tasks/editorial-review-structure.xml +208 -0
- package/templates/bmad/core/tasks/help.md +86 -0
- package/templates/bmad/core/tasks/index-docs.xml +65 -0
- package/templates/bmad/core/tasks/review-adversarial-general.xml +49 -0
- package/templates/bmad/core/tasks/shard-doc.xml +108 -0
- package/templates/bmad/core/tasks/workflow.xml +235 -0
- package/templates/bmad/core/workflows/advanced-elicitation/methods.csv +51 -0
- package/templates/bmad/core/workflows/advanced-elicitation/workflow.xml +118 -0
- package/templates/bmad/core/workflows/brainstorming/brain-methods.csv +62 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-01-session-setup.md +197 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-01b-continue.md +122 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-02a-user-selected.md +225 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +237 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-02c-random-selection.md +209 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +264 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-03-technique-execution.md +399 -0
- package/templates/bmad/core/workflows/brainstorming/steps/step-04-idea-organization.md +303 -0
- package/templates/bmad/core/workflows/brainstorming/template.md +15 -0
- package/templates/bmad/core/workflows/brainstorming/workflow.md +58 -0
- package/templates/bmad/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -0
- package/templates/bmad/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +187 -0
- package/templates/bmad/core/workflows/party-mode/steps/step-03-graceful-exit.md +168 -0
- package/templates/bmad/core/workflows/party-mode/workflow.md +194 -0
- package/templates/bmad/tea/agents/tea.md +71 -0
- package/templates/bmad/tea/config.yaml +20 -0
- package/templates/bmad/tea/module-help.csv +10 -0
- package/templates/bmad/tea/teams/default-party.csv +2 -0
- package/templates/bmad/tea/testarch/knowledge/adr-quality-readiness-checklist.md +377 -0
- package/templates/bmad/tea/testarch/knowledge/api-request.md +563 -0
- package/templates/bmad/tea/testarch/knowledge/api-testing-patterns.md +915 -0
- package/templates/bmad/tea/testarch/knowledge/auth-session.md +548 -0
- package/templates/bmad/tea/testarch/knowledge/burn-in.md +273 -0
- package/templates/bmad/tea/testarch/knowledge/ci-burn-in.md +675 -0
- package/templates/bmad/tea/testarch/knowledge/component-tdd.md +486 -0
- package/templates/bmad/tea/testarch/knowledge/contract-testing.md +957 -0
- package/templates/bmad/tea/testarch/knowledge/data-factories.md +500 -0
- package/templates/bmad/tea/testarch/knowledge/email-auth.md +721 -0
- package/templates/bmad/tea/testarch/knowledge/error-handling.md +725 -0
- package/templates/bmad/tea/testarch/knowledge/feature-flags.md +750 -0
- package/templates/bmad/tea/testarch/knowledge/file-utils.md +456 -0
- package/templates/bmad/tea/testarch/knowledge/fixture-architecture.md +401 -0
- package/templates/bmad/tea/testarch/knowledge/fixtures-composition.md +382 -0
- package/templates/bmad/tea/testarch/knowledge/intercept-network-call.md +426 -0
- package/templates/bmad/tea/testarch/knowledge/log.md +426 -0
- package/templates/bmad/tea/testarch/knowledge/network-error-monitor.md +401 -0
- package/templates/bmad/tea/testarch/knowledge/network-first.md +486 -0
- package/templates/bmad/tea/testarch/knowledge/network-recorder.md +527 -0
- package/templates/bmad/tea/testarch/knowledge/nfr-criteria.md +670 -0
- package/templates/bmad/tea/testarch/knowledge/overview.md +286 -0
- package/templates/bmad/tea/testarch/knowledge/playwright-cli.md +165 -0
- package/templates/bmad/tea/testarch/knowledge/playwright-config.md +730 -0
- package/templates/bmad/tea/testarch/knowledge/probability-impact.md +601 -0
- package/templates/bmad/tea/testarch/knowledge/recurse.md +421 -0
- package/templates/bmad/tea/testarch/knowledge/risk-governance.md +615 -0
- package/templates/bmad/tea/testarch/knowledge/selective-testing.md +732 -0
- package/templates/bmad/tea/testarch/knowledge/selector-resilience.md +527 -0
- package/templates/bmad/tea/testarch/knowledge/test-healing-patterns.md +644 -0
- package/templates/bmad/tea/testarch/knowledge/test-levels-framework.md +473 -0
- package/templates/bmad/tea/testarch/knowledge/test-priorities-matrix.md +373 -0
- package/templates/bmad/tea/testarch/knowledge/test-quality.md +664 -0
- package/templates/bmad/tea/testarch/knowledge/timing-debugging.md +372 -0
- package/templates/bmad/tea/testarch/knowledge/visual-debugging.md +524 -0
- package/templates/bmad/tea/testarch/tea-index.csv +36 -0
- package/templates/bmad/tea/workflows/testarch/README.md +74 -0
- package/templates/bmad/tea/workflows/testarch/atdd/atdd-checklist-template.md +371 -0
- package/templates/bmad/tea/workflows/testarch/atdd/checklist.md +374 -0
- package/templates/bmad/tea/workflows/testarch/atdd/instructions.md +45 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-01-preflight-and-context.md +196 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-01b-resume.md +96 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-02-generation-mode.md +125 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-03-test-strategy.md +110 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04-generate-tests.md +229 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04a-subprocess-api-failing.md +215 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04b-subprocess-e2e-failing.md +244 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-04c-aggregate.md +354 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-c/step-05-validate-and-complete.md +106 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/atdd/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/atdd/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/atdd/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/atdd/workflow-plan.md +21 -0
- package/templates/bmad/tea/workflows/testarch/atdd/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/atdd/workflow.yaml +46 -0
- package/templates/bmad/tea/workflows/testarch/automate/checklist.md +582 -0
- package/templates/bmad/tea/workflows/testarch/automate/instructions.md +50 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-01-preflight-and-context.md +205 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-01b-resume.md +94 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-02-identify-targets.md +145 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03-generate-tests.md +278 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03a-subprocess-api.md +183 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03b-subprocess-backend.md +246 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03b-subprocess-e2e.md +213 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-03c-aggregate.md +377 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-c/step-04-validate-and-summarize.md +106 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/automate/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/automate/validation-report-20260127-095021.md +72 -0
- package/templates/bmad/tea/workflows/testarch/automate/validation-report-20260127-102401.md +114 -0
- package/templates/bmad/tea/workflows/testarch/automate/workflow-plan.md +20 -0
- package/templates/bmad/tea/workflows/testarch/automate/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/automate/workflow.yaml +53 -0
- package/templates/bmad/tea/workflows/testarch/ci/azure-pipelines-template.yaml +155 -0
- package/templates/bmad/tea/workflows/testarch/ci/checklist.md +288 -0
- package/templates/bmad/tea/workflows/testarch/ci/github-actions-template.yaml +210 -0
- package/templates/bmad/tea/workflows/testarch/ci/gitlab-ci-template.yaml +158 -0
- package/templates/bmad/tea/workflows/testarch/ci/harness-pipeline-template.yaml +159 -0
- package/templates/bmad/tea/workflows/testarch/ci/instructions.md +45 -0
- package/templates/bmad/tea/workflows/testarch/ci/jenkins-pipeline-template.groovy +129 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-01-preflight.md +158 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-01b-resume.md +110 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-02-generate-pipeline.md +118 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-03-configure-quality-gates.md +105 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-c/step-04-validate-and-summary.md +92 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/ci/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/ci/validation-report-20260127-095021.md +72 -0
- package/templates/bmad/tea/workflows/testarch/ci/validation-report-20260127-102401.md +114 -0
- package/templates/bmad/tea/workflows/testarch/ci/workflow-plan.md +20 -0
- package/templates/bmad/tea/workflows/testarch/ci/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/ci/workflow.yaml +48 -0
- package/templates/bmad/tea/workflows/testarch/framework/checklist.md +321 -0
- package/templates/bmad/tea/workflows/testarch/framework/instructions.md +45 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-01-preflight.md +132 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-01b-resume.md +116 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-02-select-framework.md +117 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-03-scaffold-framework.md +196 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-04-docs-and-scripts.md +105 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-c/step-05-validate-and-summary.md +93 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/framework/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/framework/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/framework/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/framework/workflow-plan.md +22 -0
- package/templates/bmad/tea/workflows/testarch/framework/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/framework/workflow.yaml +48 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/checklist.md +407 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/instructions.md +43 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/nfr-report-template.md +470 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-01-load-context.md +138 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-01b-resume.md +106 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-02-define-thresholds.md +107 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-03-gather-evidence.md +108 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04-evaluate-and-score.md +140 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04a-subprocess-security.md +138 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04b-subprocess-performance.md +84 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04c-subprocess-reliability.md +85 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04d-subprocess-scalability.md +88 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-04e-aggregate-nfr.md +247 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-c/step-05-generate-report.md +108 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow-plan.md +19 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/nfr-assess/workflow.yaml +48 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/checklist.md +197 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/curriculum.yaml +129 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/quiz-questions.yaml +206 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/role-paths.yaml +136 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/session-content-map.yaml +207 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/data/tea-resources-index.yaml +359 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/instructions.md +130 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-01-init.md +235 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-01b-continue.md +147 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-02-assess.md +258 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-03-session-menu.md +219 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-01.md +460 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-02.md +465 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-03.md +301 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-04.md +234 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-05.md +234 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-06.md +209 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-04-session-07.md +212 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-c/step-05-completion.md +339 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-e/step-e-01-assess-workflow.md +141 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-e/step-e-02-apply-edits.md +122 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/steps-v/step-v-01-validate.md +263 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/certificate-template.md +86 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/progress-template.yaml +95 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/templates/session-notes-template.md +83 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/workflow-plan-teach-me-testing.md +950 -0
- package/templates/bmad/tea/workflows/testarch/teach-me-testing/workflow.md +90 -0
- package/templates/bmad/tea/workflows/testarch/test-design/checklist.md +464 -0
- package/templates/bmad/tea/workflows/testarch/test-design/instructions.md +105 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-01-detect-mode.md +134 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-01b-resume.md +102 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-02-load-context.md +212 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-03-risk-and-testability.md +110 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-04-coverage-plan.md +123 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-c/step-05-generate-output.md +151 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/test-design/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/test-design/test-design-architecture-template.md +230 -0
- package/templates/bmad/tea/workflows/testarch/test-design/test-design-handoff-template.md +70 -0
- package/templates/bmad/tea/workflows/testarch/test-design/test-design-qa-template.md +396 -0
- package/templates/bmad/tea/workflows/testarch/test-design/test-design-template.md +344 -0
- package/templates/bmad/tea/workflows/testarch/test-design/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/test-design/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/test-design/workflow-plan.md +22 -0
- package/templates/bmad/tea/workflows/testarch/test-design/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/test-design/workflow.yaml +77 -0
- package/templates/bmad/tea/workflows/testarch/test-review/checklist.md +475 -0
- package/templates/bmad/tea/workflows/testarch/test-review/instructions.md +45 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-01-load-context.md +169 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-01b-resume.md +104 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-02-discover-tests.md +113 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03-quality-evaluation.md +173 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03a-subprocess-determinism.md +214 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03b-subprocess-isolation.md +125 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03c-subprocess-maintainability.md +102 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03d-subprocess-coverage.md +111 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03e-subprocess-performance.md +117 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-03f-aggregate-scores.md +277 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-c/step-04-generate-report.md +111 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/test-review/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/test-review/test-review-template.md +387 -0
- package/templates/bmad/tea/workflows/testarch/test-review/validation-report-20260127-095021.md +72 -0
- package/templates/bmad/tea/workflows/testarch/test-review/validation-report-20260127-102401.md +114 -0
- package/templates/bmad/tea/workflows/testarch/test-review/workflow-plan.md +18 -0
- package/templates/bmad/tea/workflows/testarch/test-review/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/test-review/workflow.yaml +48 -0
- package/templates/bmad/tea/workflows/testarch/trace/checklist.md +647 -0
- package/templates/bmad/tea/workflows/testarch/trace/instructions.md +43 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-01-load-context.md +105 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-01b-resume.md +102 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-02-discover-tests.md +112 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-03-map-criteria.md +97 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-04-analyze-gaps.md +330 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-c/step-05-gate-decision.md +266 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-e/step-01-assess.md +65 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-e/step-02-apply-edit.md +60 -0
- package/templates/bmad/tea/workflows/testarch/trace/steps-v/step-01-validate.md +67 -0
- package/templates/bmad/tea/workflows/testarch/trace/trace-template.md +708 -0
- package/templates/bmad/tea/workflows/testarch/trace/validation-report-20260127-095021.md +73 -0
- package/templates/bmad/tea/workflows/testarch/trace/validation-report-20260127-102401.md +116 -0
- package/templates/bmad/tea/workflows/testarch/trace/workflow-plan.md +21 -0
- package/templates/bmad/tea/workflows/testarch/trace/workflow.md +41 -0
- package/templates/bmad/tea/workflows/testarch/trace/workflow.yaml +56 -0
- package/templates/ecc/agents/architect.md +211 -0
- package/templates/ecc/agents/build-error-resolver.md +114 -0
- package/templates/ecc/agents/code-reviewer.md +224 -0
- package/templates/ecc/agents/database-reviewer.md +91 -0
- package/templates/ecc/agents/doc-updater.md +107 -0
- package/templates/ecc/agents/e2e-runner.md +107 -0
- package/templates/ecc/agents/go-build-resolver.md +94 -0
- package/templates/ecc/agents/go-reviewer.md +76 -0
- package/templates/ecc/agents/planner.md +212 -0
- package/templates/ecc/agents/python-reviewer.md +98 -0
- package/templates/ecc/agents/refactor-cleaner.md +85 -0
- package/templates/ecc/agents/security-reviewer.md +108 -0
- package/templates/ecc/agents/tdd-guide.md +80 -0
- package/templates/ecc/commands/build-fix.md +62 -0
- package/templates/ecc/commands/checkpoint.md +74 -0
- package/templates/ecc/commands/code-review.md +40 -0
- package/templates/ecc/commands/e2e.md +363 -0
- package/templates/ecc/commands/eval.md +120 -0
- package/templates/ecc/commands/evolve.md +193 -0
- package/templates/ecc/commands/go-build.md +183 -0
- package/templates/ecc/commands/go-review.md +148 -0
- package/templates/ecc/commands/go-test.md +268 -0
- package/templates/ecc/commands/instinct-export.md +91 -0
- package/templates/ecc/commands/instinct-import.md +142 -0
- package/templates/ecc/commands/instinct-status.md +86 -0
- package/templates/ecc/commands/learn-eval.md +91 -0
- package/templates/ecc/commands/learn.md +70 -0
- package/templates/ecc/commands/multi-backend.md +158 -0
- package/templates/ecc/commands/multi-execute.md +310 -0
- package/templates/ecc/commands/multi-frontend.md +158 -0
- package/templates/ecc/commands/multi-plan.md +261 -0
- package/templates/ecc/commands/multi-workflow.md +183 -0
- package/templates/ecc/commands/orchestrate.md +172 -0
- package/templates/ecc/commands/plan.md +113 -0
- package/templates/ecc/commands/pm2.md +272 -0
- package/templates/ecc/commands/python-review.md +297 -0
- package/templates/ecc/commands/refactor-clean.md +80 -0
- package/templates/ecc/commands/sessions.md +305 -0
- package/templates/ecc/commands/setup-pm.md +80 -0
- package/templates/ecc/commands/skill-create.md +174 -0
- package/templates/ecc/commands/tdd.md +326 -0
- package/templates/ecc/commands/test-coverage.md +69 -0
- package/templates/ecc/commands/update-codemaps.md +72 -0
- package/templates/ecc/commands/update-docs.md +84 -0
- package/templates/ecc/commands/verify.md +59 -0
- package/templates/ecc/rules/README.md +82 -0
- package/templates/ecc/rules/common/agents.md +49 -0
- package/templates/ecc/rules/common/coding-style.md +48 -0
- package/templates/ecc/rules/common/git-workflow.md +45 -0
- package/templates/ecc/rules/common/hooks.md +30 -0
- package/templates/ecc/rules/common/patterns.md +31 -0
- package/templates/ecc/rules/common/performance.md +55 -0
- package/templates/ecc/rules/common/security.md +29 -0
- package/templates/ecc/rules/common/testing.md +29 -0
- package/templates/ecc/rules/golang/coding-style.md +32 -0
- package/templates/ecc/rules/golang/hooks.md +17 -0
- package/templates/ecc/rules/golang/patterns.md +45 -0
- package/templates/ecc/rules/golang/security.md +34 -0
- package/templates/ecc/rules/golang/testing.md +31 -0
- package/templates/ecc/rules/python/coding-style.md +42 -0
- package/templates/ecc/rules/python/hooks.md +19 -0
- package/templates/ecc/rules/python/patterns.md +39 -0
- package/templates/ecc/rules/python/security.md +30 -0
- package/templates/ecc/rules/python/testing.md +38 -0
- package/templates/ecc/rules/typescript/coding-style.md +65 -0
- package/templates/ecc/rules/typescript/hooks.md +22 -0
- package/templates/ecc/rules/typescript/patterns.md +52 -0
- package/templates/ecc/rules/typescript/security.md +28 -0
- package/templates/ecc/rules/typescript/testing.md +18 -0
- package/templates/ecc/skills/api-design/SKILL.md +522 -0
- package/templates/ecc/skills/backend-patterns/SKILL.md +597 -0
- package/templates/ecc/skills/clickhouse-io/SKILL.md +438 -0
- package/templates/ecc/skills/coding-standards/SKILL.md +529 -0
- package/templates/ecc/skills/configure-ecc/SKILL.md +298 -0
- package/templates/ecc/skills/content-hash-cache-pattern/SKILL.md +160 -0
- package/templates/ecc/skills/continuous-learning/SKILL.md +118 -0
- package/templates/ecc/skills/continuous-learning/config.json +18 -0
- package/templates/ecc/skills/continuous-learning/evaluate-session.sh +69 -0
- package/templates/ecc/skills/continuous-learning-v2/SKILL.md +292 -0
- package/templates/ecc/skills/continuous-learning-v2/agents/observer.md +137 -0
- package/templates/ecc/skills/continuous-learning-v2/agents/start-observer.sh +143 -0
- package/templates/ecc/skills/continuous-learning-v2/config.json +41 -0
- package/templates/ecc/skills/continuous-learning-v2/hooks/observe.sh +157 -0
- package/templates/ecc/skills/continuous-learning-v2/scripts/instinct-cli.py +575 -0
- package/templates/ecc/skills/continuous-learning-v2/scripts/test_parse_instinct.py +82 -0
- package/templates/ecc/skills/cost-aware-llm-pipeline/SKILL.md +182 -0
- package/templates/ecc/skills/cpp-coding-standards/SKILL.md +722 -0
- package/templates/ecc/skills/cpp-testing/SKILL.md +322 -0
- package/templates/ecc/skills/database-migrations/SKILL.md +334 -0
- package/templates/ecc/skills/deployment-patterns/SKILL.md +426 -0
- package/templates/ecc/skills/django-patterns/SKILL.md +733 -0
- package/templates/ecc/skills/django-security/SKILL.md +592 -0
- package/templates/ecc/skills/django-tdd/SKILL.md +728 -0
- package/templates/ecc/skills/django-verification/SKILL.md +468 -0
- package/templates/ecc/skills/docker-patterns/SKILL.md +363 -0
- package/templates/ecc/skills/e2e-testing/SKILL.md +325 -0
- package/templates/ecc/skills/eval-harness/SKILL.md +235 -0
- package/templates/ecc/skills/frontend-patterns/SKILL.md +641 -0
- package/templates/ecc/skills/golang-patterns/SKILL.md +673 -0
- package/templates/ecc/skills/golang-testing/SKILL.md +719 -0
- package/templates/ecc/skills/iterative-retrieval/SKILL.md +210 -0
- package/templates/ecc/skills/java-coding-standards/SKILL.md +146 -0
- package/templates/ecc/skills/jpa-patterns/SKILL.md +150 -0
- package/templates/ecc/skills/nutrient-document-processing/SKILL.md +165 -0
- package/templates/ecc/skills/postgres-patterns/SKILL.md +146 -0
- package/templates/ecc/skills/project-guidelines-example/SKILL.md +348 -0
- package/templates/ecc/skills/python-patterns/SKILL.md +749 -0
- package/templates/ecc/skills/python-testing/SKILL.md +815 -0
- package/templates/ecc/skills/regex-vs-llm-structured-text/SKILL.md +219 -0
- package/templates/ecc/skills/search-first/SKILL.md +159 -0
- package/templates/ecc/skills/security-review/SKILL.md +494 -0
- package/templates/ecc/skills/security-review/cloud-infrastructure-security.md +361 -0
- package/templates/ecc/skills/security-scan/SKILL.md +164 -0
- package/templates/ecc/skills/springboot-patterns/SKILL.md +313 -0
- package/templates/ecc/skills/springboot-security/SKILL.md +271 -0
- package/templates/ecc/skills/springboot-tdd/SKILL.md +157 -0
- package/templates/ecc/skills/springboot-verification/SKILL.md +230 -0
- package/templates/ecc/skills/strategic-compact/SKILL.md +102 -0
- package/templates/ecc/skills/strategic-compact/suggest-compact.sh +54 -0
- package/templates/ecc/skills/swift-actor-persistence/SKILL.md +142 -0
- package/templates/ecc/skills/swift-protocol-di-testing/SKILL.md +189 -0
- package/templates/ecc/skills/tdd-workflow/SKILL.md +409 -0
- package/templates/ecc/skills/verification-loop/SKILL.md +125 -0
- package/templates/ext-skills/pinchtab/SKILL.md +570 -0
- package/templates/mcp/claude-code/.mcp.json +35 -0
- package/templates/mcp/trae/mcp.json +35 -0
- package/templates/trae-bmad/rules/bmad-agent-bmad-master.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-analyst.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-architect.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-dev.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-pm.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-qa.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-quick-flow-solo-dev.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-sm.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-tech-writer.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-bmm-ux-designer.md +15 -0
- package/templates/trae-bmad/rules/bmad-agent-tea-tea.md +15 -0
- package/templates/trae-bmad/rules/bmad-bmm-check-implementation-readiness.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-code-review.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-correct-course.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-architecture.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-epics-and-stories.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-prd.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-product-brief.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-story.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-create-ux-design.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-dev-story.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-document-project.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-domain-research.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-edit-prd.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-generate-project-context.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-market-research.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-qa-automate.md +15 -0
- package/templates/trae-bmad/rules/bmad-bmm-qa-generate-e2e-tests.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-quick-dev.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-quick-spec.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-retrospective.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-sprint-planning.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-sprint-status.md +14 -0
- package/templates/trae-bmad/rules/bmad-bmm-technical-research.md +6 -0
- package/templates/trae-bmad/rules/bmad-bmm-validate-prd.md +6 -0
- package/templates/trae-bmad/rules/bmad-brainstorming.md +6 -0
- package/templates/trae-bmad/rules/bmad-editorial-review-prose.md +10 -0
- package/templates/trae-bmad/rules/bmad-editorial-review-structure.md +10 -0
- package/templates/trae-bmad/rules/bmad-help.md +10 -0
- package/templates/trae-bmad/rules/bmad-index-docs.md +10 -0
- package/templates/trae-bmad/rules/bmad-party-mode.md +6 -0
- package/templates/trae-bmad/rules/bmad-review-adversarial-general.md +10 -0
- package/templates/trae-bmad/rules/bmad-shard-doc.md +10 -0
- package/templates/trae-bmad/rules/bmad-tea-teach-me-testing.md +6 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-atdd.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-automate.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-ci.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-framework.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-nfr.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-test-design.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-test-review.md +14 -0
- package/templates/trae-bmad/rules/bmad-tea-testarch-trace.md +14 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Restate requirements, assess risks, and create step-by-step implementation plan. WAIT for user CONFIRM before touching any code.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Plan Command
|
|
6
|
+
|
|
7
|
+
This command invokes the **planner** agent to create a comprehensive implementation plan before writing any code.
|
|
8
|
+
|
|
9
|
+
## What This Command Does
|
|
10
|
+
|
|
11
|
+
1. **Restate Requirements** - Clarify what needs to be built
|
|
12
|
+
2. **Identify Risks** - Surface potential issues and blockers
|
|
13
|
+
3. **Create Step Plan** - Break down implementation into phases
|
|
14
|
+
4. **Wait for Confirmation** - MUST receive user approval before proceeding
|
|
15
|
+
|
|
16
|
+
## When to Use
|
|
17
|
+
|
|
18
|
+
Use `/plan` when:
|
|
19
|
+
- Starting a new feature
|
|
20
|
+
- Making significant architectural changes
|
|
21
|
+
- Working on complex refactoring
|
|
22
|
+
- Multiple files/components will be affected
|
|
23
|
+
- Requirements are unclear or ambiguous
|
|
24
|
+
|
|
25
|
+
## How It Works
|
|
26
|
+
|
|
27
|
+
The planner agent will:
|
|
28
|
+
|
|
29
|
+
1. **Analyze the request** and restate requirements in clear terms
|
|
30
|
+
2. **Break down into phases** with specific, actionable steps
|
|
31
|
+
3. **Identify dependencies** between components
|
|
32
|
+
4. **Assess risks** and potential blockers
|
|
33
|
+
5. **Estimate complexity** (High/Medium/Low)
|
|
34
|
+
6. **Present the plan** and WAIT for your explicit confirmation
|
|
35
|
+
|
|
36
|
+
## Example Usage
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
User: /plan I need to add real-time notifications when markets resolve
|
|
40
|
+
|
|
41
|
+
Agent (planner):
|
|
42
|
+
# Implementation Plan: Real-Time Market Resolution Notifications
|
|
43
|
+
|
|
44
|
+
## Requirements Restatement
|
|
45
|
+
- Send notifications to users when markets they're watching resolve
|
|
46
|
+
- Support multiple notification channels (in-app, email, webhook)
|
|
47
|
+
- Ensure notifications are delivered reliably
|
|
48
|
+
- Include market outcome and user's position result
|
|
49
|
+
|
|
50
|
+
## Implementation Phases
|
|
51
|
+
|
|
52
|
+
### Phase 1: Database Schema
|
|
53
|
+
- Add notifications table with columns: id, user_id, market_id, type, status, created_at
|
|
54
|
+
- Add user_notification_preferences table for channel preferences
|
|
55
|
+
- Create indexes on user_id and market_id for performance
|
|
56
|
+
|
|
57
|
+
### Phase 2: Notification Service
|
|
58
|
+
- Create notification service in lib/notifications.ts
|
|
59
|
+
- Implement notification queue using BullMQ/Redis
|
|
60
|
+
- Add retry logic for failed deliveries
|
|
61
|
+
- Create notification templates
|
|
62
|
+
|
|
63
|
+
### Phase 3: Integration Points
|
|
64
|
+
- Hook into market resolution logic (when status changes to "resolved")
|
|
65
|
+
- Query all users with positions in market
|
|
66
|
+
- Enqueue notifications for each user
|
|
67
|
+
|
|
68
|
+
### Phase 4: Frontend Components
|
|
69
|
+
- Create NotificationBell component in header
|
|
70
|
+
- Add NotificationList modal
|
|
71
|
+
- Implement real-time updates via Supabase subscriptions
|
|
72
|
+
- Add notification preferences page
|
|
73
|
+
|
|
74
|
+
## Dependencies
|
|
75
|
+
- Redis (for queue)
|
|
76
|
+
- Email service (SendGrid/Resend)
|
|
77
|
+
- Supabase real-time subscriptions
|
|
78
|
+
|
|
79
|
+
## Risks
|
|
80
|
+
- HIGH: Email deliverability (SPF/DKIM required)
|
|
81
|
+
- MEDIUM: Performance with 1000+ users per market
|
|
82
|
+
- MEDIUM: Notification spam if markets resolve frequently
|
|
83
|
+
- LOW: Real-time subscription overhead
|
|
84
|
+
|
|
85
|
+
## Estimated Complexity: MEDIUM
|
|
86
|
+
- Backend: 4-6 hours
|
|
87
|
+
- Frontend: 3-4 hours
|
|
88
|
+
- Testing: 2-3 hours
|
|
89
|
+
- Total: 9-13 hours
|
|
90
|
+
|
|
91
|
+
**WAITING FOR CONFIRMATION**: Proceed with this plan? (yes/no/modify)
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Important Notes
|
|
95
|
+
|
|
96
|
+
**CRITICAL**: The planner agent will **NOT** write any code until you explicitly confirm the plan with "yes" or "proceed" or similar affirmative response.
|
|
97
|
+
|
|
98
|
+
If you want changes, respond with:
|
|
99
|
+
- "modify: [your changes]"
|
|
100
|
+
- "different approach: [alternative]"
|
|
101
|
+
- "skip phase 2 and do phase 3 first"
|
|
102
|
+
|
|
103
|
+
## Integration with Other Commands
|
|
104
|
+
|
|
105
|
+
After planning:
|
|
106
|
+
- Use `/tdd` to implement with test-driven development
|
|
107
|
+
- Use `/build-fix` if build errors occur
|
|
108
|
+
- Use `/code-review` to review completed implementation
|
|
109
|
+
|
|
110
|
+
## Related Agents
|
|
111
|
+
|
|
112
|
+
This command invokes the `planner` agent located at:
|
|
113
|
+
`~/.claude/agents/planner.md`
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
# PM2 Init
|
|
2
|
+
|
|
3
|
+
Auto-analyze project and generate PM2 service commands.
|
|
4
|
+
|
|
5
|
+
**Command**: `$ARGUMENTS`
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Workflow
|
|
10
|
+
|
|
11
|
+
1. Check PM2 (install via `npm install -g pm2` if missing)
|
|
12
|
+
2. Scan project to identify services (frontend/backend/database)
|
|
13
|
+
3. Generate config files and individual command files
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Service Detection
|
|
18
|
+
|
|
19
|
+
| Type | Detection | Default Port |
|
|
20
|
+
|------|-----------|--------------|
|
|
21
|
+
| Vite | vite.config.* | 5173 |
|
|
22
|
+
| Next.js | next.config.* | 3000 |
|
|
23
|
+
| Nuxt | nuxt.config.* | 3000 |
|
|
24
|
+
| CRA | react-scripts in package.json | 3000 |
|
|
25
|
+
| Express/Node | server/backend/api directory + package.json | 3000 |
|
|
26
|
+
| FastAPI/Flask | requirements.txt / pyproject.toml | 8000 |
|
|
27
|
+
| Go | go.mod / main.go | 8080 |
|
|
28
|
+
|
|
29
|
+
**Port Detection Priority**: User specified > .env > config file > scripts args > default port
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Generated Files
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
project/
|
|
37
|
+
├── ecosystem.config.cjs # PM2 config
|
|
38
|
+
├── {backend}/start.cjs # Python wrapper (if applicable)
|
|
39
|
+
└── .claude/
|
|
40
|
+
├── commands/
|
|
41
|
+
│ ├── pm2-all.md # Start all + monit
|
|
42
|
+
│ ├── pm2-all-stop.md # Stop all
|
|
43
|
+
│ ├── pm2-all-restart.md # Restart all
|
|
44
|
+
│ ├── pm2-{port}.md # Start single + logs
|
|
45
|
+
│ ├── pm2-{port}-stop.md # Stop single
|
|
46
|
+
│ ├── pm2-{port}-restart.md # Restart single
|
|
47
|
+
│ ├── pm2-logs.md # View all logs
|
|
48
|
+
│ └── pm2-status.md # View status
|
|
49
|
+
└── scripts/
|
|
50
|
+
├── pm2-logs-{port}.ps1 # Single service logs
|
|
51
|
+
└── pm2-monit.ps1 # PM2 monitor
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## Windows Configuration (IMPORTANT)
|
|
57
|
+
|
|
58
|
+
### ecosystem.config.cjs
|
|
59
|
+
|
|
60
|
+
**Must use `.cjs` extension**
|
|
61
|
+
|
|
62
|
+
```javascript
|
|
63
|
+
module.exports = {
|
|
64
|
+
apps: [
|
|
65
|
+
// Node.js (Vite/Next/Nuxt)
|
|
66
|
+
{
|
|
67
|
+
name: 'project-3000',
|
|
68
|
+
cwd: './packages/web',
|
|
69
|
+
script: 'node_modules/vite/bin/vite.js',
|
|
70
|
+
args: '--port 3000',
|
|
71
|
+
interpreter: 'C:/Program Files/nodejs/node.exe',
|
|
72
|
+
env: { NODE_ENV: 'development' }
|
|
73
|
+
},
|
|
74
|
+
// Python
|
|
75
|
+
{
|
|
76
|
+
name: 'project-8000',
|
|
77
|
+
cwd: './backend',
|
|
78
|
+
script: 'start.cjs',
|
|
79
|
+
interpreter: 'C:/Program Files/nodejs/node.exe',
|
|
80
|
+
env: { PYTHONUNBUFFERED: '1' }
|
|
81
|
+
}
|
|
82
|
+
]
|
|
83
|
+
}
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**Framework script paths:**
|
|
87
|
+
|
|
88
|
+
| Framework | script | args |
|
|
89
|
+
|-----------|--------|------|
|
|
90
|
+
| Vite | `node_modules/vite/bin/vite.js` | `--port {port}` |
|
|
91
|
+
| Next.js | `node_modules/next/dist/bin/next` | `dev -p {port}` |
|
|
92
|
+
| Nuxt | `node_modules/nuxt/bin/nuxt.mjs` | `dev --port {port}` |
|
|
93
|
+
| Express | `src/index.js` or `server.js` | - |
|
|
94
|
+
|
|
95
|
+
### Python Wrapper Script (start.cjs)
|
|
96
|
+
|
|
97
|
+
```javascript
|
|
98
|
+
const { spawn } = require('child_process');
|
|
99
|
+
const proc = spawn('python', ['-m', 'uvicorn', 'app.main:app', '--host', '0.0.0.0', '--port', '8000', '--reload'], {
|
|
100
|
+
cwd: __dirname, stdio: 'inherit', windowsHide: true
|
|
101
|
+
});
|
|
102
|
+
proc.on('close', (code) => process.exit(code));
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Command File Templates (Minimal Content)
|
|
108
|
+
|
|
109
|
+
### pm2-all.md (Start all + monit)
|
|
110
|
+
````markdown
|
|
111
|
+
Start all services and open PM2 monitor.
|
|
112
|
+
```bash
|
|
113
|
+
cd "{PROJECT_ROOT}" && pm2 start ecosystem.config.cjs && start wt.exe -d "{PROJECT_ROOT}" pwsh -NoExit -c "pm2 monit"
|
|
114
|
+
```
|
|
115
|
+
````
|
|
116
|
+
|
|
117
|
+
### pm2-all-stop.md
|
|
118
|
+
````markdown
|
|
119
|
+
Stop all services.
|
|
120
|
+
```bash
|
|
121
|
+
cd "{PROJECT_ROOT}" && pm2 stop all
|
|
122
|
+
```
|
|
123
|
+
````
|
|
124
|
+
|
|
125
|
+
### pm2-all-restart.md
|
|
126
|
+
````markdown
|
|
127
|
+
Restart all services.
|
|
128
|
+
```bash
|
|
129
|
+
cd "{PROJECT_ROOT}" && pm2 restart all
|
|
130
|
+
```
|
|
131
|
+
````
|
|
132
|
+
|
|
133
|
+
### pm2-{port}.md (Start single + logs)
|
|
134
|
+
````markdown
|
|
135
|
+
Start {name} ({port}) and open logs.
|
|
136
|
+
```bash
|
|
137
|
+
cd "{PROJECT_ROOT}" && pm2 start ecosystem.config.cjs --only {name} && start wt.exe -d "{PROJECT_ROOT}" pwsh -NoExit -c "pm2 logs {name}"
|
|
138
|
+
```
|
|
139
|
+
````
|
|
140
|
+
|
|
141
|
+
### pm2-{port}-stop.md
|
|
142
|
+
````markdown
|
|
143
|
+
Stop {name} ({port}).
|
|
144
|
+
```bash
|
|
145
|
+
cd "{PROJECT_ROOT}" && pm2 stop {name}
|
|
146
|
+
```
|
|
147
|
+
````
|
|
148
|
+
|
|
149
|
+
### pm2-{port}-restart.md
|
|
150
|
+
````markdown
|
|
151
|
+
Restart {name} ({port}).
|
|
152
|
+
```bash
|
|
153
|
+
cd "{PROJECT_ROOT}" && pm2 restart {name}
|
|
154
|
+
```
|
|
155
|
+
````
|
|
156
|
+
|
|
157
|
+
### pm2-logs.md
|
|
158
|
+
````markdown
|
|
159
|
+
View all PM2 logs.
|
|
160
|
+
```bash
|
|
161
|
+
cd "{PROJECT_ROOT}" && pm2 logs
|
|
162
|
+
```
|
|
163
|
+
````
|
|
164
|
+
|
|
165
|
+
### pm2-status.md
|
|
166
|
+
````markdown
|
|
167
|
+
View PM2 status.
|
|
168
|
+
```bash
|
|
169
|
+
cd "{PROJECT_ROOT}" && pm2 status
|
|
170
|
+
```
|
|
171
|
+
````
|
|
172
|
+
|
|
173
|
+
### PowerShell Scripts (pm2-logs-{port}.ps1)
|
|
174
|
+
```powershell
|
|
175
|
+
Set-Location "{PROJECT_ROOT}"
|
|
176
|
+
pm2 logs {name}
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
### PowerShell Scripts (pm2-monit.ps1)
|
|
180
|
+
```powershell
|
|
181
|
+
Set-Location "{PROJECT_ROOT}"
|
|
182
|
+
pm2 monit
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## Key Rules
|
|
188
|
+
|
|
189
|
+
1. **Config file**: `ecosystem.config.cjs` (not .js)
|
|
190
|
+
2. **Node.js**: Specify bin path directly + interpreter
|
|
191
|
+
3. **Python**: Node.js wrapper script + `windowsHide: true`
|
|
192
|
+
4. **Open new window**: `start wt.exe -d "{path}" pwsh -NoExit -c "command"`
|
|
193
|
+
5. **Minimal content**: Each command file has only 1-2 lines description + bash block
|
|
194
|
+
6. **Direct execution**: No AI parsing needed, just run the bash command
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## Execute
|
|
199
|
+
|
|
200
|
+
Based on `$ARGUMENTS`, execute init:
|
|
201
|
+
|
|
202
|
+
1. Scan project for services
|
|
203
|
+
2. Generate `ecosystem.config.cjs`
|
|
204
|
+
3. Generate `{backend}/start.cjs` for Python services (if applicable)
|
|
205
|
+
4. Generate command files in `.claude/commands/`
|
|
206
|
+
5. Generate script files in `.claude/scripts/`
|
|
207
|
+
6. **Update project CLAUDE.md** with PM2 info (see below)
|
|
208
|
+
7. **Display completion summary** with terminal commands
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Post-Init: Update CLAUDE.md
|
|
213
|
+
|
|
214
|
+
After generating files, append PM2 section to project's `CLAUDE.md` (create if not exists):
|
|
215
|
+
|
|
216
|
+
````markdown
|
|
217
|
+
## PM2 Services
|
|
218
|
+
|
|
219
|
+
| Port | Name | Type |
|
|
220
|
+
|------|------|------|
|
|
221
|
+
| {port} | {name} | {type} |
|
|
222
|
+
|
|
223
|
+
**Terminal Commands:**
|
|
224
|
+
```bash
|
|
225
|
+
pm2 start ecosystem.config.cjs # First time
|
|
226
|
+
pm2 start all # After first time
|
|
227
|
+
pm2 stop all / pm2 restart all
|
|
228
|
+
pm2 start {name} / pm2 stop {name}
|
|
229
|
+
pm2 logs / pm2 status / pm2 monit
|
|
230
|
+
pm2 save # Save process list
|
|
231
|
+
pm2 resurrect # Restore saved list
|
|
232
|
+
```
|
|
233
|
+
````
|
|
234
|
+
|
|
235
|
+
**Rules for CLAUDE.md update:**
|
|
236
|
+
- If PM2 section exists, replace it
|
|
237
|
+
- If not exists, append to end
|
|
238
|
+
- Keep content minimal and essential
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## Post-Init: Display Summary
|
|
243
|
+
|
|
244
|
+
After all files generated, output:
|
|
245
|
+
|
|
246
|
+
```
|
|
247
|
+
## PM2 Init Complete
|
|
248
|
+
|
|
249
|
+
**Services:**
|
|
250
|
+
|
|
251
|
+
| Port | Name | Type |
|
|
252
|
+
|------|------|------|
|
|
253
|
+
| {port} | {name} | {type} |
|
|
254
|
+
|
|
255
|
+
**Claude Commands:** /pm2-all, /pm2-all-stop, /pm2-{port}, /pm2-{port}-stop, /pm2-logs, /pm2-status
|
|
256
|
+
|
|
257
|
+
**Terminal Commands:**
|
|
258
|
+
## First time (with config file)
|
|
259
|
+
pm2 start ecosystem.config.cjs && pm2 save
|
|
260
|
+
|
|
261
|
+
## After first time (simplified)
|
|
262
|
+
pm2 start all # Start all
|
|
263
|
+
pm2 stop all # Stop all
|
|
264
|
+
pm2 restart all # Restart all
|
|
265
|
+
pm2 start {name} # Start single
|
|
266
|
+
pm2 stop {name} # Stop single
|
|
267
|
+
pm2 logs # View logs
|
|
268
|
+
pm2 monit # Monitor panel
|
|
269
|
+
pm2 resurrect # Restore saved processes
|
|
270
|
+
|
|
271
|
+
**Tip:** Run `pm2 save` after first start to enable simplified commands.
|
|
272
|
+
```
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Comprehensive Python code review for PEP 8 compliance, type hints, security, and Pythonic idioms. Invokes the python-reviewer agent.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Python Code Review
|
|
6
|
+
|
|
7
|
+
This command invokes the **python-reviewer** agent for comprehensive Python-specific code review.
|
|
8
|
+
|
|
9
|
+
## What This Command Does
|
|
10
|
+
|
|
11
|
+
1. **Identify Python Changes**: Find modified `.py` files via `git diff`
|
|
12
|
+
2. **Run Static Analysis**: Execute `ruff`, `mypy`, `pylint`, `black --check`
|
|
13
|
+
3. **Security Scan**: Check for SQL injection, command injection, unsafe deserialization
|
|
14
|
+
4. **Type Safety Review**: Analyze type hints and mypy errors
|
|
15
|
+
5. **Pythonic Code Check**: Verify code follows PEP 8 and Python best practices
|
|
16
|
+
6. **Generate Report**: Categorize issues by severity
|
|
17
|
+
|
|
18
|
+
## When to Use
|
|
19
|
+
|
|
20
|
+
Use `/python-review` when:
|
|
21
|
+
- After writing or modifying Python code
|
|
22
|
+
- Before committing Python changes
|
|
23
|
+
- Reviewing pull requests with Python code
|
|
24
|
+
- Onboarding to a new Python codebase
|
|
25
|
+
- Learning Pythonic patterns and idioms
|
|
26
|
+
|
|
27
|
+
## Review Categories
|
|
28
|
+
|
|
29
|
+
### CRITICAL (Must Fix)
|
|
30
|
+
- SQL/Command injection vulnerabilities
|
|
31
|
+
- Unsafe eval/exec usage
|
|
32
|
+
- Pickle unsafe deserialization
|
|
33
|
+
- Hardcoded credentials
|
|
34
|
+
- YAML unsafe load
|
|
35
|
+
- Bare except clauses hiding errors
|
|
36
|
+
|
|
37
|
+
### HIGH (Should Fix)
|
|
38
|
+
- Missing type hints on public functions
|
|
39
|
+
- Mutable default arguments
|
|
40
|
+
- Swallowing exceptions silently
|
|
41
|
+
- Not using context managers for resources
|
|
42
|
+
- C-style looping instead of comprehensions
|
|
43
|
+
- Using type() instead of isinstance()
|
|
44
|
+
- Race conditions without locks
|
|
45
|
+
|
|
46
|
+
### MEDIUM (Consider)
|
|
47
|
+
- PEP 8 formatting violations
|
|
48
|
+
- Missing docstrings on public functions
|
|
49
|
+
- Print statements instead of logging
|
|
50
|
+
- Inefficient string operations
|
|
51
|
+
- Magic numbers without named constants
|
|
52
|
+
- Not using f-strings for formatting
|
|
53
|
+
- Unnecessary list creation
|
|
54
|
+
|
|
55
|
+
## Automated Checks Run
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Type checking
|
|
59
|
+
mypy .
|
|
60
|
+
|
|
61
|
+
# Linting and formatting
|
|
62
|
+
ruff check .
|
|
63
|
+
black --check .
|
|
64
|
+
isort --check-only .
|
|
65
|
+
|
|
66
|
+
# Security scanning
|
|
67
|
+
bandit -r .
|
|
68
|
+
|
|
69
|
+
# Dependency audit
|
|
70
|
+
pip-audit
|
|
71
|
+
safety check
|
|
72
|
+
|
|
73
|
+
# Testing
|
|
74
|
+
pytest --cov=app --cov-report=term-missing
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Example Usage
|
|
78
|
+
|
|
79
|
+
```text
|
|
80
|
+
User: /python-review
|
|
81
|
+
|
|
82
|
+
Agent:
|
|
83
|
+
# Python Code Review Report
|
|
84
|
+
|
|
85
|
+
## Files Reviewed
|
|
86
|
+
- app/routes/user.py (modified)
|
|
87
|
+
- app/services/auth.py (modified)
|
|
88
|
+
|
|
89
|
+
## Static Analysis Results
|
|
90
|
+
✓ ruff: No issues
|
|
91
|
+
✓ mypy: No errors
|
|
92
|
+
⚠️ black: 2 files need reformatting
|
|
93
|
+
✓ bandit: No security issues
|
|
94
|
+
|
|
95
|
+
## Issues Found
|
|
96
|
+
|
|
97
|
+
[CRITICAL] SQL Injection vulnerability
|
|
98
|
+
File: app/routes/user.py:42
|
|
99
|
+
Issue: User input directly interpolated into SQL query
|
|
100
|
+
```python
|
|
101
|
+
query = f"SELECT * FROM users WHERE id = {user_id}" # Bad
|
|
102
|
+
```
|
|
103
|
+
Fix: Use parameterized query
|
|
104
|
+
```python
|
|
105
|
+
query = "SELECT * FROM users WHERE id = %s" # Good
|
|
106
|
+
cursor.execute(query, (user_id,))
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
[HIGH] Mutable default argument
|
|
110
|
+
File: app/services/auth.py:18
|
|
111
|
+
Issue: Mutable default argument causes shared state
|
|
112
|
+
```python
|
|
113
|
+
def process_items(items=[]): # Bad
|
|
114
|
+
items.append("new")
|
|
115
|
+
return items
|
|
116
|
+
```
|
|
117
|
+
Fix: Use None as default
|
|
118
|
+
```python
|
|
119
|
+
def process_items(items=None): # Good
|
|
120
|
+
if items is None:
|
|
121
|
+
items = []
|
|
122
|
+
items.append("new")
|
|
123
|
+
return items
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
[MEDIUM] Missing type hints
|
|
127
|
+
File: app/services/auth.py:25
|
|
128
|
+
Issue: Public function without type annotations
|
|
129
|
+
```python
|
|
130
|
+
def get_user(user_id): # Bad
|
|
131
|
+
return db.find(user_id)
|
|
132
|
+
```
|
|
133
|
+
Fix: Add type hints
|
|
134
|
+
```python
|
|
135
|
+
def get_user(user_id: str) -> Optional[User]: # Good
|
|
136
|
+
return db.find(user_id)
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
[MEDIUM] Not using context manager
|
|
140
|
+
File: app/routes/user.py:55
|
|
141
|
+
Issue: File not closed on exception
|
|
142
|
+
```python
|
|
143
|
+
f = open("config.json") # Bad
|
|
144
|
+
data = f.read()
|
|
145
|
+
f.close()
|
|
146
|
+
```
|
|
147
|
+
Fix: Use context manager
|
|
148
|
+
```python
|
|
149
|
+
with open("config.json") as f: # Good
|
|
150
|
+
data = f.read()
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## Summary
|
|
154
|
+
- CRITICAL: 1
|
|
155
|
+
- HIGH: 1
|
|
156
|
+
- MEDIUM: 2
|
|
157
|
+
|
|
158
|
+
Recommendation: ❌ Block merge until CRITICAL issue is fixed
|
|
159
|
+
|
|
160
|
+
## Formatting Required
|
|
161
|
+
Run: `black app/routes/user.py app/services/auth.py`
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## Approval Criteria
|
|
165
|
+
|
|
166
|
+
| Status | Condition |
|
|
167
|
+
|--------|-----------|
|
|
168
|
+
| ✅ Approve | No CRITICAL or HIGH issues |
|
|
169
|
+
| ⚠️ Warning | Only MEDIUM issues (merge with caution) |
|
|
170
|
+
| ❌ Block | CRITICAL or HIGH issues found |
|
|
171
|
+
|
|
172
|
+
## Integration with Other Commands
|
|
173
|
+
|
|
174
|
+
- Use `/tdd` first to ensure tests pass
|
|
175
|
+
- Use `/code-review` for non-Python specific concerns
|
|
176
|
+
- Use `/python-review` before committing
|
|
177
|
+
- Use `/build-fix` if static analysis tools fail
|
|
178
|
+
|
|
179
|
+
## Framework-Specific Reviews
|
|
180
|
+
|
|
181
|
+
### Django Projects
|
|
182
|
+
The reviewer checks for:
|
|
183
|
+
- N+1 query issues (use `select_related` and `prefetch_related`)
|
|
184
|
+
- Missing migrations for model changes
|
|
185
|
+
- Raw SQL usage when ORM could work
|
|
186
|
+
- Missing `transaction.atomic()` for multi-step operations
|
|
187
|
+
|
|
188
|
+
### FastAPI Projects
|
|
189
|
+
The reviewer checks for:
|
|
190
|
+
- CORS misconfiguration
|
|
191
|
+
- Pydantic models for request validation
|
|
192
|
+
- Response models correctness
|
|
193
|
+
- Proper async/await usage
|
|
194
|
+
- Dependency injection patterns
|
|
195
|
+
|
|
196
|
+
### Flask Projects
|
|
197
|
+
The reviewer checks for:
|
|
198
|
+
- Context management (app context, request context)
|
|
199
|
+
- Proper error handling
|
|
200
|
+
- Blueprint organization
|
|
201
|
+
- Configuration management
|
|
202
|
+
|
|
203
|
+
## Related
|
|
204
|
+
|
|
205
|
+
- Agent: `agents/python-reviewer.md`
|
|
206
|
+
- Skills: `skills/python-patterns/`, `skills/python-testing/`
|
|
207
|
+
|
|
208
|
+
## Common Fixes
|
|
209
|
+
|
|
210
|
+
### Add Type Hints
|
|
211
|
+
```python
|
|
212
|
+
# Before
|
|
213
|
+
def calculate(x, y):
|
|
214
|
+
return x + y
|
|
215
|
+
|
|
216
|
+
# After
|
|
217
|
+
from typing import Union
|
|
218
|
+
|
|
219
|
+
def calculate(x: Union[int, float], y: Union[int, float]) -> Union[int, float]:
|
|
220
|
+
return x + y
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### Use Context Managers
|
|
224
|
+
```python
|
|
225
|
+
# Before
|
|
226
|
+
f = open("file.txt")
|
|
227
|
+
data = f.read()
|
|
228
|
+
f.close()
|
|
229
|
+
|
|
230
|
+
# After
|
|
231
|
+
with open("file.txt") as f:
|
|
232
|
+
data = f.read()
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
### Use List Comprehensions
|
|
236
|
+
```python
|
|
237
|
+
# Before
|
|
238
|
+
result = []
|
|
239
|
+
for item in items:
|
|
240
|
+
if item.active:
|
|
241
|
+
result.append(item.name)
|
|
242
|
+
|
|
243
|
+
# After
|
|
244
|
+
result = [item.name for item in items if item.active]
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### Fix Mutable Defaults
|
|
248
|
+
```python
|
|
249
|
+
# Before
|
|
250
|
+
def append(value, items=[]):
|
|
251
|
+
items.append(value)
|
|
252
|
+
return items
|
|
253
|
+
|
|
254
|
+
# After
|
|
255
|
+
def append(value, items=None):
|
|
256
|
+
if items is None:
|
|
257
|
+
items = []
|
|
258
|
+
items.append(value)
|
|
259
|
+
return items
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
### Use f-strings (Python 3.6+)
|
|
263
|
+
```python
|
|
264
|
+
# Before
|
|
265
|
+
name = "Alice"
|
|
266
|
+
greeting = "Hello, " + name + "!"
|
|
267
|
+
greeting2 = "Hello, {}".format(name)
|
|
268
|
+
|
|
269
|
+
# After
|
|
270
|
+
greeting = f"Hello, {name}!"
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### Fix String Concatenation in Loops
|
|
274
|
+
```python
|
|
275
|
+
# Before
|
|
276
|
+
result = ""
|
|
277
|
+
for item in items:
|
|
278
|
+
result += str(item)
|
|
279
|
+
|
|
280
|
+
# After
|
|
281
|
+
result = "".join(str(item) for item in items)
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
## Python Version Compatibility
|
|
285
|
+
|
|
286
|
+
The reviewer notes when code uses features from newer Python versions:
|
|
287
|
+
|
|
288
|
+
| Feature | Minimum Python |
|
|
289
|
+
|---------|----------------|
|
|
290
|
+
| Type hints | 3.5+ |
|
|
291
|
+
| f-strings | 3.6+ |
|
|
292
|
+
| Walrus operator (`:=`) | 3.8+ |
|
|
293
|
+
| Position-only parameters | 3.8+ |
|
|
294
|
+
| Match statements | 3.10+ |
|
|
295
|
+
| Type unions (`x | None`) | 3.10+ |
|
|
296
|
+
|
|
297
|
+
Ensure your project's `pyproject.toml` or `setup.py` specifies the correct minimum Python version.
|