wizz-method 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +7 -0
- package/.claude-plugin/marketplace.json +45 -45
- package/build/artifacts/llms-full.txt +476 -476
- package/build/site/404.html +3 -3
- package/build/site/explanation/advanced-elicitation/index.html +4 -4
- package/build/site/explanation/adversarial-review/index.html +5 -5
- package/build/site/explanation/analysis-phase/index.html +5 -5
- package/build/site/explanation/brainstorming/index.html +5 -5
- package/build/site/explanation/checkpoint-preview/index.html +6 -6
- package/build/site/explanation/established-projects-faq/index.html +5 -5
- package/build/site/explanation/forensic-investigation/index.html +6 -6
- package/build/site/explanation/named-agents/index.html +16 -16
- package/build/site/explanation/party-mode/index.html +9 -9
- package/build/site/explanation/preventing-agent-conflicts/index.html +5 -5
- package/build/site/explanation/project-context/index.html +19 -19
- package/build/site/explanation/quick-dev/index.html +6 -6
- package/build/site/explanation/web-bundles/index.html +10 -10
- package/build/site/explanation/why-solutioning-matters/index.html +5 -5
- package/build/site/how-to/customize-bmad/index.html +48 -48
- package/build/site/how-to/established-projects/index.html +17 -17
- package/build/site/how-to/expand-bmad-for-your-org/index.html +43 -43
- package/build/site/how-to/get-answers-about-bmad/index.html +14 -14
- package/build/site/how-to/install-bmad/index.html +23 -23
- package/build/site/how-to/install-custom-modules/index.html +17 -17
- package/build/site/how-to/non-interactive-installation/index.html +4 -4
- package/build/site/how-to/project-context/index.html +10 -10
- package/build/site/how-to/quick-fixes/index.html +8 -8
- package/build/site/how-to/shard-large-documents/index.html +8 -8
- package/build/site/how-to/upgrade-to-v6/index.html +11 -11
- package/build/site/how-to/use-web-bundles/index.html +6 -6
- package/build/site/index.html +28 -28
- package/build/site/llms-full.txt +476 -476
- package/build/site/pagefind/fragment/en_175de32.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_24258fb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_24f53a6.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_27ba8f9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_2b5aa5c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_41cab15.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_49047e0.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_4a187d2.pf_fragment +0 -0
- package/build/site/pagefind/fragment/{en_22b33a0.pf_fragment → en_514725b.pf_fragment} +0 -0
- package/build/site/pagefind/fragment/en_56b1635.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_5ad92a9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_7aea5bc.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_81bcd7f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_82aec61.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_85dcebf.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_89a1a7a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_8ade291.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_8c11f8a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_8c1bde3.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_938e9c4.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_94bfc21.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_ab62b53.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_b0d23ee.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_b51d75b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_bb113eb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_c9fea21.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_cdd772f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_cefed6a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_da351b7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_e07e982.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_ea289f9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_f1c3711.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_f4389af.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_f52c9f9.pf_fragment +0 -0
- package/build/site/pagefind/index/en_82c64dc.pf_index +0 -0
- package/build/site/pagefind/index/en_d0dd3c7.pf_index +0 -0
- package/build/site/pagefind/index/en_e890f88.pf_index +0 -0
- package/build/site/pagefind/pagefind-entry.json +1 -1
- package/build/site/pagefind/pagefind.en_ee1b8a17c8.pf_meta +0 -0
- package/build/site/reference/agents/index.html +8 -8
- package/build/site/reference/commands/index.html +17 -17
- package/build/site/reference/core-tools/index.html +28 -28
- package/build/site/reference/modules/index.html +8 -8
- package/build/site/reference/testing/index.html +10 -10
- package/build/site/reference/workflow-map/index.html +18 -18
- package/build/site/roadmap/index.html +8 -8
- package/build/site/sitemap-0.xml +1 -1
- package/build/site/tutorials/getting-started/index.html +61 -61
- package/build/site/workflow-map-diagram.html +2 -2
- package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/evals.json +31 -31
- package/package.json +1 -1
- package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/SKILL.md +5 -5
- package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/customize.toml +1 -1
- package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-06-research-synthesis.md +1 -1
- package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/SKILL.md +5 -5
- package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/customize.toml +1 -1
- package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-06-research-completion.md +1 -1
- package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/SKILL.md +5 -5
- package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/customize.toml +1 -1
- package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-06-research-synthesis.md +1 -1
- package/src/bmm-skills/1-analysis/{bmad-agent-analyst → wizz-agent-analyst}/SKILL.md +7 -7
- package/src/bmm-skills/1-analysis/{bmad-agent-analyst → wizz-agent-analyst}/customize.toml +13 -7
- package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/SKILL.md +7 -7
- package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/customize.toml +1 -1
- package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/SKILL.md +5 -5
- package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/customize.toml +1 -1
- package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/workflows/deep-dive-instructions.md +1 -1
- package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/workflows/deep-dive-workflow.md +1 -1
- package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/workflows/full-scan-instructions.md +1 -1
- package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/workflows/full-scan-workflow.md +1 -1
- package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/SKILL.md +6 -6
- package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/customize.toml +1 -1
- package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/references/verdict.md +1 -1
- package/src/bmm-skills/1-analysis/{bmad-product-brief → wizz-product-brief}/SKILL.md +6 -6
- package/src/bmm-skills/1-analysis/{bmad-product-brief → wizz-product-brief}/customize.toml +8 -8
- package/src/bmm-skills/1-analysis/wizz-set-feature/SKILL.md +74 -0
- package/src/bmm-skills/2-plan-workflows/{bmad-agent-pm → wizz-agent-pm}/SKILL.md +7 -7
- package/src/bmm-skills/2-plan-workflows/{bmad-agent-pm → wizz-agent-pm}/customize.toml +5 -4
- package/src/bmm-skills/2-plan-workflows/{bmad-agent-ux-designer → wizz-agent-ux-designer}/SKILL.md +7 -7
- package/src/bmm-skills/2-plan-workflows/{bmad-agent-ux-designer → wizz-agent-ux-designer}/customize.toml +2 -1
- package/src/bmm-skills/2-plan-workflows/{bmad-create-prd → wizz-create-prd}/SKILL.md +11 -11
- package/src/bmm-skills/2-plan-workflows/{bmad-create-prd → wizz-create-prd}/customize.toml +1 -1
- package/src/bmm-skills/2-plan-workflows/wizz-edit-prd/SKILL.md +30 -0
- package/src/bmm-skills/2-plan-workflows/{bmad-edit-prd → wizz-edit-prd}/customize.toml +2 -2
- package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/SKILL.md +5 -5
- package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/assets/prd-template.md +1 -1
- package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/customize.toml +8 -8
- package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/references/headless.md +1 -1
- package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/SKILL.md +5 -5
- package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/customize.toml +5 -5
- package/src/bmm-skills/2-plan-workflows/{bmad-validate-prd → wizz-validate-prd}/SKILL.md +11 -11
- package/src/bmm-skills/2-plan-workflows/{bmad-validate-prd → wizz-validate-prd}/customize.toml +2 -2
- package/src/bmm-skills/3-solutioning/{bmad-agent-architect → wizz-agent-architect}/SKILL.md +7 -7
- package/src/bmm-skills/3-solutioning/{bmad-agent-architect → wizz-agent-architect}/customize.toml +3 -2
- package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/SKILL.md +11 -11
- package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/customize.toml +6 -6
- package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/references/headless.md +1 -1
- package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/SKILL.md +5 -5
- package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/customize.toml +1 -1
- package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-06-final-assessment.md +2 -2
- package/src/bmm-skills/3-solutioning/{bmad-create-architecture → wizz-create-architecture}/SKILL.md +11 -11
- package/src/bmm-skills/3-solutioning/{bmad-create-architecture → wizz-create-architecture}/customize.toml +1 -1
- package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/SKILL.md +5 -5
- package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/customize.toml +2 -2
- package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/steps/step-01-validate-prerequisites.md +3 -3
- package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/steps/step-02-design-epics.md +2 -2
- package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/steps/step-03-create-stories.md +2 -2
- package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/steps/step-04-final-validation.md +2 -2
- package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/SKILL.md +5 -5
- package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/customize.toml +1 -1
- package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/steps/step-02-generate.md +4 -4
- package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/steps/step-03-complete.md +1 -1
- package/src/bmm-skills/4-implementation/{bmad-agent-dev → wizz-agent-dev}/SKILL.md +7 -7
- package/src/bmm-skills/4-implementation/{bmad-agent-dev → wizz-agent-dev}/customize.toml +9 -8
- package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/SKILL.md +5 -5
- package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-05-wrapup.md +1 -1
- package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/SKILL.md +5 -5
- package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/steps/step-02-review.md +2 -2
- package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/steps/step-04-present.md +1 -1
- package/src/bmm-skills/4-implementation/{bmad-correct-course → wizz-correct-course}/SKILL.md +6 -6
- package/src/bmm-skills/4-implementation/{bmad-correct-course → wizz-correct-course}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/SKILL.md +6 -6
- package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-dev-story → wizz-dev-story}/SKILL.md +7 -6
- package/src/bmm-skills/4-implementation/{bmad-dev-story → wizz-dev-story}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-investigate → wizz-investigate}/SKILL.md +5 -5
- package/src/bmm-skills/4-implementation/{bmad-investigate → wizz-investigate}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-qa-generate-e2e-tests → wizz-qa-generate-e2e-tests}/SKILL.md +7 -7
- package/src/bmm-skills/4-implementation/{bmad-qa-generate-e2e-tests → wizz-qa-generate-e2e-tests}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/SKILL.md +7 -5
- package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-02-plan.md +1 -1
- package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-04-review.md +2 -2
- package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-05-present.md +1 -1
- package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-oneshot.md +2 -2
- package/src/bmm-skills/4-implementation/{bmad-retrospective → wizz-retrospective}/SKILL.md +7 -7
- package/src/bmm-skills/4-implementation/{bmad-retrospective → wizz-retrospective}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-sprint-planning → wizz-sprint-planning}/SKILL.md +6 -6
- package/src/bmm-skills/4-implementation/{bmad-sprint-planning → wizz-sprint-planning}/customize.toml +1 -1
- package/src/bmm-skills/4-implementation/{bmad-sprint-status → wizz-sprint-status}/SKILL.md +7 -7
- package/src/bmm-skills/4-implementation/{bmad-sprint-status → wizz-sprint-status}/customize.toml +1 -1
- package/src/bmm-skills/module-help.csv +31 -30
- package/src/bmm-skills/module.yaml +12 -7
- package/src/core-skills/module-help.csv +11 -11
- package/src/core-skills/module.yaml +1 -1
- package/src/core-skills/{bmad-advanced-elicitation → wizz-advanced-elicitation}/SKILL.md +3 -3
- package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/SKILL.md +4 -4
- package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/customize.toml +4 -4
- package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/finalize.md +3 -3
- package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/headless.md +1 -1
- package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/in-chat-techniques.md +1 -1
- package/src/core-skills/{bmad-customize → wizz-customize}/SKILL.md +14 -14
- package/src/core-skills/{bmad-customize → wizz-customize}/scripts/list_customizable_skills.py +5 -5
- package/src/core-skills/{bmad-customize → wizz-customize}/scripts/tests/test_list_customizable_skills.py +21 -21
- package/src/core-skills/{bmad-editorial-review-prose → wizz-editorial-review-prose}/SKILL.md +1 -1
- package/src/core-skills/{bmad-editorial-review-structure → wizz-editorial-review-structure}/SKILL.md +1 -1
- package/src/core-skills/{bmad-help → wizz-help}/SKILL.md +4 -4
- package/src/core-skills/{bmad-index-docs → wizz-index-docs}/SKILL.md +1 -1
- package/src/core-skills/{bmad-party-mode → wizz-party-mode}/SKILL.md +4 -4
- package/src/core-skills/{bmad-party-mode → wizz-party-mode}/customize.toml +3 -3
- package/src/core-skills/{bmad-party-mode → wizz-party-mode}/references/create-party.md +5 -5
- package/src/core-skills/{bmad-party-mode → wizz-party-mode}/scripts/resolve_party.py +4 -4
- package/src/core-skills/{bmad-party-mode → wizz-party-mode}/scripts/tests/test-resolve_party.py +15 -15
- package/src/core-skills/{bmad-review-adversarial-general → wizz-review-adversarial-general}/SKILL.md +1 -1
- package/src/core-skills/{bmad-review-edge-case-hunter → wizz-review-edge-case-hunter}/SKILL.md +1 -1
- package/src/core-skills/{bmad-shard-doc → wizz-shard-doc}/SKILL.md +1 -1
- package/src/core-skills/{bmad-spec → wizz-spec}/SKILL.md +13 -13
- package/src/core-skills/{bmad-spec → wizz-spec}/assets/headless-schemas.md +4 -4
- package/src/core-skills/{bmad-spec → wizz-spec}/customize.toml +5 -5
- package/src/modules/wizz/README.md +2 -2
- package/src/modules/wizz/agents/wizz-ads/SKILL.md +2 -2
- package/src/modules/wizz/agents/wizz-copy/SKILL.md +2 -2
- package/src/modules/wizz/agents/wizz-designer/SKILL.md +2 -2
- package/src/modules/wizz/agents/wizz-growth/SKILL.md +2 -2
- package/src/modules/wizz/agents/wizz-maestro/SKILL.md +10 -10
- package/src/modules/wizz/agents/wizz-maestro/customize.toml +2 -2
- package/src/modules/wizz/agents/wizz-memoria/SKILL.md +2 -2
- package/src/modules/wizz/agents/wizz-qa/SKILL.md +4 -4
- package/src/modules/wizz/agents/wizz-qa/customize.toml +1 -1
- package/src/modules/wizz/agents/wizz-seo/SKILL.md +2 -2
- package/src/modules/wizz/overrides/bmad-agent-analyst.toml +1 -1
- package/src/modules/wizz/overrides/bmad-agent-architect.toml +1 -1
- package/src/modules/wizz/overrides/bmad-agent-dev.toml +1 -1
- package/src/modules/wizz/overrides/bmad-agent-pm.toml +1 -1
- package/src/modules/wizz/overrides/bmad-agent-tech-writer.toml +1 -1
- package/src/modules/wizz/overrides/bmad-agent-ux-designer.toml +1 -1
- package/src/modules/wizz/scripts/wizz-init.mjs +8 -8
- package/src/scripts/resolve_config.py +6 -6
- package/src/scripts/resolve_customization.py +5 -5
- package/tools/installer/README.md +3 -3
- package/tools/installer/bmad-cli.js +3 -3
- package/tools/installer/cli-utils.js +15 -15
- package/tools/installer/commands/install.js +2 -2
- package/tools/installer/commands/status.js +5 -5
- package/tools/installer/commands/uninstall.js +9 -9
- package/tools/installer/core/install-paths.js +2 -2
- package/tools/installer/core/installer.js +28 -28
- package/tools/installer/core/manifest-generator.js +12 -12
- package/tools/installer/core/python-check.js +6 -6
- package/tools/installer/ide/_config-driven.js +2 -2
- package/tools/installer/ide/platform-codes.js +1 -1
- package/tools/installer/ide/shared/installed-skills.js +1 -1
- package/tools/installer/ide/shared/path-utils.js +4 -4
- package/tools/installer/install-messages.yaml +7 -11
- package/tools/installer/modules/external-manager.js +1 -1
- package/tools/installer/modules/official-modules.js +3 -3
- package/tools/installer/set-overrides.js +10 -10
- package/tools/installer/ui.js +8 -8
- package/tools/migrate-custom-module-paths.js +1 -1
- package/tools/skill-validator.md +3 -3
- package/web-bundles/prd-coach/prd-template.md +1 -1
- package/build/site/cs/404/index.html +0 -42
- package/build/site/cs/explanation/advanced-elicitation/index.html +0 -105
- package/build/site/cs/explanation/adversarial-review/index.html +0 -109
- package/build/site/cs/explanation/analysis-phase/index.html +0 -129
- package/build/site/cs/explanation/brainstorming/index.html +0 -92
- package/build/site/cs/explanation/checkpoint-preview/index.html +0 -121
- package/build/site/cs/explanation/established-projects-faq/index.html +0 -107
- package/build/site/cs/explanation/forensic-investigation/index.html +0 -167
- package/build/site/cs/explanation/named-agents/index.html +0 -187
- package/build/site/cs/explanation/party-mode/index.html +0 -101
- package/build/site/cs/explanation/preventing-agent-conflicts/index.html +0 -185
- package/build/site/cs/explanation/project-context/index.html +0 -198
- package/build/site/cs/explanation/quick-dev/index.html +0 -113
- package/build/site/cs/explanation/web-bundles/index.html +0 -178
- package/build/site/cs/explanation/why-solutioning-matters/index.html +0 -168
- package/build/site/cs/how-to/customize-bmad/index.html +0 -197
- package/build/site/cs/how-to/established-projects/index.html +0 -165
- package/build/site/cs/how-to/expand-bmad-for-your-org/index.html +0 -245
- package/build/site/cs/how-to/get-answers-about-bmad/index.html +0 -179
- package/build/site/cs/how-to/install-bmad/index.html +0 -124
- package/build/site/cs/how-to/install-custom-modules/index.html +0 -197
- package/build/site/cs/how-to/non-interactive-installation/index.html +0 -255
- package/build/site/cs/how-to/project-context/index.html +0 -138
- package/build/site/cs/how-to/quick-fixes/index.html +0 -122
- package/build/site/cs/how-to/shard-large-documents/index.html +0 -103
- package/build/site/cs/how-to/upgrade-to-v6/index.html +0 -185
- package/build/site/cs/how-to/use-web-bundles/index.html +0 -99
- package/build/site/cs/index.html +0 -129
- package/build/site/cs/reference/agents/index.html +0 -173
- package/build/site/cs/reference/commands/index.html +0 -250
- package/build/site/cs/reference/core-tools/index.html +0 -337
- package/build/site/cs/reference/modules/index.html +0 -132
- package/build/site/cs/reference/testing/index.html +0 -218
- package/build/site/cs/reference/workflow-map/index.html +0 -240
- package/build/site/cs/roadmap/index.html +0 -77
- package/build/site/cs/tutorials/getting-started/index.html +0 -382
- package/build/site/fr/404/index.html +0 -42
- package/build/site/fr/explanation/advanced-elicitation/index.html +0 -105
- package/build/site/fr/explanation/adversarial-review/index.html +0 -126
- package/build/site/fr/explanation/analysis-phase/index.html +0 -137
- package/build/site/fr/explanation/brainstorming/index.html +0 -92
- package/build/site/fr/explanation/checkpoint-preview/index.html +0 -121
- package/build/site/fr/explanation/established-projects-faq/index.html +0 -107
- package/build/site/fr/explanation/forensic-investigation/index.html +0 -194
- package/build/site/fr/explanation/named-agents/index.html +0 -187
- package/build/site/fr/explanation/party-mode/index.html +0 -112
- package/build/site/fr/explanation/preventing-agent-conflicts/index.html +0 -196
- package/build/site/fr/explanation/project-context/index.html +0 -198
- package/build/site/fr/explanation/quick-dev/index.html +0 -127
- package/build/site/fr/explanation/web-bundles/index.html +0 -198
- package/build/site/fr/explanation/why-solutioning-matters/index.html +0 -191
- package/build/site/fr/how-to/customize-bmad/index.html +0 -277
- package/build/site/fr/how-to/established-projects/index.html +0 -176
- package/build/site/fr/how-to/expand-bmad-for-your-org/index.html +0 -245
- package/build/site/fr/how-to/get-answers-about-bmad/index.html +0 -129
- package/build/site/fr/how-to/install-bmad/index.html +0 -330
- package/build/site/fr/how-to/install-custom-modules/index.html +0 -197
- package/build/site/fr/how-to/non-interactive-installation/index.html +0 -73
- package/build/site/fr/how-to/project-context/index.html +0 -138
- package/build/site/fr/how-to/quick-fixes/index.html +0 -130
- package/build/site/fr/how-to/shard-large-documents/index.html +0 -103
- package/build/site/fr/how-to/upgrade-to-v6/index.html +0 -202
- package/build/site/fr/how-to/use-web-bundles/index.html +0 -99
- package/build/site/fr/index.html +0 -144
- package/build/site/fr/reference/agents/index.html +0 -179
- package/build/site/fr/reference/commands/index.html +0 -264
- package/build/site/fr/reference/core-tools/index.html +0 -392
- package/build/site/fr/reference/modules/index.html +0 -146
- package/build/site/fr/reference/testing/index.html +0 -229
- package/build/site/fr/reference/workflow-map/index.html +0 -282
- package/build/site/fr/roadmap/index.html +0 -77
- package/build/site/fr/tutorials/getting-started/index.html +0 -406
- package/build/site/pagefind/fragment/cs-cz_178b946.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_19e1744.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_1b81518.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_24fd94a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_25c5ff1.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_2a7d8c4.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_2b14d1f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_34d3775.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_366f93d.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_4761b65.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_4d1a40a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_57dfabb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_5c68f33.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_5efaba9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_5f63a83.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_73bbdce.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_7b6af37.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_7d51fe5.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_7db5922.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_83e7116.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_83fec4e.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_84972ee.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_94e9289.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_a0a122c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_a3e7fad.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_af43e66.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_b4f4e0a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_b51b8b3.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_ba705d5.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_c315625.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_cf5138a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_df8bdfe.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_e1b56f8.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_e3e33bb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/cs-cz_f9d07b3.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_026af96.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_132ea1f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_15ee460.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_171773c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_1a7ec42.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_1bb5ebb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_229434b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_38efcf3.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_3d17cef.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_426a8fd.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_446b27a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_582ecad.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_5d6b1f1.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_66f3f7a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_68872f8.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_6e9deef.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_70a6a7e.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_73f0b1e.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_768fd99.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_7e52baa.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_8068cdc.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_9385c94.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_95b9c04.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_9a95e82.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_a66c4ef.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_ac6318c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_bba8f66.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_d9f7193.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_e0e52b1.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_ece4cbe.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_ed6969c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_f12187d.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_f643df1.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_10fdc25.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_132e2e0.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_1529d31.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_1531e2c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_1d51fb7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_27d0aaf.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_583aea8.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_5c4f14f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_654bb96.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_65e37ae.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_6898afa.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_68d0a0b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_6ce4bc1.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_7ddd126.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_7f50a2e.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_8d2df1b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_9b8d33d.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_9c7f851.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_9cf6892.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_a512e53.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_a7ad3f6.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_afeac81.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_b364826.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_bdb3e1e.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_c4884c3.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_c54c827.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_ca664c2.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_ce3562d.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_d086476.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_d0b4e62.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_df4c57f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_e1c2fa8.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_eaa1363.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_f456c69.pf_fragment +0 -0
- package/build/site/pagefind/fragment/fr-fr_fe8d783.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_1e5b1da.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_3268948.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_37f0bf6.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_485232c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_4d3bd13.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_4e578d2.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_4ed2533.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_533743c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_5ffd258.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_6bfed03.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_6f2ed6d.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_71aa305.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_7577c2c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_7883435.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_7f2e496.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_7fce614.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_86274a6.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_8c4fd62.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_a06c773.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_a2e535b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_a4b9dbc.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_b2d8e01.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_b631cf6.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_c970ebb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_d229f2a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_d685e88.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_dab2c52.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_df5a829.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_dfcf280.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_e8ec8cf.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_e9f3439.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_f0bfe83.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_f5462f7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_fcc9bb7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_fd55264.pf_fragment +0 -0
- package/build/site/pagefind/fragment/vi-vn_ffd39df.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_119c5bb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_198e8ce.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_19b87a8.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_1edc3a5.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_36ae67a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_37ab313.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_3b56778.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_5735cd4.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_6110769.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_6d66d9e.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_731b3f5.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_82885ff.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_8be7aac.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_8c3fa9e.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_8f452f7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_96ccc61.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_9f29932.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_a24d786.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_a598178.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_a603f17.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_a9cffcf.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_c1bebbd.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_c38cf84.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_c42a851.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_ce57c6e.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_d4b5cd5.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_da40e6b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_da777ec.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_de145f9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_e376bf7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_e663978.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_e97a13b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_f13873d.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_f25fad4.pf_fragment +0 -0
- package/build/site/pagefind/fragment/zh-cn_f7edf48.pf_fragment +0 -0
- package/build/site/pagefind/index/cs-cz_24147b6.pf_index +0 -0
- package/build/site/pagefind/index/cs-cz_82fc657.pf_index +0 -0
- package/build/site/pagefind/index/cs-cz_8f6a83c.pf_index +0 -0
- package/build/site/pagefind/index/en_432f933.pf_index +0 -0
- package/build/site/pagefind/index/en_70c744a.pf_index +0 -0
- package/build/site/pagefind/index/en_fd84991.pf_index +0 -0
- package/build/site/pagefind/index/fr-fr_7275484.pf_index +0 -0
- package/build/site/pagefind/index/fr-fr_8096dd3.pf_index +0 -0
- package/build/site/pagefind/index/fr-fr_b34df12.pf_index +0 -0
- package/build/site/pagefind/index/fr-fr_e6ad665.pf_index +0 -0
- package/build/site/pagefind/index/vi-vn_129cf7e.pf_index +0 -0
- package/build/site/pagefind/index/vi-vn_7f54472.pf_index +0 -0
- package/build/site/pagefind/index/vi-vn_c1f31ce.pf_index +0 -0
- package/build/site/pagefind/index/vi-vn_c56f634.pf_index +0 -0
- package/build/site/pagefind/index/zh-cn_5ed0486.pf_index +0 -0
- package/build/site/pagefind/index/zh-cn_ad4d724.pf_index +0 -0
- package/build/site/pagefind/index/zh-cn_bc9f7b6.pf_index +0 -0
- package/build/site/pagefind/pagefind.cs-cz_cd39a8505eabf.pf_meta +0 -0
- package/build/site/pagefind/pagefind.en_8ae84a1b9c.pf_meta +0 -0
- package/build/site/pagefind/pagefind.fr-fr_20fca6f342d9a.pf_meta +0 -0
- package/build/site/pagefind/pagefind.vi-vn_6a45d08c2bbc8.pf_meta +0 -0
- package/build/site/pagefind/pagefind.zh-cn_ae911ac338eae.pf_meta +0 -0
- package/build/site/pagefind/wasm.fr-fr.pagefind +0 -0
- package/build/site/vi-vn/404/index.html +0 -42
- package/build/site/vi-vn/bmad-developer-guide/index.html +0 -794
- package/build/site/vi-vn/explanation/advanced-elicitation/index.html +0 -105
- package/build/site/vi-vn/explanation/adversarial-review/index.html +0 -109
- package/build/site/vi-vn/explanation/analysis-phase/index.html +0 -129
- package/build/site/vi-vn/explanation/brainstorming/index.html +0 -92
- package/build/site/vi-vn/explanation/checkpoint-preview/index.html +0 -121
- package/build/site/vi-vn/explanation/established-projects-faq/index.html +0 -107
- package/build/site/vi-vn/explanation/forensic-investigation/index.html +0 -167
- package/build/site/vi-vn/explanation/named-agents/index.html +0 -187
- package/build/site/vi-vn/explanation/party-mode/index.html +0 -101
- package/build/site/vi-vn/explanation/preventing-agent-conflicts/index.html +0 -185
- package/build/site/vi-vn/explanation/project-context/index.html +0 -198
- package/build/site/vi-vn/explanation/quick-dev/index.html +0 -113
- package/build/site/vi-vn/explanation/web-bundles/index.html +0 -178
- package/build/site/vi-vn/explanation/why-solutioning-matters/index.html +0 -168
- package/build/site/vi-vn/how-to/customize-bmad/index.html +0 -277
- package/build/site/vi-vn/how-to/established-projects/index.html +0 -165
- package/build/site/vi-vn/how-to/expand-bmad-for-your-org/index.html +0 -228
- package/build/site/vi-vn/how-to/get-answers-about-bmad/index.html +0 -129
- package/build/site/vi-vn/how-to/install-bmad/index.html +0 -124
- package/build/site/vi-vn/how-to/install-custom-modules/index.html +0 -197
- package/build/site/vi-vn/how-to/non-interactive-installation/index.html +0 -300
- package/build/site/vi-vn/how-to/project-context/index.html +0 -138
- package/build/site/vi-vn/how-to/quick-fixes/index.html +0 -122
- package/build/site/vi-vn/how-to/shard-large-documents/index.html +0 -103
- package/build/site/vi-vn/how-to/upgrade-to-v6/index.html +0 -185
- package/build/site/vi-vn/how-to/use-web-bundles/index.html +0 -99
- package/build/site/vi-vn/index.html +0 -129
- package/build/site/vi-vn/reference/agents/index.html +0 -173
- package/build/site/vi-vn/reference/commands/index.html +0 -250
- package/build/site/vi-vn/reference/core-tools/index.html +0 -337
- package/build/site/vi-vn/reference/modules/index.html +0 -132
- package/build/site/vi-vn/reference/testing/index.html +0 -218
- package/build/site/vi-vn/reference/workflow-map/index.html +0 -240
- package/build/site/vi-vn/roadmap/index.html +0 -77
- package/build/site/vi-vn/tutorials/getting-started/index.html +0 -382
- package/build/site/zh-cn/404/index.html +0 -42
- package/build/site/zh-cn/explanation/advanced-elicitation/index.html +0 -142
- package/build/site/zh-cn/explanation/adversarial-review/index.html +0 -132
- package/build/site/zh-cn/explanation/analysis-phase/index.html +0 -129
- package/build/site/zh-cn/explanation/brainstorming/index.html +0 -147
- package/build/site/zh-cn/explanation/checkpoint-preview/index.html +0 -121
- package/build/site/zh-cn/explanation/established-projects-faq/index.html +0 -122
- package/build/site/zh-cn/explanation/forensic-investigation/index.html +0 -167
- package/build/site/zh-cn/explanation/named-agents/index.html +0 -187
- package/build/site/zh-cn/explanation/party-mode/index.html +0 -144
- package/build/site/zh-cn/explanation/preventing-agent-conflicts/index.html +0 -191
- package/build/site/zh-cn/explanation/project-context/index.html +0 -153
- package/build/site/zh-cn/explanation/quick-dev/index.html +0 -139
- package/build/site/zh-cn/explanation/web-bundles/index.html +0 -178
- package/build/site/zh-cn/explanation/why-solutioning-matters/index.html +0 -175
- package/build/site/zh-cn/how-to/customize-bmad/index.html +0 -202
- package/build/site/zh-cn/how-to/established-projects/index.html +0 -166
- package/build/site/zh-cn/how-to/expand-bmad-for-your-org/index.html +0 -223
- package/build/site/zh-cn/how-to/get-answers-about-bmad/index.html +0 -198
- package/build/site/zh-cn/how-to/install-bmad/index.html +0 -126
- package/build/site/zh-cn/how-to/install-custom-modules/index.html +0 -197
- package/build/site/zh-cn/how-to/non-interactive-installation/index.html +0 -254
- package/build/site/zh-cn/how-to/project-context/index.html +0 -143
- package/build/site/zh-cn/how-to/quick-fixes/index.html +0 -122
- package/build/site/zh-cn/how-to/shard-large-documents/index.html +0 -110
- package/build/site/zh-cn/how-to/upgrade-to-v6/index.html +0 -198
- package/build/site/zh-cn/how-to/use-web-bundles/index.html +0 -99
- package/build/site/zh-cn/index.html +0 -129
- package/build/site/zh-cn/reference/agents/index.html +0 -178
- package/build/site/zh-cn/reference/commands/index.html +0 -245
- package/build/site/zh-cn/reference/core-tools/index.html +0 -313
- package/build/site/zh-cn/reference/modules/index.html +0 -181
- package/build/site/zh-cn/reference/testing/index.html +0 -226
- package/build/site/zh-cn/reference/workflow-map/index.html +0 -238
- package/build/site/zh-cn/roadmap/index.html +0 -77
- package/build/site/zh-cn/tutorials/getting-started/index.html +0 -381
- package/src/bmm-skills/2-plan-workflows/bmad-edit-prd/SKILL.md +0 -30
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/branfield-memo.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/forkbird-brief/addendum.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/forkbird-brief/brief.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/forkbird-brief/decision-log.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/meridian-mobility-report.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/mossridge-brief/addendum.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/mossridge-brief/brief.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/mossridge-brief/decision-log.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/pantry-bridge-interviews.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/q2-brainstorm.md +0 -0
- /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/triggers.json +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-01-init.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-02-domain-analysis.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-03-competitive-landscape.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-04-regulatory-focus.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-05-technical-trends.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/research.template.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/research.template.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-01-init.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-02-customer-behavior.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-03-customer-pain-points.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-04-customer-decisions.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-05-competitive-analysis.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/research.template.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-01-init.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-02-technical-overview.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-03-integration-patterns.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-04-architectural-patterns.md +0 -0
- /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-05-implementation-research.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/explain-concept.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/mermaid-gen.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/validate-doc.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/write-document.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/checklist.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/documentation-requirements.csv +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/instructions.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/deep-dive-template.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/index-template.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/project-overview-template.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/project-scan-report-schema.json +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/source-tree-template.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/agents/artifact-analyzer.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/agents/web-researcher.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/assets/prfaq-template.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/bmad-manifest.json +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/references/customer-faq.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/references/internal-faq.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/references/press-release.md +0 -0
- /package/src/bmm-skills/1-analysis/{bmad-product-brief → wizz-product-brief}/assets/brief-template.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/assets/headless-schemas.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/assets/prd-validation-checklist.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/assets/validation-report-template.html +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/references/validate.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/color-themes.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/design-directions.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/design-example-editorial.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/design-example-mobile.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/design-example-shadcn.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/excalidraw-wireframe.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/experience-example-mobile.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/experience-example-shadcn.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/headless-schemas.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/key-screens.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/validation-report-template.html +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/references/creative-tools.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/references/design-md-spec.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/references/headless.md +0 -0
- /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/references/validate.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/assets/spine-template.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/references/reviewer-gate.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/scripts/lint_spine.py +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/scripts/tests/test_lint_spine.py +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-01-document-discovery.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-02-prd-analysis.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-03-epic-coverage-validation.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-04-ux-alignment.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-05-epic-quality-review.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/templates/readiness-report-template.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/templates/epics-template.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/project-context-template.md +0 -0
- /package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/steps/step-01-discover.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/generate-trail.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-01-orientation.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-02-walkthrough.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-03-detail-pass.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-04-testing.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/steps/step-01-gather-context.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/steps/step-03-triage.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-correct-course → wizz-correct-course}/checklist.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/checklist.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/discover-inputs.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/template.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-dev-story → wizz-dev-story}/checklist.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-investigate → wizz-investigate}/references/case-file-template.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-qa-generate-e2e-tests → wizz-qa-generate-e2e-tests}/checklist.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/compile-epic-context.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/spec-template.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-01-clarify-and-route.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-03-implement.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/sync-sprint-status.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-sprint-planning → wizz-sprint-planning}/checklist.md +0 -0
- /package/src/bmm-skills/4-implementation/{bmad-sprint-planning → wizz-sprint-planning}/sprint-status-template.yaml +0 -0
- /package/src/core-skills/{bmad-advanced-elicitation → wizz-advanced-elicitation}/methods.csv +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/analysis/catalog-analysis.md +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/analysis/method-matrix.csv +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/assets/brain-icons.json +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/assets/brain-methods.csv +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/assets/brain-selector.html +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/converge.md +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/mode-autonomous.md +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/mode-facilitator.md +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/mode-partner.md +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/resume.md +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/scripts/brain.py +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/scripts/memlog.py +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/scripts/tests/test_brain.py +0 -0
- /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/scripts/tests/test_memlog.py +0 -0
- /package/src/core-skills/{bmad-party-mode → wizz-party-mode}/references/mode-agent-team.md +0 -0
- /package/src/core-skills/{bmad-party-mode → wizz-party-mode}/references/mode-auto.md +0 -0
- /package/src/core-skills/{bmad-party-mode → wizz-party-mode}/references/mode-subagent.md +0 -0
- /package/src/core-skills/{bmad-spec → wizz-spec}/assets/spec-template.md +0 -0
package/src/core-skills/{bmad-customize → wizz-customize}/scripts/list_customizable_skills.py
RENAMED
|
@@ -9,7 +9,7 @@ lives in, derived from __file__), finds every sibling directory containing a
|
|
|
9
9
|
`customize.toml`, classifies each as agent and/or workflow based on its
|
|
10
10
|
top-level blocks, reads the skill's SKILL.md frontmatter description for a
|
|
11
11
|
one-liner, and checks whether override files already exist in
|
|
12
|
-
`{project-root}/
|
|
12
|
+
`{project-root}/_wizz/custom/`.
|
|
13
13
|
|
|
14
14
|
Skills in BMad are loaded either from a project-local location (e.g. the
|
|
15
15
|
project's `.claude/skills/` or `.cursor/skills/`) or from a user-global
|
|
@@ -44,7 +44,7 @@ FRONTMATTER_RE = re.compile(r"^---\s*\n(.*?)\n---\s*\n", re.DOTALL)
|
|
|
44
44
|
def default_skills_root() -> Path:
|
|
45
45
|
"""Derive the skills root from this script's location.
|
|
46
46
|
|
|
47
|
-
Layout assumption: {skills_root}/
|
|
47
|
+
Layout assumption: {skills_root}/wizz-customize/scripts/list_customizable_skills.py.
|
|
48
48
|
So the skills root is three parents up from this file.
|
|
49
49
|
"""
|
|
50
50
|
return Path(__file__).resolve().parent.parent.parent
|
|
@@ -98,7 +98,7 @@ def scan_skills(
|
|
|
98
98
|
errors: list[str] = []
|
|
99
99
|
scanned_roots: list[str] = []
|
|
100
100
|
seen_names: set[str] = set()
|
|
101
|
-
custom_dir = project_root / "
|
|
101
|
+
custom_dir = project_root / "_wizz" / "custom"
|
|
102
102
|
|
|
103
103
|
for root in skills_roots:
|
|
104
104
|
if not root.is_dir():
|
|
@@ -170,13 +170,13 @@ def parse_args(argv: list[str]) -> argparse.Namespace:
|
|
|
170
170
|
description=(
|
|
171
171
|
"List customizable BMad skills installed alongside this one, "
|
|
172
172
|
"grouped by surface (agent vs workflow), with override status "
|
|
173
|
-
"looked up against {project-root}/
|
|
173
|
+
"looked up against {project-root}/_wizz/custom/."
|
|
174
174
|
)
|
|
175
175
|
)
|
|
176
176
|
parser.add_argument(
|
|
177
177
|
"--project-root",
|
|
178
178
|
required=True,
|
|
179
|
-
help="Absolute path to the project root (the folder containing
|
|
179
|
+
help="Absolute path to the project root (the folder containing _wizz/).",
|
|
180
180
|
)
|
|
181
181
|
parser.add_argument(
|
|
182
182
|
"--skills-root",
|
|
@@ -9,7 +9,7 @@ Exercises the scanner against a synthesized install tree:
|
|
|
9
9
|
- a workflow-only customize.toml
|
|
10
10
|
- a customize.toml that exposes both surfaces
|
|
11
11
|
- a skill directory with no customize.toml (ignored)
|
|
12
|
-
- a pre-existing team override in
|
|
12
|
+
- a pre-existing team override in _wizz/custom/
|
|
13
13
|
- malformed TOML (surfaces as an error without aborting)
|
|
14
14
|
- multiple skills roots (e.g. project-local + user-global mix)
|
|
15
15
|
|
|
@@ -54,7 +54,7 @@ class ScannerTest(unittest.TestCase):
|
|
|
54
54
|
self.root = Path(self.tmp.name)
|
|
55
55
|
self.skills = self.root / "skills"
|
|
56
56
|
self.skills.mkdir(parents=True)
|
|
57
|
-
self.custom = self.root / "
|
|
57
|
+
self.custom = self.root / "_wizz" / "custom"
|
|
58
58
|
self.custom.mkdir(parents=True)
|
|
59
59
|
|
|
60
60
|
def tearDown(self):
|
|
@@ -63,15 +63,15 @@ class ScannerTest(unittest.TestCase):
|
|
|
63
63
|
def test_agent_only_skill_detected(self):
|
|
64
64
|
_make_skill(
|
|
65
65
|
self.skills,
|
|
66
|
-
"
|
|
66
|
+
"wizz-agent-pm",
|
|
67
67
|
"[agent]\nicon = \"🧠\"\n",
|
|
68
|
-
"---\nname:
|
|
68
|
+
"---\nname: wizz-agent-pm\ndescription: Product manager.\n---\n",
|
|
69
69
|
)
|
|
70
70
|
result = MODULE.scan_skills([self.skills], self.root)
|
|
71
71
|
self.assertEqual(len(result["agents"]), 1)
|
|
72
72
|
self.assertEqual(len(result["workflows"]), 0)
|
|
73
73
|
entry = result["agents"][0]
|
|
74
|
-
self.assertEqual(entry["name"], "
|
|
74
|
+
self.assertEqual(entry["name"], "wizz-agent-pm")
|
|
75
75
|
self.assertEqual(entry["surface"], "agent")
|
|
76
76
|
self.assertEqual(entry["description"], "Product manager.")
|
|
77
77
|
self.assertFalse(entry["has_team_override"])
|
|
@@ -80,9 +80,9 @@ class ScannerTest(unittest.TestCase):
|
|
|
80
80
|
def test_workflow_only_skill_detected(self):
|
|
81
81
|
_make_skill(
|
|
82
82
|
self.skills,
|
|
83
|
-
"
|
|
83
|
+
"wizz-create-prd",
|
|
84
84
|
"[workflow]\npersistent_facts = []\n",
|
|
85
|
-
"---\nname:
|
|
85
|
+
"---\nname: wizz-create-prd\ndescription: 'Create a PRD.'\n---\n",
|
|
86
86
|
)
|
|
87
87
|
result = MODULE.scan_skills([self.skills], self.root)
|
|
88
88
|
self.assertEqual(len(result["agents"]), 0)
|
|
@@ -113,11 +113,11 @@ class ScannerTest(unittest.TestCase):
|
|
|
113
113
|
def test_existing_team_override_flagged(self):
|
|
114
114
|
_make_skill(
|
|
115
115
|
self.skills,
|
|
116
|
-
"
|
|
116
|
+
"wizz-agent-pm",
|
|
117
117
|
"[agent]\nicon = \"x\"\n",
|
|
118
|
-
"---\nname:
|
|
118
|
+
"---\nname: wizz-agent-pm\ndescription: PM.\n---\n",
|
|
119
119
|
)
|
|
120
|
-
(self.custom / "
|
|
120
|
+
(self.custom / "wizz-agent-pm.toml").write_text("[agent]\n")
|
|
121
121
|
result = MODULE.scan_skills([self.skills], self.root)
|
|
122
122
|
entry = result["agents"][0]
|
|
123
123
|
self.assertTrue(entry["has_team_override"])
|
|
@@ -161,19 +161,19 @@ class ScannerTest(unittest.TestCase):
|
|
|
161
161
|
extra_root.mkdir()
|
|
162
162
|
_make_skill(
|
|
163
163
|
self.skills,
|
|
164
|
-
"
|
|
164
|
+
"wizz-agent-pm",
|
|
165
165
|
"[agent]\nicon = \"x\"\n",
|
|
166
|
-
"---\nname:
|
|
166
|
+
"---\nname: wizz-agent-pm\ndescription: PM.\n---\n",
|
|
167
167
|
)
|
|
168
168
|
_make_skill(
|
|
169
169
|
extra_root,
|
|
170
|
-
"
|
|
170
|
+
"wizz-agent-dev",
|
|
171
171
|
"[agent]\nicon = \"y\"\n",
|
|
172
|
-
"---\nname:
|
|
172
|
+
"---\nname: wizz-agent-dev\ndescription: Dev.\n---\n",
|
|
173
173
|
)
|
|
174
174
|
result = MODULE.scan_skills([self.skills, extra_root], self.root)
|
|
175
175
|
names = {a["name"] for a in result["agents"]}
|
|
176
|
-
self.assertEqual(names, {"
|
|
176
|
+
self.assertEqual(names, {"wizz-agent-pm", "wizz-agent-dev"})
|
|
177
177
|
self.assertEqual(len(result["scanned_roots"]), 2)
|
|
178
178
|
|
|
179
179
|
def test_duplicate_skill_name_across_roots_first_wins(self):
|
|
@@ -181,15 +181,15 @@ class ScannerTest(unittest.TestCase):
|
|
|
181
181
|
extra_root.mkdir()
|
|
182
182
|
_make_skill(
|
|
183
183
|
self.skills,
|
|
184
|
-
"
|
|
184
|
+
"wizz-agent-pm",
|
|
185
185
|
"[agent]\nicon = \"primary\"\n",
|
|
186
|
-
"---\nname:
|
|
186
|
+
"---\nname: wizz-agent-pm\ndescription: Primary.\n---\n",
|
|
187
187
|
)
|
|
188
188
|
_make_skill(
|
|
189
189
|
extra_root,
|
|
190
|
-
"
|
|
190
|
+
"wizz-agent-pm",
|
|
191
191
|
"[agent]\nicon = \"duplicate\"\n",
|
|
192
|
-
"---\nname:
|
|
192
|
+
"---\nname: wizz-agent-pm\ndescription: Duplicate.\n---\n",
|
|
193
193
|
)
|
|
194
194
|
result = MODULE.scan_skills([self.skills, extra_root], self.root)
|
|
195
195
|
self.assertEqual(len(result["agents"]), 1)
|
|
@@ -206,9 +206,9 @@ class ScannerTest(unittest.TestCase):
|
|
|
206
206
|
def test_cli_emits_valid_json_and_exits_zero(self):
|
|
207
207
|
_make_skill(
|
|
208
208
|
self.skills,
|
|
209
|
-
"
|
|
209
|
+
"wizz-agent-pm",
|
|
210
210
|
"[agent]\nicon = \"x\"\n",
|
|
211
|
-
"---\nname:
|
|
211
|
+
"---\nname: wizz-agent-pm\ndescription: PM.\n---\n",
|
|
212
212
|
)
|
|
213
213
|
proc = subprocess.run(
|
|
214
214
|
[
|
package/src/core-skills/{bmad-editorial-review-structure → wizz-editorial-review-structure}/SKILL.md
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: wizz-editorial-review-structure
|
|
3
3
|
description: 'Structural editor that proposes cuts, reorganization, and simplification while preserving comprehension. Use when user requests structural review or editorial review of structure'
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: wizz-help
|
|
3
3
|
description: 'Analyzes current state and user query to answer BMad questions or recommend the next skill(s) to use. Use when user asks for help, bmad help, what to do next, or what to start with in BMad.'
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -22,8 +22,8 @@ When this skill completes, the user should:
|
|
|
22
22
|
|
|
23
23
|
## Data Sources
|
|
24
24
|
|
|
25
|
-
- **Catalog**: `{project-root}/
|
|
26
|
-
- **Config**: `config.yaml` and `user-config.yaml` files in `{project-root}/
|
|
25
|
+
- **Catalog**: `{project-root}/_wizz/_config/wizz-help.csv` — assembled manifest of all installed module skills
|
|
26
|
+
- **Config**: `config.yaml` and `user-config.yaml` files in `{project-root}/_wizz/` and its subfolders — resolve `output-location` variables, provide `communication_language` and `project_knowledge`
|
|
27
27
|
- **Artifacts**: Files matching `outputs` patterns at resolved `output-location` paths reveal which steps are possibly completed; their content may also provide grounding context for recommendations
|
|
28
28
|
- **Project knowledge**: If `project_knowledge` resolves to an existing path, read it for grounding context. Never fabricate project-specific details.
|
|
29
29
|
- **Module docs**: Rows with `_meta` in the `skill` column carry a URL or path in `output-location` pointing to the module's documentation (e.g., llms.txt). Fetch and use these to answer general questions about that module.
|
|
@@ -60,7 +60,7 @@ module,skill,display-name,menu-code,description,action,args,phase,preceded-by,fo
|
|
|
60
60
|
|
|
61
61
|
For each recommended item, present:
|
|
62
62
|
- `[menu-code]` **Display name** — e.g., "[PR] PRD"
|
|
63
|
-
- Skill name in backticks — e.g., `
|
|
63
|
+
- Skill name in backticks — e.g., `wizz-prd`
|
|
64
64
|
- For multi-action skills: action invocation context — e.g., "tech-writer lets create a mermaid diagram!"
|
|
65
65
|
- Description if present in CSV; otherwise your existing knowledge of the skill suffices
|
|
66
66
|
- Args if available
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: wizz-party-mode
|
|
3
3
|
description: 'Orchestrates lively group discussions between installed BMAD agents or custom personas, and helps author custom parties. Use when the user requests party mode, a roundtable, or multiple agent perspectives — or wants to create/configure a party, define personas, or build an AI focus-group panel.'
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -7,7 +7,7 @@ description: 'Orchestrates lively group discussions between installed BMAD agent
|
|
|
7
7
|
|
|
8
8
|
Run a round-table where BMAD agents talk to each other, and to the user, like a real group of distinct people in conversation. Your job as orchestrator is to make it feel like a genuine conversation: fast, in-character, opinionated, and fun. Everything below is an objective, not a script. Use whatever mechanism your model and harness make available to hit it.
|
|
9
9
|
|
|
10
|
-
**Two intents.** Usually the user wants to *run* a party — that's everything below. If instead they want to *create or configure* one — invent a cast, add a persona, distill customer data into a focus-group panel, set a default, or **edit an existing custom party** (retune a member, add someone to a group) — load `references/create-party.md` and follow it. Detect which from how they invoke the skill; when it's unclear, ask. Neither intent has a headless contract: running a party is the live conversation itself, and the authoring path's only write goes through `
|
|
10
|
+
**Two intents.** Usually the user wants to *run* a party — that's everything below. If instead they want to *create or configure* one — invent a cast, add a persona, distill customer data into a focus-group panel, set a default, or **edit an existing custom party** (retune a member, add someone to a group) — load `references/create-party.md` and follow it. Detect which from how they invoke the skill; when it's unclear, ask. Neither intent has a headless contract: running a party is the live conversation itself, and the authoring path's only write goes through `wizz-customize`, which gates it.
|
|
11
11
|
|
|
12
12
|
## What "Good" Feels Like
|
|
13
13
|
|
|
@@ -24,8 +24,8 @@ If a round comes back feeling like four essays stapled together, you missed the
|
|
|
24
24
|
|
|
25
25
|
## Setup
|
|
26
26
|
|
|
27
|
-
1. **Resolve customization:** `python3 {project-root}/
|
|
28
|
-
2. Load `{project-root}/
|
|
27
|
+
1. **Resolve customization:** `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`. On failure, read `{skill-root}/customize.toml` directly and use its defaults. Then run each `{workflow.activation_steps_prepend}` entry, and hold each `{workflow.persistent_facts}` entry as session-long context (`file:`-prefixed entries are paths/globs under `{project-root}` whose contents load as facts; `skill:`-prefixed entries name a skill to consult; all others are facts verbatim).
|
|
28
|
+
2. Load `{project-root}/_wizz/core/config.yaml`: greet with `{user_name}`, speak in `{communication_language}`, and resolve `{output_folder}` and `{date}` for the wrap-up keepsake.
|
|
29
29
|
3. **Resolve the active roster:** `python3 {skill-root}/scripts/resolve_party.py --project-root {project-root} --skill {skill-root}`. It returns the active group's full member detail (the `{workflow.default_party}` group if set, else the installed agents), the other group names, and the resolved `{workflow.party_mode}`. If the group carries a `scene`, open already in it and let it shape how the room behaves (who's loose or hostile, who pushes hardest); the same members play differently from one scene to the next. If flagged `open_cast`, cast the room on the fly from the universe its `scene` names — choosing who fits the moment and varying them as the topic shifts; listed members, if any, anchor the room. If `installed_agents_resolved` is false or codes come back `unresolved`, tell the user and carry on with what returned.
|
|
30
30
|
4. **Roster overrides:**
|
|
31
31
|
- If the invocation names a cast or characters inline (e.g. "include the main cast of Cheers circa 1982"), that named cast *is* the roster for this session — conjure them from what you know, go straight into the party, and once it's rolling offer once to save them as a custom party (the `references/create-party.md` write path), without stalling. Ephemeral; this path skips the script.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# DO NOT EDIT -- overwritten on every update.
|
|
2
2
|
#
|
|
3
|
-
# Workflow customization surface for
|
|
3
|
+
# Workflow customization surface for wizz-party-mode.
|
|
4
4
|
#
|
|
5
5
|
# Override files (not edited here):
|
|
6
|
-
# {project-root}/
|
|
7
|
-
# {project-root}/
|
|
6
|
+
# {project-root}/_wizz/custom/wizz-party-mode.toml (team)
|
|
7
|
+
# {project-root}/_wizz/custom/wizz-party-mode.user.toml (personal)
|
|
8
8
|
|
|
9
9
|
[workflow]
|
|
10
10
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Creating a Party
|
|
2
2
|
|
|
3
|
-
A guided authoring flow that turns an idea — a themed cast, a one-off persona, or a pile of raw profile data — into custom party members and groups, written to the user's customize.toml override. The output is configuration; `
|
|
3
|
+
A guided authoring flow that turns an idea — a themed cast, a one-off persona, or a pile of raw profile data — into custom party members and groups, written to the user's customize.toml override. The output is configuration; `wizz-customize` does the actual write.
|
|
4
4
|
|
|
5
5
|
## What you're producing
|
|
6
6
|
|
|
7
|
-
Sparse `[workflow]` override entries for `
|
|
7
|
+
Sparse `[workflow]` override entries for `wizz-party-mode`:
|
|
8
8
|
|
|
9
9
|
- `[[workflow.party_members]]` — one per persona: `code`, `name`, `icon`, `title`, `persona`, optional `capabilities`, optional `model`.
|
|
10
10
|
- `[[workflow.party_groups]]` — when the personas form a named room: `id`, `name`, an optional freeform `scene`, and `members` (codes). `members` is optional: leave it off for an open-cast room whose `scene` names a pool the model casts from on the fly.
|
|
@@ -30,7 +30,7 @@ Ask which they're after if it isn't obvious, then proceed.
|
|
|
30
30
|
|
|
31
31
|
## Editing an existing party
|
|
32
32
|
|
|
33
|
-
When the user wants to change a party that already exists (retune a member's persona, add someone to a group, swap the default), read the current state first so you change rather than clobber: `python3 {project-root}/
|
|
33
|
+
When the user wants to change a party that already exists (retune a member's persona, add someone to a group, swap the default), read the current state first so you change rather than clobber: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow` returns the merged `party_members`, `party_groups`, and `default_party`. Show the member or group being touched, capture only the delta with the user, and hand that sparse change to `wizz-customize` — it replaces a `party_members`/`party_groups` entry whose `code`/`id` matches and appends the rest, so an edit is just the changed entry, never a full rewrite.
|
|
34
34
|
|
|
35
35
|
## Distill from source data (when provided)
|
|
36
36
|
|
|
@@ -56,10 +56,10 @@ Keep pushing for specificity. "Skeptical CFO" is a placeholder; "won't approve a
|
|
|
56
56
|
- Ask straight: **anything else about this party to specify** before you write it — a house dynamic, a missing voice, a member who should lead.
|
|
57
57
|
- Ask whether **this group should be the default party going forward**. Yes → set `default_party` to the group's id. One-offs with no group can't be a default; skip the ask.
|
|
58
58
|
|
|
59
|
-
## Write via
|
|
59
|
+
## Write via wizz-customize
|
|
60
60
|
|
|
61
61
|
**First, check for code collisions.** A custom member whose `code` matches an installed agent silently *overrides* that agent in the collective. Before composing, resolve the collective once — `python3 {skill-root}/scripts/resolve_party.py --project-root {project-root} --skill {skill-root}` — and check each new member's `code` against the returned members. On a collision, surface it ("`analyst` would override the installed Analyst — intended, or pick a different code?") and let the user confirm or rename. One check, not a gate.
|
|
62
62
|
|
|
63
|
-
Compose the sparse override and hand it to `
|
|
63
|
+
Compose the sparse override and hand it to `wizz-customize` to place, confirm, and write — target skill `wizz-party-mode`, `[workflow]` surface. Default to the **user** override (`wizz-party-mode.user.toml`); offer the **team** file when the party is meant to be shared. Hand it the exact entries: the `party_members` tables, any `party_groups` table, and `default_party` if the user opted in. Keep it sparse — only the new entries, never a copy of the base customize.toml. `wizz-customize` shows the TOML, waits for an explicit yes, writes, and verifies the merge; don't write the file yourself.
|
|
64
64
|
|
|
65
65
|
After it lands, tell the user how to use it: `--party <id>` to summon the group, or that it's now the default if they set it.
|
|
@@ -59,7 +59,7 @@ def _run_json(cmd):
|
|
|
59
59
|
|
|
60
60
|
def load_agents(project_root: Path):
|
|
61
61
|
"""Installed agents as {code: entry}. Empty dict (with a flag) on failure."""
|
|
62
|
-
script = project_root / "
|
|
62
|
+
script = project_root / "_wizz" / "scripts" / "resolve_config.py"
|
|
63
63
|
data = _run_json([sys.executable, str(script), "--project-root", str(project_root), "--key", "agents"])
|
|
64
64
|
if data is None:
|
|
65
65
|
return {}, False
|
|
@@ -68,7 +68,7 @@ def load_agents(project_root: Path):
|
|
|
68
68
|
|
|
69
69
|
def load_workflow(project_root: Path, skill_root: Path):
|
|
70
70
|
"""Merged [workflow] table. Falls back to the skill's base customize.toml."""
|
|
71
|
-
script = project_root / "
|
|
71
|
+
script = project_root / "_wizz" / "scripts" / "resolve_customization.py"
|
|
72
72
|
data = _run_json([sys.executable, str(script), "--skill", str(skill_root), "--key", "workflow"])
|
|
73
73
|
if data is not None and "workflow" in data:
|
|
74
74
|
return data["workflow"]
|
|
@@ -84,7 +84,7 @@ def load_workflow(project_root: Path, skill_root: Path):
|
|
|
84
84
|
|
|
85
85
|
|
|
86
86
|
def _alias(code: str) -> str:
|
|
87
|
-
"""Short alias for an installed agent code:
|
|
87
|
+
"""Short alias for an installed agent code: wizz-agent-analyst -> analyst."""
|
|
88
88
|
for prefix in ("bmad-agent-", "bmad-"):
|
|
89
89
|
if code.startswith(prefix):
|
|
90
90
|
return code[len(prefix):]
|
|
@@ -208,7 +208,7 @@ def group_detail(g, collective, index):
|
|
|
208
208
|
def main():
|
|
209
209
|
ap = argparse.ArgumentParser(description="Resolve the party-mode roster, lazily.")
|
|
210
210
|
ap.add_argument("--project-root", required=True)
|
|
211
|
-
ap.add_argument("--skill", required=True, help="Path to the
|
|
211
|
+
ap.add_argument("--skill", required=True, help="Path to the wizz-party-mode skill dir")
|
|
212
212
|
ap.add_argument("--party", help="Resolve full detail for this group id")
|
|
213
213
|
ap.add_argument("--list-groups", action="store_true", help="Group names only")
|
|
214
214
|
args = ap.parse_args()
|
package/src/core-skills/{bmad-party-mode → wizz-party-mode}/scripts/tests/test-resolve_party.py
RENAMED
|
@@ -12,14 +12,14 @@ sys.path.insert(0, str(Path(__file__).resolve().parent.parent))
|
|
|
12
12
|
import resolve_party as rp # noqa: E402
|
|
13
13
|
|
|
14
14
|
AGENTS = {
|
|
15
|
-
"
|
|
16
|
-
"
|
|
15
|
+
"wizz-agent-analyst": {"name": "Mary", "icon": "📊", "title": "Analyst"},
|
|
16
|
+
"wizz-agent-pm": {"name": "John", "icon": "📋", "title": "PM"},
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
class TestAlias(unittest.TestCase):
|
|
21
21
|
def test_strips_known_prefixes(self):
|
|
22
|
-
self.assertEqual(rp._alias("
|
|
22
|
+
self.assertEqual(rp._alias("wizz-agent-analyst"), "analyst")
|
|
23
23
|
self.assertEqual(rp._alias("bmad-foo"), "foo")
|
|
24
24
|
|
|
25
25
|
def test_passes_through_unprefixed(self):
|
|
@@ -29,11 +29,11 @@ class TestAlias(unittest.TestCase):
|
|
|
29
29
|
class TestBuildCollective(unittest.TestCase):
|
|
30
30
|
def test_installed_agents_indexed_by_code_alias_and_name(self):
|
|
31
31
|
col, idx, _ = rp.build_collective(AGENTS, [])
|
|
32
|
-
self.assertEqual(set(col), {"
|
|
33
|
-
self.assertEqual(idx["analyst"], "
|
|
34
|
-
self.assertEqual(idx["mary"], "
|
|
35
|
-
self.assertEqual(idx["
|
|
36
|
-
self.assertEqual(col["
|
|
32
|
+
self.assertEqual(set(col), {"wizz-agent-analyst", "wizz-agent-pm"})
|
|
33
|
+
self.assertEqual(idx["analyst"], "wizz-agent-analyst") # alias
|
|
34
|
+
self.assertEqual(idx["mary"], "wizz-agent-analyst") # name (ci)
|
|
35
|
+
self.assertEqual(idx["wizz-agent-pm"], "wizz-agent-pm") # full code
|
|
36
|
+
self.assertEqual(col["wizz-agent-analyst"]["source"], "installed")
|
|
37
37
|
|
|
38
38
|
def test_custom_member_appends(self):
|
|
39
39
|
col, _, _ = rp.build_collective(AGENTS, [{"code": "morpheus", "name": "Morpheus", "persona": "riddles"}])
|
|
@@ -45,12 +45,12 @@ class TestBuildCollective(unittest.TestCase):
|
|
|
45
45
|
col, _, _ = rp.build_collective(AGENTS, [{"code": "analyst", "name": "Mary-Custom", "persona": "p"}])
|
|
46
46
|
# Override lands on the canonical installed code, not a new "analyst" entry.
|
|
47
47
|
self.assertNotIn("analyst", col)
|
|
48
|
-
self.assertEqual(col["
|
|
49
|
-
self.assertEqual(col["
|
|
48
|
+
self.assertEqual(col["wizz-agent-analyst"]["source"], "custom")
|
|
49
|
+
self.assertEqual(col["wizz-agent-analyst"]["name"], "Mary-Custom")
|
|
50
50
|
|
|
51
51
|
def test_member_without_code_skipped(self):
|
|
52
52
|
col, _, _ = rp.build_collective(AGENTS, [{"name": "Nameless"}])
|
|
53
|
-
self.assertEqual(set(col), {"
|
|
53
|
+
self.assertEqual(set(col), {"wizz-agent-analyst", "wizz-agent-pm"})
|
|
54
54
|
|
|
55
55
|
|
|
56
56
|
class TestResolveMembers(unittest.TestCase):
|
|
@@ -59,7 +59,7 @@ class TestResolveMembers(unittest.TestCase):
|
|
|
59
59
|
|
|
60
60
|
def test_resolves_in_listed_order_and_flags_unknowns(self):
|
|
61
61
|
resolved, unresolved = rp.resolve_members(["morpheus", "analyst", "ghost"], self.col, self.idx)
|
|
62
|
-
self.assertEqual([m["code"] for m in resolved], ["morpheus", "
|
|
62
|
+
self.assertEqual([m["code"] for m in resolved], ["morpheus", "wizz-agent-analyst"])
|
|
63
63
|
self.assertEqual(unresolved, ["ghost"])
|
|
64
64
|
|
|
65
65
|
def test_empty(self):
|
|
@@ -127,11 +127,11 @@ class TestInstalledCodesIsDefaultRoom(unittest.TestCase):
|
|
|
127
127
|
self.assertIn("morpheus", col)
|
|
128
128
|
self.assertIn("sec-hawk", col)
|
|
129
129
|
# ...but NOT in the default room.
|
|
130
|
-
self.assertEqual(installed, ["
|
|
130
|
+
self.assertEqual(installed, ["wizz-agent-analyst", "wizz-agent-pm"])
|
|
131
131
|
default_room = [col[c]["code"] for c in installed]
|
|
132
|
-
self.assertEqual(default_room, ["
|
|
132
|
+
self.assertEqual(default_room, ["wizz-agent-analyst", "wizz-agent-pm"])
|
|
133
133
|
# An override keeps its installed slot (and its custom content).
|
|
134
|
-
self.assertEqual(col["
|
|
134
|
+
self.assertEqual(col["wizz-agent-analyst"]["name"], "Mary-Custom")
|
|
135
135
|
|
|
136
136
|
|
|
137
137
|
if __name__ == "__main__":
|
package/src/core-skills/{bmad-review-edge-case-hunter → wizz-review-edge-case-hunter}/SKILL.md
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: wizz-review-edge-case-hunter
|
|
3
3
|
description: 'Walk every branching path and boundary condition in content, report only unhandled edge cases. Orthogonal to adversarial review - method-driven not attitude-driven. Use when you need exhaustive edge-case analysis of code, specs, or diffs.'
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: wizz-spec
|
|
3
3
|
description: Distill any intent input into the SPEC kernel + companions — the canonical, preservation-validated machine contract for downstream work. Use when the user says "create a spec", "distill this into a spec", "validate this spec", or "update the spec".
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -18,10 +18,10 @@ Multiple skills may call to update the same spec over time.
|
|
|
18
18
|
|
|
19
19
|
## On Activation
|
|
20
20
|
|
|
21
|
-
1. Resolve customization: `python3 {project-root}/
|
|
21
|
+
1. Resolve customization: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`. On failure, read `{skill-root}/customize.toml` directly.
|
|
22
22
|
2. Run `{workflow.activation_steps_prepend}`. Treat `{workflow.persistent_facts}` as foundational context (`file:` entries are loaded).
|
|
23
|
-
3. Load `{project-root}/
|
|
24
|
-
4. Detect mode. **Headless** when any of: no TTY, programmatic caller (another skill or non-interactive runner), or the first message pre-supplies all inputs and asks for an artifact path back. **Interactive** otherwise. In interactive mode, greet by `{user_name}` in `{communication_language}`, stay in that language, and mention that `
|
|
23
|
+
3. Load `{project-root}/_wizz/core/config.yaml` (and `config.user.yaml` if present), root level and `bmm` section. Resolve `{user_name}`, `{communication_language}`, `{document_output_language}`, `{planning_artifacts}`, `{project_name}`, `{date}`.
|
|
24
|
+
4. Detect mode. **Headless** when any of: no TTY, programmatic caller (another skill or non-interactive runner), or the first message pre-supplies all inputs and asks for an artifact path back. **Interactive** otherwise. In interactive mode, greet by `{user_name}` in `{communication_language}`, stay in that language, and mention that `wizz-party-mode` and `wizz-advanced-elicitation` are available for deeper exploration on any field.
|
|
25
25
|
|
|
26
26
|
Run `{workflow.activation_steps_append}`.
|
|
27
27
|
|
|
@@ -53,12 +53,12 @@ Inside the spec folder:
|
|
|
53
53
|
|
|
54
54
|
`.memlog.md` is canonical — an append-only, chronological record of every decision, constraint, capability (with its stable `CAP-N`), assumption, open question, and bit of user direction, one line each in the order it happened, never edited or reordered. `SPEC.md` and every spec-authored companion are **derived on each run** from the memlog (the decision-of-record) plus the sources it cites for raw content — never hand-patched.
|
|
55
55
|
|
|
56
|
-
Deriving the contract from a living log instead of editing the contract in place is what lets the steps around the spec (PRD, UX, architecture, epics) run in any order and feed the same spec without merge drift: the log only accumulates, the artifact is re-rendered. So the spec is updated *only* by re-deriving it here —
|
|
56
|
+
Deriving the contract from a living log instead of editing the contract in place is what lets the steps around the spec (PRD, UX, architecture, epics) run in any order and feed the same spec without merge drift: the log only accumulates, the artifact is re-rendered. So the spec is updated *only* by re-deriving it here — wizz-spec is its single writer; a hand-edit to `SPEC.md` from outside is unsupported and is overwritten on the next derive.
|
|
57
57
|
|
|
58
|
-
Writes go through the shared script — `{project-root}/
|
|
58
|
+
Writes go through the shared script — `{project-root}/_wizz/scripts/memlog.py`, the same location as `resolve_customization.py` (atomic; never read it back except to resume):
|
|
59
59
|
|
|
60
|
-
- `python3 {project-root}/
|
|
61
|
-
- `python3 {project-root}/
|
|
60
|
+
- `python3 {project-root}/_wizz/scripts/memlog.py init --workspace {spec-folder} --field topic="<what is being specced>"` — once, at create.
|
|
61
|
+
- `python3 {project-root}/_wizz/scripts/memlog.py append --workspace {spec-folder} --type <decision|constraint|capability|assumption|question|direction|note|event> --text "<one-line gist, reason included>"` — as each lands.
|
|
62
62
|
- Terminal moments (a validation verdict, "spec finalized") are `--type event` entries; the memlog carries no status field.
|
|
63
63
|
|
|
64
64
|
## The Operation
|
|
@@ -69,13 +69,13 @@ When the input is structured and pre-sorted (a PRD with an addendum, a GDD, a br
|
|
|
69
69
|
|
|
70
70
|
Distill the input into the five-field kernel using `{workflow.spec_template}` as the skeleton. When input is rich, extract directly — no elicitation. When input is sparse, choose: **express** (best-effort distill, every gap becomes an `open_questions[]` entry) or **guided** (walk the five fields with the user one at a time). Headless defaults to express and logs the choice. Interactive asks.
|
|
71
71
|
|
|
72
|
-
A recognized domain implication the input leaves unaddressed *is* such a gap — name it as an `open_questions[]` entry (healthcare input silent on PHI/HIPAA, payments silent on PCI, control systems silent on fail-safe) and move on. Flag it; never invent the answer or coach toward it. If these dominate, the input is too thin — suggest `
|
|
72
|
+
A recognized domain implication the input leaves unaddressed *is* such a gap — name it as an `open_questions[]` entry (healthcare input silent on PHI/HIPAA, payments silent on PCI, control systems silent on fail-safe) and move on. Flag it; never invent the answer or coach toward it. If these dominate, the input is too thin — suggest `wizz-prd`.
|
|
73
73
|
|
|
74
74
|
Write lean from the first pass: every sentence must earn its place. Decoration costs tokens and dilutes downstream readers.
|
|
75
75
|
|
|
76
76
|
Log each decision, capability, constraint, and accepted change to `.memlog.md` as it is made — that running record is what the render reads. Because the log is append-only, a later entry supersedes an earlier one on the same point while the history stays intact. When two currently-live sources or companions disagree on the same field, or an either/or never got resolved, surface it to the user rather than silently choosing — the resolution is itself a new memlog entry.
|
|
77
77
|
|
|
78
|
-
If the input is genuinely too thin to distill (e.g. "an app for hikers" with no surrounding context), stop and suggest `
|
|
78
|
+
If the input is genuinely too thin to distill (e.g. "an app for hikers" with no surrounding context), stop and suggest `wizz-prd` (or sibling ceremony skill). This skill distills; it does not coach.
|
|
79
79
|
|
|
80
80
|
## Load-bearing
|
|
81
81
|
|
|
@@ -89,8 +89,8 @@ When load-bearing content does not fit the five-field kernel, it lives in a comp
|
|
|
89
89
|
|
|
90
90
|
Companions are either:
|
|
91
91
|
|
|
92
|
-
- **Spec-authored** companions are written by
|
|
93
|
-
- **Adopted** companions are load-bearing artifacts written by an upstream skill that downstream still needs to read.
|
|
92
|
+
- **Spec-authored** companions are written by wizz-spec and live as **siblings of SPEC.md** (e.g., `glossary.md`, `patron-archetypes.md`). wizz-spec owns them and may edit them on update operations.
|
|
93
|
+
- **Adopted** companions are load-bearing artifacts written by an upstream skill that downstream still needs to read. wizz-spec references them into `companions:` by relative path but does NOT edit them (e.g., a `DESIGN.md` or `EXPERIENCE.md` from a UX run, an integration partner's API spec). The originating skill owns them.
|
|
94
94
|
|
|
95
95
|
Two rules govern companions:
|
|
96
96
|
|
|
@@ -141,5 +141,5 @@ Any update to the spec — resolved assumptions, answered open questions, other
|
|
|
141
141
|
## Frontmatter conventions
|
|
142
142
|
|
|
143
143
|
- `companions:` array of `.md` files downstream MUST read alongside SPEC.md to have the full contract. Paths may point inside the spec folder (spec-authored companions like `glossary.md`) or outside it (adopted companions like `../planning-artifacts/ux-designs/ux-foo-bar-2026-05-23/DESIGN.md`). The split between spec-authored and adopted is implicit by path; downstream treats both the same.
|
|
144
|
-
- `sources:` array of paths to files that were **fully absorbed** into the SPEC, with no remaining downstream value (e.g., a PRD whose every load-bearing claim is now in the kernel). Listed for audit and for
|
|
144
|
+
- `sources:` array of paths to files that were **fully absorbed** into the SPEC, with no remaining downstream value (e.g., a PRD whose every load-bearing claim is now in the kernel). Listed for audit and for wizz-spec to re-read on update. Downstream does NOT read these. Files that downstream still needs to read belong in `companions:`, not here.
|
|
145
145
|
- **Do not list** the memlog, README files, organizational artifacts, or any operational record of how upstream skills produced their artifacts. Those are not source content; they are process metadata that downstream consumers don't need.
|
|
@@ -8,9 +8,9 @@ The default invocation is headless: input goes in, JSON comes out. The contract
|
|
|
8
8
|
{
|
|
9
9
|
"status": "complete",
|
|
10
10
|
"files": [
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
11
|
+
"_wizz-output/specs/spec-quarter-drop/SPEC.md",
|
|
12
|
+
"_wizz-output/specs/spec-quarter-drop/glossary.md",
|
|
13
|
+
"_wizz-output/specs/spec-quarter-drop/.memlog.md"
|
|
14
14
|
]
|
|
15
15
|
}
|
|
16
16
|
```
|
|
@@ -23,7 +23,7 @@ The default invocation is headless: input goes in, JSON comes out. The contract
|
|
|
23
23
|
{
|
|
24
24
|
"status": "blocked",
|
|
25
25
|
"error_code": "insufficient_intent",
|
|
26
|
-
"reason": "Input was a one-line idea with no surrounding context; too thin to distill. Suggest
|
|
26
|
+
"reason": "Input was a one-line idea with no surrounding context; too thin to distill. Suggest wizz-prd to draw the vision out first."
|
|
27
27
|
}
|
|
28
28
|
```
|
|
29
29
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# DO NOT EDIT -- overwritten on every update.
|
|
2
2
|
#
|
|
3
|
-
# Workflow customization surface for
|
|
3
|
+
# Workflow customization surface for wizz-spec.
|
|
4
4
|
#
|
|
5
5
|
# Override files (not edited here):
|
|
6
|
-
# {project-root}/
|
|
7
|
-
# {project-root}/
|
|
6
|
+
# {project-root}/_wizz/custom/wizz-spec.toml (team)
|
|
7
|
+
# {project-root}/_wizz/custom/wizz-spec.user.toml (personal)
|
|
8
8
|
|
|
9
9
|
[workflow]
|
|
10
10
|
|
|
@@ -21,7 +21,7 @@ activation_steps_append = []
|
|
|
21
21
|
# Each entry is either a literal sentence, a skill prefixed with `skill:`,
|
|
22
22
|
# or a `file:`-prefixed path/glob whose contents are loaded as facts.
|
|
23
23
|
# Default points to a single top-level file; override in team/user TOML
|
|
24
|
-
# to widen the scope (e.g. `
|
|
24
|
+
# to widen the scope (e.g. `_wizz/**/project-context.md`) if needed.
|
|
25
25
|
persistent_facts = [
|
|
26
26
|
"file:{project-root}/project-context.md",
|
|
27
27
|
]
|
|
@@ -39,7 +39,7 @@ spec_template = "assets/spec-template.md"
|
|
|
39
39
|
spec_filename = "SPEC.md"
|
|
40
40
|
|
|
41
41
|
# Output path for spec folders. Lands directly under {output_folder}
|
|
42
|
-
# so
|
|
42
|
+
# so wizz-spec works in core-only installs and matches the
|
|
43
43
|
# long-term BMad direction of grouping artifacts as siblings under
|
|
44
44
|
# {output_folder}/<type>/ rather than nested inside planning vs
|
|
45
45
|
# implementation folders.
|
|
@@ -21,7 +21,7 @@ Os papéis de dev/produto reusam os agentes BMAD (Mary, John, Winston, Amelia, S
|
|
|
21
21
|
- **Encerramento** (`_shared/encerramento.md`): bloco ✅/➡️/🎯 ao terminar.
|
|
22
22
|
- **Economia de token** (`_shared/token-economy.md`): graphify → cerebro → grep antes de ler arquivos; RTK reescreve shell.
|
|
23
23
|
- **Cerebro** (`_shared/cerebro.md`): auto-load leve na ativação, lembrete de salvar no fim.
|
|
24
|
-
- **Idioma**: escolhido no `wizz-init` (padrão Português (BR)), gravado em `
|
|
24
|
+
- **Idioma**: escolhido no `wizz-init` (padrão Português (BR)), gravado em `_wizz/bmm/config.yaml`.
|
|
25
25
|
- **Encadeamento**: modo confirmado. O maestro dispara o 1º agente; você confirma os próximos.
|
|
26
26
|
|
|
27
27
|
## Instalação
|
|
@@ -36,4 +36,4 @@ Os papéis de dev/produto reusam os agentes BMAD (Mary, John, Winston, Amelia, S
|
|
|
36
36
|
|
|
37
37
|
## Customização pessoal
|
|
38
38
|
|
|
39
|
-
Os overrides em `overrides/*.toml` são escopo **time** e vão para `
|
|
39
|
+
Os overrides em `overrides/*.toml` são escopo **time** e vão para `_wizz/custom/`. Para ajustes só seus, crie `_wizz/custom/<skill>.user.toml` — ele vence por cima.
|
|
@@ -9,11 +9,11 @@ description: Agente de Mídia Paga do Wizz Method. Use para campanhas de anúnci
|
|
|
9
9
|
Você é o Ads do Wizz. Planeja campanhas, gera variações de criativo e acompanha métricas. Roteia para as skills globais via a ferramenta `Skill` e usa o MCP `meta-ads` quando for gestão real de campanhas Meta.
|
|
10
10
|
|
|
11
11
|
## Na ativação
|
|
12
|
-
1. **Resolver bloco:** rode `python3 {project-root}/
|
|
12
|
+
1. **Resolver bloco:** rode `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key agent`. Se falhar, mescle base → time → pessoal (`{skill-root}/customize.toml`, `{project-root}/_wizz/custom/{skill-name}.toml`, `.user.toml`).
|
|
13
13
|
2. Execute `{agent.activation_steps_prepend}`.
|
|
14
14
|
3. Persona: `{agent.role}`, `{agent.identity}`, `{agent.communication_style}`, `{agent.principles}`.
|
|
15
15
|
4. Carregue `{agent.persistent_facts}`.
|
|
16
|
-
5. Config: `{project-root}/
|
|
16
|
+
5. Config: `{project-root}/_wizz/bmm/config.yaml` → `{user_name}`, `{communication_language}`.
|
|
17
17
|
6. Saúde com `{agent.icon}`.
|
|
18
18
|
7. Execute `{agent.activation_steps_append}`.
|
|
19
19
|
8. Menu/dispatch.
|
|
@@ -9,11 +9,11 @@ description: Copywriter do Wizz Method. Use para copy de venda, headlines, texto
|
|
|
9
9
|
Você é o Copy do Wizz. Escreve textos que vendem, humaniza o que soa robótico e entrega variações prontas. Você roteia para as skills globais de copy via a ferramenta `Skill`.
|
|
10
10
|
|
|
11
11
|
## Na ativação
|
|
12
|
-
1. **Resolver bloco:** rode `python3 {project-root}/
|
|
12
|
+
1. **Resolver bloco:** rode `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key agent`. Se falhar, mescle base → time → pessoal: `{skill-root}/customize.toml`, `{project-root}/_wizz/custom/{skill-name}.toml`, `{project-root}/_wizz/custom/{skill-name}.user.toml`.
|
|
13
13
|
2. Execute `{agent.activation_steps_prepend}`.
|
|
14
14
|
3. Adote persona: `{agent.role}`, `{agent.identity}`, `{agent.communication_style}`, `{agent.principles}`.
|
|
15
15
|
4. Carregue `{agent.persistent_facts}`.
|
|
16
|
-
5. Config: `{project-root}/
|
|
16
|
+
5. Config: `{project-root}/_wizz/bmm/config.yaml` → `{user_name}`, `{communication_language}`.
|
|
17
17
|
6. Saúde `{user_name}` em `{communication_language}` começando com `{agent.icon}`.
|
|
18
18
|
7. Execute `{agent.activation_steps_append}`.
|
|
19
19
|
8. Menu/dispatch.
|