@brunosps00/dev-workflow 1.7.1 → 2.1.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 (114) hide show
  1. package/.claude-plugin/marketplace.json +1 -0
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +305 -0
  4. package/README.md +7 -5
  5. package/lib/agents.js +6 -1
  6. package/lib/build-plugin.js +4 -1
  7. package/lib/constants.js +4 -2
  8. package/lib/init.js +14 -0
  9. package/lib/install-state.js +8 -4
  10. package/lib/validate.js +21 -0
  11. package/package.json +2 -1
  12. package/scaffold/agents/core/dw-build-fixer.md +0 -1
  13. package/scaffold/agents/core/dw-code-explorer.md +0 -1
  14. package/scaffold/agents/core/dw-code-reviewer.md +0 -1
  15. package/scaffold/agents/core/dw-planner.md +0 -1
  16. package/scaffold/agents/core/dw-test-author.md +0 -1
  17. package/scaffold/agents/csharp/dw-csharp-reviewer.md +0 -1
  18. package/scaffold/agents/csharp/dw-dotnet-build-fixer.md +0 -1
  19. package/scaffold/agents/frontend/dw-qa-runner.md +0 -1
  20. package/scaffold/agents/python/dw-python-build-fixer.md +0 -1
  21. package/scaffold/agents/python/dw-python-reviewer.md +0 -1
  22. package/scaffold/agents/rust/dw-rust-build-fixer.md +0 -1
  23. package/scaffold/agents/rust/dw-rust-reviewer.md +0 -1
  24. package/scaffold/agents/security/dw-security-reviewer.md +0 -1
  25. package/scaffold/agents/security/dw-silent-failure-hunter.md +0 -1
  26. package/scaffold/agents/typescript/dw-typescript-build-fixer.md +0 -1
  27. package/scaffold/agents/typescript/dw-typescript-reviewer.md +0 -1
  28. package/scaffold/config/routing.json +60 -0
  29. package/scaffold/en/commands/dw-brainstorm.md +12 -8
  30. package/scaffold/en/commands/dw-bugfix.md +4 -2
  31. package/scaffold/en/commands/dw-claude-run.md +5 -1
  32. package/scaffold/en/commands/dw-codex-run.md +5 -1
  33. package/scaffold/en/commands/dw-dockerize.md +14 -7
  34. package/scaffold/en/commands/dw-generate-pr.md +13 -0
  35. package/scaffold/en/commands/dw-new-project.md +14 -13
  36. package/scaffold/en/commands/dw-plan.md +2 -2
  37. package/scaffold/en/commands/dw-refactor.md +1 -0
  38. package/scaffold/en/commands/dw-review.md +33 -2
  39. package/scaffold/en/commands/dw-run.md +2 -1
  40. package/scaffold/en/commands/dw-triage.md +220 -0
  41. package/scaffold/en/templates/idea-onepager.md +28 -0
  42. package/scaffold/en/templates/project-onepager.md +6 -5
  43. package/scaffold/en/templates/task-template.md +2 -1
  44. package/scaffold/en/templates/tasks-template.md +11 -8
  45. package/scaffold/en/templates/triage-needs-info-template.md +23 -0
  46. package/scaffold/en/templates/triage-out-of-scope-template.md +36 -0
  47. package/scaffold/en/templates/triage-record-template.md +88 -0
  48. package/scaffold/pt-br/commands/dw-autopilot.md +81 -81
  49. package/scaffold/pt-br/commands/dw-brainstorm.md +12 -9
  50. package/scaffold/pt-br/commands/dw-bugfix.md +4 -2
  51. package/scaffold/pt-br/commands/dw-claude-run.md +23 -19
  52. package/scaffold/pt-br/commands/dw-codex-run.md +22 -18
  53. package/scaffold/pt-br/commands/dw-context-budget.md +10 -10
  54. package/scaffold/pt-br/commands/dw-copilot-run.md +20 -20
  55. package/scaffold/pt-br/commands/dw-dockerize.md +106 -99
  56. package/scaffold/pt-br/commands/dw-find-skills.md +52 -52
  57. package/scaffold/pt-br/commands/dw-generate-pr.md +13 -0
  58. package/scaffold/pt-br/commands/dw-goal.md +41 -41
  59. package/scaffold/pt-br/commands/dw-harness-audit.md +11 -11
  60. package/scaffold/pt-br/commands/dw-intel.md +70 -70
  61. package/scaffold/pt-br/commands/dw-learn.md +24 -24
  62. package/scaffold/pt-br/commands/dw-new-project.md +93 -92
  63. package/scaffold/pt-br/commands/dw-open-design.md +53 -53
  64. package/scaffold/pt-br/commands/dw-opportunities.md +45 -45
  65. package/scaffold/pt-br/commands/dw-pause.md +39 -39
  66. package/scaffold/pt-br/commands/dw-plan.md +3 -3
  67. package/scaffold/pt-br/commands/dw-refactor.md +31 -30
  68. package/scaffold/pt-br/commands/dw-resume.md +22 -22
  69. package/scaffold/pt-br/commands/dw-review.md +33 -2
  70. package/scaffold/pt-br/commands/dw-run.md +2 -1
  71. package/scaffold/pt-br/commands/dw-skill-health.md +10 -10
  72. package/scaffold/pt-br/commands/dw-subtask-complete.md +4 -4
  73. package/scaffold/pt-br/commands/dw-subtask-start.md +4 -4
  74. package/scaffold/pt-br/commands/dw-triage.md +220 -0
  75. package/scaffold/pt-br/templates/bugfix-summary-template.md +20 -20
  76. package/scaffold/pt-br/templates/concerns-template.md +20 -20
  77. package/scaffold/pt-br/templates/idea-onepager.md +28 -0
  78. package/scaffold/pt-br/templates/project-onepager.md +35 -34
  79. package/scaffold/pt-br/templates/state-template.md +13 -13
  80. package/scaffold/pt-br/templates/task-template.md +2 -1
  81. package/scaffold/pt-br/templates/tasks-template.md +11 -8
  82. package/scaffold/pt-br/templates/triage-needs-info-template.md +23 -0
  83. package/scaffold/pt-br/templates/triage-out-of-scope-template.md +36 -0
  84. package/scaffold/pt-br/templates/triage-record-template.md +88 -0
  85. package/scaffold/scripts/hooks/git-guardrails.mjs +41 -24
  86. package/scaffold/skills/docker-compose-recipes/SKILL.md +2 -4
  87. package/scaffold/skills/docker-compose-recipes/references/compose-composition.md +2 -2
  88. package/scaffold/skills/docker-compose-recipes/references/env-conventions.md +16 -9
  89. package/scaffold/skills/docker-compose-recipes/references/healthcheck-patterns.md +0 -1
  90. package/scaffold/skills/docker-compose-recipes/references/prod-vs-dev.md +7 -2
  91. package/scaffold/skills/docker-compose-recipes/services/elasticsearch.yml +3 -3
  92. package/scaffold/skills/docker-compose-recipes/services/meilisearch.yml +2 -2
  93. package/scaffold/skills/docker-compose-recipes/services/minio.yml +8 -4
  94. package/scaffold/skills/docker-compose-recipes/services/mysql.yml +4 -4
  95. package/scaffold/skills/docker-compose-recipes/services/postgres.yml +2 -2
  96. package/scaffold/skills/docker-compose-recipes/services/rabbitmq.yml +3 -3
  97. package/scaffold/skills/docker-compose-recipes/services/typesense.yml +3 -3
  98. package/scaffold/skills/dw-cli-run/SKILL.md +42 -38
  99. package/scaffold/skills/dw-cli-run/references/dispatch-tuning.md +85 -0
  100. package/scaffold/skills/dw-debug-protocol/SKILL.md +2 -0
  101. package/scaffold/skills/dw-debug-protocol/references/six-step-triage.md +60 -1
  102. package/scaffold/skills/dw-execute-phase/SKILL.md +4 -2
  103. package/scaffold/skills/dw-execute-phase/agents/executor.md +4 -2
  104. package/scaffold/skills/dw-execute-phase/agents/plan-checker.md +9 -7
  105. package/scaffold/skills/dw-execute-phase/references/atomic-commits.md +12 -8
  106. package/scaffold/skills/dw-execute-phase/references/plan-verification.md +6 -4
  107. package/scaffold/skills/dw-execute-phase/references/wave-coordination.md +14 -14
  108. package/scaffold/skills/dw-grilling/SKILL.md +17 -7
  109. package/scaffold/skills/dw-grilling/references/decision-tree.md +30 -7
  110. package/scaffold/skills/dw-simplification/references/deep-modules.md +50 -0
  111. package/scaffold/skills/dw-testing-discipline/SKILL.md +3 -1
  112. package/scaffold/skills/dw-testing-discipline/references/tdd-loop.md +83 -0
  113. package/scaffold/skills/docker-compose-recipes/services/mailhog.yml +0 -23
  114. package/scaffold/skills/docker-compose-recipes/services/postgres-pgvector.yml +0 -31
@@ -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>