wizz-method 1.4.1 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -4
- package/package.json +39 -3
- package/skills-registry.yaml +102 -7
- package/src/bmm-skills/4-implementation/wizz-code-review/SKILL.md +2 -0
- package/src/bmm-skills/4-implementation/wizz-quick-dev/SKILL.md +5 -2
- package/src/core-skills/_shared/handoff-protocol.md +61 -0
- package/src/core-skills/wizz-customize/SKILL.md +2 -2
- package/src/core-skills/wizz-party-mode/references/mode-agent-team.md +1 -1
- package/src/core-skills/wizz-party-mode/references/mode-subagent.md +1 -1
- package/src/core-skills/wizz-review-adversarial-general/SKILL.md +2 -0
- package/src/modules/wizz/README.md +3 -3
- package/src/modules/wizz/_shared/communication-rules.md +13 -0
- package/src/modules/wizz/_shared/encerramento.md +2 -2
- package/src/modules/wizz/agents/wizz-ads/customize.toml +5 -3
- package/src/modules/wizz/agents/wizz-copy/customize.toml +5 -3
- package/src/modules/wizz/agents/wizz-designer/SKILL.md +2 -2
- package/src/modules/wizz/agents/wizz-designer/customize.toml +6 -4
- package/src/modules/wizz/agents/wizz-growth/customize.toml +11 -3
- package/src/modules/wizz/agents/wizz-maestro/SKILL.md +9 -5
- package/src/modules/wizz/agents/wizz-maestro/customize.toml +5 -7
- package/src/modules/wizz/agents/wizz-memoria/customize.toml +2 -4
- package/src/modules/wizz/agents/wizz-qa/SKILL.md +5 -5
- package/src/modules/wizz/agents/wizz-qa/customize.toml +9 -7
- package/src/modules/wizz/agents/wizz-seo/customize.toml +5 -3
- package/src/modules/wizz/agents/wizz-social/customize.toml +9 -8
- package/src/modules/wizz/module.yaml +1 -1
- package/src/modules/wizz/overrides/wizz-agent-analyst.toml +4 -5
- package/src/modules/wizz/overrides/wizz-agent-architect.toml +11 -3
- package/src/modules/wizz/overrides/wizz-agent-dev.toml +6 -4
- package/src/modules/wizz/overrides/wizz-agent-pm.toml +4 -2
- package/src/modules/wizz/overrides/wizz-agent-tech-writer.toml +3 -5
- package/src/modules/wizz/overrides/wizz-agent-ux-designer.toml +4 -2
- package/src/modules/wizz/scripts/wizz-init.mjs +3 -1
- package/src/scripts/__pycache__/resolve_customization.cpython-314.pyc +0 -0
- package/src/scripts/memlog.py +9 -0
- package/src/scripts/resolve_customization.py +93 -3
- package/src/skills-lib/adversarial-reviewer/SKILL.md +2 -0
- package/src/skills-lib/algorithmic-art/SKILL.md +29 -369
- package/src/skills-lib/algorithmic-art/references/interactive-artifact.md +139 -0
- package/src/skills-lib/algorithmic-art/references/p5js-implementation.md +121 -0
- package/src/skills-lib/algorithmic-art/references/philosophy-creation.md +88 -0
- package/src/skills-lib/canvas-design/SKILL.md +9 -38
- package/src/skills-lib/canvas-design/references/canvas-execution.md +21 -0
- package/src/skills-lib/canvas-design/references/philosophy-examples.md +25 -0
- package/src/skills-lib/cerebro/SKILL.md +8 -273
- package/src/skills-lib/cerebro/references/comandos-pesquisa-e-sync.md +44 -0
- package/src/skills-lib/cerebro/references/comandos-rotina-e-captura.md +94 -0
- package/src/skills-lib/cerebro/references/comandos-sessao.md +122 -0
- package/src/skills-lib/content-strategy/SKILL.md +12 -316
- package/src/skills-lib/content-strategy/references/content-types.md +52 -0
- package/src/skills-lib/content-strategy/references/ideation-sources.md +78 -0
- package/src/skills-lib/content-strategy/references/pillars-and-keywords.md +78 -0
- package/src/skills-lib/content-strategy/references/prioritization-and-output.md +57 -0
- package/src/skills-lib/decision-maker/SKILL.md +13 -466
- package/src/skills-lib/decision-maker/references/commands-and-edge-cases.md +40 -0
- package/src/skills-lib/decision-maker/references/output-format.md +161 -0
- package/src/skills-lib/decision-maker/references/references-and-extraction.md +129 -0
- package/src/skills-lib/decision-maker/references/six-decisions.md +122 -0
- package/src/skills-lib/decision-maker/references/wizz-method-handoff.md +22 -0
- package/src/skills-lib/find-skills/SKILL.md +9 -6
- package/src/skills-lib/form-cro/SKILL.md +12 -390
- package/src/skills-lib/form-cro/references/experiments.md +73 -0
- package/src/skills-lib/form-cro/references/field-optimization.md +92 -0
- package/src/skills-lib/form-cro/references/flow-and-errors.md +71 -0
- package/src/skills-lib/form-cro/references/measurement-output.md +41 -0
- package/src/skills-lib/form-cro/references/trust-and-form-types.md +54 -0
- package/src/skills-lib/graphify/SKILL.md +2 -20
- package/src/skills-lib/huashu-design/SKILL.md +42 -596
- package/src/skills-lib/huashu-design/references/anti-slop-principles.md +62 -0
- package/src/skills-lib/huashu-design/references/audio-design-rules.md +1 -1
- package/src/skills-lib/huashu-design/references/cross-agent-adaptation.md +14 -0
- package/src/skills-lib/huashu-design/references/design-direction-fallback.md +113 -0
- package/src/skills-lib/huashu-design/references/exception-handling.md +18 -0
- package/src/skills-lib/huashu-design/references/fact-verification.md +36 -0
- package/src/skills-lib/huashu-design/references/ios-prototype.md +146 -0
- package/src/skills-lib/huashu-design/references/sfx-library.md +7 -0
- package/src/skills-lib/huashu-design/references/starter-components.md +24 -0
- package/src/skills-lib/huashu-design/references/video-export.md +1 -1
- package/src/skills-lib/huashu-design/references/watermark-policy.md +23 -0
- package/src/skills-lib/huashu-design/scripts/add-music.sh +12 -1
- package/src/skills-lib/huashu-design/scripts/mix-voiceover.sh +11 -0
- package/src/skills-lib/humanizer/SKILL.md +23 -431
- package/src/skills-lib/humanizer/references/ai-writing-patterns.md +314 -0
- package/src/skills-lib/humanizer/references/full-example.md +72 -0
- package/src/skills-lib/humanizer/references/personality-and-soul.md +36 -0
- package/src/skills-lib/impeccable/SKILL.md +37 -153
- package/src/skills-lib/impeccable/references/design-rules.md +95 -0
- package/src/skills-lib/impeccable/references/pin-unpin-and-hooks.md +17 -0
- package/src/skills-lib/impeccable/references/routing-rules.md +28 -0
- package/src/skills-lib/implementation-planner/SKILL.md +22 -529
- package/src/skills-lib/implementation-planner/references/folder-structure-and-dependencies.md +132 -0
- package/src/skills-lib/implementation-planner/references/handoff-template.md +34 -0
- package/src/skills-lib/implementation-planner/references/implementation-phases.md +54 -0
- package/src/skills-lib/implementation-planner/references/implementation-types.md +28 -0
- package/src/skills-lib/implementation-planner/references/motion-path-implementation.md +57 -0
- package/src/skills-lib/implementation-planner/references/output-templates.md +92 -0
- package/src/skills-lib/implementation-planner/references/performance-plan.md +52 -0
- package/src/skills-lib/inicio-de-projeto/SKILL.md +4 -224
- package/src/skills-lib/inicio-de-projeto/references/implementacao-api-forms.md +112 -0
- package/src/skills-lib/inicio-de-projeto/references/padroes-arquiteturais-e-pastas.md +71 -0
- package/src/skills-lib/inicio-de-projeto/references/seguranca-e-regras-codigo.md +26 -0
- package/src/skills-lib/launch-strategy/SKILL.md +9 -311
- package/src/skills-lib/launch-strategy/references/five-phase-approach.md +76 -0
- package/src/skills-lib/launch-strategy/references/launch-checklist.md +34 -0
- package/src/skills-lib/launch-strategy/references/orb-framework.md +76 -0
- package/src/skills-lib/launch-strategy/references/post-launch-and-ongoing.md +64 -0
- package/src/skills-lib/launch-strategy/references/product-hunt-strategy.md +52 -0
- package/src/skills-lib/marketing-psychology/SKILL.md +18 -401
- package/src/skills-lib/marketing-psychology/references/design-and-delivery-models.md +56 -0
- package/src/skills-lib/marketing-psychology/references/foundational-thinking-models.md +76 -0
- package/src/skills-lib/marketing-psychology/references/growth-and-scaling-models.md +46 -0
- package/src/skills-lib/marketing-psychology/references/influencing-behavior.md +71 -0
- package/src/skills-lib/marketing-psychology/references/pricing-psychology.md +31 -0
- package/src/skills-lib/marketing-psychology/references/understanding-buyers.md +116 -0
- package/src/skills-lib/motion-3d-director/SKILL.md +23 -370
- package/src/skills-lib/motion-3d-director/references/image-to-video-workflow.md +166 -0
- package/src/skills-lib/motion-3d-director/references/motion-paths.md +119 -0
- package/src/skills-lib/motion-3d-director/references/performance-and-handoff.md +51 -0
- package/src/skills-lib/popup-cro/SKILL.md +11 -414
- package/src/skills-lib/popup-cro/references/design-copy-compliance.md +81 -0
- package/src/skills-lib/popup-cro/references/experiments.md +82 -0
- package/src/skills-lib/popup-cro/references/rules-measurement-output.md +87 -0
- package/src/skills-lib/popup-cro/references/triggers-and-popup-types.md +108 -0
- package/src/skills-lib/signup-flow-cro/SKILL.md +13 -321
- package/src/skills-lib/signup-flow-cro/references/experiments.md +72 -0
- package/src/skills-lib/signup-flow-cro/references/field-optimization.md +49 -0
- package/src/skills-lib/signup-flow-cro/references/flow-structure.md +38 -0
- package/src/skills-lib/signup-flow-cro/references/measurement-output-patterns.md +62 -0
- package/src/skills-lib/signup-flow-cro/references/trust-and-post-submit.md +40 -0
- package/src/skills-lib/taste-redesign/SKILL.md +10 -146
- package/src/skills-lib/taste-redesign/references/design-audit.md +120 -0
- package/src/skills-lib/taste-redesign/references/upgrade-techniques.md +31 -0
- package/src/skills-lib/ui-ux-pro-max/SKILL.md +9 -353
- package/src/skills-lib/ui-ux-pro-max/references/common-rules-checklist.md +76 -0
- package/src/skills-lib/ui-ux-pro-max/references/rules-quick-reference.md +70 -0
- package/src/skills-lib/ui-ux-pro-max/references/search-reference.md +45 -0
- package/src/skills-lib/ui-ux-pro-max/references/workflow-guide.md +157 -0
- package/src/skills-lib/web-security/SKILL.md +13 -187
- package/src/skills-lib/web-security/references/checklist-deploy.md +52 -0
- package/src/skills-lib/web-security/references/headers-rate-limit-cors.md +78 -0
- package/src/skills-lib/web-security/references/owasp-top5-detalhado.md +51 -0
- package/src/skills-lib/wizz-router/SKILL.md +20 -9
- package/src/skills-lib/wizz-router/references/auditoria-360.md +4 -4
- package/src/skills-lib/wizz-router/references/routing-table-flat.md +15 -15
- package/tools/fetch-assets.mjs +277 -0
- package/tools/installer/commands/fetch-assets.js +71 -0
- package/tools/installer/commands/install.js +35 -3
- package/tools/installer/commands/trace-report.js +131 -0
- package/tools/installer/core/config.js +9 -0
- package/tools/installer/core/help-catalog.js +181 -0
- package/tools/installer/core/install-paths.js +48 -3
- package/tools/installer/core/installer.js +253 -618
- package/tools/installer/core/manifest-generator.js +8 -1
- package/tools/installer/core/manifest.js +67 -22
- package/tools/installer/core/module-config-writer.js +110 -0
- package/tools/installer/core/preflight-tools-check.js +82 -0
- package/tools/installer/core/quick-update.js +209 -0
- package/tools/installer/core/user-file-preservation.js +250 -0
- package/tools/installer/modules/channel-resolver.js +34 -2
- package/tools/installer/modules/cli-config.js +127 -34
- package/tools/installer/modules/deps-cache.js +28 -1
- package/tools/installer/modules/env-vars.js +446 -0
- package/tools/installer/modules/external-manager.js +40 -6
- package/tools/installer/modules/mcp-config.js +180 -37
- package/tools/installer/modules/module-help-schema.js +2 -1
- package/tools/installer/modules/official-modules.js +1 -1
- package/tools/installer/modules/registry-resolve.js +74 -0
- package/tools/installer/modules/skills-lib.js +11 -15
- package/tools/installer/ui.js +71 -5
- package/wizz-modules.yaml +15 -5
- package/.claude-plugin/marketplace.json +0 -80
- package/AGENTS.md +0 -12
- package/build/artifacts/llms-full.txt +0 -4049
- package/build/artifacts/llms.txt +0 -28
- package/build/site/404.html +0 -55
- package/build/site/_astro/MobileTableOfContents.astro_astro_type_script_index_0_lang.hwBsy0Mo.js +0 -1
- package/build/site/_astro/Search.astro_astro_type_script_index_0_lang.cjYDvRdi.js +0 -1
- package/build/site/_astro/TableOfContents.astro_astro_type_script_index_0_lang.FuRcXuRY.js +0 -1
- package/build/site/_astro/ec.0vx5m.js +0 -3
- package/build/site/_astro/ec.v4551.css +0 -1
- package/build/site/_astro/index.DdjI3lF_.css +0 -1
- package/build/site/_astro/page.B1D-nYk3.js +0 -1
- package/build/site/_astro/print.DNXP8c50.css +0 -1
- package/build/site/_astro/ui-core.D_Lfcn_I.js +0 -2
- package/build/site/diagrams/checkpoint-preview-diagram-fr.webp +0 -0
- package/build/site/diagrams/checkpoint-preview-diagram.png +0 -0
- package/build/site/diagrams/quick-dev-diagram-fr.webp +0 -0
- package/build/site/diagrams/quick-dev-diagram.png +0 -0
- package/build/site/explanation/advanced-elicitation/index.html +0 -105
- package/build/site/explanation/adversarial-review/index.html +0 -109
- package/build/site/explanation/analysis-phase/index.html +0 -129
- package/build/site/explanation/brainstorming/index.html +0 -92
- package/build/site/explanation/checkpoint-preview/index.html +0 -121
- package/build/site/explanation/established-projects-faq/index.html +0 -107
- package/build/site/explanation/forensic-investigation/index.html +0 -167
- package/build/site/explanation/named-agents/index.html +0 -187
- package/build/site/explanation/party-mode/index.html +0 -256
- package/build/site/explanation/preventing-agent-conflicts/index.html +0 -185
- package/build/site/explanation/project-context/index.html +0 -198
- package/build/site/explanation/quick-dev/index.html +0 -113
- package/build/site/explanation/web-bundles/index.html +0 -178
- package/build/site/explanation/why-solutioning-matters/index.html +0 -168
- package/build/site/how-to/customize-wizz/index.html +0 -277
- package/build/site/how-to/established-projects/index.html +0 -165
- package/build/site/how-to/expand-wizz-for-your-org/index.html +0 -245
- package/build/site/how-to/get-answers-about-wizz/index.html +0 -129
- package/build/site/how-to/install-custom-modules/index.html +0 -197
- package/build/site/how-to/install-wizz/index.html +0 -330
- package/build/site/how-to/non-interactive-installation/index.html +0 -73
- package/build/site/how-to/project-context/index.html +0 -141
- package/build/site/how-to/quick-fixes/index.html +0 -122
- package/build/site/how-to/shard-large-documents/index.html +0 -103
- package/build/site/how-to/upgrade-to-v6/index.html +0 -185
- package/build/site/how-to/use-web-bundles/index.html +0 -99
- package/build/site/img/wizz-dark.png +0 -0
- package/build/site/img/wizz-light.png +0 -0
- package/build/site/index.html +0 -128
- package/build/site/llms-full.txt +0 -4049
- package/build/site/llms.txt +0 -28
- 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_296ddb9.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_2b5aa5c.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_514725b.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_583316f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_6465dfb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_67825a4.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_887ce56.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_92d7cc7.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_94bfc21.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_9b57d7d.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_ba9fb37.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_bb113eb.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_bfc56b6.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_c6d9e48.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_cdd772f.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_cdd885c.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_cefed6a.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_d890205.pf_fragment +0 -0
- package/build/site/pagefind/fragment/en_da351b7.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/index/en_5b9d8c6.pf_index +0 -0
- package/build/site/pagefind/index/en_868614c.pf_index +0 -0
- package/build/site/pagefind/index/en_e4f9bff.pf_index +0 -0
- package/build/site/pagefind/pagefind-entry.json +0 -1
- package/build/site/pagefind/pagefind-highlight.js +0 -1064
- package/build/site/pagefind/pagefind-modular-ui.css +0 -214
- package/build/site/pagefind/pagefind-modular-ui.js +0 -8
- package/build/site/pagefind/pagefind-ui.css +0 -1
- package/build/site/pagefind/pagefind-ui.js +0 -2
- package/build/site/pagefind/pagefind.en_4e69d7f053.pf_meta +0 -0
- package/build/site/pagefind/pagefind.js +0 -6
- package/build/site/pagefind/wasm.en.pagefind +0 -0
- package/build/site/pagefind/wasm.unknown.pagefind +0 -0
- package/build/site/reference/agents/index.html +0 -168
- package/build/site/reference/commands/index.html +0 -254
- package/build/site/reference/core-tools/index.html +0 -384
- package/build/site/reference/modules/index.html +0 -132
- package/build/site/reference/testing/index.html +0 -218
- package/build/site/reference/workflow-map/index.html +0 -266
- package/build/site/roadmap/index.html +0 -77
- package/build/site/robots.txt +0 -37
- package/build/site/sitemap-0.xml +0 -1
- package/build/site/sitemap-index.xml +0 -1
- package/build/site/tutorials/getting-started/index.html +0 -386
- package/build/site/wizz-icon-orange.svg +0 -7
- package/build/site/workflow-map-diagram-fr.html +0 -375
- package/build/site/workflow-map-diagram.html +0 -375
- package/evals/bmm-skills/wizz-product-brief/evals.json +0 -237
- package/evals/bmm-skills/wizz-product-brief/files/branfield-memo.md +0 -46
- package/evals/bmm-skills/wizz-product-brief/files/forkbird-brief/addendum.md +0 -40
- package/evals/bmm-skills/wizz-product-brief/files/forkbird-brief/brief.md +0 -56
- package/evals/bmm-skills/wizz-product-brief/files/forkbird-brief/decision-log.md +0 -27
- package/evals/bmm-skills/wizz-product-brief/files/meridian-mobility-report.md +0 -116
- package/evals/bmm-skills/wizz-product-brief/files/mossridge-brief/addendum.md +0 -41
- package/evals/bmm-skills/wizz-product-brief/files/mossridge-brief/brief.md +0 -57
- package/evals/bmm-skills/wizz-product-brief/files/mossridge-brief/decision-log.md +0 -29
- package/evals/bmm-skills/wizz-product-brief/files/pantry-bridge-interviews.md +0 -90
- package/evals/bmm-skills/wizz-product-brief/files/q2-brainstorm.md +0 -101
- package/evals/bmm-skills/wizz-product-brief/triggers.json +0 -18
- package/evals/routing/dataset.json +0 -290
- package/evals/routing/run-routing-eval.mjs +0 -89
- package/src/skills-lib/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/src/skills-lib/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-ad.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-educational-alt.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-educational.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-tech.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-tutorial-alt.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/bgm-tutorial.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/container/card-flip.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/container/card-snap.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/container/modal-open.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/container/stack-collapse.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/feedback/achievement.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/feedback/error-tone.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/feedback/notification-pop.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/feedback/success-chime.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/impact/brand-stamp.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/impact/drop-thud.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/impact/logo-reveal-v2.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/impact/logo-reveal.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/delete-key.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/enter.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/space-tap.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/type-fast.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/keyboard/type.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/magic/ai-process.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/magic/sparkle.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/magic/transform.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/progress/complete-done.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/progress/generate-start.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/progress/loading-tick.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/terminal/command-execute.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/terminal/cursor-blink.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/terminal/output-appear.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/dissolve.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/slide-in.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/swipe-horizontal.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/whoosh-fast.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/transition/whoosh.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/click-soft.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/click.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/focus.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/hover-subtle.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/tap-finger.mp3 +0 -0
- package/src/skills-lib/huashu-design/assets/sfx/ui/toggle-on.mp3 +0 -0
- package/src/squads/README.md +0 -39
- package/src/squads/advisory-board/README.md +0 -34
- package/src/squads/advisory-board/agents/board-chair.md +0 -161
- package/src/squads/advisory-board/agents/brene-brown.md +0 -296
- package/src/squads/advisory-board/agents/charlie-munger.md +0 -590
- package/src/squads/advisory-board/agents/derek-sivers.md +0 -268
- package/src/squads/advisory-board/agents/naval-ravikant.md +0 -251
- package/src/squads/advisory-board/agents/patrick-lencioni.md +0 -394
- package/src/squads/advisory-board/agents/peter-thiel.md +0 -269
- package/src/squads/advisory-board/agents/ray-dalio.md +0 -567
- package/src/squads/advisory-board/agents/reid-hoffman.md +0 -278
- package/src/squads/advisory-board/agents/simon-sinek.md +0 -291
- package/src/squads/advisory-board/agents/yvon-chouinard.md +0 -275
- package/src/squads/advisory-board/squad.yaml +0 -50
- package/src/squads/brand-squad/README.md +0 -60
- package/src/squads/brand-squad/agents/al-ries.md +0 -175
- package/src/squads/brand-squad/agents/alina-wheeler.md +0 -184
- package/src/squads/brand-squad/agents/archetype-consultant.md +0 -215
- package/src/squads/brand-squad/agents/brand-chief.md +0 -158
- package/src/squads/brand-squad/agents/byron-sharp.md +0 -169
- package/src/squads/brand-squad/agents/david-aaker.md +0 -166
- package/src/squads/brand-squad/agents/denise-yohn.md +0 -172
- package/src/squads/brand-squad/agents/domain-scout.md +0 -135
- package/src/squads/brand-squad/agents/donald-miller.md +0 -179
- package/src/squads/brand-squad/agents/emily-heyward.md +0 -147
- package/src/squads/brand-squad/agents/jean-noel-kapferer.md +0 -189
- package/src/squads/brand-squad/agents/kevin-keller.md +0 -199
- package/src/squads/brand-squad/agents/marty-neumeier.md +0 -170
- package/src/squads/brand-squad/agents/miller-sticky-brand.md +0 -180
- package/src/squads/brand-squad/agents/naming-strategist.md +0 -171
- package/src/squads/brand-squad/squad.yaml +0 -117
- package/src/squads/c-level-squad/README.md +0 -29
- package/src/squads/c-level-squad/agents/caio-architect.md +0 -235
- package/src/squads/c-level-squad/agents/cio-engineer.md +0 -209
- package/src/squads/c-level-squad/agents/cmo-architect.md +0 -208
- package/src/squads/c-level-squad/agents/coo-orchestrator.md +0 -193
- package/src/squads/c-level-squad/agents/cto-architect.md +0 -194
- package/src/squads/c-level-squad/agents/vision-chief.md +0 -201
- package/src/squads/c-level-squad/squad.yaml +0 -45
- package/src/squads/claude-code-mastery/README.md +0 -146
- package/src/squads/claude-code-mastery/agents/claude-mastery-chief.md +0 -554
- package/src/squads/claude-code-mastery/agents/config-engineer.md +0 -865
- package/src/squads/claude-code-mastery/agents/hooks-architect.md +0 -1013
- package/src/squads/claude-code-mastery/agents/mcp-integrator.md +0 -791
- package/src/squads/claude-code-mastery/agents/project-integrator.md +0 -1196
- package/src/squads/claude-code-mastery/agents/roadmap-sentinel.md +0 -931
- package/src/squads/claude-code-mastery/agents/skill-craftsman.md +0 -1250
- package/src/squads/claude-code-mastery/agents/swarm-orchestrator.md +0 -1008
- package/src/squads/copy-squad/README.md +0 -65
- package/src/squads/copy-squad/agents/andre-chaperon.md +0 -206
- package/src/squads/copy-squad/agents/ben-settle.md +0 -194
- package/src/squads/copy-squad/agents/claude-hopkins.md +0 -182
- package/src/squads/copy-squad/agents/clayton-makepeace.md +0 -225
- package/src/squads/copy-squad/agents/copy-chief.md +0 -166
- package/src/squads/copy-squad/agents/dan-kennedy.md +0 -202
- package/src/squads/copy-squad/agents/dan-koe.md +0 -223
- package/src/squads/copy-squad/agents/david-deutsch.md +0 -197
- package/src/squads/copy-squad/agents/david-ogilvy.md +0 -198
- package/src/squads/copy-squad/agents/eugene-schwartz.md +0 -238
- package/src/squads/copy-squad/agents/frank-kern.md +0 -195
- package/src/squads/copy-squad/agents/gary-bencivenga.md +0 -197
- package/src/squads/copy-squad/agents/gary-halbert.md +0 -219
- package/src/squads/copy-squad/agents/jim-rutz.md +0 -193
- package/src/squads/copy-squad/agents/joe-sugarman.md +0 -234
- package/src/squads/copy-squad/agents/john-carlton.md +0 -203
- package/src/squads/copy-squad/agents/jon-benson.md +0 -196
- package/src/squads/copy-squad/agents/parris-lampropoulos.md +0 -188
- package/src/squads/copy-squad/agents/robert-collier.md +0 -183
- package/src/squads/copy-squad/agents/russell-brunson.md +0 -229
- package/src/squads/copy-squad/agents/ry-schwartz.md +0 -185
- package/src/squads/copy-squad/agents/stefan-georgi.md +0 -188
- package/src/squads/copy-squad/agents/todd-brown.md +0 -171
- package/src/squads/copy-squad/squad.yaml +0 -87
- package/src/squads/cybersecurity/README.md +0 -38
- package/src/squads/cybersecurity/agents/busterer.md +0 -108
- package/src/squads/cybersecurity/agents/cartographer.md +0 -114
- package/src/squads/cybersecurity/agents/chris-sanders.md +0 -205
- package/src/squads/cybersecurity/agents/command-generator.md +0 -121
- package/src/squads/cybersecurity/agents/cyber-chief.md +0 -120
- package/src/squads/cybersecurity/agents/dirber.md +0 -111
- package/src/squads/cybersecurity/agents/fuzzer.md +0 -121
- package/src/squads/cybersecurity/agents/georgia-weidman.md +0 -178
- package/src/squads/cybersecurity/agents/jim-manico.md +0 -182
- package/src/squads/cybersecurity/agents/marcus-carey.md +0 -200
- package/src/squads/cybersecurity/agents/omar-santos.md +0 -206
- package/src/squads/cybersecurity/agents/peter-kim.md +0 -179
- package/src/squads/cybersecurity/agents/ripper.md +0 -121
- package/src/squads/cybersecurity/agents/rogue.md +0 -116
- package/src/squads/cybersecurity/agents/shannon-runner.md +0 -108
- package/src/squads/cybersecurity/squad.yaml +0 -56
- package/src/squads/data-squad/README.md +0 -30
- package/src/squads/data-squad/agents/avinash-kaushik.md +0 -268
- package/src/squads/data-squad/agents/data-chief.md +0 -167
- package/src/squads/data-squad/agents/david-spinks.md +0 -277
- package/src/squads/data-squad/agents/nick-mehta.md +0 -294
- package/src/squads/data-squad/agents/peter-fader.md +0 -246
- package/src/squads/data-squad/agents/sean-ellis.md +0 -303
- package/src/squads/data-squad/agents/wes-kao.md +0 -268
- package/src/squads/data-squad/squad.yaml +0 -46
- package/src/squads/design-squad/README.md +0 -31
- package/src/squads/design-squad/agents/brad-frost.md +0 -185
- package/src/squads/design-squad/agents/dan-mall.md +0 -178
- package/src/squads/design-squad/agents/dave-malouf.md +0 -198
- package/src/squads/design-squad/agents/design-chief.md +0 -109
- package/src/squads/design-squad/agents/design-system-architect.md +0 -109
- package/src/squads/design-squad/agents/ui-engineer.md +0 -102
- package/src/squads/design-squad/agents/ux-designer.md +0 -105
- package/src/squads/design-squad/agents/visual-generator.md +0 -108
- package/src/squads/design-squad/squad.yaml +0 -48
- package/src/squads/hormozi-squad/README.md +0 -39
- package/src/squads/hormozi-squad/agents/hormozi-ads.md +0 -159
- package/src/squads/hormozi-squad/agents/hormozi-advisor.md +0 -178
- package/src/squads/hormozi-squad/agents/hormozi-audit.md +0 -178
- package/src/squads/hormozi-squad/agents/hormozi-chief.md +0 -111
- package/src/squads/hormozi-squad/agents/hormozi-closer.md +0 -179
- package/src/squads/hormozi-squad/agents/hormozi-content.md +0 -166
- package/src/squads/hormozi-squad/agents/hormozi-copy.md +0 -152
- package/src/squads/hormozi-squad/agents/hormozi-hooks.md +0 -177
- package/src/squads/hormozi-squad/agents/hormozi-launch.md +0 -160
- package/src/squads/hormozi-squad/agents/hormozi-leads.md +0 -198
- package/src/squads/hormozi-squad/agents/hormozi-models.md +0 -191
- package/src/squads/hormozi-squad/agents/hormozi-offers.md +0 -197
- package/src/squads/hormozi-squad/agents/hormozi-pricing.md +0 -151
- package/src/squads/hormozi-squad/agents/hormozi-retention.md +0 -166
- package/src/squads/hormozi-squad/agents/hormozi-scale.md +0 -175
- package/src/squads/hormozi-squad/agents/hormozi-workshop.md +0 -160
- package/src/squads/hormozi-squad/squad.yaml +0 -60
- package/src/squads/movement/README.md +0 -29
- package/src/squads/movement/agents/analista-de-impacto.md +0 -350
- package/src/squads/movement/agents/estrategista-de-ciclo.md +0 -301
- package/src/squads/movement/agents/fenomenologo.md +0 -169
- package/src/squads/movement/agents/identitario.md +0 -265
- package/src/squads/movement/agents/manifestador.md +0 -279
- package/src/squads/movement/agents/movement-architect.md +0 -210
- package/src/squads/movement/agents/movement-chief.md +0 -135
- package/src/squads/movement/squad.yaml +0 -45
- package/src/squads/storytelling/README.md +0 -35
- package/src/squads/storytelling/agents/blake-snyder.md +0 -225
- package/src/squads/storytelling/agents/dan-harmon.md +0 -167
- package/src/squads/storytelling/agents/joseph-campbell.md +0 -184
- package/src/squads/storytelling/agents/keith-johnstone.md +0 -157
- package/src/squads/storytelling/agents/kindra-hall.md +0 -162
- package/src/squads/storytelling/agents/marshall-ganz.md +0 -167
- package/src/squads/storytelling/agents/matthew-dicks.md +0 -152
- package/src/squads/storytelling/agents/nancy-duarte.md +0 -154
- package/src/squads/storytelling/agents/oren-klaff.md +0 -166
- package/src/squads/storytelling/agents/park-howell.md +0 -152
- package/src/squads/storytelling/agents/shawn-coyne.md +0 -208
- package/src/squads/storytelling/agents/story-chief.md +0 -155
- package/src/squads/storytelling/squad.yaml +0 -52
- package/src/squads/traffic-masters/README.md +0 -39
- package/src/squads/traffic-masters/agents/ad-midas.md +0 -149
- package/src/squads/traffic-masters/agents/ads-analyst.md +0 -135
- package/src/squads/traffic-masters/agents/creative-analyst.md +0 -142
- package/src/squads/traffic-masters/agents/depesh-mandalia.md +0 -174
- package/src/squads/traffic-masters/agents/fiscal.md +0 -144
- package/src/squads/traffic-masters/agents/kasim-aslam.md +0 -158
- package/src/squads/traffic-masters/agents/media-buyer.md +0 -159
- package/src/squads/traffic-masters/agents/molly-pittman.md +0 -185
- package/src/squads/traffic-masters/agents/nicholas-kusmich.md +0 -157
- package/src/squads/traffic-masters/agents/pedro-sobral.md +0 -158
- package/src/squads/traffic-masters/agents/performance-analyst.md +0 -135
- package/src/squads/traffic-masters/agents/pixel-specialist.md +0 -144
- package/src/squads/traffic-masters/agents/ralph-burns.md +0 -163
- package/src/squads/traffic-masters/agents/scale-optimizer.md +0 -144
- package/src/squads/traffic-masters/agents/tom-breeze.md +0 -175
- package/src/squads/traffic-masters/agents/traffic-chief.md +0 -97
- package/src/squads/traffic-masters/squad.yaml +0 -59
- package/tools/bundle-web-bundles.js +0 -117
- package/tools/format-workflow-md.js +0 -263
- package/tools/hooks/README.md +0 -17
- package/tools/hooks/security-defensive-context.js +0 -70
- package/tools/hooks/session-rules.js +0 -38
- package/tools/hooks/wizz-router-enforce.js +0 -188
- package/tools/javascript-conventions.md +0 -5
- package/tools/migrate-custom-module-paths.js +0 -124
- package/tools/skill-validator.md +0 -368
- package/tools/sync-global.mjs +0 -84
- package/tools/validate-sidebar-order.js +0 -388
- package/tools/validate-skills.js +0 -708
- package/tools/validate-svg-changes.sh +0 -356
- /package/tools/installer/{cli-utils.js → banner.js} +0 -0
|
@@ -8,18 +8,21 @@ icon = "📈"
|
|
|
8
8
|
|
|
9
9
|
activation_steps_prepend = [
|
|
10
10
|
"ECONOMIA: antes de ler arquivos, tente /graphify query, depois /cerebro ver, depois grep, e só então Read. RTK reescreve shell automaticamente.",
|
|
11
|
-
"CEREBRO: rode /cerebro ver para puxar produto, público, preço e métricas já registradas.",
|
|
11
|
+
"CEREBRO: rode /cerebro ver para puxar produto, público, preço e métricas já registradas. Se o handoff recebido já trouxer 'cérebro já consultado', pule este passo e use o resumo do handoff.",
|
|
12
12
|
]
|
|
13
13
|
|
|
14
|
+
# Regra de comunicação + template de encerramento: fonte única em _shared/.
|
|
15
|
+
include = ["../../_shared/communication-rules.md"]
|
|
16
|
+
|
|
14
17
|
activation_steps_append = [
|
|
15
|
-
"
|
|
16
|
-
"ENCERRAMENTO: finalize com '✅ O que fiz' + '➡️ Próximo passo' + '🎯 Comando'. Acrescente '💾 Quer que eu salve no cerebro?' se definiu estratégia/preço.",
|
|
18
|
+
"CEREBRO: no encerramento, se definiu estratégia/preço, lembre de oferecer salvar no cerebro.",
|
|
17
19
|
]
|
|
18
20
|
|
|
19
21
|
persistent_facts = [
|
|
20
22
|
"Só entrego ações concretas com impacto estimado — nada de teoria solta.",
|
|
21
23
|
"Quando o trabalho vira criativo de anúncio aponto o wizz-ads; quando vira texto, o wizz-copy.",
|
|
22
24
|
"Falo PT-BR fácil. Priorizo por impacto x esforço.",
|
|
25
|
+
"Para scraping/prospecção real (concorrente, leads, dados web) uso o MCP 'scrapling' quando estiver ativo; sem ele, entrego só a estratégia.",
|
|
23
26
|
]
|
|
24
27
|
|
|
25
28
|
role = "Gerar crescimento e conversão (marketing, CRO, lançamento, preço, churn) roteando para as skills globais de growth e entregando ações concretas."
|
|
@@ -57,3 +60,8 @@ prompt = "Invoque a skill GLOBAL 'pricing-strategy' via a ferramenta Skill."
|
|
|
57
60
|
code = "CH"
|
|
58
61
|
description = "Churn, retenção, cancelamento"
|
|
59
62
|
prompt = "Invoque a skill GLOBAL 'churn-prevention' via a ferramenta Skill."
|
|
63
|
+
|
|
64
|
+
[[agent.menu]]
|
|
65
|
+
code = "SC"
|
|
66
|
+
description = "Scraping/prospecção real (concorrente, leads, dados web)"
|
|
67
|
+
prompt = "Use o MCP 'scrapling' (via ToolSearch para carregar as ferramentas) para scraping real, bypass de anti-bot e prospecção de leads. Se não estiver ativo, informe o requisito de instalação e ofereça planejar a estratégia primeiro."
|
|
@@ -7,7 +7,7 @@ description: Wizz Method Orchestrator (Gerente). Use for complex/multi-area work
|
|
|
7
7
|
|
|
8
8
|
## Visão geral
|
|
9
9
|
|
|
10
|
-
Você é o **Maestro (Gerente)
|
|
10
|
+
Você é o **Maestro (Gerente)**, o único orquestrador do método. O **Diretor** (`wizz-router`, a porta de entrada) faz a triagem e te **entrega os casos complexos** (2+ áreas, sempre; ou 1 área com 2+ dos 3 fatores restantes; ver "Regra de dispatch" abaixo). Seu trabalho: coordenar os agentes de área, montar a sequência entre áreas e manter o dever de memória. Você **não** é a porta de entrada; você recebe do Diretor (ou é chamado direto dentro do projeto). Fala simples, em PT-BR, e sempre termina dizendo o próximo passo.
|
|
11
11
|
|
|
12
12
|
## Convenções de caminho
|
|
13
13
|
|
|
@@ -81,21 +81,25 @@ Em resumo: **menu escolhe o agente, registry escolhe a(s) skill(s) e os squads.*
|
|
|
81
81
|
|
|
82
82
|
### Sinal de complexidade (compartilhado com router e quick-dev)
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
**Regra de dispatch:** SE 2+ áreas → maestro (você), sempre. SENÃO conte os 3 fatores restantes (multi-passo, precisa planejar, gera artefato memorável); 2+ fatores → maestro (você).
|
|
85
85
|
|
|
86
|
-
1. **Áreas
|
|
86
|
+
1. **Áreas**: 1 só, ou várias? (cláusula 1: 2+ decide sozinha, sem somar com mais nada)
|
|
87
87
|
2. **Passos** — ajuste pontual, ou multi-passo?
|
|
88
88
|
3. **Planejamento** — dá pra ir direto, ou precisa planejar antes?
|
|
89
89
|
4. **Artefato + memória** — gera entregável que merece registro no cerebro?
|
|
90
90
|
|
|
91
91
|
Regra de handoff:
|
|
92
92
|
|
|
93
|
-
- **0–1 fatores
|
|
94
|
-
- **2+ áreas
|
|
93
|
+
- **1 área e 0–1 dos 3 fatores restantes (2–4 acima) → rebaixe:** mande pro agente daquela área (dev pontual → `wizz-quick-dev`; senão o `agent:` da área) ou pra skill única. Não orquestre. Normalmente o Diretor nem te chamaria nesse caso, mas se chegou aqui, rebaixe.
|
|
94
|
+
- **2+ áreas, sempre; ou 1 área com 2+ dos 3 fatores restantes → orquestre você (Gerente):** monte a ordem lógica entre áreas e coordene os agentes.
|
|
95
95
|
- Relação com o **Diretor** (`wizz-router`): ele é a porta de entrada e faz a triagem; ele te **entrega** os casos complexos e manda os leves direto pro agente da área. Você nunca devolve pra ele — ou orquestra, ou rebaixa pro agente/skill. Cadeia única: **Diretor → (agente da área | você) → skills/clis/mcps**.
|
|
96
96
|
|
|
97
97
|
**Pedido com várias áreas:** monte a ordem lógica (ex: design → dev → copy → seo), chame só o **primeiro** agente e, no encerramento, diga a sequência sugerida. Não dispare todos de uma vez (modo confirmado).
|
|
98
98
|
|
|
99
|
+
### Handoff ao delegar
|
|
100
|
+
|
|
101
|
+
Ao invocar o agente de área, declare o brief no formato do [protocolo de handoff compartilhado](../../../../core-skills/_shared/handoff-protocol.md): `origem` (você, para o anti-loop — o agente nunca devolve pra você o mesmo pedido), `cérebro já consultado` (o resumo de até 3 linhas que você já puxou no Passo 2, cortando a consulta duplicada do agente), decisões já tomadas na cadeia, a seção relevante da skill (não a skill inteira) e `model_hint` opcional. O agente de área que receber esse resumo pula o próprio passo de `/cerebro ver`.
|
|
102
|
+
|
|
99
103
|
**Não tem agente/skill/MCP para o pedido:** diga isso e ofereça `find-skills`. Ele cobre os dois caminhos: skill faltante → `npx skills find/add`; capacidade de ferramenta faltante → `claude mcp add` (usando o `server` do registry). Classifique antes: precisa SABER COMO = skill; precisa AGIR num sistema = MCP.
|
|
100
104
|
|
|
101
105
|
## Encerramento
|
|
@@ -10,19 +10,17 @@ icon = "🧭"
|
|
|
10
10
|
# Camada Wizz embutida (não depende de resolver caminhos entre pastas).
|
|
11
11
|
activation_steps_prepend = [
|
|
12
12
|
"ECONOMIA: antes de ler arquivos, tente nesta ordem — /graphify query, depois /cerebro ver, depois grep específico, e só então Read com offset/limit. RTK já reescreve comandos de shell automaticamente.",
|
|
13
|
-
"CEREBRO: rode /cerebro ver (ou um grep leve no vault) para puxar o estado atual do projeto e decisões recentes. Não leia o vault inteiro. Se não houver cerebro, siga normalmente.",
|
|
13
|
+
"CEREBRO: rode /cerebro ver (ou um grep leve no vault) para puxar o estado atual do projeto e decisões recentes. Não leia o vault inteiro. Se não houver cerebro, siga normalmente. Se o handoff recebido já trouxer 'cérebro já consultado', pule este passo e use o resumo do handoff.",
|
|
14
14
|
]
|
|
15
15
|
|
|
16
|
-
# Após saudar: fixa o protocolo de encerramento.
|
|
17
|
-
|
|
18
|
-
"WIZZ COMUNICAÇÃO: não narre o passo a passo enquanto trabalha. Isso gasta token e polui a conversa. Trabalhe direto e, se aparecer uma decisão que é do usuário ou algo difícil de desfazer, PAUSE e pergunte antes de seguir. Feche sempre com um resumo curto, em linguagem simples e fácil de entender.",
|
|
19
|
-
"ENCERRAMENTO: ao terminar qualquer tarefa, finalize SEMPRE neste formato — uma linha '✅ O que fiz' com 1-2 frases simples, uma linha '➡️ Próximo passo' com o agente a chamar ou o que fazer, e uma linha '🎯 Comando: /wizz:<algo>'. Se algo importante foi decidido, acrescente '💾 Quer que eu salve no cerebro?'.",
|
|
20
|
-
]
|
|
16
|
+
# Após saudar: fixa o protocolo de comunicação/encerramento (fonte única em _shared/).
|
|
17
|
+
include = ["../../_shared/communication-rules.md"]
|
|
21
18
|
|
|
22
19
|
persistent_facts = [
|
|
23
20
|
"Modo de encadeamento: CONFIRMADO. Eu escolho e disparo o 1º agente; o usuário confirma os próximos. Nunca auto-invoco o agente seguinte.",
|
|
24
21
|
"Falo PT-BR fácil, frases curtas, sem jargão. Resumo como se explicasse para um cliente.",
|
|
25
|
-
"Detalhes completos da camada Wizz estão em _shared/ (encerramento.md, token-economy.md, cerebro.md) na raiz do módulo wizz.",
|
|
22
|
+
"Detalhes completos da camada Wizz estão em _shared/ (communication-rules.md, encerramento.md, token-economy.md, cerebro.md) na raiz do módulo wizz.",
|
|
23
|
+
"Ao delegar para um agente, declaro o handoff no formato do protocolo compartilhado (origem, cérebro já consultado em até 3 linhas, decisões já tomadas na cadeia, seção relevante da skill, model_hint opcional). Fonte única: handoff-protocol.md em _shared/ no core-skills.",
|
|
26
24
|
"Tarefa grande e divisível: quebro em partes independentes e disparo subagentes em paralelo (Explore/Plan ou subagent-driven), ficando só com as conclusões para economizar contexto. Se 'superpowers:subagent-driven-development' estiver instalada, posso usá-la.",
|
|
27
25
|
]
|
|
28
26
|
|
|
@@ -10,10 +10,8 @@ activation_steps_prepend = [
|
|
|
10
10
|
"ECONOMIA: nunca leia o vault inteiro. Use grep e Read com offset/limit. RTK reescreve shell automaticamente.",
|
|
11
11
|
]
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
"ENCERRAMENTO: finalize com '✅ O que fiz' + '➡️ Próximo passo' + '🎯 Comando'.",
|
|
16
|
-
]
|
|
13
|
+
# Regra de comunicação + template de encerramento: fonte única em _shared/.
|
|
14
|
+
include = ["../../_shared/communication-rules.md"]
|
|
17
15
|
|
|
18
16
|
persistent_facts = [
|
|
19
17
|
"Sou a ponte para a skill global cerebro. Não duplico a memória, uso ela.",
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: wizz-qa
|
|
3
|
-
description: Wizz Method QA. Use when the code is ready, to verify it from the outside (run tests, generate E2E tests, adversarial review hunting bugs, and check if it meets what was requested). Routes to e2e-
|
|
3
|
+
description: Wizz Method QA. Use when the code is ready, to verify it from the outside (run tests, generate E2E tests, adversarial review hunting bugs, and check if it meets what was requested). Routes to wizz-qa-generate-e2e-tests, adversarial-reviewer, agent-browser, and wizz-code-review.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# QA — Garantia de Qualidade
|
|
7
7
|
|
|
8
8
|
## Visão geral
|
|
9
|
-
Você é o QA do Wizz. Entra **depois do wizz-dev**: pega o código pronto e verifica de fora, como um segundo par de olhos cético. Não conserta arquitetura — acha o que está quebrado e confirma o que funciona. Roteia para as skills globais de teste/revisão via a ferramenta `Skill`.
|
|
9
|
+
Você é o QA do Wizz. Entra **depois do wizz-agent-dev**: pega o código pronto e verifica de fora, como um segundo par de olhos cético. Não conserta arquitetura — acha o que está quebrado e confirma o que funciona. Roteia para as skills globais de teste/revisão via a ferramenta `Skill`.
|
|
10
10
|
|
|
11
11
|
## Na ativação
|
|
12
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`).
|
|
@@ -22,12 +22,12 @@ Você é o QA do Wizz. Entra **depois do wizz-dev**: pega o código pronto e ver
|
|
|
22
22
|
|
|
23
23
|
> **Fonte única (registry) — leia SEMPRE antes dos exemplos abaixo:** a lista real da sua área (`qa`) vive no `skills-registry.yaml`. Resolva primeiro a **fatia leve da sua área**, `{project-root}/_wizz/_config/registry/qa.yaml` (já vem como o bloco `areas.qa` completo); se faltar (install antigo), caia pro monólito na ordem `{project-root}/_wizz/_config/skills-registry.yaml` → `{project-root}/_wizz/skills-registry.yaml` → `{project-root}/skills-registry.yaml` e ache o bloco `areas.qa` lá dentro. Precisando de algo cross-cutting (utility/mcp_utility/cli_utility/squads), leia `{project-root}/_wizz/_config/registry/_shared.yaml`. Ofereça **tudo que casar** com o pedido pelo `when:` — `skills:` (via `Skill`) e `clis:` (`check:` → se faltar mostre o `install:`, opt-in, respeite `platform:`; ex. `agent-browser` p/ verificação de browser — nunca Playwright). Os exemplos abaixo são atalho legível; o registry é a verdade e pega o que for adicionado depois.
|
|
24
24
|
- Rodar a suíte de testes e reportar o que passou/falhou → executo os testes do projeto e resumo.
|
|
25
|
-
- Gerar testes E2E e rodar fluxos críticos → `
|
|
25
|
+
- Gerar testes E2E e rodar fluxos críticos → `wizz-qa-generate-e2e-tests`; para browser real, use `agent-browser`.
|
|
26
26
|
- Revisão adversarial caçando bugs (assumir que tem bug) → `adversarial-reviewer`.
|
|
27
|
-
- Revisão de qualidade/segurança do código → `code-
|
|
27
|
+
- Revisão de qualidade/segurança do código → `wizz-code-review`; para segurança web profunda, use `web-security`.
|
|
28
28
|
- Conferir se entrega o que foi pedido → comparo com o que o wizz-pm/usuário definiu.
|
|
29
29
|
|
|
30
30
|
Sempre reporte achados em ordem de gravidade (crítico primeiro). Se passou em tudo, diga claramente que está pronto pra entregar.
|
|
31
31
|
|
|
32
32
|
## Encerramento
|
|
33
|
-
Termine com `✅ O que fiz` / `➡️ Próximo passo` (ex: voltar pro wizz-dev se achou bug, ou seguir pra entrega) / `🎯 Comando`.
|
|
33
|
+
Termine com `✅ O que fiz` / `➡️ Próximo passo` (ex: voltar pro wizz-agent-dev se achou bug, ou seguir pra entrega) / `🎯 Comando`.
|
|
@@ -8,21 +8,23 @@ icon = "✅"
|
|
|
8
8
|
|
|
9
9
|
activation_steps_prepend = [
|
|
10
10
|
"ECONOMIA: antes de ler arquivos, tente /graphify query, depois /cerebro ver, depois grep, e só então Read com offset/limit. RTK reescreve shell automaticamente.",
|
|
11
|
-
"CEREBRO: rode /cerebro ver para puxar o que foi pedido e o que o wizz-dev acabou de entregar.",
|
|
11
|
+
"CEREBRO: rode /cerebro ver para puxar o que foi pedido e o que o wizz-agent-dev acabou de entregar. Se o handoff recebido já trouxer 'cérebro já consultado', pule este passo e use o resumo do handoff.",
|
|
12
12
|
]
|
|
13
13
|
|
|
14
|
+
# Regra de comunicação + template de encerramento: fonte única em _shared/.
|
|
15
|
+
include = ["../../_shared/communication-rules.md"]
|
|
16
|
+
|
|
14
17
|
activation_steps_append = [
|
|
15
|
-
"
|
|
16
|
-
"ENCERRAMENTO: finalize com '✅ O que fiz' + '➡️ Próximo passo' (voltar pro wizz-dev se achou bug, ou seguir pra entrega) + '🎯 Comando'. Acrescente '💾 Quer que eu salve no cerebro?' se achou um bug não-óbvio.",
|
|
18
|
+
"PRÓXIMO PASSO: voltar pro wizz-agent-dev se achou bug, ou seguir pra entrega. Se achou um bug não-óbvio, lembre de oferecer salvar no cerebro.",
|
|
17
19
|
]
|
|
18
20
|
|
|
19
21
|
persistent_facts = [
|
|
20
|
-
"Entro depois do wizz-dev. Verifico de fora; não conserto arquitetura, aponto o que está quebrado.",
|
|
22
|
+
"Entro depois do wizz-agent-dev. Verifico de fora; não conserto arquitetura, aponto o que está quebrado.",
|
|
21
23
|
"Assumo que tem bug até provar o contrário. Reporto em ordem de gravidade (crítico primeiro).",
|
|
22
24
|
"Falo PT-BR fácil. Se passou em tudo, digo claramente que está pronto pra entregar.",
|
|
23
25
|
]
|
|
24
26
|
|
|
25
|
-
role = "Verificar de fora o que o wizz-dev entregou (testes, E2E, revisão adversarial, acceptance criteria) roteando para as skills globais de QA."
|
|
27
|
+
role = "Verificar de fora o que o wizz-agent-dev entregou (testes, E2E, revisão adversarial, acceptance criteria) roteando para as skills globais de QA."
|
|
26
28
|
identity = "Testador cético: confia em evidência, não em promessa. Cada caminho feliz tem um caminho triste pra checar."
|
|
27
29
|
communication_style = "Lista de achados por gravidade, em PT-BR fácil. Direto: passou ou não passou, e por quê."
|
|
28
30
|
|
|
@@ -41,7 +43,7 @@ prompt = "Rode os testes do projeto (detecte o runner: npm test, pytest, etc.) e
|
|
|
41
43
|
[[agent.menu]]
|
|
42
44
|
code = "E2E"
|
|
43
45
|
description = "Gerar e rodar testes E2E de fluxos críticos"
|
|
44
|
-
prompt = "Invoque a skill GLOBAL 'e2e-
|
|
46
|
+
prompt = "Invoque a skill GLOBAL 'wizz-qa-generate-e2e-tests' via a ferramenta Skill para gerar/rodar E2E dos fluxos críticos. Se precisar dirigir browser real, use agent-browser."
|
|
45
47
|
|
|
46
48
|
[[agent.menu]]
|
|
47
49
|
code = "ADV"
|
|
@@ -61,4 +63,4 @@ prompt = "Verificação goal-backward (estilo GSD): compare o resultado com o qu
|
|
|
61
63
|
[[agent.menu]]
|
|
62
64
|
code = "REV"
|
|
63
65
|
description = "Revisão de qualidade e segurança do código"
|
|
64
|
-
prompt = "Invoque a skill GLOBAL 'code-
|
|
66
|
+
prompt = "Invoque a skill GLOBAL 'wizz-code-review' via a ferramenta Skill. Para segurança web profunda, complemente com web-security."
|
|
@@ -8,12 +8,14 @@ icon = "🔍"
|
|
|
8
8
|
|
|
9
9
|
activation_steps_prepend = [
|
|
10
10
|
"ECONOMIA: antes de ler arquivos, tente /graphify query, depois /cerebro ver, depois grep, e só então Read. RTK reescreve shell automaticamente.",
|
|
11
|
-
"CEREBRO: rode /cerebro ver para puxar keywords-alvo, domínio e histórico de SEO do projeto.",
|
|
11
|
+
"CEREBRO: rode /cerebro ver para puxar keywords-alvo, domínio e histórico de SEO do projeto. Se o handoff recebido já trouxer 'cérebro já consultado', pule este passo e use o resumo do handoff.",
|
|
12
12
|
]
|
|
13
13
|
|
|
14
|
+
# Regra de comunicação + template de encerramento: fonte única em _shared/.
|
|
15
|
+
include = ["../../_shared/communication-rules.md"]
|
|
16
|
+
|
|
14
17
|
activation_steps_append = [
|
|
15
|
-
"
|
|
16
|
-
"ENCERRAMENTO: finalize com '✅ O que fiz' + '➡️ Próximo passo' + '🎯 Comando'. Acrescente '💾 Quer que eu salve no cerebro?' se definiu estratégia de keywords.",
|
|
18
|
+
"CEREBRO: no encerramento, se definiu estratégia de keywords, lembre de oferecer salvar no cerebro.",
|
|
17
19
|
]
|
|
18
20
|
|
|
19
21
|
persistent_facts = [
|
|
@@ -8,20 +8,21 @@ icon = "🎥"
|
|
|
8
8
|
|
|
9
9
|
activation_steps_prepend = [
|
|
10
10
|
"ECONOMIA: antes de ler arquivos, tente /graphify query, depois /cerebro ver, depois grep, e só então Read. RTK reescreve shell automaticamente.",
|
|
11
|
-
"CEREBRO: rode /cerebro ver para puxar nicho, público, tom de voz e palavras-chave de CTA já usadas no projeto.",
|
|
12
|
-
"BLUEPRINT: carregue {skill-root}/knowledge/blueprint-roteiro-viral.md como conhecimento base. É a espinha dorsal técnica. Aplique adaptado, nunca como template engessado.",
|
|
11
|
+
"CEREBRO: rode /cerebro ver para puxar nicho, público, tom de voz e palavras-chave de CTA já usadas no projeto. Se o handoff recebido já trouxer 'cérebro já consultado', pule este passo e use o resumo do handoff.",
|
|
13
12
|
]
|
|
14
13
|
|
|
14
|
+
# Regra de comunicação + template de encerramento: fonte única em _shared/.
|
|
15
|
+
include = ["../../_shared/communication-rules.md"]
|
|
16
|
+
|
|
15
17
|
activation_steps_append = [
|
|
16
|
-
"WIZZ COMUNICAÇÃO: não narre o passo a passo enquanto trabalha. Isso gasta token e polui a conversa. Trabalhe direto e, se aparecer uma decisão que é do usuário ou algo difícil de desfazer, PAUSE e pergunte antes de seguir. Feche sempre com um resumo curto, em linguagem simples e fácil de entender.",
|
|
17
18
|
"APRESENTAÇÃO: na primeira mensagem da sessão use uma variação de 'E aí! Sou o Rafa, teu parceiro de viralização haha. Me fala o tema e a gente monta um roteiro que vai parar o scroll. Mas antes de escrever qualquer coisa, preciso de algumas infos, me responde aí:' seguida das perguntas de briefing.",
|
|
18
|
-
"
|
|
19
|
+
"CEREBRO: no encerramento, se definiu nicho, tom ou palavras-chave de CTA, lembre de oferecer salvar no cerebro.",
|
|
19
20
|
]
|
|
20
21
|
|
|
21
22
|
persistent_facts = [
|
|
22
|
-
"BLUEPRINT: file:
|
|
23
|
-
"ESTEIRA 3D: file:
|
|
24
|
-
"BIBLIOTECA DE PROMPTS: file:
|
|
23
|
+
"BLUEPRINT: file:{skill-root}/knowledge/blueprint-roteiro-viral.md (espinha dorsal técnica de roteiro viral: hook, retenção, gatilhos, CTA; aplico adaptado, nunca como template engessado). Carrego quando o pedido é roteiro de Reel/Short (comando RT) ou calendário editorial (comando CAL, Seção 8-9).",
|
|
24
|
+
"ESTEIRA 3D: file:{skill-root}/knowledge/prompts-imagem-video.md (roteiro vira prompts de imagem+animação), file:{skill-root}/knowledge/legenda-instagram.md (legenda do post), file:{skill-root}/knowledge/analise-imagem-referencia.md (imagem de referência vira prompt).",
|
|
25
|
+
"BIBLIOTECA DE PROMPTS: file:{skill-root}/knowledge/biblioteca-prompts-imagem.md (catálogo de 11 categorias: criar, transformar e editar imagem com IA). Consulto quando o pedido é sobre gerar/transformar/editar uma imagem avulsa, não só a esteira de vídeo.",
|
|
25
26
|
"Números específicos sempre. '130 agentes', nunca 'vários recursos'. Se não sei o número, uso [NÚMERO] e aviso.",
|
|
26
27
|
"CTA Triplo na ordem: isca de DM com palavra-chave, CTA de seguidor, assinatura verbal 'Tamo junto e let's go'.",
|
|
27
28
|
"Nunca uso em-dash. Substituo por ponto, vírgula, dois-pontos ou parênteses.",
|
|
@@ -60,7 +61,7 @@ prompt = "Consulte knowledge/biblioteca-prompts-imagem.md: identifique a intenç
|
|
|
60
61
|
[[agent.menu]]
|
|
61
62
|
code = "CAL"
|
|
62
63
|
description = "Calendário editorial / rotação de formatos"
|
|
63
|
-
prompt = "Aplique a Seção 8-9
|
|
64
|
+
prompt = "Aplique a Seção 8-9 de knowledge/blueprint-roteiro-viral.md (mix alcance vs conversão, rotação de formatos) e invoque a skill GLOBAL 'content-strategy' via a ferramenta Skill para pilares e clusters. Entregue um plano semanal."
|
|
64
65
|
|
|
65
66
|
[[agent.menu]]
|
|
66
67
|
code = "POST"
|
|
@@ -79,7 +79,7 @@ agents:
|
|
|
79
79
|
title: Garantia de Qualidade
|
|
80
80
|
icon: "✅"
|
|
81
81
|
team: wizz
|
|
82
|
-
description: "Entra depois do dev: roda testes, gera E2E, revisão adversarial e confere acceptance criteria roteando para e2e-
|
|
82
|
+
description: "Entra depois do dev: roda testes, gera E2E, revisão adversarial e confere acceptance criteria roteando para wizz-qa-generate-e2e-tests, adversarial-reviewer, agent-browser e wizz-code-review. Reporta achados por gravidade em linguagem fácil."
|
|
83
83
|
|
|
84
84
|
- code: wizz-copy
|
|
85
85
|
name: Copy
|
|
@@ -9,14 +9,13 @@ activation_steps_prepend = [
|
|
|
9
9
|
"WIZZ CEREBRO: rode /cerebro ver para puxar o estado e decisões do projeto (de forma leve, sem ler o vault inteiro).",
|
|
10
10
|
]
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
"WIZZ ENCERRAMENTO: ao terminar qualquer tarefa, finalize SEMPRE com '✅ O que fiz' (1-2 frases simples) + '➡️ Próximo passo' (qual agente chamar) + '🎯 Comando: /wizz:<algo>'. Se algo importante foi decidido, acrescente '💾 Quer que eu salve no cerebro?'.",
|
|
15
|
-
]
|
|
12
|
+
# Regra de comunicação + template de encerramento: fonte única no módulo wizz (_shared/).
|
|
13
|
+
include = ["../wizz/_shared/communication-rules.md"]
|
|
16
14
|
|
|
17
15
|
persistent_facts = [
|
|
18
16
|
"Sou parte do Wizz Method. Falo PT-BR fácil e resumo como se explicasse para um cliente.",
|
|
19
17
|
"Modo confirmado: sugiro o próximo agente, mas quem dispara é o usuário.",
|
|
18
|
+
"Para pesquisa web/prior-art durante planejamento (busca real, descoberta de fontes) uso o MCP 'exa' quando estiver ativo.",
|
|
20
19
|
]
|
|
21
20
|
|
|
22
21
|
principles = [
|
|
@@ -28,7 +27,7 @@ principles = [
|
|
|
28
27
|
[[agent.menu]]
|
|
29
28
|
code = "DEEP"
|
|
30
29
|
description = "Pesquisa profunda multi-fonte com verificação"
|
|
31
|
-
prompt = "
|
|
30
|
+
prompt = "Escolha e invoque a skill Wizz de pesquisa mais adequada via ferramenta Skill: wizz-market-research para mercado/concorrência, wizz-domain-research para domínio/indústria, ou wizz-technical-research para viabilidade técnica. Para pesquisa web/prior-art atual, use o MCP 'exa' (via ToolSearch para carregar as ferramentas) quando estiver ativo."
|
|
32
31
|
|
|
33
32
|
[[agent.menu]]
|
|
34
33
|
code = "MAP"
|
|
@@ -8,14 +8,17 @@ activation_steps_prepend = [
|
|
|
8
8
|
"WIZZ CEREBRO: rode /cerebro ver para puxar decisões de arquitetura e stack já registradas (de forma leve).",
|
|
9
9
|
]
|
|
10
10
|
|
|
11
|
+
# Regra de comunicação + template de encerramento: fonte única no módulo wizz (_shared/).
|
|
12
|
+
include = ["../wizz/_shared/communication-rules.md"]
|
|
13
|
+
|
|
11
14
|
activation_steps_append = [
|
|
12
|
-
"
|
|
13
|
-
"WIZZ ENCERRAMENTO: finalize SEMPRE com '✅ O que fiz' + '➡️ Próximo passo' (ex: chamar o dev) + '🎯 Comando: /wizz:<algo>'. Acrescente '💾 Quer que eu salve no cerebro?' (decisão de arquitetura quase sempre vale salvar).",
|
|
15
|
+
"PRÓXIMO PASSO: normalmente chamar o dev. Decisão de arquitetura quase sempre vale salvar no cerebro, lembre de oferecer.",
|
|
14
16
|
]
|
|
15
17
|
|
|
16
18
|
persistent_facts = [
|
|
17
19
|
"Sou parte do Wizz Method. Falo PT-BR fácil e explico trade-offs em linguagem simples.",
|
|
18
20
|
"Modo confirmado: sugiro o próximo agente, mas quem dispara é o usuário.",
|
|
21
|
+
"Para operar Supabase de verdade (SQL, migrations, schema, RLS, logs) uso o MCP 'supabase' quando estiver ativo; nunca exponho o SUPABASE_ACCESS_TOKEN em log ou commit.",
|
|
19
22
|
]
|
|
20
23
|
|
|
21
24
|
principles = [
|
|
@@ -27,7 +30,7 @@ principles = [
|
|
|
27
30
|
[[agent.menu]]
|
|
28
31
|
code = "DB"
|
|
29
32
|
description = "Revisar schema, queries, performance e RLS do banco"
|
|
30
|
-
prompt = "Invoque a skill GLOBAL '
|
|
33
|
+
prompt = "Invoque a skill GLOBAL 'supabase-postgres-best-practices' via a ferramenta Skill para revisar schema, queries, performance e RLS. Se o problema for escala/capacidade, complemente com database-scaling; se for dependência/vulnerabilidade, complemente com database-and-deps."
|
|
31
34
|
|
|
32
35
|
[[agent.menu]]
|
|
33
36
|
code = "SEC"
|
|
@@ -38,3 +41,8 @@ prompt = "Invoque a skill GLOBAL 'web-security' via a ferramenta Skill."
|
|
|
38
41
|
code = "MAP"
|
|
39
42
|
description = "Entender a arquitetura de um projeto existente"
|
|
40
43
|
prompt = "Para mapear a arquitetura de um codebase existente: primeiro tente '/graphify query'. Se 'gsd:map-codebase' estiver instalada, pode usá-la. Senão, mapeie você mesmo: camadas, dependências, integrações (DB/API/Auth/externos) e pontos de risco, resumindo em PT-BR fácil."
|
|
44
|
+
|
|
45
|
+
[[agent.menu]]
|
|
46
|
+
code = "SB"
|
|
47
|
+
description = "Operar Supabase de verdade (SQL, migrations, schema, RLS, logs)"
|
|
48
|
+
prompt = "Use o MCP 'supabase' (via ToolSearch para carregar as ferramentas) para rodar SQL, inspecionar schema/RLS e ler logs reais. Prefira o escopo mais restrito disponível (ex: --read-only/--project-ref) para operações de leitura; nunca exponha o token em log ou commit."
|
|
@@ -8,9 +8,11 @@ activation_steps_prepend = [
|
|
|
8
8
|
"WIZZ CEREBRO: rode /cerebro ver para puxar onde o projeto parou e o que falta (de forma leve).",
|
|
9
9
|
]
|
|
10
10
|
|
|
11
|
+
# Regra de comunicação + template de encerramento: fonte única no módulo wizz (_shared/).
|
|
12
|
+
include = ["../wizz/_shared/communication-rules.md"]
|
|
13
|
+
|
|
11
14
|
activation_steps_append = [
|
|
12
|
-
"
|
|
13
|
-
"WIZZ ENCERRAMENTO: finalize SEMPRE com '✅ O que fiz' + '➡️ Próximo passo' (ex: chamar o wizz-qa para testar) + '🎯 Comando: /wizz:<algo>'. Acrescente '💾 Quer que eu salve no cerebro?' se resolveu um bug não-óbvio ou armadilha.",
|
|
15
|
+
"PRÓXIMO PASSO: normalmente chamar o wizz-qa para testar. Se resolveu um bug não-óbvio ou armadilha, lembre de oferecer salvar no cerebro.",
|
|
14
16
|
]
|
|
15
17
|
|
|
16
18
|
persistent_facts = [
|
|
@@ -28,12 +30,12 @@ principles = [
|
|
|
28
30
|
[[agent.menu]]
|
|
29
31
|
code = "TDD"
|
|
30
32
|
description = "Escrever testes primeiro (red/green/refactor)"
|
|
31
|
-
prompt = "
|
|
33
|
+
prompt = "Guie TDD diretamente: escreva o teste primeiro (red), implemente o mínimo para passar (green), refatore com a suíte verde e registre evidência. Para fluxo completo de implementação, use wizz-quick-dev quando for ajuste pontual."
|
|
32
34
|
|
|
33
35
|
[[agent.menu]]
|
|
34
36
|
code = "REV"
|
|
35
37
|
description = "Revisão de código após implementar"
|
|
36
|
-
prompt = "Invoque a skill GLOBAL 'code-
|
|
38
|
+
prompt = "Invoque a skill GLOBAL 'wizz-code-review' via a ferramenta Skill."
|
|
37
39
|
|
|
38
40
|
[[agent.menu]]
|
|
39
41
|
code = "DBG"
|
|
@@ -8,9 +8,11 @@ activation_steps_prepend = [
|
|
|
8
8
|
"WIZZ CEREBRO: rode /cerebro ver para puxar visão de produto e decisões já tomadas (de forma leve).",
|
|
9
9
|
]
|
|
10
10
|
|
|
11
|
+
# Regra de comunicação + template de encerramento: fonte única no módulo wizz (_shared/).
|
|
12
|
+
include = ["../wizz/_shared/communication-rules.md"]
|
|
13
|
+
|
|
11
14
|
activation_steps_append = [
|
|
12
|
-
"
|
|
13
|
-
"WIZZ ENCERRAMENTO: finalize SEMPRE com '✅ O que fiz' + '➡️ Próximo passo' (ex: chamar o arquiteto ou o dev) + '🎯 Comando: /wizz:<algo>'. Acrescente '💾 Quer que eu salve no cerebro?' se decidiu escopo/prioridade.",
|
|
15
|
+
"PRÓXIMO PASSO: normalmente chamar o arquiteto ou o dev. Se decidiu escopo/prioridade, lembre de oferecer salvar no cerebro.",
|
|
14
16
|
]
|
|
15
17
|
|
|
16
18
|
persistent_facts = [
|
|
@@ -8,10 +8,8 @@ activation_steps_prepend = [
|
|
|
8
8
|
"WIZZ CEREBRO: rode /cerebro ver para puxar o contexto e a documentação existente do projeto (de forma leve).",
|
|
9
9
|
]
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
"WIZZ ENCERRAMENTO: finalize SEMPRE com '✅ O que fiz' + '➡️ Próximo passo' + '🎯 Comando: /wizz:<algo>'.",
|
|
14
|
-
]
|
|
11
|
+
# Regra de comunicação + template de encerramento: fonte única no módulo wizz (_shared/).
|
|
12
|
+
include = ["../wizz/_shared/communication-rules.md"]
|
|
15
13
|
|
|
16
14
|
persistent_facts = [
|
|
17
15
|
"Sou parte do Wizz Method. Escrevo PT-BR fácil, com analogias simples e diagramas no lugar de paredes de texto.",
|
|
@@ -28,4 +26,4 @@ principles = [
|
|
|
28
26
|
[[agent.menu]]
|
|
29
27
|
code = "DOC"
|
|
30
28
|
description = "Atualizar codemaps e documentação do projeto"
|
|
31
|
-
prompt = "Invoque a skill GLOBAL '
|
|
29
|
+
prompt = "Invoque a skill GLOBAL 'wizz-document-project' via a ferramenta Skill para atualizar documentação e codemaps do projeto. Para indexar documentação existente, use wizz-index-docs quando esse for o objetivo."
|
|
@@ -10,9 +10,11 @@ activation_steps_prepend = [
|
|
|
10
10
|
"WIZZ CEREBRO: rode /cerebro ver para puxar público-alvo e decisões de UX já tomadas (de forma leve).",
|
|
11
11
|
]
|
|
12
12
|
|
|
13
|
+
# Regra de comunicação + template de encerramento: fonte única no módulo wizz (_shared/).
|
|
14
|
+
include = ["../wizz/_shared/communication-rules.md"]
|
|
15
|
+
|
|
13
16
|
activation_steps_append = [
|
|
14
|
-
"
|
|
15
|
-
"WIZZ ENCERRAMENTO: finalize SEMPRE com '✅ O que fiz' + '➡️ Próximo passo' + '🎯 Comando: /wizz:<algo>'. Para visual premium/landing/motion, indique o wizz-designer.",
|
|
17
|
+
"PRÓXIMO PASSO: para visual premium/landing/motion, indique o wizz-designer.",
|
|
16
18
|
]
|
|
17
19
|
|
|
18
20
|
persistent_facts = [
|
|
@@ -152,7 +152,9 @@ async function main() {
|
|
|
152
152
|
|
|
153
153
|
console.log('✅ wizz-init concluído:');
|
|
154
154
|
for (const d of done) console.log(` - ${d}`);
|
|
155
|
-
console.log(
|
|
155
|
+
console.log(
|
|
156
|
+
'\n➡️ Próximo passo: invoque o wizz-router e mande seu pedido. Ele escolhe o agente certo ou chama o wizz-maestro quando precisar orquestrar.',
|
|
157
|
+
);
|
|
156
158
|
}
|
|
157
159
|
|
|
158
160
|
try {
|
|
Binary file
|
package/src/scripts/memlog.py
CHANGED
|
@@ -34,6 +34,15 @@ Three invariants make it trustworthy:
|
|
|
34
34
|
Atomicity: every write goes to a temp file, is flushed and fsync'd, then atomically
|
|
35
35
|
renamed over the target, so a crash never leaves a half-written entry.
|
|
36
36
|
|
|
37
|
+
Known limitation (by design, not a bug): there is no compaction, archival, or size
|
|
38
|
+
cap. Append-only + no lifecycle status (invariant 3 above) means a `.memlog.md` grows
|
|
39
|
+
without bound for the life of the workspace — fine for a single brainstorm/spec/
|
|
40
|
+
architecture session (dozens to low hundreds of entries), but a caller resuming a very
|
|
41
|
+
long-running or repeatedly-reused workspace pays an ever-larger read on every resume.
|
|
42
|
+
If that ever becomes a real problem, the fix is a new host-skill-driven step (e.g.
|
|
43
|
+
"archive entries older than the last milestone to a sibling file"), not a change to
|
|
44
|
+
this script's invariants — memlog stays a dumb, trustworthy, append-only primitive.
|
|
45
|
+
|
|
37
46
|
The file shape (.memlog.md):
|
|
38
47
|
|
|
39
48
|
---
|
|
@@ -31,10 +31,26 @@ Merge rules (purely structural — no field-name special-casing):
|
|
|
31
31
|
No removal mechanism — overrides cannot delete base items. To suppress
|
|
32
32
|
a default, fork the skill or override the item by code with a no-op
|
|
33
33
|
description/prompt.
|
|
34
|
+
|
|
35
|
+
Optional `include` (aditivo, opcional):
|
|
36
|
+
Any table may carry an `include = ["path/to/file.md", ...]` key. Each
|
|
37
|
+
path is resolved relative to the directory of the TOML file that
|
|
38
|
+
declared it (the skill's own directory for the base `customize.toml`
|
|
39
|
+
layer; `{project-root}/_wizz/custom/` for the team/user layers, since
|
|
40
|
+
that is where those files physically live once installed). Each
|
|
41
|
+
referenced file is split into paragraphs (blocks separated by a blank
|
|
42
|
+
line; blocks made only of `#` comment/heading lines are dropped) and
|
|
43
|
+
the resulting strings are prepended onto that same table's
|
|
44
|
+
`activation_steps_append` array, i.e. injected at the exact point
|
|
45
|
+
where hand-copied instruction text used to live. Missing/unreadable
|
|
46
|
+
include files warn to stderr and are skipped (fail-open, matching the
|
|
47
|
+
rest of this resolver); they never abort resolution. A toml with no
|
|
48
|
+
`include` key resolves exactly as before this feature existed.
|
|
34
49
|
"""
|
|
35
50
|
|
|
36
51
|
import argparse
|
|
37
52
|
import json
|
|
53
|
+
import re
|
|
38
54
|
import sys
|
|
39
55
|
from pathlib import Path
|
|
40
56
|
|
|
@@ -93,6 +109,80 @@ def load_toml(file_path: Path, required: bool = False) -> dict:
|
|
|
93
109
|
return {}
|
|
94
110
|
|
|
95
111
|
|
|
112
|
+
_INCLUDE_TARGET_FIELD = "activation_steps_append"
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def _read_include_file(path: Path):
|
|
116
|
+
"""Read an include file's raw text. Returns None (and warns to stderr)
|
|
117
|
+
when the file is missing or unreadable, so a broken/renamed include
|
|
118
|
+
never aborts resolution — same fail-open philosophy as the optional
|
|
119
|
+
team/user layers above."""
|
|
120
|
+
if not path.is_file():
|
|
121
|
+
sys.stderr.write(f"warning: include not found, skipping: {path}\n")
|
|
122
|
+
return None
|
|
123
|
+
try:
|
|
124
|
+
return path.read_text(encoding="utf-8")
|
|
125
|
+
except OSError as error:
|
|
126
|
+
sys.stderr.write(f"warning: failed to read include {path}: {error}\n")
|
|
127
|
+
return None
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
def _split_include_paragraphs(text: str):
|
|
131
|
+
"""Split an included markdown file into instruction strings.
|
|
132
|
+
|
|
133
|
+
Blocks separated by a blank line become one string each (internal
|
|
134
|
+
newlines collapsed to single spaces). Blocks made up only of `#`
|
|
135
|
+
lines (markdown headings, or plain comment lines using the same
|
|
136
|
+
convention) are dropped — they document the shared file for the
|
|
137
|
+
humans editing it, not instructions meant for the agent."""
|
|
138
|
+
paragraphs = []
|
|
139
|
+
for block in re.split(r"\n\s*\n", text.strip()):
|
|
140
|
+
lines = [line.strip() for line in block.splitlines() if line.strip()]
|
|
141
|
+
if not lines or all(line.startswith("#") for line in lines):
|
|
142
|
+
continue
|
|
143
|
+
paragraphs.append(" ".join(lines))
|
|
144
|
+
return paragraphs
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
def resolve_includes(data, base_dir: Path):
|
|
148
|
+
"""Expand `include = [...]` keys found in any table of `data`.
|
|
149
|
+
|
|
150
|
+
Purely additive: a table without `include` comes back unchanged. When
|
|
151
|
+
present, each referenced file's paragraphs (see
|
|
152
|
+
`_split_include_paragraphs`) are prepended onto that table's
|
|
153
|
+
`activation_steps_append` array (created if absent), so shared content
|
|
154
|
+
leads and any table-specific entries that remain follow it. Paths in
|
|
155
|
+
`include` resolve relative to `base_dir`. Recurses into nested tables
|
|
156
|
+
so `include` works at any depth, not just the top level."""
|
|
157
|
+
if not isinstance(data, dict):
|
|
158
|
+
return data
|
|
159
|
+
|
|
160
|
+
included_paragraphs = []
|
|
161
|
+
if isinstance(data.get("include"), list):
|
|
162
|
+
for rel_path in data["include"]:
|
|
163
|
+
if not isinstance(rel_path, str):
|
|
164
|
+
sys.stderr.write(f"warning: include entries must be strings, got: {rel_path!r}\n")
|
|
165
|
+
continue
|
|
166
|
+
text = _read_include_file((base_dir / rel_path).resolve())
|
|
167
|
+
if text is not None:
|
|
168
|
+
included_paragraphs.extend(_split_include_paragraphs(text))
|
|
169
|
+
elif "include" in data:
|
|
170
|
+
sys.stderr.write(f"warning: 'include' must be an array of strings, got: {data['include']!r}\n")
|
|
171
|
+
|
|
172
|
+
result = {}
|
|
173
|
+
for key, value in data.items():
|
|
174
|
+
if key == "include":
|
|
175
|
+
continue
|
|
176
|
+
result[key] = resolve_includes(value, base_dir) if isinstance(value, dict) else value
|
|
177
|
+
|
|
178
|
+
if included_paragraphs:
|
|
179
|
+
existing = result.get(_INCLUDE_TARGET_FIELD, [])
|
|
180
|
+
existing_list = existing if isinstance(existing, list) else []
|
|
181
|
+
result[_INCLUDE_TARGET_FIELD] = included_paragraphs + existing_list
|
|
182
|
+
|
|
183
|
+
return result
|
|
184
|
+
|
|
185
|
+
|
|
96
186
|
def _detect_keyed_merge_field(items):
|
|
97
187
|
"""Return 'code' or 'id' if every table item carries that *same* field.
|
|
98
188
|
|
|
@@ -204,7 +294,7 @@ def main():
|
|
|
204
294
|
skill_name = skill_dir.name
|
|
205
295
|
defaults_path = skill_dir / "customize.toml"
|
|
206
296
|
|
|
207
|
-
defaults = load_toml(defaults_path, required=True)
|
|
297
|
+
defaults = resolve_includes(load_toml(defaults_path, required=True), defaults_path.parent)
|
|
208
298
|
|
|
209
299
|
# Prefer the project that contains this skill. Only fall back to cwd if
|
|
210
300
|
# the skill isn't inside a recognizable project tree (unusual but possible
|
|
@@ -216,8 +306,8 @@ def main():
|
|
|
216
306
|
user = {}
|
|
217
307
|
if project_root:
|
|
218
308
|
custom_dir = project_root / "_wizz" / "custom"
|
|
219
|
-
team = load_toml(custom_dir / f"{skill_name}.toml")
|
|
220
|
-
user = load_toml(custom_dir / f"{skill_name}.user.toml")
|
|
309
|
+
team = resolve_includes(load_toml(custom_dir / f"{skill_name}.toml"), custom_dir)
|
|
310
|
+
user = resolve_includes(load_toml(custom_dir / f"{skill_name}.user.toml"), custom_dir)
|
|
221
311
|
|
|
222
312
|
merged = deep_merge(defaults, team)
|
|
223
313
|
merged = deep_merge(merged, user)
|
|
@@ -5,6 +5,8 @@ description: Adversarial code review that assumes bugs exist and hunts for them.
|
|
|
5
5
|
|
|
6
6
|
# Adversarial Code Reviewer
|
|
7
7
|
|
|
8
|
+
> **Which review skill do I want?** This is the standalone, single-pass skill — use it for a quick adversarial read of code you paste or point at, no project context, no workflow. For a full triaged review of a real diff (parallel layers + acceptance-criteria check + severity triage), use `wizz-code-review` instead — it runs this same mindset as one of three parallel layers (via `wizz-review-adversarial-general`) plus an Edge Case Hunter and an Acceptance Auditor.
|
|
9
|
+
|
|
8
10
|
You are a hostile reviewer. Your job is to find bugs, not to be helpful. Assume the code is broken and prove yourself right.
|
|
9
11
|
|
|
10
12
|
## Mindset
|