wizz-method 2.0.0 → 2.1.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.
Files changed (311) hide show
  1. package/LICENSE +60 -30
  2. package/README.md +80 -31
  3. package/SECURITY.md +24 -0
  4. package/THIRD-PARTY-NOTICES.md +136 -0
  5. package/package.json +31 -17
  6. package/skills-registry.yaml +128 -7
  7. package/src/bmm-skills/1-analysis/research/wizz-domain-research/SKILL.md +3 -4
  8. package/src/bmm-skills/1-analysis/research/wizz-domain-research/domain-steps/step-06-research-synthesis.md +1 -1
  9. package/src/bmm-skills/1-analysis/research/wizz-market-research/SKILL.md +3 -4
  10. package/src/bmm-skills/1-analysis/research/wizz-market-research/steps/step-06-research-completion.md +1 -1
  11. package/src/bmm-skills/1-analysis/research/wizz-technical-research/SKILL.md +3 -4
  12. package/src/bmm-skills/1-analysis/research/wizz-technical-research/technical-steps/step-06-research-synthesis.md +1 -1
  13. package/src/bmm-skills/1-analysis/wizz-agent-analyst/SKILL.md +3 -4
  14. package/src/bmm-skills/1-analysis/wizz-agent-tech-writer/SKILL.md +3 -4
  15. package/src/bmm-skills/1-analysis/wizz-document-project/SKILL.md +3 -4
  16. package/src/bmm-skills/1-analysis/wizz-document-project/workflows/deep-dive-instructions.md +1 -1
  17. package/src/bmm-skills/1-analysis/wizz-document-project/workflows/full-scan-instructions.md +1 -1
  18. package/src/bmm-skills/1-analysis/wizz-prfaq/SKILL.md +3 -4
  19. package/src/bmm-skills/1-analysis/wizz-prfaq/references/verdict.md +1 -1
  20. package/src/bmm-skills/1-analysis/wizz-product-brief/SKILL.md +1 -1
  21. package/src/bmm-skills/2-plan-workflows/wizz-agent-pm/SKILL.md +3 -4
  22. package/src/bmm-skills/2-plan-workflows/wizz-agent-ux-designer/SKILL.md +3 -4
  23. package/src/bmm-skills/2-plan-workflows/wizz-create-prd/SKILL.md +1 -1
  24. package/src/bmm-skills/2-plan-workflows/wizz-edit-prd/SKILL.md +1 -1
  25. package/src/bmm-skills/2-plan-workflows/wizz-prd/SKILL.md +1 -1
  26. package/src/bmm-skills/2-plan-workflows/wizz-ux/SKILL.md +1 -1
  27. package/src/bmm-skills/2-plan-workflows/wizz-validate-prd/SKILL.md +1 -1
  28. package/src/bmm-skills/3-solutioning/wizz-agent-architect/SKILL.md +3 -4
  29. package/src/bmm-skills/3-solutioning/wizz-architecture/SKILL.md +9 -9
  30. package/src/bmm-skills/3-solutioning/wizz-architecture/references/headless.md +1 -1
  31. package/src/bmm-skills/3-solutioning/wizz-check-implementation-readiness/SKILL.md +3 -4
  32. package/src/bmm-skills/3-solutioning/wizz-check-implementation-readiness/steps/step-06-final-assessment.md +1 -1
  33. package/src/bmm-skills/3-solutioning/wizz-create-architecture/SKILL.md +1 -1
  34. package/src/bmm-skills/3-solutioning/wizz-create-epics-and-stories/SKILL.md +3 -4
  35. package/src/bmm-skills/3-solutioning/wizz-create-epics-and-stories/steps/step-04-final-validation.md +1 -1
  36. package/src/bmm-skills/3-solutioning/wizz-generate-project-context/SKILL.md +3 -4
  37. package/src/bmm-skills/3-solutioning/wizz-generate-project-context/steps/step-03-complete.md +1 -1
  38. package/src/bmm-skills/4-implementation/wizz-agent-dev/SKILL.md +3 -4
  39. package/src/bmm-skills/4-implementation/wizz-checkpoint-preview/SKILL.md +3 -4
  40. package/src/bmm-skills/4-implementation/wizz-checkpoint-preview/step-05-wrapup.md +1 -1
  41. package/src/bmm-skills/4-implementation/wizz-code-review/SKILL.md +3 -4
  42. package/src/bmm-skills/4-implementation/wizz-code-review/customize.toml +3 -8
  43. package/src/bmm-skills/4-implementation/wizz-code-review/review-prompts/blind-hunter.md +20 -0
  44. package/src/bmm-skills/4-implementation/wizz-code-review/steps/step-04-present.md +1 -1
  45. package/src/bmm-skills/4-implementation/wizz-correct-course/SKILL.md +4 -5
  46. package/src/bmm-skills/4-implementation/wizz-create-story/SKILL.md +4 -5
  47. package/src/bmm-skills/4-implementation/wizz-dev-story/SKILL.md +4 -5
  48. package/src/bmm-skills/4-implementation/wizz-investigate/SKILL.md +1 -1
  49. package/src/bmm-skills/4-implementation/wizz-qa-generate-e2e-tests/SKILL.md +4 -5
  50. package/src/bmm-skills/4-implementation/wizz-quick-dev/SKILL.md +4 -5
  51. package/src/bmm-skills/4-implementation/wizz-quick-dev/customize.toml +10 -22
  52. package/src/bmm-skills/4-implementation/wizz-quick-dev/review-prompts/blind-hunter.md +20 -0
  53. package/src/bmm-skills/4-implementation/wizz-quick-dev/step-05-present.md +1 -1
  54. package/src/bmm-skills/4-implementation/wizz-quick-dev/step-oneshot.md +1 -1
  55. package/src/bmm-skills/4-implementation/wizz-retrospective/SKILL.md +1 -2
  56. package/src/bmm-skills/4-implementation/wizz-sprint-planning/SKILL.md +1 -1
  57. package/src/bmm-skills/4-implementation/wizz-sprint-status/SKILL.md +5 -6
  58. package/src/core-skills/_shared/handoff-protocol.md +9 -0
  59. package/src/core-skills/wizz-advanced-elicitation/SKILL.md +2 -2
  60. package/src/core-skills/wizz-brainstorming/SKILL.md +6 -6
  61. package/src/core-skills/wizz-brainstorming/references/converge.md +1 -1
  62. package/src/core-skills/wizz-brainstorming/references/finalize.md +1 -1
  63. package/src/core-skills/wizz-brainstorming/references/headless.md +3 -3
  64. package/src/core-skills/wizz-brainstorming/references/mode-autonomous.md +1 -1
  65. package/src/core-skills/wizz-customize/SKILL.md +13 -10
  66. package/src/core-skills/wizz-forge-idea/SKILL.md +6 -6
  67. package/src/core-skills/wizz-forge-idea/scripts/__pycache__/resolve_personas.cpython-314.pyc +0 -0
  68. package/src/core-skills/wizz-forge-idea/scripts/resolve_personas.py +17 -1
  69. package/src/core-skills/wizz-party-mode/SKILL.md +3 -3
  70. package/src/core-skills/wizz-party-mode/references/create-party.md +1 -1
  71. package/src/core-skills/wizz-party-mode/references/party-memory.md +2 -2
  72. package/src/core-skills/wizz-party-mode/scripts/__pycache__/resolve_party.cpython-314.pyc +0 -0
  73. package/src/core-skills/wizz-party-mode/scripts/resolve_party.py +17 -1
  74. package/src/core-skills/wizz-review-adversarial-general/SKILL.md +1 -1
  75. package/src/core-skills/wizz-spec/SKILL.md +5 -5
  76. package/src/modules/lowticket/README.md +6 -6
  77. package/src/modules/lowticket/module.yaml +4 -1
  78. package/src/modules/lowticket/skills/{lowticket-funil → wizz-lowticket-funil}/SKILL.md +4 -4
  79. package/src/modules/lowticket/skills/{lowticket-funil → wizz-lowticket-funil}/references/copy-das-paginas.md +1 -1
  80. package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/SKILL.md +1 -1
  81. package/src/modules/lowticket/skills/{lowticket-minerador → wizz-lowticket-minerador}/SKILL.md +3 -3
  82. package/src/modules/lowticket/skills/{lowticket-minerador → wizz-lowticket-minerador}/references/rubrica.md +1 -1
  83. package/src/modules/lowticket/skills/{lowticket-pagina → wizz-lowticket-pagina}/SKILL.md +4 -4
  84. package/src/modules/lowticket/skills/{lowticket-trafego → wizz-lowticket-trafego}/SKILL.md +3 -3
  85. package/src/modules/lowticket/skills/{lowticket-trafego → wizz-lowticket-trafego}/references/reguas.md +1 -1
  86. package/src/modules/wizz/_shared/communication-rules.md +1 -1
  87. package/src/modules/wizz/_shared/despacho-barato.md +9 -0
  88. package/src/modules/wizz/_shared/token-economy.md +7 -0
  89. package/src/modules/wizz/agents/wizz-ads/SKILL.md +1 -1
  90. package/src/modules/wizz/agents/wizz-ads/customize.toml +1 -2
  91. package/src/modules/wizz/agents/wizz-copy/SKILL.md +1 -1
  92. package/src/modules/wizz/agents/wizz-copy/customize.toml +1 -2
  93. package/src/modules/wizz/agents/wizz-designer/SKILL.md +1 -1
  94. package/src/modules/wizz/agents/wizz-designer/customize.toml +1 -2
  95. package/src/modules/wizz/agents/wizz-growth/SKILL.md +1 -1
  96. package/src/modules/wizz/agents/wizz-growth/customize.toml +1 -2
  97. package/src/modules/wizz/agents/wizz-maestro/SKILL.md +5 -5
  98. package/src/modules/wizz/agents/wizz-maestro/customize.toml +4 -8
  99. package/src/modules/wizz/agents/wizz-memoria/SKILL.md +1 -1
  100. package/src/modules/wizz/agents/wizz-memoria/customize.toml +1 -2
  101. package/src/modules/wizz/agents/wizz-qa/SKILL.md +1 -1
  102. package/src/modules/wizz/agents/wizz-qa/customize.toml +1 -2
  103. package/src/modules/wizz/agents/wizz-seo/SKILL.md +1 -1
  104. package/src/modules/wizz/agents/wizz-seo/customize.toml +1 -2
  105. package/src/modules/wizz/agents/wizz-social/SKILL.md +1 -1
  106. package/src/modules/wizz/agents/wizz-social/customize.toml +1 -2
  107. package/src/modules/wizz/module.yaml +3 -0
  108. package/src/modules/wizz/overrides/wizz-agent-analyst.toml +1 -2
  109. package/src/modules/wizz/overrides/wizz-agent-architect.toml +1 -2
  110. package/src/modules/wizz/overrides/wizz-agent-dev.toml +1 -2
  111. package/src/modules/wizz/overrides/wizz-agent-pm.toml +1 -2
  112. package/src/modules/wizz/overrides/wizz-agent-tech-writer.toml +1 -2
  113. package/src/modules/wizz/overrides/wizz-agent-ux-designer.toml +1 -2
  114. package/src/modules/wizz/subagents/codex/wizz-exec-haiku.toml +2 -0
  115. package/src/modules/wizz/subagents/codex/wizz-exec-opus.toml +2 -0
  116. package/src/modules/wizz/subagents/codex/wizz-exec-review.toml +2 -0
  117. package/src/modules/wizz/subagents/codex/wizz-exec-sonnet.toml +2 -0
  118. package/src/modules/wizz/subagents/gemini/wizz-exec-haiku.md +4 -1
  119. package/src/modules/wizz/subagents/gemini/wizz-exec-opus.md +4 -1
  120. package/src/modules/wizz/subagents/gemini/wizz-exec-review.md +4 -1
  121. package/src/modules/wizz/subagents/gemini/wizz-exec-sonnet.md +4 -1
  122. package/src/modules/wizz/subagents/opencode/wizz-exec-haiku.md +4 -1
  123. package/src/modules/wizz/subagents/opencode/wizz-exec-opus.md +4 -1
  124. package/src/modules/wizz/subagents/opencode/wizz-exec-review.md +4 -1
  125. package/src/modules/wizz/subagents/opencode/wizz-exec-sonnet.md +4 -1
  126. package/src/modules/wizz/subagents/spec.yaml +148 -0
  127. package/src/modules/wizz/subagents/wizz-exec-haiku.md +4 -1
  128. package/src/modules/wizz/subagents/wizz-exec-opus.md +4 -1
  129. package/src/modules/wizz/subagents/wizz-exec-review.md +4 -1
  130. package/src/modules/wizz/subagents/wizz-exec-sonnet.md +4 -1
  131. package/src/scripts/__pycache__/resolve_customization.cpython-314.pyc +0 -0
  132. package/src/scripts/memlog.js +368 -0
  133. package/src/scripts/resolve_customization.py +124 -15
  134. package/src/skills-lib/_shared/complexity-signal.md +14 -0
  135. package/src/skills-lib/wizz-canvas-design/canvas-fonts/InstrumentSerif-OFL.txt +93 -0
  136. package/src/skills-lib/wizz-huashu-design/references/sfx-library.md +1 -1
  137. package/src/skills-lib/wizz-huashu-design/scripts/add-music.sh +1 -1
  138. package/src/skills-lib/wizz-huashu-design/scripts/mix-voiceover.sh +1 -1
  139. package/src/skills-lib/wizz-impeccable/LICENSE.txt +202 -0
  140. package/src/skills-lib/wizz-offer-forge/SKILL.md +1 -1
  141. package/src/skills-lib/wizz-react-components/LICENSE.txt +202 -0
  142. package/src/skills-lib/wizz-router/SKILL.md +2 -2
  143. package/src/skills-lib/wizz-supabase-postgres-best-practices/LICENSE +21 -0
  144. package/src/skills-lib/wizz-taste-skill/SKILL.md +1 -1
  145. package/src/skills-lib/wizz-tracking-audit/SKILL.md +1 -1
  146. package/tools/fetch-assets.mjs +70 -38
  147. package/tools/hooks/README.md +22 -0
  148. package/tools/hooks/rtk-rewrite.sh +280 -0
  149. package/tools/hooks/security-defensive-context.js +70 -0
  150. package/tools/hooks/session-rules.js +368 -0
  151. package/tools/hooks/wizz-decision-trace.js +389 -0
  152. package/tools/hooks/wizz-router-enforce.js +258 -0
  153. package/tools/installer/banner.js +1 -1
  154. package/tools/installer/commands/doctor.js +124 -0
  155. package/tools/installer/commands/fetch-assets.js +7 -8
  156. package/tools/installer/commands/install.js +1 -1
  157. package/tools/installer/commands/resolve.js +95 -0
  158. package/tools/installer/core/doctor.js +648 -0
  159. package/tools/installer/core/hash-cache.js +156 -0
  160. package/tools/installer/core/help-catalog.js +4 -1
  161. package/tools/installer/core/hooks-settings.js +178 -0
  162. package/tools/installer/core/installer.js +297 -15
  163. package/tools/installer/core/legacy-warnings.js +0 -4
  164. package/tools/installer/core/manifest-generator.js +121 -43
  165. package/tools/installer/core/manifest.js +36 -32
  166. package/tools/installer/core/module-config-writer.js +4 -1
  167. package/tools/installer/core/python-check.js +60 -63
  168. package/tools/installer/core/quick-update.js +76 -43
  169. package/tools/installer/core/resolved-config.js +168 -0
  170. package/tools/installer/core/resolved-customizations.js +736 -0
  171. package/tools/installer/core/resolved-includes.js +262 -0
  172. package/tools/installer/core/resolved-schema.js +148 -0
  173. package/tools/installer/core/user-file-preservation.js +40 -8
  174. package/tools/installer/core/wizz-dir.js +117 -0
  175. package/tools/installer/core/yaml-cache.js +105 -0
  176. package/tools/installer/fs-native.js +97 -6
  177. package/tools/installer/ide/_config-driven.js +12 -75
  178. package/tools/installer/ide/platform-codes.js +111 -16
  179. package/tools/installer/ide/platform-codes.yaml +45 -100
  180. package/tools/installer/ide/shared/path-utils.js +6 -208
  181. package/tools/installer/install-messages.yaml +4 -14
  182. package/tools/installer/modules/channel-plan.js +15 -2
  183. package/tools/installer/modules/config-collector.js +762 -0
  184. package/tools/installer/modules/config-values.js +352 -0
  185. package/tools/installer/modules/custom-module-manager.js +161 -28
  186. package/tools/installer/modules/env-vars.js +119 -0
  187. package/tools/installer/modules/external-manager.js +133 -60
  188. package/tools/installer/modules/git-cache-utils.js +125 -0
  189. package/tools/installer/modules/module-catalog.js +565 -0
  190. package/tools/installer/modules/module-installer.js +618 -0
  191. package/tools/installer/modules/module-interface.js +86 -0
  192. package/tools/installer/modules/official-modules.js +98 -2172
  193. package/tools/installer/modules/pin-spec.js +125 -0
  194. package/tools/installer/modules/plugin-resolver.js +4 -0
  195. package/tools/installer/modules/skills-lib.js +3 -6
  196. package/tools/installer/prompts.js +0 -3
  197. package/tools/installer/ui.js +89 -54
  198. package/tools/installer/wizz-cli.js +1 -1
  199. package/tools/lib/frontmatter.js +139 -0
  200. package/tools/lib/sync-targets.mjs +49 -0
  201. package/tools/lib/walk.js +93 -0
  202. package/wizz-modules.yaml +9 -0
  203. package/src/scripts/__pycache__/memlog.cpython-313.pyc +0 -0
  204. package/src/scripts/memlog.py +0 -233
  205. package/src/scripts/tests/__pycache__/test_memlog.cpython-313-pytest-9.1.1.pyc +0 -0
  206. package/src/scripts/tests/__pycache__/test_resolve_customization.cpython-313-pytest-9.1.1.pyc +0 -0
  207. package/src/scripts/tests/test_memlog.py +0 -306
  208. package/src/skills-lib/wizz-huashu-design/assets/showcases/INDEX.md +0 -115
  209. package/src/skills-lib/wizz-huashu-design/assets/showcases/cover/cover-build.html +0 -235
  210. package/src/skills-lib/wizz-huashu-design/assets/showcases/cover/cover-build.png +0 -0
  211. package/src/skills-lib/wizz-huashu-design/assets/showcases/cover/cover-pentagram.html +0 -229
  212. package/src/skills-lib/wizz-huashu-design/assets/showcases/cover/cover-pentagram.png +0 -0
  213. package/src/skills-lib/wizz-huashu-design/assets/showcases/cover/cover-takram.html +0 -288
  214. package/src/skills-lib/wizz-huashu-design/assets/showcases/cover/cover-takram.png +0 -0
  215. package/src/skills-lib/wizz-huashu-design/assets/showcases/infographic/infographic-build.html +0 -503
  216. package/src/skills-lib/wizz-huashu-design/assets/showcases/infographic/infographic-build.png +0 -0
  217. package/src/skills-lib/wizz-huashu-design/assets/showcases/infographic/infographic-pentagram.html +0 -600
  218. package/src/skills-lib/wizz-huashu-design/assets/showcases/infographic/infographic-pentagram.png +0 -0
  219. package/src/skills-lib/wizz-huashu-design/assets/showcases/infographic/infographic-takram.html +0 -670
  220. package/src/skills-lib/wizz-huashu-design/assets/showcases/infographic/infographic-takram.png +0 -0
  221. package/src/skills-lib/wizz-huashu-design/assets/showcases/ppt/ppt-build.html +0 -382
  222. package/src/skills-lib/wizz-huashu-design/assets/showcases/ppt/ppt-build.png +0 -0
  223. package/src/skills-lib/wizz-huashu-design/assets/showcases/ppt/ppt-pentagram.html +0 -536
  224. package/src/skills-lib/wizz-huashu-design/assets/showcases/ppt/ppt-pentagram.png +0 -0
  225. package/src/skills-lib/wizz-huashu-design/assets/showcases/ppt/ppt-takram.html +0 -497
  226. package/src/skills-lib/wizz-huashu-design/assets/showcases/ppt/ppt-takram.png +0 -0
  227. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-nav/ainav-build.html +0 -385
  228. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-nav/ainav-build.png +0 -0
  229. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-nav/ainav-pentagram.html +0 -422
  230. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-nav/ainav-pentagram.png +0 -0
  231. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-nav/ainav-takram.html +0 -499
  232. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-nav/ainav-takram.png +0 -0
  233. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-writing/aiwriting-build.html +0 -562
  234. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-writing/aiwriting-build.png +0 -0
  235. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-writing/aiwriting-pentagram.html +0 -548
  236. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-writing/aiwriting-pentagram.png +0 -0
  237. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-writing/aiwriting-takram.html +0 -696
  238. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-ai-writing/aiwriting-takram.png +0 -0
  239. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-devdocs/devdocs-build.html +0 -372
  240. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-devdocs/devdocs-build.png +0 -0
  241. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-devdocs/devdocs-pentagram.html +0 -460
  242. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-devdocs/devdocs-pentagram.png +0 -0
  243. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-devdocs/devdocs-takram.html +0 -494
  244. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-devdocs/devdocs-takram.png +0 -0
  245. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-homepage/homepage-build.html +0 -367
  246. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-homepage/homepage-build.png +0 -0
  247. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-homepage/homepage-pentagram.html +0 -368
  248. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-homepage/homepage-pentagram.png +0 -0
  249. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-homepage/homepage-takram.html +0 -459
  250. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-homepage/homepage-takram.png +0 -0
  251. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-saas/saas-build.html +0 -493
  252. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-saas/saas-build.png +0 -0
  253. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-saas/saas-pentagram.html +0 -556
  254. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-saas/saas-pentagram.png +0 -0
  255. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-saas/saas-takram.html +0 -604
  256. package/src/skills-lib/wizz-huashu-design/assets/showcases/website-saas/saas-takram.png +0 -0
  257. package/tools/installer/file-ops.js +0 -204
  258. package/tools/installer/ide/shared/skill-manifest.js +0 -57
  259. package/tools/installer/yaml-format.js +0 -245
  260. package/web-bundles/README.md +0 -46
  261. package/web-bundles/brainstorming-coach/INSTRUCTIONS.md +0 -86
  262. package/web-bundles/brainstorming-coach/SKILL.md +0 -83
  263. package/web-bundles/brainstorming-coach/brain-methods.csv +0 -62
  264. package/web-bundles/bundles.json +0 -139
  265. package/web-bundles/market-and-industry-research/INSTRUCTIONS.md +0 -88
  266. package/web-bundles/market-and-industry-research/SKILL.md +0 -59
  267. package/web-bundles/prd-coach/INSTRUCTIONS.md +0 -86
  268. package/web-bundles/prd-coach/SKILL.md +0 -101
  269. package/web-bundles/prd-coach/prd-template.md +0 -165
  270. package/web-bundles/prd-coach/prd-validation-checklist.md +0 -135
  271. package/web-bundles/prfaq-coach/INSTRUCTIONS.md +0 -86
  272. package/web-bundles/prfaq-coach/SKILL.md +0 -139
  273. package/web-bundles/product-brief-coach/INSTRUCTIONS.md +0 -86
  274. package/web-bundles/product-brief-coach/SKILL.md +0 -113
  275. package/web-bundles/ux-coach/INSTRUCTIONS.md +0 -92
  276. package/web-bundles/ux-coach/SKILL.md +0 -187
  277. package/web-bundles/ux-coach/ux-validation.md +0 -100
  278. /package/src/modules/lowticket/skills/{lowticket-funil → wizz-lowticket-funil}/references/mapa-do-funil.md +0 -0
  279. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/CATALOGO.md +0 -0
  280. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/01-principios.md +0 -0
  281. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/02-diagnostico-funil.md +0 -0
  282. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/03-campanha-bidcap.md +0 -0
  283. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/04-criativos.md +0 -0
  284. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/04a-criativos-ia.md +0 -0
  285. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/04b-criativos-formatos.md +0 -0
  286. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/05-oferta.md +0 -0
  287. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/06-pagina-vendas.md +0 -0
  288. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/06a-instagram.md +0 -0
  289. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/06b-player-vsl.md +0 -0
  290. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/07-funil-upsell.md +0 -0
  291. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/07a-copy-humanizacao.md +0 -0
  292. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/08-pesquisa-publico.md +0 -0
  293. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/09-especialista-coproducao.md +0 -0
  294. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/10-levantar-caixa.md +0 -0
  295. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/11-checklist-roi.md +0 -0
  296. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/12-mineracao-ofertas.md +0 -0
  297. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/12a-mineracao-veredito.md +0 -0
  298. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/12b-fabrica-de-ofertas.md +0 -0
  299. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/12c-anatomia-low-ticket.md +0 -0
  300. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/13-benchmarks-vsl.md +0 -0
  301. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/14-vocabulario.md +0 -0
  302. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/15-como-estender.md +0 -0
  303. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/17-rastreamento.md +0 -0
  304. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/18-copy-desejo-oferta.md +0 -0
  305. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/INDEX.md +0 -0
  306. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/guardrails.md +0 -0
  307. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/knowledge/pontos-em-aberto.md +0 -0
  308. /package/src/modules/lowticket/skills/{lowticket-metodologia → wizz-lowticket-metodologia}/references/swipe-file.md +0 -0
  309. /package/src/modules/lowticket/skills/{lowticket-pagina → wizz-lowticket-pagina}/references/metas-e-medicao.md +0 -0
  310. /package/src/modules/lowticket/skills/{lowticket-pagina → wizz-lowticket-pagina}/references/padroes-de-codigo.md +0 -0
  311. /package/src/modules/lowticket/skills/{lowticket-trafego → wizz-lowticket-trafego}/references/formato-do-diagnostico.md +0 -0
@@ -26,23 +26,23 @@ When the stack is open — greenfield, or a small/beginner project that could si
26
26
 
27
27
  ## Read the input to know the job
28
28
 
29
- The input itself tells you what kind of job this is — read it rather than quizzing the user about it. A spec package (`SPEC.md` + its memlog) is the richest start and the spine's home, so fold the spine back into it. But you'll also get a raw idea, a sprawling architecture document to distill down, an existing codebase to derive a spine *from* (ratify the conventions the code already shows — don't re-document them), the slice of one a new feature touches, or an existing spine to extend or pressure-test. Prefer a `.memlog.md` over re-reading the source it came from. Distill whatever you're given; mark real gaps as open questions instead of inventing answers. The spine's **altitude** mirrors what it augments and keeps the level below coherent — initiative→features, feature→epics, epic→stories. Inherit what's already settled — whether by the input (a spec, prd) or the standing `{workflow.persistent_facts}` — silently; don't re-decide or re-ask it. If the input is too thin to build on, suggest `wizz-spec` first; else capture the missing answers into a shared spec workspace through the same `memlog.py`, so `wizz-spec` can later derive `SPEC.md` without drift.
29
+ The input itself tells you what kind of job this is — read it rather than quizzing the user about it. A spec package (`SPEC.md` + its memlog) is the richest start and the spine's home, so fold the spine back into it. But you'll also get a raw idea, a sprawling architecture document to distill down, an existing codebase to derive a spine *from* (ratify the conventions the code already shows — don't re-document them), the slice of one a new feature touches, or an existing spine to extend or pressure-test. Prefer a `.memlog.md` over re-reading the source it came from. Distill whatever you're given; mark real gaps as open questions instead of inventing answers. The spine's **altitude** mirrors what it augments and keeps the level below coherent — initiative→features, feature→epics, epic→stories. Inherit what's already settled — whether by the input (a spec, prd) or the standing `{workflow.persistent_facts}` — silently; don't re-decide or re-ask it. If the input is too thin to build on, suggest `wizz-spec` first; else capture the missing answers into a shared spec workspace through the same `memlog.js`, so `wizz-spec` can later derive `SPEC.md` without drift.
30
30
 
31
31
  **Inheriting a parent spine** (e.g. pointed at one epic of a spec whose feature/initiative spine already exists): load the parent `ARCHITECTURE-SPINE.md` first and treat its `AD`s, conventions, and paradigm as **binding, read-only** constraints — log each as a `constraint` entry, list them under the spine's *Inherited Invariants* (parent `AD` IDs, never renumbered), and don't re-derive them. Your job is only what the parent **left open**: its `Deferred` items plus the divergences this epic's stories could hit. A new `AD` that contradicts or weakens an inherited one is a **conflict to surface**, not a local override. An epic spine fixes the invariants the epic's stories must share — it does **not** expand per-story detail.
32
32
 
33
33
  ## How a run works
34
34
 
35
- The **memlog** (`.memlog.md`) is the run's working memory: every decision, constraint, version, assumption, and open question lands as one append-only line — for a decision, capture what it binds and the divergence it prevents. It is the shared canonical memlog (the same `{project-root}/_wizz/scripts/memlog.py` wizz-spec writes through), so it carries no lifecycle status — terminal moments are logged as `event` entries, not a frontmatter flag. The spine is **distilled from the memlog at the end**, not written as you go. Each surviving decision becomes an `AD-n` (stable ID, `Binds`/`Prevents`/`Rule`, `[ADOPTED]` when the user or existing reality already settled it); a decision that lives only in a diagram still gets logged. Resume a prior run by reloading its memlog.
35
+ The **memlog** (`.memlog.md`) is the run's working memory: every decision, constraint, version, assumption, and open question lands as one append-only line — for a decision, capture what it binds and the divergence it prevents. It is the shared canonical memlog (the same `{project-root}/_wizz/scripts/memlog.js` wizz-spec writes through), so it carries no lifecycle status — terminal moments are logged as `event` entries, not a frontmatter flag. The spine is **distilled from the memlog at the end**, not written as you go. Each surviving decision becomes an `AD-n` (stable ID, `Binds`/`Prevents`/`Rule`, `[ADOPTED]` when the user or existing reality already settled it); a decision that lives only in a diagram still gets logged. Resume a prior run by reloading its memlog.
36
36
 
37
37
  Writes go through the shared script (don't read the file back except on resume):
38
38
 
39
- - `python3 {project-root}/_wizz/scripts/memlog.py init --workspace {doc_workspace} --field scope="…" --field purpose="…" --field altitude="…"`
40
- - `python3 {project-root}/_wizz/scripts/memlog.py append --workspace {doc_workspace} --type <decision|constraint|version|assumption|question|direction|event> --text "…"`
39
+ - `node {project-root}/_wizz/scripts/memlog.js init --workspace {doc_workspace} --field scope="…" --field purpose="…" --field altitude="…"`
40
+ - `node {project-root}/_wizz/scripts/memlog.js append --workspace {doc_workspace} --type <decision|constraint|version|assumption|question|direction|event> --text "…"`
41
41
 
42
42
  ## Resolution rules
43
43
 
44
44
  - Bare paths and `{skill-root}` (e.g. `references/headless.md`) resolve from this skill's installed directory.
45
- - `{project-root}` → the project working directory; `{skill-name}` → the skill directory's basename.
45
+ - `{project-root}` → the project working directory.
46
46
  - `{workflow.<name>}` → a merged `customize.toml` field; `{doc_workspace}` → the bound run folder.
47
47
  - Forward slashes only. Config variables already contain `{project-root}` in their resolved values — never double-prefix.
48
48
 
@@ -50,14 +50,14 @@ Writes go through the shared script (don't read the file back except on resume):
50
50
 
51
51
  **Forwarded activation:** if a caller (e.g. the `wizz-create-architecture` shim) invoked you with a stated intent and pre-resolved customization fields, honor them verbatim — skip your own intent inference, use the supplied values for those named fields, and resolve only the remaining fields from your own `customize.toml`.
52
52
 
53
- 1. Resolve customization: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow` (on failure read `{skill-root}/customize.toml`, use defaults). Run `{workflow.activation_steps_prepend}`, then `{workflow.activation_steps_append}`. Hold `{workflow.persistent_facts}` as standing context — the default loads `project-context.md`, load-bearing for brownfield — and consult `{workflow.external_sources}` on demand.
53
+ 1. Resolve customization: Read `{project-root}/_wizz/_resolved/wizz-architecture.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-architecture` from the project root and read the snapshot again (on failure read `{skill-root}/customize.toml`, use defaults). Run `{workflow.activation_steps_prepend}`, then `{workflow.activation_steps_append}`. Hold `{workflow.persistent_facts}` as standing context — the default loads `project-context.md`, load-bearing for brownfield — and consult `{workflow.external_sources}` on demand.
54
54
  2. Load `{project-root}/_wizz/bmm/config.yaml` (+ `config.user.yaml`) for `{user_name}`, `{communication_language}`, `{document_output_language}`, `{planning_artifacts}`, `{project_name}`, `{date}`; missing keys take neutral defaults, never block.
55
55
  3. Headless (no interactive user) → follow `references/headless.md` for the whole run. Otherwise greet `{user_name}` in `{communication_language}`. Detect the intent from the conversation and input — **create** (the default), **update** an existing spine, or **validate** one (see those sections). If the real ask is requirements / UX / a capability contract / epic breakdown / an agent, invoke the `wizz-prd`, `wizz-ux`, `wizz-spec`, `wizz-create-epics-and-stories`, or `wizz-workflow-builder` (if the Wizz Builder module is installed) skill instead.
56
56
  4. If a run folder for this target already exists under `{workflow.spine_output_path}`, offer to resume from its memlog rather than restart.
57
57
  5. Interactive create: offer the working mode in `{communication_language}` — **Coaching path** (default) or **Fast path** (see *How you work*) — before any drafting; default to Coaching unless the user asks for speed.
58
58
  6. **Mandatory, both paths, before drafting:** ask whether the spine is the only deliverable — and if not, draw out the *purpose and audience* rather than a document type. "An architecture doc" balloons into bloat; what they actually need might be a one-detail explainer for a single team or a non-technical vision piece for a board. Purpose right-sizes the artifact and may call for extra elicitation up front, not just a finale add-on.
59
59
 
60
- For a new spine, bind `{doc_workspace}` to `{workflow.spine_output_path}/{workflow.run_folder_pattern}/`, seed `ARCHITECTURE-SPINE.md` from `{workflow.spine_template}`, run `memlog.py init`, and tell the user the path. **At epic altitude, scope the folder to the epic** (set `run_folder_pattern` per `customize.toml`) so per-epic runs don't collide.
60
+ For a new spine, bind `{doc_workspace}` to `{workflow.spine_output_path}/{workflow.run_folder_pattern}/`, seed `ARCHITECTURE-SPINE.md` from `{workflow.spine_template}`, run `memlog.js init`, and tell the user the path. **At epic altitude, scope the folder to the epic** (set `run_folder_pattern` per `customize.toml`) so per-epic runs don't collide.
61
61
 
62
62
  ## Reviewer Gate
63
63
 
@@ -71,9 +71,9 @@ Walk the sequence; reviewer fixes land before polish.
71
71
  2. **Reconcile inputs.** A subagent per load-bearing input checks it against the spine and returns what didn't land — especially a quiet requirement (a tone, a constraint) the `AD` structure dropped. Before the gate.
72
72
  3. **Reviewer pass.** Run the Reviewer Gate (`references/reviewer-gate.md`). Resolve before polish.
73
73
  4. **Triage.** Open questions and `[ASSUMPTION]` tags: blockers (unsafe for what's next) resolved one at a time; the rest deferred with a revisit condition in the memlog.
74
- 5. **Renderings & polish.** The spine is the build deliverable; with it and the memlog now in place, produce any *additional* human-facing artifact the user needs, scoped to the purpose and audience drawn out up front. The up-front question already flagged whether one's needed; if it wasn't, still offer one here, seeding concrete options: an interactive HTML+SVG deck to walk a team through the architecture and drive discussion, a fuller HTML/md solution design, a C4 set, or a view of how the work splits across teams/epics. Build only what they pick, right-sized to that purpose; apply `{workflow.doc_standards}` polish to that prose only, never to the spine.
74
+ 5. **Renderings & polish.** The spine is the build deliverable; with it and the memlog now in place, produce any *additional* human-facing artifact the user needs, scoped to the purpose and audience drawn out up front. The up-front question already flagged whether one's needed; if it wasn't, still offer one here, seeding concrete options: an interactive HTML+SVG deck to walk a team through the architecture and drive discussion, a fuller HTML/md solution design, a C4 set, a view of how the work splits across teams/epics, or a validated diagram via the optional external `archify` skill (registry `areas.architect.clis`), which follows its own validate then deliver then visual-check protocol and only reports success after reading the command's JSON output. Build only what they pick, right-sized to that purpose; apply `{workflow.doc_standards}` polish to that prose only, never to the spine.
75
75
  6. **External handoffs.** Run `{workflow.external_handoffs}`; surface returned URLs/IDs. Offer to invoke the `wizz-spec` skill to adopt the spine as a companion, keeping `AD` IDs stable so downstream can cite them.
76
- 7. **Close.** Set the spine's own frontmatter `status: final`, `updated: {date}`; log a `memlog.py append --type event --text "spine finalized"` (the memlog has no status field). Share paths. Next, **lead with `wizz-spec`** — recommend adopting/refreshing the spine as a spec companion (always the top recommendation when a spec was an input, and a useful next step even when it wasn't), then `wizz-create-epics-and-stories` or — epic altitude — `wizz-create-story`; or invoke `wizz-help` to route.
76
+ 7. **Close.** Set the spine's own frontmatter `status: final`, `updated: {date}`; log a `memlog.js append --type event --text "spine finalized"` (the memlog has no status field). Share paths. Next, **lead with `wizz-spec`** — recommend adopting/refreshing the spine as a spec companion (always the top recommendation when a spec was an input, and a useful next step even when it wasn't), then `wizz-create-epics-and-stories` or — epic altitude — `wizz-create-story`; or invoke `wizz-help` to route.
77
77
  8. Run `{workflow.on_complete}`.
78
78
 
79
79
  ## Update
@@ -2,7 +2,7 @@
2
2
 
3
3
  No interactive user: infer everything, ask nothing, but never invent — record inferences as `assumptions[]` and gaps that need a human as `open_questions[]`. Detect headless from a `headless: true` flag, a non-interactive / no-TTY invocation, an activation hook that declares it, or a first message that pre-supplies all inputs and asks for an artifact path back; when ambiguous, default to interactive.
4
4
 
5
- Drive the run from the payload in the first message — `intent`, `altitude`, `purpose`, the driving input (spec package / PRD / raw intent / brownfield path), a parent spine path at lower altitude, and `doc_workspace` if a specific folder is required. Infer anything absent from the inputs or workspace; don't invent stack, constraints, or scope to fill a gap. You still verify named tech on the web (you can't ask, but you can check) and still drive every write through the shared `{project-root}/_wizz/scripts/memlog.py`. Run the full Reviewer Gate (`references/reviewer-gate.md`) non-interactively: `scripts/lint_spine.py` plus **every `{workflow.finalize_reviewers}` lens as a parallel subagent** (and any ad-hoc lens the spine's criticality warrants). Headless skips only the human picking from the menu — never the reviewers themselves; apply the clear fixes and record anything unresolved in `open_questions[]`. For a true authority collision, list it in `conflicts_with_prior_decisions[]`. For the Validate intent, always write the report to `{doc_workspace}` and add `"offer_to_update": true`. If intent stays ambiguous after inference, halt blocked.
5
+ Drive the run from the payload in the first message — `intent`, `altitude`, `purpose`, the driving input (spec package / PRD / raw intent / brownfield path), a parent spine path at lower altitude, and `doc_workspace` if a specific folder is required. Infer anything absent from the inputs or workspace; don't invent stack, constraints, or scope to fill a gap. You still verify named tech on the web (you can't ask, but you can check) and still drive every write through the shared `{project-root}/_wizz/scripts/memlog.js`. Run the full Reviewer Gate (`references/reviewer-gate.md`) non-interactively: `scripts/lint_spine.py` plus **every `{workflow.finalize_reviewers}` lens as a parallel subagent** (and any ad-hoc lens the spine's criticality warrants). Headless skips only the human picking from the menu — never the reviewers themselves; apply the clear fixes and record anything unresolved in `open_questions[]`. For a true authority collision, list it in `conflicts_with_prior_decisions[]`. For the Validate intent, always write the report to `{doc_workspace}` and add `"offer_to_update": true`. If intent stays ambiguous after inference, halt blocked.
6
6
 
7
7
  End with JSON only, omitting keys for artifacts not produced — the shape below is the fully-produced (`complete`) case; a `blocked` run produces no spine, so it omits `spine`, `memlog`, and `companions` entirely (see the note under the block):
8
8
 
@@ -14,7 +14,6 @@ description: 'Validate PRD, UX, Architecture and Epics specs are complete. Use w
14
14
  - Bare paths (e.g. `steps/step-01-document-discovery.md`) resolve from the skill root.
15
15
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
16
16
  - `{project-root}`-prefixed paths resolve from the project working directory.
17
- - `{skill-name}` resolves to the skill directory's basename.
18
17
 
19
18
  ## WORKFLOW ARCHITECTURE
20
19
 
@@ -49,13 +48,13 @@ description: 'Validate PRD, UX, Architecture and Epics specs are complete. Use w
49
48
 
50
49
  ### Step 1: Resolve the Workflow Block
51
50
 
52
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
51
+ Run: read `{project-root}/_wizz/_resolved/wizz-check-implementation-readiness.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-check-implementation-readiness` from the project root and read the snapshot again
53
52
 
54
53
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
55
54
 
56
55
  1. `{skill-root}/customize.toml` — defaults
57
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
58
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
56
+ 2. `{project-root}/_wizz/custom/wizz-check-implementation-readiness.toml` — team overrides
57
+ 3. `{project-root}/_wizz/custom/wizz-check-implementation-readiness.user.toml` — personal overrides
59
58
 
60
59
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
61
60
 
@@ -127,6 +127,6 @@ Implementation Readiness complete. Invoke the `wizz-help` skill.
127
127
 
128
128
  ## On Complete
129
129
 
130
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete`
130
+ Run: read `workflow.on_complete` from the `{project-root}/_wizz/_resolved/wizz-check-implementation-readiness.json` snapshot loaded in step 1
131
131
 
132
132
  If the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.
@@ -9,7 +9,7 @@ This skill was consolidated into `wizz-architecture`. It is retained as a thin c
9
9
 
10
10
  ## On Activation
11
11
 
12
- 1. Resolve customization: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`. This picks up any `{project-root}/_wizz/custom/wizz-create-architecture.toml` and `wizz-create-architecture.user.toml` overrides for the legacy fields (`activation_steps_prepend`, `activation_steps_append`, `persistent_facts`, `on_complete`).
12
+ 1. Resolve customization: Read `{project-root}/_wizz/_resolved/wizz-create-architecture.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-create-architecture` from the project root and read the snapshot again.
13
13
 
14
14
  2. Load `{project-root}/_wizz/bmm/config.yaml` (and `config.user.yaml` if present) to resolve `{user_name}` and `{communication_language}`.
15
15
 
@@ -14,7 +14,6 @@ description: 'Break requirements into epics and user stories. Use when the user
14
14
  - Bare paths (e.g. `steps/step-01-validate-prerequisites.md`) resolve from the skill root.
15
15
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
16
16
  - `{project-root}`-prefixed paths resolve from the project working directory.
17
- - `{skill-name}` resolves to the skill directory's basename.
18
17
 
19
18
  ## WORKFLOW ARCHITECTURE
20
19
 
@@ -51,13 +50,13 @@ This uses **step-file architecture** for disciplined execution:
51
50
 
52
51
  ### Step 1: Resolve the Workflow Block
53
52
 
54
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
53
+ Run: read `{project-root}/_wizz/_resolved/wizz-create-epics-and-stories.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-create-epics-and-stories` from the project root and read the snapshot again
55
54
 
56
55
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
57
56
 
58
57
  1. `{skill-root}/customize.toml` — defaults
59
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
60
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
58
+ 2. `{project-root}/_wizz/custom/wizz-create-epics-and-stories.toml` — team overrides
59
+ 3. `{project-root}/_wizz/custom/wizz-create-epics-and-stories.user.toml` — personal overrides
61
60
 
62
61
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
63
62
 
@@ -138,6 +138,6 @@ Upon Completion of task output: offer to answer any questions about the Epics an
138
138
 
139
139
  ## On Complete
140
140
 
141
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete`
141
+ Run: read `workflow.on_complete` from the `{project-root}/_wizz/_resolved/wizz-create-epics-and-stories.json` snapshot loaded in step 1
142
142
 
143
143
  If the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.
@@ -14,7 +14,6 @@ description: 'Create project-context.md with AI rules. Use when the user says "g
14
14
  - Bare paths (e.g. `steps/step-01-discover.md`) resolve from the skill root.
15
15
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
16
16
  - `{project-root}`-prefixed paths resolve from the project working directory.
17
- - `{skill-name}` resolves to the skill directory's basename.
18
17
 
19
18
  ## WORKFLOW ARCHITECTURE
20
19
 
@@ -30,13 +29,13 @@ This uses **micro-file architecture** for disciplined execution:
30
29
 
31
30
  ### Step 1: Resolve the Workflow Block
32
31
 
33
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
32
+ Run: read `{project-root}/_wizz/_resolved/wizz-generate-project-context.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-generate-project-context` from the project root and read the snapshot again
34
33
 
35
34
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
36
35
 
37
36
  1. `{skill-root}/customize.toml` — defaults
38
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
39
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
37
+ 2. `{project-root}/_wizz/custom/wizz-generate-project-context.toml` — team overrides
38
+ 3. `{project-root}/_wizz/custom/wizz-generate-project-context.user.toml` — personal overrides
40
39
 
41
40
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
42
41
 
@@ -284,6 +284,6 @@ The project context file serves as the critical "rules of the road" that agents
284
284
 
285
285
  ## On Complete
286
286
 
287
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete`
287
+ Run: read `workflow.on_complete` from the `{project-root}/_wizz/_resolved/wizz-generate-project-context.json` snapshot loaded in step 1
288
288
 
289
289
  If the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.
@@ -14,19 +14,18 @@ You are Amelia, the Senior Software Engineer. You execute approved stories with
14
14
  - Bare paths (e.g. `references/guide.md`) resolve from the skill root.
15
15
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
16
16
  - `{project-root}`-prefixed paths resolve from the project working directory.
17
- - `{skill-name}` resolves to the skill directory's basename.
18
17
 
19
18
  ## On Activation
20
19
 
21
20
  ### Step 1: Resolve the Agent Block
22
21
 
23
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key agent`
22
+ Run: read `{project-root}/_wizz/_resolved/wizz-agent-dev.json` (subtree `agent`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-agent-dev` from the project root and read the snapshot again
24
23
 
25
24
  **If the script fails**, resolve the `agent` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
26
25
 
27
26
  1. `{skill-root}/customize.toml` — defaults
28
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
29
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
27
+ 2. `{project-root}/_wizz/custom/wizz-agent-dev.toml` — team overrides
28
+ 3. `{project-root}/_wizz/custom/wizz-agent-dev.user.toml` — personal overrides
30
29
 
31
30
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
32
31
 
@@ -14,19 +14,18 @@ description: 'LLM-assisted human-in-the-loop review. Make sense of a change, foc
14
14
  - Bare paths (e.g. `step-01-orientation.md`) resolve from the skill root.
15
15
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
16
16
  - `{project-root}`-prefixed paths resolve from the project working directory.
17
- - `{skill-name}` resolves to the skill directory's basename.
18
17
 
19
18
  ## On Activation
20
19
 
21
20
  ### Step 1: Resolve the Workflow Block
22
21
 
23
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
22
+ Run: read `{project-root}/_wizz/_resolved/wizz-checkpoint-preview.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-checkpoint-preview` from the project root and read the snapshot again
24
23
 
25
24
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
26
25
 
27
26
  1. `{skill-root}/customize.toml` — defaults
28
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
29
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
27
+ 2. `{project-root}/_wizz/custom/wizz-checkpoint-preview.toml` — team overrides
28
+ 3. `{project-root}/_wizz/custom/wizz-checkpoint-preview.user.toml` — personal overrides
30
29
 
31
30
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
32
31
 
@@ -25,6 +25,6 @@ HALT — do not proceed until the user makes their choice.
25
25
 
26
26
  ## On Complete
27
27
 
28
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete`
28
+ Run: read `workflow.on_complete` from the `{project-root}/_wizz/_resolved/wizz-checkpoint-preview.json` snapshot loaded in step 1
29
29
 
30
30
  If the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.
@@ -17,19 +17,18 @@ If you need an explicit user instruction to run them, ask once now for the whole
17
17
  - Bare paths (e.g. `checklist.md`) resolve from the skill root.
18
18
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
19
19
  - `{project-root}`-prefixed paths resolve from the project working directory.
20
- - `{skill-name}` resolves to the skill directory's basename.
21
20
 
22
21
  ## On Activation
23
22
 
24
23
  ### Step 1: Resolve the Workflow Block
25
24
 
26
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
25
+ Run: read `{project-root}/_wizz/_resolved/wizz-code-review.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-code-review` from the project root and read the snapshot again
27
26
 
28
27
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
29
28
 
30
29
  1. `{skill-root}/customize.toml` — defaults
31
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
32
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
30
+ 2. `{project-root}/_wizz/custom/wizz-code-review.toml` — team overrides
31
+ 3. `{project-root}/_wizz/custom/wizz-code-review.user.toml` — personal overrides
33
32
 
34
33
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
35
34
 
@@ -53,16 +53,11 @@ name = "Blind Hunter"
53
53
  instruction = """
54
54
  Launch a context-free `wizz-exec-review` subagent with this prompt — pinned to the platform's Forte tier (`opus` in Claude Code), never inheriting the session model. Tell the user the tier and count of this dispatch.
55
55
 
56
- Conduct a review of CONTENT.
57
- Look for what's missing, not only what's wrong.
58
- Find at least ten issues to fix or improve.
59
- Output a Markdown list of findings only — no severity, priority, or ranking.
60
- If the content is empty, stop and say so.
61
- If you have zero findings, re-check and keep thinking; do not stop with an empty list.
56
+ Read `{skill-root}/review-prompts/blind-hunter.md` completely and follow it as your review instructions.
62
57
 
63
- CONTENT: the unified diff at `{diff_file}`. Read that file — it is the content under review.
58
+ Review content: the unified diff at `{diff_file}`. Read that file — it is the content under review.
64
59
 
65
- Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
60
+ Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. If the instruction file is unreadable, report that exact failure and stop. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
66
61
 
67
62
  """
68
63
 
@@ -0,0 +1,20 @@
1
+ # Blind Hunter Review
2
+
3
+ **Goal:** Conduct a blind review of CONTENT — no project context, no spec, no triage. Hunt for what's missing, not only what's wrong.
4
+
5
+ **Your method:**
6
+
7
+ - Conduct a review of CONTENT.
8
+ - Look for what's missing, not only what's wrong.
9
+ - Find at least ten issues to fix or improve.
10
+ - Output a Markdown list of findings only — no severity, priority, or ranking.
11
+ - If the content is empty, stop and say so.
12
+ - If you have zero findings, re-check and keep thinking; do not stop with an empty list.
13
+
14
+ ## OUTPUT FORMAT
15
+
16
+ A Markdown list of findings only. One bullet per issue, description only — no severity, priority, or ranking.
17
+
18
+ ## CONTENT SOURCE
19
+
20
+ "Review content:" in the message that launched you gives the content itself or a path to read it from. Read the file when it is a path; either way that is the content under review, and this instruction file never is. If no content is supplied, or it is empty or unreadable, stop and say so — never report a clean review for content you could not read.
@@ -129,6 +129,6 @@ Present the user with follow-up options:
129
129
 
130
130
  ## On Complete
131
131
 
132
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete`
132
+ Run: read `workflow.on_complete` from the `{project-root}/_wizz/_resolved/wizz-code-review.json` snapshot loaded in step 1
133
133
 
134
134
  If the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.
@@ -14,19 +14,18 @@ description: 'Manage significant changes during sprint execution. Use when the u
14
14
  - Bare paths (e.g. `checklist.md`) resolve from the skill root.
15
15
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
16
16
  - `{project-root}`-prefixed paths resolve from the project working directory.
17
- - `{skill-name}` resolves to the skill directory's basename.
18
17
 
19
18
  ## On Activation
20
19
 
21
20
  ### Step 1: Resolve the Workflow Block
22
21
 
23
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
22
+ Run: read `{project-root}/_wizz/_resolved/wizz-correct-course.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-correct-course` from the project root and read the snapshot again
24
23
 
25
24
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
26
25
 
27
26
  1. `{skill-root}/customize.toml` — defaults
28
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
29
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
27
+ 2. `{project-root}/_wizz/custom/wizz-correct-course.toml` — team overrides
28
+ 3. `{project-root}/_wizz/custom/wizz-correct-course.user.toml` — personal overrides
30
29
 
31
30
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
32
31
 
@@ -295,7 +294,7 @@ Activation is complete. If `activation_steps_prepend` or `activation_steps_appen
295
294
 
296
295
  <action>Report workflow completion to user with personalized message: "Correct Course workflow complete, {user_name}!"</action>
297
296
  <action>Remind user of success criteria and next steps for Developer agent</action>
298
- <action>Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete` — if the resolved value is non-empty, follow it as the final terminal instruction before exiting.</action>
297
+ <action>Run: read `{project-root}/_wizz/_resolved/wizz-correct-course.json` (subtree `workflow.on_complete`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-correct-course` from the project root and read it again — if the resolved value is non-empty, follow it as the final terminal instruction before exiting.</action>
299
298
  </step>
300
299
 
301
300
  </workflow>
@@ -24,19 +24,18 @@ If you need an explicit user instruction to run them, ask once now for the whole
24
24
  - Bare paths (e.g. `discover-inputs.md`) resolve from the skill root.
25
25
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
26
26
  - `{project-root}`-prefixed paths resolve from the project working directory.
27
- - `{skill-name}` resolves to the skill directory's basename.
28
27
 
29
28
  ## On Activation
30
29
 
31
30
  ### Step 1: Resolve the Workflow Block
32
31
 
33
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
32
+ Run: read `{project-root}/_wizz/_resolved/wizz-create-story.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-create-story` from the project root and read the snapshot again
34
33
 
35
34
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
36
35
 
37
36
  1. `{skill-root}/customize.toml` — defaults
38
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
39
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
37
+ 2. `{project-root}/_wizz/custom/wizz-create-story.toml` — team overrides
38
+ 3. `{project-root}/_wizz/custom/wizz-create-story.user.toml` — personal overrides
40
39
 
41
40
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
42
41
 
@@ -426,7 +425,7 @@ Activation is complete. If `activation_steps_prepend` or `activation_steps_appen
426
425
 
427
426
  **The developer now has everything needed for flawless implementation!**
428
427
  </output>
429
- <action>Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete` — if the resolved value is non-empty, follow it as the final terminal instruction before exiting.</action>
428
+ <action>Run: read `{project-root}/_wizz/_resolved/wizz-create-story.json` (subtree `workflow.on_complete`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-create-story` from the project root and read it again — if the resolved value is non-empty, follow it as the final terminal instruction before exiting.</action>
430
429
  </step>
431
430
 
432
431
  </workflow>
@@ -22,19 +22,18 @@ description: 'Execute story implementation following a context filled story spec
22
22
  - Bare paths (e.g. `steps/step-01-init.md`) resolve from the skill root.
23
23
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
24
24
  - `{project-root}`-prefixed paths resolve from the project working directory.
25
- - `{skill-name}` resolves to the skill directory's basename.
26
25
 
27
26
  ## On Activation
28
27
 
29
28
  ### Step 1: Resolve the Workflow Block
30
29
 
31
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
30
+ Run: read `{project-root}/_wizz/_resolved/wizz-dev-story.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-dev-story` from the project root and read the snapshot again
32
31
 
33
32
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
34
33
 
35
34
  1. `{skill-root}/customize.toml` — defaults
36
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
37
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
35
+ 2. `{project-root}/_wizz/custom/wizz-dev-story.toml` — team overrides
36
+ 3. `{project-root}/_wizz/custom/wizz-dev-story.user.toml` — personal overrides
38
37
 
39
38
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
40
39
 
@@ -495,7 +494,7 @@ Activation is complete. If `activation_steps_prepend` or `activation_steps_appen
495
494
  <action>Suggest checking {sprint_status} to see project progress</action>
496
495
  </check>
497
496
  <action>Remain flexible - allow user to choose their own path or ask for other assistance</action>
498
- <action>Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete` — if the resolved value is non-empty, follow it as the final terminal instruction before exiting.</action>
497
+ <action>Run: read `{project-root}/_wizz/_resolved/wizz-dev-story.json` (subtree `workflow.on_complete`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-dev-story` from the project root and read it again — if the resolved value is non-empty, follow it as the final terminal instruction before exiting.</action>
499
498
  </step>
500
499
 
501
500
  </workflow>
@@ -52,7 +52,7 @@ After every outcome, present what was learned and pause for the user before cont
52
52
 
53
53
  ### Step 1: Resolve the workflow block
54
54
 
55
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
55
+ Run: read `{project-root}/_wizz/_resolved/wizz-investigate.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-investigate` from the project root and read the snapshot again
56
56
 
57
57
  If the script fails, stop and surface the error.
58
58
 
@@ -14,19 +14,18 @@ description: 'Generate end to end automated tests for existing features. Use whe
14
14
  - Bare paths (e.g. `checklist.md`) resolve from the skill root.
15
15
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
16
16
  - `{project-root}`-prefixed paths resolve from the project working directory.
17
- - `{skill-name}` resolves to the skill directory's basename.
18
17
 
19
18
  ## On Activation
20
19
 
21
20
  ### Step 1: Resolve the Workflow Block
22
21
 
23
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
22
+ Run: read `{project-root}/_wizz/_resolved/wizz-qa-generate-e2e-tests.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-qa-generate-e2e-tests` from the project root and read the snapshot again
24
23
 
25
24
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
26
25
 
27
26
  1. `{skill-root}/customize.toml` — defaults
28
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
29
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
27
+ 2. `{project-root}/_wizz/custom/wizz-qa-generate-e2e-tests.toml` — team overrides
28
+ 3. `{project-root}/_wizz/custom/wizz-qa-generate-e2e-tests.user.toml` — personal overrides
30
29
 
31
30
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
32
31
 
@@ -171,6 +170,6 @@ Save summary to: `{default_output_file}`
171
170
 
172
171
  ## On Complete
173
172
 
174
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow.on_complete`
173
+ Run: read `{project-root}/_wizz/_resolved/wizz-qa-generate-e2e-tests.json` (subtree `workflow.on_complete`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-qa-generate-e2e-tests` from the project root and read it again
175
174
 
176
175
  If the resolved `workflow.on_complete` is non-empty, follow it as the final terminal instruction before exiting.
@@ -37,7 +37,7 @@ A specification should target a **single user-facing goal** within **900–1600
37
37
 
38
38
  You are the leaf: the maestro demotes here for pointed work (bug, tweak, single-goal feature). Re-check scope against the shared complexity signal (areas, steps, needs-planning?, artifact+memory?):
39
39
 
40
- **Dispatch rule:** IF 2+ areas → `wizz-maestro`, always. ELSE count the 3 remaining factors (multi-step, needs planning, produces a memorable artifact); 2+ factors → `wizz-maestro`.
40
+ **Dispatch rule:** IF 2+ areas → `wizz-maestro`, always. ELSE count the 3 remaining factors (multi-step, needs planning, produces a memorable artifact); 2+ factors → `wizz-maestro`. The area clause decides on its own, without summing with anything else.
41
41
 
42
42
  - If clarification reveals the request is actually **multi-goal / multi-area** (2+ top-level shippable deliverables, or it spans several areas), do not silently absorb it. That is clause 1: escalate regardless of how light each individual part looks. Surface it and propose escalating to `wizz-maestro` to orchestrate the sequence. Proceed solo only if the user confirms a narrowed single goal.
43
43
  - If it is genuinely single-area but hits 2+ of the remaining factors (multi-step, needs planning, produces a memorable artifact), also escalate. Do not silently absorb heavy single-area work either.
@@ -52,19 +52,18 @@ If the request is a **new multi-step feature** and no story/PRD covers it (check
52
52
  - Bare paths (e.g. `step-01-clarify-and-route.md`) resolve from the skill root.
53
53
  - `{skill-root}` resolves to this skill's installed directory (where `customize.toml` lives).
54
54
  - `{project-root}`-prefixed paths resolve from the project working directory.
55
- - `{skill-name}` resolves to the skill directory's basename.
56
55
 
57
56
  ## On Activation
58
57
 
59
58
  ### Step 1: Resolve the Workflow Block
60
59
 
61
- Run: `python3 {project-root}/_wizz/scripts/resolve_customization.py --skill {skill-root} --key workflow`
60
+ Run: read `{project-root}/_wizz/_resolved/wizz-quick-dev.json` (subtree `workflow`). If the file is missing, empty or not valid JSON, run `npx wizz-method resolve --skill wizz-quick-dev` from the project root and read the snapshot again
62
61
 
63
62
  **If the script fails**, resolve the `workflow` block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
64
63
 
65
64
  1. `{skill-root}/customize.toml` — defaults
66
- 2. `{project-root}/_wizz/custom/{skill-name}.toml` — team overrides
67
- 3. `{project-root}/_wizz/custom/{skill-name}.user.toml` — personal overrides
65
+ 2. `{project-root}/_wizz/custom/wizz-quick-dev.toml` — team overrides
66
+ 3. `{project-root}/_wizz/custom/wizz-quick-dev.user.toml` — personal overrides
68
67
 
69
68
  Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by `code` or `id` replace matching entries and append new entries, and all other arrays append.
70
69
 
@@ -51,16 +51,11 @@ name = "Blind Hunter"
51
51
  instruction = """
52
52
  Launch a context-free `wizz-exec-review` subagent with this prompt — pinned to the platform's Forte tier (`opus` in Claude Code), never inheriting the session model. Tell the user the tier and count of this dispatch.
53
53
 
54
- Conduct a review of CONTENT.
55
- Look for what's missing, not only what's wrong.
56
- Find at least ten issues to fix or improve.
57
- Output a Markdown list of findings only — no severity, priority, or ranking.
58
- If the content is empty, stop and say so.
59
- If you have zero findings, re-check and keep thinking; do not stop with an empty list.
54
+ Read `{skill-root}/review-prompts/blind-hunter.md` completely and follow it as your review instructions.
60
55
 
61
- CONTENT: the unified diff at `{diff_file}`. Read that file — it is the content under review.
56
+ Review content: the unified diff at `{diff_file}`. Read that file — it is the content under review.
62
57
 
63
- Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
58
+ Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. If the instruction file is unreadable, report that exact failure and stop. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
64
59
 
65
60
  """
66
61
 
@@ -97,11 +92,10 @@ Do not invoke any skill, and do not spawn subagents of your own — you are the
97
92
  # Review layers for the one-shot route. Consumed by step-oneshot.md, the same way
98
93
  # step-04-review.md consumes review_layers above.
99
94
  #
100
- # Duplicacao conhecida (2026-09-10): o prompt do Blind Hunter existe em tres copias
101
- # (aqui, no review_layers acima e no customize.toml do wizz-code-review) e ainda numa
102
- # quarta, a skill core wizz-review-adversarial-general, que hoje nenhum workflow
103
- # invoca. Unificar isso num review-prompts/blind-hunter.md, como ja e feito com
104
- # edge-case-hunter e verification-gap, e decisao em aberto.
95
+ # O prompt do Blind Hunter vive em review-prompts/blind-hunter.md (fonte única,
96
+ # item 22 da auditoria de 2026-09-11), mesmo padrão de edge-case-hunter e
97
+ # verification-gap. Uma cópia idêntica fica em wizz-code-review/review-prompts/
98
+ # e um teste de paridade (test/test-blind-hunter-parity.js) trava as duas.
105
99
 
106
100
  [[workflow.oneshot_review_layers]]
107
101
  id = "blind-hunter"
@@ -109,16 +103,10 @@ name = "Blind Hunter"
109
103
  instruction = """
110
104
  Launch a context-free `wizz-exec-review` subagent with this prompt — pinned to the platform's Forte tier (`opus` in Claude Code), never inheriting the session model. Tell the user the tier and count of this dispatch.
111
105
 
112
- Conduct a review of CONTENT.
113
- Look for what's missing, not only what's wrong.
114
- Find at least ten issues to fix or improve.
115
- Output a Markdown list of findings only — no severity, priority, or ranking.
116
- If the content is empty, stop and say so.
117
- If you have zero findings, re-check and keep thinking; do not stop with an empty list.
106
+ Read `{skill-root}/review-prompts/blind-hunter.md` completely and follow it as your review instructions.
118
107
 
119
- CONTENT:
120
- The changed files in the current worktree. Inspect them directly before reviewing.
108
+ Review content: the changed files in the current worktree. Inspect them directly before reviewing.
121
109
 
122
- Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
110
+ Do not invoke any skill, and do not spawn subagents of your own — you are the reviewer. If the instruction file is unreadable, report that exact failure and stop. Return your findings as text in your final message; do not route them through any findings-reporting tool the host may offer.
123
111
 
124
112
  """