@luanpdd/kit-mcp 1.30.2 → 1.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +168 -168
  3. package/gates/agent-no-recursive-dispatch.md +84 -82
  4. package/kit/COMANDOS.md +138 -138
  5. package/kit/README.md +76 -76
  6. package/kit/agents/advisor-researcher.md +107 -106
  7. package/kit/agents/ai-mutation-tester.md +1 -0
  8. package/kit/agents/assumptions-analyzer.md +108 -107
  9. package/kit/agents/audit-log-implementer.md +314 -313
  10. package/kit/agents/auditor-consistencia-isolamento.md +414 -413
  11. package/kit/agents/b2b-saas-architect.md +157 -156
  12. package/kit/agents/burn-rate-forecaster.md +1 -0
  13. package/kit/agents/cascading-failures-auditor.md +299 -298
  14. package/kit/agents/codebase-mapper.md +769 -768
  15. package/kit/agents/crm-pipeline-implementer.md +257 -256
  16. package/kit/agents/debugger.md +814 -813
  17. package/kit/agents/detector-tenant-quente.md +338 -337
  18. package/kit/agents/evolution-go-integrator.md +201 -200
  19. package/kit/agents/example-reviewer.md +22 -21
  20. package/kit/agents/executor.md +565 -564
  21. package/kit/agents/golden-signals-instrumenter.md +1 -0
  22. package/kit/agents/incident-investigator.md +1 -0
  23. package/kit/agents/integration-checker.md +201 -200
  24. package/kit/agents/invite-flow-implementer.md +190 -189
  25. package/kit/agents/legacy-characterizer.md +369 -368
  26. package/kit/agents/lgpd-compliance-auditor.md +296 -295
  27. package/kit/agents/load-shedding-instrumenter.md +1 -0
  28. package/kit/agents/multi-tenant-isolation-auditor.md +254 -253
  29. package/kit/agents/multi-tenant-rls-writer.md +341 -340
  30. package/kit/agents/nyquist-auditor.md +179 -178
  31. package/kit/agents/observability-coverage-auditor.md +316 -315
  32. package/kit/agents/observability-instrumenter.md +1 -0
  33. package/kit/agents/omm-auditor.md +1 -0
  34. package/kit/agents/org-onboarding-implementer.md +224 -223
  35. package/kit/agents/payload-capture-instrumenter.md +274 -273
  36. package/kit/agents/phase-researcher.md +697 -696
  37. package/kit/agents/plan-checker.md +273 -272
  38. package/kit/agents/planner.md +923 -922
  39. package/kit/agents/postmortem-writer.md +1 -0
  40. package/kit/agents/project-researcher.md +653 -652
  41. package/kit/agents/prr-conductor.md +1 -0
  42. package/kit/agents/refactor-safety-auditor.md +405 -404
  43. package/kit/agents/release-pipeline-auditor.md +1 -0
  44. package/kit/agents/research-synthesizer.md +246 -245
  45. package/kit/agents/roadmapper.md +678 -677
  46. package/kit/agents/schema-checker.md +1 -0
  47. package/kit/agents/seam-finder.md +360 -359
  48. package/kit/agents/shotgun-surgery-detector.md +350 -349
  49. package/kit/agents/slo-engineer.md +1 -0
  50. package/kit/agents/storytelling-analyst.md +1 -0
  51. package/kit/agents/supabase-architect.md +1 -0
  52. package/kit/agents/supabase-auth-bootstrapper.md +1 -0
  53. package/kit/agents/supabase-branching-architect.md +563 -562
  54. package/kit/agents/supabase-cicd-pipeline-implementer.md +778 -777
  55. package/kit/agents/supabase-column-privileges-writer.md +400 -399
  56. package/kit/agents/supabase-edge-fn-tester.md +2 -1
  57. package/kit/agents/supabase-edge-fn-writer.md +2 -1
  58. package/kit/agents/supabase-migration-writer.md +386 -385
  59. package/kit/agents/supabase-rbac-implementer.md +393 -392
  60. package/kit/agents/supabase-realtime-implementer.md +364 -363
  61. package/kit/agents/supabase-rls-hardener.md +522 -521
  62. package/kit/agents/supabase-rls-writer.md +324 -323
  63. package/kit/agents/supabase-roles-implementer.md +356 -355
  64. package/kit/agents/supabase-storage-implementer.md +1 -0
  65. package/kit/agents/super-admin-implementer.md +282 -281
  66. package/kit/agents/toil-auditor.md +1 -0
  67. package/kit/agents/ui-auditor.md +438 -437
  68. package/kit/agents/ui-checker.md +303 -302
  69. package/kit/agents/ui-researcher.md +356 -355
  70. package/kit/agents/user-profiler.md +176 -175
  71. package/kit/agents/validador-evolucao-schema.md +336 -335
  72. package/kit/agents/verifier.md +729 -728
  73. package/kit/commands/adicionar-backlog.md +75 -75
  74. package/kit/commands/adicionar-fase.md +42 -42
  75. package/kit/commands/adicionar-tarefa.md +45 -45
  76. package/kit/commands/adicionar-testes.md +41 -41
  77. package/kit/commands/ajuda.md +21 -21
  78. package/kit/commands/atualizar.md +37 -37
  79. package/kit/commands/auditar-cascading.md +111 -111
  80. package/kit/commands/auditar-marco.md +179 -179
  81. package/kit/commands/auditar-observabilidade-cobertura.md +183 -183
  82. package/kit/commands/auditar-refactor.md +219 -219
  83. package/kit/commands/auditar-release.md +109 -109
  84. package/kit/commands/auditar-uat.md +23 -23
  85. package/kit/commands/autonomo.md +40 -40
  86. package/kit/commands/branch-pr.md +24 -24
  87. package/kit/commands/burn-rate-status.md +408 -408
  88. package/kit/commands/capturar-payloads.md +193 -193
  89. package/kit/commands/caracterizar.md +212 -212
  90. package/kit/commands/concluir-marco.md +247 -247
  91. package/kit/commands/configuracoes.md +36 -36
  92. package/kit/commands/dados-distribuidos.md +188 -188
  93. package/kit/commands/definir-perfil.md +10 -10
  94. package/kit/commands/depurar.md +190 -190
  95. package/kit/commands/detectar-duplicacao.md +197 -197
  96. package/kit/commands/discutir-fase.md +131 -131
  97. package/kit/commands/encontrar-seams.md +136 -136
  98. package/kit/commands/entrar-discord.md +17 -17
  99. package/kit/commands/estatisticas.md +18 -18
  100. package/kit/commands/example-greeting.md +33 -33
  101. package/kit/commands/executar-fase.md +58 -58
  102. package/kit/commands/expresso.md +56 -56
  103. package/kit/commands/fase-ui.md +34 -34
  104. package/kit/commands/fazer.md +57 -57
  105. package/kit/commands/fio.md +125 -125
  106. package/kit/commands/fluxos-trabalho.md +64 -64
  107. package/kit/commands/forense.md +176 -176
  108. package/kit/commands/gerenciador.md +38 -38
  109. package/kit/commands/inserir-fase.md +31 -31
  110. package/kit/commands/legacy.md +263 -263
  111. package/kit/commands/limpeza.md +17 -17
  112. package/kit/commands/listar-hipoteses-fase.md +45 -45
  113. package/kit/commands/listar-workspaces.md +18 -18
  114. package/kit/commands/load-shedding.md +117 -117
  115. package/kit/commands/mapear-codebase.md +70 -70
  116. package/kit/commands/multi-tenant.md +163 -163
  117. package/kit/commands/nota.md +33 -33
  118. package/kit/commands/novo-marco.md +43 -43
  119. package/kit/commands/novo-projeto.md +41 -41
  120. package/kit/commands/novo-workspace.md +43 -43
  121. package/kit/commands/pausar-trabalho.md +37 -37
  122. package/kit/commands/perfil-usuario.md +45 -45
  123. package/kit/commands/pesquisar-fase.md +195 -195
  124. package/kit/commands/planejar-fase.md +67 -67
  125. package/kit/commands/planejar-lacunas.md +33 -33
  126. package/kit/commands/plantar-ideia.md +25 -25
  127. package/kit/commands/progresso.md +24 -24
  128. package/kit/commands/proximo.md +30 -30
  129. package/kit/commands/publicar.md +490 -490
  130. package/kit/commands/rapido.md +35 -35
  131. package/kit/commands/reaplicar-patches.md +124 -124
  132. package/kit/commands/refactor-seguro.md +321 -321
  133. package/kit/commands/relatorio-sessao.md +19 -19
  134. package/kit/commands/remover-fase.md +31 -31
  135. package/kit/commands/remover-workspace.md +26 -26
  136. package/kit/commands/resumo-marco.md +50 -50
  137. package/kit/commands/retomar-trabalho.md +40 -40
  138. package/kit/commands/revisar-backlog.md +60 -60
  139. package/kit/commands/revisar-ui.md +32 -32
  140. package/kit/commands/revisar.md +37 -37
  141. package/kit/commands/saude.md +21 -21
  142. package/kit/commands/setup-notion.md +93 -93
  143. package/kit/commands/storytelling.md +179 -179
  144. package/kit/commands/sync-main.md +68 -68
  145. package/kit/commands/validar-fase.md +35 -35
  146. package/kit/commands/verificar-tarefas.md +44 -44
  147. package/kit/commands/verificar-trabalho.md +64 -64
  148. package/kit/file-manifest.json +82 -81
  149. package/kit/framework/bin/lib/commands.cjs +959 -959
  150. package/kit/framework/bin/lib/config.cjs +442 -442
  151. package/kit/framework/bin/lib/core.cjs +1230 -1230
  152. package/kit/framework/bin/lib/frontmatter.cjs +336 -336
  153. package/kit/framework/bin/lib/init.cjs +1442 -1442
  154. package/kit/framework/bin/lib/milestone.cjs +252 -252
  155. package/kit/framework/bin/lib/model-profiles.cjs +68 -68
  156. package/kit/framework/bin/lib/phase.cjs +888 -888
  157. package/kit/framework/bin/lib/profile-output.cjs +952 -952
  158. package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
  159. package/kit/framework/bin/lib/roadmap.cjs +329 -329
  160. package/kit/framework/bin/lib/security.cjs +382 -382
  161. package/kit/framework/bin/lib/state.cjs +1031 -1031
  162. package/kit/framework/bin/lib/template.cjs +222 -222
  163. package/kit/framework/bin/lib/uat.cjs +282 -282
  164. package/kit/framework/bin/lib/verify.cjs +888 -888
  165. package/kit/framework/bin/lib/workstream.cjs +491 -491
  166. package/kit/framework/bin/tools.cjs +918 -918
  167. package/kit/framework/commands/workstreams.md +63 -63
  168. package/kit/framework/references/checkpoints.md +778 -778
  169. package/kit/framework/references/continuation-format.md +249 -249
  170. package/kit/framework/references/decimal-phase-calculation.md +64 -64
  171. package/kit/framework/references/git-integration.md +295 -295
  172. package/kit/framework/references/git-planning-commit.md +38 -38
  173. package/kit/framework/references/model-profile-resolution.md +36 -36
  174. package/kit/framework/references/model-profiles.md +139 -139
  175. package/kit/framework/references/phase-argument-parsing.md +61 -61
  176. package/kit/framework/references/planning-config.md +202 -202
  177. package/kit/framework/references/questioning.md +162 -162
  178. package/kit/framework/references/tdd.md +263 -263
  179. package/kit/framework/references/ui-brand.md +160 -160
  180. package/kit/framework/references/user-profiling.md +657 -657
  181. package/kit/framework/references/verification-patterns.md +612 -612
  182. package/kit/framework/references/workstream-flag.md +58 -58
  183. package/kit/framework/templates/DEBUG.md +164 -164
  184. package/kit/framework/templates/UAT.md +265 -265
  185. package/kit/framework/templates/UI-SPEC.md +100 -100
  186. package/kit/framework/templates/VALIDATION.md +76 -76
  187. package/kit/framework/templates/claude-md.md +122 -122
  188. package/kit/framework/templates/codebase/architecture.md +185 -185
  189. package/kit/framework/templates/codebase/concerns.md +205 -205
  190. package/kit/framework/templates/codebase/conventions.md +204 -204
  191. package/kit/framework/templates/codebase/integrations.md +192 -192
  192. package/kit/framework/templates/codebase/stack.md +158 -158
  193. package/kit/framework/templates/codebase/structure.md +199 -199
  194. package/kit/framework/templates/codebase/testing.md +301 -301
  195. package/kit/framework/templates/config.json +44 -44
  196. package/kit/framework/templates/context.md +352 -352
  197. package/kit/framework/templates/continue-here.md +78 -78
  198. package/kit/framework/templates/copilot-instructions.md +7 -7
  199. package/kit/framework/templates/debug-subagent-prompt.md +91 -91
  200. package/kit/framework/templates/dev-preferences.md +20 -20
  201. package/kit/framework/templates/discovery.md +146 -146
  202. package/kit/framework/templates/discussion-log.md +63 -63
  203. package/kit/framework/templates/milestone-archive.md +123 -123
  204. package/kit/framework/templates/milestone.md +115 -115
  205. package/kit/framework/templates/phase-prompt.md +610 -610
  206. package/kit/framework/templates/planner-subagent-prompt.md +117 -117
  207. package/kit/framework/templates/project.md +186 -186
  208. package/kit/framework/templates/requirements.md +231 -231
  209. package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
  210. package/kit/framework/templates/research-project/FEATURES.md +147 -147
  211. package/kit/framework/templates/research-project/PITFALLS.md +200 -200
  212. package/kit/framework/templates/research-project/STACK.md +120 -120
  213. package/kit/framework/templates/research-project/SUMMARY.md +170 -170
  214. package/kit/framework/templates/research.md +419 -419
  215. package/kit/framework/templates/retrospective.md +54 -54
  216. package/kit/framework/templates/roadmap.md +202 -202
  217. package/kit/framework/templates/state.md +176 -176
  218. package/kit/framework/templates/summary-complex.md +59 -59
  219. package/kit/framework/templates/summary-minimal.md +41 -41
  220. package/kit/framework/templates/summary-standard.md +48 -48
  221. package/kit/framework/templates/summary.md +209 -209
  222. package/kit/framework/templates/user-profile.md +146 -146
  223. package/kit/framework/templates/user-setup.md +256 -256
  224. package/kit/framework/templates/verification-report.md +258 -258
  225. package/kit/framework/workflows/add-phase.md +112 -112
  226. package/kit/framework/workflows/add-tests.md +351 -351
  227. package/kit/framework/workflows/add-todo.md +158 -158
  228. package/kit/framework/workflows/audit-milestone.md +340 -340
  229. package/kit/framework/workflows/audit-uat.md +109 -109
  230. package/kit/framework/workflows/autonomous.md +891 -891
  231. package/kit/framework/workflows/check-todos.md +177 -177
  232. package/kit/framework/workflows/cleanup.md +152 -152
  233. package/kit/framework/workflows/complete-milestone.md +696 -696
  234. package/kit/framework/workflows/diagnose-issues.md +231 -231
  235. package/kit/framework/workflows/discovery-phase.md +289 -289
  236. package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
  237. package/kit/framework/workflows/discuss-phase.md +784 -784
  238. package/kit/framework/workflows/do.md +104 -104
  239. package/kit/framework/workflows/execute-phase.md +838 -838
  240. package/kit/framework/workflows/execute-plan.md +510 -510
  241. package/kit/framework/workflows/fast.md +102 -102
  242. package/kit/framework/workflows/forensics.md +265 -265
  243. package/kit/framework/workflows/health.md +181 -181
  244. package/kit/framework/workflows/help.md +619 -619
  245. package/kit/framework/workflows/insert-phase.md +130 -130
  246. package/kit/framework/workflows/list-phase-assumptions.md +178 -178
  247. package/kit/framework/workflows/list-workspaces.md +56 -56
  248. package/kit/framework/workflows/manager.md +362 -362
  249. package/kit/framework/workflows/map-codebase.md +377 -377
  250. package/kit/framework/workflows/milestone-summary.md +223 -223
  251. package/kit/framework/workflows/new-milestone.md +486 -486
  252. package/kit/framework/workflows/new-project.md +1159 -1159
  253. package/kit/framework/workflows/new-workspace.md +237 -237
  254. package/kit/framework/workflows/next.md +97 -97
  255. package/kit/framework/workflows/node-repair.md +92 -92
  256. package/kit/framework/workflows/note.md +156 -156
  257. package/kit/framework/workflows/pause-work.md +176 -176
  258. package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
  259. package/kit/framework/workflows/plan-phase.md +765 -765
  260. package/kit/framework/workflows/plant-seed.md +169 -169
  261. package/kit/framework/workflows/pr-branch.md +129 -129
  262. package/kit/framework/workflows/profile-user.md +450 -450
  263. package/kit/framework/workflows/progress.md +507 -507
  264. package/kit/framework/workflows/quick.md +757 -757
  265. package/kit/framework/workflows/remove-phase.md +155 -155
  266. package/kit/framework/workflows/remove-workspace.md +90 -90
  267. package/kit/framework/workflows/research-phase.md +82 -82
  268. package/kit/framework/workflows/resume-project.md +326 -326
  269. package/kit/framework/workflows/review.md +228 -228
  270. package/kit/framework/workflows/session-report.md +146 -146
  271. package/kit/framework/workflows/settings.md +283 -283
  272. package/kit/framework/workflows/ship.md +228 -228
  273. package/kit/framework/workflows/stats.md +60 -60
  274. package/kit/framework/workflows/transition.md +671 -671
  275. package/kit/framework/workflows/ui-phase.md +302 -302
  276. package/kit/framework/workflows/ui-review.md +165 -165
  277. package/kit/framework/workflows/update.md +323 -323
  278. package/kit/framework/workflows/validate-phase.md +174 -174
  279. package/kit/framework/workflows/verify-phase.md +252 -252
  280. package/kit/framework/workflows/verify-work.md +637 -637
  281. package/kit/hooks/check-update.js +118 -118
  282. package/kit/hooks/context-monitor.js +163 -163
  283. package/kit/hooks/kit-attribution-reminder.cjs +29 -50
  284. package/kit/hooks/kit-router.cjs +137 -0
  285. package/kit/hooks/prompt-guard.js +103 -103
  286. package/kit/hooks/statusline.js +125 -125
  287. package/kit/hooks/workflow-guard.js +101 -101
  288. package/kit/settings.json +45 -45
  289. package/kit/skills/ai-prompt-characterization/SKILL.md +335 -335
  290. package/kit/skills/armadilhas-sistemas-distribuidos/SKILL.md +447 -447
  291. package/kit/skills/audit-log-multi-tenant/SKILL.md +340 -340
  292. package/kit/skills/b2b-saas-architecture/SKILL.md +300 -300
  293. package/kit/skills/consistencia-leitura-replica/SKILL.md +385 -385
  294. package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +343 -343
  295. package/kit/skills/escolha-modelo-consistencia/SKILL.md +494 -494
  296. package/kit/skills/evolucao-schema-compativel/SKILL.md +448 -448
  297. package/kit/skills/evolution-go-whatsapp-integration/SKILL.md +322 -322
  298. package/kit/skills/example-skill/SKILL.md +42 -42
  299. package/kit/skills/legacy-api-only-applications/SKILL.md +358 -358
  300. package/kit/skills/legacy-characterization-tests/SKILL.md +330 -330
  301. package/kit/skills/legacy-effect-analysis/SKILL.md +331 -331
  302. package/kit/skills/legacy-extract-class/SKILL.md +203 -203
  303. package/kit/skills/legacy-programming-by-difference/SKILL.md +252 -252
  304. package/kit/skills/legacy-seams-and-test-harness/SKILL.md +460 -460
  305. package/kit/skills/legacy-shotgun-surgery/SKILL.md +286 -286
  306. package/kit/skills/legacy-sprout-wrap-techniques/SKILL.md +434 -434
  307. package/kit/skills/legacy-storytelling-naked-crc/SKILL.md +270 -270
  308. package/kit/skills/lgpd-multi-tenant-compliance/SKILL.md +340 -340
  309. package/kit/skills/member-invite-flow/SKILL.md +305 -305
  310. package/kit/skills/member-management-react-shadcn/SKILL.md +328 -328
  311. package/kit/skills/multi-tenant-performance-scaling/SKILL.md +316 -316
  312. package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +342 -342
  313. package/kit/skills/org-onboarding-flow/SKILL.md +257 -257
  314. package/kit/skills/org-switcher-react-pattern/SKILL.md +349 -349
  315. package/kit/skills/permission-gate-react-pattern/SKILL.md +271 -271
  316. package/kit/skills/postgres-isolamento-concorrencia/SKILL.md +552 -552
  317. package/kit/skills/pre-refactor-characterization/SKILL.md +421 -421
  318. package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +338 -338
  319. package/kit/skills/streams-eventos-cdc/SKILL.md +711 -711
  320. package/kit/skills/supabase-branching-workflow/SKILL.md +544 -544
  321. package/kit/skills/supabase-ci-cd-github-actions/SKILL.md +880 -880
  322. package/kit/skills/supabase-column-level-security/SKILL.md +426 -426
  323. package/kit/skills/supabase-config-toml-remotes/SKILL.md +807 -807
  324. package/kit/skills/supabase-custom-claims-rbac/SKILL.md +472 -472
  325. package/kit/skills/supabase-edge-functions/SKILL.md +1 -1
  326. package/kit/skills/supabase-edge-functions-auth/SKILL.md +1 -1
  327. package/kit/skills/supabase-edge-functions-limits/SKILL.md +1 -1
  328. package/kit/skills/supabase-edge-functions-mcp-server/SKILL.md +1 -1
  329. package/kit/skills/supabase-edge-functions-testing/SKILL.md +1 -1
  330. package/kit/skills/supabase-edge-runtime-builtins/SKILL.md +1 -1
  331. package/kit/skills/supabase-migration-repair/SKILL.md +823 -823
  332. package/kit/skills/supabase-migrations/SKILL.md +297 -297
  333. package/kit/skills/supabase-pgtap-testing/SKILL.md +1053 -1053
  334. package/kit/skills/supabase-postgres-roles/SKILL.md +392 -392
  335. package/kit/skills/supabase-realtime/SKILL.md +460 -460
  336. package/kit/skills/supabase-rls-defense-in-depth/SKILL.md +418 -418
  337. package/kit/skills/supabase-rls-policies/SKILL.md +635 -635
  338. package/kit/skills/super-admin-platform-pattern/SKILL.md +326 -326
  339. package/kit/skills/tenant-quente-mitigacao/SKILL.md +605 -605
  340. package/kit/skills/whatsapp-conversation-state-machine/SKILL.md +287 -287
  341. package/package.json +1 -1
  342. package/src/core/kit.js +216 -216
  343. package/src/core/reflect.js +247 -247
  344. package/src/core/reverse-sync.js +372 -372
  345. package/src/core/sync.js +437 -418
  346. package/src/core/watch.js +121 -121
  347. package/src/mcp-server/index.js +794 -746
@@ -1,200 +1,201 @@
1
- ---
2
- name: evolution-go-integrator
3
- description: Materializa integração WhatsApp (Evolution Go ou Meta Cloud API) em Supabase B2B multi-tenant…
4
- tools: Read, Write, Edit, Bash, Grep, Glob, Task, AskUserQuestion, mcp__supabase__execute_sql
5
- color: green
6
- ---
7
-
8
- Você é o **evolution-go-integrator**. Materializa integração completa WhatsApp em B2B multi-tenant — tabelas `org_whatsapp_configs` + `whatsapp_messages`, webhook handler Edge Function, send queue + worker. Lê skills [`evolution-go-whatsapp-integration`](../skills/evolution-go-whatsapp-integration/SKILL.md) + [`whatsapp-conversation-state-machine`](../skills/whatsapp-conversation-state-machine/SKILL.md). **Delega Edge Function code para `supabase-edge-fn-writer`**.
9
-
10
- ## Inputs
11
-
12
- - (Opcional) `provider`: `meta_cloud` (Meta Cloud API oficial) | `evolution_go` (whatsmeow não-oficial)
13
- - (Opcional) `enable_send_queue`: `true` (default pgmq + worker) | `false` (sync send, sem rate limit guard)
14
- - (Opcional) `enable_state_machine`: `true` (default — xstate conversation) | `false` ( persist messages, sem state)
15
-
16
- ## Passos
17
-
18
- ### Step 0 — Preflight
19
-
20
- - MCP detection
21
- - Validar Phase 106 (organizations, organization_members)
22
- - Validar Phase 109 (audit_logs + audit_log function)
23
- - Validar pgmq extension habilitada (se enable_send_queue=true)
24
- - ABORT se HMAC validation aplicada APÓS JSON.parse — REGRA #1 da skill (este check é pre-design, agent reforça no brief)
25
-
26
- ### Step 1 — Provider via AskUserQuestion (se ausente)
27
-
28
- ```
29
- - Meta Cloud API (Recomendado para production) — oficial Meta, custo por conversation, rate limit 80 msg/s, HMAC-SHA256 signature
30
- - Evolution Go (free/self-hosted) — whatsmeow library, sem custo Meta, throttle manual 1 msg/s, API key + IP whitelist (não HMAC)
31
- - Ambos (multi-provider) — cada org escolhe via org_whatsapp_configs.provider
32
- ```
33
-
34
- ### Step 2 — Migration brief para supabase-migration-writer
35
-
36
- ```
37
- [Migration brief — evolution-go-integrator]
38
-
39
- Tabelas:
40
- 1. public.org_whatsapp_configs (DDL completo skill section "Tabela org_whatsapp_configs")
41
- 2. public.whatsapp_messages (DDL completo com unique(org_id, message_id) — REGRA #4 idempotency)
42
- 3. (se enable_state_machine=true) public.conversations (DDL skill conversation-state-machine)
43
- 4. (se enable_send_queue=true) pgmq queue creation: select pgmq.create('whatsapp_outbound_global');
44
-
45
- RLS standard multi-tenant para todas (members + super_admin bypass).
46
-
47
- (se enable_send_queue=true) pg_cron worker schedule:
48
- select cron.schedule('whatsapp-send-worker', '* * * * *', $$ select net.http_post(...) $$);
49
- -- worker chama Edge Function whatsapp-send-worker que processa N msgs respeitando 80 msg/s
50
-
51
- (se enable_state_machine=true) pg_cron timeout 24h:
52
- select cron.schedule('conversation-timeout-24h', '*/30 * * * *', $$
53
- update public.conversations set state = 'abandoned'
54
- where state = 'waiting_user_reply' and last_message_at < now() - interval '24 hours';
55
- $$);
56
- ```
57
-
58
- ### Step 3 — Webhook handler Edge Function brief
59
-
60
- ```
61
- [Edge Function brief — evolution-go-integrator (webhook)]
62
-
63
- Function: whatsapp-webhook
64
- verify_jwt: false (webhook público, validation via HMAC ou API key)
65
- Path: supabase/functions/whatsapp-webhook/index.ts
66
-
67
- Behavior:
68
- 1. Extrair org_id de URL path: /functions/v1/whatsapp/<org_id>/webhook (REGRA #3)
69
- 2. Validar UUID format
70
- 3. req.text() para raw body — REGRA #1 (HMAC ANTES de JSON.parse)
71
- 4. Buscar org_whatsapp_configs(org_id) via service_role
72
- 5. Validar:
73
- - meta_cloud: HMAC-SHA256 timing-safe (REGRA #2) com config.hmac_secret
74
- - evolution_go: API key match Deno.env.get('EVOLUTION_GO_API_KEY')
75
- 6. Parse JSON
76
- 7. Iterate messages, INSERT INTO whatsapp_messages com ON CONFLICT DO NOTHING (REGRA #4)
77
- 8. (se enable_state_machine=true) processConversationEvent(orgId, contact, INBOUND_MESSAGE)
78
- 9. (se integração CRM) auto-create lead se contact_phone novo
79
- 10. Audit event 'custom_whatsapp_webhook_received'
80
- 11. Return 'ok' 200
81
-
82
- Anti-pitfalls:
83
- - service_role apenas (webhook não tem JWT user)
84
- - Timing-safe HMAC (crypto.subtle, não ===)
85
- - ON CONFLICT obrigatório
86
- - Return 200 rápido (Meta timeout 20s — async para tasks longas)
87
- ```
88
-
89
- Delegar para `supabase-edge-fn-writer`.
90
-
91
- ### Step 4 — Send Edge Function brief (se enable_send_queue=true)
92
-
93
- ```
94
- [Edge Function brief — evolution-go-integrator (send + worker)]
95
-
96
- Function 1: whatsapp-send (user-facing)
97
- verify_jwt: true
98
- - POST { org_id, to, message }
99
- - RLS check via JWT user
100
- - Enfilera em pgmq queue (não envia direto) — REGRA #5
101
-
102
- Function 2: whatsapp-send-worker (cron)
103
- verify_jwt: false (chamado por pg_cron via net.http_post)
104
- - pgmq.read N msgs (N <= 80 para respeitar rate limit Meta)
105
- - Para cada msg: chamar Meta Graph API ou Evolution Go endpoint
106
- - pgmq.delete msgs processadas
107
- - Backoff em erro 131056 (rate limit hit)
108
- ```
109
-
110
- Delegar.
111
-
112
- ### Step 5 — State machine code (se enable_state_machine=true)
113
-
114
- Gerar código TypeScript da xstate machine (skill conversation-state-machine seção "State machine em xstate v5") como `supabase/functions/whatsapp-process/conversation-machine.ts` — reutilizado pelo webhook handler.
115
-
116
- ### Step 6 — Output integrado
117
-
118
- ```
119
- ═══════════════════════════════════════════════════════════
120
- EVOLUTION-GO-INTEGRATOR · output integrado
121
- ═══════════════════════════════════════════════════════════
122
-
123
- ## 1. Decisões
124
- - Provider: <chosen>
125
- - Send queue: <yes/no>
126
- - State machine: <yes/no>
127
-
128
- ## 2. Migration entregue
129
- <output supabase-migration-writer>
130
-
131
- ## 3. Edge Functions entregues
132
- - whatsapp-webhook (handler)
133
- - whatsapp-send (user-facing) — se queue=yes
134
- - whatsapp-send-worker (cron) — se queue=yes
135
-
136
- ## 4. State machine code
137
- - conversation-machine.ts se state_machine=yes
138
-
139
- ## 5. Próximos passos
140
- - Aplicar migration: supabase db push
141
- - Deploy functions: supabase functions deploy whatsapp-webhook (etc.)
142
- - Configurar Meta App webhook URL: https://<project>.functions.supabase.co/whatsapp/<org_id>/webhook
143
- - (Evolution Go) Configurar EVOLUTION_GO_API_KEY no Vault
144
- - (Meta) Per-org: gerar HMAC secret, salvar em org_whatsapp_configs.hmac_secret
145
- - Test: enviar mensagem inbound, verificar audit_log + whatsapp_messages
146
- ```
147
-
148
- ## Anti-patterns prevenidos
149
-
150
- - HMAC depois de JSON.parse → REGRA #1 enforced no Edge Function brief
151
- - HMAC compare ===timing-safe enforced
152
- - Sem idempotencyON CONFLICT obrigatório
153
- - Send sem rate limit pgmq queue + worker enforced
154
- - HMAC secret globalper-org enforced
155
- - super_admin sem auditaudit_log antes de ação
156
-
157
- ## Quando NÃO invocar
158
-
159
- - Phase 106 ou 109 não implementadas → ABORT
160
- - App sem WhatsApp use caseescopo errado
161
- - tem integração WhatsApp legacyanalisar primeiro, depois decidir migrate
162
-
163
- ## Observabilidade integrada
164
-
165
- - Counter `whatsapp.webhook.received{org_id, provider}` por request
166
- - Counter `whatsapp.message.idempotent_drop{org_id}` por duplicate ignored
167
- - Histogram `whatsapp.webhook.duration_ms`
168
- - Counter `whatsapp.send.rate_limited{org_id}` por 131056 hit
169
- - Alarme se `whatsapp.send.rate_limited > baseline` review queue/throttle
170
-
171
- ## Cooperative handoff to supabase-rls-hardener (v1.23)
172
-
173
- Após gerar webhook handler + idempotency unique constraint + rate limit pgmq, faça handoff cooperativo para SQL bloco:
174
-
175
- ```python
176
- Task(subagent_type="supabase-rls-hardener", prompt=f"""
177
- <upstream_intent>
178
- Source agent: evolution-go-integrator
179
- Original goal: integrar WhatsApp (Evolution Go ou Meta Cloud API) com Supabase B2B multi-tenant para {org_context}
180
- Constraints: webhook URL path /functions/v1/whatsapp/{org_id}/webhook (tenant_id ANTES do parse); HMAC-SHA256 (Meta) ou API key + IP whitelist (Evolution Go); idempotência unique(org_id, message_id); rate limit Meta 80msg/s via pgmq queue
181
- </upstream_intent>
182
-
183
- <draft_sql>{generated_webhook_sql}</draft_sql>
184
-
185
- <user_facing_caller>true</user_facing_caller>
186
- """)
187
- ```
188
-
189
- Hardener valida tenant isolation (org_id em todas policies), HMAC validation ANTES do parse, idempotency constraint correto. **NUNCA descarte intent upstream silenciosamente**.
190
-
191
- ## Ver também
192
-
193
- - [supabase-rls-hardener](./supabase-rls-hardener.md) — canonical handoff target v1.23
194
- - [evolution-go-whatsapp-integration](../skills/evolution-go-whatsapp-integration/SKILL.md) — base de conhecimento
195
- - [whatsapp-conversation-state-machine](../skills/whatsapp-conversation-state-machine/SKILL.md) — sibling skill
196
- - [supabase-edge-fn-writer](./supabase-edge-fn-writer.md) — invoked para Edge Functions (cross-suite)
197
- - [supabase-migration-writer](./supabase-migration-writer.md) — invoked para SQL
198
- - [crm-pipeline-implementer](./crm-pipeline-implementer.md) — Phase 113, integra contact → lead
199
- - [audit-log-implementer](./audit-log-implementer.md) — Phase 109, eventos custom_whatsapp_*
200
- - [_shared-multi-tenant/glossary.md](../skills/_shared-multi-tenant/glossary.md) — `Evolution Go`, `Meta Cloud API`, `HMAC`, `idempotency key`
1
+ ---
2
+ name: evolution-go-integrator
3
+ tier: specialized
4
+ description: Materializa integração WhatsApp (Evolution Go ou Meta Cloud API) em Supabase B2B multi-tenant…
5
+ tools: Read, Write, Edit, Bash, Grep, Glob, Task, AskUserQuestion, mcp__supabase__execute_sql
6
+ color: green
7
+ ---
8
+
9
+ Você é o **evolution-go-integrator**. Materializa integração completa WhatsApp em B2B multi-tenant — tabelas `org_whatsapp_configs` + `whatsapp_messages`, webhook handler Edge Function, send queue + worker. Lê skills [`evolution-go-whatsapp-integration`](../skills/evolution-go-whatsapp-integration/SKILL.md) + [`whatsapp-conversation-state-machine`](../skills/whatsapp-conversation-state-machine/SKILL.md). **Delega Edge Function code para `supabase-edge-fn-writer`**.
10
+
11
+ ## Inputs
12
+
13
+ - (Opcional) `provider`: `meta_cloud` (Meta Cloud API oficial) | `evolution_go` (whatsmeow não-oficial)
14
+ - (Opcional) `enable_send_queue`: `true` (default — pgmq + worker) | `false` (sync send, sem rate limit guard)
15
+ - (Opcional) `enable_state_machine`: `true` (default — xstate conversation) | `false` (só persist messages, sem state)
16
+
17
+ ## Passos
18
+
19
+ ### Step 0 — Preflight
20
+
21
+ - MCP detection
22
+ - Validar Phase 106 (organizations, organization_members)
23
+ - Validar Phase 109 (audit_logs + audit_log function)
24
+ - Validar pgmq extension habilitada (se enable_send_queue=true)
25
+ - ABORT se HMAC validation aplicada APÓS JSON.parse — REGRA #1 da skill (este check é pre-design, agent reforça no brief)
26
+
27
+ ### Step 1 — Provider via AskUserQuestion (se ausente)
28
+
29
+ ```
30
+ - Meta Cloud API (Recomendado para production) — oficial Meta, custo por conversation, rate limit 80 msg/s, HMAC-SHA256 signature
31
+ - Evolution Go (free/self-hosted) — whatsmeow library, sem custo Meta, throttle manual 1 msg/s, API key + IP whitelist (não HMAC)
32
+ - Ambos (multi-provider) — cada org escolhe via org_whatsapp_configs.provider
33
+ ```
34
+
35
+ ### Step 2 — Migration brief para supabase-migration-writer
36
+
37
+ ```
38
+ [Migration brief — evolution-go-integrator]
39
+
40
+ Tabelas:
41
+ 1. public.org_whatsapp_configs (DDL completo skill section "Tabela org_whatsapp_configs")
42
+ 2. public.whatsapp_messages (DDL completo com unique(org_id, message_id) — REGRA #4 idempotency)
43
+ 3. (se enable_state_machine=true) public.conversations (DDL skill conversation-state-machine)
44
+ 4. (se enable_send_queue=true) pgmq queue creation: select pgmq.create('whatsapp_outbound_global');
45
+
46
+ RLS standard multi-tenant para todas (members + super_admin bypass).
47
+
48
+ (se enable_send_queue=true) pg_cron worker schedule:
49
+ select cron.schedule('whatsapp-send-worker', '* * * * *', $$ select net.http_post(...) $$);
50
+ -- worker chama Edge Function whatsapp-send-worker que processa N msgs respeitando 80 msg/s
51
+
52
+ (se enable_state_machine=true) pg_cron timeout 24h:
53
+ select cron.schedule('conversation-timeout-24h', '*/30 * * * *', $$
54
+ update public.conversations set state = 'abandoned'
55
+ where state = 'waiting_user_reply' and last_message_at < now() - interval '24 hours';
56
+ $$);
57
+ ```
58
+
59
+ ### Step 3 — Webhook handler Edge Function brief
60
+
61
+ ```
62
+ [Edge Function brief — evolution-go-integrator (webhook)]
63
+
64
+ Function: whatsapp-webhook
65
+ verify_jwt: false (webhook público, validation via HMAC ou API key)
66
+ Path: supabase/functions/whatsapp-webhook/index.ts
67
+
68
+ Behavior:
69
+ 1. Extrair org_id de URL path: /functions/v1/whatsapp/<org_id>/webhook (REGRA #3)
70
+ 2. Validar UUID format
71
+ 3. req.text() para raw body — REGRA #1 (HMAC ANTES de JSON.parse)
72
+ 4. Buscar org_whatsapp_configs(org_id) via service_role
73
+ 5. Validar:
74
+ - meta_cloud: HMAC-SHA256 timing-safe (REGRA #2) com config.hmac_secret
75
+ - evolution_go: API key match Deno.env.get('EVOLUTION_GO_API_KEY')
76
+ 6. Parse JSON
77
+ 7. Iterate messages, INSERT INTO whatsapp_messages com ON CONFLICT DO NOTHING (REGRA #4)
78
+ 8. (se enable_state_machine=true) processConversationEvent(orgId, contact, INBOUND_MESSAGE)
79
+ 9. (se integração CRM) auto-create lead se contact_phone novo
80
+ 10. Audit event 'custom_whatsapp_webhook_received'
81
+ 11. Return 'ok' 200
82
+
83
+ Anti-pitfalls:
84
+ - service_role apenas (webhook não tem JWT user)
85
+ - Timing-safe HMAC (crypto.subtle, não ===)
86
+ - ON CONFLICT obrigatório
87
+ - Return 200 rápido (Meta timeout 20s — async para tasks longas)
88
+ ```
89
+
90
+ Delegar para `supabase-edge-fn-writer`.
91
+
92
+ ### Step 4 — Send Edge Function brief (se enable_send_queue=true)
93
+
94
+ ```
95
+ [Edge Function brief — evolution-go-integrator (send + worker)]
96
+
97
+ Function 1: whatsapp-send (user-facing)
98
+ verify_jwt: true
99
+ - POST { org_id, to, message }
100
+ - RLS check via JWT user
101
+ - Enfilera em pgmq queue (não envia direto) — REGRA #5
102
+
103
+ Function 2: whatsapp-send-worker (cron)
104
+ verify_jwt: false (chamado por pg_cron via net.http_post)
105
+ - pgmq.read N msgs (N <= 80 para respeitar rate limit Meta)
106
+ - Para cada msg: chamar Meta Graph API ou Evolution Go endpoint
107
+ - pgmq.delete msgs processadas
108
+ - Backoff em erro 131056 (rate limit hit)
109
+ ```
110
+
111
+ Delegar.
112
+
113
+ ### Step 5 — State machine code (se enable_state_machine=true)
114
+
115
+ Gerar código TypeScript da xstate machine (skill conversation-state-machine seção "State machine em xstate v5") como `supabase/functions/whatsapp-process/conversation-machine.ts` — reutilizado pelo webhook handler.
116
+
117
+ ### Step 6 — Output integrado
118
+
119
+ ```
120
+ ═══════════════════════════════════════════════════════════
121
+ EVOLUTION-GO-INTEGRATOR · output integrado
122
+ ═══════════════════════════════════════════════════════════
123
+
124
+ ## 1. Decisões
125
+ - Provider: <chosen>
126
+ - Send queue: <yes/no>
127
+ - State machine: <yes/no>
128
+
129
+ ## 2. Migration entregue
130
+ <output supabase-migration-writer>
131
+
132
+ ## 3. Edge Functions entregues
133
+ - whatsapp-webhook (handler)
134
+ - whatsapp-send (user-facing) — se queue=yes
135
+ - whatsapp-send-worker (cron) — se queue=yes
136
+
137
+ ## 4. State machine code
138
+ - conversation-machine.ts — se state_machine=yes
139
+
140
+ ## 5. Próximos passos
141
+ - Aplicar migration: supabase db push
142
+ - Deploy functions: supabase functions deploy whatsapp-webhook (etc.)
143
+ - Configurar Meta App webhook URL: https://<project>.functions.supabase.co/whatsapp/<org_id>/webhook
144
+ - (Evolution Go) Configurar EVOLUTION_GO_API_KEY no Vault
145
+ - (Meta) Per-org: gerar HMAC secret, salvar em org_whatsapp_configs.hmac_secret
146
+ - Test: enviar mensagem inbound, verificar audit_log + whatsapp_messages
147
+ ```
148
+
149
+ ## Anti-patterns prevenidos
150
+
151
+ - HMAC depois de JSON.parse REGRA #1 enforced no Edge Function brief
152
+ - HMAC compare === timing-safe enforced
153
+ - Sem idempotencyON CONFLICT obrigatório
154
+ - Send sem rate limit pgmq queue + worker enforced
155
+ - HMAC secret globalper-org enforced
156
+ - super_admin sem audit → audit_log antes de ação
157
+
158
+ ## Quando NÃO invocar
159
+
160
+ - Phase 106 ou 109 não implementadas ABORT
161
+ - App sem WhatsApp use case escopo errado
162
+ - Já tem integração WhatsApp legacy → analisar primeiro, depois decidir migrate
163
+
164
+ ## Observabilidade integrada
165
+
166
+ - Counter `whatsapp.webhook.received{org_id, provider}` por request
167
+ - Counter `whatsapp.message.idempotent_drop{org_id}` por duplicate ignored
168
+ - Histogram `whatsapp.webhook.duration_ms`
169
+ - Counter `whatsapp.send.rate_limited{org_id}` por 131056 hit
170
+ - Alarme se `whatsapp.send.rate_limited > baseline` → review queue/throttle
171
+
172
+ ## Cooperative handoff to supabase-rls-hardener (v1.23)
173
+
174
+ Após gerar webhook handler + idempotency unique constraint + rate limit pgmq, faça handoff cooperativo para SQL bloco:
175
+
176
+ ```python
177
+ Task(subagent_type="supabase-rls-hardener", prompt=f"""
178
+ <upstream_intent>
179
+ Source agent: evolution-go-integrator
180
+ Original goal: integrar WhatsApp (Evolution Go ou Meta Cloud API) com Supabase B2B multi-tenant para {org_context}
181
+ Constraints: webhook URL path /functions/v1/whatsapp/{org_id}/webhook (tenant_id ANTES do parse); HMAC-SHA256 (Meta) ou API key + IP whitelist (Evolution Go); idempotência unique(org_id, message_id); rate limit Meta 80msg/s via pgmq queue
182
+ </upstream_intent>
183
+
184
+ <draft_sql>{generated_webhook_sql}</draft_sql>
185
+
186
+ <user_facing_caller>true</user_facing_caller>
187
+ """)
188
+ ```
189
+
190
+ Hardener valida tenant isolation (org_id em todas policies), HMAC validation ANTES do parse, idempotency constraint correto. **NUNCA descarte intent upstream silenciosamente**.
191
+
192
+ ## Ver também
193
+
194
+ - [supabase-rls-hardener](./supabase-rls-hardener.md) — canonical handoff target v1.23
195
+ - [evolution-go-whatsapp-integration](../skills/evolution-go-whatsapp-integration/SKILL.md) — base de conhecimento
196
+ - [whatsapp-conversation-state-machine](../skills/whatsapp-conversation-state-machine/SKILL.md) — sibling skill
197
+ - [supabase-edge-fn-writer](./supabase-edge-fn-writer.md) — invoked para Edge Functions (cross-suite)
198
+ - [supabase-migration-writer](./supabase-migration-writer.md) — invoked para SQL
199
+ - [crm-pipeline-implementer](./crm-pipeline-implementer.md) — Phase 113, integra contact → lead
200
+ - [audit-log-implementer](./audit-log-implementer.md) — Phase 109, eventos custom_whatsapp_*
201
+ - [_shared-multi-tenant/glossary.md](../skills/_shared-multi-tenant/glossary.md) — `Evolution Go`, `Meta Cloud API`, `HMAC`, `idempotency key`
@@ -1,21 +1,22 @@
1
- ---
2
- name: example-reviewer
3
- description: Example sub-agent template. Replace with your own. Reviews a snippet of code and returns 3 concrete improvements.
4
- tools: Read, Grep, Glob
5
- color: blue
6
- ---
7
-
8
- You are a code reviewer. The user will paste a code snippet or point at a file.
9
-
10
- Your job:
11
-
12
- 1. Read the snippet (or the file at the path the user gives you).
13
- 2. Identify exactly **3 concrete improvements** no more, no less.
14
- 3. For each improvement, output:
15
- - what the current code does
16
- - what to change it to
17
- - why it's better (1 line)
18
-
19
- Be terse. No preamble, no recap, no "great code!" pleasantries. Just the 3 items.
20
-
21
- If the snippet is too small to suggest 3 things, say so honestly and suggest fewer.
1
+ ---
2
+ name: example-reviewer
3
+ tier: specialized
4
+ description: Example sub-agent template. Replace with your own. Reviews a snippet of code and returns 3 concrete improvements.
5
+ tools: Read, Grep, Glob
6
+ color: blue
7
+ ---
8
+
9
+ You are a code reviewer. The user will paste a code snippet or point at a file.
10
+
11
+ Your job:
12
+
13
+ 1. Read the snippet (or the file at the path the user gives you).
14
+ 2. Identify exactly **3 concrete improvements** — no more, no less.
15
+ 3. For each improvement, output:
16
+ - what the current code does
17
+ - what to change it to
18
+ - why it's better (1 line)
19
+
20
+ Be terse. No preamble, no recap, no "great code!" pleasantries. Just the 3 items.
21
+
22
+ If the snippet is too small to suggest 3 things, say so honestly and suggest fewer.