@luanpdd/kit-mcp 1.29.0 → 1.30.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 (330) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +168 -168
  3. package/gates/agent-no-recursive-dispatch.md +82 -82
  4. package/kit/COMANDOS.md +138 -138
  5. package/kit/README.md +76 -76
  6. package/kit/agents/advisor-researcher.md +106 -106
  7. package/kit/agents/assumptions-analyzer.md +107 -107
  8. package/kit/agents/audit-log-implementer.md +313 -313
  9. package/kit/agents/auditor-consistencia-isolamento.md +413 -413
  10. package/kit/agents/b2b-saas-architect.md +156 -156
  11. package/kit/agents/cascading-failures-auditor.md +298 -298
  12. package/kit/agents/codebase-mapper.md +768 -768
  13. package/kit/agents/crm-pipeline-implementer.md +256 -256
  14. package/kit/agents/debugger.md +813 -813
  15. package/kit/agents/detector-tenant-quente.md +337 -337
  16. package/kit/agents/evolution-go-integrator.md +200 -200
  17. package/kit/agents/example-reviewer.md +21 -21
  18. package/kit/agents/executor.md +564 -564
  19. package/kit/agents/integration-checker.md +200 -200
  20. package/kit/agents/invite-flow-implementer.md +189 -189
  21. package/kit/agents/legacy-characterizer.md +368 -368
  22. package/kit/agents/lgpd-compliance-auditor.md +295 -295
  23. package/kit/agents/multi-tenant-isolation-auditor.md +253 -253
  24. package/kit/agents/multi-tenant-rls-writer.md +340 -340
  25. package/kit/agents/nyquist-auditor.md +178 -178
  26. package/kit/agents/observability-coverage-auditor.md +315 -315
  27. package/kit/agents/org-onboarding-implementer.md +223 -223
  28. package/kit/agents/payload-capture-instrumenter.md +273 -273
  29. package/kit/agents/phase-researcher.md +696 -696
  30. package/kit/agents/plan-checker.md +272 -272
  31. package/kit/agents/planner.md +922 -922
  32. package/kit/agents/project-researcher.md +652 -652
  33. package/kit/agents/refactor-safety-auditor.md +404 -404
  34. package/kit/agents/research-synthesizer.md +245 -245
  35. package/kit/agents/roadmapper.md +677 -677
  36. package/kit/agents/seam-finder.md +359 -359
  37. package/kit/agents/shotgun-surgery-detector.md +349 -349
  38. package/kit/agents/supabase-branching-architect.md +562 -562
  39. package/kit/agents/supabase-cicd-pipeline-implementer.md +777 -777
  40. package/kit/agents/supabase-column-privileges-writer.md +399 -399
  41. package/kit/agents/supabase-edge-fn-tester.md +287 -0
  42. package/kit/agents/supabase-edge-fn-writer.md +239 -210
  43. package/kit/agents/supabase-migration-writer.md +385 -385
  44. package/kit/agents/supabase-rbac-implementer.md +392 -392
  45. package/kit/agents/supabase-realtime-implementer.md +363 -267
  46. package/kit/agents/supabase-rls-hardener.md +521 -521
  47. package/kit/agents/supabase-rls-writer.md +323 -323
  48. package/kit/agents/supabase-roles-implementer.md +355 -355
  49. package/kit/agents/super-admin-implementer.md +281 -281
  50. package/kit/agents/ui-auditor.md +437 -437
  51. package/kit/agents/ui-checker.md +302 -302
  52. package/kit/agents/ui-researcher.md +355 -355
  53. package/kit/agents/user-profiler.md +175 -175
  54. package/kit/agents/validador-evolucao-schema.md +335 -335
  55. package/kit/agents/verifier.md +728 -728
  56. package/kit/commands/adicionar-backlog.md +75 -75
  57. package/kit/commands/adicionar-fase.md +42 -42
  58. package/kit/commands/adicionar-tarefa.md +45 -45
  59. package/kit/commands/adicionar-testes.md +41 -41
  60. package/kit/commands/ajuda.md +21 -21
  61. package/kit/commands/atualizar.md +37 -37
  62. package/kit/commands/auditar-cascading.md +111 -111
  63. package/kit/commands/auditar-marco.md +179 -179
  64. package/kit/commands/auditar-observabilidade-cobertura.md +183 -183
  65. package/kit/commands/auditar-refactor.md +219 -219
  66. package/kit/commands/auditar-release.md +109 -109
  67. package/kit/commands/auditar-uat.md +23 -23
  68. package/kit/commands/autonomo.md +40 -40
  69. package/kit/commands/branch-pr.md +24 -24
  70. package/kit/commands/burn-rate-status.md +408 -408
  71. package/kit/commands/capturar-payloads.md +193 -193
  72. package/kit/commands/caracterizar.md +212 -212
  73. package/kit/commands/concluir-marco.md +247 -247
  74. package/kit/commands/configuracoes.md +36 -36
  75. package/kit/commands/dados-distribuidos.md +188 -188
  76. package/kit/commands/definir-perfil.md +10 -10
  77. package/kit/commands/depurar.md +190 -190
  78. package/kit/commands/detectar-duplicacao.md +197 -197
  79. package/kit/commands/discutir-fase.md +131 -131
  80. package/kit/commands/encontrar-seams.md +136 -136
  81. package/kit/commands/entrar-discord.md +17 -17
  82. package/kit/commands/estatisticas.md +18 -18
  83. package/kit/commands/example-greeting.md +33 -33
  84. package/kit/commands/executar-fase.md +58 -58
  85. package/kit/commands/expresso.md +56 -56
  86. package/kit/commands/fase-ui.md +34 -34
  87. package/kit/commands/fazer.md +57 -57
  88. package/kit/commands/fio.md +125 -125
  89. package/kit/commands/fluxos-trabalho.md +64 -64
  90. package/kit/commands/forense.md +176 -176
  91. package/kit/commands/gerenciador.md +38 -38
  92. package/kit/commands/inserir-fase.md +31 -31
  93. package/kit/commands/legacy.md +263 -263
  94. package/kit/commands/limpeza.md +17 -17
  95. package/kit/commands/listar-hipoteses-fase.md +45 -45
  96. package/kit/commands/listar-workspaces.md +18 -18
  97. package/kit/commands/load-shedding.md +117 -117
  98. package/kit/commands/mapear-codebase.md +70 -70
  99. package/kit/commands/multi-tenant.md +163 -163
  100. package/kit/commands/nota.md +33 -33
  101. package/kit/commands/novo-marco.md +43 -43
  102. package/kit/commands/novo-projeto.md +41 -41
  103. package/kit/commands/novo-workspace.md +43 -43
  104. package/kit/commands/pausar-trabalho.md +37 -37
  105. package/kit/commands/perfil-usuario.md +45 -45
  106. package/kit/commands/pesquisar-fase.md +195 -195
  107. package/kit/commands/planejar-fase.md +67 -67
  108. package/kit/commands/planejar-lacunas.md +33 -33
  109. package/kit/commands/plantar-ideia.md +25 -25
  110. package/kit/commands/progresso.md +24 -24
  111. package/kit/commands/proximo.md +30 -30
  112. package/kit/commands/publicar.md +490 -490
  113. package/kit/commands/rapido.md +35 -35
  114. package/kit/commands/reaplicar-patches.md +124 -124
  115. package/kit/commands/refactor-seguro.md +321 -321
  116. package/kit/commands/relatorio-sessao.md +19 -19
  117. package/kit/commands/remover-fase.md +31 -31
  118. package/kit/commands/remover-workspace.md +26 -26
  119. package/kit/commands/resumo-marco.md +50 -50
  120. package/kit/commands/retomar-trabalho.md +40 -40
  121. package/kit/commands/revisar-backlog.md +60 -60
  122. package/kit/commands/revisar-ui.md +32 -32
  123. package/kit/commands/revisar.md +37 -37
  124. package/kit/commands/saude.md +21 -21
  125. package/kit/commands/setup-notion.md +93 -93
  126. package/kit/commands/storytelling.md +179 -179
  127. package/kit/commands/supabase.md +30 -7
  128. package/kit/commands/sync-main.md +68 -68
  129. package/kit/commands/validar-fase.md +35 -35
  130. package/kit/commands/verificar-tarefas.md +44 -44
  131. package/kit/commands/verificar-trabalho.md +64 -64
  132. package/kit/file-manifest.json +14 -8
  133. package/kit/framework/bin/lib/commands.cjs +959 -959
  134. package/kit/framework/bin/lib/config.cjs +442 -442
  135. package/kit/framework/bin/lib/core.cjs +1230 -1230
  136. package/kit/framework/bin/lib/frontmatter.cjs +336 -336
  137. package/kit/framework/bin/lib/init.cjs +1442 -1442
  138. package/kit/framework/bin/lib/milestone.cjs +252 -252
  139. package/kit/framework/bin/lib/model-profiles.cjs +68 -68
  140. package/kit/framework/bin/lib/phase.cjs +888 -888
  141. package/kit/framework/bin/lib/profile-output.cjs +952 -952
  142. package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
  143. package/kit/framework/bin/lib/roadmap.cjs +329 -329
  144. package/kit/framework/bin/lib/security.cjs +382 -382
  145. package/kit/framework/bin/lib/state.cjs +1031 -1031
  146. package/kit/framework/bin/lib/template.cjs +222 -222
  147. package/kit/framework/bin/lib/uat.cjs +282 -282
  148. package/kit/framework/bin/lib/verify.cjs +888 -888
  149. package/kit/framework/bin/lib/workstream.cjs +491 -491
  150. package/kit/framework/bin/tools.cjs +918 -918
  151. package/kit/framework/commands/workstreams.md +63 -63
  152. package/kit/framework/references/checkpoints.md +778 -778
  153. package/kit/framework/references/continuation-format.md +249 -249
  154. package/kit/framework/references/decimal-phase-calculation.md +64 -64
  155. package/kit/framework/references/git-integration.md +295 -295
  156. package/kit/framework/references/git-planning-commit.md +38 -38
  157. package/kit/framework/references/model-profile-resolution.md +36 -36
  158. package/kit/framework/references/model-profiles.md +139 -139
  159. package/kit/framework/references/phase-argument-parsing.md +61 -61
  160. package/kit/framework/references/planning-config.md +202 -202
  161. package/kit/framework/references/questioning.md +162 -162
  162. package/kit/framework/references/tdd.md +263 -263
  163. package/kit/framework/references/ui-brand.md +160 -160
  164. package/kit/framework/references/user-profiling.md +657 -657
  165. package/kit/framework/references/verification-patterns.md +612 -612
  166. package/kit/framework/references/workstream-flag.md +58 -58
  167. package/kit/framework/templates/DEBUG.md +164 -164
  168. package/kit/framework/templates/UAT.md +265 -265
  169. package/kit/framework/templates/UI-SPEC.md +100 -100
  170. package/kit/framework/templates/VALIDATION.md +76 -76
  171. package/kit/framework/templates/claude-md.md +122 -122
  172. package/kit/framework/templates/codebase/architecture.md +185 -185
  173. package/kit/framework/templates/codebase/concerns.md +205 -205
  174. package/kit/framework/templates/codebase/conventions.md +204 -204
  175. package/kit/framework/templates/codebase/integrations.md +192 -192
  176. package/kit/framework/templates/codebase/stack.md +158 -158
  177. package/kit/framework/templates/codebase/structure.md +199 -199
  178. package/kit/framework/templates/codebase/testing.md +301 -301
  179. package/kit/framework/templates/config.json +44 -44
  180. package/kit/framework/templates/context.md +352 -352
  181. package/kit/framework/templates/continue-here.md +78 -78
  182. package/kit/framework/templates/copilot-instructions.md +7 -7
  183. package/kit/framework/templates/debug-subagent-prompt.md +91 -91
  184. package/kit/framework/templates/dev-preferences.md +20 -20
  185. package/kit/framework/templates/discovery.md +146 -146
  186. package/kit/framework/templates/discussion-log.md +63 -63
  187. package/kit/framework/templates/milestone-archive.md +123 -123
  188. package/kit/framework/templates/milestone.md +115 -115
  189. package/kit/framework/templates/phase-prompt.md +610 -610
  190. package/kit/framework/templates/planner-subagent-prompt.md +117 -117
  191. package/kit/framework/templates/project.md +186 -186
  192. package/kit/framework/templates/requirements.md +231 -231
  193. package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
  194. package/kit/framework/templates/research-project/FEATURES.md +147 -147
  195. package/kit/framework/templates/research-project/PITFALLS.md +200 -200
  196. package/kit/framework/templates/research-project/STACK.md +120 -120
  197. package/kit/framework/templates/research-project/SUMMARY.md +170 -170
  198. package/kit/framework/templates/research.md +419 -419
  199. package/kit/framework/templates/retrospective.md +54 -54
  200. package/kit/framework/templates/roadmap.md +202 -202
  201. package/kit/framework/templates/state.md +176 -176
  202. package/kit/framework/templates/summary-complex.md +59 -59
  203. package/kit/framework/templates/summary-minimal.md +41 -41
  204. package/kit/framework/templates/summary-standard.md +48 -48
  205. package/kit/framework/templates/summary.md +209 -209
  206. package/kit/framework/templates/user-profile.md +146 -146
  207. package/kit/framework/templates/user-setup.md +256 -256
  208. package/kit/framework/templates/verification-report.md +258 -258
  209. package/kit/framework/workflows/add-phase.md +112 -112
  210. package/kit/framework/workflows/add-tests.md +351 -351
  211. package/kit/framework/workflows/add-todo.md +158 -158
  212. package/kit/framework/workflows/audit-milestone.md +340 -340
  213. package/kit/framework/workflows/audit-uat.md +109 -109
  214. package/kit/framework/workflows/autonomous.md +891 -891
  215. package/kit/framework/workflows/check-todos.md +177 -177
  216. package/kit/framework/workflows/cleanup.md +152 -152
  217. package/kit/framework/workflows/complete-milestone.md +696 -696
  218. package/kit/framework/workflows/diagnose-issues.md +231 -231
  219. package/kit/framework/workflows/discovery-phase.md +289 -289
  220. package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
  221. package/kit/framework/workflows/discuss-phase.md +784 -784
  222. package/kit/framework/workflows/do.md +104 -104
  223. package/kit/framework/workflows/execute-phase.md +838 -838
  224. package/kit/framework/workflows/execute-plan.md +510 -510
  225. package/kit/framework/workflows/fast.md +102 -102
  226. package/kit/framework/workflows/forensics.md +265 -265
  227. package/kit/framework/workflows/health.md +181 -181
  228. package/kit/framework/workflows/help.md +619 -619
  229. package/kit/framework/workflows/insert-phase.md +130 -130
  230. package/kit/framework/workflows/list-phase-assumptions.md +178 -178
  231. package/kit/framework/workflows/list-workspaces.md +56 -56
  232. package/kit/framework/workflows/manager.md +362 -362
  233. package/kit/framework/workflows/map-codebase.md +377 -377
  234. package/kit/framework/workflows/milestone-summary.md +223 -223
  235. package/kit/framework/workflows/new-milestone.md +486 -486
  236. package/kit/framework/workflows/new-project.md +1159 -1159
  237. package/kit/framework/workflows/new-workspace.md +237 -237
  238. package/kit/framework/workflows/next.md +97 -97
  239. package/kit/framework/workflows/node-repair.md +92 -92
  240. package/kit/framework/workflows/note.md +156 -156
  241. package/kit/framework/workflows/pause-work.md +176 -176
  242. package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
  243. package/kit/framework/workflows/plan-phase.md +765 -765
  244. package/kit/framework/workflows/plant-seed.md +169 -169
  245. package/kit/framework/workflows/pr-branch.md +129 -129
  246. package/kit/framework/workflows/profile-user.md +450 -450
  247. package/kit/framework/workflows/progress.md +507 -507
  248. package/kit/framework/workflows/quick.md +757 -757
  249. package/kit/framework/workflows/remove-phase.md +155 -155
  250. package/kit/framework/workflows/remove-workspace.md +90 -90
  251. package/kit/framework/workflows/research-phase.md +82 -82
  252. package/kit/framework/workflows/resume-project.md +326 -326
  253. package/kit/framework/workflows/review.md +228 -228
  254. package/kit/framework/workflows/session-report.md +146 -146
  255. package/kit/framework/workflows/settings.md +283 -283
  256. package/kit/framework/workflows/ship.md +228 -228
  257. package/kit/framework/workflows/stats.md +60 -60
  258. package/kit/framework/workflows/transition.md +671 -671
  259. package/kit/framework/workflows/ui-phase.md +302 -302
  260. package/kit/framework/workflows/ui-review.md +165 -165
  261. package/kit/framework/workflows/update.md +323 -323
  262. package/kit/framework/workflows/validate-phase.md +174 -174
  263. package/kit/framework/workflows/verify-phase.md +252 -252
  264. package/kit/framework/workflows/verify-work.md +637 -637
  265. package/kit/hooks/check-update.js +118 -118
  266. package/kit/hooks/context-monitor.js +163 -163
  267. package/kit/hooks/prompt-guard.js +103 -103
  268. package/kit/hooks/statusline.js +125 -125
  269. package/kit/hooks/workflow-guard.js +101 -101
  270. package/kit/settings.json +45 -45
  271. package/kit/skills/_shared-supabase/glossary.md +17 -0
  272. package/kit/skills/ai-prompt-characterization/SKILL.md +335 -335
  273. package/kit/skills/armadilhas-sistemas-distribuidos/SKILL.md +447 -447
  274. package/kit/skills/audit-log-multi-tenant/SKILL.md +340 -340
  275. package/kit/skills/b2b-saas-architecture/SKILL.md +300 -300
  276. package/kit/skills/consistencia-leitura-replica/SKILL.md +385 -385
  277. package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +343 -343
  278. package/kit/skills/escolha-modelo-consistencia/SKILL.md +494 -494
  279. package/kit/skills/evolucao-schema-compativel/SKILL.md +448 -448
  280. package/kit/skills/evolution-go-whatsapp-integration/SKILL.md +322 -322
  281. package/kit/skills/example-skill/SKILL.md +42 -42
  282. package/kit/skills/legacy-api-only-applications/SKILL.md +358 -358
  283. package/kit/skills/legacy-characterization-tests/SKILL.md +330 -330
  284. package/kit/skills/legacy-effect-analysis/SKILL.md +331 -331
  285. package/kit/skills/legacy-extract-class/SKILL.md +203 -203
  286. package/kit/skills/legacy-programming-by-difference/SKILL.md +252 -252
  287. package/kit/skills/legacy-seams-and-test-harness/SKILL.md +460 -460
  288. package/kit/skills/legacy-shotgun-surgery/SKILL.md +286 -286
  289. package/kit/skills/legacy-sprout-wrap-techniques/SKILL.md +434 -434
  290. package/kit/skills/legacy-storytelling-naked-crc/SKILL.md +270 -270
  291. package/kit/skills/lgpd-multi-tenant-compliance/SKILL.md +340 -340
  292. package/kit/skills/member-invite-flow/SKILL.md +305 -305
  293. package/kit/skills/member-management-react-shadcn/SKILL.md +328 -328
  294. package/kit/skills/multi-tenant-performance-scaling/SKILL.md +316 -316
  295. package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +342 -342
  296. package/kit/skills/org-onboarding-flow/SKILL.md +257 -257
  297. package/kit/skills/org-switcher-react-pattern/SKILL.md +349 -349
  298. package/kit/skills/permission-gate-react-pattern/SKILL.md +271 -271
  299. package/kit/skills/postgres-isolamento-concorrencia/SKILL.md +552 -552
  300. package/kit/skills/pre-refactor-characterization/SKILL.md +421 -421
  301. package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +338 -338
  302. package/kit/skills/streams-eventos-cdc/SKILL.md +711 -711
  303. package/kit/skills/supabase-branching-workflow/SKILL.md +544 -544
  304. package/kit/skills/supabase-ci-cd-github-actions/SKILL.md +880 -880
  305. package/kit/skills/supabase-column-level-security/SKILL.md +426 -426
  306. package/kit/skills/supabase-config-toml-remotes/SKILL.md +807 -807
  307. package/kit/skills/supabase-custom-claims-rbac/SKILL.md +472 -472
  308. package/kit/skills/supabase-edge-functions/SKILL.md +229 -141
  309. package/kit/skills/supabase-edge-functions-auth/SKILL.md +309 -0
  310. package/kit/skills/supabase-edge-functions-limits/SKILL.md +302 -0
  311. package/kit/skills/supabase-edge-functions-mcp-server/SKILL.md +279 -0
  312. package/kit/skills/supabase-edge-functions-testing/SKILL.md +277 -0
  313. package/kit/skills/supabase-edge-runtime-builtins/SKILL.md +357 -0
  314. package/kit/skills/supabase-migration-repair/SKILL.md +823 -823
  315. package/kit/skills/supabase-migrations/SKILL.md +297 -297
  316. package/kit/skills/supabase-pgtap-testing/SKILL.md +1053 -1053
  317. package/kit/skills/supabase-postgres-roles/SKILL.md +392 -392
  318. package/kit/skills/supabase-realtime/SKILL.md +460 -236
  319. package/kit/skills/supabase-rls-defense-in-depth/SKILL.md +418 -418
  320. package/kit/skills/supabase-rls-policies/SKILL.md +635 -635
  321. package/kit/skills/super-admin-platform-pattern/SKILL.md +326 -326
  322. package/kit/skills/tenant-quente-mitigacao/SKILL.md +605 -605
  323. package/kit/skills/whatsapp-conversation-state-machine/SKILL.md +287 -287
  324. package/package.json +1 -1
  325. package/src/core/kit.js +216 -216
  326. package/src/core/reflect.js +247 -247
  327. package/src/core/reverse-sync.js +372 -372
  328. package/src/core/sync.js +418 -418
  329. package/src/core/watch.js +121 -121
  330. package/src/mcp-server/index.js +693 -693
@@ -1,362 +1,362 @@
1
- <purpose>
2
-
3
- Central de comando interativa para gerenciar um milestone a partir de um único terminal. Mostra um dashboard de todas as fases com status visual, despacha discuss inline e plan/execute como agentes em background, e volta ao dashboard após cada ação. Permite trabalho paralelo de fases a partir de um terminal.
4
-
5
- </purpose>
6
-
7
- <required_reading>
8
-
9
- Leia todos os arquivos referenciados pelo execution_context do prompt que invocou antes de começar.
10
-
11
- </required_reading>
12
-
13
- <process>
14
-
15
- <step name="initialize" priority="first">
16
-
17
- ## 1. Inicializar
18
-
19
- Bootstrap via manager init:
20
-
21
- ```bash
22
- INIT=$(node "./.claude/framework/bin/tools.cjs" init manager)
23
- if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
24
- ```
25
-
26
- Analisar JSON para: `milestone_version`, `milestone_name`, `phase_count`, `completed_count`, `in_progress_count`, `phases`, `recommended_actions`, `all_complete`, `waiting_signal`.
27
-
28
- **Se erro:** Exibir a mensagem de erro e sair.
29
-
30
- Exibir banner de inicialização:
31
-
32
- ```
33
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
34
- framework ► GERENCIADOR
35
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
36
-
37
- {milestone_version} — {milestone_name}
38
- {phase_count} fases · {completed_count} concluídas
39
-
40
- ✓ Discutir → inline ◆ Planejar/Executar → background
41
- Dashboard atualiza automaticamente quando há trabalho em background.
42
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
43
- ```
44
-
45
- Prosseguir para o passo dashboard.
46
-
47
- </step>
48
-
49
- <step name="dashboard">
50
-
51
- ## 2. Dashboard (Ponto de Atualização)
52
-
53
- **Cada vez que este passo é atingido**, re-ler estado do disco para capturar mudanças de agentes em background:
54
-
55
- ```bash
56
- INIT=$(node "./.claude/framework/bin/tools.cjs" init manager)
57
- if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
58
- ```
59
-
60
- Analisar o JSON completo. Construir a exibição do dashboard.
61
-
62
- Construir dashboard a partir do JSON. Símbolos: `✓` concluído, `◆` ativo, `○` pendente, `·` na fila. Barra de progresso: 20 caracteres `█░`.
63
-
64
- **Mapeamento de status** (disk_status → D P E Status):
65
-
66
- - `complete` → `✓ ✓ ✓` `✓ Concluído`
67
- - `partial` → `✓ ✓ ◆` `◆ Executando...`
68
- - `planned` → `✓ ✓ ○` `○ Pronto para executar`
69
- - `discussed` → `✓ ○ ·` `○ Pronto para planejar`
70
- - `researched` → `◆ · ·` `○ Pronto para planejar`
71
- - `empty`/`no_directory` + `is_next_to_discuss` → `○ · ·` `○ Pronto para discutir`
72
- - `empty`/`no_directory` caso contrário → `· · ·` `· Próximo na fila`
73
- - Se `is_active`, substituir ícone de status por `◆` e anexar `(ativo)`
74
-
75
- Se alguma fase `is_active`, mostrar: `◆ Background: {ação} Fase {N}, ...` acima da grade.
76
-
77
- Usar `display_name` (não `name`) para a coluna Fase — é pré-truncado a 20 caracteres com `…` se cortado. Alinhar todos os nomes de fase com a mesma largura.
78
-
79
- Usar `deps_display` do JSON de init para a coluna Deps — mostra de quais fases esta fase depende (ex: `1,3`) ou `—` para nenhuma.
80
-
81
- Exemplo de saída:
82
-
83
- ```
84
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
85
- framework ► DASHBOARD
86
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
87
- ████████████░░░░░░░░ 60% (3/5 fases)
88
- ◆ Background: Planejando Fase 4
89
- | # | Fase | Deps | D | P | E | Status |
90
- |---|----------------------|------|---|---|---|---------------------|
91
- | 1 | Foundation | — | ✓ | ✓ | ✓ | ✓ Concluído |
92
- | 2 | API Layer | 1 | ✓ | ✓ | ◆ | ◆ Executando (ativo)|
93
- | 3 | Auth System | 1 | ✓ | ✓ | ○ | ○ Pronto p/ executar|
94
- | 4 | Dashboard UI & Set… | 1,2 | ✓ | ◆ | · | ◆ Planejando (ativo)|
95
- | 5 | Notifications | — | ○ | · | · | ○ Pronto p/ discutir|
96
- | 6 | Polish & Final Mail… | 1-5 | · | · | · | · Próximo na fila |
97
- ```
98
-
99
- **Seção de recomendações:**
100
-
101
- Se `all_complete` for verdadeiro:
102
-
103
- ```
104
- ╔══════════════════════════════════════════════════════════════╗
105
- ║ MILESTONE CONCLUÍDO ║
106
- ╚══════════════════════════════════════════════════════════════╝
107
-
108
- Todas as {phase_count} fases concluídas. Pronto para etapas finais:
109
- → /verificar-trabalho — executar testes de aceitação
110
- → /concluir-marco — arquivar e encerrar
111
- ```
112
-
113
- Perguntar ao usuário via AskUserQuestion:
114
- - **question:** "Todas as fases concluídas. O que fazer a seguir?"
115
- - **options:** "Verificar trabalho" / "Concluir milestone" / "Sair do gerenciador"
116
-
117
- Tratar respostas:
118
- - "Verificar trabalho": `Skill(skill="framework:verificar-trabalho")` então voltar ao dashboard.
119
- - "Concluir milestone": `Skill(skill="framework:concluir-marco")` então sair.
120
- - "Sair do gerenciador": Ir para o passo de saída.
121
-
122
- **Se NÃO all_complete**, construir opções compostas a partir de `recommended_actions`:
123
-
124
- **Lógica de opção composta:** Agrupar ações em background (plan/execute) juntas, e combiná-las com a ação inline única (discuss) quando existir. O objetivo é apresentar o menor número possível de opções — uma opção pode despachar múltiplos agentes em background mais uma ação inline.
125
-
126
- **Construindo opções:**
127
-
128
- 1. Coletar todas as ações em background (recomendações de execute e plan) — pode haver múltiplas de cada.
129
- 2. Coletar a ação inline (recomendação de discuss, se houver — haverá no máximo uma já que discuss é sequencial).
130
- 3. Construir opções compostas:
131
-
132
- **Se houver QUAISQUER ações recomendadas (background, inline, ou ambas):**
133
- Criar UMA opção primária "Continuar" que despacha TODAS juntas:
134
- - Rótulo: `"Continuar"` — sempre esta palavra exata
135
- - Abaixo do rótulo, listar cada ação que acontecerá. Enumerar TODAS as ações recomendadas — não limitar ou truncar:
136
- ```
137
- Continuar:
138
- → Executar Fase 32 (background)
139
- → Planejar Fase 34 (background)
140
- → Discutir Fase 35 (inline)
141
- ```
142
- - Isso despacha todos os agentes em background primeiro, então executa o discuss inline (se houver).
143
- - Se não houver discuss inline, o dashboard atualiza após criar os agentes em background.
144
-
145
- **Importante:** A opção Continuar deve incluir CADA ação de `recommended_actions` — não apenas 2. Se houver 3 ações, listar 3. Se houver 5, listar 5.
146
-
147
- 4. Sempre adicionar:
148
- - `"Atualizar dashboard"`
149
- - `"Sair do gerenciador"`
150
-
151
- Exibir recomendações de forma compacta:
152
-
153
- ```
154
- ───────────────────────────────────────────────────────────────
155
- ▶ Próximos Passos
156
- ───────────────────────────────────────────────────────────────
157
-
158
- Continuar:
159
- → Executar Fase 32 (background)
160
- → Planejar Fase 34 (background)
161
- → Discutir Fase 35 (inline)
162
- ```
163
-
164
- **Auto-atualização:** Se agentes em background estiverem rodando (`is_active` é verdadeiro para alguma fase), definir um ciclo de auto-atualização de 60 segundos. Após apresentar o menu de ação, se nenhum input do usuário for recebido em 60 segundos, atualizar automaticamente o dashboard. Este intervalo é configurável via `manager_refresh_interval` na config framework (padrão: 60 segundos, definir como 0 para desabilitar).
165
-
166
- Apresentar via AskUserQuestion:
167
- - **question:** "O que você gostaria de fazer?"
168
- - **options:** (opções compostas como construídas acima + atualizar + sair, AskUserQuestion adiciona automaticamente "Outro")
169
-
170
- **Em "Outro" (texto livre):** Analisar intenção — se mencionar número de fase e ação, despachar adequadamente. Se incerto, exibir ações disponíveis e voltar ao action_menu.
171
-
172
- Prosseguir para o passo handle_action com a ação selecionada.
173
-
174
- </step>
175
-
176
- <step name="handle_action">
177
-
178
- ## 4. Tratar Ação
179
-
180
- ### Atualizar Dashboard
181
-
182
- Voltar ao passo dashboard.
183
-
184
- ### Sair do Gerenciador
185
-
186
- Ir para o passo de saída.
187
-
188
- ### Ação Composta (background + inline)
189
-
190
- Quando o usuário seleciona uma opção composta:
191
-
192
- 1. **Criar todos os agentes em background primeiro** (plan/execute) — despachá-los em paralelo usando os handlers de Plan Phase N / Execute Phase N abaixo.
193
- 2. **Então executar o discuss inline:**
194
-
195
- ```
196
- Skill(skill="framework:discutir-fase", args="{PHASE_NUM}")
197
- ```
198
-
199
- Após o discuss concluir, voltar ao passo dashboard (agentes em background continuam rodando).
200
-
201
- ### Discutir Fase N
202
-
203
- A discussão é interativa — precisa de input do usuário. Executar inline:
204
-
205
- ```
206
- Skill(skill="framework:discutir-fase", args="{PHASE_NUM}")
207
- ```
208
-
209
- Após o discuss concluir, voltar ao passo dashboard.
210
-
211
- ### Planejar Fase N
212
-
213
- O planejamento roda autonomamente. Criar um agente em background:
214
-
215
- ```
216
- Task(
217
- description="Planejar fase {N}: {phase_name}",
218
- run_in_background=true,
219
- prompt="Você está executando o workflow framework plan-phase para a fase {N} do projeto.
220
-
221
- Diretório de trabalho: {cwd}
222
- Fase: {N} — {phase_name}
223
- Objetivo: {goal}
224
-
225
- Passos:
226
- 1. Ler o workflow plan-phase: cat ./.claude/framework/workflows/plan-phase.md
227
- 2. Executar: node \"./.claude/framework/bin/tools.cjs\" init plan-phase {N}
228
- 3. Seguir os passos do workflow para produzir arquivos PLAN.md para esta fase.
229
- 4. Se pesquisa estiver habilitada na config, executar o passo de pesquisa primeiro.
230
- 5. Criar um subagente planner via Task() para criar os planos.
231
- 6. Se plan-checker estiver habilitado, criar um subagente plan-checker para verificar.
232
- 7. Commitar arquivos de plano quando concluído.
233
-
234
- Importante: Você está rodando em background. NÃO use AskUserQuestion — tome decisões autônomas baseadas no contexto do projeto. Se encontrar um bloqueio, escrevê-lo no STATE.md como bloqueio e parar. NÃO trabalhe silenciosamente em torno de erros de permissão ou acesso a arquivos — deixe-os falhar para que o gerenciador possa surfaçá-los com dicas de resolução."
235
- )
236
- ```
237
-
238
- Exibir:
239
-
240
- ```
241
- ◆ Criando planejador para Fase {N}: {phase_name}...
242
- ```
243
-
244
- Voltar ao passo dashboard.
245
-
246
- ### Executar Fase N
247
-
248
- A execução roda autonomamente. Criar um agente em background:
249
-
250
- ```
251
- Task(
252
- description="Executar fase {N}: {phase_name}",
253
- run_in_background=true,
254
- prompt="Você está executando o workflow framework execute-phase para a fase {N} do projeto.
255
-
256
- Diretório de trabalho: {cwd}
257
- Fase: {N} — {phase_name}
258
- Objetivo: {goal}
259
-
260
- Passos:
261
- 1. Ler o workflow execute-phase: cat ./.claude/framework/workflows/execute-phase.md
262
- 2. Executar: node \"./.claude/framework/bin/tools.cjs\" init execute-phase {N}
263
- 3. Seguir os passos do workflow: descobrir planos, analisar dependências, agrupar em waves.
264
- 4. Para cada wave, criar subagentes executor via Task() para executar planos em paralelo.
265
- 5. Após todas as waves concluírem, criar um subagente verifier se verificador estiver habilitado.
266
- 6. Atualizar ROADMAP.md e STATE.md com progresso.
267
- 7. Commitar todas as mudanças.
268
-
269
- Importante: Você está rodando em background. NÃO use AskUserQuestion — tome decisões autônomas. Use --no-verify em commits git. Se encontrar erro de permissão, trava de arquivo, ou qualquer problema de acesso, NÃO trabalhe em torno dele — deixe falhar e escreva o erro no STATE.md como bloqueio para que o gerenciador possa surfaçá-lo com orientação de resolução."
270
- )
271
- ```
272
-
273
- Exibir:
274
-
275
- ```
276
- ◆ Criando executor para Fase {N}: {phase_name}...
277
- ```
278
-
279
- Voltar ao passo dashboard.
280
-
281
- </step>
282
-
283
- <step name="background_completion">
284
-
285
- ## 5. Conclusão de Agente em Background
286
-
287
- Quando notificado que um agente em background concluiu:
288
-
289
- 1. Ler a mensagem de resultado do agente.
290
- 2. Exibir uma notificação breve:
291
-
292
- ```
293
- ✓ {description}
294
- {breve resumo do resultado do agente}
295
- ```
296
-
297
- 3. Voltar ao passo dashboard.
298
-
299
- **Se o agente reportou um erro ou bloqueio:**
300
-
301
- Classificar o erro:
302
-
303
- **Erro de permissão / acesso a ferramenta** (ex: ferramenta não permitida, permissão negada, restrição de sandbox):
304
- - Analisar o erro para identificar qual ferramenta ou comando foi bloqueado.
305
- - Exibir o erro claramente, então oferecer para corrigir:
306
- - **question:** "Fase {N} falhou — permissão negada para `{tool_or_command}`. Quer que eu adicione ao settings.local.json para que seja permitido?"
307
- - **options:** "Adicionar permissão e tentar novamente" / "Executar esta fase inline em vez disso" / "Pular e continuar"
308
- - "Adicionar permissão e tentar novamente": Usar `Skill(skill="update-config")` para adicionar a permissão ao `settings.local.json`, então recriar o agente em background. Voltar ao dashboard.
309
- - "Executar esta fase inline em vez disso": Despachar a mesma ação (plan/execute) inline via `Skill()` em vez de um Task em background. Voltar ao dashboard após.
310
- - "Pular e continuar": Voltar ao dashboard (fase permanece no estado atual).
311
-
312
- **Outros erros** (trava git, conflito de arquivo, erro de lógica, etc.):
313
- - Exibir o erro, então oferecer opções via AskUserQuestion:
314
- - **question:** "Agente em background para Fase {N} encontrou um problema: {error}. O que fazer?"
315
- - **options:** "Tentar novamente" / "Executar inline em vez disso" / "Pular e continuar" / "Ver detalhes"
316
- - "Tentar novamente": Recriar o mesmo agente em background. Voltar ao dashboard.
317
- - "Executar inline em vez disso": Despachar a ação inline via `Skill()`. Voltar ao dashboard após.
318
- - "Pular e continuar": Voltar ao dashboard (fase permanece no estado atual).
319
- - "Ver detalhes": Ler seção de bloqueios do STATE.md, exibir, então reapresentar opções.
320
-
321
- </step>
322
-
323
- <step name="exit">
324
-
325
- ## 6. Saída
326
-
327
- Exibir status final com barra de progresso:
328
-
329
- ```
330
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
331
- framework ► FIM DA SESSÃO
332
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
333
-
334
- {milestone_version} — {milestone_name}
335
- {PROGRESS_BAR} {progress_pct}% ({completed_count}/{phase_count} fases)
336
-
337
- Retome a qualquer momento: /gerenciador
338
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
339
- ```
340
-
341
- **Nota:** Quaisquer agentes em background ainda rodando continuarão até a conclusão. Seus resultados serão visíveis na próxima invocação de `/gerenciador` ou `/progresso`.
342
-
343
- </step>
344
-
345
- </process>
346
-
347
- <success_criteria>
348
- - [ ] Dashboard exibe todas as fases com indicadores de status corretos (colunas D/P/E/V)
349
- - [ ] Barra de progresso mostra percentual de conclusão preciso
350
- - [ ] Resolução de dependências: fases bloqueadas mostram quais deps estão faltando
351
- - [ ] Recomendações priorizam: executar > planejar > discutir
352
- - [ ] Fases de discuss executam inline via Skill() — perguntas interativas funcionam
353
- - [ ] Fases de plan criam agentes Task em background — retornam ao dashboard imediatamente
354
- - [ ] Fases de execute criam agentes Task em background — retornam ao dashboard imediatamente
355
- - [ ] Atualizações do dashboard capturam mudanças de agentes em background via estado do disco
356
- - [ ] Conclusão de agente em background aciona notificação e atualização do dashboard
357
- - [ ] Erros de agente em background apresentam opções de tentar novamente/pular
358
- - [ ] Estado de todos-concluídos oferece verify-work e complete-milestone
359
- - [ ] Saída mostra status final com instruções de retomada
360
- - [ ] Input de texto livre "Outro" analisado para número de fase e ação
361
- - [ ] Loop do gerenciador continua até o usuário sair ou o milestone concluir
362
- </success_criteria>
1
+ <purpose>
2
+
3
+ Central de comando interativa para gerenciar um milestone a partir de um único terminal. Mostra um dashboard de todas as fases com status visual, despacha discuss inline e plan/execute como agentes em background, e volta ao dashboard após cada ação. Permite trabalho paralelo de fases a partir de um terminal.
4
+
5
+ </purpose>
6
+
7
+ <required_reading>
8
+
9
+ Leia todos os arquivos referenciados pelo execution_context do prompt que invocou antes de começar.
10
+
11
+ </required_reading>
12
+
13
+ <process>
14
+
15
+ <step name="initialize" priority="first">
16
+
17
+ ## 1. Inicializar
18
+
19
+ Bootstrap via manager init:
20
+
21
+ ```bash
22
+ INIT=$(node "./.claude/framework/bin/tools.cjs" init manager)
23
+ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
24
+ ```
25
+
26
+ Analisar JSON para: `milestone_version`, `milestone_name`, `phase_count`, `completed_count`, `in_progress_count`, `phases`, `recommended_actions`, `all_complete`, `waiting_signal`.
27
+
28
+ **Se erro:** Exibir a mensagem de erro e sair.
29
+
30
+ Exibir banner de inicialização:
31
+
32
+ ```
33
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
34
+ framework ► GERENCIADOR
35
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
36
+
37
+ {milestone_version} — {milestone_name}
38
+ {phase_count} fases · {completed_count} concluídas
39
+
40
+ ✓ Discutir → inline ◆ Planejar/Executar → background
41
+ Dashboard atualiza automaticamente quando há trabalho em background.
42
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
43
+ ```
44
+
45
+ Prosseguir para o passo dashboard.
46
+
47
+ </step>
48
+
49
+ <step name="dashboard">
50
+
51
+ ## 2. Dashboard (Ponto de Atualização)
52
+
53
+ **Cada vez que este passo é atingido**, re-ler estado do disco para capturar mudanças de agentes em background:
54
+
55
+ ```bash
56
+ INIT=$(node "./.claude/framework/bin/tools.cjs" init manager)
57
+ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
58
+ ```
59
+
60
+ Analisar o JSON completo. Construir a exibição do dashboard.
61
+
62
+ Construir dashboard a partir do JSON. Símbolos: `✓` concluído, `◆` ativo, `○` pendente, `·` na fila. Barra de progresso: 20 caracteres `█░`.
63
+
64
+ **Mapeamento de status** (disk_status → D P E Status):
65
+
66
+ - `complete` → `✓ ✓ ✓` `✓ Concluído`
67
+ - `partial` → `✓ ✓ ◆` `◆ Executando...`
68
+ - `planned` → `✓ ✓ ○` `○ Pronto para executar`
69
+ - `discussed` → `✓ ○ ·` `○ Pronto para planejar`
70
+ - `researched` → `◆ · ·` `○ Pronto para planejar`
71
+ - `empty`/`no_directory` + `is_next_to_discuss` → `○ · ·` `○ Pronto para discutir`
72
+ - `empty`/`no_directory` caso contrário → `· · ·` `· Próximo na fila`
73
+ - Se `is_active`, substituir ícone de status por `◆` e anexar `(ativo)`
74
+
75
+ Se alguma fase `is_active`, mostrar: `◆ Background: {ação} Fase {N}, ...` acima da grade.
76
+
77
+ Usar `display_name` (não `name`) para a coluna Fase — é pré-truncado a 20 caracteres com `…` se cortado. Alinhar todos os nomes de fase com a mesma largura.
78
+
79
+ Usar `deps_display` do JSON de init para a coluna Deps — mostra de quais fases esta fase depende (ex: `1,3`) ou `—` para nenhuma.
80
+
81
+ Exemplo de saída:
82
+
83
+ ```
84
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
85
+ framework ► DASHBOARD
86
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
87
+ ████████████░░░░░░░░ 60% (3/5 fases)
88
+ ◆ Background: Planejando Fase 4
89
+ | # | Fase | Deps | D | P | E | Status |
90
+ |---|----------------------|------|---|---|---|---------------------|
91
+ | 1 | Foundation | — | ✓ | ✓ | ✓ | ✓ Concluído |
92
+ | 2 | API Layer | 1 | ✓ | ✓ | ◆ | ◆ Executando (ativo)|
93
+ | 3 | Auth System | 1 | ✓ | ✓ | ○ | ○ Pronto p/ executar|
94
+ | 4 | Dashboard UI & Set… | 1,2 | ✓ | ◆ | · | ◆ Planejando (ativo)|
95
+ | 5 | Notifications | — | ○ | · | · | ○ Pronto p/ discutir|
96
+ | 6 | Polish & Final Mail… | 1-5 | · | · | · | · Próximo na fila |
97
+ ```
98
+
99
+ **Seção de recomendações:**
100
+
101
+ Se `all_complete` for verdadeiro:
102
+
103
+ ```
104
+ ╔══════════════════════════════════════════════════════════════╗
105
+ ║ MILESTONE CONCLUÍDO ║
106
+ ╚══════════════════════════════════════════════════════════════╝
107
+
108
+ Todas as {phase_count} fases concluídas. Pronto para etapas finais:
109
+ → /verificar-trabalho — executar testes de aceitação
110
+ → /concluir-marco — arquivar e encerrar
111
+ ```
112
+
113
+ Perguntar ao usuário via AskUserQuestion:
114
+ - **question:** "Todas as fases concluídas. O que fazer a seguir?"
115
+ - **options:** "Verificar trabalho" / "Concluir milestone" / "Sair do gerenciador"
116
+
117
+ Tratar respostas:
118
+ - "Verificar trabalho": `Skill(skill="framework:verificar-trabalho")` então voltar ao dashboard.
119
+ - "Concluir milestone": `Skill(skill="framework:concluir-marco")` então sair.
120
+ - "Sair do gerenciador": Ir para o passo de saída.
121
+
122
+ **Se NÃO all_complete**, construir opções compostas a partir de `recommended_actions`:
123
+
124
+ **Lógica de opção composta:** Agrupar ações em background (plan/execute) juntas, e combiná-las com a ação inline única (discuss) quando existir. O objetivo é apresentar o menor número possível de opções — uma opção pode despachar múltiplos agentes em background mais uma ação inline.
125
+
126
+ **Construindo opções:**
127
+
128
+ 1. Coletar todas as ações em background (recomendações de execute e plan) — pode haver múltiplas de cada.
129
+ 2. Coletar a ação inline (recomendação de discuss, se houver — haverá no máximo uma já que discuss é sequencial).
130
+ 3. Construir opções compostas:
131
+
132
+ **Se houver QUAISQUER ações recomendadas (background, inline, ou ambas):**
133
+ Criar UMA opção primária "Continuar" que despacha TODAS juntas:
134
+ - Rótulo: `"Continuar"` — sempre esta palavra exata
135
+ - Abaixo do rótulo, listar cada ação que acontecerá. Enumerar TODAS as ações recomendadas — não limitar ou truncar:
136
+ ```
137
+ Continuar:
138
+ → Executar Fase 32 (background)
139
+ → Planejar Fase 34 (background)
140
+ → Discutir Fase 35 (inline)
141
+ ```
142
+ - Isso despacha todos os agentes em background primeiro, então executa o discuss inline (se houver).
143
+ - Se não houver discuss inline, o dashboard atualiza após criar os agentes em background.
144
+
145
+ **Importante:** A opção Continuar deve incluir CADA ação de `recommended_actions` — não apenas 2. Se houver 3 ações, listar 3. Se houver 5, listar 5.
146
+
147
+ 4. Sempre adicionar:
148
+ - `"Atualizar dashboard"`
149
+ - `"Sair do gerenciador"`
150
+
151
+ Exibir recomendações de forma compacta:
152
+
153
+ ```
154
+ ───────────────────────────────────────────────────────────────
155
+ ▶ Próximos Passos
156
+ ───────────────────────────────────────────────────────────────
157
+
158
+ Continuar:
159
+ → Executar Fase 32 (background)
160
+ → Planejar Fase 34 (background)
161
+ → Discutir Fase 35 (inline)
162
+ ```
163
+
164
+ **Auto-atualização:** Se agentes em background estiverem rodando (`is_active` é verdadeiro para alguma fase), definir um ciclo de auto-atualização de 60 segundos. Após apresentar o menu de ação, se nenhum input do usuário for recebido em 60 segundos, atualizar automaticamente o dashboard. Este intervalo é configurável via `manager_refresh_interval` na config framework (padrão: 60 segundos, definir como 0 para desabilitar).
165
+
166
+ Apresentar via AskUserQuestion:
167
+ - **question:** "O que você gostaria de fazer?"
168
+ - **options:** (opções compostas como construídas acima + atualizar + sair, AskUserQuestion adiciona automaticamente "Outro")
169
+
170
+ **Em "Outro" (texto livre):** Analisar intenção — se mencionar número de fase e ação, despachar adequadamente. Se incerto, exibir ações disponíveis e voltar ao action_menu.
171
+
172
+ Prosseguir para o passo handle_action com a ação selecionada.
173
+
174
+ </step>
175
+
176
+ <step name="handle_action">
177
+
178
+ ## 4. Tratar Ação
179
+
180
+ ### Atualizar Dashboard
181
+
182
+ Voltar ao passo dashboard.
183
+
184
+ ### Sair do Gerenciador
185
+
186
+ Ir para o passo de saída.
187
+
188
+ ### Ação Composta (background + inline)
189
+
190
+ Quando o usuário seleciona uma opção composta:
191
+
192
+ 1. **Criar todos os agentes em background primeiro** (plan/execute) — despachá-los em paralelo usando os handlers de Plan Phase N / Execute Phase N abaixo.
193
+ 2. **Então executar o discuss inline:**
194
+
195
+ ```
196
+ Skill(skill="framework:discutir-fase", args="{PHASE_NUM}")
197
+ ```
198
+
199
+ Após o discuss concluir, voltar ao passo dashboard (agentes em background continuam rodando).
200
+
201
+ ### Discutir Fase N
202
+
203
+ A discussão é interativa — precisa de input do usuário. Executar inline:
204
+
205
+ ```
206
+ Skill(skill="framework:discutir-fase", args="{PHASE_NUM}")
207
+ ```
208
+
209
+ Após o discuss concluir, voltar ao passo dashboard.
210
+
211
+ ### Planejar Fase N
212
+
213
+ O planejamento roda autonomamente. Criar um agente em background:
214
+
215
+ ```
216
+ Task(
217
+ description="Planejar fase {N}: {phase_name}",
218
+ run_in_background=true,
219
+ prompt="Você está executando o workflow framework plan-phase para a fase {N} do projeto.
220
+
221
+ Diretório de trabalho: {cwd}
222
+ Fase: {N} — {phase_name}
223
+ Objetivo: {goal}
224
+
225
+ Passos:
226
+ 1. Ler o workflow plan-phase: cat ./.claude/framework/workflows/plan-phase.md
227
+ 2. Executar: node \"./.claude/framework/bin/tools.cjs\" init plan-phase {N}
228
+ 3. Seguir os passos do workflow para produzir arquivos PLAN.md para esta fase.
229
+ 4. Se pesquisa estiver habilitada na config, executar o passo de pesquisa primeiro.
230
+ 5. Criar um subagente planner via Task() para criar os planos.
231
+ 6. Se plan-checker estiver habilitado, criar um subagente plan-checker para verificar.
232
+ 7. Commitar arquivos de plano quando concluído.
233
+
234
+ Importante: Você está rodando em background. NÃO use AskUserQuestion — tome decisões autônomas baseadas no contexto do projeto. Se encontrar um bloqueio, escrevê-lo no STATE.md como bloqueio e parar. NÃO trabalhe silenciosamente em torno de erros de permissão ou acesso a arquivos — deixe-os falhar para que o gerenciador possa surfaçá-los com dicas de resolução."
235
+ )
236
+ ```
237
+
238
+ Exibir:
239
+
240
+ ```
241
+ ◆ Criando planejador para Fase {N}: {phase_name}...
242
+ ```
243
+
244
+ Voltar ao passo dashboard.
245
+
246
+ ### Executar Fase N
247
+
248
+ A execução roda autonomamente. Criar um agente em background:
249
+
250
+ ```
251
+ Task(
252
+ description="Executar fase {N}: {phase_name}",
253
+ run_in_background=true,
254
+ prompt="Você está executando o workflow framework execute-phase para a fase {N} do projeto.
255
+
256
+ Diretório de trabalho: {cwd}
257
+ Fase: {N} — {phase_name}
258
+ Objetivo: {goal}
259
+
260
+ Passos:
261
+ 1. Ler o workflow execute-phase: cat ./.claude/framework/workflows/execute-phase.md
262
+ 2. Executar: node \"./.claude/framework/bin/tools.cjs\" init execute-phase {N}
263
+ 3. Seguir os passos do workflow: descobrir planos, analisar dependências, agrupar em waves.
264
+ 4. Para cada wave, criar subagentes executor via Task() para executar planos em paralelo.
265
+ 5. Após todas as waves concluírem, criar um subagente verifier se verificador estiver habilitado.
266
+ 6. Atualizar ROADMAP.md e STATE.md com progresso.
267
+ 7. Commitar todas as mudanças.
268
+
269
+ Importante: Você está rodando em background. NÃO use AskUserQuestion — tome decisões autônomas. Use --no-verify em commits git. Se encontrar erro de permissão, trava de arquivo, ou qualquer problema de acesso, NÃO trabalhe em torno dele — deixe falhar e escreva o erro no STATE.md como bloqueio para que o gerenciador possa surfaçá-lo com orientação de resolução."
270
+ )
271
+ ```
272
+
273
+ Exibir:
274
+
275
+ ```
276
+ ◆ Criando executor para Fase {N}: {phase_name}...
277
+ ```
278
+
279
+ Voltar ao passo dashboard.
280
+
281
+ </step>
282
+
283
+ <step name="background_completion">
284
+
285
+ ## 5. Conclusão de Agente em Background
286
+
287
+ Quando notificado que um agente em background concluiu:
288
+
289
+ 1. Ler a mensagem de resultado do agente.
290
+ 2. Exibir uma notificação breve:
291
+
292
+ ```
293
+ ✓ {description}
294
+ {breve resumo do resultado do agente}
295
+ ```
296
+
297
+ 3. Voltar ao passo dashboard.
298
+
299
+ **Se o agente reportou um erro ou bloqueio:**
300
+
301
+ Classificar o erro:
302
+
303
+ **Erro de permissão / acesso a ferramenta** (ex: ferramenta não permitida, permissão negada, restrição de sandbox):
304
+ - Analisar o erro para identificar qual ferramenta ou comando foi bloqueado.
305
+ - Exibir o erro claramente, então oferecer para corrigir:
306
+ - **question:** "Fase {N} falhou — permissão negada para `{tool_or_command}`. Quer que eu adicione ao settings.local.json para que seja permitido?"
307
+ - **options:** "Adicionar permissão e tentar novamente" / "Executar esta fase inline em vez disso" / "Pular e continuar"
308
+ - "Adicionar permissão e tentar novamente": Usar `Skill(skill="update-config")` para adicionar a permissão ao `settings.local.json`, então recriar o agente em background. Voltar ao dashboard.
309
+ - "Executar esta fase inline em vez disso": Despachar a mesma ação (plan/execute) inline via `Skill()` em vez de um Task em background. Voltar ao dashboard após.
310
+ - "Pular e continuar": Voltar ao dashboard (fase permanece no estado atual).
311
+
312
+ **Outros erros** (trava git, conflito de arquivo, erro de lógica, etc.):
313
+ - Exibir o erro, então oferecer opções via AskUserQuestion:
314
+ - **question:** "Agente em background para Fase {N} encontrou um problema: {error}. O que fazer?"
315
+ - **options:** "Tentar novamente" / "Executar inline em vez disso" / "Pular e continuar" / "Ver detalhes"
316
+ - "Tentar novamente": Recriar o mesmo agente em background. Voltar ao dashboard.
317
+ - "Executar inline em vez disso": Despachar a ação inline via `Skill()`. Voltar ao dashboard após.
318
+ - "Pular e continuar": Voltar ao dashboard (fase permanece no estado atual).
319
+ - "Ver detalhes": Ler seção de bloqueios do STATE.md, exibir, então reapresentar opções.
320
+
321
+ </step>
322
+
323
+ <step name="exit">
324
+
325
+ ## 6. Saída
326
+
327
+ Exibir status final com barra de progresso:
328
+
329
+ ```
330
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
331
+ framework ► FIM DA SESSÃO
332
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
333
+
334
+ {milestone_version} — {milestone_name}
335
+ {PROGRESS_BAR} {progress_pct}% ({completed_count}/{phase_count} fases)
336
+
337
+ Retome a qualquer momento: /gerenciador
338
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
339
+ ```
340
+
341
+ **Nota:** Quaisquer agentes em background ainda rodando continuarão até a conclusão. Seus resultados serão visíveis na próxima invocação de `/gerenciador` ou `/progresso`.
342
+
343
+ </step>
344
+
345
+ </process>
346
+
347
+ <success_criteria>
348
+ - [ ] Dashboard exibe todas as fases com indicadores de status corretos (colunas D/P/E/V)
349
+ - [ ] Barra de progresso mostra percentual de conclusão preciso
350
+ - [ ] Resolução de dependências: fases bloqueadas mostram quais deps estão faltando
351
+ - [ ] Recomendações priorizam: executar > planejar > discutir
352
+ - [ ] Fases de discuss executam inline via Skill() — perguntas interativas funcionam
353
+ - [ ] Fases de plan criam agentes Task em background — retornam ao dashboard imediatamente
354
+ - [ ] Fases de execute criam agentes Task em background — retornam ao dashboard imediatamente
355
+ - [ ] Atualizações do dashboard capturam mudanças de agentes em background via estado do disco
356
+ - [ ] Conclusão de agente em background aciona notificação e atualização do dashboard
357
+ - [ ] Erros de agente em background apresentam opções de tentar novamente/pular
358
+ - [ ] Estado de todos-concluídos oferece verify-work e complete-milestone
359
+ - [ ] Saída mostra status final com instruções de retomada
360
+ - [ ] Input de texto livre "Outro" analisado para número de fase e ação
361
+ - [ ] Loop do gerenciador continua até o usuário sair ou o milestone concluir
362
+ </success_criteria>