@luanpdd/kit-mcp 1.20.0 → 1.21.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 (259) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +648 -648
  3. package/gates/dept-cycle-prevention.md +179 -0
  4. package/gates/multi-tenant-rls-coverage.md +102 -0
  5. package/gates/service-role-not-in-user-facing.md +113 -0
  6. package/kit/COMANDOS.md +138 -138
  7. package/kit/README.md +52 -52
  8. package/kit/agents/advisor-researcher.md +106 -106
  9. package/kit/agents/assumptions-analyzer.md +107 -107
  10. package/kit/agents/audit-log-implementer.md +175 -0
  11. package/kit/agents/b2b-saas-architect.md +156 -0
  12. package/kit/agents/codebase-mapper.md +768 -768
  13. package/kit/agents/crm-pipeline-implementer.md +150 -0
  14. package/kit/agents/debugger.md +772 -772
  15. package/kit/agents/evolution-go-integrator.md +179 -0
  16. package/kit/agents/example-reviewer.md +21 -21
  17. package/kit/agents/executor.md +523 -523
  18. package/kit/agents/integration-checker.md +200 -200
  19. package/kit/agents/invite-flow-implementer.md +137 -0
  20. package/kit/agents/lgpd-compliance-auditor.md +206 -0
  21. package/kit/agents/multi-tenant-isolation-auditor.md +243 -0
  22. package/kit/agents/multi-tenant-rls-writer.md +262 -0
  23. package/kit/agents/nyquist-auditor.md +178 -178
  24. package/kit/agents/org-onboarding-implementer.md +202 -0
  25. package/kit/agents/phase-researcher.md +696 -696
  26. package/kit/agents/plan-checker.md +272 -272
  27. package/kit/agents/planner.md +891 -891
  28. package/kit/agents/project-researcher.md +652 -652
  29. package/kit/agents/research-synthesizer.md +245 -245
  30. package/kit/agents/roadmapper.md +677 -677
  31. package/kit/agents/super-admin-implementer.md +182 -0
  32. package/kit/agents/ui-auditor.md +437 -437
  33. package/kit/agents/ui-checker.md +302 -302
  34. package/kit/agents/ui-researcher.md +355 -355
  35. package/kit/agents/user-profiler.md +175 -175
  36. package/kit/agents/verifier.md +728 -728
  37. package/kit/commands/adicionar-backlog.md +75 -75
  38. package/kit/commands/adicionar-fase.md +42 -42
  39. package/kit/commands/adicionar-tarefa.md +45 -45
  40. package/kit/commands/adicionar-testes.md +41 -41
  41. package/kit/commands/ajuda.md +21 -21
  42. package/kit/commands/atualizar.md +37 -37
  43. package/kit/commands/auditar-marco.md +179 -179
  44. package/kit/commands/auditar-uat.md +23 -23
  45. package/kit/commands/autonomo.md +40 -40
  46. package/kit/commands/branch-pr.md +24 -24
  47. package/kit/commands/concluir-marco.md +247 -247
  48. package/kit/commands/configuracoes.md +36 -36
  49. package/kit/commands/definir-perfil.md +10 -10
  50. package/kit/commands/depurar.md +190 -190
  51. package/kit/commands/discutir-fase.md +131 -131
  52. package/kit/commands/entrar-discord.md +17 -17
  53. package/kit/commands/estatisticas.md +18 -18
  54. package/kit/commands/example-greeting.md +33 -33
  55. package/kit/commands/executar-fase.md +58 -58
  56. package/kit/commands/expresso.md +56 -56
  57. package/kit/commands/fase-ui.md +34 -34
  58. package/kit/commands/fazer.md +57 -57
  59. package/kit/commands/fio.md +125 -125
  60. package/kit/commands/fluxos-trabalho.md +64 -64
  61. package/kit/commands/forense.md +176 -176
  62. package/kit/commands/gerenciador.md +38 -38
  63. package/kit/commands/inserir-fase.md +31 -31
  64. package/kit/commands/limpeza.md +17 -17
  65. package/kit/commands/listar-hipoteses-fase.md +45 -45
  66. package/kit/commands/listar-workspaces.md +18 -18
  67. package/kit/commands/mapear-codebase.md +70 -70
  68. package/kit/commands/multi-tenant.md +163 -0
  69. package/kit/commands/nota.md +33 -33
  70. package/kit/commands/novo-marco.md +43 -43
  71. package/kit/commands/novo-projeto.md +41 -41
  72. package/kit/commands/novo-workspace.md +43 -43
  73. package/kit/commands/pausar-trabalho.md +37 -37
  74. package/kit/commands/perfil-usuario.md +45 -45
  75. package/kit/commands/pesquisar-fase.md +195 -195
  76. package/kit/commands/planejar-fase.md +67 -67
  77. package/kit/commands/planejar-lacunas.md +33 -33
  78. package/kit/commands/plantar-ideia.md +25 -25
  79. package/kit/commands/progresso.md +24 -24
  80. package/kit/commands/proximo.md +30 -30
  81. package/kit/commands/publicar.md +490 -490
  82. package/kit/commands/rapido.md +35 -35
  83. package/kit/commands/reaplicar-patches.md +124 -124
  84. package/kit/commands/relatorio-sessao.md +19 -19
  85. package/kit/commands/remover-fase.md +31 -31
  86. package/kit/commands/remover-workspace.md +26 -26
  87. package/kit/commands/resumo-marco.md +50 -50
  88. package/kit/commands/retomar-trabalho.md +40 -40
  89. package/kit/commands/revisar-backlog.md +60 -60
  90. package/kit/commands/revisar-ui.md +32 -32
  91. package/kit/commands/revisar.md +37 -37
  92. package/kit/commands/saude.md +21 -21
  93. package/kit/commands/setup-notion.md +93 -93
  94. package/kit/commands/sync-main.md +68 -68
  95. package/kit/commands/validar-fase.md +35 -35
  96. package/kit/commands/verificar-tarefas.md +44 -44
  97. package/kit/commands/verificar-trabalho.md +64 -64
  98. package/kit/file-manifest.json +30 -3
  99. package/kit/framework/bin/lib/commands.cjs +959 -959
  100. package/kit/framework/bin/lib/config.cjs +442 -442
  101. package/kit/framework/bin/lib/core.cjs +1230 -1230
  102. package/kit/framework/bin/lib/frontmatter.cjs +336 -336
  103. package/kit/framework/bin/lib/init.cjs +1442 -1442
  104. package/kit/framework/bin/lib/milestone.cjs +252 -252
  105. package/kit/framework/bin/lib/model-profiles.cjs +68 -68
  106. package/kit/framework/bin/lib/phase.cjs +888 -888
  107. package/kit/framework/bin/lib/profile-output.cjs +952 -952
  108. package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
  109. package/kit/framework/bin/lib/roadmap.cjs +329 -329
  110. package/kit/framework/bin/lib/security.cjs +382 -382
  111. package/kit/framework/bin/lib/state.cjs +1031 -1031
  112. package/kit/framework/bin/lib/template.cjs +222 -222
  113. package/kit/framework/bin/lib/uat.cjs +282 -282
  114. package/kit/framework/bin/lib/verify.cjs +888 -888
  115. package/kit/framework/bin/lib/workstream.cjs +491 -491
  116. package/kit/framework/bin/tools.cjs +918 -918
  117. package/kit/framework/commands/workstreams.md +63 -63
  118. package/kit/framework/references/checkpoints.md +778 -778
  119. package/kit/framework/references/continuation-format.md +249 -249
  120. package/kit/framework/references/decimal-phase-calculation.md +64 -64
  121. package/kit/framework/references/git-integration.md +295 -295
  122. package/kit/framework/references/git-planning-commit.md +38 -38
  123. package/kit/framework/references/model-profile-resolution.md +36 -36
  124. package/kit/framework/references/model-profiles.md +139 -139
  125. package/kit/framework/references/phase-argument-parsing.md +61 -61
  126. package/kit/framework/references/planning-config.md +202 -202
  127. package/kit/framework/references/questioning.md +162 -162
  128. package/kit/framework/references/tdd.md +263 -263
  129. package/kit/framework/references/ui-brand.md +160 -160
  130. package/kit/framework/references/user-profiling.md +657 -657
  131. package/kit/framework/references/verification-patterns.md +612 -612
  132. package/kit/framework/references/workstream-flag.md +58 -58
  133. package/kit/framework/templates/DEBUG.md +164 -164
  134. package/kit/framework/templates/UAT.md +265 -265
  135. package/kit/framework/templates/UI-SPEC.md +100 -100
  136. package/kit/framework/templates/VALIDATION.md +76 -76
  137. package/kit/framework/templates/claude-md.md +122 -122
  138. package/kit/framework/templates/codebase/architecture.md +185 -185
  139. package/kit/framework/templates/codebase/concerns.md +205 -205
  140. package/kit/framework/templates/codebase/conventions.md +204 -204
  141. package/kit/framework/templates/codebase/integrations.md +192 -192
  142. package/kit/framework/templates/codebase/stack.md +158 -158
  143. package/kit/framework/templates/codebase/structure.md +199 -199
  144. package/kit/framework/templates/codebase/testing.md +301 -301
  145. package/kit/framework/templates/config.json +44 -44
  146. package/kit/framework/templates/context.md +352 -352
  147. package/kit/framework/templates/continue-here.md +78 -78
  148. package/kit/framework/templates/copilot-instructions.md +7 -7
  149. package/kit/framework/templates/debug-subagent-prompt.md +91 -91
  150. package/kit/framework/templates/dev-preferences.md +20 -20
  151. package/kit/framework/templates/discovery.md +146 -146
  152. package/kit/framework/templates/discussion-log.md +63 -63
  153. package/kit/framework/templates/milestone-archive.md +123 -123
  154. package/kit/framework/templates/milestone.md +115 -115
  155. package/kit/framework/templates/phase-prompt.md +610 -610
  156. package/kit/framework/templates/planner-subagent-prompt.md +117 -117
  157. package/kit/framework/templates/project.md +186 -186
  158. package/kit/framework/templates/requirements.md +231 -231
  159. package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
  160. package/kit/framework/templates/research-project/FEATURES.md +147 -147
  161. package/kit/framework/templates/research-project/PITFALLS.md +200 -200
  162. package/kit/framework/templates/research-project/STACK.md +120 -120
  163. package/kit/framework/templates/research-project/SUMMARY.md +170 -170
  164. package/kit/framework/templates/research.md +419 -419
  165. package/kit/framework/templates/retrospective.md +54 -54
  166. package/kit/framework/templates/roadmap.md +202 -202
  167. package/kit/framework/templates/state.md +176 -176
  168. package/kit/framework/templates/summary-complex.md +59 -59
  169. package/kit/framework/templates/summary-minimal.md +41 -41
  170. package/kit/framework/templates/summary-standard.md +48 -48
  171. package/kit/framework/templates/summary.md +209 -209
  172. package/kit/framework/templates/user-profile.md +146 -146
  173. package/kit/framework/templates/user-setup.md +256 -256
  174. package/kit/framework/templates/verification-report.md +258 -258
  175. package/kit/framework/workflows/add-phase.md +112 -112
  176. package/kit/framework/workflows/add-tests.md +351 -351
  177. package/kit/framework/workflows/add-todo.md +158 -158
  178. package/kit/framework/workflows/audit-milestone.md +340 -340
  179. package/kit/framework/workflows/audit-uat.md +109 -109
  180. package/kit/framework/workflows/autonomous.md +891 -891
  181. package/kit/framework/workflows/check-todos.md +177 -177
  182. package/kit/framework/workflows/cleanup.md +152 -152
  183. package/kit/framework/workflows/complete-milestone.md +696 -696
  184. package/kit/framework/workflows/diagnose-issues.md +231 -231
  185. package/kit/framework/workflows/discovery-phase.md +289 -289
  186. package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
  187. package/kit/framework/workflows/discuss-phase.md +784 -784
  188. package/kit/framework/workflows/do.md +104 -104
  189. package/kit/framework/workflows/execute-phase.md +838 -838
  190. package/kit/framework/workflows/execute-plan.md +510 -510
  191. package/kit/framework/workflows/fast.md +102 -102
  192. package/kit/framework/workflows/forensics.md +265 -265
  193. package/kit/framework/workflows/health.md +181 -181
  194. package/kit/framework/workflows/help.md +619 -619
  195. package/kit/framework/workflows/insert-phase.md +130 -130
  196. package/kit/framework/workflows/list-phase-assumptions.md +178 -178
  197. package/kit/framework/workflows/list-workspaces.md +56 -56
  198. package/kit/framework/workflows/manager.md +362 -362
  199. package/kit/framework/workflows/map-codebase.md +377 -377
  200. package/kit/framework/workflows/milestone-summary.md +223 -223
  201. package/kit/framework/workflows/new-milestone.md +486 -486
  202. package/kit/framework/workflows/new-project.md +1159 -1159
  203. package/kit/framework/workflows/new-workspace.md +237 -237
  204. package/kit/framework/workflows/next.md +97 -97
  205. package/kit/framework/workflows/node-repair.md +92 -92
  206. package/kit/framework/workflows/note.md +156 -156
  207. package/kit/framework/workflows/pause-work.md +176 -176
  208. package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
  209. package/kit/framework/workflows/plan-phase.md +765 -765
  210. package/kit/framework/workflows/plant-seed.md +169 -169
  211. package/kit/framework/workflows/pr-branch.md +129 -129
  212. package/kit/framework/workflows/profile-user.md +450 -450
  213. package/kit/framework/workflows/progress.md +507 -507
  214. package/kit/framework/workflows/quick.md +757 -757
  215. package/kit/framework/workflows/remove-phase.md +155 -155
  216. package/kit/framework/workflows/remove-workspace.md +90 -90
  217. package/kit/framework/workflows/research-phase.md +82 -82
  218. package/kit/framework/workflows/resume-project.md +326 -326
  219. package/kit/framework/workflows/review.md +228 -228
  220. package/kit/framework/workflows/session-report.md +146 -146
  221. package/kit/framework/workflows/settings.md +283 -283
  222. package/kit/framework/workflows/ship.md +228 -228
  223. package/kit/framework/workflows/stats.md +60 -60
  224. package/kit/framework/workflows/transition.md +671 -671
  225. package/kit/framework/workflows/ui-phase.md +302 -302
  226. package/kit/framework/workflows/ui-review.md +165 -165
  227. package/kit/framework/workflows/update.md +323 -323
  228. package/kit/framework/workflows/validate-phase.md +174 -174
  229. package/kit/framework/workflows/verify-phase.md +252 -252
  230. package/kit/framework/workflows/verify-work.md +637 -637
  231. package/kit/hooks/check-update.js +118 -118
  232. package/kit/hooks/context-monitor.js +163 -163
  233. package/kit/hooks/prompt-guard.js +103 -103
  234. package/kit/hooks/statusline.js +125 -125
  235. package/kit/hooks/workflow-guard.js +101 -101
  236. package/kit/settings.json +45 -45
  237. package/kit/skills/_shared-multi-tenant/glossary.md +186 -0
  238. package/kit/skills/audit-log-multi-tenant/SKILL.md +334 -0
  239. package/kit/skills/b2b-saas-architecture/SKILL.md +300 -0
  240. package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +326 -0
  241. package/kit/skills/evolution-go-whatsapp-integration/SKILL.md +322 -0
  242. package/kit/skills/example-skill/SKILL.md +42 -42
  243. package/kit/skills/lgpd-multi-tenant-compliance/SKILL.md +340 -0
  244. package/kit/skills/member-invite-flow/SKILL.md +305 -0
  245. package/kit/skills/member-management-react-shadcn/SKILL.md +328 -0
  246. package/kit/skills/multi-tenant-performance-scaling/SKILL.md +312 -0
  247. package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +338 -0
  248. package/kit/skills/org-onboarding-flow/SKILL.md +257 -0
  249. package/kit/skills/org-switcher-react-pattern/SKILL.md +349 -0
  250. package/kit/skills/permission-gate-react-pattern/SKILL.md +271 -0
  251. package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +301 -0
  252. package/kit/skills/super-admin-platform-pattern/SKILL.md +322 -0
  253. package/kit/skills/whatsapp-conversation-state-machine/SKILL.md +287 -0
  254. package/package.json +63 -63
  255. package/src/core/kit.js +216 -216
  256. package/src/core/reflect.js +247 -247
  257. package/src/core/reverse-sync.js +372 -372
  258. package/src/core/sync.js +418 -418
  259. package/src/core/watch.js +121 -121
@@ -1,295 +1,295 @@
1
- <overview>
2
- Integração git para o framework.
3
- </overview>
4
-
5
- <core_principle>
6
-
7
- **Commite resultados, não processos.**
8
-
9
- O log git deve parecer um changelog do que foi lançado, não um diário de atividade de planejamento.
10
- </core_principle>
11
-
12
- <commit_points>
13
-
14
- | Evento | Commitar? | Por quê |
15
- | ----------------------------- | --------- | -------------------------------------------------- |
16
- | BRIEF + ROADMAP criados | SIM | Inicialização do projeto |
17
- | PLAN.md criado | NÃO | Intermediário — commitar com conclusão do plano |
18
- | RESEARCH.md criado | NÃO | Intermediário |
19
- | DISCOVERY.md criado | NÃO | Intermediário |
20
- | **Tarefa concluída** | SIM | Unidade atômica de trabalho (1 commit por tarefa) |
21
- | **Plano concluído** | SIM | Commit de metadados (SUMMARY + STATE + ROADMAP) |
22
- | Handoff criado | SIM | Estado WIP preservado |
23
-
24
- </commit_points>
25
-
26
- <git_check>
27
-
28
- ```bash
29
- [ -d .git ] && echo "GIT_EXISTS" || echo "NO_GIT"
30
- ```
31
-
32
- Se NO_GIT: Execute `git init` silenciosamente. Projetos framework sempre têm seu próprio repositório.
33
- </git_check>
34
-
35
- <commit_formats>
36
-
37
- <format name="initialization">
38
- ## Inicialização do Projeto (brief + roadmap juntos)
39
-
40
- ```
41
- docs: initialize [nome-do-projeto] ([N] phases)
42
-
43
- [Linha única do PROJECT.md]
44
-
45
- Phases:
46
- 1. [nome-da-fase]: [objetivo]
47
- 2. [nome-da-fase]: [objetivo]
48
- 3. [nome-da-fase]: [objetivo]
49
- ```
50
-
51
- O que commitar:
52
-
53
- ```bash
54
- node "./.claude/framework/bin/tools.cjs" commit "docs: initialize [nome-do-projeto] ([N] phases)" --files .planning/
55
- ```
56
-
57
- </format>
58
-
59
- <format name="task-completion">
60
- ## Conclusão de Tarefa (Durante Execução do Plano)
61
-
62
- Cada tarefa recebe seu próprio commit imediatamente após a conclusão.
63
-
64
- > **Agentes paralelos:** Quando executando como executor paralelo (spawnado por execute-phase),
65
- > use `--no-verify` em todos os commits para evitar contenção de bloqueio de hooks pré-commit.
66
- > O orquestrador valida os hooks uma vez após todos os agentes concluírem.
67
-
68
- ```
69
- {tipo}({fase}-{plano}): {nome-da-tarefa}
70
-
71
- - [Alteração chave 1]
72
- - [Alteração chave 2]
73
- - [Alteração chave 3]
74
- ```
75
-
76
- **Tipos de commit:**
77
- - `feat` - Nova funcionalidade/recurso
78
- - `fix` - Correção de bug
79
- - `test` - Apenas testes (fase TDD VERMELHO)
80
- - `refactor` - Limpeza de código (fase TDD REFATORAR)
81
- - `perf` - Melhoria de desempenho
82
- - `chore` - Dependências, configuração, ferramental
83
-
84
- **Exemplos:**
85
-
86
- ```bash
87
- # Tarefa padrão
88
- git add src/api/auth.ts src/types/user.ts
89
- git commit -m "feat(08-02): create user registration endpoint
90
-
91
- - POST /auth/register validates email and password
92
- - Checks for duplicate users
93
- - Returns JWT token on success
94
- "
95
-
96
- # Tarefa TDD - fase VERMELHO
97
- git add src/__tests__/jwt.test.ts
98
- git commit -m "test(07-02): add failing test for JWT generation
99
-
100
- - Tests token contains user ID claim
101
- - Tests token expires in 1 hour
102
- - Tests signature verification
103
- "
104
-
105
- # Tarefa TDD - fase VERDE
106
- git add src/utils/jwt.ts
107
- git commit -m "feat(07-02): implement JWT generation
108
-
109
- - Uses jose library for signing
110
- - Includes user ID and expiry claims
111
- - Signs with HS256 algorithm
112
- "
113
- ```
114
-
115
- </format>
116
-
117
- <format name="plan-completion">
118
- ## Conclusão do Plano (Após Todas as Tarefas Concluídas)
119
-
120
- Após todas as tarefas commitadas, um commit final de metadados captura a conclusão do plano.
121
-
122
- ```
123
- docs({fase}-{plano}): complete [nome-do-plano] plan
124
-
125
- Tasks completed: [N]/[N]
126
- - [Nome da Tarefa 1]
127
- - [Nome da Tarefa 2]
128
- - [Nome da Tarefa 3]
129
-
130
- SUMMARY: .planning/phases/XX-nome/{fase}-{plano}-SUMMARY.md
131
- ```
132
-
133
- O que commitar:
134
-
135
- ```bash
136
- node "./.claude/framework/bin/tools.cjs" commit "docs({fase}-{plano}): complete [nome-do-plano] plan" --files .planning/phases/XX-nome/{fase}-{plano}-PLAN.md .planning/phases/XX-nome/{fase}-{plano}-SUMMARY.md .planning/STATE.md .planning/ROADMAP.md
137
- ```
138
-
139
- **Nota:** Arquivos de código NÃO incluídos — já commitados por tarefa.
140
-
141
- </format>
142
-
143
- <format name="handoff">
144
- ## Handoff (WIP)
145
-
146
- ```
147
- wip: [nome-da-fase] paused at task [X]/[Y]
148
-
149
- Current: [nome da tarefa]
150
- [Se bloqueado:] Blocked: [motivo]
151
- ```
152
-
153
- O que commitar:
154
-
155
- ```bash
156
- node "./.claude/framework/bin/tools.cjs" commit "wip: [nome-da-fase] paused at task [X]/[Y]" --files .planning/
157
- ```
158
-
159
- </format>
160
- </commit_formats>
161
-
162
- <example_log>
163
-
164
- **Abordagem antiga (commits por plano):**
165
- ```
166
- a7f2d1 feat(checkout): Stripe payments with webhook verification
167
- 3e9c4b feat(products): catalog with search, filters, and pagination
168
- 8a1b2c feat(auth): JWT with refresh rotation using jose
169
- 5c3d7e feat(foundation): Next.js 15 + Prisma + Tailwind scaffold
170
- 2f4a8d docs: initialize ecommerce-app (5 phases)
171
- ```
172
-
173
- **Nova abordagem (commits por tarefa):**
174
- ```
175
- # Fase 04 - Checkout
176
- 1a2b3c docs(04-01): complete checkout flow plan
177
- 4d5e6f feat(04-01): add webhook signature verification
178
- 7g8h9i feat(04-01): implement payment session creation
179
- 0j1k2l feat(04-01): create checkout page component
180
-
181
- # Fase 03 - Products
182
- 3m4n5o docs(03-02): complete product listing plan
183
- 6p7q8r feat(03-02): add pagination controls
184
- 9s0t1u feat(03-02): implement search and filters
185
- 2v3w4x feat(03-01): create product catalog schema
186
-
187
- # Fase 02 - Auth
188
- 5y6z7a docs(02-02): complete token refresh plan
189
- 8b9c0d feat(02-02): implement refresh token rotation
190
- 1e2f3g test(02-02): add failing test for token refresh
191
- 4h5i6j docs(02-01): complete JWT setup plan
192
- 7k8l9m feat(02-01): add JWT generation and validation
193
- 0n1o2p chore(02-01): install jose library
194
-
195
- # Fase 01 - Foundation
196
- 3q4r5s docs(01-01): complete scaffold plan
197
- 6t7u8v feat(01-01): configure Tailwind and globals
198
- 9w0x1y feat(01-01): set up Prisma with database
199
- 2z3a4b feat(01-01): create Next.js 15 project
200
-
201
- # Inicialização
202
- 5c6d7e docs: initialize ecommerce-app (5 phases)
203
- ```
204
-
205
- Cada plano produz 2-4 commits (tarefas + metadados). Claro, granular, bisectable.
206
-
207
- </example_log>
208
-
209
- <anti_patterns>
210
-
211
- **Ainda não commitar (artefatos intermediários):**
212
- - Criação do PLAN.md (commitar com conclusão do plano)
213
- - RESEARCH.md (intermediário)
214
- - DISCOVERY.md (intermediário)
215
- - Ajustes menores de planejamento
216
- - "Corrigi typo no roadmap"
217
-
218
- **Commitar (resultados):**
219
- - Cada conclusão de tarefa (feat/fix/test/refactor)
220
- - Metadados de conclusão de plano (docs)
221
- - Inicialização do projeto (docs)
222
-
223
- **Princípio chave:** Commite código funcionando e resultados lançados, não processo de planejamento.
224
-
225
- </anti_patterns>
226
-
227
- <commit_strategy_rationale>
228
-
229
- ## Por Que Commits Por Tarefa?
230
-
231
- **Engenharia de contexto para IA:**
232
- - O histórico git torna-se a fonte primária de contexto para sessões futuras do Claude
233
- - `git log --grep="{fase}-{plano}"` mostra todo o trabalho de um plano
234
- - `git diff <hash>^..<hash>` mostra as alterações exatas por tarefa
235
- - Menos dependência de análise do SUMMARY.md = mais contexto para o trabalho real
236
-
237
- **Recuperação de falha:**
238
- - Tarefa 1 commitada ✅, Tarefa 2 falhou ❌
239
- - Claude na próxima sessão: vê tarefa 1 concluída, pode tentar novamente a tarefa 2
240
- - Pode `git reset --hard` para a última tarefa bem-sucedida
241
-
242
- **Debugging:**
243
- - `git bisect` encontra a tarefa exata falhando, não apenas o plano falhando
244
- - `git blame` rastreia a linha até o contexto específico da tarefa
245
- - Cada commit é revertível independentemente
246
-
247
- **Observabilidade:**
248
- - Workflow de desenvolvedor solo + Claude se beneficia de atribuição granular
249
- - Commits atômicos são boas práticas de git
250
- - "Ruído de commit" irrelevante quando o consumidor é o Claude, não humanos
251
-
252
- </commit_strategy_rationale>
253
-
254
- <sub_repos_support>
255
-
256
- ## Suporte a Workspace Multi-Repositório (sub_repos)
257
-
258
- Para workspaces com repositórios git separados (ex: `backend/`, `frontend/`, `shared/`), o framework roteia commits para cada repositório independentemente.
259
-
260
- ### Configuração
261
-
262
- Em `.planning/config.json`, liste os diretórios de sub-repositório em `planning.sub_repos`:
263
-
264
- ```json
265
- {
266
- "planning": {
267
- "commit_docs": false,
268
- "sub_repos": ["backend", "frontend", "shared"]
269
- }
270
- }
271
- ```
272
-
273
- Defina `commit_docs: false` para que os docs de planejamento permaneçam locais e não sejam commitados em nenhum sub-repositório.
274
-
275
- ### Como Funciona
276
-
277
- 1. **Auto-detecção:** Durante `/novo-projeto`, diretórios com sua própria pasta `.git` são detectados e oferecidos para seleção como sub-repositórios. Em execuções subsequentes, `loadConfig` sincroniza automaticamente a lista `sub_repos` com o sistema de arquivos — adicionando repositórios recém-criados e removendo os deletados. Isso significa que `config.json` pode ser reescrito automaticamente quando os repositórios mudam no disco.
278
- 2. **Agrupamento de arquivos:** Arquivos de código são agrupados pelo prefixo do sub-repositório (ex: `backend/src/api/users.ts` pertence ao repositório `backend/`).
279
- 3. **Commits independentes:** Cada sub-repositório recebe seu próprio commit atômico via `tools.cjs commit-to-subrepo`. Os caminhos de arquivo são tornados relativos à raiz do sub-repositório antes do staging.
280
- 4. **Planejamento permanece local:** O diretório `.planning/` não é commitado; ele age como coordenação entre repositórios.
281
-
282
- ### Roteamento de Commit
283
-
284
- Em vez do comando `commit` padrão, use `commit-to-subrepo` quando `sub_repos` estiver configurado:
285
-
286
- ```bash
287
- node ./.claude/framework/bin/tools.cjs commit-to-subrepo "feat(02-01): add user API" \
288
- --files backend/src/api/users.ts backend/src/types/user.ts frontend/src/components/UserForm.tsx
289
- ```
290
-
291
- Isso faz staging de `src/api/users.ts` e `src/types/user.ts` no repositório `backend/`, e `src/components/UserForm.tsx` no repositório `frontend/`, commitando cada um independentemente com a mesma mensagem.
292
-
293
- Arquivos que não correspondem a nenhum sub-repositório configurado são reportados como sem correspondência.
294
-
295
- </sub_repos_support>
1
+ <overview>
2
+ Integração git para o framework.
3
+ </overview>
4
+
5
+ <core_principle>
6
+
7
+ **Commite resultados, não processos.**
8
+
9
+ O log git deve parecer um changelog do que foi lançado, não um diário de atividade de planejamento.
10
+ </core_principle>
11
+
12
+ <commit_points>
13
+
14
+ | Evento | Commitar? | Por quê |
15
+ | ----------------------------- | --------- | -------------------------------------------------- |
16
+ | BRIEF + ROADMAP criados | SIM | Inicialização do projeto |
17
+ | PLAN.md criado | NÃO | Intermediário — commitar com conclusão do plano |
18
+ | RESEARCH.md criado | NÃO | Intermediário |
19
+ | DISCOVERY.md criado | NÃO | Intermediário |
20
+ | **Tarefa concluída** | SIM | Unidade atômica de trabalho (1 commit por tarefa) |
21
+ | **Plano concluído** | SIM | Commit de metadados (SUMMARY + STATE + ROADMAP) |
22
+ | Handoff criado | SIM | Estado WIP preservado |
23
+
24
+ </commit_points>
25
+
26
+ <git_check>
27
+
28
+ ```bash
29
+ [ -d .git ] && echo "GIT_EXISTS" || echo "NO_GIT"
30
+ ```
31
+
32
+ Se NO_GIT: Execute `git init` silenciosamente. Projetos framework sempre têm seu próprio repositório.
33
+ </git_check>
34
+
35
+ <commit_formats>
36
+
37
+ <format name="initialization">
38
+ ## Inicialização do Projeto (brief + roadmap juntos)
39
+
40
+ ```
41
+ docs: initialize [nome-do-projeto] ([N] phases)
42
+
43
+ [Linha única do PROJECT.md]
44
+
45
+ Phases:
46
+ 1. [nome-da-fase]: [objetivo]
47
+ 2. [nome-da-fase]: [objetivo]
48
+ 3. [nome-da-fase]: [objetivo]
49
+ ```
50
+
51
+ O que commitar:
52
+
53
+ ```bash
54
+ node "./.claude/framework/bin/tools.cjs" commit "docs: initialize [nome-do-projeto] ([N] phases)" --files .planning/
55
+ ```
56
+
57
+ </format>
58
+
59
+ <format name="task-completion">
60
+ ## Conclusão de Tarefa (Durante Execução do Plano)
61
+
62
+ Cada tarefa recebe seu próprio commit imediatamente após a conclusão.
63
+
64
+ > **Agentes paralelos:** Quando executando como executor paralelo (spawnado por execute-phase),
65
+ > use `--no-verify` em todos os commits para evitar contenção de bloqueio de hooks pré-commit.
66
+ > O orquestrador valida os hooks uma vez após todos os agentes concluírem.
67
+
68
+ ```
69
+ {tipo}({fase}-{plano}): {nome-da-tarefa}
70
+
71
+ - [Alteração chave 1]
72
+ - [Alteração chave 2]
73
+ - [Alteração chave 3]
74
+ ```
75
+
76
+ **Tipos de commit:**
77
+ - `feat` - Nova funcionalidade/recurso
78
+ - `fix` - Correção de bug
79
+ - `test` - Apenas testes (fase TDD VERMELHO)
80
+ - `refactor` - Limpeza de código (fase TDD REFATORAR)
81
+ - `perf` - Melhoria de desempenho
82
+ - `chore` - Dependências, configuração, ferramental
83
+
84
+ **Exemplos:**
85
+
86
+ ```bash
87
+ # Tarefa padrão
88
+ git add src/api/auth.ts src/types/user.ts
89
+ git commit -m "feat(08-02): create user registration endpoint
90
+
91
+ - POST /auth/register validates email and password
92
+ - Checks for duplicate users
93
+ - Returns JWT token on success
94
+ "
95
+
96
+ # Tarefa TDD - fase VERMELHO
97
+ git add src/__tests__/jwt.test.ts
98
+ git commit -m "test(07-02): add failing test for JWT generation
99
+
100
+ - Tests token contains user ID claim
101
+ - Tests token expires in 1 hour
102
+ - Tests signature verification
103
+ "
104
+
105
+ # Tarefa TDD - fase VERDE
106
+ git add src/utils/jwt.ts
107
+ git commit -m "feat(07-02): implement JWT generation
108
+
109
+ - Uses jose library for signing
110
+ - Includes user ID and expiry claims
111
+ - Signs with HS256 algorithm
112
+ "
113
+ ```
114
+
115
+ </format>
116
+
117
+ <format name="plan-completion">
118
+ ## Conclusão do Plano (Após Todas as Tarefas Concluídas)
119
+
120
+ Após todas as tarefas commitadas, um commit final de metadados captura a conclusão do plano.
121
+
122
+ ```
123
+ docs({fase}-{plano}): complete [nome-do-plano] plan
124
+
125
+ Tasks completed: [N]/[N]
126
+ - [Nome da Tarefa 1]
127
+ - [Nome da Tarefa 2]
128
+ - [Nome da Tarefa 3]
129
+
130
+ SUMMARY: .planning/phases/XX-nome/{fase}-{plano}-SUMMARY.md
131
+ ```
132
+
133
+ O que commitar:
134
+
135
+ ```bash
136
+ node "./.claude/framework/bin/tools.cjs" commit "docs({fase}-{plano}): complete [nome-do-plano] plan" --files .planning/phases/XX-nome/{fase}-{plano}-PLAN.md .planning/phases/XX-nome/{fase}-{plano}-SUMMARY.md .planning/STATE.md .planning/ROADMAP.md
137
+ ```
138
+
139
+ **Nota:** Arquivos de código NÃO incluídos — já commitados por tarefa.
140
+
141
+ </format>
142
+
143
+ <format name="handoff">
144
+ ## Handoff (WIP)
145
+
146
+ ```
147
+ wip: [nome-da-fase] paused at task [X]/[Y]
148
+
149
+ Current: [nome da tarefa]
150
+ [Se bloqueado:] Blocked: [motivo]
151
+ ```
152
+
153
+ O que commitar:
154
+
155
+ ```bash
156
+ node "./.claude/framework/bin/tools.cjs" commit "wip: [nome-da-fase] paused at task [X]/[Y]" --files .planning/
157
+ ```
158
+
159
+ </format>
160
+ </commit_formats>
161
+
162
+ <example_log>
163
+
164
+ **Abordagem antiga (commits por plano):**
165
+ ```
166
+ a7f2d1 feat(checkout): Stripe payments with webhook verification
167
+ 3e9c4b feat(products): catalog with search, filters, and pagination
168
+ 8a1b2c feat(auth): JWT with refresh rotation using jose
169
+ 5c3d7e feat(foundation): Next.js 15 + Prisma + Tailwind scaffold
170
+ 2f4a8d docs: initialize ecommerce-app (5 phases)
171
+ ```
172
+
173
+ **Nova abordagem (commits por tarefa):**
174
+ ```
175
+ # Fase 04 - Checkout
176
+ 1a2b3c docs(04-01): complete checkout flow plan
177
+ 4d5e6f feat(04-01): add webhook signature verification
178
+ 7g8h9i feat(04-01): implement payment session creation
179
+ 0j1k2l feat(04-01): create checkout page component
180
+
181
+ # Fase 03 - Products
182
+ 3m4n5o docs(03-02): complete product listing plan
183
+ 6p7q8r feat(03-02): add pagination controls
184
+ 9s0t1u feat(03-02): implement search and filters
185
+ 2v3w4x feat(03-01): create product catalog schema
186
+
187
+ # Fase 02 - Auth
188
+ 5y6z7a docs(02-02): complete token refresh plan
189
+ 8b9c0d feat(02-02): implement refresh token rotation
190
+ 1e2f3g test(02-02): add failing test for token refresh
191
+ 4h5i6j docs(02-01): complete JWT setup plan
192
+ 7k8l9m feat(02-01): add JWT generation and validation
193
+ 0n1o2p chore(02-01): install jose library
194
+
195
+ # Fase 01 - Foundation
196
+ 3q4r5s docs(01-01): complete scaffold plan
197
+ 6t7u8v feat(01-01): configure Tailwind and globals
198
+ 9w0x1y feat(01-01): set up Prisma with database
199
+ 2z3a4b feat(01-01): create Next.js 15 project
200
+
201
+ # Inicialização
202
+ 5c6d7e docs: initialize ecommerce-app (5 phases)
203
+ ```
204
+
205
+ Cada plano produz 2-4 commits (tarefas + metadados). Claro, granular, bisectable.
206
+
207
+ </example_log>
208
+
209
+ <anti_patterns>
210
+
211
+ **Ainda não commitar (artefatos intermediários):**
212
+ - Criação do PLAN.md (commitar com conclusão do plano)
213
+ - RESEARCH.md (intermediário)
214
+ - DISCOVERY.md (intermediário)
215
+ - Ajustes menores de planejamento
216
+ - "Corrigi typo no roadmap"
217
+
218
+ **Commitar (resultados):**
219
+ - Cada conclusão de tarefa (feat/fix/test/refactor)
220
+ - Metadados de conclusão de plano (docs)
221
+ - Inicialização do projeto (docs)
222
+
223
+ **Princípio chave:** Commite código funcionando e resultados lançados, não processo de planejamento.
224
+
225
+ </anti_patterns>
226
+
227
+ <commit_strategy_rationale>
228
+
229
+ ## Por Que Commits Por Tarefa?
230
+
231
+ **Engenharia de contexto para IA:**
232
+ - O histórico git torna-se a fonte primária de contexto para sessões futuras do Claude
233
+ - `git log --grep="{fase}-{plano}"` mostra todo o trabalho de um plano
234
+ - `git diff <hash>^..<hash>` mostra as alterações exatas por tarefa
235
+ - Menos dependência de análise do SUMMARY.md = mais contexto para o trabalho real
236
+
237
+ **Recuperação de falha:**
238
+ - Tarefa 1 commitada ✅, Tarefa 2 falhou ❌
239
+ - Claude na próxima sessão: vê tarefa 1 concluída, pode tentar novamente a tarefa 2
240
+ - Pode `git reset --hard` para a última tarefa bem-sucedida
241
+
242
+ **Debugging:**
243
+ - `git bisect` encontra a tarefa exata falhando, não apenas o plano falhando
244
+ - `git blame` rastreia a linha até o contexto específico da tarefa
245
+ - Cada commit é revertível independentemente
246
+
247
+ **Observabilidade:**
248
+ - Workflow de desenvolvedor solo + Claude se beneficia de atribuição granular
249
+ - Commits atômicos são boas práticas de git
250
+ - "Ruído de commit" irrelevante quando o consumidor é o Claude, não humanos
251
+
252
+ </commit_strategy_rationale>
253
+
254
+ <sub_repos_support>
255
+
256
+ ## Suporte a Workspace Multi-Repositório (sub_repos)
257
+
258
+ Para workspaces com repositórios git separados (ex: `backend/`, `frontend/`, `shared/`), o framework roteia commits para cada repositório independentemente.
259
+
260
+ ### Configuração
261
+
262
+ Em `.planning/config.json`, liste os diretórios de sub-repositório em `planning.sub_repos`:
263
+
264
+ ```json
265
+ {
266
+ "planning": {
267
+ "commit_docs": false,
268
+ "sub_repos": ["backend", "frontend", "shared"]
269
+ }
270
+ }
271
+ ```
272
+
273
+ Defina `commit_docs: false` para que os docs de planejamento permaneçam locais e não sejam commitados em nenhum sub-repositório.
274
+
275
+ ### Como Funciona
276
+
277
+ 1. **Auto-detecção:** Durante `/novo-projeto`, diretórios com sua própria pasta `.git` são detectados e oferecidos para seleção como sub-repositórios. Em execuções subsequentes, `loadConfig` sincroniza automaticamente a lista `sub_repos` com o sistema de arquivos — adicionando repositórios recém-criados e removendo os deletados. Isso significa que `config.json` pode ser reescrito automaticamente quando os repositórios mudam no disco.
278
+ 2. **Agrupamento de arquivos:** Arquivos de código são agrupados pelo prefixo do sub-repositório (ex: `backend/src/api/users.ts` pertence ao repositório `backend/`).
279
+ 3. **Commits independentes:** Cada sub-repositório recebe seu próprio commit atômico via `tools.cjs commit-to-subrepo`. Os caminhos de arquivo são tornados relativos à raiz do sub-repositório antes do staging.
280
+ 4. **Planejamento permanece local:** O diretório `.planning/` não é commitado; ele age como coordenação entre repositórios.
281
+
282
+ ### Roteamento de Commit
283
+
284
+ Em vez do comando `commit` padrão, use `commit-to-subrepo` quando `sub_repos` estiver configurado:
285
+
286
+ ```bash
287
+ node ./.claude/framework/bin/tools.cjs commit-to-subrepo "feat(02-01): add user API" \
288
+ --files backend/src/api/users.ts backend/src/types/user.ts frontend/src/components/UserForm.tsx
289
+ ```
290
+
291
+ Isso faz staging de `src/api/users.ts` e `src/types/user.ts` no repositório `backend/`, e `src/components/UserForm.tsx` no repositório `frontend/`, commitando cada um independentemente com a mesma mensagem.
292
+
293
+ Arquivos que não correspondem a nenhum sub-repositório configurado são reportados como sem correspondência.
294
+
295
+ </sub_repos_support>
@@ -1,38 +1,38 @@
1
- # Commit de Planejamento Git
2
-
3
- Commite artefatos de planejamento usando o CLI tools, que verifica automaticamente a configuração `commit_docs` e o status do gitignore.
4
-
5
- ## Commit via CLI
6
-
7
- Sempre use `tools.cjs commit` para arquivos `.planning/` — ele trata `commit_docs` e verificações do gitignore automaticamente:
8
-
9
- ```bash
10
- node "./.claude/framework/bin/tools.cjs" commit "docs({scope}): {descrição}" --files .planning/STATE.md .planning/ROADMAP.md
11
- ```
12
-
13
- O CLI retornará `skipped` (com motivo) se `commit_docs` for `false` ou `.planning/` estiver no gitignore. Não são necessárias verificações condicionais manuais.
14
-
15
- ## Emenda do Commit Anterior
16
-
17
- Para incorporar alterações de arquivos `.planning/` no commit anterior:
18
-
19
- ```bash
20
- node "./.claude/framework/bin/tools.cjs" commit "" --files .planning/codebase/*.md --amend
21
- ```
22
-
23
- ## Padrões de Mensagem de Commit
24
-
25
- | Comando | Escopo | Exemplo |
26
- |---------|--------|---------|
27
- | planejar-fase | fase | `docs(phase-03): create authentication plans` |
28
- | executar-fase | fase | `docs(phase-03): complete authentication phase` |
29
- | novo-marco | marco | `docs: start milestone v1.1` |
30
- | remover-fase | chore | `chore: remove phase 17 (dashboard)` |
31
- | inserir-fase | fase | `docs: insert phase 16.1 (critical fix)` |
32
- | adicionar-fase | fase | `docs: add phase 07 (settings page)` |
33
-
34
- ## Quando Pular
35
-
36
- - `commit_docs: false` no config
37
- - `.planning/` está no gitignore
38
- - Nenhuma alteração a commitar (verifique com `git status --porcelain .planning/`)
1
+ # Commit de Planejamento Git
2
+
3
+ Commite artefatos de planejamento usando o CLI tools, que verifica automaticamente a configuração `commit_docs` e o status do gitignore.
4
+
5
+ ## Commit via CLI
6
+
7
+ Sempre use `tools.cjs commit` para arquivos `.planning/` — ele trata `commit_docs` e verificações do gitignore automaticamente:
8
+
9
+ ```bash
10
+ node "./.claude/framework/bin/tools.cjs" commit "docs({scope}): {descrição}" --files .planning/STATE.md .planning/ROADMAP.md
11
+ ```
12
+
13
+ O CLI retornará `skipped` (com motivo) se `commit_docs` for `false` ou `.planning/` estiver no gitignore. Não são necessárias verificações condicionais manuais.
14
+
15
+ ## Emenda do Commit Anterior
16
+
17
+ Para incorporar alterações de arquivos `.planning/` no commit anterior:
18
+
19
+ ```bash
20
+ node "./.claude/framework/bin/tools.cjs" commit "" --files .planning/codebase/*.md --amend
21
+ ```
22
+
23
+ ## Padrões de Mensagem de Commit
24
+
25
+ | Comando | Escopo | Exemplo |
26
+ |---------|--------|---------|
27
+ | planejar-fase | fase | `docs(phase-03): create authentication plans` |
28
+ | executar-fase | fase | `docs(phase-03): complete authentication phase` |
29
+ | novo-marco | marco | `docs: start milestone v1.1` |
30
+ | remover-fase | chore | `chore: remove phase 17 (dashboard)` |
31
+ | inserir-fase | fase | `docs: insert phase 16.1 (critical fix)` |
32
+ | adicionar-fase | fase | `docs: add phase 07 (settings page)` |
33
+
34
+ ## Quando Pular
35
+
36
+ - `commit_docs: false` no config
37
+ - `.planning/` está no gitignore
38
+ - Nenhuma alteração a commitar (verifique com `git status --porcelain .planning/`)