@luanpdd/kit-mcp 1.33.0 → 1.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +168 -168
- package/gates/agent-no-recursive-dispatch.md +84 -84
- package/kit/COMANDOS.md +138 -138
- package/kit/COMPATIBILITY.md +70 -70
- package/kit/README.md +76 -76
- package/kit/agents/advisor-researcher.md +109 -109
- package/kit/agents/ai-mutation-tester.md +289 -289
- package/kit/agents/assumptions-analyzer.md +110 -110
- package/kit/agents/audit-log-implementer.md +314 -314
- package/kit/agents/auditor-consistencia-isolamento.md +414 -414
- package/kit/agents/b2b-saas-architect.md +157 -157
- package/kit/agents/burn-rate-forecaster.md +153 -153
- package/kit/agents/cascading-failures-auditor.md +299 -299
- package/kit/agents/codebase-mapper.md +769 -769
- package/kit/agents/crm-pipeline-implementer.md +257 -257
- package/kit/agents/debugger.md +814 -814
- package/kit/agents/designer-ui.md +216 -216
- package/kit/agents/detector-tenant-quente.md +338 -338
- package/kit/agents/evolution-go-integrator.md +201 -201
- package/kit/agents/example-reviewer.md +22 -22
- package/kit/agents/executor.md +565 -565
- package/kit/agents/golden-signals-instrumenter.md +232 -232
- package/kit/agents/incident-investigator.md +238 -238
- package/kit/agents/integration-checker.md +203 -203
- package/kit/agents/invite-flow-implementer.md +190 -190
- package/kit/agents/legacy-characterizer.md +369 -369
- package/kit/agents/lgpd-compliance-auditor.md +296 -296
- package/kit/agents/load-shedding-instrumenter.md +290 -290
- package/kit/agents/multi-tenant-isolation-auditor.md +254 -254
- package/kit/agents/multi-tenant-rls-writer.md +341 -341
- package/kit/agents/nyquist-auditor.md +181 -181
- package/kit/agents/observability-coverage-auditor.md +316 -316
- package/kit/agents/observability-instrumenter.md +191 -191
- package/kit/agents/omm-auditor.md +291 -291
- package/kit/agents/org-onboarding-implementer.md +224 -224
- package/kit/agents/payload-capture-instrumenter.md +274 -274
- package/kit/agents/phase-researcher.md +697 -697
- package/kit/agents/plan-checker.md +275 -275
- package/kit/agents/planner.md +923 -923
- package/kit/agents/postmortem-writer.md +273 -273
- package/kit/agents/project-researcher.md +653 -653
- package/kit/agents/prr-conductor.md +287 -287
- package/kit/agents/refactor-safety-auditor.md +405 -405
- package/kit/agents/release-pipeline-auditor.md +364 -364
- package/kit/agents/research-synthesizer.md +246 -246
- package/kit/agents/roadmapper.md +678 -678
- package/kit/agents/schema-checker.md +160 -160
- package/kit/agents/seam-finder.md +360 -360
- package/kit/agents/shotgun-surgery-detector.md +350 -350
- package/kit/agents/slo-engineer.md +217 -217
- package/kit/agents/storytelling-analyst.md +300 -300
- package/kit/agents/supabase-architect.md +249 -249
- package/kit/agents/supabase-auth-bootstrapper.md +400 -400
- package/kit/agents/supabase-auth-hook-writer.md +418 -418
- package/kit/agents/supabase-branching-architect.md +563 -563
- package/kit/agents/supabase-cicd-pipeline-implementer.md +778 -778
- package/kit/agents/supabase-column-privileges-writer.md +400 -400
- package/kit/agents/supabase-edge-fn-tester.md +288 -288
- package/kit/agents/supabase-edge-fn-writer.md +341 -341
- package/kit/agents/supabase-mfa-implementer.md +439 -439
- package/kit/agents/supabase-migration-writer.md +386 -386
- package/kit/agents/supabase-oauth-server-implementer.md +507 -507
- package/kit/agents/supabase-rbac-implementer.md +393 -393
- package/kit/agents/supabase-realtime-implementer.md +364 -364
- package/kit/agents/supabase-rls-hardener.md +522 -522
- package/kit/agents/supabase-rls-writer.md +324 -324
- package/kit/agents/supabase-roles-implementer.md +356 -356
- package/kit/agents/supabase-social-auth-implementer.md +451 -451
- package/kit/agents/supabase-sso-saml-architect.md +549 -549
- package/kit/agents/supabase-storage-implementer.md +407 -407
- package/kit/agents/super-admin-implementer.md +282 -282
- package/kit/agents/toil-auditor.md +268 -268
- package/kit/agents/ui-auditor.md +438 -438
- package/kit/agents/ui-checker.md +305 -305
- package/kit/agents/ui-researcher.md +356 -356
- package/kit/agents/user-profiler.md +176 -176
- package/kit/agents/validador-evolucao-schema.md +336 -336
- package/kit/agents/verifier.md +729 -729
- package/kit/commands/adicionar-backlog.md +75 -75
- package/kit/commands/adicionar-fase.md +42 -42
- package/kit/commands/adicionar-tarefa.md +45 -45
- package/kit/commands/adicionar-testes.md +41 -41
- package/kit/commands/ajuda.md +21 -21
- package/kit/commands/atualizar.md +37 -37
- package/kit/commands/auditar-cascading.md +111 -111
- package/kit/commands/auditar-marco.md +179 -179
- package/kit/commands/auditar-observabilidade-cobertura-workflow.md +121 -0
- package/kit/commands/auditar-observabilidade-cobertura.md +183 -183
- package/kit/commands/auditar-refactor.md +219 -219
- package/kit/commands/auditar-release.md +109 -109
- package/kit/commands/auditar-uat.md +23 -23
- package/kit/commands/autonomo.md +40 -40
- package/kit/commands/branch-pr.md +24 -24
- package/kit/commands/burn-rate-status.md +408 -408
- package/kit/commands/capturar-payloads.md +193 -193
- package/kit/commands/caracterizar.md +212 -212
- package/kit/commands/concluir-marco.md +247 -247
- package/kit/commands/configuracoes.md +36 -36
- package/kit/commands/dados-distribuidos.md +188 -188
- package/kit/commands/definir-perfil.md +10 -10
- package/kit/commands/depurar.md +190 -190
- package/kit/commands/detectar-duplicacao.md +197 -197
- package/kit/commands/discutir-fase.md +131 -131
- package/kit/commands/encontrar-seams.md +136 -136
- package/kit/commands/entrar-discord.md +17 -17
- package/kit/commands/estatisticas.md +18 -18
- package/kit/commands/example-greeting.md +33 -33
- package/kit/commands/executar-fase.md +58 -58
- package/kit/commands/expresso.md +56 -56
- package/kit/commands/fase-ui.md +34 -34
- package/kit/commands/fazer.md +57 -57
- package/kit/commands/fio.md +125 -125
- package/kit/commands/fluxos-trabalho.md +64 -64
- package/kit/commands/forense.md +176 -176
- package/kit/commands/gerenciador.md +38 -38
- package/kit/commands/inserir-fase.md +31 -31
- package/kit/commands/legacy.md +263 -263
- package/kit/commands/limpeza.md +17 -17
- package/kit/commands/listar-hipoteses-fase.md +45 -45
- package/kit/commands/listar-workspaces.md +18 -18
- package/kit/commands/load-shedding.md +117 -117
- package/kit/commands/mapear-codebase.md +70 -70
- package/kit/commands/multi-tenant.md +163 -163
- package/kit/commands/nota.md +33 -33
- package/kit/commands/novo-marco.md +43 -43
- package/kit/commands/novo-projeto.md +41 -41
- package/kit/commands/novo-workspace.md +43 -43
- package/kit/commands/pausar-trabalho.md +37 -37
- package/kit/commands/perfil-usuario.md +45 -45
- package/kit/commands/pesquisar-fase.md +195 -195
- package/kit/commands/planejar-fase.md +67 -67
- package/kit/commands/planejar-lacunas.md +33 -33
- package/kit/commands/plantar-ideia.md +25 -25
- package/kit/commands/progresso.md +24 -24
- package/kit/commands/proximo.md +30 -30
- package/kit/commands/publicar.md +490 -490
- package/kit/commands/rapido.md +35 -35
- package/kit/commands/reaplicar-patches.md +124 -124
- package/kit/commands/refactor-seguro.md +321 -321
- package/kit/commands/relatorio-sessao.md +19 -19
- package/kit/commands/remover-fase.md +31 -31
- package/kit/commands/remover-workspace.md +26 -26
- package/kit/commands/resumo-marco.md +50 -50
- package/kit/commands/retomar-trabalho.md +40 -40
- package/kit/commands/revisar-backlog.md +60 -60
- package/kit/commands/revisar-ui.md +32 -32
- package/kit/commands/revisar.md +37 -37
- package/kit/commands/saude.md +21 -21
- package/kit/commands/setup-notion.md +93 -93
- package/kit/commands/storytelling.md +179 -179
- package/kit/commands/supabase.md +238 -238
- package/kit/commands/sync-main.md +68 -68
- package/kit/commands/validar-fase.md +35 -35
- package/kit/commands/verificar-tarefas.md +44 -44
- package/kit/commands/verificar-trabalho.md +64 -64
- package/kit/file-manifest.json +13 -11
- package/kit/framework/bin/lib/commands.cjs +959 -959
- package/kit/framework/bin/lib/config.cjs +442 -442
- package/kit/framework/bin/lib/core.cjs +1230 -1230
- package/kit/framework/bin/lib/frontmatter.cjs +336 -336
- package/kit/framework/bin/lib/init.cjs +1442 -1442
- package/kit/framework/bin/lib/milestone.cjs +252 -252
- package/kit/framework/bin/lib/model-profiles.cjs +68 -68
- package/kit/framework/bin/lib/phase.cjs +888 -888
- package/kit/framework/bin/lib/profile-output.cjs +952 -952
- package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
- package/kit/framework/bin/lib/roadmap.cjs +329 -329
- package/kit/framework/bin/lib/security.cjs +382 -382
- package/kit/framework/bin/lib/state.cjs +1031 -1031
- package/kit/framework/bin/lib/template.cjs +222 -222
- package/kit/framework/bin/lib/uat.cjs +282 -282
- package/kit/framework/bin/lib/verify.cjs +888 -888
- package/kit/framework/bin/lib/workstream.cjs +491 -491
- package/kit/framework/bin/tools.cjs +918 -918
- package/kit/framework/commands/workstreams.md +63 -63
- package/kit/framework/references/checkpoints.md +778 -778
- package/kit/framework/references/continuation-format.md +249 -249
- package/kit/framework/references/decimal-phase-calculation.md +64 -64
- package/kit/framework/references/git-integration.md +295 -295
- package/kit/framework/references/git-planning-commit.md +38 -38
- package/kit/framework/references/model-profile-resolution.md +36 -36
- package/kit/framework/references/model-profiles.md +139 -139
- package/kit/framework/references/phase-argument-parsing.md +61 -61
- package/kit/framework/references/planning-config.md +202 -202
- package/kit/framework/references/questioning.md +162 -162
- package/kit/framework/references/tdd.md +263 -263
- package/kit/framework/references/ui-brand.md +160 -160
- package/kit/framework/references/user-profiling.md +657 -657
- package/kit/framework/references/verification-patterns.md +612 -612
- package/kit/framework/references/workstream-flag.md +58 -58
- package/kit/framework/templates/DEBUG.md +164 -164
- package/kit/framework/templates/UAT.md +265 -265
- package/kit/framework/templates/UI-SPEC.md +100 -100
- package/kit/framework/templates/VALIDATION.md +76 -76
- package/kit/framework/templates/claude-md.md +122 -122
- package/kit/framework/templates/codebase/architecture.md +185 -185
- package/kit/framework/templates/codebase/concerns.md +205 -205
- package/kit/framework/templates/codebase/conventions.md +204 -204
- package/kit/framework/templates/codebase/integrations.md +192 -192
- package/kit/framework/templates/codebase/stack.md +158 -158
- package/kit/framework/templates/codebase/structure.md +199 -199
- package/kit/framework/templates/codebase/testing.md +301 -301
- package/kit/framework/templates/config.json +44 -44
- package/kit/framework/templates/context.md +352 -352
- package/kit/framework/templates/continue-here.md +78 -78
- package/kit/framework/templates/copilot-instructions.md +7 -7
- package/kit/framework/templates/debug-subagent-prompt.md +91 -91
- package/kit/framework/templates/dev-preferences.md +20 -20
- package/kit/framework/templates/discovery.md +146 -146
- package/kit/framework/templates/discussion-log.md +63 -63
- package/kit/framework/templates/milestone-archive.md +123 -123
- package/kit/framework/templates/milestone.md +115 -115
- package/kit/framework/templates/phase-prompt.md +610 -610
- package/kit/framework/templates/planner-subagent-prompt.md +117 -117
- package/kit/framework/templates/project.md +186 -186
- package/kit/framework/templates/requirements.md +231 -231
- package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
- package/kit/framework/templates/research-project/FEATURES.md +147 -147
- package/kit/framework/templates/research-project/PITFALLS.md +200 -200
- package/kit/framework/templates/research-project/STACK.md +120 -120
- package/kit/framework/templates/research-project/SUMMARY.md +170 -170
- package/kit/framework/templates/research.md +419 -419
- package/kit/framework/templates/retrospective.md +54 -54
- package/kit/framework/templates/roadmap.md +202 -202
- package/kit/framework/templates/state.md +176 -176
- package/kit/framework/templates/summary-complex.md +59 -59
- package/kit/framework/templates/summary-minimal.md +41 -41
- package/kit/framework/templates/summary-standard.md +48 -48
- package/kit/framework/templates/summary.md +209 -209
- package/kit/framework/templates/user-profile.md +146 -146
- package/kit/framework/templates/user-setup.md +256 -256
- package/kit/framework/templates/verification-report.md +258 -258
- package/kit/framework/workflows/add-phase.md +112 -112
- package/kit/framework/workflows/add-tests.md +351 -351
- package/kit/framework/workflows/add-todo.md +158 -158
- package/kit/framework/workflows/audit-milestone.md +340 -340
- package/kit/framework/workflows/audit-uat.md +109 -109
- package/kit/framework/workflows/autonomous.md +891 -891
- package/kit/framework/workflows/check-todos.md +177 -177
- package/kit/framework/workflows/cleanup.md +152 -152
- package/kit/framework/workflows/complete-milestone.md +696 -696
- package/kit/framework/workflows/diagnose-issues.md +231 -231
- package/kit/framework/workflows/discovery-phase.md +289 -289
- package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
- package/kit/framework/workflows/discuss-phase.md +784 -784
- package/kit/framework/workflows/do.md +104 -104
- package/kit/framework/workflows/execute-phase.md +838 -838
- package/kit/framework/workflows/execute-plan.md +510 -510
- package/kit/framework/workflows/fast.md +102 -102
- package/kit/framework/workflows/forensics.md +265 -265
- package/kit/framework/workflows/health.md +181 -181
- package/kit/framework/workflows/help.md +619 -619
- package/kit/framework/workflows/insert-phase.md +130 -130
- package/kit/framework/workflows/list-phase-assumptions.md +178 -178
- package/kit/framework/workflows/list-workspaces.md +56 -56
- package/kit/framework/workflows/manager.md +362 -362
- package/kit/framework/workflows/map-codebase.md +377 -377
- package/kit/framework/workflows/milestone-summary.md +223 -223
- package/kit/framework/workflows/new-milestone.md +486 -486
- package/kit/framework/workflows/new-project.md +1159 -1159
- package/kit/framework/workflows/new-workspace.md +237 -237
- package/kit/framework/workflows/next.md +97 -97
- package/kit/framework/workflows/node-repair.md +92 -92
- package/kit/framework/workflows/note.md +156 -156
- package/kit/framework/workflows/pause-work.md +176 -176
- package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
- package/kit/framework/workflows/plan-phase.md +765 -765
- package/kit/framework/workflows/plant-seed.md +169 -169
- package/kit/framework/workflows/pr-branch.md +129 -129
- package/kit/framework/workflows/profile-user.md +450 -450
- package/kit/framework/workflows/progress.md +507 -507
- package/kit/framework/workflows/quick.md +757 -757
- package/kit/framework/workflows/remove-phase.md +155 -155
- package/kit/framework/workflows/remove-workspace.md +90 -90
- package/kit/framework/workflows/research-phase.md +82 -82
- package/kit/framework/workflows/resume-project.md +326 -326
- package/kit/framework/workflows/review.md +228 -228
- package/kit/framework/workflows/session-report.md +146 -146
- package/kit/framework/workflows/settings.md +283 -283
- package/kit/framework/workflows/ship.md +228 -228
- package/kit/framework/workflows/stats.md +60 -60
- package/kit/framework/workflows/transition.md +671 -671
- package/kit/framework/workflows/ui-phase.md +302 -302
- package/kit/framework/workflows/ui-review.md +165 -165
- package/kit/framework/workflows/update.md +323 -323
- package/kit/framework/workflows/validate-phase.md +174 -174
- package/kit/framework/workflows/verify-phase.md +252 -252
- package/kit/framework/workflows/verify-work.md +637 -637
- package/kit/hooks/check-update.js +118 -118
- package/kit/hooks/context-monitor.js +163 -163
- package/kit/hooks/kit-attribution-reminder.cjs +92 -92
- package/kit/hooks/kit-router.cjs +137 -137
- package/kit/hooks/prompt-guard.js +103 -103
- package/kit/hooks/statusline.js +125 -125
- package/kit/hooks/workflow-guard.js +101 -101
- package/kit/settings.json +45 -45
- package/kit/skills/ai-prompt-characterization/SKILL.md +335 -335
- package/kit/skills/armadilhas-sistemas-distribuidos/SKILL.md +447 -447
- package/kit/skills/audit-log-multi-tenant/SKILL.md +340 -340
- package/kit/skills/b2b-saas-architecture/SKILL.md +300 -300
- package/kit/skills/consistencia-leitura-replica/SKILL.md +385 -385
- package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +343 -343
- package/kit/skills/escolha-modelo-consistencia/SKILL.md +494 -494
- package/kit/skills/evolucao-schema-compativel/SKILL.md +448 -448
- package/kit/skills/evolution-go-whatsapp-integration/SKILL.md +322 -322
- package/kit/skills/example-skill/SKILL.md +42 -42
- package/kit/skills/legacy-api-only-applications/SKILL.md +358 -358
- package/kit/skills/legacy-characterization-tests/SKILL.md +330 -330
- package/kit/skills/legacy-effect-analysis/SKILL.md +331 -331
- package/kit/skills/legacy-extract-class/SKILL.md +203 -203
- package/kit/skills/legacy-programming-by-difference/SKILL.md +252 -252
- package/kit/skills/legacy-seams-and-test-harness/SKILL.md +460 -460
- package/kit/skills/legacy-shotgun-surgery/SKILL.md +286 -286
- package/kit/skills/legacy-sprout-wrap-techniques/SKILL.md +434 -434
- package/kit/skills/legacy-storytelling-naked-crc/SKILL.md +270 -270
- package/kit/skills/lgpd-multi-tenant-compliance/SKILL.md +340 -340
- package/kit/skills/member-invite-flow/SKILL.md +305 -305
- package/kit/skills/member-management-react-shadcn/SKILL.md +328 -328
- package/kit/skills/multi-tenant-performance-scaling/SKILL.md +316 -316
- package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +342 -342
- package/kit/skills/org-onboarding-flow/SKILL.md +257 -257
- package/kit/skills/org-switcher-react-pattern/SKILL.md +349 -349
- package/kit/skills/permission-gate-react-pattern/SKILL.md +271 -271
- package/kit/skills/postgres-isolamento-concorrencia/SKILL.md +552 -552
- package/kit/skills/pre-refactor-characterization/SKILL.md +421 -421
- package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +338 -338
- package/kit/skills/streams-eventos-cdc/SKILL.md +711 -711
- package/kit/skills/supabase-auth-hardening/SKILL.md +674 -674
- package/kit/skills/supabase-auth-hooks/SKILL.md +875 -875
- package/kit/skills/supabase-auth-methods/SKILL.md +486 -486
- package/kit/skills/supabase-auth-sessions/SKILL.md +579 -579
- package/kit/skills/supabase-auth-ssr/SKILL.md +306 -306
- package/kit/skills/supabase-branching-workflow/SKILL.md +544 -544
- package/kit/skills/supabase-ci-cd-github-actions/SKILL.md +880 -880
- package/kit/skills/supabase-column-level-security/SKILL.md +426 -426
- package/kit/skills/supabase-config-toml-remotes/SKILL.md +807 -807
- package/kit/skills/supabase-custom-claims-rbac/SKILL.md +472 -472
- package/kit/skills/supabase-edge-functions/SKILL.md +330 -330
- package/kit/skills/supabase-edge-functions-auth/SKILL.md +309 -309
- package/kit/skills/supabase-edge-functions-limits/SKILL.md +302 -302
- package/kit/skills/supabase-edge-functions-mcp-server/SKILL.md +279 -279
- package/kit/skills/supabase-edge-functions-testing/SKILL.md +277 -277
- package/kit/skills/supabase-edge-runtime-builtins/SKILL.md +357 -357
- package/kit/skills/supabase-enterprise-sso-saml/SKILL.md +545 -545
- package/kit/skills/supabase-jwt-signing-keys/SKILL.md +399 -399
- package/kit/skills/supabase-mfa/SKILL.md +488 -488
- package/kit/skills/supabase-migration-repair/SKILL.md +823 -823
- package/kit/skills/supabase-migrations/SKILL.md +297 -297
- package/kit/skills/supabase-oauth-server/SKILL.md +537 -537
- package/kit/skills/supabase-pgtap-testing/SKILL.md +1053 -1053
- package/kit/skills/supabase-postgres-roles/SKILL.md +392 -392
- package/kit/skills/supabase-realtime/SKILL.md +460 -460
- package/kit/skills/supabase-rls-defense-in-depth/SKILL.md +418 -418
- package/kit/skills/supabase-rls-policies/SKILL.md +635 -635
- package/kit/skills/supabase-social-oauth/SKILL.md +480 -480
- package/kit/skills/supabase-third-party-auth/SKILL.md +450 -450
- package/kit/skills/super-admin-platform-pattern/SKILL.md +326 -326
- package/kit/skills/tenant-quente-mitigacao/SKILL.md +605 -605
- package/kit/skills/ui-anti-padroes-ia/SKILL.md +261 -261
- package/kit/skills/ui-contexto-produto/SKILL.md +248 -248
- package/kit/skills/ui-cor-estrategia/SKILL.md +213 -213
- package/kit/skills/ui-critica-auditoria/SKILL.md +260 -260
- package/kit/skills/ui-motion-funcional/SKILL.md +264 -264
- package/kit/skills/ui-ritmo-espacial/SKILL.md +259 -259
- package/kit/skills/ui-tipografia/SKILL.md +211 -211
- package/kit/skills/whatsapp-conversation-state-machine/SKILL.md +287 -287
- package/kit/workflows/auditar-observabilidade-cobertura.workflow.js +250 -0
- package/package.json +65 -63
- package/src/core/kit.js +333 -216
- package/src/core/reflect.js +247 -247
- package/src/core/registry.js +123 -112
- package/src/core/reverse-sync.js +448 -372
- package/src/core/sync.js +477 -437
- package/src/core/watch.js +121 -121
- package/src/mcp-server/index.js +794 -794
|
@@ -1,237 +1,237 @@
|
|
|
1
|
-
<purpose>
|
|
2
|
-
Create an isolated workspace directory with git repo copies (worktrees or clones) and an independent `.planning/` directory. Supports multi-repo orchestration and single-repo feature branch isolation.
|
|
3
|
-
</purpose>
|
|
4
|
-
|
|
5
|
-
<required_reading>
|
|
6
|
-
Read all files referenced by the invoking prompt's execution_context before starting.
|
|
7
|
-
</required_reading>
|
|
8
|
-
|
|
9
|
-
<process>
|
|
10
|
-
|
|
11
|
-
## 1. Setup
|
|
12
|
-
|
|
13
|
-
**MANDATORY FIRST STEP — Execute init command:**
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
INIT=$(node "./.claude/framework/bin/tools.cjs" init new-workspace)
|
|
17
|
-
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
Parse JSON for: `default_workspace_base`, `child_repos`, `child_repo_count`, `worktree_available`, `is_git_repo`, `cwd_repo_name`, `project_root`.
|
|
21
|
-
|
|
22
|
-
## 2. Parse Arguments
|
|
23
|
-
|
|
24
|
-
Extract from $ARGUMENTS:
|
|
25
|
-
- `--name` → `WORKSPACE_NAME` (required)
|
|
26
|
-
- `--repos` → `REPO_LIST` (comma-separated paths or names)
|
|
27
|
-
- `--path` → `TARGET_PATH` (defaults to `$default_workspace_base/$WORKSPACE_NAME`)
|
|
28
|
-
- `--strategy` → `STRATEGY` (defaults to `worktree`)
|
|
29
|
-
- `--branch` → `BRANCH_NAME` (defaults to `workspace/$WORKSPACE_NAME`)
|
|
30
|
-
- `--auto` → skip interactive questions
|
|
31
|
-
|
|
32
|
-
**If `--name` is missing and not `--auto`:**
|
|
33
|
-
|
|
34
|
-
Use AskUserQuestion:
|
|
35
|
-
- header: "Workspace Name"
|
|
36
|
-
- question: "What should this workspace be called?"
|
|
37
|
-
- requireAnswer: true
|
|
38
|
-
|
|
39
|
-
## 3. Select Repos
|
|
40
|
-
|
|
41
|
-
**If `--repos` is provided:** Parse comma-separated values. For each value:
|
|
42
|
-
- If it's an absolute path, use it directly
|
|
43
|
-
- If it's a relative path or name, resolve against `$project_root`
|
|
44
|
-
- Special case: `.` means current repo (use `$project_root`, name it `$cwd_repo_name`)
|
|
45
|
-
|
|
46
|
-
**If `--repos` is NOT provided and not `--auto`:**
|
|
47
|
-
|
|
48
|
-
**If `child_repo_count` > 0:**
|
|
49
|
-
|
|
50
|
-
Present child repos for selection:
|
|
51
|
-
|
|
52
|
-
Use AskUserQuestion:
|
|
53
|
-
- header: "Select Repos"
|
|
54
|
-
- question: "Which repos should be included in the workspace?"
|
|
55
|
-
- options: List each child repo from `child_repos` array by name
|
|
56
|
-
- multiSelect: true
|
|
57
|
-
|
|
58
|
-
**If `child_repo_count` is 0 and `is_git_repo` is true:**
|
|
59
|
-
|
|
60
|
-
Use AskUserQuestion:
|
|
61
|
-
- header: "Current Repo"
|
|
62
|
-
- question: "No child repos found. Create a workspace with the current repo?"
|
|
63
|
-
- options:
|
|
64
|
-
- "Yes — create workspace with current repo" → use current repo
|
|
65
|
-
- "Cancel" → exit
|
|
66
|
-
|
|
67
|
-
**If `child_repo_count` is 0 and `is_git_repo` is false:**
|
|
68
|
-
|
|
69
|
-
Error:
|
|
70
|
-
```
|
|
71
|
-
No git repos found in the current directory and this is not a git repo.
|
|
72
|
-
|
|
73
|
-
Run this command from a directory containing git repos, or specify repos explicitly:
|
|
74
|
-
/new-workspace --name my-workspace --repos /path/to/repo1,/path/to/repo2
|
|
75
|
-
```
|
|
76
|
-
Exit.
|
|
77
|
-
|
|
78
|
-
**If `--auto` and `--repos` is NOT provided:**
|
|
79
|
-
|
|
80
|
-
Error:
|
|
81
|
-
```
|
|
82
|
-
Error: --auto requires --repos to specify which repos to include.
|
|
83
|
-
|
|
84
|
-
Usage:
|
|
85
|
-
/new-workspace --name my-workspace --repos repo1,repo2 --auto
|
|
86
|
-
```
|
|
87
|
-
Exit.
|
|
88
|
-
|
|
89
|
-
## 4. Select Strategy
|
|
90
|
-
|
|
91
|
-
**If `--strategy` is provided:** Use it (validate: must be `worktree` or `clone`).
|
|
92
|
-
|
|
93
|
-
**If `--strategy` is NOT provided and not `--auto`:**
|
|
94
|
-
|
|
95
|
-
Use AskUserQuestion:
|
|
96
|
-
- header: "Strategy"
|
|
97
|
-
- question: "How should repos be copied into the workspace?"
|
|
98
|
-
- options:
|
|
99
|
-
- "Worktree (recommended) — lightweight, shares .git objects with source repo" → `worktree`
|
|
100
|
-
- "Clone — fully independent copy, no connection to source repo" → `clone`
|
|
101
|
-
|
|
102
|
-
**If `--auto`:** Default to `worktree`.
|
|
103
|
-
|
|
104
|
-
## 5. Validate
|
|
105
|
-
|
|
106
|
-
Before creating anything, validate:
|
|
107
|
-
|
|
108
|
-
1. **Target path** — must not exist or must be empty:
|
|
109
|
-
```bash
|
|
110
|
-
if [ -d "$TARGET_PATH" ] && [ "$(ls -A "$TARGET_PATH" 2>/dev/null)" ]; then
|
|
111
|
-
echo "Error: Target path already exists and is not empty: $TARGET_PATH"
|
|
112
|
-
echo "Choose a different --name or --path."
|
|
113
|
-
exit 1
|
|
114
|
-
fi
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
2. **Source repos exist and are git repos** — for each repo path:
|
|
118
|
-
```bash
|
|
119
|
-
if [ ! -d "$REPO_PATH/.git" ]; then
|
|
120
|
-
echo "Error: Not a git repo: $REPO_PATH"
|
|
121
|
-
exit 1
|
|
122
|
-
fi
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
3. **Worktree availability** — if strategy is `worktree` and `worktree_available` is false:
|
|
126
|
-
```
|
|
127
|
-
Error: git is not available. Install git or use --strategy clone.
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
Report all validation errors at once, not one at a time.
|
|
131
|
-
|
|
132
|
-
## 6. Create Workspace
|
|
133
|
-
|
|
134
|
-
```bash
|
|
135
|
-
mkdir -p "$TARGET_PATH"
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
### For each repo:
|
|
139
|
-
|
|
140
|
-
**Worktree strategy:**
|
|
141
|
-
```bash
|
|
142
|
-
cd "$SOURCE_REPO_PATH"
|
|
143
|
-
git worktree add "$TARGET_PATH/$REPO_NAME" -b "$BRANCH_NAME" 2>&1
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
If `git worktree add` fails because the branch already exists, try with a timestamped branch:
|
|
147
|
-
```bash
|
|
148
|
-
TIMESTAMP=$(date +%Y%m%d%H%M%S)
|
|
149
|
-
git worktree add "$TARGET_PATH/$REPO_NAME" -b "${BRANCH_NAME}-${TIMESTAMP}" 2>&1
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
If that also fails, report the error and continue with remaining repos.
|
|
153
|
-
|
|
154
|
-
**Clone strategy:**
|
|
155
|
-
```bash
|
|
156
|
-
git clone "$SOURCE_REPO_PATH" "$TARGET_PATH/$REPO_NAME" 2>&1
|
|
157
|
-
cd "$TARGET_PATH/$REPO_NAME"
|
|
158
|
-
git checkout -b "$BRANCH_NAME" 2>&1
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
Track results: which repos succeeded, which failed, what branch was used.
|
|
162
|
-
|
|
163
|
-
## 7. Write WORKSPACE.md
|
|
164
|
-
|
|
165
|
-
Write the workspace manifest at `$TARGET_PATH/WORKSPACE.md`:
|
|
166
|
-
|
|
167
|
-
```markdown
|
|
168
|
-
# Workspace: $WORKSPACE_NAME
|
|
169
|
-
|
|
170
|
-
Created: $DATE
|
|
171
|
-
Strategy: $STRATEGY
|
|
172
|
-
|
|
173
|
-
## Member Repos
|
|
174
|
-
|
|
175
|
-
| Repo | Source | Branch | Strategy |
|
|
176
|
-
|------|--------|--------|----------|
|
|
177
|
-
| $REPO_NAME | $SOURCE_PATH | $BRANCH | $STRATEGY |
|
|
178
|
-
...for each repo...
|
|
179
|
-
|
|
180
|
-
## Notes
|
|
181
|
-
|
|
182
|
-
[Add context about what this workspace is for]
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
## 8. Initialize .planning/
|
|
186
|
-
|
|
187
|
-
```bash
|
|
188
|
-
mkdir -p "$TARGET_PATH/.planning"
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
## 9. Report and Next Steps
|
|
192
|
-
|
|
193
|
-
**If all repos succeeded:**
|
|
194
|
-
|
|
195
|
-
```
|
|
196
|
-
Workspace created: $TARGET_PATH
|
|
197
|
-
|
|
198
|
-
Repos: $REPO_COUNT
|
|
199
|
-
Strategy: $STRATEGY
|
|
200
|
-
Branch: $BRANCH_NAME
|
|
201
|
-
|
|
202
|
-
Next steps:
|
|
203
|
-
cd $TARGET_PATH
|
|
204
|
-
/new-project # Initialize framework in the workspace
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
**If some repos failed:**
|
|
208
|
-
|
|
209
|
-
```
|
|
210
|
-
Workspace created with $SUCCESS_COUNT of $TOTAL_COUNT repos: $TARGET_PATH
|
|
211
|
-
|
|
212
|
-
Succeeded: repo1, repo2
|
|
213
|
-
Failed: repo3 (branch already exists), repo4 (not a git repo)
|
|
214
|
-
|
|
215
|
-
Next steps:
|
|
216
|
-
cd $TARGET_PATH
|
|
217
|
-
/new-project # Initialize framework in the workspace
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
**Offer to initialize framework (if not `--auto`):**
|
|
221
|
-
|
|
222
|
-
Use AskUserQuestion:
|
|
223
|
-
- header: "Initialize framework"
|
|
224
|
-
- question: "Would you like to initialize a framework project in the new workspace?"
|
|
225
|
-
- options:
|
|
226
|
-
- "Yes — run /new-project" → tell user to `cd $TARGET_PATH` first, then run `/new-project`
|
|
227
|
-
- "No — I'll set it up later" → done
|
|
228
|
-
|
|
229
|
-
</process>
|
|
230
|
-
|
|
231
|
-
<success_criteria>
|
|
232
|
-
- [ ] Workspace directory created at target path
|
|
233
|
-
- [ ] All specified repos copied (worktree or clone) into workspace
|
|
234
|
-
- [ ] WORKSPACE.md manifest written with correct repo table
|
|
235
|
-
- [ ] `.planning/` directory initialized at workspace root
|
|
236
|
-
- [ ] User informed of workspace path and next steps
|
|
237
|
-
</success_criteria>
|
|
1
|
+
<purpose>
|
|
2
|
+
Create an isolated workspace directory with git repo copies (worktrees or clones) and an independent `.planning/` directory. Supports multi-repo orchestration and single-repo feature branch isolation.
|
|
3
|
+
</purpose>
|
|
4
|
+
|
|
5
|
+
<required_reading>
|
|
6
|
+
Read all files referenced by the invoking prompt's execution_context before starting.
|
|
7
|
+
</required_reading>
|
|
8
|
+
|
|
9
|
+
<process>
|
|
10
|
+
|
|
11
|
+
## 1. Setup
|
|
12
|
+
|
|
13
|
+
**MANDATORY FIRST STEP — Execute init command:**
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
INIT=$(node "./.claude/framework/bin/tools.cjs" init new-workspace)
|
|
17
|
+
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Parse JSON for: `default_workspace_base`, `child_repos`, `child_repo_count`, `worktree_available`, `is_git_repo`, `cwd_repo_name`, `project_root`.
|
|
21
|
+
|
|
22
|
+
## 2. Parse Arguments
|
|
23
|
+
|
|
24
|
+
Extract from $ARGUMENTS:
|
|
25
|
+
- `--name` → `WORKSPACE_NAME` (required)
|
|
26
|
+
- `--repos` → `REPO_LIST` (comma-separated paths or names)
|
|
27
|
+
- `--path` → `TARGET_PATH` (defaults to `$default_workspace_base/$WORKSPACE_NAME`)
|
|
28
|
+
- `--strategy` → `STRATEGY` (defaults to `worktree`)
|
|
29
|
+
- `--branch` → `BRANCH_NAME` (defaults to `workspace/$WORKSPACE_NAME`)
|
|
30
|
+
- `--auto` → skip interactive questions
|
|
31
|
+
|
|
32
|
+
**If `--name` is missing and not `--auto`:**
|
|
33
|
+
|
|
34
|
+
Use AskUserQuestion:
|
|
35
|
+
- header: "Workspace Name"
|
|
36
|
+
- question: "What should this workspace be called?"
|
|
37
|
+
- requireAnswer: true
|
|
38
|
+
|
|
39
|
+
## 3. Select Repos
|
|
40
|
+
|
|
41
|
+
**If `--repos` is provided:** Parse comma-separated values. For each value:
|
|
42
|
+
- If it's an absolute path, use it directly
|
|
43
|
+
- If it's a relative path or name, resolve against `$project_root`
|
|
44
|
+
- Special case: `.` means current repo (use `$project_root`, name it `$cwd_repo_name`)
|
|
45
|
+
|
|
46
|
+
**If `--repos` is NOT provided and not `--auto`:**
|
|
47
|
+
|
|
48
|
+
**If `child_repo_count` > 0:**
|
|
49
|
+
|
|
50
|
+
Present child repos for selection:
|
|
51
|
+
|
|
52
|
+
Use AskUserQuestion:
|
|
53
|
+
- header: "Select Repos"
|
|
54
|
+
- question: "Which repos should be included in the workspace?"
|
|
55
|
+
- options: List each child repo from `child_repos` array by name
|
|
56
|
+
- multiSelect: true
|
|
57
|
+
|
|
58
|
+
**If `child_repo_count` is 0 and `is_git_repo` is true:**
|
|
59
|
+
|
|
60
|
+
Use AskUserQuestion:
|
|
61
|
+
- header: "Current Repo"
|
|
62
|
+
- question: "No child repos found. Create a workspace with the current repo?"
|
|
63
|
+
- options:
|
|
64
|
+
- "Yes — create workspace with current repo" → use current repo
|
|
65
|
+
- "Cancel" → exit
|
|
66
|
+
|
|
67
|
+
**If `child_repo_count` is 0 and `is_git_repo` is false:**
|
|
68
|
+
|
|
69
|
+
Error:
|
|
70
|
+
```
|
|
71
|
+
No git repos found in the current directory and this is not a git repo.
|
|
72
|
+
|
|
73
|
+
Run this command from a directory containing git repos, or specify repos explicitly:
|
|
74
|
+
/new-workspace --name my-workspace --repos /path/to/repo1,/path/to/repo2
|
|
75
|
+
```
|
|
76
|
+
Exit.
|
|
77
|
+
|
|
78
|
+
**If `--auto` and `--repos` is NOT provided:**
|
|
79
|
+
|
|
80
|
+
Error:
|
|
81
|
+
```
|
|
82
|
+
Error: --auto requires --repos to specify which repos to include.
|
|
83
|
+
|
|
84
|
+
Usage:
|
|
85
|
+
/new-workspace --name my-workspace --repos repo1,repo2 --auto
|
|
86
|
+
```
|
|
87
|
+
Exit.
|
|
88
|
+
|
|
89
|
+
## 4. Select Strategy
|
|
90
|
+
|
|
91
|
+
**If `--strategy` is provided:** Use it (validate: must be `worktree` or `clone`).
|
|
92
|
+
|
|
93
|
+
**If `--strategy` is NOT provided and not `--auto`:**
|
|
94
|
+
|
|
95
|
+
Use AskUserQuestion:
|
|
96
|
+
- header: "Strategy"
|
|
97
|
+
- question: "How should repos be copied into the workspace?"
|
|
98
|
+
- options:
|
|
99
|
+
- "Worktree (recommended) — lightweight, shares .git objects with source repo" → `worktree`
|
|
100
|
+
- "Clone — fully independent copy, no connection to source repo" → `clone`
|
|
101
|
+
|
|
102
|
+
**If `--auto`:** Default to `worktree`.
|
|
103
|
+
|
|
104
|
+
## 5. Validate
|
|
105
|
+
|
|
106
|
+
Before creating anything, validate:
|
|
107
|
+
|
|
108
|
+
1. **Target path** — must not exist or must be empty:
|
|
109
|
+
```bash
|
|
110
|
+
if [ -d "$TARGET_PATH" ] && [ "$(ls -A "$TARGET_PATH" 2>/dev/null)" ]; then
|
|
111
|
+
echo "Error: Target path already exists and is not empty: $TARGET_PATH"
|
|
112
|
+
echo "Choose a different --name or --path."
|
|
113
|
+
exit 1
|
|
114
|
+
fi
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
2. **Source repos exist and are git repos** — for each repo path:
|
|
118
|
+
```bash
|
|
119
|
+
if [ ! -d "$REPO_PATH/.git" ]; then
|
|
120
|
+
echo "Error: Not a git repo: $REPO_PATH"
|
|
121
|
+
exit 1
|
|
122
|
+
fi
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
3. **Worktree availability** — if strategy is `worktree` and `worktree_available` is false:
|
|
126
|
+
```
|
|
127
|
+
Error: git is not available. Install git or use --strategy clone.
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Report all validation errors at once, not one at a time.
|
|
131
|
+
|
|
132
|
+
## 6. Create Workspace
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
mkdir -p "$TARGET_PATH"
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### For each repo:
|
|
139
|
+
|
|
140
|
+
**Worktree strategy:**
|
|
141
|
+
```bash
|
|
142
|
+
cd "$SOURCE_REPO_PATH"
|
|
143
|
+
git worktree add "$TARGET_PATH/$REPO_NAME" -b "$BRANCH_NAME" 2>&1
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
If `git worktree add` fails because the branch already exists, try with a timestamped branch:
|
|
147
|
+
```bash
|
|
148
|
+
TIMESTAMP=$(date +%Y%m%d%H%M%S)
|
|
149
|
+
git worktree add "$TARGET_PATH/$REPO_NAME" -b "${BRANCH_NAME}-${TIMESTAMP}" 2>&1
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
If that also fails, report the error and continue with remaining repos.
|
|
153
|
+
|
|
154
|
+
**Clone strategy:**
|
|
155
|
+
```bash
|
|
156
|
+
git clone "$SOURCE_REPO_PATH" "$TARGET_PATH/$REPO_NAME" 2>&1
|
|
157
|
+
cd "$TARGET_PATH/$REPO_NAME"
|
|
158
|
+
git checkout -b "$BRANCH_NAME" 2>&1
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
Track results: which repos succeeded, which failed, what branch was used.
|
|
162
|
+
|
|
163
|
+
## 7. Write WORKSPACE.md
|
|
164
|
+
|
|
165
|
+
Write the workspace manifest at `$TARGET_PATH/WORKSPACE.md`:
|
|
166
|
+
|
|
167
|
+
```markdown
|
|
168
|
+
# Workspace: $WORKSPACE_NAME
|
|
169
|
+
|
|
170
|
+
Created: $DATE
|
|
171
|
+
Strategy: $STRATEGY
|
|
172
|
+
|
|
173
|
+
## Member Repos
|
|
174
|
+
|
|
175
|
+
| Repo | Source | Branch | Strategy |
|
|
176
|
+
|------|--------|--------|----------|
|
|
177
|
+
| $REPO_NAME | $SOURCE_PATH | $BRANCH | $STRATEGY |
|
|
178
|
+
...for each repo...
|
|
179
|
+
|
|
180
|
+
## Notes
|
|
181
|
+
|
|
182
|
+
[Add context about what this workspace is for]
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
## 8. Initialize .planning/
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
mkdir -p "$TARGET_PATH/.planning"
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## 9. Report and Next Steps
|
|
192
|
+
|
|
193
|
+
**If all repos succeeded:**
|
|
194
|
+
|
|
195
|
+
```
|
|
196
|
+
Workspace created: $TARGET_PATH
|
|
197
|
+
|
|
198
|
+
Repos: $REPO_COUNT
|
|
199
|
+
Strategy: $STRATEGY
|
|
200
|
+
Branch: $BRANCH_NAME
|
|
201
|
+
|
|
202
|
+
Next steps:
|
|
203
|
+
cd $TARGET_PATH
|
|
204
|
+
/new-project # Initialize framework in the workspace
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
**If some repos failed:**
|
|
208
|
+
|
|
209
|
+
```
|
|
210
|
+
Workspace created with $SUCCESS_COUNT of $TOTAL_COUNT repos: $TARGET_PATH
|
|
211
|
+
|
|
212
|
+
Succeeded: repo1, repo2
|
|
213
|
+
Failed: repo3 (branch already exists), repo4 (not a git repo)
|
|
214
|
+
|
|
215
|
+
Next steps:
|
|
216
|
+
cd $TARGET_PATH
|
|
217
|
+
/new-project # Initialize framework in the workspace
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
**Offer to initialize framework (if not `--auto`):**
|
|
221
|
+
|
|
222
|
+
Use AskUserQuestion:
|
|
223
|
+
- header: "Initialize framework"
|
|
224
|
+
- question: "Would you like to initialize a framework project in the new workspace?"
|
|
225
|
+
- options:
|
|
226
|
+
- "Yes — run /new-project" → tell user to `cd $TARGET_PATH` first, then run `/new-project`
|
|
227
|
+
- "No — I'll set it up later" → done
|
|
228
|
+
|
|
229
|
+
</process>
|
|
230
|
+
|
|
231
|
+
<success_criteria>
|
|
232
|
+
- [ ] Workspace directory created at target path
|
|
233
|
+
- [ ] All specified repos copied (worktree or clone) into workspace
|
|
234
|
+
- [ ] WORKSPACE.md manifest written with correct repo table
|
|
235
|
+
- [ ] `.planning/` directory initialized at workspace root
|
|
236
|
+
- [ ] User informed of workspace path and next steps
|
|
237
|
+
</success_criteria>
|
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
<purpose>
|
|
2
|
-
Detectar o estado atual do projeto e avançar automaticamente para o próximo passo lógico do workflow framework.
|
|
3
|
-
Lê o estado do projeto para determinar a progressão: discussão → planejamento → execução → verificação → conclusão.
|
|
4
|
-
</purpose>
|
|
5
|
-
|
|
6
|
-
<required_reading>
|
|
7
|
-
Ler todos os arquivos referenciados pelo execution_context do prompt invocador antes de começar.
|
|
8
|
-
</required_reading>
|
|
9
|
-
|
|
10
|
-
<process>
|
|
11
|
-
|
|
12
|
-
<step name="detect_state">
|
|
13
|
-
Ler o estado do projeto para determinar a posição atual:
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
# Obter snapshot do estado
|
|
17
|
-
node "./.claude/framework/bin/tools.cjs" state json 2>/dev/null || echo "{}"
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
Também ler:
|
|
21
|
-
- `.planning/STATE.md` — fase atual, progresso, contagens de planos
|
|
22
|
-
- `.planning/ROADMAP.md` — estrutura do milestone e lista de fases
|
|
23
|
-
|
|
24
|
-
Extrair:
|
|
25
|
-
- `current_phase` — qual fase está ativa
|
|
26
|
-
- `plan_of` / `plans_total` — progresso de execução de planos
|
|
27
|
-
- `progress` — percentual geral
|
|
28
|
-
- `status` — ativo, pausado, etc.
|
|
29
|
-
|
|
30
|
-
Se o diretório `.planning/` não existir:
|
|
31
|
-
```
|
|
32
|
-
Nenhum projeto framework detectado. Execute `/novo-projeto` para começar.
|
|
33
|
-
```
|
|
34
|
-
Sair.
|
|
35
|
-
</step>
|
|
36
|
-
|
|
37
|
-
<step name="determine_next_action">
|
|
38
|
-
Aplicar regras de roteamento com base no estado:
|
|
39
|
-
|
|
40
|
-
**Rota 1: Nenhuma fase existe ainda → discussão**
|
|
41
|
-
Se o ROADMAP tem fases mas nenhum diretório de fase existe no disco:
|
|
42
|
-
→ Próxima ação: `/discutir-fase <primeira-fase>`
|
|
43
|
-
|
|
44
|
-
**Rota 2: Fase existe mas não tem CONTEXT.md ou RESEARCH.md → discussão**
|
|
45
|
-
Se o diretório da fase atual existe mas não tem CONTEXT.md nem RESEARCH.md:
|
|
46
|
-
→ Próxima ação: `/discutir-fase <fase-atual>`
|
|
47
|
-
|
|
48
|
-
**Rota 3: Fase tem contexto mas sem planos → planejamento**
|
|
49
|
-
Se a fase atual tem CONTEXT.md (ou RESEARCH.md) mas nenhum arquivo PLAN.md:
|
|
50
|
-
→ Próxima ação: `/planejar-fase <fase-atual>`
|
|
51
|
-
|
|
52
|
-
**Rota 4: Fase tem planos mas summaries incompletos → execução**
|
|
53
|
-
Se planos existem mas nem todos têm summaries correspondentes:
|
|
54
|
-
→ Próxima ação: `/executar-fase <fase-atual>`
|
|
55
|
-
|
|
56
|
-
**Rota 5: Todos os planos têm summaries → verificar e concluir**
|
|
57
|
-
Se todos os planos na fase atual têm summaries:
|
|
58
|
-
→ Próxima ação: `/verificar-trabalho` então `/complete-phase`
|
|
59
|
-
|
|
60
|
-
**Rota 6: Fase concluída, próxima fase existe → avançar**
|
|
61
|
-
Se a fase atual está concluída e a próxima fase existe no ROADMAP:
|
|
62
|
-
→ Próxima ação: `/discutir-fase <proxima-fase>`
|
|
63
|
-
|
|
64
|
-
**Rota 7: Todas as fases concluídas → concluir milestone**
|
|
65
|
-
Se todas as fases estão concluídas:
|
|
66
|
-
→ Próxima ação: `/concluir-marco`
|
|
67
|
-
|
|
68
|
-
**Rota 8: Pausado → retomar**
|
|
69
|
-
Se STATE.md mostra paused_at:
|
|
70
|
-
→ Próxima ação: `/retomar-trabalho`
|
|
71
|
-
</step>
|
|
72
|
-
|
|
73
|
-
<step name="show_and_execute">
|
|
74
|
-
Exibir a determinação:
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
## framework Próximo
|
|
78
|
-
|
|
79
|
-
**Atual:** Fase [N] — [nome] | [progresso]%
|
|
80
|
-
**Status:** [descrição do status]
|
|
81
|
-
|
|
82
|
-
▶ **Próximo passo:** `/[comando] [args]`
|
|
83
|
-
[Explicação em uma linha de por que este é o próximo passo]
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
Então invocar imediatamente o comando determinado via SlashCommand.
|
|
87
|
-
Não pedir confirmação — o objetivo do `/proximo` é avanço sem fricção.
|
|
88
|
-
</step>
|
|
89
|
-
|
|
90
|
-
</process>
|
|
91
|
-
|
|
92
|
-
<success_criteria>
|
|
93
|
-
- [ ] Estado do projeto detectado corretamente
|
|
94
|
-
- [ ] Próxima ação determinada corretamente pelas regras de roteamento
|
|
95
|
-
- [ ] Comando invocado imediatamente sem confirmação do usuário
|
|
96
|
-
- [ ] Status claro mostrado antes de invocar
|
|
97
|
-
</success_criteria>
|
|
1
|
+
<purpose>
|
|
2
|
+
Detectar o estado atual do projeto e avançar automaticamente para o próximo passo lógico do workflow framework.
|
|
3
|
+
Lê o estado do projeto para determinar a progressão: discussão → planejamento → execução → verificação → conclusão.
|
|
4
|
+
</purpose>
|
|
5
|
+
|
|
6
|
+
<required_reading>
|
|
7
|
+
Ler todos os arquivos referenciados pelo execution_context do prompt invocador antes de começar.
|
|
8
|
+
</required_reading>
|
|
9
|
+
|
|
10
|
+
<process>
|
|
11
|
+
|
|
12
|
+
<step name="detect_state">
|
|
13
|
+
Ler o estado do projeto para determinar a posição atual:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
# Obter snapshot do estado
|
|
17
|
+
node "./.claude/framework/bin/tools.cjs" state json 2>/dev/null || echo "{}"
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Também ler:
|
|
21
|
+
- `.planning/STATE.md` — fase atual, progresso, contagens de planos
|
|
22
|
+
- `.planning/ROADMAP.md` — estrutura do milestone e lista de fases
|
|
23
|
+
|
|
24
|
+
Extrair:
|
|
25
|
+
- `current_phase` — qual fase está ativa
|
|
26
|
+
- `plan_of` / `plans_total` — progresso de execução de planos
|
|
27
|
+
- `progress` — percentual geral
|
|
28
|
+
- `status` — ativo, pausado, etc.
|
|
29
|
+
|
|
30
|
+
Se o diretório `.planning/` não existir:
|
|
31
|
+
```
|
|
32
|
+
Nenhum projeto framework detectado. Execute `/novo-projeto` para começar.
|
|
33
|
+
```
|
|
34
|
+
Sair.
|
|
35
|
+
</step>
|
|
36
|
+
|
|
37
|
+
<step name="determine_next_action">
|
|
38
|
+
Aplicar regras de roteamento com base no estado:
|
|
39
|
+
|
|
40
|
+
**Rota 1: Nenhuma fase existe ainda → discussão**
|
|
41
|
+
Se o ROADMAP tem fases mas nenhum diretório de fase existe no disco:
|
|
42
|
+
→ Próxima ação: `/discutir-fase <primeira-fase>`
|
|
43
|
+
|
|
44
|
+
**Rota 2: Fase existe mas não tem CONTEXT.md ou RESEARCH.md → discussão**
|
|
45
|
+
Se o diretório da fase atual existe mas não tem CONTEXT.md nem RESEARCH.md:
|
|
46
|
+
→ Próxima ação: `/discutir-fase <fase-atual>`
|
|
47
|
+
|
|
48
|
+
**Rota 3: Fase tem contexto mas sem planos → planejamento**
|
|
49
|
+
Se a fase atual tem CONTEXT.md (ou RESEARCH.md) mas nenhum arquivo PLAN.md:
|
|
50
|
+
→ Próxima ação: `/planejar-fase <fase-atual>`
|
|
51
|
+
|
|
52
|
+
**Rota 4: Fase tem planos mas summaries incompletos → execução**
|
|
53
|
+
Se planos existem mas nem todos têm summaries correspondentes:
|
|
54
|
+
→ Próxima ação: `/executar-fase <fase-atual>`
|
|
55
|
+
|
|
56
|
+
**Rota 5: Todos os planos têm summaries → verificar e concluir**
|
|
57
|
+
Se todos os planos na fase atual têm summaries:
|
|
58
|
+
→ Próxima ação: `/verificar-trabalho` então `/complete-phase`
|
|
59
|
+
|
|
60
|
+
**Rota 6: Fase concluída, próxima fase existe → avançar**
|
|
61
|
+
Se a fase atual está concluída e a próxima fase existe no ROADMAP:
|
|
62
|
+
→ Próxima ação: `/discutir-fase <proxima-fase>`
|
|
63
|
+
|
|
64
|
+
**Rota 7: Todas as fases concluídas → concluir milestone**
|
|
65
|
+
Se todas as fases estão concluídas:
|
|
66
|
+
→ Próxima ação: `/concluir-marco`
|
|
67
|
+
|
|
68
|
+
**Rota 8: Pausado → retomar**
|
|
69
|
+
Se STATE.md mostra paused_at:
|
|
70
|
+
→ Próxima ação: `/retomar-trabalho`
|
|
71
|
+
</step>
|
|
72
|
+
|
|
73
|
+
<step name="show_and_execute">
|
|
74
|
+
Exibir a determinação:
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
## framework Próximo
|
|
78
|
+
|
|
79
|
+
**Atual:** Fase [N] — [nome] | [progresso]%
|
|
80
|
+
**Status:** [descrição do status]
|
|
81
|
+
|
|
82
|
+
▶ **Próximo passo:** `/[comando] [args]`
|
|
83
|
+
[Explicação em uma linha de por que este é o próximo passo]
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Então invocar imediatamente o comando determinado via SlashCommand.
|
|
87
|
+
Não pedir confirmação — o objetivo do `/proximo` é avanço sem fricção.
|
|
88
|
+
</step>
|
|
89
|
+
|
|
90
|
+
</process>
|
|
91
|
+
|
|
92
|
+
<success_criteria>
|
|
93
|
+
- [ ] Estado do projeto detectado corretamente
|
|
94
|
+
- [ ] Próxima ação determinada corretamente pelas regras de roteamento
|
|
95
|
+
- [ ] Comando invocado imediatamente sem confirmação do usuário
|
|
96
|
+
- [ ] Status claro mostrado antes de invocar
|
|
97
|
+
</success_criteria>
|