@luanpdd/kit-mcp 1.29.0 → 1.30.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +168 -168
  3. package/gates/agent-no-recursive-dispatch.md +82 -82
  4. package/kit/COMANDOS.md +138 -138
  5. package/kit/README.md +76 -76
  6. package/kit/agents/advisor-researcher.md +106 -106
  7. package/kit/agents/assumptions-analyzer.md +107 -107
  8. package/kit/agents/audit-log-implementer.md +313 -313
  9. package/kit/agents/auditor-consistencia-isolamento.md +413 -413
  10. package/kit/agents/b2b-saas-architect.md +156 -156
  11. package/kit/agents/cascading-failures-auditor.md +298 -298
  12. package/kit/agents/codebase-mapper.md +768 -768
  13. package/kit/agents/crm-pipeline-implementer.md +256 -256
  14. package/kit/agents/debugger.md +813 -813
  15. package/kit/agents/detector-tenant-quente.md +337 -337
  16. package/kit/agents/evolution-go-integrator.md +200 -200
  17. package/kit/agents/example-reviewer.md +21 -21
  18. package/kit/agents/executor.md +564 -564
  19. package/kit/agents/integration-checker.md +200 -200
  20. package/kit/agents/invite-flow-implementer.md +189 -189
  21. package/kit/agents/legacy-characterizer.md +368 -368
  22. package/kit/agents/lgpd-compliance-auditor.md +295 -295
  23. package/kit/agents/multi-tenant-isolation-auditor.md +253 -253
  24. package/kit/agents/multi-tenant-rls-writer.md +340 -340
  25. package/kit/agents/nyquist-auditor.md +178 -178
  26. package/kit/agents/observability-coverage-auditor.md +315 -315
  27. package/kit/agents/org-onboarding-implementer.md +223 -223
  28. package/kit/agents/payload-capture-instrumenter.md +273 -273
  29. package/kit/agents/phase-researcher.md +696 -696
  30. package/kit/agents/plan-checker.md +272 -272
  31. package/kit/agents/planner.md +922 -922
  32. package/kit/agents/project-researcher.md +652 -652
  33. package/kit/agents/refactor-safety-auditor.md +404 -404
  34. package/kit/agents/research-synthesizer.md +245 -245
  35. package/kit/agents/roadmapper.md +677 -677
  36. package/kit/agents/seam-finder.md +359 -359
  37. package/kit/agents/shotgun-surgery-detector.md +349 -349
  38. package/kit/agents/supabase-branching-architect.md +562 -562
  39. package/kit/agents/supabase-cicd-pipeline-implementer.md +777 -777
  40. package/kit/agents/supabase-column-privileges-writer.md +399 -399
  41. package/kit/agents/supabase-edge-fn-tester.md +287 -0
  42. package/kit/agents/supabase-edge-fn-writer.md +239 -210
  43. package/kit/agents/supabase-migration-writer.md +385 -385
  44. package/kit/agents/supabase-rbac-implementer.md +392 -392
  45. package/kit/agents/supabase-realtime-implementer.md +363 -267
  46. package/kit/agents/supabase-rls-hardener.md +521 -521
  47. package/kit/agents/supabase-rls-writer.md +323 -323
  48. package/kit/agents/supabase-roles-implementer.md +355 -355
  49. package/kit/agents/super-admin-implementer.md +281 -281
  50. package/kit/agents/ui-auditor.md +437 -437
  51. package/kit/agents/ui-checker.md +302 -302
  52. package/kit/agents/ui-researcher.md +355 -355
  53. package/kit/agents/user-profiler.md +175 -175
  54. package/kit/agents/validador-evolucao-schema.md +335 -335
  55. package/kit/agents/verifier.md +728 -728
  56. package/kit/commands/adicionar-backlog.md +75 -75
  57. package/kit/commands/adicionar-fase.md +42 -42
  58. package/kit/commands/adicionar-tarefa.md +45 -45
  59. package/kit/commands/adicionar-testes.md +41 -41
  60. package/kit/commands/ajuda.md +21 -21
  61. package/kit/commands/atualizar.md +37 -37
  62. package/kit/commands/auditar-cascading.md +111 -111
  63. package/kit/commands/auditar-marco.md +179 -179
  64. package/kit/commands/auditar-observabilidade-cobertura.md +183 -183
  65. package/kit/commands/auditar-refactor.md +219 -219
  66. package/kit/commands/auditar-release.md +109 -109
  67. package/kit/commands/auditar-uat.md +23 -23
  68. package/kit/commands/autonomo.md +40 -40
  69. package/kit/commands/branch-pr.md +24 -24
  70. package/kit/commands/burn-rate-status.md +408 -408
  71. package/kit/commands/capturar-payloads.md +193 -193
  72. package/kit/commands/caracterizar.md +212 -212
  73. package/kit/commands/concluir-marco.md +247 -247
  74. package/kit/commands/configuracoes.md +36 -36
  75. package/kit/commands/dados-distribuidos.md +188 -188
  76. package/kit/commands/definir-perfil.md +10 -10
  77. package/kit/commands/depurar.md +190 -190
  78. package/kit/commands/detectar-duplicacao.md +197 -197
  79. package/kit/commands/discutir-fase.md +131 -131
  80. package/kit/commands/encontrar-seams.md +136 -136
  81. package/kit/commands/entrar-discord.md +17 -17
  82. package/kit/commands/estatisticas.md +18 -18
  83. package/kit/commands/example-greeting.md +33 -33
  84. package/kit/commands/executar-fase.md +58 -58
  85. package/kit/commands/expresso.md +56 -56
  86. package/kit/commands/fase-ui.md +34 -34
  87. package/kit/commands/fazer.md +57 -57
  88. package/kit/commands/fio.md +125 -125
  89. package/kit/commands/fluxos-trabalho.md +64 -64
  90. package/kit/commands/forense.md +176 -176
  91. package/kit/commands/gerenciador.md +38 -38
  92. package/kit/commands/inserir-fase.md +31 -31
  93. package/kit/commands/legacy.md +263 -263
  94. package/kit/commands/limpeza.md +17 -17
  95. package/kit/commands/listar-hipoteses-fase.md +45 -45
  96. package/kit/commands/listar-workspaces.md +18 -18
  97. package/kit/commands/load-shedding.md +117 -117
  98. package/kit/commands/mapear-codebase.md +70 -70
  99. package/kit/commands/multi-tenant.md +163 -163
  100. package/kit/commands/nota.md +33 -33
  101. package/kit/commands/novo-marco.md +43 -43
  102. package/kit/commands/novo-projeto.md +41 -41
  103. package/kit/commands/novo-workspace.md +43 -43
  104. package/kit/commands/pausar-trabalho.md +37 -37
  105. package/kit/commands/perfil-usuario.md +45 -45
  106. package/kit/commands/pesquisar-fase.md +195 -195
  107. package/kit/commands/planejar-fase.md +67 -67
  108. package/kit/commands/planejar-lacunas.md +33 -33
  109. package/kit/commands/plantar-ideia.md +25 -25
  110. package/kit/commands/progresso.md +24 -24
  111. package/kit/commands/proximo.md +30 -30
  112. package/kit/commands/publicar.md +490 -490
  113. package/kit/commands/rapido.md +35 -35
  114. package/kit/commands/reaplicar-patches.md +124 -124
  115. package/kit/commands/refactor-seguro.md +321 -321
  116. package/kit/commands/relatorio-sessao.md +19 -19
  117. package/kit/commands/remover-fase.md +31 -31
  118. package/kit/commands/remover-workspace.md +26 -26
  119. package/kit/commands/resumo-marco.md +50 -50
  120. package/kit/commands/retomar-trabalho.md +40 -40
  121. package/kit/commands/revisar-backlog.md +60 -60
  122. package/kit/commands/revisar-ui.md +32 -32
  123. package/kit/commands/revisar.md +37 -37
  124. package/kit/commands/saude.md +21 -21
  125. package/kit/commands/setup-notion.md +93 -93
  126. package/kit/commands/storytelling.md +179 -179
  127. package/kit/commands/supabase.md +30 -7
  128. package/kit/commands/sync-main.md +68 -68
  129. package/kit/commands/validar-fase.md +35 -35
  130. package/kit/commands/verificar-tarefas.md +44 -44
  131. package/kit/commands/verificar-trabalho.md +64 -64
  132. package/kit/file-manifest.json +15 -8
  133. package/kit/framework/bin/lib/commands.cjs +959 -959
  134. package/kit/framework/bin/lib/config.cjs +442 -442
  135. package/kit/framework/bin/lib/core.cjs +1230 -1230
  136. package/kit/framework/bin/lib/frontmatter.cjs +336 -336
  137. package/kit/framework/bin/lib/init.cjs +1442 -1442
  138. package/kit/framework/bin/lib/milestone.cjs +252 -252
  139. package/kit/framework/bin/lib/model-profiles.cjs +68 -68
  140. package/kit/framework/bin/lib/phase.cjs +888 -888
  141. package/kit/framework/bin/lib/profile-output.cjs +952 -952
  142. package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
  143. package/kit/framework/bin/lib/roadmap.cjs +329 -329
  144. package/kit/framework/bin/lib/security.cjs +382 -382
  145. package/kit/framework/bin/lib/state.cjs +1031 -1031
  146. package/kit/framework/bin/lib/template.cjs +222 -222
  147. package/kit/framework/bin/lib/uat.cjs +282 -282
  148. package/kit/framework/bin/lib/verify.cjs +888 -888
  149. package/kit/framework/bin/lib/workstream.cjs +491 -491
  150. package/kit/framework/bin/tools.cjs +918 -918
  151. package/kit/framework/commands/workstreams.md +63 -63
  152. package/kit/framework/references/checkpoints.md +778 -778
  153. package/kit/framework/references/continuation-format.md +249 -249
  154. package/kit/framework/references/decimal-phase-calculation.md +64 -64
  155. package/kit/framework/references/git-integration.md +295 -295
  156. package/kit/framework/references/git-planning-commit.md +38 -38
  157. package/kit/framework/references/model-profile-resolution.md +36 -36
  158. package/kit/framework/references/model-profiles.md +139 -139
  159. package/kit/framework/references/phase-argument-parsing.md +61 -61
  160. package/kit/framework/references/planning-config.md +202 -202
  161. package/kit/framework/references/questioning.md +162 -162
  162. package/kit/framework/references/tdd.md +263 -263
  163. package/kit/framework/references/ui-brand.md +160 -160
  164. package/kit/framework/references/user-profiling.md +657 -657
  165. package/kit/framework/references/verification-patterns.md +612 -612
  166. package/kit/framework/references/workstream-flag.md +58 -58
  167. package/kit/framework/templates/DEBUG.md +164 -164
  168. package/kit/framework/templates/UAT.md +265 -265
  169. package/kit/framework/templates/UI-SPEC.md +100 -100
  170. package/kit/framework/templates/VALIDATION.md +76 -76
  171. package/kit/framework/templates/claude-md.md +122 -122
  172. package/kit/framework/templates/codebase/architecture.md +185 -185
  173. package/kit/framework/templates/codebase/concerns.md +205 -205
  174. package/kit/framework/templates/codebase/conventions.md +204 -204
  175. package/kit/framework/templates/codebase/integrations.md +192 -192
  176. package/kit/framework/templates/codebase/stack.md +158 -158
  177. package/kit/framework/templates/codebase/structure.md +199 -199
  178. package/kit/framework/templates/codebase/testing.md +301 -301
  179. package/kit/framework/templates/config.json +44 -44
  180. package/kit/framework/templates/context.md +352 -352
  181. package/kit/framework/templates/continue-here.md +78 -78
  182. package/kit/framework/templates/copilot-instructions.md +7 -7
  183. package/kit/framework/templates/debug-subagent-prompt.md +91 -91
  184. package/kit/framework/templates/dev-preferences.md +20 -20
  185. package/kit/framework/templates/discovery.md +146 -146
  186. package/kit/framework/templates/discussion-log.md +63 -63
  187. package/kit/framework/templates/milestone-archive.md +123 -123
  188. package/kit/framework/templates/milestone.md +115 -115
  189. package/kit/framework/templates/phase-prompt.md +610 -610
  190. package/kit/framework/templates/planner-subagent-prompt.md +117 -117
  191. package/kit/framework/templates/project.md +186 -186
  192. package/kit/framework/templates/requirements.md +231 -231
  193. package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
  194. package/kit/framework/templates/research-project/FEATURES.md +147 -147
  195. package/kit/framework/templates/research-project/PITFALLS.md +200 -200
  196. package/kit/framework/templates/research-project/STACK.md +120 -120
  197. package/kit/framework/templates/research-project/SUMMARY.md +170 -170
  198. package/kit/framework/templates/research.md +419 -419
  199. package/kit/framework/templates/retrospective.md +54 -54
  200. package/kit/framework/templates/roadmap.md +202 -202
  201. package/kit/framework/templates/state.md +176 -176
  202. package/kit/framework/templates/summary-complex.md +59 -59
  203. package/kit/framework/templates/summary-minimal.md +41 -41
  204. package/kit/framework/templates/summary-standard.md +48 -48
  205. package/kit/framework/templates/summary.md +209 -209
  206. package/kit/framework/templates/user-profile.md +146 -146
  207. package/kit/framework/templates/user-setup.md +256 -256
  208. package/kit/framework/templates/verification-report.md +258 -258
  209. package/kit/framework/workflows/add-phase.md +112 -112
  210. package/kit/framework/workflows/add-tests.md +351 -351
  211. package/kit/framework/workflows/add-todo.md +158 -158
  212. package/kit/framework/workflows/audit-milestone.md +340 -340
  213. package/kit/framework/workflows/audit-uat.md +109 -109
  214. package/kit/framework/workflows/autonomous.md +891 -891
  215. package/kit/framework/workflows/check-todos.md +177 -177
  216. package/kit/framework/workflows/cleanup.md +152 -152
  217. package/kit/framework/workflows/complete-milestone.md +696 -696
  218. package/kit/framework/workflows/diagnose-issues.md +231 -231
  219. package/kit/framework/workflows/discovery-phase.md +289 -289
  220. package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
  221. package/kit/framework/workflows/discuss-phase.md +784 -784
  222. package/kit/framework/workflows/do.md +104 -104
  223. package/kit/framework/workflows/execute-phase.md +838 -838
  224. package/kit/framework/workflows/execute-plan.md +510 -510
  225. package/kit/framework/workflows/fast.md +102 -102
  226. package/kit/framework/workflows/forensics.md +265 -265
  227. package/kit/framework/workflows/health.md +181 -181
  228. package/kit/framework/workflows/help.md +619 -619
  229. package/kit/framework/workflows/insert-phase.md +130 -130
  230. package/kit/framework/workflows/list-phase-assumptions.md +178 -178
  231. package/kit/framework/workflows/list-workspaces.md +56 -56
  232. package/kit/framework/workflows/manager.md +362 -362
  233. package/kit/framework/workflows/map-codebase.md +377 -377
  234. package/kit/framework/workflows/milestone-summary.md +223 -223
  235. package/kit/framework/workflows/new-milestone.md +486 -486
  236. package/kit/framework/workflows/new-project.md +1159 -1159
  237. package/kit/framework/workflows/new-workspace.md +237 -237
  238. package/kit/framework/workflows/next.md +97 -97
  239. package/kit/framework/workflows/node-repair.md +92 -92
  240. package/kit/framework/workflows/note.md +156 -156
  241. package/kit/framework/workflows/pause-work.md +176 -176
  242. package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
  243. package/kit/framework/workflows/plan-phase.md +765 -765
  244. package/kit/framework/workflows/plant-seed.md +169 -169
  245. package/kit/framework/workflows/pr-branch.md +129 -129
  246. package/kit/framework/workflows/profile-user.md +450 -450
  247. package/kit/framework/workflows/progress.md +507 -507
  248. package/kit/framework/workflows/quick.md +757 -757
  249. package/kit/framework/workflows/remove-phase.md +155 -155
  250. package/kit/framework/workflows/remove-workspace.md +90 -90
  251. package/kit/framework/workflows/research-phase.md +82 -82
  252. package/kit/framework/workflows/resume-project.md +326 -326
  253. package/kit/framework/workflows/review.md +228 -228
  254. package/kit/framework/workflows/session-report.md +146 -146
  255. package/kit/framework/workflows/settings.md +283 -283
  256. package/kit/framework/workflows/ship.md +228 -228
  257. package/kit/framework/workflows/stats.md +60 -60
  258. package/kit/framework/workflows/transition.md +671 -671
  259. package/kit/framework/workflows/ui-phase.md +302 -302
  260. package/kit/framework/workflows/ui-review.md +165 -165
  261. package/kit/framework/workflows/update.md +323 -323
  262. package/kit/framework/workflows/validate-phase.md +174 -174
  263. package/kit/framework/workflows/verify-phase.md +252 -252
  264. package/kit/framework/workflows/verify-work.md +637 -637
  265. package/kit/hooks/check-update.js +118 -118
  266. package/kit/hooks/context-monitor.js +163 -163
  267. package/kit/hooks/kit-attribution-reminder.cjs +98 -0
  268. package/kit/hooks/prompt-guard.js +103 -103
  269. package/kit/hooks/statusline.js +125 -125
  270. package/kit/hooks/workflow-guard.js +101 -101
  271. package/kit/settings.json +45 -45
  272. package/kit/skills/_shared-supabase/glossary.md +17 -0
  273. package/kit/skills/ai-prompt-characterization/SKILL.md +335 -335
  274. package/kit/skills/armadilhas-sistemas-distribuidos/SKILL.md +447 -447
  275. package/kit/skills/audit-log-multi-tenant/SKILL.md +340 -340
  276. package/kit/skills/b2b-saas-architecture/SKILL.md +300 -300
  277. package/kit/skills/consistencia-leitura-replica/SKILL.md +385 -385
  278. package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +343 -343
  279. package/kit/skills/escolha-modelo-consistencia/SKILL.md +494 -494
  280. package/kit/skills/evolucao-schema-compativel/SKILL.md +448 -448
  281. package/kit/skills/evolution-go-whatsapp-integration/SKILL.md +322 -322
  282. package/kit/skills/example-skill/SKILL.md +42 -42
  283. package/kit/skills/legacy-api-only-applications/SKILL.md +358 -358
  284. package/kit/skills/legacy-characterization-tests/SKILL.md +330 -330
  285. package/kit/skills/legacy-effect-analysis/SKILL.md +331 -331
  286. package/kit/skills/legacy-extract-class/SKILL.md +203 -203
  287. package/kit/skills/legacy-programming-by-difference/SKILL.md +252 -252
  288. package/kit/skills/legacy-seams-and-test-harness/SKILL.md +460 -460
  289. package/kit/skills/legacy-shotgun-surgery/SKILL.md +286 -286
  290. package/kit/skills/legacy-sprout-wrap-techniques/SKILL.md +434 -434
  291. package/kit/skills/legacy-storytelling-naked-crc/SKILL.md +270 -270
  292. package/kit/skills/lgpd-multi-tenant-compliance/SKILL.md +340 -340
  293. package/kit/skills/member-invite-flow/SKILL.md +305 -305
  294. package/kit/skills/member-management-react-shadcn/SKILL.md +328 -328
  295. package/kit/skills/multi-tenant-performance-scaling/SKILL.md +316 -316
  296. package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +342 -342
  297. package/kit/skills/org-onboarding-flow/SKILL.md +257 -257
  298. package/kit/skills/org-switcher-react-pattern/SKILL.md +349 -349
  299. package/kit/skills/permission-gate-react-pattern/SKILL.md +271 -271
  300. package/kit/skills/postgres-isolamento-concorrencia/SKILL.md +552 -552
  301. package/kit/skills/pre-refactor-characterization/SKILL.md +421 -421
  302. package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +338 -338
  303. package/kit/skills/streams-eventos-cdc/SKILL.md +711 -711
  304. package/kit/skills/supabase-branching-workflow/SKILL.md +544 -544
  305. package/kit/skills/supabase-ci-cd-github-actions/SKILL.md +880 -880
  306. package/kit/skills/supabase-column-level-security/SKILL.md +426 -426
  307. package/kit/skills/supabase-config-toml-remotes/SKILL.md +807 -807
  308. package/kit/skills/supabase-custom-claims-rbac/SKILL.md +472 -472
  309. package/kit/skills/supabase-edge-functions/SKILL.md +229 -141
  310. package/kit/skills/supabase-edge-functions-auth/SKILL.md +309 -0
  311. package/kit/skills/supabase-edge-functions-limits/SKILL.md +302 -0
  312. package/kit/skills/supabase-edge-functions-mcp-server/SKILL.md +279 -0
  313. package/kit/skills/supabase-edge-functions-testing/SKILL.md +277 -0
  314. package/kit/skills/supabase-edge-runtime-builtins/SKILL.md +357 -0
  315. package/kit/skills/supabase-migration-repair/SKILL.md +823 -823
  316. package/kit/skills/supabase-migrations/SKILL.md +297 -297
  317. package/kit/skills/supabase-pgtap-testing/SKILL.md +1053 -1053
  318. package/kit/skills/supabase-postgres-roles/SKILL.md +392 -392
  319. package/kit/skills/supabase-realtime/SKILL.md +460 -236
  320. package/kit/skills/supabase-rls-defense-in-depth/SKILL.md +418 -418
  321. package/kit/skills/supabase-rls-policies/SKILL.md +635 -635
  322. package/kit/skills/super-admin-platform-pattern/SKILL.md +326 -326
  323. package/kit/skills/tenant-quente-mitigacao/SKILL.md +605 -605
  324. package/kit/skills/whatsapp-conversation-state-machine/SKILL.md +287 -287
  325. package/package.json +1 -1
  326. package/src/core/kit.js +216 -216
  327. package/src/core/reflect.js +247 -247
  328. package/src/core/reverse-sync.js +372 -372
  329. package/src/core/sync.js +418 -418
  330. package/src/core/watch.js +121 -121
  331. package/src/mcp-server/index.js +715 -693
@@ -1,93 +1,93 @@
1
- # /setup-notion — Inicializar Documentação Notion para um Projeto
2
-
3
- Cria a estrutura de páginas Notion para um novo projeto sob a página raiz do seu workspace e gera o `.claude/notion-config.json` local.
4
-
5
- ## Quando usar
6
-
7
- Ao iniciar um novo projeto framework que ainda não tem página no Notion.
8
- Execute uma vez por projeto — depois use `/publicar` normalmente.
9
-
10
- ## Processo
11
-
12
- ### Passo 1 — Ler contexto do projeto
13
-
14
- Leia `.planning/PROJECT.md` para obter:
15
- - Nome do projeto
16
- - Stack
17
- - Descrição em 1 frase
18
-
19
- ### Passo 2 — Criar páginas no Notion
20
-
21
- Use o Notion MCP (`notion-create-pages`) com `parent.page_id = "{NOTION_PARENT_PAGE_ID}"`, onde `NOTION_PARENT_PAGE_ID` é o ID da página raiz do seu workspace de documentação (configure via env var `KIT_NOTION_PARENT_PAGE_ID` ou substitua diretamente).
22
-
23
- Crie a página raiz do projeto com ícone 📋 e este conteúdo:
24
-
25
- ```
26
- [Callout azul] {NOME_PROJETO} — {DESCRICAO_1_FRASE}
27
-
28
- ---
29
-
30
- ## Stack
31
- [Tabela com camadas e tecnologias do PROJECT.md]
32
-
33
- ---
34
-
35
- ## Estrutura da Documentação
36
- - changelog/ — Uma entrada por milestone
37
- - features/ — O que cada feature faz
38
- - adr/ — Decisões arquiteturais
39
- - runbooks/ — Procedimentos operacionais
40
-
41
- ---
42
-
43
- ## Versões Lançadas
44
- [Tabela vazia: Versão | Nome | Data | Status]
45
- ```
46
-
47
- Depois crie as 4 subpáginas sob a página raiz criada:
48
- - 📅 `changelog/` — com tabela de índice vazia
49
- - 📄 `features/` — com tabela de índice vazia
50
- - 🏛️ `adr/` — com tabela de índice vazia
51
- - 📖 `runbooks/` — com tabela de índice vazia
52
-
53
- ### Passo 3 — Gerar notion-config.json
54
-
55
- Com os IDs retornados pelo Notion MCP, crie `.claude/notion-config.json`:
56
-
57
- ```json
58
- {
59
- "project": "{NOME_PROJETO}",
60
- "notion": {
61
- "root": "{ID_ROOT}",
62
- "root_url": "{URL_ROOT}",
63
- "changelog": "{ID_CHANGELOG}",
64
- "features": "{ID_FEATURES}",
65
- "adr": "{ID_ADR}",
66
- "runbooks": "{ID_RUNBOOKS}"
67
- }
68
- }
69
- ```
70
-
71
- ### Passo 4 — Reportar resultado
72
-
73
- ```
74
- ✅ Notion configurado para {NOME_PROJETO}
75
-
76
- 📋 Página principal: {URL_ROOT}
77
- 📅 changelog/: {URL_CHANGELOG}
78
- 📄 features/: {URL_FEATURES}
79
- 🏛️ adr/: {URL_ADR}
80
- 📖 runbooks/: {URL_RUNBOOKS}
81
-
82
- Arquivo criado: .claude/notion-config.json
83
- Próximo passo: use /publicar ao concluir o próximo milestone.
84
- ```
85
-
86
- ## Configuração da página raiz do Notion
87
-
88
- Defina o ID da página raiz onde os projetos serão criados (uma página "guarda-chuva" no seu workspace Notion):
89
-
90
- - Via env var: `export KIT_NOTION_PARENT_PAGE_ID="<ID_DA_PAGINA>"`
91
- - Ou substitua `{NOTION_PARENT_PAGE_ID}` no Passo 2 pelo ID literal antes de executar.
92
-
93
- Para obter o ID: abra a página no Notion → Share → Copy link → o ID é o hash de 32 caracteres no final da URL.
1
+ # /setup-notion — Inicializar Documentação Notion para um Projeto
2
+
3
+ Cria a estrutura de páginas Notion para um novo projeto sob a página raiz do seu workspace e gera o `.claude/notion-config.json` local.
4
+
5
+ ## Quando usar
6
+
7
+ Ao iniciar um novo projeto framework que ainda não tem página no Notion.
8
+ Execute uma vez por projeto — depois use `/publicar` normalmente.
9
+
10
+ ## Processo
11
+
12
+ ### Passo 1 — Ler contexto do projeto
13
+
14
+ Leia `.planning/PROJECT.md` para obter:
15
+ - Nome do projeto
16
+ - Stack
17
+ - Descrição em 1 frase
18
+
19
+ ### Passo 2 — Criar páginas no Notion
20
+
21
+ Use o Notion MCP (`notion-create-pages`) com `parent.page_id = "{NOTION_PARENT_PAGE_ID}"`, onde `NOTION_PARENT_PAGE_ID` é o ID da página raiz do seu workspace de documentação (configure via env var `KIT_NOTION_PARENT_PAGE_ID` ou substitua diretamente).
22
+
23
+ Crie a página raiz do projeto com ícone 📋 e este conteúdo:
24
+
25
+ ```
26
+ [Callout azul] {NOME_PROJETO} — {DESCRICAO_1_FRASE}
27
+
28
+ ---
29
+
30
+ ## Stack
31
+ [Tabela com camadas e tecnologias do PROJECT.md]
32
+
33
+ ---
34
+
35
+ ## Estrutura da Documentação
36
+ - changelog/ — Uma entrada por milestone
37
+ - features/ — O que cada feature faz
38
+ - adr/ — Decisões arquiteturais
39
+ - runbooks/ — Procedimentos operacionais
40
+
41
+ ---
42
+
43
+ ## Versões Lançadas
44
+ [Tabela vazia: Versão | Nome | Data | Status]
45
+ ```
46
+
47
+ Depois crie as 4 subpáginas sob a página raiz criada:
48
+ - 📅 `changelog/` — com tabela de índice vazia
49
+ - 📄 `features/` — com tabela de índice vazia
50
+ - 🏛️ `adr/` — com tabela de índice vazia
51
+ - 📖 `runbooks/` — com tabela de índice vazia
52
+
53
+ ### Passo 3 — Gerar notion-config.json
54
+
55
+ Com os IDs retornados pelo Notion MCP, crie `.claude/notion-config.json`:
56
+
57
+ ```json
58
+ {
59
+ "project": "{NOME_PROJETO}",
60
+ "notion": {
61
+ "root": "{ID_ROOT}",
62
+ "root_url": "{URL_ROOT}",
63
+ "changelog": "{ID_CHANGELOG}",
64
+ "features": "{ID_FEATURES}",
65
+ "adr": "{ID_ADR}",
66
+ "runbooks": "{ID_RUNBOOKS}"
67
+ }
68
+ }
69
+ ```
70
+
71
+ ### Passo 4 — Reportar resultado
72
+
73
+ ```
74
+ ✅ Notion configurado para {NOME_PROJETO}
75
+
76
+ 📋 Página principal: {URL_ROOT}
77
+ 📅 changelog/: {URL_CHANGELOG}
78
+ 📄 features/: {URL_FEATURES}
79
+ 🏛️ adr/: {URL_ADR}
80
+ 📖 runbooks/: {URL_RUNBOOKS}
81
+
82
+ Arquivo criado: .claude/notion-config.json
83
+ Próximo passo: use /publicar ao concluir o próximo milestone.
84
+ ```
85
+
86
+ ## Configuração da página raiz do Notion
87
+
88
+ Defina o ID da página raiz onde os projetos serão criados (uma página "guarda-chuva" no seu workspace Notion):
89
+
90
+ - Via env var: `export KIT_NOTION_PARENT_PAGE_ID="<ID_DA_PAGINA>"`
91
+ - Ou substitua `{NOTION_PARENT_PAGE_ID}` no Passo 2 pelo ID literal antes de executar.
92
+
93
+ Para obter o ID: abra a página no Notion → Share → Copy link → o ID é o hash de 32 caracteres no final da URL.
@@ -1,179 +1,179 @@
1
- ---
2
- name: storytelling
3
- description: Invoca storytelling-analyst — IA gera mental model de codebase desconhecido (story 5 frases + inventário + naked CRC + responsibility hot spots + extract candidates).
4
- argument-hint: "<target_dir_or_file> [--depth deep|shallow] [--include-tests] [--output PATH]"
5
- allowed-tools:
6
- - Read
7
- - Bash
8
- - Grep
9
- - Glob
10
- - Task
11
- - Write
12
- ---
13
-
14
- <objective>
15
- Gerar **mental model de codebase desconhecido** via IA — story em 5 frases + inventário de classes/funções + naked CRC sketch + responsibility hot spots + extract candidates priorizados. Invoca o agente [`storytelling-analyst`](../agents/storytelling-analyst.md) que aplica a skill [`legacy-storytelling-naked-crc`](../skills/legacy-storytelling-naked-crc/SKILL.md) — caps 16-17 do livro Feathers + modernização IA primeiro draft.
16
-
17
- **Cria/Atualiza:**
18
- - `.planning/storytelling/<module-slug>.md` — relatório com story + inventário + CRC + hot spots
19
-
20
- **Após:** o user reduz tempo de comprehension de codebase desconhecido de 4-8h (leitura cega manual) para 30 min (revisão informada de IA primeiro draft). Pré-requisito recomendado para `/encontrar-seams` ou `/refactor-seguro` em código novo.
21
- </objective>
22
-
23
- <context>
24
- **Argumentos:**
25
- - `<target_dir_or_file>` — diretório ou arquivo a analisar — OBRIGATÓRIO
26
- - `--depth deep|shallow` — `shallow` = só story + inventário; `deep` = + CRC + hot spots + extract candidates (default: deep)
27
- - `--include-tests` — incluir tests no scope (default: false; distinção comportamento prod vs harness)
28
- - `--max-lines N` — limite de leitura (default: 1500; agent quebra em chunks se maior)
29
- - `--output PATH` — caminho do output (default: `.planning/storytelling/<slug>.md`)
30
-
31
- **Exemplos:**
32
- ```
33
- /storytelling src/orders/ # diretório completo
34
- /storytelling src/orders/OrderService.ts # arquivo específico
35
- /storytelling src/orders/ --depth=shallow # rápido — só story + inventário
36
- /storytelling src/orders/ --include-tests # incluir tests no scope
37
- /storytelling supabase/functions/process-payments/ # Edge Function module
38
- ```
39
-
40
- **Quando este comando é o caminho:**
41
- - Você herdou módulo desconhecido (onboarding, transferência, post-acquisition)
42
- - Vai modificar código que não conhece
43
- - Pré-requisito de `/encontrar-seams` ou `/refactor-seguro`
44
- - Precisa identificar candidates de extract class antes de planejar refactor
45
- - Code review onde reviewer não conhece o módulo
46
-
47
- **Quando NÃO é o caminho:**
48
- - Codebase < 200 linhas — leitura direta é mais rápida
49
- - Você já trabalhou no módulo nas últimas 2 semanas — mental model fresco
50
- - Mudança trivial (typo, comment) — overhead > valor
51
- </context>
52
-
53
- <process>
54
-
55
- ## 1. Parsear argumentos
56
-
57
- ```bash
58
- TARGET=$(echo "$ARGUMENTS" | awk '{print $1}')
59
- DEPTH=$(echo "$ARGUMENTS" | grep -oE -- '--depth[= ][^ ]+' | sed 's/--depth[= ]//')
60
- MAX_LINES=$(echo "$ARGUMENTS" | grep -oE -- '--max-lines [0-9]+' | awk '{print $2}')
61
- OUTPUT_PATH=$(echo "$ARGUMENTS" | grep -oE -- '--output [^ ]+' | awk '{print $2}')
62
- INCLUDE_TESTS=false
63
- echo "$ARGUMENTS" | grep -qE -- '--include-tests' && INCLUDE_TESTS=true
64
-
65
- [ -z "$DEPTH" ] && DEPTH="deep"
66
- [ -z "$MAX_LINES" ] && MAX_LINES=1500
67
-
68
- if [ -z "$TARGET" ]; then
69
- echo "ERROR: target obrigatório (arquivo ou diretório)"
70
- exit 1
71
- fi
72
-
73
- if [ ! -e "$TARGET" ]; then
74
- echo "ERROR: target não encontrado: $TARGET"
75
- exit 1
76
- fi
77
-
78
- # auto-output path
79
- if [ -z "$OUTPUT_PATH" ]; then
80
- SLUG=$(basename "$(realpath "$TARGET")" | sed 's/[^a-zA-Z0-9]/-/g')
81
- OUTPUT_PATH=".planning/storytelling/${SLUG}.md"
82
- fi
83
-
84
- mkdir -p "$(dirname "$OUTPUT_PATH")"
85
- ```
86
-
87
- ## 2. Detectar tamanho
88
-
89
- ```bash
90
- if [ -f "$TARGET" ]; then
91
- TOTAL_LINES=$(wc -l < "$TARGET")
92
- elif [ -d "$TARGET" ]; then
93
- TOTAL_LINES=$(find "$TARGET" -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.py" -o -name "*.java" -o -name "*.go" \) ! -path "*node_modules*" -exec cat {} + 2>/dev/null | wc -l)
94
- fi
95
-
96
- if [ "$TOTAL_LINES" -gt "$MAX_LINES" ]; then
97
- echo "ℹ Target tem $TOTAL_LINES linhas (> $MAX_LINES). Agent vai chunkar análise."
98
- fi
99
- ```
100
-
101
- ## 3. Dispatch para `storytelling-analyst`
102
-
103
- ```text
104
- Task(
105
- subagent_type="storytelling-analyst",
106
- prompt="
107
- target: ${TARGET}
108
- depth: ${DEPTH}
109
- output_path: ${OUTPUT_PATH}
110
- max_lines: ${MAX_LINES}
111
- include_tests: ${INCLUDE_TESTS}
112
-
113
- Aplicar skill legacy-storytelling-naked-crc. Etapas:
114
- 1. Inventário inicial (listar files + classes/funções top-level)
115
- 2. Leitura + síntese — produzir story em ≤ 5 frases
116
- 3. Inventário canônico (tabela com responsabilidade primária + cluster)
117
- 4. (depth=deep) Naked CRC sketch ASCII
118
- 5. (depth=deep) Responsibility hot spots — classes fazendo > 3 coisas distintas
119
- 6. (depth=deep) Abstrações ausentes (sugestões)
120
- 7. (depth=deep) Extract class candidates priorizados
121
- 8. Gotchas / surpresas
122
- 9. Próximas ações sugeridas (effect sketch, /caracterizar, /refactor-seguro)
123
- 10. Output: .planning/storytelling/<slug>.md
124
-
125
- PRINCÍPIO: você É a IA primeiro draft. Não busque perfeição — busque utilidade. Seja honesto sobre incertezas.
126
- "
127
- )
128
- ```
129
-
130
- ## 4. Pós-output
131
-
132
- ```
133
- ═══════════════════════════════════════════════════════════
134
- framework ► STORYTELLING ▸ ${OUTPUT_PATH}
135
- ═══════════════════════════════════════════════════════════
136
-
137
- [output do storytelling-analyst]
138
-
139
- ## ⚠ Validação obrigatória
140
-
141
- Esta análise é PRIMEIRA PASSADA por IA. Erros possíveis:
142
- - Relações alucinadas (LLM "viu" colaborador que não existe)
143
- - Hot spots inflated (cluster coeso marcado como hot spot)
144
- - Sugestões fora de escopo (extract candidate com 2-week effort marcado como 3h)
145
-
146
- Cross-check OBRIGATÓRIO antes de basear decisões:
147
- 1. **Spot-check 3-5 funções aleatórias** contra inventário (existem? responsabilidade descrita está correta?)
148
- 2. **Confirmar colaboradores** existem (grep no codebase pelos nomes mencionados)
149
- 3. **Validar hot spots** contra leitura humana (são realmente "fazendo demais"?)
150
- 4. **Refinar story** se necessário; versão final em ${OUTPUT_PATH} é HUMANA, IA é primeiro draft
151
-
152
- ## Próximos passos
153
-
154
- 1. Validar story (5-15 min)
155
- 2. Se vai modificar: `/encontrar-seams ${TARGET}` (se arquivo) ou `/storytelling <sub-target>` (refinar para sub-módulo)
156
- 3. Se vai refactorar: `/refactor-seguro ${TARGET}` (chain canônico)
157
- 4. Se vai extrair: revisar extract candidates — `/legacy refactor` por candidate
158
- 5. Se há shotgun surgery em outros módulos relacionados: `/detectar-duplicacao src/`
159
-
160
- ## Cross-suite
161
-
162
- - **/encontrar-seams** (v1.12) — story informa onde existem deps externas
163
- - **/caracterizar** (v1.12) — story prioriza qual hot spot caracterizar primeiro
164
- - **/refactor-seguro** (v1.12) — chain canônico após storytelling
165
- - **/detectar-duplicacao** (v1.12) — shotgun across módulos relacionados
166
- - **/mapear-codebase** (framework v1.7+) — comando análogo mais geral; storytelling complementa com narrativa
167
- ```
168
-
169
- </process>
170
-
171
- <success_criteria>
172
- - [ ] $ARGUMENTS parseados (target obrigatório)
173
- - [ ] Tamanho detectado e chunking ativado se necessário
174
- - [ ] `storytelling-analyst` invocado via Task com depth resolvido
175
- - [ ] Output forwarded transparentemente
176
- - [ ] Warning de validação manual obrigatória emitido
177
- - [ ] Próximos passos sugerem encontrar-seams, caracterizar, refactor-seguro
178
- - [ ] Cross-references com /detectar-duplicacao, /mapear-codebase, /caracterizar
179
- </success_criteria>
1
+ ---
2
+ name: storytelling
3
+ description: Invoca storytelling-analyst — IA gera mental model de codebase desconhecido (story 5 frases + inventário + naked CRC + responsibility hot spots + extract candidates).
4
+ argument-hint: "<target_dir_or_file> [--depth deep|shallow] [--include-tests] [--output PATH]"
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ - Grep
9
+ - Glob
10
+ - Task
11
+ - Write
12
+ ---
13
+
14
+ <objective>
15
+ Gerar **mental model de codebase desconhecido** via IA — story em 5 frases + inventário de classes/funções + naked CRC sketch + responsibility hot spots + extract candidates priorizados. Invoca o agente [`storytelling-analyst`](../agents/storytelling-analyst.md) que aplica a skill [`legacy-storytelling-naked-crc`](../skills/legacy-storytelling-naked-crc/SKILL.md) — caps 16-17 do livro Feathers + modernização IA primeiro draft.
16
+
17
+ **Cria/Atualiza:**
18
+ - `.planning/storytelling/<module-slug>.md` — relatório com story + inventário + CRC + hot spots
19
+
20
+ **Após:** o user reduz tempo de comprehension de codebase desconhecido de 4-8h (leitura cega manual) para 30 min (revisão informada de IA primeiro draft). Pré-requisito recomendado para `/encontrar-seams` ou `/refactor-seguro` em código novo.
21
+ </objective>
22
+
23
+ <context>
24
+ **Argumentos:**
25
+ - `<target_dir_or_file>` — diretório ou arquivo a analisar — OBRIGATÓRIO
26
+ - `--depth deep|shallow` — `shallow` = só story + inventário; `deep` = + CRC + hot spots + extract candidates (default: deep)
27
+ - `--include-tests` — incluir tests no scope (default: false; distinção comportamento prod vs harness)
28
+ - `--max-lines N` — limite de leitura (default: 1500; agent quebra em chunks se maior)
29
+ - `--output PATH` — caminho do output (default: `.planning/storytelling/<slug>.md`)
30
+
31
+ **Exemplos:**
32
+ ```
33
+ /storytelling src/orders/ # diretório completo
34
+ /storytelling src/orders/OrderService.ts # arquivo específico
35
+ /storytelling src/orders/ --depth=shallow # rápido — só story + inventário
36
+ /storytelling src/orders/ --include-tests # incluir tests no scope
37
+ /storytelling supabase/functions/process-payments/ # Edge Function module
38
+ ```
39
+
40
+ **Quando este comando é o caminho:**
41
+ - Você herdou módulo desconhecido (onboarding, transferência, post-acquisition)
42
+ - Vai modificar código que não conhece
43
+ - Pré-requisito de `/encontrar-seams` ou `/refactor-seguro`
44
+ - Precisa identificar candidates de extract class antes de planejar refactor
45
+ - Code review onde reviewer não conhece o módulo
46
+
47
+ **Quando NÃO é o caminho:**
48
+ - Codebase < 200 linhas — leitura direta é mais rápida
49
+ - Você já trabalhou no módulo nas últimas 2 semanas — mental model fresco
50
+ - Mudança trivial (typo, comment) — overhead > valor
51
+ </context>
52
+
53
+ <process>
54
+
55
+ ## 1. Parsear argumentos
56
+
57
+ ```bash
58
+ TARGET=$(echo "$ARGUMENTS" | awk '{print $1}')
59
+ DEPTH=$(echo "$ARGUMENTS" | grep -oE -- '--depth[= ][^ ]+' | sed 's/--depth[= ]//')
60
+ MAX_LINES=$(echo "$ARGUMENTS" | grep -oE -- '--max-lines [0-9]+' | awk '{print $2}')
61
+ OUTPUT_PATH=$(echo "$ARGUMENTS" | grep -oE -- '--output [^ ]+' | awk '{print $2}')
62
+ INCLUDE_TESTS=false
63
+ echo "$ARGUMENTS" | grep -qE -- '--include-tests' && INCLUDE_TESTS=true
64
+
65
+ [ -z "$DEPTH" ] && DEPTH="deep"
66
+ [ -z "$MAX_LINES" ] && MAX_LINES=1500
67
+
68
+ if [ -z "$TARGET" ]; then
69
+ echo "ERROR: target obrigatório (arquivo ou diretório)"
70
+ exit 1
71
+ fi
72
+
73
+ if [ ! -e "$TARGET" ]; then
74
+ echo "ERROR: target não encontrado: $TARGET"
75
+ exit 1
76
+ fi
77
+
78
+ # auto-output path
79
+ if [ -z "$OUTPUT_PATH" ]; then
80
+ SLUG=$(basename "$(realpath "$TARGET")" | sed 's/[^a-zA-Z0-9]/-/g')
81
+ OUTPUT_PATH=".planning/storytelling/${SLUG}.md"
82
+ fi
83
+
84
+ mkdir -p "$(dirname "$OUTPUT_PATH")"
85
+ ```
86
+
87
+ ## 2. Detectar tamanho
88
+
89
+ ```bash
90
+ if [ -f "$TARGET" ]; then
91
+ TOTAL_LINES=$(wc -l < "$TARGET")
92
+ elif [ -d "$TARGET" ]; then
93
+ TOTAL_LINES=$(find "$TARGET" -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.py" -o -name "*.java" -o -name "*.go" \) ! -path "*node_modules*" -exec cat {} + 2>/dev/null | wc -l)
94
+ fi
95
+
96
+ if [ "$TOTAL_LINES" -gt "$MAX_LINES" ]; then
97
+ echo "ℹ Target tem $TOTAL_LINES linhas (> $MAX_LINES). Agent vai chunkar análise."
98
+ fi
99
+ ```
100
+
101
+ ## 3. Dispatch para `storytelling-analyst`
102
+
103
+ ```text
104
+ Task(
105
+ subagent_type="storytelling-analyst",
106
+ prompt="
107
+ target: ${TARGET}
108
+ depth: ${DEPTH}
109
+ output_path: ${OUTPUT_PATH}
110
+ max_lines: ${MAX_LINES}
111
+ include_tests: ${INCLUDE_TESTS}
112
+
113
+ Aplicar skill legacy-storytelling-naked-crc. Etapas:
114
+ 1. Inventário inicial (listar files + classes/funções top-level)
115
+ 2. Leitura + síntese — produzir story em ≤ 5 frases
116
+ 3. Inventário canônico (tabela com responsabilidade primária + cluster)
117
+ 4. (depth=deep) Naked CRC sketch ASCII
118
+ 5. (depth=deep) Responsibility hot spots — classes fazendo > 3 coisas distintas
119
+ 6. (depth=deep) Abstrações ausentes (sugestões)
120
+ 7. (depth=deep) Extract class candidates priorizados
121
+ 8. Gotchas / surpresas
122
+ 9. Próximas ações sugeridas (effect sketch, /caracterizar, /refactor-seguro)
123
+ 10. Output: .planning/storytelling/<slug>.md
124
+
125
+ PRINCÍPIO: você É a IA primeiro draft. Não busque perfeição — busque utilidade. Seja honesto sobre incertezas.
126
+ "
127
+ )
128
+ ```
129
+
130
+ ## 4. Pós-output
131
+
132
+ ```
133
+ ═══════════════════════════════════════════════════════════
134
+ framework ► STORYTELLING ▸ ${OUTPUT_PATH}
135
+ ═══════════════════════════════════════════════════════════
136
+
137
+ [output do storytelling-analyst]
138
+
139
+ ## ⚠ Validação obrigatória
140
+
141
+ Esta análise é PRIMEIRA PASSADA por IA. Erros possíveis:
142
+ - Relações alucinadas (LLM "viu" colaborador que não existe)
143
+ - Hot spots inflated (cluster coeso marcado como hot spot)
144
+ - Sugestões fora de escopo (extract candidate com 2-week effort marcado como 3h)
145
+
146
+ Cross-check OBRIGATÓRIO antes de basear decisões:
147
+ 1. **Spot-check 3-5 funções aleatórias** contra inventário (existem? responsabilidade descrita está correta?)
148
+ 2. **Confirmar colaboradores** existem (grep no codebase pelos nomes mencionados)
149
+ 3. **Validar hot spots** contra leitura humana (são realmente "fazendo demais"?)
150
+ 4. **Refinar story** se necessário; versão final em ${OUTPUT_PATH} é HUMANA, IA é primeiro draft
151
+
152
+ ## Próximos passos
153
+
154
+ 1. Validar story (5-15 min)
155
+ 2. Se vai modificar: `/encontrar-seams ${TARGET}` (se arquivo) ou `/storytelling <sub-target>` (refinar para sub-módulo)
156
+ 3. Se vai refactorar: `/refactor-seguro ${TARGET}` (chain canônico)
157
+ 4. Se vai extrair: revisar extract candidates — `/legacy refactor` por candidate
158
+ 5. Se há shotgun surgery em outros módulos relacionados: `/detectar-duplicacao src/`
159
+
160
+ ## Cross-suite
161
+
162
+ - **/encontrar-seams** (v1.12) — story informa onde existem deps externas
163
+ - **/caracterizar** (v1.12) — story prioriza qual hot spot caracterizar primeiro
164
+ - **/refactor-seguro** (v1.12) — chain canônico após storytelling
165
+ - **/detectar-duplicacao** (v1.12) — shotgun across módulos relacionados
166
+ - **/mapear-codebase** (framework v1.7+) — comando análogo mais geral; storytelling complementa com narrativa
167
+ ```
168
+
169
+ </process>
170
+
171
+ <success_criteria>
172
+ - [ ] $ARGUMENTS parseados (target obrigatório)
173
+ - [ ] Tamanho detectado e chunking ativado se necessário
174
+ - [ ] `storytelling-analyst` invocado via Task com depth resolvido
175
+ - [ ] Output forwarded transparentemente
176
+ - [ ] Warning de validação manual obrigatória emitido
177
+ - [ ] Próximos passos sugerem encontrar-seams, caracterizar, refactor-seguro
178
+ - [ ] Cross-references com /detectar-duplicacao, /mapear-codebase, /caracterizar
179
+ </success_criteria>
@@ -43,12 +43,17 @@ Agents disponíveis: `kit/agents/supabase-*.md` (Phase 26) + `kit/agents/schema-
43
43
  | `column` | `coluna`, `col-priv` | `supabase-column-privileges-writer` (v1.24 canonical materializer column-level — recebe spec via Task) |
44
44
  | `rbac` | `roles`, `permissions`, `claims` | `supabase-rbac-implementer` (v1.25 canonical materializer Custom Claims & RBAC via Auth Hook — recebe spec via Task) |
45
45
  | `role` | `papel`, `roles-pg` | `supabase-roles-implementer` (v1.26 canonical materializer Postgres Roles — recebe spec via Task; system access) |
46
- | `edge` | `edge-function`, `function`, `funcao` | `supabase-edge-fn-writer` |
46
+ | `edge` | `edge-function`, `function`, `funcao` | `supabase-edge-fn-writer` (v1.30: 2026 patterns — withSupabase, deno.json, config.toml) |
47
+ | `test` | `testar`, `tests`, `deno-test` | `supabase-edge-fn-tester` (v1.30 — gera Deno tests para função existente) |
48
+ | `mcp` | `mcp-server`, `mcp-lite` | `supabase-edge-fn-writer` com `pattern=mcp-server` |
49
+ | `ai` | `ai-session`, `embeddings-builtin`, `gte-small`, `ollama` | `supabase-edge-fn-writer` com `pattern=rag-embeddings` (Supabase.ai.Session) |
50
+ | `wasm` | `wasm-module` | `supabase-edge-fn-writer` com `pattern=wasm` + static_files config.toml |
51
+ | `websocket` | `ws`, `realtime-ws` | `supabase-edge-fn-writer` com `pattern=websocket` + `per_worker` |
47
52
  | `realtime` | `tempo-real` | `supabase-realtime-implementer` |
48
53
  | `auth` | `autenticacao`, `auth-ssr` | `supabase-auth-bootstrapper` |
49
54
  | `storage` | `armazenamento` | `supabase-storage-implementer` |
50
- | `rag` | `pgvector`, `embeddings` | `supabase-edge-fn-writer` com prompt sobre embeddings |
51
- | `cron` | `queues`, `pgmq`, `background` | `supabase-edge-fn-writer` com prompt sobre `cronpgmq → Edge` |
55
+ | `rag` | `pgvector`, `embeddings` | `supabase-edge-fn-writer` com `pattern=rag-embeddings` |
56
+ | `cron` | `queues`, `pgmq`, `background` | `supabase-edge-fn-writer` com `pattern=cron-pgmq` |
52
57
  | `check` | `validar`, `validate` | `schema-checker` (validação pré-migration) |
53
58
  | `help` | `ajuda`, `?` | exibe esta tabela inline |
54
59
 
@@ -79,12 +84,17 @@ hardener, harden, endurecer → supabase-rls-hardener (v1.23 canonical
79
84
  column, coluna, col-priv → supabase-column-privileges-writer (v1.24 canonical materializer column-level — feature AVANÇADA)
80
85
  rbac, roles, permissions, claims → supabase-rbac-implementer (v1.25 canonical materializer Custom Claims & RBAC via Auth Hook)
81
86
  role, papel, roles-pg → supabase-roles-implementer (v1.26 canonical materializer Postgres Roles — system access only)
82
- edge, edge-function, function, funcao → supabase-edge-fn-writer
87
+ edge, edge-function, function, funcao → supabase-edge-fn-writer (v1.30: 2026 patterns)
88
+ test, testar, tests, deno-test → supabase-edge-fn-tester (v1.30)
89
+ mcp, mcp-server, mcp-lite → supabase-edge-fn-writer (com flag pattern=mcp-server) (v1.30)
90
+ ai, ai-session, gte-small, ollama → supabase-edge-fn-writer (com flag pattern=rag-embeddings) (v1.30)
91
+ wasm, wasm-module → supabase-edge-fn-writer (com flag pattern=wasm) (v1.30)
92
+ websocket, ws, realtime-ws → supabase-edge-fn-writer (com flag pattern=websocket) (v1.30)
83
93
  realtime, tempo-real → supabase-realtime-implementer
84
94
  auth, autenticacao, auth-ssr → supabase-auth-bootstrapper
85
95
  storage, armazenamento → supabase-storage-implementer
86
- rag, pgvector, embeddings → supabase-edge-fn-writer (com flag rag=true no prompt)
87
- cron, queues, pgmq, background → supabase-edge-fn-writer (com flag pattern=cron-pgmq no prompt)
96
+ rag, pgvector, embeddings → supabase-edge-fn-writer (com flag pattern=rag-embeddings)
97
+ cron, queues, pgmq, background → supabase-edge-fn-writer (com flag pattern=cron-pgmq)
88
98
  check, validar, validate → schema-checker
89
99
  ```
90
100
 
@@ -177,6 +187,16 @@ mode: rag-embeddings (ou cron-pgmq-edge)
177
187
 
178
188
  **Subcomando `role` (v1.26 novo):** dispatch direto para `supabase-roles-implementer`. Recebe spec de custom Postgres roles + hierarchy + GRANT matrix e materializa setup completo (CREATE ROLE com LOGIN PASSWORD opcional + role hierarchy INHERIT/NOINHERIT + GRANT/REVOKE per schema/table/function + password security check). **System access apenas** — para application access (end-users), use `/supabase rbac` (v1.25). Aceita input com bloco `<roles_to_create>` + `<grants>` + `<use_case>` no `$ARGUMENTS`. Cross-ref skill [`supabase-postgres-roles`](../skills/supabase-postgres-roles/SKILL.md).
179
189
 
190
+ **Subcomando `edge` (v1.30 modernizado):** dispatch para `supabase-edge-fn-writer` que agora aplica 6 skills 2026 — env vars JSON dict (`JSON.parse(SUPABASE_PUBLISHABLE_KEYS)['default']`), `withSupabase` para auth (4 modes: `'user' | 'secret:<name>' | 'publishable:<name>' | 'none'`), per-function `deno.json` (substitui import_map global legacy), per-function `config.toml` entry (`verify_jwt`, `entrypoint`, `static_files`), CORS via `npm:@supabase/supabase-js@2.95.0/cors`, instrumentação OTel + 4 golden signals + SRE defenses (timeout/jitter/RateLimitError handling). Aceita flag `pattern=basic|rag-embeddings|cron-pgmq|mcp-server|websocket|wasm|background-task` no `$ARGUMENTS`. Auto-handoff sugerido para `/supabase test <fn>` ao final.
191
+
192
+ **Subcomando `test` (v1.30 novo):** dispatch direto para `supabase-edge-fn-tester`. Gera `supabase/functions/tests/<fn>-test.ts` com cobertura canônica de 5 equivalence classes (happy/validation/auth/rate-limit/timeout) usando Deno test runner + `assertSnapshot` + `FunctionsHttpError`/`FunctionsRelayError`/`FunctionsFetchError`. Pattern-specific: `characterization` (legacy via fixtures capturados), `webhook` (signature HMAC fixture), `rag` (determinismo via temperature=0), `mcp` (delega para MCP Inspector). Handoff cooperativo upstream: `supabase-edge-fn-writer` recomenda esse subcomando automaticamente ao criar função nova. Cross-ref skill [`supabase-edge-functions-testing`](../skills/supabase-edge-functions-testing/SKILL.md).
193
+
194
+ **Subcomandos `mcp` / `ai` / `wasm` / `websocket` (v1.30 novos):** atalhos para `supabase-edge-fn-writer` com pattern específico — economizam o caller de especificar manualmente. Cada um carrega skill especializada:
195
+ - `mcp` → [`supabase-edge-functions-mcp-server`](../skills/supabase-edge-functions-mcp-server/SKILL.md) (mcp-lite, dois Hono apps)
196
+ - `ai` → [`supabase-edge-runtime-builtins`](../skills/supabase-edge-runtime-builtins/SKILL.md) (Supabase.ai.Session, gte-small, Ollama)
197
+ - `wasm` → [`supabase-edge-runtime-builtins`](../skills/supabase-edge-runtime-builtins/SKILL.md) + auto-adiciona `static_files` em config.toml (CLI 2.7.0+, requer Docker no deploy)
198
+ - `websocket` → [`supabase-edge-runtime-builtins`](../skills/supabase-edge-runtime-builtins/SKILL.md) + auto-adiciona `policy = "per_worker"` em config.toml
199
+
180
200
  ## 5. Output
181
201
 
182
202
  Output do agent é o output do command. Sem post-processing — agent já formata estruturado.
@@ -184,12 +204,15 @@ Output do agent é o output do command. Sem post-processing — agent já format
184
204
  </process>
185
205
 
186
206
  <success_criteria>
187
- - [ ] Subcomando resolvido para agent canônico (10 subcomandos × seus sinônimos)
207
+ - [ ] Subcomando resolvido para agent canônico (16 subcomandos × seus sinônimos — v1.30)
188
208
  - [ ] `project_id` extraído de `supabase/config.toml` se presente
189
209
  - [ ] Subcomando `arquiteto` faz `AskUserQuestion` upfront sobre tier + branches
190
210
  - [ ] Dispatch via `Task(subagent_type=...)` — único ponto de chain de agents Supabase
191
211
  - [ ] Subcomando inválido → mensagem clara com lista
192
212
  - [ ] Subcomando `help`/`ajuda`/`?` → exibe tabela inline
193
213
  - [ ] Subcomando `check` → invoca `schema-checker` (existente)
214
+ - [ ] Subcomando `edge` (v1.30) → invoca `supabase-edge-fn-writer` com 2026 patterns + auto-recomenda `/supabase test` ao final
215
+ - [ ] Subcomando `test` (v1.30) → invoca `supabase-edge-fn-tester` que lê config.toml + index.ts para detectar auth mode
216
+ - [ ] Subcomandos `mcp` / `ai` / `wasm` / `websocket` (v1.30) → passam `pattern=<canônico>` para writer
194
217
  - [ ] Args após subcomando passam transparentemente para o agent
195
218
  </success_criteria>