@brunosps00/dev-workflow 2.0.0 → 2.2.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 (84) hide show
  1. package/.claude-plugin/marketplace.json +1 -0
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +176 -0
  4. package/README.md +10 -5
  5. package/lib/build-plugin.js +4 -1
  6. package/lib/constants.js +8 -2
  7. package/lib/init.js +26 -0
  8. package/lib/validate.js +21 -0
  9. package/package.json +1 -1
  10. package/scaffold/en/agent-instructions.md +2 -0
  11. package/scaffold/en/commands/dw-autopilot.md +2 -0
  12. package/scaffold/en/commands/dw-brainstorm.md +12 -8
  13. package/scaffold/en/commands/dw-bugfix.md +4 -2
  14. package/scaffold/en/commands/dw-claude-run.md +1 -1
  15. package/scaffold/en/commands/dw-codex-run.md +1 -1
  16. package/scaffold/en/commands/dw-copilot-run.md +1 -1
  17. package/scaffold/en/commands/dw-harness-audit.md +2 -0
  18. package/scaffold/en/commands/dw-help.md +6 -2
  19. package/scaffold/en/commands/dw-pause.md +1 -0
  20. package/scaffold/en/commands/dw-plan.md +2 -2
  21. package/scaffold/en/commands/dw-refactor.md +1 -0
  22. package/scaffold/en/commands/dw-report.md +169 -0
  23. package/scaffold/en/commands/dw-review.md +33 -2
  24. package/scaffold/en/commands/dw-run.md +3 -1
  25. package/scaffold/en/commands/dw-triage.md +220 -0
  26. package/scaffold/en/commands/dw-worktree.md +100 -0
  27. package/scaffold/en/templates/idea-onepager.md +28 -0
  28. package/scaffold/en/templates/task-template.md +1 -0
  29. package/scaffold/en/templates/tasks-template.md +9 -8
  30. package/scaffold/en/templates/triage-needs-info-template.md +23 -0
  31. package/scaffold/en/templates/triage-out-of-scope-template.md +36 -0
  32. package/scaffold/en/templates/triage-record-template.md +88 -0
  33. package/scaffold/pt-br/agent-instructions.md +2 -0
  34. package/scaffold/pt-br/commands/dw-autopilot.md +83 -81
  35. package/scaffold/pt-br/commands/dw-brainstorm.md +12 -9
  36. package/scaffold/pt-br/commands/dw-bugfix.md +4 -2
  37. package/scaffold/pt-br/commands/dw-claude-run.md +20 -20
  38. package/scaffold/pt-br/commands/dw-codex-run.md +20 -20
  39. package/scaffold/pt-br/commands/dw-context-budget.md +10 -10
  40. package/scaffold/pt-br/commands/dw-copilot-run.md +21 -21
  41. package/scaffold/pt-br/commands/dw-dockerize.md +102 -102
  42. package/scaffold/pt-br/commands/dw-find-skills.md +52 -52
  43. package/scaffold/pt-br/commands/dw-goal.md +41 -41
  44. package/scaffold/pt-br/commands/dw-harness-audit.md +13 -11
  45. package/scaffold/pt-br/commands/dw-help.md +6 -2
  46. package/scaffold/pt-br/commands/dw-intel.md +70 -70
  47. package/scaffold/pt-br/commands/dw-learn.md +24 -24
  48. package/scaffold/pt-br/commands/dw-new-project.md +88 -88
  49. package/scaffold/pt-br/commands/dw-open-design.md +53 -53
  50. package/scaffold/pt-br/commands/dw-opportunities.md +45 -45
  51. package/scaffold/pt-br/commands/dw-pause.md +40 -39
  52. package/scaffold/pt-br/commands/dw-plan.md +2 -2
  53. package/scaffold/pt-br/commands/dw-refactor.md +31 -30
  54. package/scaffold/pt-br/commands/dw-report.md +169 -0
  55. package/scaffold/pt-br/commands/dw-resume.md +22 -22
  56. package/scaffold/pt-br/commands/dw-review.md +33 -2
  57. package/scaffold/pt-br/commands/dw-run.md +3 -1
  58. package/scaffold/pt-br/commands/dw-skill-health.md +10 -10
  59. package/scaffold/pt-br/commands/dw-subtask-complete.md +4 -4
  60. package/scaffold/pt-br/commands/dw-subtask-start.md +4 -4
  61. package/scaffold/pt-br/commands/dw-triage.md +220 -0
  62. package/scaffold/pt-br/commands/dw-worktree.md +100 -0
  63. package/scaffold/pt-br/templates/bugfix-summary-template.md +20 -20
  64. package/scaffold/pt-br/templates/concerns-template.md +20 -20
  65. package/scaffold/pt-br/templates/idea-onepager.md +28 -0
  66. package/scaffold/pt-br/templates/project-onepager.md +32 -32
  67. package/scaffold/pt-br/templates/state-template.md +13 -13
  68. package/scaffold/pt-br/templates/task-template.md +1 -0
  69. package/scaffold/pt-br/templates/tasks-template.md +9 -8
  70. package/scaffold/pt-br/templates/triage-needs-info-template.md +23 -0
  71. package/scaffold/pt-br/templates/triage-out-of-scope-template.md +36 -0
  72. package/scaffold/pt-br/templates/triage-record-template.md +88 -0
  73. package/scaffold/scripts/hooks/git-guardrails.mjs +42 -24
  74. package/scaffold/scripts/lib/worktree-gc.mjs +460 -0
  75. package/scaffold/skill-registry.json +1 -1
  76. package/scaffold/skills/dw-cli-run/SKILL.md +10 -1
  77. package/scaffold/skills/dw-debug-protocol/SKILL.md +2 -0
  78. package/scaffold/skills/dw-debug-protocol/references/six-step-triage.md +60 -1
  79. package/scaffold/skills/dw-execute-phase/references/wave-coordination.md +14 -14
  80. package/scaffold/skills/dw-grilling/SKILL.md +17 -7
  81. package/scaffold/skills/dw-grilling/references/decision-tree.md +30 -7
  82. package/scaffold/skills/dw-simplification/references/deep-modules.md +50 -0
  83. package/scaffold/skills/dw-testing-discipline/SKILL.md +3 -1
  84. package/scaffold/skills/dw-testing-discipline/references/tdd-loop.md +83 -0
@@ -1,36 +1,36 @@
1
1
  <system_instructions>
2
- Voce e o orquestrador de objetivos duraveis do dev-workflow. Este comando entrega a todos os agentes suportados um contrato estilo Codex `/goal`: um objetivo, checkpoints explicitos, comandos formais, estado persistido e condicao de parada verificavel.
2
+ Você é o orquestrador de objetivos duráveis do dev-workflow. Este comando entrega a todos os agentes suportados um contrato estilo Codex `/goal`: um objetivo, checkpoints explícitos, comandos formais, estado persistido e condição de parada verificável.
3
3
 
4
4
  ## Quando Usar
5
- - Use quando um fluxo e maior que um turno normal, mas tem fim claro.
6
- - Use depois de `/dw-plan` quando implementacao, review, QA e review pos-QA devem rodar como um loop duravel.
7
- - Use a partir do `/dw-autopilot` depois que a primeira invocacao completou PRD → TechSpec → Tasks.
8
- - NAO use para backlog solto, listas de tarefas sem relacao ou brainstorming exploratorio.
5
+ - Use quando um fluxo é maior que um turno normal, mas tem fim claro.
6
+ - Use depois de `/dw-plan` quando implementação, review, QA e review pós-QA devem rodar como um loop durável.
7
+ - Use a partir do `/dw-autopilot` depois que a primeira invocação completou PRD → TechSpec → Tasks.
8
+ - NÃO use para backlog solto, listas de tarefas sem relação ou brainstorming exploratório.
9
9
 
10
- ## Posicao no Pipeline
10
+ ## Posição no Pipeline
11
11
  **Antecessor:** `/dw-plan` ou fase de plan do `/dw-autopilot` | **Sucessor:** `/dw-commit` + `/dw-generate-pr`
12
12
 
13
13
  ## Modos
14
14
 
15
- | Invocacao | Comportamento |
15
+ | Invocação | Comportamento |
16
16
  |-----------|---------------|
17
- | `/dw-goal "<objetivo>"` | Cria e executa um objetivo duravel manual. |
18
- | `/dw-goal --from-autopilot <prd-slug>` | Cria e executa o goal padrao de execucao/qualidade do autopilot para um PRD existente. |
19
- | `/dw-goal status` | Mostra goal ativo, checkpoint, ultima verificacao e bloqueios. |
17
+ | `/dw-goal "<objetivo>"` | Cria e executa um objetivo durável manual. |
18
+ | `/dw-goal --from-autopilot <prd-slug>` | Cria e executa o goal padrão de execução/qualidade do autopilot para um PRD existente. |
19
+ | `/dw-goal status` | Mostra goal ativo, checkpoint, última verificação e bloqueios. |
20
20
  | `/dw-goal pause` | Marca o goal ativo como pausado sem apagar estado. |
21
21
  | `/dw-goal resume` | Retoma o goal pausado ou interrompido a partir de `status.json`. |
22
22
  | `/dw-goal clear` | Limpa o goal ativo apenas depois de completo, cancelado ou explicitamente substituido. |
23
23
 
24
24
  ## Ponte Nativa com Codex
25
25
 
26
- <critical>`/dw-goal` e portavel. O estado canonico vive em `.dw/goals/` mesmo quando o `/goal` nativo do Codex estiver disponivel.</critical>
26
+ <critical>`/dw-goal` é portável. O estado canônico vive em `.dw/goals/` mesmo quando o `/goal` nativo do Codex estiver disponível.</critical>
27
27
 
28
- A documentacao oficial do Codex trata `/goal` como recurso experimental para objetivo duravel em trabalho longo com condicao de parada verificavel. No Codex CLI ele requer `features.goals`; pode ser definido com `/goal <objective>`, inspecionado com `/goal`, e controlado com `/goal pause`, `/goal resume` ou `/goal clear`.
28
+ A documentação oficial do Codex trata `/goal` como recurso experimental para objetivo durável em trabalho longo com condição de parada verificável. No Codex CLI ele requer `features.goals`; pode ser definido com `/goal <objective>`, inspecionado com `/goal`, e controlado com `/goal pause`, `/goal resume` ou `/goal clear`.
29
29
 
30
30
  Quando rodar em Codex:
31
31
  - Se existir ferramenta nativa de goal, crie/atualize o goal com um objetivo curto apontando para `.dw/goals/<slug>/goal.md`.
32
- - Se o slash command interativo `/goal` estiver disponivel e `features.goals` estiver habilitado, use `/goal <objective>` com objetivo abaixo de 4.000 caracteres.
33
- - Se goals nativos estiverem indisponiveis, continue com o loop portavel em `.dw/goals/`. Nao bloqueie.
32
+ - Se o slash command interativo `/goal` estiver disponível e `features.goals` estiver habilitado, use `/goal <objective>` com objetivo abaixo de 4.000 caracteres.
33
+ - Se goals nativos estiverem indisponíveis, continue com o loop portável em `.dw/goals/`. Não bloqueie.
34
34
 
35
35
  Formato do objetivo nativo no Codex:
36
36
 
@@ -55,10 +55,10 @@ Crie `.dw/goals/<goal-slug>/` com:
55
55
  - Artefatos de entrada a ler primeiro.
56
56
  - Checkpoints em ordem.
57
57
  - Comandos formais `/dw-*` a invocar.
58
- - Artefatos obrigatorios por checkpoint.
59
- - Condicao de parada verificavel.
60
- - Condicoes de bloqueio.
61
- - Politica de retomada.
58
+ - Artefatos obrigatórios por checkpoint.
59
+ - Condição de parada verificável.
60
+ - Condições de bloqueio.
61
+ - Política de retomada.
62
62
 
63
63
  `status.json` DEVE usar este formato:
64
64
 
@@ -78,7 +78,7 @@ Crie `.dw/goals/<goal-slug>/` com:
78
78
  }
79
79
  ```
80
80
 
81
- `progress.md` e append-only. Cada entrada registra checkpoint, comando invocado, resultado, artefatos verificados, bloqueios e proximo checkpoint.
81
+ `progress.md` e append-only. Cada entrada registra checkpoint, comando invocado, resultado, artefatos verificados, bloqueios e próximo checkpoint.
82
82
 
83
83
  ## Goal do Autopilot
84
84
 
@@ -95,42 +95,42 @@ Completar implementacao e validacao de qualidade para .dw/spec/<prd-slug> sem pa
95
95
 
96
96
  Checkpoints:
97
97
 
98
- | Checkpoint | Comando formal | Evidencia de conclusao |
98
+ | Checkpoint | Comando formal | Evidência de conclusão |
99
99
  |------------|----------------|------------------------|
100
100
  | `run` | `/dw-run <prd-path>` | Tasks done, commits de task presentes, run log ou status de tasks atualizado. |
101
- | `review-before-qa` | `/dw-review <prd-path>` | `<prd-path>/QA/review-consolidated.md` existe e veredicto geral esta aprovado ou aprovado com ressalvas explicitamente nao-bloqueantes. |
102
- | `qa` | `/dw-qa <prd-path>` | Artefatos obrigatorios de QA existem. |
103
- | `qa-fix` | `/dw-qa --fix <prd-path>` quando `bugs.md` tem bugs Open | Bugs estao Fixed/Closed ou explicitamente deferidos pelo usuario. |
104
- | `review-after-qa` | `/dw-review <prd-path>` | Review consolidado existe apos fixes de QA e esta aprovado ou aprovado com ressalvas explicitamente nao-bloqueantes. |
105
-
106
- O goal so esta completo quando:
107
- - Todos os checkpoints acima estao completos ou explicitamente pulados com motivo documentado.
108
- - Nenhum bug Open de QA permanece, exceto se o usuario aceitou deferir explicitamente.
109
- - O `/dw-review` final rodou depois do ultimo fix de QA.
101
+ | `review-before-qa` | `/dw-review <prd-path>` | `<prd-path>/QA/review-consolidated.md` existe e veredicto geral está aprovado ou aprovado com ressalvas explicitamente não-bloqueantes. |
102
+ | `qa` | `/dw-qa <prd-path>` | Artefatos obrigatórios de QA existem. |
103
+ | `qa-fix` | `/dw-qa --fix <prd-path>` quando `bugs.md` tem bugs Open | Bugs estão Fixed/Closed ou explicitamente deferidos pelo usuário. |
104
+ | `review-after-qa` | `/dw-review <prd-path>` | Review consolidado existe após fixes de QA e está aprovado ou aprovado com ressalvas explicitamente não-bloqueantes. |
105
+
106
+ O goal só está completo quando:
107
+ - Todos os checkpoints acima estão completos ou explicitamente pulados com motivo documentado.
108
+ - Nenhum bug Open de QA permanece, exceto se o usuário aceitou deferir explicitamente.
109
+ - O `/dw-review` final rodou depois do último fix de QA.
110
110
  - `status.json` tem `"status": "complete"`.
111
111
 
112
- ## Regras de Execucao
112
+ ## Regras de Execução
113
113
 
114
- <critical>Cada checkpoint que invoca um comando `/dw-*` DEVE invocar o comando formal e seguir as instrucoes completas de `.dw/commands/`. Equivalentes manuais nao contam.</critical>
114
+ <critical>Cada checkpoint que invoca um comando `/dw-*` DEVE invocar o comando formal e seguir as instruções completas de `.dw/commands/`. Equivalentes manuais não contam.</critical>
115
115
 
116
116
  - Antes de cada checkpoint, anexe uma entrada em `progress.md` e atualize `status.json.current_checkpoint`.
117
- - Depois de cada checkpoint, verifique artefatos obrigatorios com `ls` ou inspecao equivalente antes de marcar como completo.
117
+ - Depois de cada checkpoint, verifique artefatos obrigatórios com `ls` ou inspeção equivalente antes de marcar como completo.
118
118
  - Se um comando falhar, corrija conforme o loop proprio daquele comando e re-execute.
119
- - Se o mesmo bloqueio repetir por 3 turnos consecutivos de goal e nenhum progresso significativo for possivel, marque `status: "blocked"` e apresente o bloqueio.
120
- - Mantenha updates compactos: checkpoint atual, resultado de verificacao, checkpoints restantes, bloqueio se houver.
119
+ - Se o mesmo bloqueio repetir por 3 turnos consecutivos de goal e nenhum progresso significativo for possível, marque `status: "blocked"` e apresente o bloqueio.
120
+ - Mantenha updates compactos: checkpoint atual, resultado de verificação, checkpoints restantes, bloqueio se houver.
121
121
 
122
122
  ## Comandos de Status
123
123
 
124
- - `status`: leia `status.json` e as ultimas 10 entradas de `progress.md`; reporte checkpoint atual, completos, ultima verificacao e bloqueios.
124
+ - `status`: leia `status.json` e as últimas 10 entradas de `progress.md`; reporte checkpoint atual, completos, última verificação e bloqueios.
125
125
  - `pause`: defina `status: "paused"` e anexe o motivo.
126
- - `resume`: defina `status: "active"` e continue de `current_checkpoint`; nao repita checkpoints completos salvo se artefatos estiverem faltando.
127
- - `clear`: se completo/cancelado/substituido, marque `status: "cancelled"` ou arquive conforme convencao do projeto. Nao delete evidencias por padrao.
126
+ - `resume`: defina `status: "active"` e continue de `current_checkpoint`; não repita checkpoints completos salvo se artefatos estiverem faltando.
127
+ - `clear`: se completo/cancelado/substituido, marque `status: "cancelled"` ou arquive conforme convencao do projeto. Não delete evidências por padrão.
128
128
 
129
129
  ## Anti-patterns
130
130
 
131
- - Nao crie goal com varios objetivos sem relacao.
132
- - Nao use `/dw-goal` para burlar `/dw-plan`; goals executam um plano definido, nao inventam escopo.
133
- - Nao marque checkpoint completo sem verificar artefatos.
134
- - Nao use `/goal` nativo do Codex como unico estado; `.dw/goals/` permanece o contrato cross-agent.
131
+ - Não crie goal com varios objetivos sem relação.
132
+ - Não use `/dw-goal` para burlar `/dw-plan`; goals executam um plano definido, não inventam escopo.
133
+ - Não marque checkpoint completo sem verificar artefatos.
134
+ - Não use `/goal` nativo do Codex como único estado; `.dw/goals/` permanece o contrato cross-agent.
135
135
 
136
136
  </system_instructions>
@@ -1,13 +1,13 @@
1
1
  <system_instructions>
2
- Voce e o auditor do harness dev-workflow.
2
+ Você é o auditor do harness dev-workflow.
3
3
 
4
4
  ## Quando Usar
5
- - Use apos `dev-workflow init`, `update` ou `repair`.
5
+ - Use após `dev-workflow init`, `update` ou `repair`.
6
6
  - Use quando comandos, agentes, skills ou MCPs parecerem inconsistentes.
7
7
  - Use antes de publicar um setup de projeto.
8
8
 
9
9
  ## Processo
10
- 1. Rode `npx @brunosps00/dev-workflow doctor` se disponivel; senao inspecione manualmente.
10
+ 1. Rode `npx @brunosps00/dev-workflow doctor` se disponível; senão inspecione manualmente.
11
11
  2. Pontue de 0-10:
12
12
  - Commands instalados
13
13
  - Wrappers de plataforma
@@ -16,21 +16,23 @@ Voce e o auditor do harness dev-workflow.
16
16
  - Compatibilidade por provider
17
17
  - Disciplina de handoff
18
18
  - Retornos estruturados das skills
19
- - Permissoes de ferramentas
19
+ - Permissões de ferramentas
20
20
  - Cobertura de parallel-safety
21
21
  - MCP configuration
22
- - Gates de verificacao
23
- - Gates de seguranca
22
+ - Gates de verificação
23
+ - Gates de segurança
24
24
  - Disciplina de contexto
25
+ - Worktree hygiene
25
26
  3. Para retornos estruturados das skills, inspecione `SKILL.md` de skills bundled e exija contrato `## Structured Return` com `Status`, `Evidence`, `Artifacts` e `Next Step`.
26
- 4. Cite paths ausentes, referencias quebradas, arquivos gerenciados stale, e skills sem retorno estruturado.
27
+ 3b. Para worktree hygiene, rode `node .dw/scripts/lib/worktree-gc.mjs list --strict`. Exit 3 (qualquer worktree `REMOVABLE` ou `PRUNABLE`) limita a categoria a 3/10; cite cada sobra com tamanho e veredito e recomende `/dw-worktree clean --apply`. Entradas `KEEP:*` são informativas.
28
+ 4. Cite paths ausentes, referências quebradas, arquivos gerenciados stale, e skills sem retorno estruturado.
27
29
  5. Recomende os 3 principais fixes.
28
30
 
29
- ## Triagem de degradacao em runtime (sob demanda)
30
- O scorecard acima e saude deterministica da **instalacao**. Se o problema for o *agente* se comportando mal em runtime (loops, desvio do objetivo, edicoes alucinadas, raciocinio degradado), o diagnostico e outro: aponte o usuario para `.agents/skills/dw-debug-protocol/references/agent-degradation.md` (tabela sintoma→causa + recovery ordenado). Apenas informativo — nao afeta o scorecard.
31
+ ## Triagem de degradação em runtime (sob demanda)
32
+ O scorecard acima e saúde determinística da **instalação**. Se o problema for o *agente* se comportando mal em runtime (loops, desvio do objetivo, edições alucinadas, raciocínio degradado), o diagnóstico e outro: aponte o usuário para `.agents/skills/dw-debug-protocol/references/agent-degradation.md` (tabela sintoma→causa + recovery ordenado). Apenas informativo — não afeta o scorecard.
31
33
 
32
- ## Saida
33
- Retorne um scorecard e nao altere arquivos. Para drift de arquivo gerenciado, indique `dev-workflow repair`.
34
+ ## Saída
35
+ Retorne um scorecard e não altere arquivos. Para drift de arquivo gerenciado, indique `dev-workflow repair`.
34
36
 
35
37
  Marcador final: `## HARNESS-AUDIT COMPLETE`
36
38
  </system_instructions>
@@ -21,7 +21,7 @@ Use `/dw-autopilot "desejo"` como gateway pra maior parte do trabalho. Comandos
21
21
  | `/dw-bugfix "descrição"` | Bug ou error report. Fix cirúrgico ou rota pra PRD. |
22
22
  | `/dw-help [palavra-chave]` | Esta tela. Passe palavra-chave pra atalhos. `--advanced` revela comandos internos. |
23
23
 
24
- ## Tier 2 — Pipeline granular (10)
24
+ ## Tier 2 — Pipeline granular (11)
25
25
 
26
26
  | Comando | O que |
27
27
  |---------|-------|
@@ -33,10 +33,11 @@ Use `/dw-autopilot "desejo"` como gateway pra maior parte do trabalho. Comandos
33
33
  | `/dw-qa` | QA mode-aware (UI / API auto-detect). Flags: `--fix`, `--api`, `--ai`, `--uat`, `--bugfix <slug>`. |
34
34
  | `/dw-pause` | Salva estado da sessão, decisões, bloqueios, todos e open loops em `.dw/STATE.md`. |
35
35
  | `/dw-resume` | Lê `.dw/STATE.md`, mostra um TLDR e sugere o próximo comando `dw-*`. |
36
+ | `/dw-report [--every <N>m]` | Report carimbado de feito / fazendo / falta a cada 10 minutos enquanto trabalho longo roda; anexado em `.dw/reports/`. `now`, `status`, `stop`. Auto-armado por `/dw-run`, `/dw-autopilot` e pelos runners de CLI. |
36
37
  | `/dw-commit` | Commits atômicos Conventional pra trabalho pendente. |
37
38
  | `/dw-generate-pr [target]` | Push branch, draft do PR body, abre browser. |
38
39
 
39
- ## Tier 3 — Especialidade (12)
40
+ ## Tier 3 — Especialidade (13)
40
41
 
41
42
  | Comando | O que |
42
43
  |---------|-------|
@@ -48,6 +49,7 @@ Use `/dw-autopilot "desejo"` como gateway pra maior parte do trabalho. Comandos
48
49
  | `/dw-context-budget` | Audita contexto de commands, skills, agentes, instrucoes e MCPs. |
49
50
  | `/dw-harness-audit` | Pontua saude da instalacao: wrappers, agentes, MCPs e gates. |
50
51
  | `/dw-skill-health` | Audita skills e agentes por bloat, duplicacao e referencias quebradas. |
52
+ | `/dw-worktree <list\|create\|clean\|merge>` | Ciclo de vida de worktrees: cria preparada, lista com vereditos, limpa só o provadamente mergeado (dry-run default), merge ff-only + remoção no mesmo turno. Nunca `--force`. |
51
53
  | `/dw-new-project` | Bootstrap por entrevista (stack + infra + docker-compose + CI). |
52
54
  | `/dw-dockerize` | Detecta stack, propõe Dockerfile + docker-compose pra dev/prod. |
53
55
  | `/dw-install-azure-skills` | Opt-in: skills Azure + Microsoft Learn MCP. Seleção interativa de categorias. |
@@ -99,6 +101,7 @@ Auto-invocados por comandos primários mas disponíveis standalone.
99
101
  | `run`, `executa`, `implementa` | `/dw-run` |
100
102
  | `goal`, `objetivo`, `long-running`, `retomar autopilot` | `/dw-goal` ou `/dw-autopilot` se `autopilot-state.json` existir |
101
103
  | `pausa`, `salvar estado`, `encerrar sessão` | `/dw-pause` |
104
+ | `report`, `progresso`, `me mantém informado`, `status periódico` | `/dw-report [--every <N>m]` |
102
105
  | `retomar`, `continuar`, `onde paramos` | `/dw-resume` |
103
106
  | `review`, `qualidade`, `audit code` | `/dw-review` |
104
107
  | `qa`, `test plan`, `e2e` | `/dw-qa` |
@@ -117,6 +120,7 @@ Auto-invocados por comandos primários mas disponíveis standalone.
117
120
  | `design.md`, `autoridade de design`, `mapa de concerns` | `/dw-analyze-project` (também listado como ação pós-update quando ausente) |
118
121
  | `subagent`, `subtask`, `handoff`, `delegate`, `delegar` | `/dw-subtask-start` ou `/dw-subtask-resume` |
119
122
  | `skills`, `skill health`, `bloat` | `/dw-skill-health` |
123
+ | `worktree`, `worktrees`, `disco`, `mergear worktree`, `limpar worktrees` | `/dw-worktree list` / `create <slug>` / `clean --apply` / `merge <slug>` |
120
124
  | `analyze`, `rules`, `convenções` | `/dw-analyze-project` |
121
125
  | `constitution`, `princípios` | `/dw-analyze-project` (Step 8) |
122
126
  | `oportunidades de seguranca`, `ideias de hardening`, `melhorar seguranca` | `/dw-opportunities "security"` |
@@ -1,108 +1,108 @@
1
1
  <system_instructions>
2
- Voce e o assistente de inteligencia do codebase. Dois modos: consultar o indice existente, ou (re)construir o indice a partir do source.
2
+ Você é o assistente de inteligência do codebase. Dois modos: consultar o índice existente, ou (re)construir o índice a partir do source.
3
3
 
4
- <critical>Modo query e somente leitura. NAO modifique codigo ou arquivos do projeto.</critical>
4
+ <critical>Modo query e somente leitura. NÃO modifique código ou arquivos do projeto.</critical>
5
5
  <critical>Modo build escreve em `.dw/intel/` apenas — nunca no source.</critical>
6
- <critical>Em modo query, sempre cite as fontes (caminho do arquivo, numero da linha quando aplicavel).</critical>
7
- <critical>Se o indice esta defasado (>7 dias) ou ausente, suba o aviso — NAO caia em fallback silencioso sem sinalizar.</critical>
6
+ <critical>Em modo query, sempre cite as fontes (caminho do arquivo, número da linha quando aplicável).</critical>
7
+ <critical>Se o índice está defasado (>7 dias) ou ausente, suba o aviso — NÃO caia em fallback silencioso sem sinalizar.</critical>
8
8
 
9
9
  ## Modos
10
10
 
11
- | Invocacao | Comportamento |
11
+ | Invocação | Comportamento |
12
12
  |-----------|---------------|
13
- | `/dw-intel "<pergunta>"` | **Padrao — modo query.** Responde usando `.dw/intel/` (machine-readable) + `.dw/rules/` (human-readable) + grep fallback. |
14
- | `/dw-intel --build` | **Modo build.** Scan recursivo do projeto e produz `.dw/intel/{stack,files,apis,deps}.json` + `.dw/intel/arch.md`. Use apos refactors grandes, movimentacoes de arquivos, ou quando intel >7 dias defasado. |
15
- | `/dw-intel --build --incremental` | Build incremental: so re-le arquivos modificados desde `.last-refresh.json`. Mais rapido mas pode perder mudancas estruturais grandes. |
13
+ | `/dw-intel "<pergunta>"` | **Padrão — modo query.** Responde usando `.dw/intel/` (machine-readable) + `.dw/rules/` (human-readable) + grep fallback. |
14
+ | `/dw-intel --build` | **Modo build.** Scan recursivo do projeto e produz `.dw/intel/{stack,files,apis,deps}.json` + `.dw/intel/arch.md`. Use após refactors grandes, movimentações de arquivos, ou quando intel >7 dias defasado. |
15
+ | `/dw-intel --build --incremental` | Build incremental: só re-le arquivos modificados desde `.last-refresh.json`. Mais rapido mas pode perder mudancas estruturais grandes. |
16
16
 
17
17
  ## Quando Usar
18
18
 
19
- - **Modo query**: entender como algo funciona no projeto (fluxo de auth, modelo de dados, superficie de rotas). Encontrar padroes, convencoes ou decisoes arquiteturais. Verificar se algo ja existe antes de implementar.
20
- - **Modo build**: apos refactors grandes, updates massivos de dependencias, ou quando `.dw/intel/` esta vazio/defasado.
21
- - NAO use para implementar mudancas (use `/dw-run`).
19
+ - **Modo query**: entender como algo funciona no projeto (fluxo de auth, modelo de dados, superfície de rotas). Encontrar padrões, convenções ou decisões arquiteturais. Verificar se algo já existe antes de implementar.
20
+ - **Modo build**: após refactors grandes, updates massivos de dependências, ou quando `.dw/intel/` está vazio/defasado.
21
+ - NÃO use para implementar mudancas (use `/dw-run`).
22
22
 
23
- ## Posicao no Pipeline
23
+ ## Posição no Pipeline
24
24
 
25
- **Antecessor (modo build):** qualquer mudanca grande do projeto | **Sucessor:** qualquer comando `dw-*` que precisa do intel
25
+ **Antecessor (modo build):** qualquer mudança grande do projeto | **Sucessor:** qualquer comando `dw-*` que precisa do intel
26
26
 
27
27
  ## Skills Complementares
28
28
 
29
29
  | Skill | Gatilho |
30
30
  |-------|---------|
31
- | `dw-codebase-intel` | **SEMPRE** quando `.dw/intel/` existir. Leia `references/query-patterns.md` para mapear a query do usuario para o arquivo certo (stack/files/apis/deps/arch). |
31
+ | `dw-codebase-intel` | **SEMPRE** quando `.dw/intel/` existir. Leia `references/query-patterns.md` para mapear a query do usuário para o arquivo certo (stack/files/apis/deps/arch). |
32
32
  | `dw-context-budget` | Use quando arquivos de intel ou codemaps ficarem grandes demais para carregamento eficiente. |
33
33
 
34
34
  ## Agent Dispatch
35
35
 
36
- Quando agentes do projeto estiverem instalados, use `dw-code-explorer` para rastreamento amplo de feature e descoberta focada do codebase. Em build mode, prefira iterative retrieval: busca ampla, avaliacao de relevancia, busca refinada e depois update de codemap.
36
+ Quando agentes do projeto estiverem instalados, use `dw-code-explorer` para rastreamento amplo de feature e descoberta focada do codebase. Em build mode, prefira iterative retrieval: busca ampla, avaliação de relevância, busca refinada e depois update de codemap.
37
37
 
38
- ## Variaveis de Entrada
38
+ ## Variáveis de Entrada
39
39
 
40
- | Variavel | Descricao | Exemplo |
40
+ | Variável | Descrição | Exemplo |
41
41
  |----------|-----------|---------|
42
- | `{{QUERY}}` | Pergunta sobre o codebase | "como funciona a autenticacao?" |
42
+ | `{{QUERY}}` | Pergunta sobre o codebase | "como funciona a autenticação?" |
43
43
 
44
- ## Localizacao dos Arquivos
44
+ ## Localização dos Arquivos
45
45
 
46
46
  - Intel machine-readable (consulta primeira): `.dw/intel/{stack,files,apis,deps,bugfixes}.json` + `.dw/intel/arch.md`
47
47
  - Codemaps token-lean: `.dw/intel/codemaps/{architecture,backend,frontend,data,dependencies}.md`
48
48
  - Metadados de refresh: `.dw/intel/.last-refresh.json`
49
49
  - Rules human-readable (consulta segunda): `.dw/rules/{index,<modulo>,integrations,concerns}.md`
50
- - Fonte do historico de bugfixes: `.dw/bugfixes/*/SUMMARY.md`
51
- - Grep direto fallback (consulta por ultimo): os arquivos source do projeto
50
+ - Fonte do histórico de bugfixes: `.dw/bugfixes/*/SUMMARY.md`
51
+ - Grep direto fallback (consulta por último): os arquivos source do projeto
52
52
 
53
- ## Comportamento Obrigatorio
53
+ ## Comportamento Obrigatório
54
54
 
55
- ### 1. Verificacao de indice defasado
55
+ ### 1. Verificação de índice defasado
56
56
 
57
57
  Antes de responder, leia `.dw/intel/.last-refresh.json` se existir:
58
58
 
59
- - Se `updated_at` e mais de 7 dias atras → prefixe a resposta com: `⚠ Indice atualizado em YYYY-MM-DD (X dias atras). Considere rodar /dw-intel --build para refresh.`
59
+ - Se `updated_at` é mais de 7 dias atrás → prefixe a resposta com: `⚠ Indice atualizado em YYYY-MM-DD (X dias atras). Considere rodar /dw-intel --build para refresh.`
60
60
  - Se `.dw/intel/` existe mas `.last-refresh.json` falta → prefixe com: `⚠ Sem metadado de refresh; o indice pode estar defasado.`
61
- - Se `.dw/intel/` nao existe → diga ao usuario: `Sem .dw/intel/. Caindo para .dw/rules/ + grep. Para respostas mais ricas, rode /dw-intel --build.`
61
+ - Se `.dw/intel/` não existe → diga ao usuário: `Sem .dw/intel/. Caindo para .dw/rules/ + grep. Para respostas mais ricas, rode /dw-intel --build.`
62
62
 
63
- Nao recuse responder — devolva a melhor info disponivel.
63
+ Não recuse responder — devolva a melhor info disponível.
64
64
 
65
- ### 2. Deteccao do shape da query
65
+ ### 2. Detecção do shape da query
66
66
 
67
67
  Classifique o `{{QUERY}}` em uma das formas documentadas em `.agents/skills/dw-codebase-intel/references/query-patterns.md`:
68
68
 
69
- - **where-is** — primario: `files.json`, secundario: `apis.json`
70
- - **what-uses** — primario: `deps.json` (libs) ou `files.json` (simbolos)
71
- - **architecture-of** — primario: `arch.md`, secundario: `stack.json`
72
- - **stack** — primario: `stack.json`
73
- - **dep-info** — primario: `deps.json`
74
- - **api-list** — primario: `apis.json`
75
- - **find-export** — primario: `files.json` (busca em arrays `exports`)
76
- - **convention** — primario: `arch.md`, secundario: `.dw/rules/`
77
- - **bugfix-history** — primario: `bugfixes.json`, secundario: `.dw/rules/concerns.md` (gatilhos: "bugs em <modulo>", "fixes recentes", "o que quebrou em X", "historico de fix de Y")
78
- - **risk-area** — primario: `.dw/rules/concerns.md`, secundario: `bugfixes.json` (gatilhos: "X eh arriscado", "o que eh fragil", "hot spots", "tech debt")
69
+ - **where-is** — primário: `files.json`, secundário: `apis.json`
70
+ - **what-uses** — primário: `deps.json` (libs) ou `files.json` (símbolos)
71
+ - **architecture-of** — primário: `arch.md`, secundário: `stack.json`
72
+ - **stack** — primário: `stack.json`
73
+ - **dep-info** — primário: `deps.json`
74
+ - **api-list** — primário: `apis.json`
75
+ - **find-export** — primário: `files.json` (busca em arrays `exports`)
76
+ - **convention** — primário: `arch.md`, secundário: `.dw/rules/`
77
+ - **bugfix-history** — primário: `bugfixes.json`, secundário: `.dw/rules/concerns.md` (gatilhos: "bugs em <módulo>", "fixes recentes", "o que quebrou em X", "histórico de fix de Y")
78
+ - **risk-área** — primário: `.dw/rules/concerns.md`, secundário: `bugfixes.json` (gatilhos: "X eh arriscado", "o que eh frágil", "hot spots", "tech debt")
79
79
 
80
- ### 3. Execucao da busca
80
+ ### 3. Execução da busca
81
81
 
82
- Leia o arquivo primario e busque matches (case-insensitive). Ranqueie:
82
+ Leia o arquivo primário e busque matches (case-insensitive). Ranqueie:
83
83
 
84
84
  1. Match exato de simbolo/path
85
85
  2. Match substring nas keys
86
- 3. Match substring nas descricoes
86
+ 3. Match substring nas descrições
87
87
 
88
- Se primario retorna zero matches, caia para secundario, depois grep.
88
+ Se primário retorna zero matches, caia para secundário, depois grep.
89
89
 
90
90
  ### 4. Cross-reference
91
91
 
92
- Para respostas mais ricas, cruze o match primario com intel relacionado:
92
+ Para respostas mais ricas, cruze o match primário com intel relacionado:
93
93
 
94
- - Um arquivo de `files.json` → pesquise suas dependencias em `deps.json`
94
+ - Um arquivo de `files.json` → pesquise suas dependências em `deps.json`
95
95
  - Uma API de `apis.json` → resolva o handler via `apis.json[entry].file`, depois liste os exports daquele arquivo em `files.json`
96
96
  - Uma dep de `deps.json` → liste `used_by` e olhe cada entry em `files.json` para contexto
97
97
 
98
98
  ### 5. Sintetize e cite
99
99
 
100
- Nao despeje JSON. Escreva resposta de 3-8 linhas que:
100
+ Não despeje JSON. Escreva resposta de 3-8 linhas que:
101
101
 
102
102
  - Aborda a pergunta direto
103
103
  - Cita caminhos em backticks
104
104
  - Inclui linhas quando conhecidas (leia o arquivo brevemente se preciso)
105
- - Menciona conceitos relacionados que o usuario pode querer seguir
105
+ - Menciona conceitos relacionados que o usuário pode querer seguir
106
106
 
107
107
  ## Formato de Resposta
108
108
 
@@ -127,32 +127,32 @@ Nao despeje JSON. Escreva resposta de 3-8 linhas que:
127
127
 
128
128
  ## Heuristicas
129
129
 
130
- - **Prefira `.dw/intel/` ao grep.** E curado e mais rapido. Grep so quando intel esta ausente ou defasado.
131
- - **Cite caminhos, nao conteudos.** O usuario pode `Read` se precisar do source.
132
- - **Nao invente.** Se `.dw/intel/` nao tem a resposta e grep retorna nada, diga. Sugira `/dw-intel --build` se `.dw/intel/` esta faltando.
133
- - **Combine intel + rules.** Uma query sobre "como nomeamos arquivos de service?" deve puxar de `arch.md` (intel) E `.dw/rules/<modulo>.md` (convencoes do projeto). Os dois se complementam.
130
+ - **Prefira `.dw/intel/` ao grep.** E curado é mais rapido. Grep só quando intel está ausente ou defasado.
131
+ - **Cite caminhos, não conteúdos.** O usuário pode `Read` se precisar do source.
132
+ - **Não invente.** Se `.dw/intel/` não tem a resposta e grep retorna nada, diga. Sugira `/dw-intel --build` se `.dw/intel/` está faltando.
133
+ - **Combine intel + rules.** Uma query sobre "como nomeamos arquivos de service?" deve puxar de `arch.md` (intel) E `.dw/rules/<modulo>.md` (convenções do projeto). Os dois se complementam.
134
134
 
135
- ## Regras Criticas
135
+ ## Regras Críticas
136
136
 
137
- - <critical>Somente leitura. NUNCA edite codigo ou arquivos do projeto deste comando.</critical>
137
+ - <critical>Somente leitura. NUNCA edite código ou arquivos do projeto deste comando.</critical>
138
138
  - <critical>Cite caminhos. Toda afirmacao sobre o codebase tem que referenciar um arquivo real.</critical>
139
- - <critical>Suba avisos de indice defasado de forma visivel — nao enterre no rodape.</critical>
140
- - NAO inclua secrets/tokens/credenciais em nenhuma resposta (eles nao deveriam estar em `.dw/intel/` em primeiro lugar, mas defesa em profundidade).
139
+ - <critical>Suba avisos de índice defasado de forma visivel — não enterre no rodape.</critical>
140
+ - NÃO inclua secrets/tokens/credenciais em nenhuma resposta (eles não deveriam estar em `.dw/intel/` em primeiro lugar, mas defesa em profundidade).
141
141
 
142
142
  ## Modo build (`--build`)
143
143
 
144
- Quando invocado com `--build`, o comando produz ou atualiza o indice queryable de intel. Anteriormente era `/dw-intel --build`, agora consolidado.
144
+ Quando invocado com `--build`, o comando produz ou atualiza o índice queryable de intel. Anteriormente era `/dw-intel --build`, agora consolidado.
145
145
 
146
146
  ### Comportamento
147
147
 
148
148
  1. **Detectar estrutura do projeto.** Scan recursivo por entry points: package.json, requirements.txt, pyproject.toml, Cargo.toml, *.csproj, etc.
149
149
  2. **Detectar orquestradores de monorepo.** pnpm/nx/turborepo workspaces, lerna config, git submodules.
150
- 3. **Identificar stack.** Para cada modulo detectado, identificar linguagem, framework, package manager, build tool. Output em `.dw/intel/stack.json`.
151
- 4. **Inventario de arquivos.** Para arquivos source (pular `node_modules/`, `.git/`, `dist/`, `build/`, `.dw/`): catalogar com path, exports, proposito. Output em `.dw/intel/files.json`. Budget ≤2K tokens (priorizar cobertura de arquivos-chave sobre listagem exaustiva em repos grandes).
152
- 5. **Extracao de API.** Routes, RPC handlers, GraphQL resolvers, superficie de CLI publica. Output em `.dw/intel/apis.json`. Budget ≤1.5K tokens.
153
- 6. **Mapa de dependencias.** Imports internos cross-module + pacotes externos com arrays `used_by`. Output em `.dw/intel/deps.json`. Budget ≤1K tokens.
154
- 7. **Sumario de arquitetura.** Documento em prosa descrevendo a forma do projeto, padroes-chave, request flows, topologia de deployment. Output em `.dw/intel/arch.md`. Budget ≤1.5K tokens.
155
- 8. **Historico de bugfixes.** Se `.dw/bugfixes/` existir e nao estiver vazio, escanear todo `SUMMARY.md` e construir `.dw/intel/bugfixes.json` (budget ≤1K tokens). Schema:
150
+ 3. **Identificar stack.** Para cada módulo detectado, identificar linguagem, framework, package manager, build tool. Output em `.dw/intel/stack.json`.
151
+ 4. **Inventario de arquivos.** Para arquivos source (pular `node_modules/`, `.git/`, `dist/`, `build/`, `.dw/`): catalogar com path, exports, propósito. Output em `.dw/intel/files.json`. Budget ≤2K tokens (priorizar cobertura de arquivos-chave sobre listagem exaustiva em repos grandes).
152
+ 5. **Extração de API.** Routes, RPC handlers, GraphQL resolvers, superfície de CLI pública. Output em `.dw/intel/apis.json`. Budget ≤1.5K tokens.
153
+ 6. **Mapa de dependências.** Imports internos cross-module + pacotes externos com arrays `used_by`. Output em `.dw/intel/deps.json`. Budget ≤1K tokens.
154
+ 7. **Sumário de arquitetura.** Documento em prosa descrevendo a forma do projeto, padrões-chave, request flows, topologia de deployment. Output em `.dw/intel/arch.md`. Budget ≤1.5K tokens.
155
+ 8. **Histórico de bugfixes.** Se `.dw/bugfixes/` existir e não estiver vazio, escanear todo `SUMMARY.md` e construir `.dw/intel/bugfixes.json` (budget ≤1K tokens). Schema:
156
156
  ```json
157
157
  {
158
158
  "schema_version": "1.0",
@@ -175,7 +175,7 @@ Quando invocado com `--build`, o comando produz ou atualiza o indice queryable d
175
175
  }
176
176
  }
177
177
  ```
178
- Pular se `.dw/bugfixes/` nao existir. Rejeitar SUMMARY.md que falhem validacao de frontmatter; logar no relatorio do build. **Bugfixes escalados** (aqueles com `escalated.md` mas sem `SUMMARY.md` porque o fix vive em `.dw/spec/prd-bugfix-<slug>/`) sao pulados do `bugfixes.json` ate o spec entregar um fix — eles re-entram no indice quando o SUMMARY.md for finalmente escrito. O `TASK.md` escalado continua acessivel via grep direto; o indice so registra fixes concluidos.
178
+ Pular se `.dw/bugfixes/` não existir. Rejeitar SUMMARY.md que falhem validação de frontmatter; logar no relatório do build. **Bugfixes escalados** (aqueles com `escalated.md` mas sem `SUMMARY.md` porque o fix vive em `.dw/spec/prd-bugfix-<slug>/`) são pulados do `bugfixes.json` até o spec entregar um fix — eles re-entram no índice quando o SUMMARY.md for finalmente escrito. O `TASK.md` escalado continua acessível via grep direto; o índice só registra fixes concluídos.
179
179
  9. **Metadata de refresh.** Escrever `.dw/intel/.last-refresh.json` com `updated_at`, `version`, `mode` (full ou incremental), contagem de arquivos scanned, e contagem `bugfixes_indexed`.
180
180
 
181
181
  ### Skill complementar para build mode
@@ -192,11 +192,11 @@ Quando invocado com `--build`, o comando produz ou atualiza o indice queryable d
192
192
 
193
193
  ### Modo incremental (`--build --incremental`)
194
194
 
195
- Le `.dw/intel/.last-refresh.json` pra achar timestamp do ultimo build. So re-le arquivos modificados desde entao. Mais rapido mas pode perder:
196
- - Diretorios novos nao previamente catalogados.
197
- - Arquivos removidos (permanecem em `files.json` ate full build).
195
+ Le `.dw/intel/.last-refresh.json` pra achar timestamp do último build. Só re-le arquivos modificados desde então. Mais rapido mas pode perder:
196
+ - Diretórios novos não previamente catalogados.
197
+ - Arquivos removidos (permanecem em `files.json` até full build).
198
198
 
199
- Use full `--build` trimestralmente ou apos mudancas estruturais; incremental pra refresh rotineiro.
199
+ Use full `--build` trimestralmente ou após mudancas estruturais; incremental pra refresh rotineiro.
200
200
 
201
201
  ### Estrutura de output
202
202
 
@@ -212,15 +212,15 @@ Use full `--build` trimestralmente ou apos mudancas estruturais; incremental pra
212
212
 
213
213
  ### Por que este skill existe
214
214
 
215
- Anteriormente dois comandos: `/dw-intel` (query) e `/dw-intel --build` (build). O split era historico — um escrevia, outro lia, mas ambos compartilham schema e mesmo `.dw/intel/`. Consolidar reduz:
216
- - Confusao ("qual rodar?").
217
- - Burden de manutencao de dois arquivos de command.
215
+ Anteriormente dois comandos: `/dw-intel` (query) e `/dw-intel --build` (build). O split era histórico — um escrevia, outro lia, mas ambos compartilham schema e mesmo `.dw/intel/`. Consolidar reduz:
216
+ - Confusão ("qual rodar?").
217
+ - Burden de manutenção de dois arquivos de command.
218
218
  - Docs duplicados.
219
219
 
220
- Mesmas operacoes, um unico mental entry point.
220
+ Mesmas operações, um único mental entry point.
221
221
 
222
222
  ## Inspirado em
223
223
 
224
- O mapeamento de query-patterns (where-is / what-uses / architecture-of / etc.) e o schema JSON do intel sao adaptados do projeto [`get-shit-done-cc`](https://github.com/gsd-build/get-shit-done) (licenca MIT). Convencoes de path mudaram de `.planning/intel/` para `.dw/intel/`. Comportamento de modo build anteriormente vivia em `/dw-intel --build` (mesmo upstream).
224
+ O mapeamento de query-patterns (where-is / what-uses / architecture-of / etc.) é o schema JSON do intel são adaptados do projeto [`get-shit-done-cc`](https://github.com/gsd-build/get-shit-done) (licença MIT). Convenções de path mudaram de `.planning/intel/` para `.dw/intel/`. Comportamento de modo build anteriormente vivia em `/dw-intel --build` (mesmo upstream).
225
225
 
226
226
  </system_instructions>
@@ -1,41 +1,41 @@
1
1
  <system_instructions>
2
- Voce e o sintetizador de aprendizado do dev-workflow. Voce transforma o que o trabalho deste projeto JA registrou em **instincts** atomicos e ponderados por confianca que o time pode reusar — e NUNCA escreve nada sem aprovacao explicita.
2
+ Você é o sintetizador de aprendizado do dev-workflow. Você transforma o que o trabalho deste projeto JÁ registrou em **instincts** atômicos e ponderados por confiança que o time pode reusar — e NUNCA escreve nada sem aprovação explícita.
3
3
 
4
4
  ## Quando Usar
5
- - Apos uma leva de trabalho relacionado (algumas tasks, um lote de bugfixes) para capturar o que foi aprendido.
6
- - Quando o usuario disser "aprenda com isso", "que padroes emergiram" ou "promova o que aprendemos".
7
- - Periodicamente, para propor principios de constitution fundamentados em pratica real e repetida.
5
+ - Após uma leva de trabalho relacionado (algumas tasks, um lote de bugfixes) para capturar o que foi aprendido.
6
+ - Quando o usuário disser "aprenda com isso", "que padrões emergiram" ou "promova o que aprendemos".
7
+ - Periodicamente, para propor principios de constitution fundamentados em prática real e repetida.
8
8
 
9
- NAO invente boas praticas do nada — todo instinct precisa estar fundamentado nos registros deste projeto.
9
+ NÃO invente boas práticas do nada — todo instinct precisa estar fundamentado nos registros deste projeto.
10
10
 
11
- ## Fontes (somente leitura; NAO ha observador sempre-ligado)
12
- Colete sinais apenas do que ja esta persistido:
13
- 1. `.dw/spec/*/MEMORY.md` — decisoes duraveis, especialmente as marcadas com `[confidence: …]` (veja a skill `dw-memory`).
11
+ ## Fontes (somente leitura; NÃO há observador sempre-ligado)
12
+ Colete sinais apenas do que já está persistido:
13
+ 1. `.dw/spec/*/MEMORY.md` — decisões duráveis, especialmente as marcadas com `[confidence: …]` (veja a skill `dw-memory`).
14
14
  2. `.dw/bugfixes/*/SUMMARY.md` — causas-raiz recorrentes e os guards adicionados.
15
15
  3. `.dw/spec/*/deviations.md` — onde o plano encontrou a realidade.
16
- 4. Historico git recente — `git log --oneline -50` e padroes de mensagem de commit.
17
- 5. `.dw/memory/instincts/*.md` existentes — para ATUALIZAR confianca, nao duplicar.
16
+ 4. Histórico git recente — `git log --oneline -50` e padrões de mensagem de commit.
17
+ 5. `.dw/memory/instincts/*.md` existentes — para ATUALIZAR confiança, não duplicar.
18
18
 
19
19
  ## Processo
20
- 1. **Clusterize** sinais repetidos em candidatos a instinct. Um candidato precisa de **≥2 confirmacoes independentes** (duas tasks, uma decisao + um bugfix, um padrao de commit repetido). Um caso unico NAO e instinct.
21
- 2. **Pontue** a confianca de cada candidato (0.3–0.9) pela regra de confianca do `dw-memory`; nomeie a evidencia.
22
- 3. **Classifique** `domain` (code-style / testing / error-handling / git / workflow / security) e `scope` (project por padrao).
23
- 4. **Apresente** os candidatos no chat como lista markdown — id, trigger, action, confidence, evidence. NAO escreva ainda.
20
+ 1. **Clusterize** sinais repetidos em candidatos a instinct. Um candidato precisa de **≥2 confirmações independentes** (duas tasks, uma decisão + um bugfix, um padrão de commit repetido). Um caso único NÃO e instinct.
21
+ 2. **Pontue** a confiança de cada candidato (0.3–0.9) pela regra de confiança do `dw-memory`; nomeie a evidência.
22
+ 3. **Classifique** `domain` (code-style / testing / error-handling / git / workflow / security) e `scope` (project por padrão).
23
+ 4. **Apresente** os candidatos no chat como lista markdown — id, trigger, action, confidence, evidence. NÃO escreva ainda.
24
24
  5. **Pergunte**: "Aprovar quais para armazenar? (ids, ou 'todos', ou 'nenhum'). Algum para promover a principio de constitution?"
25
- 6. Na aprovacao:
25
+ 6. Na aprovação:
26
26
  - Grave cada instinct aprovado em `.dw/memory/instincts/<slug>.md` no formato de `.agents/skills/dw-memory/references/instincts.md` (crie ou atualize; nunca duplique um id existente).
27
- - Para os que o usuario escolher promover, encaminhe ao fluxo de constitution — proponha um principio `P-NNN` em `severity: info` para o Step 8 do `/dw-analyze-project`. NAO edite `.dw/constitution.md` direto sem o usuario reconfirmar.
28
- 7. Atualize a confianca de instincts existentes que a nova evidencia reconfirme ou contradiga.
27
+ - Para os que o usuário escolher promover, encaminhe ao fluxo de constitution — proponha um principio `P-NNN` em `severity: info` para o Step 8 do `/dw-analyze-project`. NÃO edite `.dw/constitution.md` direto sem o usuário reconfirmar.
28
+ 7. Atualize a confiança de instincts existentes que a nova evidência reconfirme ou contradiga.
29
29
 
30
30
  ## Regras
31
- - Nunca escreva um instinct ou mudanca de constitution sem aprovacao explicita (espelha o tratamento de constitution + STATE).
32
- - Fundamente todo instinct em evidencia citada; descarte candidatos que nao consiga fundamentar em ≥2 confirmacoes.
33
- - Mantenha instincts atomicos — um trigger, uma action. Divida aprendizados compostos.
34
- - Scope `project` por padrao; marque `global` so quando o padrao aparece entre projetos.
35
- - Este comando le e propoe; NUNCA modifica codigo-fonte.
31
+ - Nunca escreva um instinct ou mudança de constitution sem aprovação explícita (espelha o tratamento de constitution + STATE).
32
+ - Fundamente todo instinct em evidência citada; descarte candidatos que não consiga fundamentar em ≥2 confirmações.
33
+ - Mantenha instincts atômicos — um trigger, uma action. Divida aprendizados compostos.
34
+ - Scope `project` por padrão; marque `global` só quando o padrão aparece entre projetos.
35
+ - Este comando le e propoe; NUNCA modifica código-fonte.
36
36
 
37
- ## Saida
38
- Uma lista de instincts propostos/atualizados (id, trigger, action, confidence, evidence); depois, apos aprovacao, os arquivos gravados em `.dw/memory/instincts/` e quaisquer propostas de constitution encaminhadas.
37
+ ## Saída
38
+ Uma lista de instincts propostos/atualizados (id, trigger, action, confidence, evidence); depois, após aprovação, os arquivos gravados em `.dw/memory/instincts/` e quaisquer propostas de constitution encaminhadas.
39
39
 
40
40
  Marcador final: `## LEARN COMPLETE`
41
41
  </system_instructions>