@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,36 +1,36 @@
1
- # Resolução de Perfil de Modelo
2
-
3
- Resolva o perfil de modelo uma vez no início da orquestração, depois use-o para todos os spawns de Task.
4
-
5
- ## Padrão de Resolução
6
-
7
- ```bash
8
- MODEL_PROFILE=$(cat .planning/config.json 2>/dev/null | grep -o '"model_profile"[[:space:]]*:[[:space:]]*"[^"]*"' | grep -o '"[^"]*"$' | tr -d '"' || echo "balanced")
9
- ```
10
-
11
- Padrão: `balanced` se não configurado ou config ausente.
12
-
13
- ## Tabela de Consulta
14
-
15
- @./.claude/framework/references/model-profiles.md
16
-
17
- Consulte o agente na tabela para o perfil resolvido. Passe o parâmetro model para chamadas Task:
18
-
19
- ```
20
- Task(
21
- prompt="...",
22
- subagent_type="planner",
23
- model="{resolved_model}" # "inherit", "sonnet", ou "haiku"
24
- )
25
- ```
26
-
27
- **Nota:** Agentes de nível Opus resolvem para `"inherit"` (não `"opus"`). Isso faz o agente usar o modelo da sessão pai, evitando conflitos com políticas organizacionais que podem bloquear versões específicas do opus.
28
-
29
- Se `model_profile` for `"inherit"`, todos os agentes resolvem para `"inherit"` (útil para `/model` do OpenCode).
30
-
31
- ## Uso
32
-
33
- 1. Resolva uma vez no início da orquestração
34
- 2. Armazene o valor do perfil
35
- 3. Consulte o modelo de cada agente na tabela ao spawnar
36
- 4. Passe o parâmetro model para cada chamada Task (valores: `"inherit"`, `"sonnet"`, `"haiku"`)
1
+ # Resolução de Perfil de Modelo
2
+
3
+ Resolva o perfil de modelo uma vez no início da orquestração, depois use-o para todos os spawns de Task.
4
+
5
+ ## Padrão de Resolução
6
+
7
+ ```bash
8
+ MODEL_PROFILE=$(cat .planning/config.json 2>/dev/null | grep -o '"model_profile"[[:space:]]*:[[:space:]]*"[^"]*"' | grep -o '"[^"]*"$' | tr -d '"' || echo "balanced")
9
+ ```
10
+
11
+ Padrão: `balanced` se não configurado ou config ausente.
12
+
13
+ ## Tabela de Consulta
14
+
15
+ @./.claude/framework/references/model-profiles.md
16
+
17
+ Consulte o agente na tabela para o perfil resolvido. Passe o parâmetro model para chamadas Task:
18
+
19
+ ```
20
+ Task(
21
+ prompt="...",
22
+ subagent_type="planner",
23
+ model="{resolved_model}" # "inherit", "sonnet", ou "haiku"
24
+ )
25
+ ```
26
+
27
+ **Nota:** Agentes de nível Opus resolvem para `"inherit"` (não `"opus"`). Isso faz o agente usar o modelo da sessão pai, evitando conflitos com políticas organizacionais que podem bloquear versões específicas do opus.
28
+
29
+ Se `model_profile` for `"inherit"`, todos os agentes resolvem para `"inherit"` (útil para `/model` do OpenCode).
30
+
31
+ ## Uso
32
+
33
+ 1. Resolva uma vez no início da orquestração
34
+ 2. Armazene o valor do perfil
35
+ 3. Consulte o modelo de cada agente na tabela ao spawnar
36
+ 4. Passe o parâmetro model para cada chamada Task (valores: `"inherit"`, `"sonnet"`, `"haiku"`)
@@ -1,139 +1,139 @@
1
- # Perfis de Modelo
2
-
3
- Perfis de modelo controlam qual modelo Claude cada agente framework usa. Isso permite equilibrar qualidade vs. custo de tokens, ou herdar o modelo de sessão selecionado atualmente.
4
-
5
- ## Definições de Perfil
6
-
7
- | Agente | `quality` | `balanced` | `budget` | `inherit` |
8
- |--------|-----------|------------|----------|-----------|
9
- | planner | opus | opus | sonnet | inherit |
10
- | roadmapper | opus | sonnet | sonnet | inherit |
11
- | executor | opus | sonnet | sonnet | inherit |
12
- | phase-researcher | opus | sonnet | haiku | inherit |
13
- | project-researcher | opus | sonnet | haiku | inherit |
14
- | research-synthesizer | sonnet | sonnet | haiku | inherit |
15
- | debugger | opus | sonnet | sonnet | inherit |
16
- | codebase-mapper | sonnet | haiku | haiku | inherit |
17
- | verifier | sonnet | sonnet | haiku | inherit |
18
- | plan-checker | sonnet | sonnet | haiku | inherit |
19
- | integration-checker | sonnet | sonnet | haiku | inherit |
20
- | nyquist-auditor | sonnet | sonnet | haiku | inherit |
21
-
22
- ## Filosofia dos Perfis
23
-
24
- **quality** - Máximo poder de raciocínio
25
- - Opus para todos os agentes de tomada de decisão
26
- - Sonnet para verificação somente-leitura
27
- - Use quando: cota disponível, trabalho crítico de arquitetura
28
-
29
- **balanced** (padrão) - Alocação inteligente
30
- - Opus apenas para planejamento (onde decisões de arquitetura acontecem)
31
- - Sonnet para execução e pesquisa (segue instruções explícitas)
32
- - Sonnet para verificação (precisa de raciocínio, não apenas correspondência de padrões)
33
- - Use quando: desenvolvimento normal, bom equilíbrio de qualidade e custo
34
-
35
- **budget** - Uso mínimo de Opus
36
- - Sonnet para qualquer coisa que escreva código
37
- - Haiku para pesquisa e verificação
38
- - Use quando: conservando cota, trabalho de alto volume, fases menos críticas
39
-
40
- **inherit** - Seguir o modelo de sessão atual
41
- - Todos os agentes resolvem para `inherit`
42
- - Melhor quando você troca modelos interativamente (por exemplo `/model` do OpenCode)
43
- - **Obrigatório ao usar provedores não-Anthropic** (OpenRouter, modelos locais, etc.) — caso contrário o framework pode chamar modelos Anthropic diretamente, gerando custos inesperados
44
- - Use quando: você quer que o framework siga seu modelo de runtime selecionado atualmente
45
-
46
- ## Usando Runtimes Não-Claude (Codex, OpenCode, Gemini CLI)
47
-
48
- Quando instalado para um runtime não-Claude, o instalador do framework define `resolve_model_ids: "omit"` em `~/.framework/defaults.json`. Isso retorna um parâmetro model vazio para todos os agentes, então cada agente usa o modelo padrão do runtime. Nenhuma configuração manual é necessária.
49
-
50
- Para atribuir modelos diferentes a agentes diferentes, adicione `model_overrides` com IDs de modelo que seu runtime reconhece:
51
-
52
- ```json
53
- {
54
- "resolve_model_ids": "omit",
55
- "model_overrides": {
56
- "planner": "o3",
57
- "executor": "o4-mini",
58
- "debugger": "o3",
59
- "codebase-mapper": "o4-mini"
60
- }
61
- }
62
- ```
63
-
64
- A mesma lógica de níveis se aplica: modelos mais fortes para planejamento e debugging, modelos mais baratos para execução e mapeamento.
65
-
66
- ## Usando Claude Code com Provedores Não-Anthropic (OpenRouter, Local)
67
-
68
- Se você estiver usando Claude Code com OpenRouter, um modelo local, ou qualquer provedor não-Anthropic, defina o perfil `inherit` para evitar que o framework chame modelos Anthropic para subagentes:
69
-
70
- ```bash
71
- # Via comando de configurações
72
- /configuracoes
73
- # → Selecione "Inherit" para perfil de modelo
74
-
75
- # Ou manualmente em .planning/config.json
76
- {
77
- "model_profile": "inherit"
78
- }
79
- ```
80
-
81
- Sem `inherit`, o perfil `balanced` padrão do framework spawna modelos Anthropic específicos (`opus`, `sonnet`, `haiku`) para cada tipo de agente, o que pode resultar em custos adicionais de API pelo seu provedor não-Anthropic.
82
-
83
- ## Lógica de Resolução
84
-
85
- Orquestradores resolvem o modelo antes de spawnar:
86
-
87
- ```
88
- 1. Ler .planning/config.json
89
- 2. Verificar model_overrides para override específico de agente
90
- 3. Se não houver override, consultar agente na tabela de perfil
91
- 4. Passar parâmetro model para chamada Task
92
- ```
93
-
94
- ## Overrides Por Agente
95
-
96
- Sobrescreva agentes específicos sem alterar o perfil inteiro:
97
-
98
- ```json
99
- {
100
- "model_profile": "balanced",
101
- "model_overrides": {
102
- "executor": "opus",
103
- "planner": "haiku"
104
- }
105
- }
106
- ```
107
-
108
- Overrides têm precedência sobre o perfil. Valores válidos: `opus`, `sonnet`, `haiku`, `inherit`, ou qualquer ID de modelo totalmente qualificado (ex: `"o3"`, `"openai/o3"`, `"google/gemini-2.5-pro"`).
109
-
110
- ## Alternando Perfis
111
-
112
- Runtime: `/definir-perfil <perfil>`
113
-
114
- Padrão por projeto: Defina em `.planning/config.json`:
115
- ```json
116
- {
117
- "model_profile": "balanced"
118
- }
119
- ```
120
-
121
- ## Justificativa do Design
122
-
123
- **Por que Opus para planner?**
124
- O planejamento envolve decisões de arquitetura, decomposição de objetivos e design de tarefas. É onde a qualidade do modelo tem o maior impacto.
125
-
126
- **Por que Sonnet para executor?**
127
- Executores seguem instruções explícitas do PLAN.md. O plano já contém o raciocínio; a execução é implementação.
128
-
129
- **Por que Sonnet (não Haiku) para verificadores no balanced?**
130
- A verificação requer raciocínio regressivo de objetivos — verificar se o código *entrega* o que a fase prometeu, não apenas correspondência de padrões. Sonnet lida bem com isso; Haiku pode perder lacunas sutis.
131
-
132
- **Por que Haiku para codebase-mapper?**
133
- Exploração somente-leitura e extração de padrões. Não requer raciocínio, apenas saída estruturada do conteúdo dos arquivos.
134
-
135
- **Por que `inherit` em vez de passar `opus` diretamente?**
136
- O alias `"opus"` do Claude Code mapeia para uma versão específica do modelo. Organizações podem bloquear versões mais antigas do opus enquanto permitem versões mais novas. O framework retorna `"inherit"` para agentes de nível opus, fazendo-os usar qualquer versão do opus que o usuário configurou na sessão. Isso evita conflitos de versão e fallbacks silenciosos para Sonnet.
137
-
138
- **Por que o perfil `inherit`?**
139
- Alguns runtimes (incluindo OpenCode) permitem que usuários troquem modelos em runtime (`/model`). O perfil `inherit` mantém todos os subagentes framework alinhados com essa seleção ao vivo.
1
+ # Perfis de Modelo
2
+
3
+ Perfis de modelo controlam qual modelo Claude cada agente framework usa. Isso permite equilibrar qualidade vs. custo de tokens, ou herdar o modelo de sessão selecionado atualmente.
4
+
5
+ ## Definições de Perfil
6
+
7
+ | Agente | `quality` | `balanced` | `budget` | `inherit` |
8
+ |--------|-----------|------------|----------|-----------|
9
+ | planner | opus | opus | sonnet | inherit |
10
+ | roadmapper | opus | sonnet | sonnet | inherit |
11
+ | executor | opus | sonnet | sonnet | inherit |
12
+ | phase-researcher | opus | sonnet | haiku | inherit |
13
+ | project-researcher | opus | sonnet | haiku | inherit |
14
+ | research-synthesizer | sonnet | sonnet | haiku | inherit |
15
+ | debugger | opus | sonnet | sonnet | inherit |
16
+ | codebase-mapper | sonnet | haiku | haiku | inherit |
17
+ | verifier | sonnet | sonnet | haiku | inherit |
18
+ | plan-checker | sonnet | sonnet | haiku | inherit |
19
+ | integration-checker | sonnet | sonnet | haiku | inherit |
20
+ | nyquist-auditor | sonnet | sonnet | haiku | inherit |
21
+
22
+ ## Filosofia dos Perfis
23
+
24
+ **quality** - Máximo poder de raciocínio
25
+ - Opus para todos os agentes de tomada de decisão
26
+ - Sonnet para verificação somente-leitura
27
+ - Use quando: cota disponível, trabalho crítico de arquitetura
28
+
29
+ **balanced** (padrão) - Alocação inteligente
30
+ - Opus apenas para planejamento (onde decisões de arquitetura acontecem)
31
+ - Sonnet para execução e pesquisa (segue instruções explícitas)
32
+ - Sonnet para verificação (precisa de raciocínio, não apenas correspondência de padrões)
33
+ - Use quando: desenvolvimento normal, bom equilíbrio de qualidade e custo
34
+
35
+ **budget** - Uso mínimo de Opus
36
+ - Sonnet para qualquer coisa que escreva código
37
+ - Haiku para pesquisa e verificação
38
+ - Use quando: conservando cota, trabalho de alto volume, fases menos críticas
39
+
40
+ **inherit** - Seguir o modelo de sessão atual
41
+ - Todos os agentes resolvem para `inherit`
42
+ - Melhor quando você troca modelos interativamente (por exemplo `/model` do OpenCode)
43
+ - **Obrigatório ao usar provedores não-Anthropic** (OpenRouter, modelos locais, etc.) — caso contrário o framework pode chamar modelos Anthropic diretamente, gerando custos inesperados
44
+ - Use quando: você quer que o framework siga seu modelo de runtime selecionado atualmente
45
+
46
+ ## Usando Runtimes Não-Claude (Codex, OpenCode, Gemini CLI)
47
+
48
+ Quando instalado para um runtime não-Claude, o instalador do framework define `resolve_model_ids: "omit"` em `~/.framework/defaults.json`. Isso retorna um parâmetro model vazio para todos os agentes, então cada agente usa o modelo padrão do runtime. Nenhuma configuração manual é necessária.
49
+
50
+ Para atribuir modelos diferentes a agentes diferentes, adicione `model_overrides` com IDs de modelo que seu runtime reconhece:
51
+
52
+ ```json
53
+ {
54
+ "resolve_model_ids": "omit",
55
+ "model_overrides": {
56
+ "planner": "o3",
57
+ "executor": "o4-mini",
58
+ "debugger": "o3",
59
+ "codebase-mapper": "o4-mini"
60
+ }
61
+ }
62
+ ```
63
+
64
+ A mesma lógica de níveis se aplica: modelos mais fortes para planejamento e debugging, modelos mais baratos para execução e mapeamento.
65
+
66
+ ## Usando Claude Code com Provedores Não-Anthropic (OpenRouter, Local)
67
+
68
+ Se você estiver usando Claude Code com OpenRouter, um modelo local, ou qualquer provedor não-Anthropic, defina o perfil `inherit` para evitar que o framework chame modelos Anthropic para subagentes:
69
+
70
+ ```bash
71
+ # Via comando de configurações
72
+ /configuracoes
73
+ # → Selecione "Inherit" para perfil de modelo
74
+
75
+ # Ou manualmente em .planning/config.json
76
+ {
77
+ "model_profile": "inherit"
78
+ }
79
+ ```
80
+
81
+ Sem `inherit`, o perfil `balanced` padrão do framework spawna modelos Anthropic específicos (`opus`, `sonnet`, `haiku`) para cada tipo de agente, o que pode resultar em custos adicionais de API pelo seu provedor não-Anthropic.
82
+
83
+ ## Lógica de Resolução
84
+
85
+ Orquestradores resolvem o modelo antes de spawnar:
86
+
87
+ ```
88
+ 1. Ler .planning/config.json
89
+ 2. Verificar model_overrides para override específico de agente
90
+ 3. Se não houver override, consultar agente na tabela de perfil
91
+ 4. Passar parâmetro model para chamada Task
92
+ ```
93
+
94
+ ## Overrides Por Agente
95
+
96
+ Sobrescreva agentes específicos sem alterar o perfil inteiro:
97
+
98
+ ```json
99
+ {
100
+ "model_profile": "balanced",
101
+ "model_overrides": {
102
+ "executor": "opus",
103
+ "planner": "haiku"
104
+ }
105
+ }
106
+ ```
107
+
108
+ Overrides têm precedência sobre o perfil. Valores válidos: `opus`, `sonnet`, `haiku`, `inherit`, ou qualquer ID de modelo totalmente qualificado (ex: `"o3"`, `"openai/o3"`, `"google/gemini-2.5-pro"`).
109
+
110
+ ## Alternando Perfis
111
+
112
+ Runtime: `/definir-perfil <perfil>`
113
+
114
+ Padrão por projeto: Defina em `.planning/config.json`:
115
+ ```json
116
+ {
117
+ "model_profile": "balanced"
118
+ }
119
+ ```
120
+
121
+ ## Justificativa do Design
122
+
123
+ **Por que Opus para planner?**
124
+ O planejamento envolve decisões de arquitetura, decomposição de objetivos e design de tarefas. É onde a qualidade do modelo tem o maior impacto.
125
+
126
+ **Por que Sonnet para executor?**
127
+ Executores seguem instruções explícitas do PLAN.md. O plano já contém o raciocínio; a execução é implementação.
128
+
129
+ **Por que Sonnet (não Haiku) para verificadores no balanced?**
130
+ A verificação requer raciocínio regressivo de objetivos — verificar se o código *entrega* o que a fase prometeu, não apenas correspondência de padrões. Sonnet lida bem com isso; Haiku pode perder lacunas sutis.
131
+
132
+ **Por que Haiku para codebase-mapper?**
133
+ Exploração somente-leitura e extração de padrões. Não requer raciocínio, apenas saída estruturada do conteúdo dos arquivos.
134
+
135
+ **Por que `inherit` em vez de passar `opus` diretamente?**
136
+ O alias `"opus"` do Claude Code mapeia para uma versão específica do modelo. Organizações podem bloquear versões mais antigas do opus enquanto permitem versões mais novas. O framework retorna `"inherit"` para agentes de nível opus, fazendo-os usar qualquer versão do opus que o usuário configurou na sessão. Isso evita conflitos de versão e fallbacks silenciosos para Sonnet.
137
+
138
+ **Por que o perfil `inherit`?**
139
+ Alguns runtimes (incluindo OpenCode) permitem que usuários troquem modelos em runtime (`/model`). O perfil `inherit` mantém todos os subagentes framework alinhados com essa seleção ao vivo.
@@ -1,61 +1,61 @@
1
- # Análise de Argumentos de Fase
2
-
3
- Analise e normalize argumentos de fase para comandos que operam em fases.
4
-
5
- ## Extração
6
-
7
- De `$ARGUMENTS`:
8
- - Extraia o número da fase (primeiro argumento numérico)
9
- - Extraia flags (prefixados com `--`)
10
- - O texto restante é a descrição (para comandos de inserir/adicionar)
11
-
12
- ## Usando tools
13
-
14
- O comando `find-phase` trata normalização e validação em uma única etapa:
15
-
16
- ```bash
17
- PHASE_INFO=$(node "./.claude/framework/bin/tools.cjs" find-phase "${PHASE}")
18
- ```
19
-
20
- Retorna JSON com:
21
- - `found`: true/false
22
- - `directory`: Caminho completo para o diretório da fase
23
- - `phase_number`: Número normalizado (ex: "06", "06.1")
24
- - `phase_name`: Parte do nome (ex: "foundation")
25
- - `plans`: Array de arquivos PLAN.md
26
- - `summaries`: Array de arquivos SUMMARY.md
27
-
28
- ## Normalização Manual (Legado)
29
-
30
- Preencha fases inteiras com zero até 2 dígitos. Preserve sufixos decimais.
31
-
32
- ```bash
33
- # Normalizar número da fase
34
- if [[ "$PHASE" =~ ^[0-9]+$ ]]; then
35
- # Inteiro: 8 → 08
36
- PHASE=$(printf "%02d" "$PHASE")
37
- elif [[ "$PHASE" =~ ^([0-9]+)\.([0-9]+)$ ]]; then
38
- # Decimal: 2.1 → 02.1
39
- PHASE=$(printf "%02d.%s" "${BASH_REMATCH[1]}" "${BASH_REMATCH[2]}")
40
- fi
41
- ```
42
-
43
- ## Validação
44
-
45
- Use `roadmap get-phase` para validar se a fase existe:
46
-
47
- ```bash
48
- PHASE_CHECK=$(node "./.claude/framework/bin/tools.cjs" roadmap get-phase "${PHASE}" --pick found)
49
- if [ "$PHASE_CHECK" = "false" ]; then
50
- echo "ERRO: Fase ${PHASE} não encontrada no roadmap"
51
- exit 1
52
- fi
53
- ```
54
-
55
- ## Busca de Diretório
56
-
57
- Use `find-phase` para busca de diretório:
58
-
59
- ```bash
60
- PHASE_DIR=$(node "./.claude/framework/bin/tools.cjs" find-phase "${PHASE}" --raw)
61
- ```
1
+ # Análise de Argumentos de Fase
2
+
3
+ Analise e normalize argumentos de fase para comandos que operam em fases.
4
+
5
+ ## Extração
6
+
7
+ De `$ARGUMENTS`:
8
+ - Extraia o número da fase (primeiro argumento numérico)
9
+ - Extraia flags (prefixados com `--`)
10
+ - O texto restante é a descrição (para comandos de inserir/adicionar)
11
+
12
+ ## Usando tools
13
+
14
+ O comando `find-phase` trata normalização e validação em uma única etapa:
15
+
16
+ ```bash
17
+ PHASE_INFO=$(node "./.claude/framework/bin/tools.cjs" find-phase "${PHASE}")
18
+ ```
19
+
20
+ Retorna JSON com:
21
+ - `found`: true/false
22
+ - `directory`: Caminho completo para o diretório da fase
23
+ - `phase_number`: Número normalizado (ex: "06", "06.1")
24
+ - `phase_name`: Parte do nome (ex: "foundation")
25
+ - `plans`: Array de arquivos PLAN.md
26
+ - `summaries`: Array de arquivos SUMMARY.md
27
+
28
+ ## Normalização Manual (Legado)
29
+
30
+ Preencha fases inteiras com zero até 2 dígitos. Preserve sufixos decimais.
31
+
32
+ ```bash
33
+ # Normalizar número da fase
34
+ if [[ "$PHASE" =~ ^[0-9]+$ ]]; then
35
+ # Inteiro: 8 → 08
36
+ PHASE=$(printf "%02d" "$PHASE")
37
+ elif [[ "$PHASE" =~ ^([0-9]+)\.([0-9]+)$ ]]; then
38
+ # Decimal: 2.1 → 02.1
39
+ PHASE=$(printf "%02d.%s" "${BASH_REMATCH[1]}" "${BASH_REMATCH[2]}")
40
+ fi
41
+ ```
42
+
43
+ ## Validação
44
+
45
+ Use `roadmap get-phase` para validar se a fase existe:
46
+
47
+ ```bash
48
+ PHASE_CHECK=$(node "./.claude/framework/bin/tools.cjs" roadmap get-phase "${PHASE}" --pick found)
49
+ if [ "$PHASE_CHECK" = "false" ]; then
50
+ echo "ERRO: Fase ${PHASE} não encontrada no roadmap"
51
+ exit 1
52
+ fi
53
+ ```
54
+
55
+ ## Busca de Diretório
56
+
57
+ Use `find-phase` para busca de diretório:
58
+
59
+ ```bash
60
+ PHASE_DIR=$(node "./.claude/framework/bin/tools.cjs" find-phase "${PHASE}" --raw)
61
+ ```