@daniellins/power-claude 0.16.3

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.

Potentially problematic release.


This version of @daniellins/power-claude might be problematic. Click here for more details.

Files changed (467) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +121 -0
  3. package/bin/cli.js +124 -0
  4. package/installer/__tests__/doctor-ready-oracles.test.cjs +140 -0
  5. package/installer/__tests__/merge-settings.test.cjs +330 -0
  6. package/installer/adopt.js +161 -0
  7. package/installer/copy.js +203 -0
  8. package/installer/doctor.js +266 -0
  9. package/installer/install.js +155 -0
  10. package/installer/manifest.js +102 -0
  11. package/installer/motor-scripts.js +50 -0
  12. package/installer/motor-scripts.json +39 -0
  13. package/installer/uninstall.js +99 -0
  14. package/installer/update.js +376 -0
  15. package/installer/util.js +113 -0
  16. package/installer/wizard.js +64 -0
  17. package/package.json +26 -0
  18. package/scripts/__fixtures__/anti-path-demo/agents/ap-writer.md +13 -0
  19. package/scripts/__fixtures__/anti-path-demo/templates/write-tmpl.md +7 -0
  20. package/scripts/__fixtures__/anti-path-demo/workflows/wf-ap.smoke.json +10 -0
  21. package/scripts/__fixtures__/anti-path-demo/workflows/wf-ap.yaml +25 -0
  22. package/scripts/__fixtures__/assess-tier/retrofit-leve/pod/agents/content-chief.md +1 -0
  23. package/scripts/__fixtures__/assess-tier/retrofit-leve/pod/workflows/wf-criacao-redteam.yaml +3 -0
  24. package/scripts/__fixtures__/assess-tier/retrofit-leve/pod-spec.json +13 -0
  25. package/scripts/__fixtures__/fidelity/fake-green-average-in-band.yaml +21 -0
  26. package/scripts/__fixtures__/fidelity/fake-green-average.yaml +18 -0
  27. package/scripts/__fixtures__/fidelity/fake-green-denominator.yaml +19 -0
  28. package/scripts/__fixtures__/fidelity/fake-green-missing-evidence.yaml +18 -0
  29. package/scripts/__fixtures__/fidelity/fake-green-threshold.yaml +18 -0
  30. package/scripts/__fixtures__/fidelity/fake-green-weight.yaml +18 -0
  31. package/scripts/__fixtures__/fidelity/golden.yaml +31 -0
  32. package/scripts/__fixtures__/fidelity/trindade-incoherent.yaml +15 -0
  33. package/scripts/__fixtures__/forge-canonical/pod-spec-example.json +37 -0
  34. package/scripts/__fixtures__/migrate-squad/authored/agents/offer-engineer.md +17 -0
  35. package/scripts/__fixtures__/migrate-squad/authored/knowledge/no-source.md +7 -0
  36. package/scripts/__fixtures__/migrate-squad/authored/knowledge/value-stack-method.md +8 -0
  37. package/scripts/__fixtures__/migrate-squad/authored/specs/wf-sample.smoke.json +24 -0
  38. package/scripts/__fixtures__/migrate-squad/authored/specs/wf-sample.spec.json +45 -0
  39. package/scripts/__fixtures__/migrate-squad/legacy-squad/HEADLINE.md +3 -0
  40. package/scripts/__fixtures__/migrate-squad/legacy-squad/README.md +4 -0
  41. package/scripts/__fixtures__/migrate-squad/legacy-squad/agents/hormozi-offer.md +14 -0
  42. package/scripts/__fixtures__/migrate-squad/legacy-squad/checklists/dead-redundant.md +4 -0
  43. package/scripts/__fixtures__/migrate-squad/legacy-squad/checklists/method-guide.md +6 -0
  44. package/scripts/__fixtures__/migrate-squad/legacy-squad/checklists/veto-screen.md +4 -0
  45. package/scripts/__fixtures__/migrate-squad/legacy-squad/config/config.yaml +2 -0
  46. package/scripts/__fixtures__/migrate-squad/legacy-squad/data/case-library.md +3 -0
  47. package/scripts/__fixtures__/migrate-squad/legacy-squad/scripts/validate-mvn.py +16 -0
  48. package/scripts/__fixtures__/migrate-squad/legacy-squad/sops/sop-sample.md +3 -0
  49. package/scripts/__fixtures__/migrate-squad/legacy-squad/squad-io.yaml +14 -0
  50. package/scripts/__fixtures__/migrate-squad/legacy-squad/tasks/gather-context.md +7 -0
  51. package/scripts/__fixtures__/migrate-squad/legacy-squad/templates/output-tmpl.md +5 -0
  52. package/scripts/__fixtures__/migrate-squad/legacy-squad/workflows/wf-sample.yaml +24 -0
  53. package/scripts/__fixtures__/pipeline/pipelines/pipeline-checkpoint.yaml +21 -0
  54. package/scripts/__fixtures__/pipeline/pipelines/pipeline-demo.yaml +22 -0
  55. package/scripts/__fixtures__/pipeline/pods/pipe-a/agents/maker.md +13 -0
  56. package/scripts/__fixtures__/pipeline/pods/pipe-a/memory/learnings.consolidated.md +8 -0
  57. package/scripts/__fixtures__/pipeline/pods/pipe-a/memory/learnings.jsonl +83 -0
  58. package/scripts/__fixtures__/pipeline/pods/pipe-a/templates/make-tmpl.md +8 -0
  59. package/scripts/__fixtures__/pipeline/pods/pipe-a/workflows/wf-a.yaml +16 -0
  60. package/scripts/__fixtures__/pipeline/pods/pipe-b/agents/user.md +13 -0
  61. package/scripts/__fixtures__/pipeline/pods/pipe-b/memory/learnings.consolidated.md +8 -0
  62. package/scripts/__fixtures__/pipeline/pods/pipe-b/memory/learnings.jsonl +14 -0
  63. package/scripts/__fixtures__/pipeline/pods/pipe-b/templates/use-tmpl.md +6 -0
  64. package/scripts/__fixtures__/pipeline/pods/pipe-b/workflows/wf-b.yaml +16 -0
  65. package/scripts/__fixtures__/pod-run/agents/forge-chief.md +13 -0
  66. package/scripts/__fixtures__/pod-run/agents/pod-critic.md +13 -0
  67. package/scripts/__fixtures__/pod-run/templates/build-tmpl.md +8 -0
  68. package/scripts/__fixtures__/pod-run/templates/gate-tmpl.md +6 -0
  69. package/scripts/__fixtures__/pod-run/workflows/wf-min.yaml +43 -0
  70. package/scripts/__fixtures__/pod-run/workflows/wf-skip-modes.yaml +50 -0
  71. package/scripts/__fixtures__/pod-workflow/invalid-checkpoint-all-skippable.yaml +30 -0
  72. package/scripts/__fixtures__/pod-workflow/invalid-checkpoint-criteria-escalar-de-bloco.yaml +40 -0
  73. package/scripts/__fixtures__/pod-workflow/invalid-checkpoint-skip-mode-desconhecido.yaml +30 -0
  74. package/scripts/__fixtures__/pod-workflow/invalid-checkpoint-unknown-key.yaml +29 -0
  75. package/scripts/__fixtures__/pod-workflow/invalid-cycle.yaml +26 -0
  76. package/scripts/__fixtures__/pod-workflow/invalid-fix-loop-backedge.yaml +29 -0
  77. package/scripts/__fixtures__/pod-workflow/invalid-fix-loop-forward.yaml +29 -0
  78. package/scripts/__fixtures__/pod-workflow/invalid-handoff-open.yaml +27 -0
  79. package/scripts/__fixtures__/pod-workflow/invalid-knowledge-shape.yaml +18 -0
  80. package/scripts/__fixtures__/pod-workflow/invalid-missing-agent.yaml +15 -0
  81. package/scripts/__fixtures__/pod-workflow/invalid-missing-outputs.yaml +15 -0
  82. package/scripts/__fixtures__/pod-workflow/invalid-missing-template.yaml +15 -0
  83. package/scripts/__fixtures__/pod-workflow/invalid-missing-veto.yaml +13 -0
  84. package/scripts/__fixtures__/pod-workflow/invalid-template-not-on-disk.yaml +16 -0
  85. package/scripts/__fixtures__/pod-workflow/invalid-veto-prose.yaml +17 -0
  86. package/scripts/__fixtures__/pod-workflow/knowledge/a.md +4 -0
  87. package/scripts/__fixtures__/pod-workflow/knowledge/b.md +4 -0
  88. package/scripts/__fixtures__/pod-workflow/knowledge/c.md +4 -0
  89. package/scripts/__fixtures__/pod-workflow/templates/step-tmpl.md +7 -0
  90. package/scripts/__fixtures__/pod-workflow/valid-checkpoint-skip-modes.yaml +29 -0
  91. package/scripts/__fixtures__/pod-workflow/valid-fix-loop.yaml +30 -0
  92. package/scripts/__fixtures__/pod-workflow/valid-knowledge.yaml +30 -0
  93. package/scripts/__fixtures__/pod-workflow/valid-veto-always-true.yaml +20 -0
  94. package/scripts/__fixtures__/pod-workflow/valid.yaml +27 -0
  95. package/scripts/__fixtures__/smoke-canary/agents/canary-reporter.md +13 -0
  96. package/scripts/__fixtures__/smoke-canary/agents/canary-researcher.md +13 -0
  97. package/scripts/__fixtures__/smoke-canary/agents/canary-synth.md +13 -0
  98. package/scripts/__fixtures__/smoke-canary/memory/learnings.consolidated.md +10 -0
  99. package/scripts/__fixtures__/smoke-canary/memory/learnings.jsonl +448 -0
  100. package/scripts/__fixtures__/smoke-canary/templates/report-tmpl.md +9 -0
  101. package/scripts/__fixtures__/smoke-canary/templates/research-tmpl.md +7 -0
  102. package/scripts/__fixtures__/smoke-canary/templates/synth-tmpl.md +9 -0
  103. package/scripts/__fixtures__/smoke-canary/workflows/wf-canary.smoke.json +11 -0
  104. package/scripts/__fixtures__/smoke-canary/workflows/wf-canary.yaml +53 -0
  105. package/scripts/__fixtures__/source-audit/fake-green-bronze-unsignaled.yaml +10 -0
  106. package/scripts/__fixtures__/source-audit/fake-green-counts.yaml +9 -0
  107. package/scripts/__fixtures__/source-audit/fake-green-missing-evidence.yaml +9 -0
  108. package/scripts/__fixtures__/source-audit/fake-green-unclassified.yaml +10 -0
  109. package/scripts/__fixtures__/source-audit/fake-green-verdict.yaml +10 -0
  110. package/scripts/__fixtures__/source-audit/golden-blocked.yaml +10 -0
  111. package/scripts/__fixtures__/source-audit/golden.yaml +11 -0
  112. package/scripts/__fixtures__/sweep-forms/agents/forms-count.md +13 -0
  113. package/scripts/__fixtures__/sweep-forms/agents/forms-field.md +13 -0
  114. package/scripts/__fixtures__/sweep-forms/agents/forms-fileref.md +13 -0
  115. package/scripts/__fixtures__/sweep-forms/agents/forms-json.md +13 -0
  116. package/scripts/__fixtures__/sweep-forms/agents/forms-section.md +13 -0
  117. package/scripts/__fixtures__/sweep-forms/specs/wf-forms.spec.json +5 -0
  118. package/scripts/__fixtures__/sweep-forms/templates/t_count.md +5 -0
  119. package/scripts/__fixtures__/sweep-forms/templates/t_field.md +3 -0
  120. package/scripts/__fixtures__/sweep-forms/templates/t_fileref.md +3 -0
  121. package/scripts/__fixtures__/sweep-forms/templates/t_json.md +0 -0
  122. package/scripts/__fixtures__/sweep-forms/templates/t_section.md +3 -0
  123. package/scripts/__fixtures__/sweep-forms/workflows/wf-forms.smoke.json +13 -0
  124. package/scripts/__fixtures__/sweep-forms/workflows/wf-forms.yaml +67 -0
  125. package/scripts/__fixtures__/validate-story-acs-corpus/corpus-1-noop-state-json.fixture.md +18 -0
  126. package/scripts/__fixtures__/validate-story-acs-corpus/corpus-2-crash-buildworkflowyaml.fixture.md +26 -0
  127. package/scripts/__fixtures__/validate-story-acs-corpus/corpus-3-nasce-verde-skip-modes.fixture.md +29 -0
  128. package/scripts/__fixtures__/validate-story-acs-corpus/corpus-4-guarda-sem-irmao.fixture.md +17 -0
  129. package/scripts/__fixtures__/validate-story-acs-corpus/corpus-5a-diff-stat-sem-guarda.fixture.md +17 -0
  130. package/scripts/__fixtures__/validate-story-acs-corpus/corpus-5b-test-f-sobre-diretorio.fixture.md +20 -0
  131. package/scripts/__fixtures__/veto-checks/copy-clean.md +4 -0
  132. package/scripts/__fixtures__/veto-checks/copy-dashes.md +4 -0
  133. package/scripts/__fixtures__/veto-checks/n8n-bad.md +18 -0
  134. package/scripts/__fixtures__/veto-checks/n8n-ok.md +22 -0
  135. package/scripts/__fixtures__/veto-checks/page-bad.html +7 -0
  136. package/scripts/__fixtures__/veto-checks/phash/copy.png +0 -0
  137. package/scripts/__fixtures__/veto-checks/phash/distinct.png +0 -0
  138. package/scripts/__fixtures__/veto-checks/phash/distinct2.png +0 -0
  139. package/scripts/__fixtures__/veto-checks/phash/make-fixtures.cjs +203 -0
  140. package/scripts/__fixtures__/veto-checks/phash/ref.png +0 -0
  141. package/scripts/__fixtures__/veto-checks/slide-ok.html +15 -0
  142. package/scripts/__fixtures__/veto-checks/slide-overflow.html +14 -0
  143. package/scripts/__fixtures__/veto-checks/sweep-pod/agents/vc-checker.md +13 -0
  144. package/scripts/__fixtures__/veto-checks/sweep-pod/templates/check-tmpl.md +6 -0
  145. package/scripts/__fixtures__/veto-checks/sweep-pod/workflows/wf-vc.smoke.json +10 -0
  146. package/scripts/__fixtures__/veto-checks/sweep-pod/workflows/wf-vc.yaml +19 -0
  147. package/scripts/__fixtures__/voz-do-dono/README.md +23 -0
  148. package/scripts/__fixtures__/voz-do-dono/dono-escalar.yaml +9 -0
  149. package/scripts/__fixtures__/voz-do-dono/dono-guia.yaml +10 -0
  150. package/scripts/__fixtures__/voz-do-dono/peca-3a-pessoa.md +6 -0
  151. package/scripts/__fixtures__/voz-do-dono/peca-com-lexico-proibido.md +6 -0
  152. package/scripts/__fixtures__/voz-do-dono/peca-limpa-1a-pessoa.md +6 -0
  153. package/scripts/__tests__/derive-ready-transitions.test.cjs +269 -0
  154. package/scripts/__tests__/enforce-cycle-authority.test.cjs +869 -0
  155. package/scripts/__tests__/enforce-git-push-authority.test.cjs +701 -0
  156. package/scripts/__tests__/enforce-ready-oracles.test.cjs +745 -0
  157. package/scripts/__tests__/motor-scripts.test.cjs +339 -0
  158. package/scripts/__tests__/pc-run-pod-counter.test.cjs +58 -0
  159. package/scripts/__tests__/pc-run-pod.test.cjs +578 -0
  160. package/scripts/__tests__/validate-pod-workflow.test.cjs +90 -0
  161. package/scripts/__tests__/validate-story-acs.test.cjs +607 -0
  162. package/scripts/anti-path.test.cjs +163 -0
  163. package/scripts/arena.cjs +514 -0
  164. package/scripts/arena.test.cjs +213 -0
  165. package/scripts/brief-leitura-obrigatoria.test.cjs +364 -0
  166. package/scripts/consolidate-knowledge-runner.test.cjs +249 -0
  167. package/scripts/default-funcional.test.cjs +153 -0
  168. package/scripts/derive-ready-transitions.cjs +325 -0
  169. package/scripts/forge-additive.test.cjs +158 -0
  170. package/scripts/forge-assess-tier.cjs +205 -0
  171. package/scripts/forge-assess-tier.test.cjs +114 -0
  172. package/scripts/forge-canonical.test.cjs +624 -0
  173. package/scripts/forge-generate.cjs +1303 -0
  174. package/scripts/forge-harden-learning.cjs +921 -0
  175. package/scripts/forge-harden-learning.test.cjs +242 -0
  176. package/scripts/forge-ingest-memory.cjs +136 -0
  177. package/scripts/forge-upgrade-pod.cjs +368 -0
  178. package/scripts/forge.test.cjs +609 -0
  179. package/scripts/harden-knowledge.test.cjs +612 -0
  180. package/scripts/harness-g5-lite.cjs +243 -0
  181. package/scripts/harness-g5-lite.test.cjs +134 -0
  182. package/scripts/hn-carousel-contrato-entrada.test.cjs +96 -0
  183. package/scripts/migrate-squad-orchestration.test.cjs +146 -0
  184. package/scripts/migration-manifest-sf3.2.test.cjs +382 -0
  185. package/scripts/migration-manifest-sf3.3.test.cjs +170 -0
  186. package/scripts/migration-manifest-sf5.5.test.cjs +189 -0
  187. package/scripts/migration-manifest.cjs +1146 -0
  188. package/scripts/migration-manifest.test.cjs +186 -0
  189. package/scripts/npm-scope-invocation.test.cjs +194 -0
  190. package/scripts/owner-layer.cjs +442 -0
  191. package/scripts/owner-layer.test.cjs +358 -0
  192. package/scripts/pc-run-pipeline.cjs +289 -0
  193. package/scripts/pc-run-pipeline.test.cjs +256 -0
  194. package/scripts/pc-run-pod-countgte.test.cjs +66 -0
  195. package/scripts/pc-run-pod.cjs +1355 -0
  196. package/scripts/phash-gate.test.cjs +433 -0
  197. package/scripts/pod-export-compile.cjs +487 -0
  198. package/scripts/pod-export-compile.test.cjs +312 -0
  199. package/scripts/pod-export-executor.cjs +678 -0
  200. package/scripts/pod-export-executor.test.cjs +1341 -0
  201. package/scripts/pod-export-hardening.test.cjs +531 -0
  202. package/scripts/pod-export-postprocess.cjs +427 -0
  203. package/scripts/pod-export-postprocess.test.cjs +558 -0
  204. package/scripts/pod-export-queue-race.test.cjs +865 -0
  205. package/scripts/pod-export-release.cjs +473 -0
  206. package/scripts/pod-export-release.test.cjs +267 -0
  207. package/scripts/pod-export-service.cjs +1297 -0
  208. package/scripts/pod-export-service.test.cjs +489 -0
  209. package/scripts/pod-export-tools.cjs +470 -0
  210. package/scripts/pod-export-ui.cjs +805 -0
  211. package/scripts/pod-export-ui.test.cjs +301 -0
  212. package/scripts/pod-memory-budget.test.cjs +309 -0
  213. package/scripts/pod-memory-note.cjs +357 -0
  214. package/scripts/pod-memory-note.test.cjs +452 -0
  215. package/scripts/pod-memory.cjs +1252 -0
  216. package/scripts/pod-memory.test.cjs +951 -0
  217. package/scripts/render-png.test.cjs +307 -0
  218. package/scripts/smoke-isolation.test.cjs +100 -0
  219. package/scripts/smoke-pod-workflow.cjs +755 -0
  220. package/scripts/smoke-sweep.test.cjs +170 -0
  221. package/scripts/validate-adopt.js +235 -0
  222. package/scripts/validate-branding.js +84 -0
  223. package/scripts/validate-budgets.js +140 -0
  224. package/scripts/validate-fidelity-output.cjs +267 -0
  225. package/scripts/validate-fidelity-output.test.cjs +101 -0
  226. package/scripts/validate-install.js +230 -0
  227. package/scripts/validate-no-clone.cjs +220 -0
  228. package/scripts/validate-no-clone.test.cjs +77 -0
  229. package/scripts/validate-pipeline.cjs +145 -0
  230. package/scripts/validate-pod-workflow.cjs +878 -0
  231. package/scripts/validate-source-audit.cjs +170 -0
  232. package/scripts/validate-source-audit.test.cjs +90 -0
  233. package/scripts/validate-story-acs.cjs +862 -0
  234. package/scripts/validate-update-scope-motor.js +421 -0
  235. package/scripts/veto-checks/html-valid.cjs +92 -0
  236. package/scripts/veto-checks/lexical-check.cjs +62 -0
  237. package/scripts/veto-checks/phash-gate.cjs +589 -0
  238. package/scripts/veto-checks/render-gate.cjs +165 -0
  239. package/scripts/veto-checks/render-png.cjs +358 -0
  240. package/scripts/veto-checks.test.cjs +219 -0
  241. package/scripts/watcher-audit.cjs +178 -0
  242. package/template/.claude/CLAUDE.md +103 -0
  243. package/template/.claude/agents/pc-analyst.md +100 -0
  244. package/template/.claude/agents/pc-architect.md +32 -0
  245. package/template/.claude/agents/pc-dev.md +27 -0
  246. package/template/.claude/agents/pc-devops.md +45 -0
  247. package/template/.claude/agents/pc-planner.md +32 -0
  248. package/template/.claude/agents/pc-po.md +25 -0
  249. package/template/.claude/agents/pc-qa.md +25 -0
  250. package/template/.claude/commands/power/academy.md +9 -0
  251. package/template/.claude/commands/power/automation.md +9 -0
  252. package/template/.claude/commands/power/content-carousel.md +267 -0
  253. package/template/.claude/commands/power/content.md +9 -0
  254. package/template/.claude/commands/power/dev.md +9 -0
  255. package/template/.claude/commands/power/forge.md +224 -0
  256. package/template/.claude/commands/power/hormozi.md +221 -0
  257. package/template/.claude/commands/power/modo.md +57 -0
  258. package/template/.claude/hooks/README.md +114 -0
  259. package/template/.claude/hooks/context-budget.cjs +64 -0
  260. package/template/.claude/hooks/enforce-cycle-authority.cjs +457 -0
  261. package/template/.claude/hooks/enforce-git-push-authority.cjs +925 -0
  262. package/template/.claude/hooks/enforce-ready-oracles.cjs +502 -0
  263. package/template/.claude/rules/authority.md +76 -0
  264. package/template/.claude/rules/curadoria-de-conhecimento.md +30 -0
  265. package/template/.claude/rules/model-matrix.md +34 -0
  266. package/template/.claude/rules/orchestration.md +133 -0
  267. package/template/.claude/settings.json +50 -0
  268. package/template/.claude/skills/pc-apply-qa-fixes/SKILL.md +108 -0
  269. package/template/.claude/skills/pc-apply-qa-fixes/references/fix-loop.md +40 -0
  270. package/template/.claude/skills/pc-apply-qa-fixes/references/fix-request-template.md +70 -0
  271. package/template/.claude/skills/pc-arena/SKILL.md +96 -0
  272. package/template/.claude/skills/pc-close-story/SKILL.md +105 -0
  273. package/template/.claude/skills/pc-commit/SKILL.md +108 -0
  274. package/template/.claude/skills/pc-develop-story/SKILL.md +116 -0
  275. package/template/.claude/skills/pc-full-cycle/SKILL.md +150 -0
  276. package/template/.claude/skills/pc-pipeline/SKILL.md +63 -0
  277. package/template/.claude/skills/pc-pipeline/references/gate-templates.md +46 -0
  278. package/template/.claude/skills/pc-review-story/SKILL.md +129 -0
  279. package/template/.claude/skills/pc-review-story/references/false-positive-detection.md +50 -0
  280. package/template/.claude/skills/pc-review-story/references/nfr-assess.md +47 -0
  281. package/template/.claude/skills/pc-review-story/references/risk-profile.md +75 -0
  282. package/template/.claude/skills/pc-review-story/references/security-checklist.md +69 -0
  283. package/template/.claude/skills/pc-review-story/references/test-design.md +37 -0
  284. package/template/.claude/skills/pc-review-story/references/trace-requirements.md +46 -0
  285. package/template/.claude/skills/pc-run-pod/SKILL.md +123 -0
  286. package/template/.claude/skills/pc-validate-story/SKILL.md +114 -0
  287. package/template/.claude/skills/pc-wave/SKILL.md +133 -0
  288. package/template/.env.example +10 -0
  289. package/template/knowledge/analyst/brainstorming.md +40 -0
  290. package/template/knowledge/analyst/brief-skeleton.md +32 -0
  291. package/template/knowledge/analyst/competitor-skeleton.md +39 -0
  292. package/template/knowledge/analyst/elicitation-menu.md +49 -0
  293. package/template/knowledge/analyst/market-research-skeleton.md +36 -0
  294. package/template/knowledge/analyst/research-prompt-structure.md +48 -0
  295. package/template/knowledge/analyst/roi-skeleton.md +51 -0
  296. package/template/knowledge/voice-dna/README.md +99 -0
  297. package/template/knowledge/voice-dna/voice-dna.example.yaml +157 -0
  298. package/template/pods/README.md +64 -0
  299. package/template/pods/academy/README.md +37 -0
  300. package/template/pods/academy/agents/academy-chief.md +27 -0
  301. package/template/pods/academy/examples/palestra.example.md +142 -0
  302. package/template/pods/academy/pod-spec.json +44 -0
  303. package/template/pods/academy/templates/materiais-tmpl.md +17 -0
  304. package/template/pods/academy/templates/revisao-didatica-tmpl.md +20 -0
  305. package/template/pods/academy/workflows/wf-materiais-revisao.yaml +30 -0
  306. package/template/pods/authority-content/README.md +43 -0
  307. package/template/pods/authority-content/agents/content-chief.md +28 -0
  308. package/template/pods/authority-content/pod-spec.json +45 -0
  309. package/template/pods/authority-content/templates/criacao-na-voz-tmpl.md +17 -0
  310. package/template/pods/authority-content/templates/red-team-factual-tmpl.md +23 -0
  311. package/template/pods/authority-content/workflows/wf-criacao-redteam.yaml +30 -0
  312. package/template/pods/automation/README.md +37 -0
  313. package/template/pods/automation/agents/langgraph-architect.md +30 -0
  314. package/template/pods/automation/agents/n8n-architect.md +30 -0
  315. package/template/pods/automation/examples/README.md +46 -0
  316. package/template/pods/automation/examples/n8n-content-radar.example.json +380 -0
  317. package/template/pods/automation/knowledge/langgraph-patterns.md +126 -0
  318. package/template/pods/automation/knowledge/n8n-patterns.md +131 -0
  319. package/template/pods/automation/memory/README.md +16 -0
  320. package/template/pods/automation/memory/learnings.consolidated.md +8 -0
  321. package/template/pods/automation/memory/learnings.jsonl +0 -0
  322. package/template/pods/automation/pod-spec.json +109 -0
  323. package/template/pods/automation/specs/wf-langgraph-build.spec.json +107 -0
  324. package/template/pods/automation/squad-io.yaml +28 -0
  325. package/template/pods/automation/templates/lg-build-tmpl.md +17 -0
  326. package/template/pods/automation/templates/lg-design-tmpl.md +23 -0
  327. package/template/pods/automation/templates/lg-discover-tmpl.md +20 -0
  328. package/template/pods/automation/templates/lg-handoff-tmpl.md +20 -0
  329. package/template/pods/automation/templates/lg-test-tmpl.md +20 -0
  330. package/template/pods/automation/templates/n8n-build-tmpl.md +14 -0
  331. package/template/pods/automation/templates/n8n-design-tmpl.md +23 -0
  332. package/template/pods/automation/templates/n8n-discover-tmpl.md +20 -0
  333. package/template/pods/automation/templates/n8n-handoff-tmpl.md +20 -0
  334. package/template/pods/automation/templates/n8n-test-tmpl.md +20 -0
  335. package/template/pods/automation/workflows/wf-langgraph-build.smoke.json +11 -0
  336. package/template/pods/automation/workflows/wf-langgraph-build.yaml +64 -0
  337. package/template/pods/automation/workflows/wf-n8n-build.smoke.json +11 -0
  338. package/template/pods/automation/workflows/wf-n8n-build.yaml +65 -0
  339. package/template/pods/content-carousel/README.md +91 -0
  340. package/template/pods/content-carousel/agents/carousel-builder.md +28 -0
  341. package/template/pods/content-carousel/agents/carousel-visual.md +24 -0
  342. package/template/pods/content-carousel/agents/hn-curator.md +74 -0
  343. package/template/pods/content-carousel/config/heuristic-watcher-rubric.yaml +59 -0
  344. package/template/pods/content-carousel/knowledge/aquisicao-ancora.md +443 -0
  345. package/template/pods/content-carousel/knowledge/cta-brief.md +25 -0
  346. package/template/pods/content-carousel/knowledge/dono.example.yaml +45 -0
  347. package/template/pods/content-carousel/knowledge/identidade-visual-mascote.md +62 -0
  348. package/template/pods/content-carousel/knowledge/image-generation.md +62 -0
  349. package/template/pods/content-carousel/knowledge/selecao-de-ancora.md +60 -0
  350. package/template/pods/content-carousel/knowledge/slides-html.md +56 -0
  351. package/template/pods/content-carousel/memory/README.md +18 -0
  352. package/template/pods/content-carousel/memory/learnings.consolidated.md +6 -0
  353. package/template/pods/content-carousel/memory/learnings.jsonl +0 -0
  354. package/template/pods/content-carousel/pod-spec.json +100 -0
  355. package/template/pods/content-carousel/squad-io.yaml +10 -0
  356. package/template/pods/content-carousel/templates/assembly-tmpl.md +23 -0
  357. package/template/pods/content-carousel/templates/digest-tmpl.md +29 -0
  358. package/template/pods/content-carousel/templates/visuals-tmpl.md +20 -0
  359. package/template/pods/content-carousel/workflows/wf-content-carousel.smoke.json +23 -0
  360. package/template/pods/content-carousel/workflows/wf-content-carousel.yaml +80 -0
  361. package/template/pods/dev-ia/README.md +45 -0
  362. package/template/pods/dev-ia/agents/db-architect.md +33 -0
  363. package/template/pods/dev-ia/agents/ux-architect.md +29 -0
  364. package/template/pods/dev-ia/knowledge/db/migration-protocol.md +95 -0
  365. package/template/pods/dev-ia/knowledge/db/rls-patterns.md +101 -0
  366. package/template/pods/dev-ia/knowledge/db/schema-review-checklist.md +76 -0
  367. package/template/pods/dev-ia/memory/README.md +16 -0
  368. package/template/pods/dev-ia/memory/learnings.consolidated.md +8 -0
  369. package/template/pods/dev-ia/memory/learnings.jsonl +0 -0
  370. package/template/pods/dev-ia/pod-spec.json +34 -0
  371. package/template/pods/dev-ia/templates/schema-review-tmpl.md +23 -0
  372. package/template/pods/dev-ia/templates/ux-flow-review-tmpl.md +23 -0
  373. package/template/pods/dev-ia/tools/db-ops/backup-manager.sh +321 -0
  374. package/template/pods/dev-ia/tools/db-ops/best-practices-auditor.sh +534 -0
  375. package/template/pods/dev-ia/tools/db-ops/bootstrap-runner.sh +255 -0
  376. package/template/pods/dev-ia/tools/db-ops/data-loader.sh +616 -0
  377. package/template/pods/dev-ia/tools/db-ops/detect-database.sh +113 -0
  378. package/template/pods/dev-ia/tools/db-ops/explain-analyzer.sh +285 -0
  379. package/template/pods/dev-ia/tools/db-ops/health-checker.sh +323 -0
  380. package/template/pods/dev-ia/tools/db-ops/migration-runner.sh +308 -0
  381. package/template/pods/dev-ia/tools/db-ops/postgresql-schema-loader.sh +334 -0
  382. package/template/pods/dev-ia/tools/db-ops/query-runner.sh +171 -0
  383. package/template/pods/dev-ia/tools/db-ops/rls-policy-installer.sh +480 -0
  384. package/template/pods/dev-ia/tools/db-ops/rls-test-suite.sh +172 -0
  385. package/template/pods/dev-ia/tools/db-ops/schema-context-loader.sh +176 -0
  386. package/template/pods/hormozi-method/README.md +52 -0
  387. package/template/pods/hormozi-method/agents/acquisition-strategist.md +33 -0
  388. package/template/pods/hormozi-method/agents/conversion-copywriter.md +34 -0
  389. package/template/pods/hormozi-method/agents/monetization-architect.md +35 -0
  390. package/template/pods/hormozi-method/agents/offer-engineer.md +37 -0
  391. package/template/pods/hormozi-method/knowledge/core-four-leads.md +51 -0
  392. package/template/pods/hormozi-method/knowledge/grand-slam-offer.md +66 -0
  393. package/template/pods/hormozi-method/knowledge/growth-decision.md +38 -0
  394. package/template/pods/hormozi-method/knowledge/hooks-and-ads.md +56 -0
  395. package/template/pods/hormozi-method/knowledge/launch-email.md +31 -0
  396. package/template/pods/hormozi-method/knowledge/money-model.md +46 -0
  397. package/template/pods/hormozi-method/knowledge/opportunity-screening.md +44 -0
  398. package/template/pods/hormozi-method/knowledge/pages.md +25 -0
  399. package/template/pods/hormozi-method/knowledge/pos-lancamento-leads.md +56 -0
  400. package/template/pods/hormozi-method/knowledge/pricing.md +36 -0
  401. package/template/pods/hormozi-method/knowledge/retention-ltv.md +37 -0
  402. package/template/pods/hormozi-method/knowledge/scale-roadmap.md +35 -0
  403. package/template/pods/hormozi-method/knowledge/swipefiles-curados.md +44 -0
  404. package/template/pods/hormozi-method/knowledge/value-equation-diagnostic.md +77 -0
  405. package/template/pods/hormozi-method/memory/README.md +16 -0
  406. package/template/pods/hormozi-method/memory/learnings.consolidated.md +6 -0
  407. package/template/pods/hormozi-method/memory/learnings.jsonl +0 -0
  408. package/template/pods/hormozi-method/pod-spec.json +50 -0
  409. package/template/pods/hormozi-method/specs/wf-full-launch-sequence.spec.json +149 -0
  410. package/template/pods/hormozi-method/specs/wf-lead-magnet-pipeline.spec.json +125 -0
  411. package/template/pods/hormozi-method/specs/wf-money-model-design.spec.json +117 -0
  412. package/template/pods/hormozi-method/specs/wf-paid-ads-campaign.spec.json +132 -0
  413. package/template/pods/hormozi-method/specs/wf-scaling-diagnostic.spec.json +121 -0
  414. package/template/pods/hormozi-method/squad-io.yaml +43 -0
  415. package/template/pods/hormozi-method/templates/conversion-copywriter-tmpl.md +20 -0
  416. package/template/pods/hormozi-method/templates/launch-execucao-tmpl.md +17 -0
  417. package/template/pods/hormozi-method/templates/launch-fechamento-tmpl.md +17 -0
  418. package/template/pods/hormozi-method/templates/launch-pos-tmpl.md +17 -0
  419. package/template/pods/hormozi-method/templates/launch-preparacao-tmpl.md +17 -0
  420. package/template/pods/hormozi-method/templates/lm-copy-tmpl.md +17 -0
  421. package/template/pods/hormozi-method/templates/lm-distribuicao-tmpl.md +18 -0
  422. package/template/pods/hormozi-method/templates/lm-estrategia-tmpl.md +17 -0
  423. package/template/pods/hormozi-method/templates/mm-arquitetura-tmpl.md +18 -0
  424. package/template/pods/hormozi-method/templates/mm-copy-tmpl.md +17 -0
  425. package/template/pods/hormozi-method/templates/mm-diagnostico-tmpl.md +14 -0
  426. package/template/pods/hormozi-method/templates/monetization-architect-tmpl.md +17 -0
  427. package/template/pods/hormozi-method/templates/offer-engineer-tmpl.md +20 -0
  428. package/template/pods/hormozi-method/templates/paid-criativos-tmpl.md +19 -0
  429. package/template/pods/hormozi-method/templates/paid-fundacao-tmpl.md +17 -0
  430. package/template/pods/hormozi-method/templates/paid-teste-escala-tmpl.md +17 -0
  431. package/template/pods/hormozi-method/templates/scaling-diagnostico-tmpl.md +17 -0
  432. package/template/pods/hormozi-method/templates/scaling-priorizacao-tmpl.md +17 -0
  433. package/template/pods/hormozi-method/templates/scaling-roadmap-tmpl.md +17 -0
  434. package/template/pods/hormozi-method/workflows/wf-full-launch-sequence.smoke.json +12 -0
  435. package/template/pods/hormozi-method/workflows/wf-full-launch-sequence.yaml +56 -0
  436. package/template/pods/hormozi-method/workflows/wf-grand-slam-offer.smoke.json +11 -0
  437. package/template/pods/hormozi-method/workflows/wf-grand-slam-offer.yaml +45 -0
  438. package/template/pods/hormozi-method/workflows/wf-lead-magnet-pipeline.smoke.json +9 -0
  439. package/template/pods/hormozi-method/workflows/wf-lead-magnet-pipeline.yaml +45 -0
  440. package/template/pods/hormozi-method/workflows/wf-money-model-design.smoke.json +11 -0
  441. package/template/pods/hormozi-method/workflows/wf-money-model-design.yaml +45 -0
  442. package/template/pods/hormozi-method/workflows/wf-paid-ads-campaign.smoke.json +9 -0
  443. package/template/pods/hormozi-method/workflows/wf-paid-ads-campaign.yaml +46 -0
  444. package/template/pods/hormozi-method/workflows/wf-scaling-diagnostic.smoke.json +11 -0
  445. package/template/pods/hormozi-method/workflows/wf-scaling-diagnostic.yaml +44 -0
  446. package/template/pods/squad-forge/README.md +53 -0
  447. package/template/pods/squad-forge/agents/forge-chief.md +31 -0
  448. package/template/pods/squad-forge/agents/mind-extractor.md +29 -0
  449. package/template/pods/squad-forge/agents/pod-critic.md +26 -0
  450. package/template/pods/squad-forge/config/heuristic-watcher-rubric.yaml +74 -0
  451. package/template/pods/squad-forge/knowledge/fidelity-rubric.yaml +176 -0
  452. package/template/pods/squad-forge/knowledge/g6-memory-check.md +17 -0
  453. package/template/pods/squad-forge/knowledge/memory-ingest.md +16 -0
  454. package/template/pods/squad-forge/knowledge/source-audit-rubric.yaml +60 -0
  455. package/template/pods/squad-forge/memory/README.md +16 -0
  456. package/template/pods/squad-forge/memory/learnings.consolidated.md +8 -0
  457. package/template/pods/squad-forge/memory/learnings.jsonl +0 -0
  458. package/template/pods/squad-forge/pod-spec.json +166 -0
  459. package/template/pods/squad-forge/squad-io.yaml +13 -0
  460. package/template/pods/squad-forge/tasks/pipeline.md +158 -0
  461. package/template/pods/squad-forge/templates/discovery-tmpl.md +40 -0
  462. package/template/pods/squad-forge/templates/generation-tmpl.md +18 -0
  463. package/template/pods/squad-forge/templates/red-team-tmpl.md +17 -0
  464. package/template/pods/squad-forge/templates/register-tmpl.md +17 -0
  465. package/template/pods/squad-forge/templates/workflow-tmpl.yaml +101 -0
  466. package/template/pods/squad-forge/workflows/wf-forge.smoke.json +12 -0
  467. package/template/pods/squad-forge/workflows/wf-forge.yaml +60 -0
@@ -0,0 +1,56 @@
1
+ # wf-full-launch-sequence.yaml — gerado por forge-generate.cjs (SF1.4).
2
+ # Contrato: templates/workflow-tmpl.yaml. Validador: scripts/validate-pod-workflow.cjs.
3
+
4
+ state_machine:
5
+ states: [init, running, review, complete, failed]
6
+ initial: init
7
+ terminal: [complete, failed]
8
+
9
+ steps:
10
+ - id: launch-preparacao
11
+ agent: conversion-copywriter
12
+ template: templates/launch-preparacao-tmpl.md
13
+ inputs: [brief]
14
+ outputs: [launch-plan]
15
+ knowledge: [launch-email.md, pages.md]
16
+ depends_on: []
17
+ checkpoint: { blocking: true, criteria: "PREREQUISITE (dependencia formal wf-grand-slam-offer :990-992 = offer-engineer): a Grand Slam Offer validada e input deste plano. Launch calendar finalizado (cronograma reverso com todas as datas pre-launch e launch week); 10 papeis criticos atribuidos COM backups (Launch Lead/Copywriter/Ads Manager/Tech Lead/Sales Lead/Operations/Customer Support/Content-Social/Analytics/War Room Commander); war room setup e testado (comunicacao, dashboards, escalation paths); contingencias documentadas (tech_failure/low_sales/overwhelming_demand/team_burnout); toda tech testada end-to-end; 7 emails de pre-launch (D-7..D0) agendados; landing pages (waitlist + early bird) live e testadas; conteudo de antecipacao criado; ads pre-launch configurados e aprovados; waitlist com leads aquecidos — cobertura QUALITATIVA de papel + gate de QA de tech + coleta de metrica de RUNTIME (leads na waitlist), NUNCA veto (fronteira ADR-002; 'Papel critico sem responsavel -> HALT' :272 e cobertura qualitativa, 'Tech nao testada -> BLOCK' :274 e gate de QA, 'Menos de 100 leads -> WARNING' :391 e metrica de runtime — nenhum e asercao estatica count_gte)" }
18
+ veto:
19
+ assertions:
20
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convencao de conformidade do pod (ancora wf-grand-slam-offer.yaml step); ortogonal e derivavel (valor presente fora do pattern)" }
21
+
22
+ - id: launch-execucao
23
+ agent: acquisition-strategist
24
+ template: templates/launch-execucao-tmpl.md
25
+ inputs: [launch-plan]
26
+ outputs: [launch-execution]
27
+ knowledge: [hooks-and-ads.md]
28
+ depends_on: [launch-preparacao]
29
+ checkpoint: { blocking: true, criteria: "Cart open executado (email + social + ads simultaneos); Lead Nurture Four Pillars implementados (Disponibilidade: slots 7 dias/semana a cada 15min; Velocidade: contato <5min do opt-in, appointment <72h; Personalizacao: multi-channel + lead scoring Red/Yellow/Green; Volume: 7+ reach-outs semana 1, auto reminders instant/24h/12h/3h); daily emails Day 1-3 enviados; show rate monitorado (target >70%, throughput >28%); social proof publicado em todos canais (screenshots/testimonials/numbers/FOMO); ads vencedores escalados com data; retargeting agressivo ativo (quick reminder/social proof/deadline/new bonus); revenue tracking atualizado — avaliacao QUALITATIVA de execucao + metrica de RUNTIME (show rate, vendas), NUNCA veto (ADR-002; 'Show rate <50% -> WARNING' :507 e 'Vendas 70% abaixo -> WARNING' :602 sao metricas de runtime coletadas ao vivo, nao asercoes estaticas)" }
30
+ veto:
31
+ assertions:
32
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convencao de conformidade do pod (ancora)" }
33
+
34
+ - id: launch-fechamento
35
+ agent: conversion-copywriter
36
+ template: templates/launch-fechamento-tmpl.md
37
+ inputs: [launch-execution]
38
+ outputs: [launch-close]
39
+ knowledge: [launch-email.md, pages.md]
40
+ depends_on: [launch-execucao]
41
+ checkpoint: { blocking: true, criteria: "Deadline warning emails enviados na sequencia de urgencia (48h/24h/12h/6h/1h + cart close — recap de valor -> social proof -> objection handling -> ultima testemunha -> urgencia pura); objection handling scripts prontos para as objecoes comuns (preco 'e muito caro' / timing 'nao e o momento' / need_to_think 'preciso pensar' / spouse 'falar com parceiro'); final push calls executados (ligar para leads quentes nao convertidos com o script de push); carrinho fechado no horario pontualmente; revenue final contabilizado (mais receita nas ultimas 48h que nos 5 dias anteriores) — avaliacao QUALITATIVA de execucao + estado de RUNTIME (pedidos pendentes), NUNCA veto (ADR-002; 'Carrinho fechou com pedidos pendentes -> WARNING' :739 e estado operacional de runtime, nao asercao estatica)" }
42
+ veto:
43
+ assertions:
44
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convencao de conformidade do pod (ancora)" }
45
+
46
+ - id: launch-pos
47
+ agent: monetization-architect
48
+ template: templates/launch-pos-tmpl.md
49
+ inputs: [launch-close]
50
+ outputs: [launch-postlaunch]
51
+ knowledge: [retention-ltv.md, growth-decision.md]
52
+ depends_on: [launch-fechamento]
53
+ checkpoint: { blocking: true, criteria: "Todos os compradores em onboarding (welcome sequence D0/D1/D3/D7: login+primeiro passo -> quick win -> check-in -> review primeira semana); non-buyers em nurture (sequence D1/D7/D14/D30: agradecer -> free resource -> social proof dos compradores -> soft CTA proximo launch); post-launch analysis documentado (metrics revenue total/no vendas/ticket medio/conversion rate/show rate/close rate; channel performance email/ads/organic; learnings o-que-funcionou/nao-funcionou/surpresas); improvements para o proximo lancamento identificados (melhorias/manter/testar) — avaliacao QUALITATIVA de execucao (a retencao comeca no onboarding), NUNCA veto (ADR-002; 'Onboarding nao iniciado -> BLOCK' :862 e consistencia qualitativa de execucao, nao asercao estatica). Checkpoint FINAL (etapa sink, sem dependentes)." }
54
+ veto:
55
+ assertions:
56
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convencao de conformidade do pod (ancora)" }
@@ -0,0 +1,11 @@
1
+ {
2
+ "_note": "Sidecar de smoke do wf-grand-slam-offer (SF1.5 fix round, ADR-005). Exerce o débito #2 da SF1.3 contra pod real. target_step = monetization-architect (etapa do meio, veto default confianca). 3a = falta a seção '## Ancoragem' (forma falha, veto passa). 3b = todas as seções + confianca: incerta (forma passa, SÓ o veto falha) — agora CONSTRUÍVEL porque o veto é ORTOGONAL ao template (ADR-005). offer-engineer traz '## Value Stack' com 5+ itens (veto de domínio count_gte, fonte legado VT1-005).",
3
+ "target_step": "monetization-architect",
4
+ "artifacts": {
5
+ "offer-engineer": "## Diagnóstico — Equação de Valor\nDream outcome alto, probabilidade percebida alta, tempo e esforço baixos.\n\n## Value Stack\n- Programa central de 8 semanas\n- Acompanhamento semanal em grupo\n- Biblioteca de receitas e treinos\n- Comunidade de apoio\n- Garantia de resultado\n\n## Garantia\nGarantia condicional de 30 dias com reversão total de risco.\n\n## Escassez e Urgência\nTurma limitada a 40 alunas, inscrições até sexta (escassez real).\n\nconfianca: alta\n",
6
+ "monetization-architect": "## Money Model\nGMMM 4 estágios: atração, upsell, downsell, continuidade.\n\n## Pricing\nR$ 2.000 à vista ou 12x; anchor de stack >= 3x preço.\n\n## Ancoragem\nValor percebido do stack ancorado em R$ 8.000.\n\nconfianca: alta\n",
7
+ "conversion-copywriter": "## Nome da Oferta (MAGICO)\nMétodo Corpo-Leve em 8 Semanas.\n\n## Headline\nEmagreça sem dieta maluca — ou seu dinheiro de volta.\n\n## Copy do Value Stack\nTudo isso (R$ 8.000 em valor) por só R$ 2.000.\n\n## Copy da Garantia\n30 dias: siga o método e, se não perder medidas, devolvemos 100%.\n\nconfianca: media\n"
8
+ },
9
+ "template_violation": "## Money Model\nGMMM 4 estágios.\n\n## Pricing\nR$ 2.000 à vista ou 12x.\n\nconfianca: alta\n",
10
+ "veto_violation": "## Money Model\nGMMM 4 estágios.\n\n## Pricing\nR$ 2.000 à vista ou 12x.\n\n## Ancoragem\nValor ancorado em R$ 8.000.\n\nconfianca: incerta\n"
11
+ }
@@ -0,0 +1,45 @@
1
+ # wf-grand-slam-offer.yaml — gerado por forge-generate.cjs (SF1.4).
2
+ # Contrato: templates/workflow-tmpl.yaml. Validador: scripts/validate-pod-workflow.cjs.
3
+
4
+ state_machine:
5
+ states: [init, running, review, complete, failed]
6
+ initial: init
7
+ terminal: [complete, failed]
8
+
9
+ steps:
10
+ - id: offer-engineer
11
+ agent: offer-engineer
12
+ template: templates/offer-engineer-tmpl.md
13
+ inputs: [brief]
14
+ outputs: [offer-package]
15
+ knowledge: [value-equation-diagnostic.md, grand-slam-offer.md]
16
+ depends_on: []
17
+ checkpoint: null
18
+ veto:
19
+ assertions:
20
+ - { type: count_gte, field: "Value Stack", n: 5 }
21
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$" }
22
+
23
+ - id: monetization-architect
24
+ agent: monetization-architect
25
+ template: templates/monetization-architect-tmpl.md
26
+ inputs: [offer-package]
27
+ outputs: [money-model-pricing]
28
+ knowledge: [money-model.md, pricing.md]
29
+ depends_on: [offer-engineer]
30
+ checkpoint: null
31
+ veto:
32
+ assertions:
33
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$" }
34
+
35
+ - id: conversion-copywriter
36
+ agent: conversion-copywriter
37
+ template: templates/conversion-copywriter-tmpl.md
38
+ inputs: [money-model-pricing]
39
+ outputs: [sales-copy]
40
+ knowledge: [grand-slam-offer.md, pages.md, swipefiles-curados.md]
41
+ depends_on: [monetization-architect]
42
+ checkpoint: { blocking: true, criteria: "revisão da etapa final aprovada" }
43
+ veto:
44
+ assertions:
45
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$" }
@@ -0,0 +1,9 @@
1
+ {
2
+ "_comment": "Cenário de smoke do wf-lead-magnet-pipeline (SF5.1 F2a, AUTORADO junto da spec — lição 1 SF3.4). 'artifacts' = artefato CONFORME por etapa (caminho feliz): seções ## + campo de máquina 'confianca' (fora dos headings, ADR-005). O sweep --sweep DERIVA as violações (3a por etapa: seção removida; 3b por assertion: violação mais forte por forma — count_gte 'Hooks' n:10 → 9 itens reais sob '## Hooks de Distribuicao'; field_matches → confianca presente fora do pattern) a partir destes conformes + template + spec. target_step = lm-distribuicao (onde vive o veto de domínio count_gte Hooks n:10). O conforme de lm-distribuicao traz 10 hooks (>= 10 passa; sweep deriva 9 → bloqueia).",
3
+ "target_step": "lm-distribuicao",
4
+ "artifacts": {
5
+ "lm-estrategia": "## Avatar e Problema\n- Avatar: donas de academia de crossfit boutique, 30-45 anos\n- Problema #1: churn alto nos primeiros 90 dias de novos alunos\n- Linguagem do avatar: 'meus alunos somem depois do primeiro mes'\n\n## Core Four e Regra de 100\n- Canal primario: Conteudo organico (Instagram)\n- Canal secundario: Warm Outreach (alunos atuais)\n- Regra de 100: 100 acoes/dia (50 stories/comentarios + 50 DMs)\n\n## Lead Magnet\n- Tipo: Checklist (LM_001)\n- Promessa: '7 habitos que mantem alunos de crossfit por 12+ meses'\n- Estrutura: 1 pagina, 7 itens acionaveis\n- Nome: 'O Checklist Anti-Churn do Box: 7 Pontos que Retem Alunos por 1 Ano'\n\nconfianca: alta\n",
6
+ "lm-copy": "## Landing Page\n- Headline: 'Pare de perder alunos no primeiro mes'\n- Subheadline: 'O checklist que boxes de alta retencao usam'\n- Bullets: 3 beneficios especificos\n- Form: nome + email\n- CTA: 'BAIXAR CHECKLIST GRATIS'\n\n## Email de Entrega\n- Subject: 'Seu Checklist Anti-Churn esta aqui'\n- Delivery: link direto para download\n- Quick win: comece pelo ponto #3\n\n## Sequencia de Nurture\n- Email 1 (dia 1): confirmacao de download\n- Email 2 (dia 2): o erro #1 que boxes cometem\n- Email 3 (dia 4): case de retencao\n- Email 4 (dia 6): pergunta de engajamento\n- Email 5 (dia 8): transicao para a oferta principal\n\nconfianca: alta\n",
7
+ "lm-distribuicao": "## Hooks de Distribuicao\n- Levei 2 anos pra descobrir por que alunos somem. Voce recebe em 5 minutos.\n- 7 pontos que separam boxes cheios de boxes vazios\n- Seu box perde aluno no primeiro mes? Provavelmente falta isso.\n- Como retive 90% dos alunos com um checklist simples\n- O erro que quase todo box comete no onboarding\n- Free: o checklist que uso em todo aluno novo\n- Para de adivinhar por que os alunos saem. Aqui esta o que funciona.\n- 3 dos 7 pontos ninguem te conta\n- A diferenca entre R$5k e R$20k de mensalidade recorrente\n- Retencao nao e sorte: e um checklist de 7 pontos\n\n## Plano Core Four e Calendario\n- Conteudo: 1 post/dia (Instagram carousel + reels)\n- Warm outreach: 20 DMs/dia para alunos atuais pedindo indicacao\n- Calendario Rule of 100: 30 dias mapeados\n- Templates de outreach: 3 scripts (referral, direct share, value first)\n\n## Lancamento e Otimizacao\n- Launch checklist: publicar landing + ativar distribuicao\n- Tracking: views, conversion rate, open rate\n- Otimizacao: se conversion < 25%, testar headline\n\nconfianca: alta\n"
8
+ }
9
+ }
@@ -0,0 +1,45 @@
1
+ # wf-lead-magnet-pipeline.yaml — gerado por forge-generate.cjs (SF1.4).
2
+ # Contrato: templates/workflow-tmpl.yaml. Validador: scripts/validate-pod-workflow.cjs.
3
+
4
+ state_machine:
5
+ states: [init, running, review, complete, failed]
6
+ initial: init
7
+ terminal: [complete, failed]
8
+
9
+ steps:
10
+ - id: lm-estrategia
11
+ agent: acquisition-strategist
12
+ template: templates/lm-estrategia-tmpl.md
13
+ inputs: [brief]
14
+ outputs: [lm-strategy]
15
+ knowledge: [core-four-leads.md]
16
+ depends_on: []
17
+ checkpoint: { blocking: true, criteria: "Avatar ESPECÍFICO (não genérico como 'empreendedores') com problema #1 na linguagem do avatar; promessa do lead magnet específica (resultado + prazo); lead magnet conecta com a oferta principal — avaliação QUALITATIVA/julgamento humano, NUNCA veto (fronteira ADR-002; booleano auto-declarado seria green falso)" }
18
+ veto:
19
+ assertions:
20
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora wf-grand-slam-offer.yaml step acquisition-strategist); ortogonal e derivável (valor presente fora do pattern)" }
21
+
22
+ - id: lm-copy
23
+ agent: conversion-copywriter
24
+ template: templates/lm-copy-tmpl.md
25
+ inputs: [lm-strategy]
26
+ outputs: [lm-content]
27
+ knowledge: [pages.md, launch-email.md]
28
+ depends_on: [lm-estrategia]
29
+ checkpoint: { blocking: true, criteria: "Lead magnet com formatação profissional; landing page com hook acima da dobra; sequência de nutrição com 5 emails cobrindo consumo→educação→prova→engajamento→transição para oferta — completude/qualidade QUALITATIVA (julgamento humano), NUNCA veto (ADR-002)" }
30
+ veto:
31
+ assertions:
32
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora)" }
33
+
34
+ - id: lm-distribuicao
35
+ agent: acquisition-strategist
36
+ template: templates/lm-distribuicao-tmpl.md
37
+ inputs: [lm-content]
38
+ outputs: [lm-distribution]
39
+ knowledge: [hooks-and-ads.md, core-four-leads.md]
40
+ depends_on: [lm-copy]
41
+ checkpoint: { blocking: true, criteria: "Conversion rate da landing page saudável (benchmark 30-35%; abaixo de 15% → otimizar) e leads sendo gerados nos primeiros 7 dias — MÉTRICA DE RUNTIME (não design-time), avaliação humana, NUNCA veto (ADR-002; '0 leads em 7 dias' é HALT operacional, não asserção estática)" }
42
+ veto:
43
+ assertions:
44
+ - { type: count_gte, field: Hooks, n: 10, _sources: "wf-lead-magnet-pipeline.yaml:629-630 (CP_PHASE_2: 'Menos de 10 hooks → BLOCK - Insuficiente para teste de mensagens') — VETO DE DOMÍNIO, machine-redutível a count_gte, ortogonal (forma da seção presente, contagem independente), derivável pelo sweep (9 itens reais → bloqueia)" }
45
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora)" }
@@ -0,0 +1,11 @@
1
+ {
2
+ "_comment": "Cenário de smoke do wf-money-model-design (SF3.4 F2a, AUTORADO junto da spec — B.1). 'artifacts' = artefato CONFORME por etapa (caminho feliz): seções ## + campo de máquina 'confianca' (fora dos headings, ADR-005). O sweep --sweep DERIVA as violações (3a por etapa: seção removida; 3b por assertion: violação mais forte por forma — count_gte→4 itens reais sob '## Ofertas', field_matches→confianca presente fora do pattern) a partir destes conformes + template + spec. target_step = mm-arquitetura (onde vive o veto de domínio count_gte Ofertas n:5). DRAFT de staging — a F2 real do ciclo roda o sweep completo (3a×etapas + 3b×assertions).",
3
+ "target_step": "mm-arquitetura",
4
+ "artifacts": {
5
+ "mm-diagnostico": "## Dados Financeiros\n- CAC: 120\n- Ticket medio: 400\n- Churn mensal: 4%\n- LTV atual: 900\n- Billing cycle: mensal\n\n## Health Check\n- LTGP:CAC: 3.2\n- 30-day CAC recovery: sim\n\nconfianca: alta\n",
6
+ "mm-arquitetura": "## Ofertas\n- Attraction: tripwire 50\n- Upsell 1: core 500\n- Upsell 2: premium 2000\n- Downsell: plano parcelado 200\n- Continuity: membership 99/mes\n\n## Sequencia GMMM\nGet Money -> More Money -> Max Money mapeada em fluxograma\n\n## Unit Economics\nLTGP:CAC projetado: 3.5\n30-day cash flow: positivo\n\nconfianca: alta\n",
7
+ "mm-copy": "## Copy Upsell\nCopy da pagina de upsell da oferta core.\n\n## Copy Downsell\nCopy do downsell parcelado para quem diz nao.\n\n## Apresentacao\nSequencia de apresentacao das ofertas mapeada.\n\nconfianca: alta\n"
8
+ },
9
+ "template_violation": "## Dados Financeiros\n- CAC: 120\n\nconfianca: alta\n",
10
+ "veto_violation": "## Ofertas\n- Attraction: tripwire 50\n- Upsell 1: core 500\n- Downsell: plano parcelado 200\n- Continuity: membership 99/mes\n\n## Sequencia GMMM\nGet -> More -> Max\n\n## Unit Economics\nLTGP:CAC projetado: 3.5\n\nconfianca: alta\n"
11
+ }
@@ -0,0 +1,45 @@
1
+ # wf-money-model-design.yaml — gerado por forge-generate.cjs (SF1.4).
2
+ # Contrato: templates/workflow-tmpl.yaml. Validador: scripts/validate-pod-workflow.cjs.
3
+
4
+ state_machine:
5
+ states: [init, running, review, complete, failed]
6
+ initial: init
7
+ terminal: [complete, failed]
8
+
9
+ steps:
10
+ - id: mm-diagnostico
11
+ agent: monetization-architect
12
+ template: templates/mm-diagnostico-tmpl.md
13
+ inputs: [brief]
14
+ outputs: [mm-diagnosis]
15
+ knowledge: [money-model.md, retention-ltv.md, scale-roadmap.md]
16
+ depends_on: []
17
+ checkpoint: null
18
+ veto:
19
+ assertions:
20
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora wf-grand-slam-offer.yaml step monetization-architect); ortogonal e derivável (valor presente fora do pattern)" }
21
+
22
+ - id: mm-arquitetura
23
+ agent: monetization-architect
24
+ template: templates/mm-arquitetura-tmpl.md
25
+ inputs: [mm-diagnosis]
26
+ outputs: [mm-architecture]
27
+ knowledge: [money-model.md, retention-ltv.md, scale-roadmap.md]
28
+ depends_on: [mm-diagnostico]
29
+ checkpoint: { blocking: true, criteria: "LTGP:CAC >= 3:1 E 30-day cash flow positivo — avaliação ARITMÉTICA/julgamento humano, NUNCA veto (fronteira ADR-002; booleano auto-declarado seria green falso)" }
30
+ veto:
31
+ assertions:
32
+ - { type: count_gte, field: Ofertas, n: 5, _sources: "wf-money-model-design.yaml:521-522 (CP_PHASE_1: 'Menos de 5 ofertas no total → BLOCK') — VETO DE DOMÍNIO, machine-redutível a count_gte, ortogonal (forma presente, contagem independente), derivável pelo sweep (4 itens reais → bloqueia)" }
33
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora)" }
34
+
35
+ - id: mm-copy
36
+ agent: conversion-copywriter
37
+ template: templates/mm-copy-tmpl.md
38
+ inputs: [mm-architecture]
39
+ outputs: [mm-copy]
40
+ knowledge: [pages.md, money-model.md]
41
+ depends_on: [mm-arquitetura]
42
+ checkpoint: { blocking: true, criteria: "Validação final 8/8 (VAL_001-008): LTGP:CAC>=3:1, 30-day cash flow+, 5+ ofertas, continuity presente, ancoragem 3x+, downsell, copy completa, sequência mapeada — PHASE-4 dobrada no checkpoint final (métricas aritméticas → checkpoint, não veto)" }
43
+ veto:
44
+ assertions:
45
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora)" }
@@ -0,0 +1,9 @@
1
+ {
2
+ "_comment": "Cenario de smoke do wf-paid-ads-campaign (SF5.2 F2a, AUTORADO junto da spec). 'artifacts' = artefato CONFORME por etapa (caminho feliz): secoes ## + campo de maquina 'confianca' (fora dos headings, ADR-005). O conforme de paid-criativos traz 50 hooks (>= 50 passa; sweep deriva 49 -> bloqueia count_gte Hooks n:50) e 150 combinacoes (>= 150 passa; sweep deriva 149 -> bloqueia count_gte Combinacoes n:150). O sweep --sweep DERIVA as violacoes (3a por etapa: secao removida; 3b por assertion: count_gte -> n-1 itens; field_matches -> confianca fora do pattern). target_step = paid-criativos (onde vivem os 2 vetos de dominio count_gte).",
3
+ "target_step": "paid-criativos",
4
+ "artifacts": {
5
+ "paid-fundacao": "## Oferta e Matematica\n- Grand Slam Offer (WF-1): \"Implantes All-on-4 com sorriso fixo em 24h — garantia de 10 anos ou refazemos\"\n- CAC maximo: R$800 (margem R$2.400 por caso) — CAC >= budget minimo por ad set (R$50/dia)\n- Break-even: 3 dias\n- Budget teste: R$8.000 (10x CPA alvo de R$800)\n- Margem pos-ads: 34% (>= 20%)\n\n## Competidores\n- 10 clinicas analisadas na regiao via Meta Ad Library\n- Padrao: preco na primeira linha, sem prova social de casos reais\n- Gap explorado: nenhuma usa video de paciente real pos-cirurgia\n\n## Avatar Cirurgico\n- Dor #1: vergonha de sorrir e dificuldade de mastigar (dentadura solta)\n- Linguagem exata: \"quero voltar a comer o que eu gosto\"\n- Awareness (Eugene Schwartz): niveis 2-3 (Problem/Solution-Aware)\n- Poder de compra: 45-65 anos, classe B, parcelamento em 24x\n\nconfianca: alta\n",
6
+ "paid-criativos": "## Hooks\n- [Unaware] O perigo escondido na sua dentadura solta que ninguem te conta (variacao 1)\n- [Problem-Aware] Cansado de esconder o sorriso nas fotos? (variacao 1)\n- [Solution-Aware] Voltar a comer picanha aos 60: e possivel com implante fixo (variacao 1)\n- [Product-Aware] Por que dentadura removivel sempre incomoda (e a alternativa) (variacao 1)\n- [Most Aware] A razao #1 por que idosos desistem do implante (e como evitar) (variacao 1)\n- [Unaware] Implante All-on-4: sorriso fixo em 24h (variacao 2)\n- [Problem-Aware] Veja o antes/depois de 200 pacientes de implante (variacao 2)\n- [Solution-Aware] O jeito mais rapido de recuperar a mastigacao completa (variacao 2)\n- [Product-Aware] Sua dentadura cai na hora de falar? Existe solucao definitiva (variacao 2)\n- [Most Aware] Como colocar dentes fixos sem passar por enxerto osseo (variacao 2)\n- [Unaware] O perigo escondido na sua dentadura solta que ninguem te conta (variacao 3)\n- [Problem-Aware] Cansado de esconder o sorriso nas fotos? (variacao 3)\n- [Solution-Aware] Voltar a comer picanha aos 60: e possivel com implante fixo (variacao 3)\n- [Product-Aware] Por que dentadura removivel sempre incomoda (e a alternativa) (variacao 3)\n- [Most Aware] A razao #1 por que idosos desistem do implante (e como evitar) (variacao 3)\n- [Unaware] Implante All-on-4: sorriso fixo em 24h (variacao 4)\n- [Problem-Aware] Veja o antes/depois de 200 pacientes de implante (variacao 4)\n- [Solution-Aware] O jeito mais rapido de recuperar a mastigacao completa (variacao 4)\n- [Product-Aware] Sua dentadura cai na hora de falar? Existe solucao definitiva (variacao 4)\n- [Most Aware] Como colocar dentes fixos sem passar por enxerto osseo (variacao 4)\n- [Unaware] O perigo escondido na sua dentadura solta que ninguem te conta (variacao 5)\n- [Problem-Aware] Cansado de esconder o sorriso nas fotos? (variacao 5)\n- [Solution-Aware] Voltar a comer picanha aos 60: e possivel com implante fixo (variacao 5)\n- [Product-Aware] Por que dentadura removivel sempre incomoda (e a alternativa) (variacao 5)\n- [Most Aware] A razao #1 por que idosos desistem do implante (e como evitar) (variacao 5)\n- [Unaware] Implante All-on-4: sorriso fixo em 24h (variacao 6)\n- [Problem-Aware] Veja o antes/depois de 200 pacientes de implante (variacao 6)\n- [Solution-Aware] O jeito mais rapido de recuperar a mastigacao completa (variacao 6)\n- [Product-Aware] Sua dentadura cai na hora de falar? Existe solucao definitiva (variacao 6)\n- [Most Aware] Como colocar dentes fixos sem passar por enxerto osseo (variacao 6)\n- [Unaware] O perigo escondido na sua dentadura solta que ninguem te conta (variacao 7)\n- [Problem-Aware] Cansado de esconder o sorriso nas fotos? (variacao 7)\n- [Solution-Aware] Voltar a comer picanha aos 60: e possivel com implante fixo (variacao 7)\n- [Product-Aware] Por que dentadura removivel sempre incomoda (e a alternativa) (variacao 7)\n- [Most Aware] A razao #1 por que idosos desistem do implante (e como evitar) (variacao 7)\n- [Unaware] Implante All-on-4: sorriso fixo em 24h (variacao 8)\n- [Problem-Aware] Veja o antes/depois de 200 pacientes de implante (variacao 8)\n- [Solution-Aware] O jeito mais rapido de recuperar a mastigacao completa (variacao 8)\n- [Product-Aware] Sua dentadura cai na hora de falar? Existe solucao definitiva (variacao 8)\n- [Most Aware] Como colocar dentes fixos sem passar por enxerto osseo (variacao 8)\n- [Unaware] O perigo escondido na sua dentadura solta que ninguem te conta (variacao 9)\n- [Problem-Aware] Cansado de esconder o sorriso nas fotos? (variacao 9)\n- [Solution-Aware] Voltar a comer picanha aos 60: e possivel com implante fixo (variacao 9)\n- [Product-Aware] Por que dentadura removivel sempre incomoda (e a alternativa) (variacao 9)\n- [Most Aware] A razao #1 por que idosos desistem do implante (e como evitar) (variacao 9)\n- [Unaware] Implante All-on-4: sorriso fixo em 24h (variacao 10)\n- [Problem-Aware] Veja o antes/depois de 200 pacientes de implante (variacao 10)\n- [Solution-Aware] O jeito mais rapido de recuperar a mastigacao completa (variacao 10)\n- [Product-Aware] Sua dentadura cai na hora de falar? Existe solucao definitiva (variacao 10)\n- [Most Aware] Como colocar dentes fixos sem passar por enxerto osseo (variacao 10)\n\n## Meats e CTAs\n- Meat 1 (Demonstration): cirurgia guiada mostrada passo a passo, 24h ate o dente fixo\n- Meat 2 (Testimonial): paciente real comendo maca 1 semana pos-cirurgia\n- Meat 3 (Education): 3 mitos sobre implante que assustam sem razao\n- Meat 4 (Story): a historia da dona Marta que voltou a sorrir no casamento da neta\n- CTA 1: \"Agende sua avaliacao 3D gratuita\"\n- CTA 2: \"Fale no WhatsApp e receba o plano de tratamento\"\n- CTA 3: \"Simule seu sorriso agora\"\n\n## Combinacoes e Assets\n- Ad 001: Hook 1 x Meat 1 x CTA 1\n- Ad 002: Hook 1 x Meat 1 x CTA 2\n- Ad 003: Hook 1 x Meat 1 x CTA 3\n- Ad 004: Hook 1 x Meat 2 x CTA 1\n- Ad 005: Hook 1 x Meat 2 x CTA 2\n- Ad 006: Hook 1 x Meat 2 x CTA 3\n- Ad 007: Hook 1 x Meat 3 x CTA 1\n- Ad 008: Hook 1 x Meat 3 x CTA 2\n- Ad 009: Hook 1 x Meat 3 x CTA 3\n- Ad 010: Hook 1 x Meat 4 x CTA 1\n- Ad 011: Hook 1 x Meat 4 x CTA 2\n- Ad 012: Hook 1 x Meat 4 x CTA 3\n- Ad 013: Hook 2 x Meat 1 x CTA 1\n- Ad 014: Hook 2 x Meat 1 x CTA 2\n- Ad 015: Hook 2 x Meat 1 x CTA 3\n- Ad 016: Hook 2 x Meat 2 x CTA 1\n- Ad 017: Hook 2 x Meat 2 x CTA 2\n- Ad 018: Hook 2 x Meat 2 x CTA 3\n- Ad 019: Hook 2 x Meat 3 x CTA 1\n- Ad 020: Hook 2 x Meat 3 x CTA 2\n- Ad 021: Hook 2 x Meat 3 x CTA 3\n- Ad 022: Hook 2 x Meat 4 x CTA 1\n- Ad 023: Hook 2 x Meat 4 x CTA 2\n- Ad 024: Hook 2 x Meat 4 x CTA 3\n- Ad 025: Hook 3 x Meat 1 x CTA 1\n- Ad 026: Hook 3 x Meat 1 x CTA 2\n- Ad 027: Hook 3 x Meat 1 x CTA 3\n- Ad 028: Hook 3 x Meat 2 x CTA 1\n- Ad 029: Hook 3 x Meat 2 x CTA 2\n- Ad 030: Hook 3 x Meat 2 x CTA 3\n- Ad 031: Hook 3 x Meat 3 x CTA 1\n- Ad 032: Hook 3 x Meat 3 x CTA 2\n- Ad 033: Hook 3 x Meat 3 x CTA 3\n- Ad 034: Hook 3 x Meat 4 x CTA 1\n- Ad 035: Hook 3 x Meat 4 x CTA 2\n- Ad 036: Hook 3 x Meat 4 x CTA 3\n- Ad 037: Hook 4 x Meat 1 x CTA 1\n- Ad 038: Hook 4 x Meat 1 x CTA 2\n- Ad 039: Hook 4 x Meat 1 x CTA 3\n- Ad 040: Hook 4 x Meat 2 x CTA 1\n- Ad 041: Hook 4 x Meat 2 x CTA 2\n- Ad 042: Hook 4 x Meat 2 x CTA 3\n- Ad 043: Hook 4 x Meat 3 x CTA 1\n- Ad 044: Hook 4 x Meat 3 x CTA 2\n- Ad 045: Hook 4 x Meat 3 x CTA 3\n- Ad 046: Hook 4 x Meat 4 x CTA 1\n- Ad 047: Hook 4 x Meat 4 x CTA 2\n- Ad 048: Hook 4 x Meat 4 x CTA 3\n- Ad 049: Hook 5 x Meat 1 x CTA 1\n- Ad 050: Hook 5 x Meat 1 x CTA 2\n- Ad 051: Hook 5 x Meat 1 x CTA 3\n- Ad 052: Hook 5 x Meat 2 x CTA 1\n- Ad 053: Hook 5 x Meat 2 x CTA 2\n- Ad 054: Hook 5 x Meat 2 x CTA 3\n- Ad 055: Hook 5 x Meat 3 x CTA 1\n- Ad 056: Hook 5 x Meat 3 x CTA 2\n- Ad 057: Hook 5 x Meat 3 x CTA 3\n- Ad 058: Hook 5 x Meat 4 x CTA 1\n- Ad 059: Hook 5 x Meat 4 x CTA 2\n- Ad 060: Hook 5 x Meat 4 x CTA 3\n- Ad 061: Hook 6 x Meat 1 x CTA 1\n- Ad 062: Hook 6 x Meat 1 x CTA 2\n- Ad 063: Hook 6 x Meat 1 x CTA 3\n- Ad 064: Hook 6 x Meat 2 x CTA 1\n- Ad 065: Hook 6 x Meat 2 x CTA 2\n- Ad 066: Hook 6 x Meat 2 x CTA 3\n- Ad 067: Hook 6 x Meat 3 x CTA 1\n- Ad 068: Hook 6 x Meat 3 x CTA 2\n- Ad 069: Hook 6 x Meat 3 x CTA 3\n- Ad 070: Hook 6 x Meat 4 x CTA 1\n- Ad 071: Hook 6 x Meat 4 x CTA 2\n- Ad 072: Hook 6 x Meat 4 x CTA 3\n- Ad 073: Hook 7 x Meat 1 x CTA 1\n- Ad 074: Hook 7 x Meat 1 x CTA 2\n- Ad 075: Hook 7 x Meat 1 x CTA 3\n- Ad 076: Hook 7 x Meat 2 x CTA 1\n- Ad 077: Hook 7 x Meat 2 x CTA 2\n- Ad 078: Hook 7 x Meat 2 x CTA 3\n- Ad 079: Hook 7 x Meat 3 x CTA 1\n- Ad 080: Hook 7 x Meat 3 x CTA 2\n- Ad 081: Hook 7 x Meat 3 x CTA 3\n- Ad 082: Hook 7 x Meat 4 x CTA 1\n- Ad 083: Hook 7 x Meat 4 x CTA 2\n- Ad 084: Hook 7 x Meat 4 x CTA 3\n- Ad 085: Hook 8 x Meat 1 x CTA 1\n- Ad 086: Hook 8 x Meat 1 x CTA 2\n- Ad 087: Hook 8 x Meat 1 x CTA 3\n- Ad 088: Hook 8 x Meat 2 x CTA 1\n- Ad 089: Hook 8 x Meat 2 x CTA 2\n- Ad 090: Hook 8 x Meat 2 x CTA 3\n- Ad 091: Hook 8 x Meat 3 x CTA 1\n- Ad 092: Hook 8 x Meat 3 x CTA 2\n- Ad 093: Hook 8 x Meat 3 x CTA 3\n- Ad 094: Hook 8 x Meat 4 x CTA 1\n- Ad 095: Hook 8 x Meat 4 x CTA 2\n- Ad 096: Hook 8 x Meat 4 x CTA 3\n- Ad 097: Hook 9 x Meat 1 x CTA 1\n- Ad 098: Hook 9 x Meat 1 x CTA 2\n- Ad 099: Hook 9 x Meat 1 x CTA 3\n- Ad 100: Hook 9 x Meat 2 x CTA 1\n- Ad 101: Hook 9 x Meat 2 x CTA 2\n- Ad 102: Hook 9 x Meat 2 x CTA 3\n- Ad 103: Hook 9 x Meat 3 x CTA 1\n- Ad 104: Hook 9 x Meat 3 x CTA 2\n- Ad 105: Hook 9 x Meat 3 x CTA 3\n- Ad 106: Hook 9 x Meat 4 x CTA 1\n- Ad 107: Hook 9 x Meat 4 x CTA 2\n- Ad 108: Hook 9 x Meat 4 x CTA 3\n- Ad 109: Hook 10 x Meat 1 x CTA 1\n- Ad 110: Hook 10 x Meat 1 x CTA 2\n- Ad 111: Hook 10 x Meat 1 x CTA 3\n- Ad 112: Hook 10 x Meat 2 x CTA 1\n- Ad 113: Hook 10 x Meat 2 x CTA 2\n- Ad 114: Hook 10 x Meat 2 x CTA 3\n- Ad 115: Hook 10 x Meat 3 x CTA 1\n- Ad 116: Hook 10 x Meat 3 x CTA 2\n- Ad 117: Hook 10 x Meat 3 x CTA 3\n- Ad 118: Hook 10 x Meat 4 x CTA 1\n- Ad 119: Hook 10 x Meat 4 x CTA 2\n- Ad 120: Hook 10 x Meat 4 x CTA 3\n- Ad 121: Hook 11 x Meat 1 x CTA 1\n- Ad 122: Hook 11 x Meat 1 x CTA 2\n- Ad 123: Hook 11 x Meat 1 x CTA 3\n- Ad 124: Hook 11 x Meat 2 x CTA 1\n- Ad 125: Hook 11 x Meat 2 x CTA 2\n- Ad 126: Hook 11 x Meat 2 x CTA 3\n- Ad 127: Hook 11 x Meat 3 x CTA 1\n- Ad 128: Hook 11 x Meat 3 x CTA 2\n- Ad 129: Hook 11 x Meat 3 x CTA 3\n- Ad 130: Hook 11 x Meat 4 x CTA 1\n- Ad 131: Hook 11 x Meat 4 x CTA 2\n- Ad 132: Hook 11 x Meat 4 x CTA 3\n- Ad 133: Hook 12 x Meat 1 x CTA 1\n- Ad 134: Hook 12 x Meat 1 x CTA 2\n- Ad 135: Hook 12 x Meat 1 x CTA 3\n- Ad 136: Hook 12 x Meat 2 x CTA 1\n- Ad 137: Hook 12 x Meat 2 x CTA 2\n- Ad 138: Hook 12 x Meat 2 x CTA 3\n- Ad 139: Hook 12 x Meat 3 x CTA 1\n- Ad 140: Hook 12 x Meat 3 x CTA 2\n- Ad 141: Hook 12 x Meat 3 x CTA 3\n- Ad 142: Hook 12 x Meat 4 x CTA 1\n- Ad 143: Hook 12 x Meat 4 x CTA 2\n- Ad 144: Hook 12 x Meat 4 x CTA 3\n- Ad 145: Hook 13 x Meat 1 x CTA 1\n- Ad 146: Hook 13 x Meat 1 x CTA 2\n- Ad 147: Hook 13 x Meat 1 x CTA 3\n- Ad 148: Hook 13 x Meat 2 x CTA 1\n- Ad 149: Hook 13 x Meat 2 x CTA 2\n- Ad 150: Hook 13 x Meat 2 x CTA 3\n- Assets necessarios: 4 gravacoes de paciente, 12 fotos antes/depois, B-roll da clinica\n\nconfianca: alta\n",
7
+ "paid-teste-escala": "## Configuracao e Testes\n- Round 1 (Hooks): 48h, budget R$100/dia por ad set, testar top 20 hooks\n- Round 2 (Meat): 72h, testar 3 formatos com o hook vencedor\n- Estrutura: CBO, 1 campanha, 5 ad sets (Advantage+ audience)\n\n## Kill Decisions\n- Kill bottom 50% por CTR apos 1.000 impressoes\n- Identificar top 3 hooks por CPA\n- Realocar budget dos mortos para os vencedores (track -> lose -> print money)\n\n## Escala e Producao Semanal\n- Scale readiness: nunca escalar sem 100 conversoes; ROAS >3x por 7 dias seguidos; CPA estavel por 500+ conversoes; frequencia <3\n- Estrategia de scale: vertical (+20% budget/48h) + horizontal (novas audiencias)\n- Otimizacao semanal: revisar frequencia, refresh criativo, day-parting se madrugada fraca\n- Producao semanal: 150 novos ads/semana pelo processo de Ad Assembly\n\nconfianca: alta\n"
8
+ }
9
+ }
@@ -0,0 +1,46 @@
1
+ # wf-paid-ads-campaign.yaml — gerado por forge-generate.cjs (SF1.4).
2
+ # Contrato: templates/workflow-tmpl.yaml. Validador: scripts/validate-pod-workflow.cjs.
3
+
4
+ state_machine:
5
+ states: [init, running, review, complete, failed]
6
+ initial: init
7
+ terminal: [complete, failed]
8
+
9
+ steps:
10
+ - id: paid-fundacao
11
+ agent: acquisition-strategist
12
+ template: templates/paid-fundacao-tmpl.md
13
+ inputs: [brief]
14
+ outputs: [paid-foundation]
15
+ knowledge: [hooks-and-ads.md]
16
+ depends_on: []
17
+ checkpoint: { blocking: true, criteria: "Grand Slam Offer validada (WF-1 output existe — PRECONDIÇÃO, não asserção estática); matemática fundamental viável (CAC máximo >= budget mínimo por ad set, break-even definido, budget teste = 10x CPA, margem pós-ads >= 20%); 10 competidores analisados; avatar cirúrgico com linguagem exata e nível de awareness — avaliação QUALITATIVA + ARITMÉTICA de runtime, NUNCA veto (fronteira ADR-002; 'CAC < budget' e 'margem < 20%' são comparações de runtime, 'oferta não existe' é precondição)" }
18
+ veto:
19
+ assertions:
20
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora wf-grand-slam-offer.yaml step); ortogonal e derivável (valor presente fora do pattern)" }
21
+
22
+ - id: paid-criativos
23
+ agent: acquisition-strategist
24
+ template: templates/paid-criativos-tmpl.md
25
+ inputs: [paid-foundation]
26
+ outputs: [paid-creatives]
27
+ knowledge: [hooks-and-ads.md, swipefiles-curados.md]
28
+ depends_on: [paid-fundacao]
29
+ checkpoint: { blocking: true, criteria: "Distribuição de hooks em todos os 5 níveis de awareness (não 100% num único nível) seguindo 70-20-10; swipe file de referência documentado; congruência landing page × ad verificada — avaliação QUALITATIVA (julgamento humano), NUNCA veto (ADR-002; '100% num awareness level' e 'landing não match' são congruência qualitativa; os BLOCKs machine 'Menos de 50 hooks'/'Menos de 150 combinações' vivem nos vetos count_gte)" }
30
+ veto:
31
+ assertions:
32
+ - { type: count_gte, field: Hooks, n: 50, _sources: "wf-paid-ads-campaign.yaml:371 (CP_PHASE_1: 'Menos de 50 hooks → BLOCK - Volume insuficiente para teste') — VETO DE DOMÍNIO, machine-redutível a count_gte, ortogonal (forma da seção presente, contagem independente), derivável pelo sweep (49 itens → bloqueia)" }
33
+ - { type: count_gte, field: Combinacoes, n: 150, _sources: "wf-paid-ads-campaign.yaml:564 (CP_PHASE_2: 'Menos de 150 combinações → BLOCK - Volume insuficiente para teste') — VETO DE DOMÍNIO count_gte (50 Hooks × 3-5 Meats × 1-3 CTAs = 150-750 combinações, :388), machine-redutível, ortogonal, derivável pelo sweep (149 itens → bloqueia)" }
34
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora)" }
35
+
36
+ - id: paid-teste-escala
37
+ agent: acquisition-strategist
38
+ template: templates/paid-teste-escala-tmpl.md
39
+ inputs: [paid-creatives]
40
+ outputs: [paid-test-scale]
41
+ knowledge: [hooks-and-ads.md, scale-roadmap.md]
42
+ depends_on: [paid-criativos]
43
+ checkpoint: { blocking: true, criteria: "Rounds de teste executados (hooks e meats testados) com top performers identificados e kill decisions aplicadas; scale readiness validado (nunca escalar sem 100 conversões; ROAS >3x por 7 dias; CPA estável por 500+ conversões; frequência <3); estratégia de scale definida (vertical/horizontal/surfing) e sistema de produção semanal documentado — MÉTRICAS DE RUNTIME (CTR >1%, CPA vs target, 100 conversões, ROAS) que dependem de campanha ao vivo, avaliação humana, NUNCA veto (ADR-002; 'Nenhum ad com CTR >1%' e 'Menos de 100 conversões' são HALT operacionais de runtime, não asserções estáticas)" }
44
+ veto:
45
+ assertions:
46
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convenção de conformidade do pod (âncora)" }
@@ -0,0 +1,11 @@
1
+ {
2
+ "_comment": "Cenario de smoke do wf-scaling-diagnostic (SF5.3 F2a; sidecar AUTORADO junto da spec, B.1). 'artifacts' = artefato CONFORME por etapa (caminho feliz): secoes ## + campo de maquina 'confianca' (fora dos headings, ADR-005). Nicho canario FIXADO pela story: agencia de marketing de performance B2B (15 clientes, gargalo em delivery). Este legado NAO tem veto de dominio count_gte (so field_matches confianca) — o --sweep deriva 6 provas: 3a por etapa (1 secao obrigatoria do template removida) + 3b por assertion (field_matches -> confianca fora do pattern), 3 etapas x 2. target_step = scaling-diagnostico (1a etapa, onde vive o unico veto ortogonal da etapa). A F2 real do ciclo roda o --sweep completo; runs vivas + par --artifact-map = coordenadora/Daniel.",
3
+ "target_step": "scaling-diagnostico",
4
+ "artifacts": {
5
+ "scaling-diagnostico": "## Snapshot Financeiro\n- Revenue anual: R$3.6M (15 clientes B2B, fee medio R$20k/mes)\n- Margem de lucro liquido: 18% (abaixo do saudavel >20% por overdelivery)\n- CAC: R$12.000 (ciclo de vendas B2B longo, 3 calls + proposta)\n- LTV: R$240.000 (retencao media 12 meses x fee)\n- Churn mensal: 3,5% (cancela quando resultado atrasa)\n- Numero de funcionarios: 14 (8 em delivery, 3 em vendas, 3 em gestao)\n- Revenue por funcionario: R$257k\n\n## Estagio e Benchmarks\n- Estagio identificado: 4 ($1M-$3M, Build Team) — revenue R$3.6M ja tangencia o estagio 5, mas a estrutura ainda e founder-dependente\n- LTV:CAC: 20:1 (muito saudavel, >3:1) — aquisicao NAO e o gargalo\n- Margem: 18% (warning, 10-20%) — abaixo do alvo do estagio por custo de delivery\n- Revenue/funcionario R$257k vs alvo $1M-$3M (~R$250k+): no benchmark, mas estagnado\n\n## Gargalo e Causas\n- Gargalo principal (Constraint Chain): ENTREGA/CAPACIDADE — nao leads nem conversao\n- Sintoma percebido pelo founder: \"preciso de mais vendedores\" (FALSO — pipeline ja excede a capacidade de entregar)\n- Causa real: delivery sem processo/SOP, cada projeto reinventado, founder revisa tudo (bottleneck humano)\n- Evidencia: 3,5% de churn concentrado em contas cujo onboarding passou de 30 dias\n\nconfianca: alta\n",
6
+ "scaling-priorizacao": "## O Que Funciona\n- Canal de aquisicao por indicacao B2B (ROI positivo, CAC efetivo menor que outbound)\n- Vertical fixada (SaaS B2B) — case studies convertem por semelhanca\n- Retencao acima de 12 meses quando o onboarding fecha em <30 dias\n\n## More e Better\n- MORE: dobrar o programa de indicacao (funciona e nao consome capacidade de delivery)\n- MORE: contratar 1 delivery lead senior para replicar o founder (o gargalo e capacidade, nao demanda)\n- BETTER: documentar o playbook de onboarding (fix do churn de contas lentas)\n- BETTER: templatizar entregaveis recorrentes (relatorios, dashboards) para liberar horas seniores\n\n## New Avaliado\n- NEW canal outbound pago: DESPRIORIZADO — adicionar demanda antes de resolver capacidade agrava o gargalo (anti-pattern NEW->BETTER->MORE)\n- NEW vertical (e-commerce): DESPRIORIZADO — diluiria os case studies que hoje convertem; so apos delivery sistematizado\n\nconfianca: alta\n",
7
+ "scaling-roadmap": "## Priorizacao ICE\n- Documentar playbook de onboarding: ICE (9+8+7)/3 = 8,0 → fazer imediatamente\n- Contratar delivery lead senior: ICE (9+7+5)/3 = 7,0 → prioridade alta\n- Dobrar programa de indicacao: ICE (7+8+8)/3 = 7,7 → prioridade alta\n- Templatizar entregaveis: ICE (6+8+7)/3 = 7,0 → prioridade alta\n- Outbound pago novo: ICE (5+4+4)/3 = 4,3 → desprioritizar (abaixo de 6)\n\n## Roadmap 90 Dias\n- Mes 1 (quick wins + foundational): escrever o playbook de onboarding; setup de tracking de tempo por conta; fix do gargalo de capacidade critico\n- Mes 2 (aceleracao): contratar e treinar o delivery lead; escalar indicacao com o que funcionou no M1\n- Mes 3 (otimizacao + planejamento): templatizar entregaveis, revisar se o gargalo se moveu (capacidade -> talvez conversao), planejar proximo quarter\n\n## Metricas e Recursos\n- KPIs: onboarding medio <30 dias; margem de lucro 18% -> 25%; churn 3,5% -> 2%; revenue/funcionario R$257k -> R$300k\n- Recursos: 1 delivery lead senior (R$18k/mes); 40h do founder no M1 para o playbook; R$0 de midia nova (foco em capacidade)\n- Escala de time (3Ds documentar->delegar): founder documenta o processo de review e delega a revisao ao delivery lead ate M3\n\nconfianca: alta\n"
8
+ },
9
+ "template_violation": "## Snapshot Financeiro\n- Revenue anual: R$3.6M\n\n## Gargalo e Causas\n- Gargalo: entrega/capacidade\n\nconfianca: alta\n",
10
+ "veto_violation": "## Snapshot Financeiro\n- Revenue anual: R$3.6M\n\n## Estagio e Benchmarks\n- Estagio 4 ($1M-$3M)\n\n## Gargalo e Causas\n- Gargalo: entrega/capacidade\n\nconfianca: altissima\n"
11
+ }
@@ -0,0 +1,44 @@
1
+ # wf-scaling-diagnostic.yaml — gerado por forge-generate.cjs (SF1.4).
2
+ # Contrato: templates/workflow-tmpl.yaml. Validador: scripts/validate-pod-workflow.cjs.
3
+
4
+ state_machine:
5
+ states: [init, running, review, complete, failed]
6
+ initial: init
7
+ terminal: [complete, failed]
8
+
9
+ steps:
10
+ - id: scaling-diagnostico
11
+ agent: monetization-architect
12
+ template: templates/scaling-diagnostico-tmpl.md
13
+ inputs: [brief]
14
+ outputs: [scaling-diagnosis]
15
+ knowledge: [scale-roadmap.md, retention-ltv.md]
16
+ depends_on: []
17
+ checkpoint: { blocking: true, criteria: "Snapshot financeiro coletado (Revenue anual, margem de lucro, CAC, LTV, churn mensal, no de funcionarios, revenue por funcionario); estrutura atual mapeada (time, processos, canais); revenue classificado por estagio; desafios percebidos listados; estagio atual identificado com evidencias e comparado aos benchmarks (LTV:CAC saudavel >3:1, margem >20%, revenue/funcionario por estagio); bottleneck principal identificado pela Constraint Chain (leads/conversao/entrega/capacidade) e sintomas separados de causas — avaliacao QUALITATIVA + coleta de DADOS de runtime (os numeros do negocio vem do founder), NUNCA veto (fronteira ADR-002; 'Estagio inconsistente com metricas -> BLOCK' :317 e consistencia qualitativa, nao asercao estatica)" }
18
+ veto:
19
+ assertions:
20
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convencao de conformidade do pod (ancora wf-grand-slam-offer.yaml step); ortogonal e derivavel (valor presente fora do pattern)" }
21
+
22
+ - id: scaling-priorizacao
23
+ agent: monetization-architect
24
+ template: templates/scaling-priorizacao-tmpl.md
25
+ inputs: [scaling-diagnosis]
26
+ outputs: [scaling-priorities]
27
+ knowledge: [growth-decision.md, scale-roadmap.md]
28
+ depends_on: [scaling-diagnostico]
29
+ checkpoint: { blocking: true, criteria: "O que funciona identificado (canais/atividades com ROI positivo); oportunidades MORE listadas (fazer mais do que ja funciona — dobrar budget de ads que funcionam, mais vendedores, mais conteudo no canal que converte); oportunidades BETTER listadas (melhorar execucao — scripts, landing pages, treinamento); NEW avaliado criticamente (novo so quando MORE e BETTER esgotados — anti-pattern do founder que faz NEW->BETTER->MORE ao contrario do certo MORE->BETTER->NEW) — priorizacao QUALITATIVA (julgamento estrategico), NUNCA veto (ADR-002; CP_PHASE_2 :422-430 nao tem veto_conditions)" }
30
+ veto:
31
+ assertions:
32
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convencao de conformidade do pod (ancora)" }
33
+
34
+ - id: scaling-roadmap
35
+ agent: monetization-architect
36
+ template: templates/scaling-roadmap-tmpl.md
37
+ inputs: [scaling-priorities]
38
+ outputs: [scaling-roadmap]
39
+ knowledge: [scale-roadmap.md]
40
+ depends_on: [scaling-priorizacao]
41
+ checkpoint: { blocking: true, criteria: "Acoes priorizadas com ICE Score (Impact+Confidence+Ease)/3, above_8 fazer imediatamente / below_4 desprioritizar; 90-day roadmap criado (M1 quick wins + foundational, M2 aceleracao/scale, M3 otimizacao + avaliar NEW + planejar proximo quarter); metricas de sucesso (KPIs) definidas por acao; recursos necessarios mapeados (pessoas, tempo, dinheiro) com escala de time documentar->delegar (3Ds) e conselho especifico por estagio — avaliacao QUALITATIVA (julgamento de priorizacao/planejamento), NUNCA veto (ADR-002; CP_PHASE_3 :559-567 nao tem veto_conditions)" }
42
+ veto:
43
+ assertions:
44
+ - { type: field_matches, field: confianca, pattern: "^(alta|media|baixa)$", _sources: "convencao de conformidade do pod (ancora)" }
@@ -0,0 +1,53 @@
1
+ # squad-forge — a fábrica de pods
2
+
3
+ Pod que cria novos pods, agentes e skills para problemas de negócio reais, sempre no padrão POWER CLAUDE: entry point ≤150 linhas, conhecimento profundo em `knowledge/` ou `pods/<pod>/`, `budget_tokens` declarado como gate de CI.
4
+
5
+ ## Agentes
6
+
7
+ | Agente | Papel | Comandos |
8
+ |---|---|---|
9
+ | `forge-chief` | Orquestrador do pipeline de criação | `*new`, `*discovery`, `*gates`, `*register` |
10
+ | `mind-extractor` | Extração de DNA de voz/pensamento de um corpus | `*extract`, `*validate`, `*update` |
11
+ | `pod-critic` | Red-team interno — reprova por default | `*review`, `*overlap` |
12
+
13
+ ## Pipeline de 5 fases
14
+
15
+ ```
16
+ 1. Discovery → job-to-be-done, comandos, conhecimento, onde vive [G1]
17
+ 2. Research/DNA → corpus → voice/thinking DNA com evidência por fonte
18
+ 3. Geração → entry point + knowledge files + stub de command [G2]
19
+ 4. Gates → validate-budgets + smoke test + red-team [G2-G4]
20
+ 5. Registro → destino decidido, command criado, pods/README [G5]
21
+ ```
22
+
23
+ Detalhes, inputs/outputs e gates: `pods/squad-forge/tasks/pipeline.md`.
24
+
25
+ ## Regra de granularidade
26
+
27
+ **A maioria dos agentes novos deve nascer como COMANDO de um pod existente, não como pod novo.** Árvore de decisão:
28
+
29
+ ```
30
+ O job cabe num comando de agente existente?
31
+ ├── SIM → novo *comando + task/knowledge file. FIM.
32
+ └── NÃO → Exige persona/critério de qualidade próprio?
33
+ ├── NÃO → ainda é comando. FIM.
34
+ └── SIM → O job-to-be-done pertence a um pod existente?
35
+ ├── SIM → novo AGENTE dentro desse pod. FIM.
36
+ └── NÃO → é um job novo, recorrente e com ≥2 agentes claros?
37
+ ├── SIM → POD NOVO (exceção — exige aprovação do pod-critic).
38
+ └── NÃO → não crie nada; resolva ad hoc e observe recorrência.
39
+ ```
40
+
41
+ Custo cresce por camada: comando (barato) → agente (médio) → pod (caro, mantém README, tasks, registro). Sempre comece pela camada mais barata.
42
+
43
+ ## Política de mentes
44
+
45
+ - **Mente de referência default:** o próprio usuário — `knowledge/voice-dna/`. Todo conteúdo dirigido a público usa essa voz.
46
+ - **Personas de terceiros:** só com **fonte pública e citada** (livros, artigos, palestras publicadas). Cada traço no DNA carrega a evidência de origem; traço sem evidência entra como `confidence: low`.
47
+ - Proibido: clonar pessoa privada, usar material não publicado, ou afirmar traço sem citação verificável.
48
+
49
+ ## Regras transversais (herdadas de pods/README.md)
50
+
51
+ - Nenhum agente nasce sem `budget_tokens`; `scripts/validate-budgets.js` é o gate.
52
+ - Conhecimento profundo nunca vive no entry point.
53
+ - Todo artefato criado passa por red-team (`pod-critic *review`) antes de registrar.
@@ -0,0 +1,31 @@
1
+ ---
2
+ name: forge-chief
3
+ description: "Orquestra a criação de novos pods, agentes e skills no padrão POWER CLAUDE. Use para: criar um agente para um problema de negócio, decidir se algo vira comando/agente/pod, rodar quality gates num agente, registrar um agente novo no sistema."
4
+ model: sonnet
5
+ budget_tokens: 1200
6
+ ---
7
+
8
+ # forge-chief — orquestrador da fábrica de pods
9
+
10
+ ## Papel
11
+
12
+ Você conduz o pipeline que transforma "quero um agente de X" em um artefato registrado no padrão POWER CLAUDE. Seu critério de qualidade: o artefato final passa nos 5 gates (G1-G5) de `pods/squad-forge/tasks/pipeline.md` sem exceção. Você orquestra; a extração de DNA é do `mind-extractor` e o red-team é do `pod-critic` — nunca aprove o próprio trabalho.
13
+
14
+ ## Comandos
15
+
16
+ - `*new {descrição}` → `pods/squad-forge/tasks/pipeline.md` — roda o pipeline completo (Discovery → Research/DNA → Geração → Gates → Registro) a partir de um pedido como "quero um agente/pod de X". Cada fase só avança com o gate anterior fechado. Na Geração, o **tier** (SIMPLE vs STANDARD/COMPLEX) decide o aparato: SIMPLE não recebe workflow/squad-io/memória obrigatórios; STANDARD/COMPLEX recebe o pacote completo (`node scripts/forge-generate.cjs`).
17
+ - `*upgrade-pod {pod}` → `pods/squad-forge/tasks/pipeline.md` (seção `*upgrade-pod`) — formaliza um pod EXISTENTE em v0.3 SEM regenerar do zero: `*assess` de tier → gera artefatos ausentes proporcionais → **reconciliação workflow-aware BOUNDED** (só remover auto-sequenciamento + escopar output à etapa) → validador estático → smoke → `pod-critic` → registro. Preserva os agentes validados; se um agente exige mais que o bound (reescrever papel/comandos), recomenda `*new` para ELE, sem forçar. Motor: `node scripts/forge-upgrade-pod.cjs`.
18
+ - `*discovery` → `pods/squad-forge/tasks/pipeline.md` (Fase 1) — entrevista o solicitante: (1) job-to-be-done em uma frase; (2) comandos necessários e o que cada um entrega; (3) conhecimento que consome (existe? onde? precisa de DNA?); (4) onde vive — aplicar a árvore de decisão comando vs agente vs pod de `pods/squad-forge/README.md`; (5) se clona um especialista, PERGUNTAR a forma — **persona completa** (voice DNA; informar o trade-off de custo maior por ativação) ou **só metodologias** (otimizado, default do pod). Output: brief de escopo (fecha G1).
19
+ - `*gates {caminho-do-agente}` → `pods/squad-forge/tasks/pipeline.md` (Fase 4) — roda os quality gates num agente existente: `node scripts/validate-budgets.js` (G2), smoke test dos comandos declarados (G3), e delega `pod-critic *review` (G4). Reporta cada gate com PASS/FAIL e a correção necessária.
20
+ - `*register {artefato}` → `pods/squad-forge/tasks/pipeline.md` (Fase 5) — decide e executa o destino: comando de pod existente (default), agente novo em pod existente, ou pod novo (exceção). Cria o stub de command em `.claude/commands/power/` (≤15 linhas, description com "Use para:") e adiciona a linha em `pods/README.md`.
21
+ - `*migrate-squad {squad}` → `pods/squad-forge/tasks/pipeline.md` (F0-F3) — migra um squad legado a pod v0.3 encadeando os motores provados: F0 inventário → F1 triagem que PARA no Daniel → F2 loop por workflow aprovado → F3 proposta. NUNCA edita o manifest direto (só subcomandos), faz `git rm` ou ingesta memória automática. Use para: aposentar um squad, migrar workflows com paridade.
22
+ - `*ingest-memory {pod} --source "<fonte citada>" --trigger "<gatilho>" --recommendation "<rec>"` → `node scripts/forge-ingest-memory.cjs` — ingesta uma lição EXTERNA na memória de um pod, OPT-IN e MANUAL; **NUNCA por fluxo automático**, fonte citada obrigatória. Dedup M1 + restrição em `knowledge/memory-ingest.md`.
23
+
24
+ ## Regras de ouro
25
+
26
+ - NUNCA gerar agente sem `budget_tokens` declarado no frontmatter — sem orçamento, sem merge.
27
+ - NUNCA embutir conhecimento profundo no entry point: conteúdo vai para `knowledge/` ou `pods/<pod>/` e carrega sob demanda por comando.
28
+ - Smoke test é obrigatório ANTES de registrar: agente que pede arquivo inexistente não registra.
29
+ - Toda `description` de agente e de command termina com "Use para:" + 3-4 casos concretos — sem isso a descoberta por linguagem natural falha.
30
+ - Default é a camada mais barata: comando > agente > pod. Pod novo só com aprovação explícita do `pod-critic`.
31
+ - Clone de especialista: o USUÁRIO escolhe a forma (persona vs só metodologias) e você informa o custo antes de gerar. Em ambas, metodologia SEMPRE com fonte citada — nunca fingir a pessoa real emitindo conselho novo.
@@ -0,0 +1,29 @@
1
+ ---
2
+ name: mind-extractor
3
+ description: "Extrai DNA de voz e de pensamento a partir de um corpus (artigos, transcrições, posts) e o valida contra o material original. Use para: criar voice DNA de um corpus, validar um DNA gerando amostras comparáveis, atualizar um DNA com material novo."
4
+ model: sonnet
5
+ budget_tokens: 1200
6
+ ---
7
+
8
+ # mind-extractor — extração de DNA de voz e pensamento
9
+
10
+ ## Papel
11
+
12
+ Você transforma um corpus de textos em um YAML de DNA: padrões de voz (vocabulário, ritmo, estruturas recorrentes, aberturas/fechamentos) e de pensamento (frameworks, heurísticas, posições, o que a pessoa recusa). Seu critério de qualidade: cada traço afirmado é rastreável a um trecho citável do corpus — DNA sem evidência é ficção, e ficção contamina todo agente que o consumir.
13
+
14
+ ## Comandos
15
+
16
+ - `*extract {caminho-do-corpus}` → gera o YAML de DNA. Processo: (1) inventariar os arquivos do corpus com origem de cada um; (2) SOURCE-AUDIT pré-extração: classificar CADA fonte `ouro|bronze` com `evidence:` e emitir o bloco `source_audit:` (rubrica e formato: `knowledge/source-audit-rubric.yaml`, lazy-load) — ZERO ouro → `source_verdict: blocked`, RECUSAR a extração (fail-loud); (3) extrair traços por dimensão — voz (léxico, sintaxe, tom, bordões), pensamento (frameworks, crenças, antipatia declarada), formato (estruturas de post/artigo); (4) para CADA traço, registrar `evidence:` com arquivo-fonte e citação curta; (5) atribuir `confidence: high|medium|low` conforme ocorrências independentes — traço derivado de fonte bronze nasce `confidence: low`, com sinalização; (6) se forma=persona, PRÉ-checar a Trindade (ver Regras de ouro); (7) rodar `node scripts/validate-source-audit.cjs <output>` sobre o próprio bloco — auto-checagem de FORMA; se falhar, corrija o bloco (nunca o script). Output default: `knowledge/voice-dna/{slug}-dna.yaml`.
17
+ - `*validate {caminho-do-dna}` → testa o DNA: gera 3 amostras curtas (ex.: abertura de post, parágrafo de opinião, resposta a objeção) usando somente o DNA, e compara lado a lado com trechos reais do corpus. Reporta: traços reproduzidos, traços que soaram genéricos, e ajustes propostos no YAML. Se forma=persona, RE-checar a Trindade e o bloco `source_audit:` do DNA antes de validar. Um DNA que produz texto "de IA genérica" reprova.
18
+ - `*update {caminho-do-dna} {material-novo}` → incorpora corpus novo ao DNA existente: extrai traços do material novo, marca conflitos com traços antigos (a pessoa mudou de posição?), atualiza `confidence` e `evidence`, e registra a data e a fonte da atualização no próprio YAML.
19
+ - `*fidelity-score {caminho-do-dna}` → (SÓ forma=persona) score ponderado de fidelidade das 8 camadas do DNA Mental. Lazy-load `knowledge/fidelity-rubric.yaml`; para CADA camada, julga 1-5 com `evidence:` (trecho citável do corpus) OU `insufficient_data` quando não há dado citável (nunca estimativa); aplica os pesos da rubrica (Observable ×0.8, Cognitive/Deep ×1.0); média ponderada SÓ sobre camadas scored (`insufficient_data` fora do denominador); classifica em `threshold`/`maturity` pelas `threshold_bands`. Emite o bloco `fidelity_score:` no formato `output_contract:` da rubrica e, como passo final, roda `node scripts/validate-fidelity-output.cjs <output>` sobre o próprio output — auto-checagem de honestidade aritmética; se falhar, corrija o bloco (nunca o script).
20
+
21
+ ## Regras de ouro
22
+
23
+ - Só afirmar traço com evidência citável: todo item do YAML tem `evidence:` apontando arquivo-fonte e trecho.
24
+ - Campo sem evidência direta entra obrigatoriamente com `confidence: low` — nunca silenciosamente como fato.
25
+ - Corpus de terceiros exige fonte PÚBLICA citada (título, autor, onde foi publicado); material privado de terceiros é recusado.
26
+ - A mente de referência default é o próprio usuário (`knowledge/voice-dna/`); DNA de terceiros é exceção justificada, nunca default.
27
+ - Nunca inventar traço para "completar" uma dimensão vazia: dimensão sem dados fica marcada como `insufficient_data`.
28
+ - Gate por escolha do usuário: `*fidelity-score` e a Trindade só operam quando a forma do clone é PERSONA; DNA "só metodologias" (default) não dispara nenhum dos dois — sem voz/persona não há fidelidade a medir.
29
+ - Trindade (só forma=persona): em `*extract` e `*validate`, emitir bloco `trindade:` com `playbook`/`framework`/`swipe_file` (`status: present|missing` + `evidence:` do corpus), `verdict: complete|blocked`, `missing:[...]`, `recommendation:`. PROIBIDO emitir veredito `approved`/`validated` com qualquer componente `missing` → `verdict: blocked` e recomende completar antes (heurística AN003; definição em `knowledge/fidelity-rubric.yaml`).
@@ -0,0 +1,26 @@
1
+ ---
2
+ name: pod-critic
3
+ description: "Red-team interno da fábrica de pods: reprova por default e só aprova artefato que sobrevive à crítica. Use para: revisar um agente ou pod recém-criado antes do registro, varrer pods/ em busca de redundâncias e sobreposições, dar o veredito do gate G4."
4
+ model: opus
5
+ budget_tokens: 1200
6
+ ---
7
+
8
+ # pod-critic — o adversário interno
9
+
10
+ ## Papel
11
+
12
+ Você é o adversário do pipeline: seu trabalho é encontrar o motivo pelo qual o artefato NÃO deveria existir ou NÃO deveria passar. Modelo opus justificado: revisão adversarial exige raciocínio crítico profundo (regra de model routing de `pods/README.md`). Seu critério de qualidade: nenhuma aprovação sem verificação independente — você lê os arquivos e roda os gates você mesmo; o relato do gerador não é evidência.
13
+
14
+ ## Comandos
15
+
16
+ - `*review {caminho-do-agente-ou-pod}` → red-team completo do artefato. Checklist mínimo: (1) **budget** — rodar `node scripts/validate-budgets.js` e conferir o frontmatter você mesmo; (2) **sobreposição** — comparar o job-to-be-done com os pods/agentes existentes em `pods/` e nos commands de `.claude/commands/`; (3) **descrição que não dispara** — a `description` tem "Use para:" com casos que um usuário real digitaria? Simule 3 pedidos e verifique se disparariam este agente e não outro; (4) **conhecimento embutido no entry** — o corpo contém conteúdo que deveria viver em `knowledge/` ou `pods/<pod>/`?; (5) **comandos sem destino** — cada `*comando` aponta para arquivo que EXISTE (verificar com `ls`, não confiar); (6) **clone de especialista** — a forma (persona vs só metodologias) foi escolhida pelo usuário com o custo informado, e cada metodologia cita a fonte (nenhuma persona fingindo conselho novo da pessoa real). Veredito: REPROVADO (default) ou APROVADO, sempre com a lista de correções.
17
+ - **Gate G6 estendido (só pods STANDARD/COMPLEX) — 7 itens que se SOMAM ao checklist acima:** (7) **workflow seguível** — rode você mesmo `node scripts/validate-pod-workflow.cjs <wf>` (estático) E o smoke dinâmico (SF1.3) e exija **4/4** (ativação, caminho feliz, e as DUAS classes de bloqueio); presença de `wf-*.yaml` não conta como seguível; (8) **templates** — existe 1 `templates/<etapa>-tmpl.md` por etapa e cada um casa com os `outputs` declarados no workflow; (9) **handoffs** — `squad-io.yaml` fecha inputs↔outputs sem órfãos; (10) **reconciliação** (quando `*upgrade-pod`) — foi feita e ficou DENTRO do bound (só remover auto-sequenciamento + escopar output); agente que exigiria mais deve ter recebido recomendação de `*new`, não reconciliação forçada; (11) **memória (SF2.3)** — verifique você mesmo os 3 pontos de `pods/squad-forge/knowledge/g6-memory-check.md`: scaffold proporcional ao tier, memória OPERANTE (consolidado curado por `pod-memory.cjs`), watcher EXECUTÁVEL (`watcher-audit.cjs` audita aderência, não resumo); (12) **anti-persona (regra 3/E.2)** — compare cada agente/template novo contra o legado do par exato da tabela 16→N do manifest (grão de comando) e reprove voz, 1ª pessoa do mind, bordões ou cópia em bloco que o `validate-no-clone.cjs` não pega, e metodologia sem `Fonte:`; (13) **anti-autoatestado (regra de ouro 7)** — score/veredito/confiança que o pod emite sobre o próprio trabalho exige validador pareado (script de forma OU checkpoint humano); sem evidência, `insufficient_data` — nunca estimar; `confianca`-only em STANDARD/COMPLEX → apontar (dívida ADR-005). Qualquer um dos 7 falhando → REPROVADO.
18
+ - `*overlap` → varredura de redundância: ler os READMEs e as descriptions de todos os `pods/*/agents/*.md`, mapear jobs-to-be-done e apontar pares com sobreposição (mesmo job, comandos duplicados, knowledge duplicado). Output: tabela par → sobreposição → recomendação (fundir, demover a comando, ou manter com fronteira explícita).
19
+
20
+ ## Regras de ouro
21
+
22
+ - Default é REPROVAR: o ônus da prova é do artefato, não do crítico. Aprovação exige justificar por que cada item do checklist passou.
23
+ - Toda crítica vem com correção acionável (arquivo + mudança concreta) — crítica sem caminho de correção é ruído.
24
+ - Verificação sempre independente: ler os arquivos, rodar `validate-budgets.js`, listar destinos dos comandos. No gate G6, rodar VOCÊ MESMO `validate-pod-workflow.cjs` e o smoke sobre os artefatos gerados. NUNCA aceitar "o gerador disse que passa" — relato não é evidência.
25
+ - Pod novo é exceção cara: só aprovar se a árvore de granularidade de `pods/squad-forge/README.md` foi percorrida e documentada no brief.
26
+ - Aprovação é explícita e registrada: sem um "APROVADO" seu por escrito, o gate G4 está aberto e o registro (G5) é bloqueado.