@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.
- package/LICENSE +21 -21
- package/README.md +168 -168
- package/gates/agent-no-recursive-dispatch.md +84 -82
- package/kit/COMANDOS.md +138 -138
- package/kit/README.md +76 -76
- package/kit/agents/advisor-researcher.md +107 -106
- package/kit/agents/ai-mutation-tester.md +1 -0
- package/kit/agents/assumptions-analyzer.md +108 -107
- package/kit/agents/audit-log-implementer.md +314 -313
- package/kit/agents/auditor-consistencia-isolamento.md +414 -413
- package/kit/agents/b2b-saas-architect.md +157 -156
- package/kit/agents/burn-rate-forecaster.md +1 -0
- package/kit/agents/cascading-failures-auditor.md +299 -298
- package/kit/agents/codebase-mapper.md +769 -768
- package/kit/agents/crm-pipeline-implementer.md +257 -256
- package/kit/agents/debugger.md +814 -813
- package/kit/agents/detector-tenant-quente.md +338 -337
- package/kit/agents/evolution-go-integrator.md +201 -200
- package/kit/agents/example-reviewer.md +22 -21
- package/kit/agents/executor.md +565 -564
- package/kit/agents/golden-signals-instrumenter.md +1 -0
- package/kit/agents/incident-investigator.md +1 -0
- package/kit/agents/integration-checker.md +201 -200
- package/kit/agents/invite-flow-implementer.md +190 -189
- package/kit/agents/legacy-characterizer.md +369 -368
- package/kit/agents/lgpd-compliance-auditor.md +296 -295
- package/kit/agents/load-shedding-instrumenter.md +1 -0
- package/kit/agents/multi-tenant-isolation-auditor.md +254 -253
- package/kit/agents/multi-tenant-rls-writer.md +341 -340
- package/kit/agents/nyquist-auditor.md +179 -178
- package/kit/agents/observability-coverage-auditor.md +316 -315
- package/kit/agents/observability-instrumenter.md +1 -0
- package/kit/agents/omm-auditor.md +1 -0
- package/kit/agents/org-onboarding-implementer.md +224 -223
- package/kit/agents/payload-capture-instrumenter.md +274 -273
- package/kit/agents/phase-researcher.md +697 -696
- package/kit/agents/plan-checker.md +273 -272
- package/kit/agents/planner.md +923 -922
- package/kit/agents/postmortem-writer.md +1 -0
- package/kit/agents/project-researcher.md +653 -652
- package/kit/agents/prr-conductor.md +1 -0
- package/kit/agents/refactor-safety-auditor.md +405 -404
- package/kit/agents/release-pipeline-auditor.md +1 -0
- package/kit/agents/research-synthesizer.md +246 -245
- package/kit/agents/roadmapper.md +678 -677
- package/kit/agents/schema-checker.md +1 -0
- package/kit/agents/seam-finder.md +360 -359
- package/kit/agents/shotgun-surgery-detector.md +350 -349
- package/kit/agents/slo-engineer.md +1 -0
- package/kit/agents/storytelling-analyst.md +1 -0
- package/kit/agents/supabase-architect.md +1 -0
- package/kit/agents/supabase-auth-bootstrapper.md +1 -0
- package/kit/agents/supabase-branching-architect.md +563 -562
- package/kit/agents/supabase-cicd-pipeline-implementer.md +778 -777
- package/kit/agents/supabase-column-privileges-writer.md +400 -399
- package/kit/agents/supabase-edge-fn-tester.md +2 -1
- package/kit/agents/supabase-edge-fn-writer.md +2 -1
- package/kit/agents/supabase-migration-writer.md +386 -385
- package/kit/agents/supabase-rbac-implementer.md +393 -392
- package/kit/agents/supabase-realtime-implementer.md +364 -363
- package/kit/agents/supabase-rls-hardener.md +522 -521
- package/kit/agents/supabase-rls-writer.md +324 -323
- package/kit/agents/supabase-roles-implementer.md +356 -355
- package/kit/agents/supabase-storage-implementer.md +1 -0
- package/kit/agents/super-admin-implementer.md +282 -281
- package/kit/agents/toil-auditor.md +1 -0
- package/kit/agents/ui-auditor.md +438 -437
- package/kit/agents/ui-checker.md +303 -302
- package/kit/agents/ui-researcher.md +356 -355
- package/kit/agents/user-profiler.md +176 -175
- package/kit/agents/validador-evolucao-schema.md +336 -335
- package/kit/agents/verifier.md +729 -728
- package/kit/commands/adicionar-backlog.md +75 -75
- package/kit/commands/adicionar-fase.md +42 -42
- package/kit/commands/adicionar-tarefa.md +45 -45
- package/kit/commands/adicionar-testes.md +41 -41
- package/kit/commands/ajuda.md +21 -21
- package/kit/commands/atualizar.md +37 -37
- package/kit/commands/auditar-cascading.md +111 -111
- package/kit/commands/auditar-marco.md +179 -179
- package/kit/commands/auditar-observabilidade-cobertura.md +183 -183
- package/kit/commands/auditar-refactor.md +219 -219
- package/kit/commands/auditar-release.md +109 -109
- package/kit/commands/auditar-uat.md +23 -23
- package/kit/commands/autonomo.md +40 -40
- package/kit/commands/branch-pr.md +24 -24
- package/kit/commands/burn-rate-status.md +408 -408
- package/kit/commands/capturar-payloads.md +193 -193
- package/kit/commands/caracterizar.md +212 -212
- package/kit/commands/concluir-marco.md +247 -247
- package/kit/commands/configuracoes.md +36 -36
- package/kit/commands/dados-distribuidos.md +188 -188
- package/kit/commands/definir-perfil.md +10 -10
- package/kit/commands/depurar.md +190 -190
- package/kit/commands/detectar-duplicacao.md +197 -197
- package/kit/commands/discutir-fase.md +131 -131
- package/kit/commands/encontrar-seams.md +136 -136
- package/kit/commands/entrar-discord.md +17 -17
- package/kit/commands/estatisticas.md +18 -18
- package/kit/commands/example-greeting.md +33 -33
- package/kit/commands/executar-fase.md +58 -58
- package/kit/commands/expresso.md +56 -56
- package/kit/commands/fase-ui.md +34 -34
- package/kit/commands/fazer.md +57 -57
- package/kit/commands/fio.md +125 -125
- package/kit/commands/fluxos-trabalho.md +64 -64
- package/kit/commands/forense.md +176 -176
- package/kit/commands/gerenciador.md +38 -38
- package/kit/commands/inserir-fase.md +31 -31
- package/kit/commands/legacy.md +263 -263
- package/kit/commands/limpeza.md +17 -17
- package/kit/commands/listar-hipoteses-fase.md +45 -45
- package/kit/commands/listar-workspaces.md +18 -18
- package/kit/commands/load-shedding.md +117 -117
- package/kit/commands/mapear-codebase.md +70 -70
- package/kit/commands/multi-tenant.md +163 -163
- package/kit/commands/nota.md +33 -33
- package/kit/commands/novo-marco.md +43 -43
- package/kit/commands/novo-projeto.md +41 -41
- package/kit/commands/novo-workspace.md +43 -43
- package/kit/commands/pausar-trabalho.md +37 -37
- package/kit/commands/perfil-usuario.md +45 -45
- package/kit/commands/pesquisar-fase.md +195 -195
- package/kit/commands/planejar-fase.md +67 -67
- package/kit/commands/planejar-lacunas.md +33 -33
- package/kit/commands/plantar-ideia.md +25 -25
- package/kit/commands/progresso.md +24 -24
- package/kit/commands/proximo.md +30 -30
- package/kit/commands/publicar.md +490 -490
- package/kit/commands/rapido.md +35 -35
- package/kit/commands/reaplicar-patches.md +124 -124
- package/kit/commands/refactor-seguro.md +321 -321
- package/kit/commands/relatorio-sessao.md +19 -19
- package/kit/commands/remover-fase.md +31 -31
- package/kit/commands/remover-workspace.md +26 -26
- package/kit/commands/resumo-marco.md +50 -50
- package/kit/commands/retomar-trabalho.md +40 -40
- package/kit/commands/revisar-backlog.md +60 -60
- package/kit/commands/revisar-ui.md +32 -32
- package/kit/commands/revisar.md +37 -37
- package/kit/commands/saude.md +21 -21
- package/kit/commands/setup-notion.md +93 -93
- package/kit/commands/storytelling.md +179 -179
- package/kit/commands/sync-main.md +68 -68
- package/kit/commands/validar-fase.md +35 -35
- package/kit/commands/verificar-tarefas.md +44 -44
- package/kit/commands/verificar-trabalho.md +64 -64
- package/kit/file-manifest.json +82 -81
- package/kit/framework/bin/lib/commands.cjs +959 -959
- package/kit/framework/bin/lib/config.cjs +442 -442
- package/kit/framework/bin/lib/core.cjs +1230 -1230
- package/kit/framework/bin/lib/frontmatter.cjs +336 -336
- package/kit/framework/bin/lib/init.cjs +1442 -1442
- package/kit/framework/bin/lib/milestone.cjs +252 -252
- package/kit/framework/bin/lib/model-profiles.cjs +68 -68
- package/kit/framework/bin/lib/phase.cjs +888 -888
- package/kit/framework/bin/lib/profile-output.cjs +952 -952
- package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
- package/kit/framework/bin/lib/roadmap.cjs +329 -329
- package/kit/framework/bin/lib/security.cjs +382 -382
- package/kit/framework/bin/lib/state.cjs +1031 -1031
- package/kit/framework/bin/lib/template.cjs +222 -222
- package/kit/framework/bin/lib/uat.cjs +282 -282
- package/kit/framework/bin/lib/verify.cjs +888 -888
- package/kit/framework/bin/lib/workstream.cjs +491 -491
- package/kit/framework/bin/tools.cjs +918 -918
- package/kit/framework/commands/workstreams.md +63 -63
- package/kit/framework/references/checkpoints.md +778 -778
- package/kit/framework/references/continuation-format.md +249 -249
- package/kit/framework/references/decimal-phase-calculation.md +64 -64
- package/kit/framework/references/git-integration.md +295 -295
- package/kit/framework/references/git-planning-commit.md +38 -38
- package/kit/framework/references/model-profile-resolution.md +36 -36
- package/kit/framework/references/model-profiles.md +139 -139
- package/kit/framework/references/phase-argument-parsing.md +61 -61
- package/kit/framework/references/planning-config.md +202 -202
- package/kit/framework/references/questioning.md +162 -162
- package/kit/framework/references/tdd.md +263 -263
- package/kit/framework/references/ui-brand.md +160 -160
- package/kit/framework/references/user-profiling.md +657 -657
- package/kit/framework/references/verification-patterns.md +612 -612
- package/kit/framework/references/workstream-flag.md +58 -58
- package/kit/framework/templates/DEBUG.md +164 -164
- package/kit/framework/templates/UAT.md +265 -265
- package/kit/framework/templates/UI-SPEC.md +100 -100
- package/kit/framework/templates/VALIDATION.md +76 -76
- package/kit/framework/templates/claude-md.md +122 -122
- package/kit/framework/templates/codebase/architecture.md +185 -185
- package/kit/framework/templates/codebase/concerns.md +205 -205
- package/kit/framework/templates/codebase/conventions.md +204 -204
- package/kit/framework/templates/codebase/integrations.md +192 -192
- package/kit/framework/templates/codebase/stack.md +158 -158
- package/kit/framework/templates/codebase/structure.md +199 -199
- package/kit/framework/templates/codebase/testing.md +301 -301
- package/kit/framework/templates/config.json +44 -44
- package/kit/framework/templates/context.md +352 -352
- package/kit/framework/templates/continue-here.md +78 -78
- package/kit/framework/templates/copilot-instructions.md +7 -7
- package/kit/framework/templates/debug-subagent-prompt.md +91 -91
- package/kit/framework/templates/dev-preferences.md +20 -20
- package/kit/framework/templates/discovery.md +146 -146
- package/kit/framework/templates/discussion-log.md +63 -63
- package/kit/framework/templates/milestone-archive.md +123 -123
- package/kit/framework/templates/milestone.md +115 -115
- package/kit/framework/templates/phase-prompt.md +610 -610
- package/kit/framework/templates/planner-subagent-prompt.md +117 -117
- package/kit/framework/templates/project.md +186 -186
- package/kit/framework/templates/requirements.md +231 -231
- package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
- package/kit/framework/templates/research-project/FEATURES.md +147 -147
- package/kit/framework/templates/research-project/PITFALLS.md +200 -200
- package/kit/framework/templates/research-project/STACK.md +120 -120
- package/kit/framework/templates/research-project/SUMMARY.md +170 -170
- package/kit/framework/templates/research.md +419 -419
- package/kit/framework/templates/retrospective.md +54 -54
- package/kit/framework/templates/roadmap.md +202 -202
- package/kit/framework/templates/state.md +176 -176
- package/kit/framework/templates/summary-complex.md +59 -59
- package/kit/framework/templates/summary-minimal.md +41 -41
- package/kit/framework/templates/summary-standard.md +48 -48
- package/kit/framework/templates/summary.md +209 -209
- package/kit/framework/templates/user-profile.md +146 -146
- package/kit/framework/templates/user-setup.md +256 -256
- package/kit/framework/templates/verification-report.md +258 -258
- package/kit/framework/workflows/add-phase.md +112 -112
- package/kit/framework/workflows/add-tests.md +351 -351
- package/kit/framework/workflows/add-todo.md +158 -158
- package/kit/framework/workflows/audit-milestone.md +340 -340
- package/kit/framework/workflows/audit-uat.md +109 -109
- package/kit/framework/workflows/autonomous.md +891 -891
- package/kit/framework/workflows/check-todos.md +177 -177
- package/kit/framework/workflows/cleanup.md +152 -152
- package/kit/framework/workflows/complete-milestone.md +696 -696
- package/kit/framework/workflows/diagnose-issues.md +231 -231
- package/kit/framework/workflows/discovery-phase.md +289 -289
- package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
- package/kit/framework/workflows/discuss-phase.md +784 -784
- package/kit/framework/workflows/do.md +104 -104
- package/kit/framework/workflows/execute-phase.md +838 -838
- package/kit/framework/workflows/execute-plan.md +510 -510
- package/kit/framework/workflows/fast.md +102 -102
- package/kit/framework/workflows/forensics.md +265 -265
- package/kit/framework/workflows/health.md +181 -181
- package/kit/framework/workflows/help.md +619 -619
- package/kit/framework/workflows/insert-phase.md +130 -130
- package/kit/framework/workflows/list-phase-assumptions.md +178 -178
- package/kit/framework/workflows/list-workspaces.md +56 -56
- package/kit/framework/workflows/manager.md +362 -362
- package/kit/framework/workflows/map-codebase.md +377 -377
- package/kit/framework/workflows/milestone-summary.md +223 -223
- package/kit/framework/workflows/new-milestone.md +486 -486
- package/kit/framework/workflows/new-project.md +1159 -1159
- package/kit/framework/workflows/new-workspace.md +237 -237
- package/kit/framework/workflows/next.md +97 -97
- package/kit/framework/workflows/node-repair.md +92 -92
- package/kit/framework/workflows/note.md +156 -156
- package/kit/framework/workflows/pause-work.md +176 -176
- package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
- package/kit/framework/workflows/plan-phase.md +765 -765
- package/kit/framework/workflows/plant-seed.md +169 -169
- package/kit/framework/workflows/pr-branch.md +129 -129
- package/kit/framework/workflows/profile-user.md +450 -450
- package/kit/framework/workflows/progress.md +507 -507
- package/kit/framework/workflows/quick.md +757 -757
- package/kit/framework/workflows/remove-phase.md +155 -155
- package/kit/framework/workflows/remove-workspace.md +90 -90
- package/kit/framework/workflows/research-phase.md +82 -82
- package/kit/framework/workflows/resume-project.md +326 -326
- package/kit/framework/workflows/review.md +228 -228
- package/kit/framework/workflows/session-report.md +146 -146
- package/kit/framework/workflows/settings.md +283 -283
- package/kit/framework/workflows/ship.md +228 -228
- package/kit/framework/workflows/stats.md +60 -60
- package/kit/framework/workflows/transition.md +671 -671
- package/kit/framework/workflows/ui-phase.md +302 -302
- package/kit/framework/workflows/ui-review.md +165 -165
- package/kit/framework/workflows/update.md +323 -323
- package/kit/framework/workflows/validate-phase.md +174 -174
- package/kit/framework/workflows/verify-phase.md +252 -252
- package/kit/framework/workflows/verify-work.md +637 -637
- package/kit/hooks/check-update.js +118 -118
- package/kit/hooks/context-monitor.js +163 -163
- package/kit/hooks/kit-attribution-reminder.cjs +29 -50
- package/kit/hooks/kit-router.cjs +137 -0
- package/kit/hooks/prompt-guard.js +103 -103
- package/kit/hooks/statusline.js +125 -125
- package/kit/hooks/workflow-guard.js +101 -101
- package/kit/settings.json +45 -45
- package/kit/skills/ai-prompt-characterization/SKILL.md +335 -335
- package/kit/skills/armadilhas-sistemas-distribuidos/SKILL.md +447 -447
- package/kit/skills/audit-log-multi-tenant/SKILL.md +340 -340
- package/kit/skills/b2b-saas-architecture/SKILL.md +300 -300
- package/kit/skills/consistencia-leitura-replica/SKILL.md +385 -385
- package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +343 -343
- package/kit/skills/escolha-modelo-consistencia/SKILL.md +494 -494
- package/kit/skills/evolucao-schema-compativel/SKILL.md +448 -448
- package/kit/skills/evolution-go-whatsapp-integration/SKILL.md +322 -322
- package/kit/skills/example-skill/SKILL.md +42 -42
- package/kit/skills/legacy-api-only-applications/SKILL.md +358 -358
- package/kit/skills/legacy-characterization-tests/SKILL.md +330 -330
- package/kit/skills/legacy-effect-analysis/SKILL.md +331 -331
- package/kit/skills/legacy-extract-class/SKILL.md +203 -203
- package/kit/skills/legacy-programming-by-difference/SKILL.md +252 -252
- package/kit/skills/legacy-seams-and-test-harness/SKILL.md +460 -460
- package/kit/skills/legacy-shotgun-surgery/SKILL.md +286 -286
- package/kit/skills/legacy-sprout-wrap-techniques/SKILL.md +434 -434
- package/kit/skills/legacy-storytelling-naked-crc/SKILL.md +270 -270
- package/kit/skills/lgpd-multi-tenant-compliance/SKILL.md +340 -340
- package/kit/skills/member-invite-flow/SKILL.md +305 -305
- package/kit/skills/member-management-react-shadcn/SKILL.md +328 -328
- package/kit/skills/multi-tenant-performance-scaling/SKILL.md +316 -316
- package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +342 -342
- package/kit/skills/org-onboarding-flow/SKILL.md +257 -257
- package/kit/skills/org-switcher-react-pattern/SKILL.md +349 -349
- package/kit/skills/permission-gate-react-pattern/SKILL.md +271 -271
- package/kit/skills/postgres-isolamento-concorrencia/SKILL.md +552 -552
- package/kit/skills/pre-refactor-characterization/SKILL.md +421 -421
- package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +338 -338
- package/kit/skills/streams-eventos-cdc/SKILL.md +711 -711
- package/kit/skills/supabase-branching-workflow/SKILL.md +544 -544
- package/kit/skills/supabase-ci-cd-github-actions/SKILL.md +880 -880
- package/kit/skills/supabase-column-level-security/SKILL.md +426 -426
- package/kit/skills/supabase-config-toml-remotes/SKILL.md +807 -807
- package/kit/skills/supabase-custom-claims-rbac/SKILL.md +472 -472
- package/kit/skills/supabase-edge-functions/SKILL.md +1 -1
- package/kit/skills/supabase-edge-functions-auth/SKILL.md +1 -1
- package/kit/skills/supabase-edge-functions-limits/SKILL.md +1 -1
- package/kit/skills/supabase-edge-functions-mcp-server/SKILL.md +1 -1
- package/kit/skills/supabase-edge-functions-testing/SKILL.md +1 -1
- package/kit/skills/supabase-edge-runtime-builtins/SKILL.md +1 -1
- package/kit/skills/supabase-migration-repair/SKILL.md +823 -823
- package/kit/skills/supabase-migrations/SKILL.md +297 -297
- package/kit/skills/supabase-pgtap-testing/SKILL.md +1053 -1053
- package/kit/skills/supabase-postgres-roles/SKILL.md +392 -392
- package/kit/skills/supabase-realtime/SKILL.md +460 -460
- package/kit/skills/supabase-rls-defense-in-depth/SKILL.md +418 -418
- package/kit/skills/supabase-rls-policies/SKILL.md +635 -635
- package/kit/skills/super-admin-platform-pattern/SKILL.md +326 -326
- package/kit/skills/tenant-quente-mitigacao/SKILL.md +605 -605
- package/kit/skills/whatsapp-conversation-state-machine/SKILL.md +287 -287
- package/package.json +1 -1
- package/src/core/kit.js +216 -216
- package/src/core/reflect.js +247 -247
- package/src/core/reverse-sync.js +372 -372
- package/src/core/sync.js +437 -418
- package/src/core/watch.js +121 -121
- package/src/mcp-server/index.js +794 -746
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: observability-instrumenter
|
|
3
|
+
tier: specialized
|
|
3
4
|
description: Instrumenta código com OpenTelemetry — gera spans, atributos canônicos (user.id, tenant_id, request.id, result.success, error.type, build_id) seguindo skill structured-events.
|
|
4
5
|
tools: Read, Write, Edit, Bash, Grep, Glob
|
|
5
6
|
color: yellow
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: omm-auditor
|
|
3
|
+
tier: specialized
|
|
3
4
|
description: Pontua projeto contra Observability Maturity Model (1-5 em 5 capacidades — resiliência, qualidade, complexidade, cadência, comportamento). Output OMM-REPORT.md acionável.
|
|
4
5
|
tools: Read, Write, Bash, Grep, Glob, mcp__supabase__execute_sql
|
|
5
6
|
color: purple
|
|
@@ -1,223 +1,224 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: org-onboarding-implementer
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
-
|
|
20
|
-
- (Opcional) `
|
|
21
|
-
- (Opcional) `
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
- "Slug
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
- "
|
|
65
|
-
- "
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
- kit/skills/
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
- public.
|
|
82
|
-
- public.
|
|
83
|
-
- public.
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
- (
|
|
97
|
-
-
|
|
98
|
-
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
-
|
|
124
|
-
-
|
|
125
|
-
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
-
|
|
129
|
-
-
|
|
130
|
-
-
|
|
131
|
-
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
-
|
|
153
|
-
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
- Code para chamar
|
|
164
|
-
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
-
|
|
169
|
-
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
-
|
|
176
|
-
-
|
|
177
|
-
-
|
|
178
|
-
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
-
|
|
184
|
-
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
- [
|
|
219
|
-
- [
|
|
220
|
-
- [
|
|
221
|
-
- [supabase-
|
|
222
|
-
- [
|
|
223
|
-
- [
|
|
1
|
+
---
|
|
2
|
+
name: org-onboarding-implementer
|
|
3
|
+
tier: specialized
|
|
4
|
+
description: Implementa fluxo signup → criar org → primeiro admin → setup wizard. Gera migration SQL atômica (org + members em 1 trx) + Edge Function setup wizard async.
|
|
5
|
+
tools: Read, Write, Edit, Bash, Grep, Glob, Task, AskUserQuestion
|
|
6
|
+
color: green
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Você é o **org-onboarding-implementer**. Recebe descrição de app B2B (de `b2b-saas-architect` ou direto) e materializa o fluxo completo de onboarding de novo tenant — migration SQL atômica + Edge Function setup wizard. **NÃO escreve SQL bruto** — delega para `supabase-migration-writer`. **NÃO escreve Edge Function bruta** — delega para `supabase-edge-fn-writer`. Você é o **integrador**: lê requisitos, escolhe estratégias, produz handoff briefs para os agents da Suíte Supabase v1.8.
|
|
10
|
+
|
|
11
|
+
**Compat:** Full em Claude Code + Cursor (com Supabase MCP); Partial em Codex + Gemini CLI; Offline-only em Windsurf/Antigravity/Copilot/Trae.
|
|
12
|
+
|
|
13
|
+
## Por que existe
|
|
14
|
+
|
|
15
|
+
Onboarding de tenant é o primeiro touchpoint do consumidor com o app — falhas aqui (race conditions, slug colisão, wizard bloqueante) custam conversion. Este agent encapsula o pattern canônico documentado em [`org-onboarding-flow`](../skills/org-onboarding-flow/SKILL.md) e materializa via cross-suite delegation.
|
|
16
|
+
|
|
17
|
+
## Inputs esperados (do caller)
|
|
18
|
+
|
|
19
|
+
- `app_description`: descrição em texto livre (ex: "B2B SaaS para escritórios de advocacia com escritórios + departamentos")
|
|
20
|
+
- (Opcional) `slug_strategy`: `immutable` (default) | `mutable_with_redirect` — se ausente, agent perguntará via AskUserQuestion
|
|
21
|
+
- (Opcional) `wizard_features`: lista de features default a setar no wizard (categorias, templates, sample data) — se ausente, agent gera lista mínima
|
|
22
|
+
- (Opcional) `project_id`: identificador Supabase para inferir schema atual via MCP
|
|
23
|
+
|
|
24
|
+
## Passos
|
|
25
|
+
|
|
26
|
+
### Step 0 — Preflight
|
|
27
|
+
|
|
28
|
+
Detectar capabilities MCP. Tente `mcp__supabase__list_tables`. Se falhar, modo offline.
|
|
29
|
+
|
|
30
|
+
Se MCP disponível, capture lista de tabelas atuais (verificar se `organizations`, `organization_members`, `roles`, `organization_slug_history` já existem — se sim, modo "extend" em vez de "create").
|
|
31
|
+
|
|
32
|
+
### Step 1 — Validar pré-requisitos (Phase 106 cristalizada)
|
|
33
|
+
|
|
34
|
+
Verificar se o schema canônico das 7 tabelas (Phase 106) está implementado:
|
|
35
|
+
|
|
36
|
+
```sql
|
|
37
|
+
-- via mcp__supabase__execute_sql
|
|
38
|
+
select table_name from information_schema.tables
|
|
39
|
+
where table_schema = 'public'
|
|
40
|
+
and table_name in ('organizations', 'organization_members', 'roles', 'permissions', 'role_permissions');
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Se faltar `organizations` ou `organization_members`: **ABORT** com mensagem:
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
✗ ERRO: schema canônico Phase 106 não implementado.
|
|
47
|
+
|
|
48
|
+
Esta phase depende de: organizations, organization_members, roles tables.
|
|
49
|
+
Execute: /multi-tenant arquiteto "<descrição app>" para gerar schema base primeiro.
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Step 2 — Slug strategy via AskUserQuestion (se não fornecido)
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
- "Slug imutável (Recomendado)" — Mutação requer entry em organization_slug_history + redirect 301 (mais seguro, padrão Stripe/Linear)
|
|
56
|
+
- "Slug mutável trivial" — Sem trail, sem redirect — quebra bookmarks/webhooks silenciosamente (anti-pattern)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Se "trivial": warn explicitamente e exigir confirmação.
|
|
60
|
+
|
|
61
|
+
### Step 3 — Wizard features via AskUserQuestion (se não fornecido)
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
- "Mínimo (Recomendado)" — Só cria 3 roles built-in. User configura tudo depois.
|
|
65
|
+
- "Categorias default" — Adiciona ~5 categorias canônicas do domínio.
|
|
66
|
+
- "Sample data" — Cria 3-5 registros de exemplo para tour de produto.
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Step 4 — Gerar migration brief
|
|
70
|
+
|
|
71
|
+
Construir prompt para `supabase-migration-writer` com:
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
[Migration brief — gerada por org-onboarding-implementer]
|
|
75
|
+
|
|
76
|
+
Objetivo: materializar fluxo onboarding canônico v1.21 baseado em:
|
|
77
|
+
- kit/skills/org-onboarding-flow/SKILL.md (regras + patterns)
|
|
78
|
+
- kit/skills/b2b-saas-architecture/SKILL.md (schema referência Phase 106)
|
|
79
|
+
|
|
80
|
+
Tabelas tocadas:
|
|
81
|
+
- public.organizations (insert via RPC)
|
|
82
|
+
- public.organization_members (insert via RPC, mesma trx)
|
|
83
|
+
- public.roles (3 inserts: owner/admin/member built-in, mesma trx)
|
|
84
|
+
- public.organization_slug_history (criar tabela se ausente — slug strategy: <chosen>)
|
|
85
|
+
|
|
86
|
+
Artefatos a produzir:
|
|
87
|
+
1. RPC function `public.create_organization(p_name text, p_slug text) returns uuid` — atômica, security invoker
|
|
88
|
+
2. Slug reservado check (allowlist: api, admin, app, www, dashboard, support, help, docs, blog, auth)
|
|
89
|
+
3. Trigger `track_org_slug_change` (se slug strategy = "imutável com history")
|
|
90
|
+
4. GRANT EXECUTE ON FUNCTION public.create_organization TO authenticated
|
|
91
|
+
|
|
92
|
+
RLS:
|
|
93
|
+
- organizations já tem RLS de Phase 108 (não duplicar)
|
|
94
|
+
- organization_members já tem RLS de Phase 108
|
|
95
|
+
|
|
96
|
+
Anti-pitfalls (verificar):
|
|
97
|
+
- (select auth.uid()) wrapper sempre
|
|
98
|
+
- security invoker (não definer)
|
|
99
|
+
- set search_path = '' obrigatório
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Step 5 — Delegar para supabase-migration-writer
|
|
103
|
+
|
|
104
|
+
```typescript
|
|
105
|
+
Task(
|
|
106
|
+
subagent_type='supabase-migration-writer',
|
|
107
|
+
prompt=<migration brief acima>
|
|
108
|
+
)
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### Step 6 — Gerar Edge Function brief (setup wizard)
|
|
112
|
+
|
|
113
|
+
Construir prompt para `supabase-edge-fn-writer`:
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
[Edge Function brief — gerada por org-onboarding-implementer]
|
|
117
|
+
|
|
118
|
+
Function name: org-setup-wizard
|
|
119
|
+
verify_jwt: true (user-facing — owner only)
|
|
120
|
+
Path: supabase/functions/org-setup-wizard/index.ts
|
|
121
|
+
|
|
122
|
+
Behavior:
|
|
123
|
+
- POST com body { org_id: uuid }
|
|
124
|
+
- Validar que user é owner da org via supabase.from('organization_members')
|
|
125
|
+
- Se OK, executar setup features escolhidas: <chosen wizard_features>
|
|
126
|
+
- Retornar { ok: true } imediatamente; tarefas longas via EdgeRuntime.waitUntil
|
|
127
|
+
|
|
128
|
+
Anti-pitfalls (verificar):
|
|
129
|
+
- ANON_KEY (não SERVICE_ROLE_KEY) — preserva RLS
|
|
130
|
+
- Authorization header forwarded para preservar JWT do user
|
|
131
|
+
- npm:/jsr: imports apenas (nunca bare specifiers)
|
|
132
|
+
- Deno.serve (não serve do std)
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### Step 7 — Delegar para supabase-edge-fn-writer
|
|
136
|
+
|
|
137
|
+
```typescript
|
|
138
|
+
Task(
|
|
139
|
+
subagent_type='supabase-edge-fn-writer',
|
|
140
|
+
prompt=<edge function brief acima>
|
|
141
|
+
)
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Step 8 — Output integrado
|
|
145
|
+
|
|
146
|
+
```
|
|
147
|
+
═══════════════════════════════════════════════════════════
|
|
148
|
+
ORG-ONBOARDING-IMPLEMENTER · output integrado
|
|
149
|
+
═══════════════════════════════════════════════════════════
|
|
150
|
+
|
|
151
|
+
## 1. Decisões tomadas
|
|
152
|
+
- Slug strategy: <chosen>
|
|
153
|
+
- Wizard features: <chosen list>
|
|
154
|
+
- Schema base: <existe / criado nesta phase>
|
|
155
|
+
|
|
156
|
+
## 2. Migration entregue (via supabase-migration-writer)
|
|
157
|
+
<output do agent migration>
|
|
158
|
+
|
|
159
|
+
## 3. Edge Function entregue (via supabase-edge-fn-writer)
|
|
160
|
+
<output do agent edge fn>
|
|
161
|
+
|
|
162
|
+
## 4. Frontend integration sketch (TypeScript)
|
|
163
|
+
- Code para chamar RPC create_organization
|
|
164
|
+
- Code para chamar Edge Function org-setup-wizard async
|
|
165
|
+
- Middleware Next.js v16 para slug redirect 301 (do skill)
|
|
166
|
+
|
|
167
|
+
## 5. Próximos passos
|
|
168
|
+
- Aplicar migration: supabase db push
|
|
169
|
+
- Deploy Edge Function: supabase functions deploy org-setup-wizard
|
|
170
|
+
- Test: signup → criar org → verificar membership criada
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
## Anti-patterns prevenidos
|
|
174
|
+
|
|
175
|
+
- Insert org sem membership na mesma trx (race) → ABORT
|
|
176
|
+
- Slug mutável sem confirmação explícita → ABORT
|
|
177
|
+
- Wizard bloqueante (await dentro do signup) → diretiva no Edge Function brief
|
|
178
|
+
- Service role em wizard user-facing → ANON_KEY mandatório
|
|
179
|
+
- Slugs sistêmicos sem reserva → allowlist em check constraint
|
|
180
|
+
|
|
181
|
+
## Quando NÃO invocar
|
|
182
|
+
|
|
183
|
+
- Schema canônico Phase 106 ainda não implementado → ABORT (orientar para `/multi-tenant arquiteto` primeiro)
|
|
184
|
+
- App single-tenant (1 org fixa, sem signup público) → overhead, não precisa onboarding flow
|
|
185
|
+
- Mudança trivial (renomear coluna em organizations) → use Edit direto
|
|
186
|
+
|
|
187
|
+
## Observabilidade integrada
|
|
188
|
+
|
|
189
|
+
Onboarding é hot path crítico — emite eventos canônicos:
|
|
190
|
+
|
|
191
|
+
1. **`org_created`** event em audit_log com `actor_id`, `org_id`, `slug`, `plan` (skill [`audit-log-multi-tenant`](../skills/audit-log-multi-tenant/SKILL.md))
|
|
192
|
+
2. **`first_admin_assigned`** event em audit_log com `org_id`, `user_id`
|
|
193
|
+
3. **Counter:** `signup.org_created.count` (skill [`four-golden-signals`](../skills/four-golden-signals/SKILL.md))
|
|
194
|
+
4. **Histogram:** `signup.duration_ms` (latência total signup → dashboard)
|
|
195
|
+
|
|
196
|
+
## Cooperative handoff to supabase-rls-hardener (v1.23)
|
|
197
|
+
|
|
198
|
+
Após gerar migration atômica (org + members em 1 trx) + Edge Function setup wizard async, faça handoff cooperativo para SQL bloco:
|
|
199
|
+
|
|
200
|
+
```python
|
|
201
|
+
Task(subagent_type="supabase-rls-hardener", prompt=f"""
|
|
202
|
+
<upstream_intent>
|
|
203
|
+
Source agent: org-onboarding-implementer
|
|
204
|
+
Original goal: signup → criar org → primeiro admin → setup wizard para nova org
|
|
205
|
+
Constraints: atomicidade (org + first_member em 1 trx); slug imutável + único cross-tenant (uniqueness constraint); RLS desde dia 1; first admin sem invite (admin direto via signup)
|
|
206
|
+
</upstream_intent>
|
|
207
|
+
|
|
208
|
+
<draft_sql>{generated_signup_migration_sql}</draft_sql>
|
|
209
|
+
|
|
210
|
+
<user_facing_caller>true</user_facing_caller>
|
|
211
|
+
""")
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
Hardener valida que RLS está ativo já na primeira migration, GRANTs corretos para anon (durante signup) e authenticated (pós-login). **NUNCA descarte intent upstream silenciosamente**.
|
|
215
|
+
|
|
216
|
+
## Ver também
|
|
217
|
+
|
|
218
|
+
- [supabase-rls-hardener](./supabase-rls-hardener.md) — canonical handoff target v1.23
|
|
219
|
+
- [org-onboarding-flow](../skills/org-onboarding-flow/SKILL.md) — base de conhecimento (regras + patterns + anti-patterns)
|
|
220
|
+
- [b2b-saas-architecture](../skills/b2b-saas-architecture/SKILL.md) — schema canônico (Phase 106)
|
|
221
|
+
- [supabase-migration-writer](./supabase-migration-writer.md) — invoked via Task() para SQL
|
|
222
|
+
- [supabase-edge-fn-writer](./supabase-edge-fn-writer.md) — invoked via Task() para Edge Function
|
|
223
|
+
- [audit-log-implementer](./audit-log-implementer.md) — Phase 109, eventos canônicos consumidos por este agent
|
|
224
|
+
- [_shared-multi-tenant/glossary.md](../skills/_shared-multi-tenant/glossary.md) — termos `first admin`, `bulk invite`, `setup wizard`
|