oxe-cc 0.6.4 → 0.6.6

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 (43) hide show
  1. package/.cursor/commands/oxe-ask.md +11 -0
  2. package/.cursor/commands/oxe-execute.md +1 -1
  3. package/.cursor/commands/oxe-session.md +11 -0
  4. package/.github/prompts/oxe-ask.prompt.md +12 -0
  5. package/.github/prompts/oxe-execute.prompt.md +1 -1
  6. package/.github/prompts/oxe-session.prompt.md +12 -0
  7. package/README.md +363 -323
  8. package/bin/banner.txt +1 -1
  9. package/bin/lib/oxe-project-health.cjs +284 -91
  10. package/bin/oxe-cc.js +305 -123
  11. package/commands/oxe/ask.md +14 -0
  12. package/commands/oxe/session.md +16 -0
  13. package/oxe/templates/CONFIG.md +3 -2
  14. package/oxe/templates/PLAN.template.md +22 -7
  15. package/oxe/templates/SESSION.template.md +32 -0
  16. package/oxe/templates/STATE.md +10 -5
  17. package/oxe/templates/config.template.json +3 -2
  18. package/oxe/workflows/ask.md +62 -0
  19. package/oxe/workflows/checkpoint.md +10 -9
  20. package/oxe/workflows/debug.md +6 -5
  21. package/oxe/workflows/discuss.md +8 -7
  22. package/oxe/workflows/execute.md +37 -28
  23. package/oxe/workflows/forensics.md +6 -6
  24. package/oxe/workflows/help.md +39 -19
  25. package/oxe/workflows/milestone.md +12 -13
  26. package/oxe/workflows/next.md +16 -13
  27. package/oxe/workflows/obs.md +9 -8
  28. package/oxe/workflows/plan-agent.md +6 -4
  29. package/oxe/workflows/plan.md +73 -32
  30. package/oxe/workflows/project.md +1 -1
  31. package/oxe/workflows/quick.md +11 -7
  32. package/oxe/workflows/references/flow-robustness-contract.md +80 -0
  33. package/oxe/workflows/references/session-path-resolution.md +71 -0
  34. package/oxe/workflows/research.md +9 -8
  35. package/oxe/workflows/security.md +7 -6
  36. package/oxe/workflows/session.md +153 -0
  37. package/oxe/workflows/spec.md +41 -27
  38. package/oxe/workflows/ui-review.md +3 -3
  39. package/oxe/workflows/ui-spec.md +3 -3
  40. package/oxe/workflows/validate-gaps.md +5 -4
  41. package/oxe/workflows/verify.md +37 -21
  42. package/oxe/workflows/workstream.md +16 -15
  43. package/package.json +1 -1
package/README.md CHANGED
@@ -1,323 +1,363 @@
1
- <div align="center">
2
-
3
- <p align="center">
4
- <img src="assets/readme-banner.svg" alt="OXE" width="920" />
5
- </p>
6
-
7
- [![npm](https://img.shields.io/npm/v/oxe-cc.svg?style=flat-square)](https://www.npmjs.com/package/oxe-cc)
8
- [![license](https://img.shields.io/npm/l/oxe-cc.svg?style=flat-square)](LICENSE)
9
-
10
- **Versão:** `0.6.4` · [package.json](package.json)
11
-
12
- ```bash
13
- npx oxe-cc@latest
14
- ```
15
-
16
- </div>
17
-
18
- ---
19
-
20
- ## O que é o OXE
21
-
22
- OXE é um **framework de desenvolvimento assistido por IA** baseado em três princípios:
23
-
24
- - **Spec-driven design** — antes de escrever código, você define *o que* construir e *como saber que está pronto*. Essa especificação restringe e guia tudo o que vem depois.
25
- - **Context engineering** — o estado do trabalho fica em arquivos pequenos dentro de `.oxe/`, não na memória do chat. O agente lê o que precisa, quando precisa — sem sobrecarregar o contexto com decisões já tomadas.
26
- - **Plan-Driven Dynamic Agents** — quando há múltiplos domínios, o plano cria agentes específicos para *aquela demanda*. Agentes não são reaproveitados entre projetos ou demandas.
27
-
28
- O resultado: **menos requisições**, **mais coerência**, e um fluxo que funciona do mesmo jeito em qualquer IDE.
29
-
30
- ---
31
-
32
- ## Os 8 comandos que você precisa conhecer
33
-
34
- ```
35
- /oxe → onde estou / o que faço / help
36
- /oxe-obsregistrei algo importante (incorporado automaticamente)
37
- /oxe-quick tarefa pequena, sem cerimônia
38
- /oxe-scan mapeia o projeto (ou atualiza se já mapeado)
39
- /oxe-specnova feature: perguntas requisitos roteiro
40
- /oxe-plantarefas por onda (--agents para multi-agente)
41
- /oxe-execute implementar (A: 1 sessão | B: por onda | C: por tarefa)
42
- /oxe-verify validar que está pronto
43
- ```
44
-
45
- Tudo o mais é ativado automaticamente por contexto ou existe como escape hatch.
46
-
47
- ---
48
-
49
- ## A cadeia
50
-
51
- ```
52
- /oxe-obs (qualquer momento)
53
-
54
- /oxe-scan → /oxe-spec → /oxe-plan ──────────→ /oxe-execute → /oxe-verify → /oxe-retro
55
- ↓ ↓
56
- /oxe-quick (trabalho pequeno) .oxe/LESSONS.md
57
-
58
- (alimenta o próximo ciclo)
59
- ```
60
-
61
- Cada passo lê o anterior como contexto e escreve seu artefato em `.oxe/`. Nenhum passo depende de você re-explicar o que já foi decidido. Os erros do ciclo anterior não se repetem.
62
-
63
- ---
64
-
65
- ## Como cada comando fica mais inteligente
66
-
67
- | Comando | Inteligência embutida |
68
- |---------|----------------------|
69
- | `/oxe` | Sem input → próximo passo. Com texto → roteamento. Com "help" → 8 comandos. |
70
- | `/oxe-scan` | Se `.oxe/codebase/` já existe → modo refresh automático. `--full` força scan completo. |
71
- | `/oxe-spec` | **Auto-reflexão semântica** antes da aprovação: detecta contradições, critérios vagos, escopo creep e conflitos com stack — sem requisição extra. Lê `LESSONS.md` para não repetir erros do ciclo anterior. |
72
- | `/oxe-plan` | **Test-first:** `Verificar` vem antes de `Implementar` em cada tarefa. `Complexidade: S/M/L/XL` — tarefas XL bloqueiam o gate sem sub-tarefas. Com `--agents`: `model_hint` por agente orienta qual tier de modelo usar (schema v3). |
73
- | `/oxe-execute` | Verificar falha → diagnóstico inline (2-3 hipóteses + fix). Sem precisar chamar `/oxe-debug`. Exibe `model_hint` ao iniciar cada agente do blueprint. |
74
- | `/oxe-verify` | Até 6 camadas por config: audit + critérios + decisões + UAT + gaps (`verification_depth: thorough`) + OWASP (`security_in_verify: true`). Sugere `/oxe-retro` ao concluir. |
75
- | `/oxe-retro` | Sintetiza 3–5 lições prescritivas em `LESSONS.md` — consumidas automaticamente pelo próximo spec/plan. |
76
- | `/oxe-research` | **Thinking depth:** classifica `surface` / `standard` / `deep` e recomenda raciocínio estendido para reverse engineering e arquitetura complexa. |
77
- | `/oxe-loop` | Retry iterativo de onda: executa → verifica → diagnostica (2-3 hipóteses) → corrige → repete até `max` tentativas; escala para `/oxe-forensics` se esgotar. |
78
- | `/oxe-security` | Auditoria OWASP Top 10 filtrada pelo stack. Achados P0/P1/P2 vinculados a tarefas existentes. Integrado ao verify via `security_in_verify: true`. |
79
- | `/oxe-project` | `milestone` + `workstream` + `checkpoint` em um único comando. |
80
-
81
- ---
82
-
83
- ## Comandos completos
84
-
85
- ### Fluxo principal
86
-
87
- | Comando | O que faz | Artefato |
88
- |---------|-----------|----------|
89
- | `/oxe` | Entrada universal: próximo passo, roteamento ou help | — |
90
- | `/oxe-scan` | Mapeia o repo (bootstrap) ou atualiza mapas (refresh automático) | `.oxe/codebase/*.md` |
91
- | `/oxe-spec` | Spec em 5 fases: perguntas → pesquisa → requisitos R-ID → roteiro → aprovação | `.oxe/SPEC.md` + `.oxe/ROADMAP.md` |
92
- | `/oxe-plan` | Plano por ondas. `--agents` ativa blueprint com `model_hint` por agente | `.oxe/PLAN.md` [+ `plan-agents.json`] |
93
- | `/oxe-execute` | Execução A/B/C com debug inline automático em falhas | `.oxe/STATE.md` |
94
- | `/oxe-verify` | Até 6 camadas por config: audit + critérios + decisões + UAT + gaps + segurança | `.oxe/VERIFY.md` |
95
- | `/oxe-obs` | Registra observação → propaga automaticamente para R-IDs e Tns afetados → auto-incorporada | `.oxe/OBSERVATIONS.md` |
96
- | `/oxe-quick` | Lean: objetivo → passos → agentes opcionais → verify | `.oxe/QUICK.md` |
97
- | `/oxe-retro` | Retrospectiva: 3–5 lições prescritivas → alimenta spec/plan do próximo ciclo | `.oxe/LESSONS.md` |
98
- | `/oxe-project` | Unifica: `milestone`, `workstream`, `checkpoint` | vários |
99
-
100
- ### Escape hatches (não precisam ser decorados)
101
-
102
- | Comando | Quando usar |
103
- |---------|-------------|
104
- | `/oxe-research` | Spike, mapa de sistema, engenharia reversa |
105
- | `/oxe-forensics` | Sugerido automaticamente pelo execute/verify em falha persistente |
106
- | `/oxe-debug` | Diagnóstico técnico standalone (integrado ao execute) |
107
- | `/oxe-loop` | Retry iterativo de onda standalone (integrado ao Modo B do execute) |
108
- | `/oxe-security` | Auditoria OWASP standalone (automático no verify via config) |
109
- | `/oxe-validate-gaps` | Auditoria de cobertura standalone (automático no verify via config) |
110
- | `/oxe-ui-spec` | Contrato UI/UX derivado da SPEC |
111
- | `/oxe-ui-review` | Auditoria da implementação UI |
112
- | `/oxe-review-pr` | Revisão de PR/diff |
113
- | `/oxe-discuss` | Decisões D-NN (ativado via `discuss_before_plan: true`) |
114
- | `/oxe-compact` | Refresh explícito do codebase (equivalente a `/oxe-scan` em modo refresh) |
115
-
116
- ---
117
-
118
- ## Conceitos-chave
119
-
120
- ### Context engineering — estado em disco, não no chat
121
-
122
- ```
123
- .oxe/
124
- ├── STATE.md ← fase atual, próximo passo, decisões ativas
125
- ├── SPEC.md ← contrato: critérios A1, A2,
126
- ├── ROADMAP.md ← fases de entrega mapeadas a requisitos
127
- ├── PLAN.md tarefas Tn com verificação por item
128
- ├── VERIFY.md resultado da verificação em até 6 camadas
129
- ├── OBSERVATIONS.md ← observações incorporadas automaticamente
130
- ├── codebase/ ← mapa do repo (stack, estrutura, testes, )
131
- ├── milestones/ arquivo de entregas M-NN
132
- └── workstreams/ ← trilhas paralelas de desenvolvimento
133
- ```
134
-
135
- ### `/oxe-spec` spec em 5 fases com auto-reflexão semântica
136
-
137
- 1. **Perguntas** — blocos de 3-5 por rodada, máximo 3 rodadas
138
- 2. **Pesquisa** — proposta inline na Fase 2 (sem sair do spec)
139
- 3. **Requisitos** — tabela R-ID com v1/v2/fora e critérios A*
140
- 4. **Roteiro** fases de entrega → `.oxe/ROADMAP.md`
141
- 5. **Auto-reflexão** *(automática, sem requisição extra)* — detecta contradições, critérios vagos, escopo creep, conflitos com stack. Corrige antes de apresentar ao usuário.
142
- 6. **Aprovação** → instrui `/oxe-plan` ou `/oxe-plan --agents`
143
-
144
- A spec `.oxe/LESSONS.md` antes de iniciar lições do ciclo anterior informam as perguntas e os critérios.
145
-
146
- ### `/oxe-execute` — economia de requisições com debug automático
147
-
148
- ```
149
- A) Completo → todas as ondas em 1 sessão (ideal: Claude, Copilot, Gemini)
150
- B) Por onda → onda 1, você verifica, chama de novo (N sessões)
151
- C) Por tarefa → máximo controle (N tarefas = N sessões)
152
- ```
153
-
154
- Se uma tarefa falha: diagnóstico inline automático (2-3 hipóteses fix retry). Sem precisar chamar `/oxe-debug` separadamente.
155
-
156
- ### `/oxe-obs` observação sem re-explicar
157
-
158
- ```
159
- /oxe-obs JWT expiration deve ser configurável via env var, não hardcoded
160
- ```
161
-
162
- O próximo `/oxe-plan`, `/oxe-spec` ou `/oxe-execute` incorpora automaticamente sem prompt extra.
163
-
164
- ### `/oxe-plan` — test-first com complexidade explícita
165
-
166
- Cada tarefa usa a ordem **Verificar → Implementar** (test-first):
167
- ```
168
- Verificar: como saberei que está pronto? ← definido PRIMEIRO
169
- Implementar: o mínimo para passar o Verificar
170
- Complexidade: S | M | L | XL
171
- ```
172
-
173
- Tarefas `XL` bloqueam o gate sem sub-tarefas ou justificativa. `/oxe-obs` propaga automaticamente constraints para os R-IDs e Tns afetados.
174
-
175
- ### `/oxe-retro` — loop de aprendizado
176
-
177
- ```
178
- /oxe-verify completo
179
-
180
- /oxe-retro → 3–5 lições prescritivas → .oxe/LESSONS.md
181
-
182
- /oxe-spec (próximo ciclo LESSONS)
183
- /oxe-plan (próximo ciclo LESSONS)
184
- ```
185
-
186
- Lições não são diário — são instruções para o próximo ciclo. Exemplo:
187
- > "Tarefas com integração de terceiros: `Complexidade: L` mínimo + `Verificar` com mock fallback"
188
-
189
- ### Plan-Driven Dynamic Agents — agentes por demanda
190
-
191
- Com `/oxe-plan --agents` (ou sugerido quando 3+ domínios detectados):
192
- - `runId` único por demanda nunca reutilizado
193
- - `role` específico ao domínio desta entrega
194
- - `model_hint` por agente: `"fast"` / `"balanced"` / `"powerful"`
195
- - Execute exibe o hint ao iniciar cada agente para o usuário configurar o modelo
196
-
197
- ---
198
-
199
- ## Instalação
200
-
201
- **Requisito:** Node.js 18+
202
-
203
- ```bash
204
- npx oxe-cc@latest
205
- ```
206
-
207
- **Confirmar que funcionou:**
208
-
209
- | IDE | Comando |
210
- |-----|---------|
211
- | Cursor | `/oxe` |
212
- | Copilot (VS Code) | `/oxe` (requer `"chat.promptFiles": true`) |
213
- | Claude Code | `/oxe` ou `oxe` |
214
- | Gemini CLI | `/oxe` após `/commands reload` |
215
- | Codex | `/prompts:oxe` |
216
-
217
- <details>
218
- <summary><strong>Flags de instalação</strong></summary>
219
-
220
- | Flag | Efeito |
221
- |------|--------|
222
- | `--cursor` / `--copilot` | Só uma das stacks |
223
- | `--all-agents` | Cursor + Copilot + Claude + OpenCode + Gemini + Codex + Windsurf + Antigravity |
224
- | `--global` | Layout clássico: `oxe/` na raiz + `.oxe/` |
225
- | `--local` | Layout mínimo: só `.oxe/` (padrão) |
226
- | `--force` / `-f` | Sobrescreve arquivos existentes (use para atualizar) |
227
- | `--dry-run` | Lista ações sem escrever |
228
- | `--oxe-only` | workflows em `.oxe/`, sem integrações IDE |
229
- | `--no-global-cli` / `-l` | Não instala `oxe-cc` globalmente (útil em CI) |
230
- | `OXE_NO_PROMPT=1` | Modo não-interativo (CI) |
231
-
232
- </details>
233
-
234
- <details>
235
- <summary><strong>Atualizar e desinstalar</strong></summary>
236
-
237
- ```bash
238
- npx oxe-cc@latest --force # atualizar workflows
239
- npx oxe-cc update --check # verificar versão sem atualizar
240
- npx oxe-cc uninstall --ide-only # remove integrações (mantém .oxe/)
241
- ```
242
-
243
- </details>
244
-
245
- <details>
246
- <summary><strong>Desenvolvimento (contribuir)</strong></summary>
247
-
248
- ```bash
249
- git clone https://github.com/propagno/oxe-build.git
250
- cd oxe-build
251
- npm test # 144 testes
252
- node bin/oxe-cc.js --help
253
- ```
254
-
255
- </details>
256
-
257
- ---
258
-
259
- ## CLI (`oxe-cc`)
260
-
261
- | Comando | O que faz |
262
- |---------|-----------|
263
- | `oxe-cc` / `oxe-cc install` | Instala workflows e integrações |
264
- | `oxe-cc doctor` | Diagnóstico completo: Node, workflows, config, STATE, scan antigo |
265
- | `oxe-cc status` | Próximo passo sugerido |
266
- | `oxe-cc status --json` | Mesmo, em JSON (para pipelines) |
267
- | `oxe-cc update` | Atualiza workflows para a versão mais recente |
268
- | `oxe-cc init-oxe` | Bootstrap do `.oxe/` (STATE, config, codebase/) |
269
- | `oxe-cc uninstall` | Remove integrações OXE do HOME e do repo |
270
-
271
- ---
272
-
273
- ## Configuração
274
-
275
- Arquivo `.oxe/config.json`. Principais opções:
276
-
277
- | Chave | Padrão | Descrição |
278
- |-------|--------|-----------|
279
- | `profile` | `"balanced"` | `strict` / `balanced` / `fast` / `legacy` |
280
- | `verification_depth` | `"standard"` | `"thorough"` ativa gaps automático no verify (Camada 5) |
281
- | `security_in_verify` | `false` | `true` ativa OWASP automático no verify (Camada 6) |
282
- | `discuss_before_plan` | `false` | Exige `/oxe-discuss` antes do `/oxe-plan` |
283
- | `scale_adaptive` | `true` | Scan sugere o profile pelo tamanho do projeto |
284
- | `scan_max_age_days` | — | Doctor avisa quando o scan estiver velho |
285
- | `plugins` | — | Hooks de lifecycle em `.oxe/plugins/*.cjs` |
286
-
287
- ---
288
-
289
- ## SDK
290
-
291
- ```js
292
- const oxe = require('oxe-cc');
293
-
294
- const plan = oxe.parsePlan(fs.readFileSync('.oxe/PLAN.md', 'utf8'));
295
- const spec = oxe.parseSpec(fs.readFileSync('.oxe/SPEC.md', 'utf8'));
296
- const state = oxe.parseState(fs.readFileSync('.oxe/STATE.md', 'utf8'));
297
-
298
- const fidelity = oxe.validateDecisionFidelity(discussMd, planMd);
299
- const result = oxe.runDoctorChecks({ projectRoot: process.cwd() });
300
- const expanded = oxe.health.expandExecutionProfile('strict');
301
- ```
302
-
303
- TypeScript: [`lib/sdk/index.d.ts`](lib/sdk/index.d.ts) · Docs: [`lib/sdk/README.md`](lib/sdk/README.md)
304
-
305
- ---
306
-
307
- ## Resolução de problemas
308
-
309
- | Situação | O que tentar |
310
- |----------|-------------|
311
- | Comandos não aparecem no Cursor | Confirme `~/.cursor/commands/`; reinicie o Cursor |
312
- | `/oxe-*` não aparecem no Copilot | Ative `"chat.promptFiles": true`; confirme `~/.copilot/prompts/` |
313
- | Arquivos não atualizam | Reinstale com `--force` |
314
- | `ETARGET` / versão não encontrada | `npm cache clean --force` ou `npx oxe-cc@0.6.0` |
315
- | Erro no WSL sobre Node | Use Node instalado dentro do WSL |
316
-
317
- `oxe-cc --help` · `oxe-cc doctor` · `OXE_NO_BANNER=1` desativa o banner
318
-
319
- ---
320
-
321
- ## Licença
322
-
323
- [GPL-3.0](LICENSE)
1
+ <div align="center">
2
+
3
+ <p align="center">
4
+ <img src="assets/readme-banner.svg" alt="OXE" width="920" />
5
+ </p>
6
+
7
+ [![npm](https://img.shields.io/npm/v/oxe-cc.svg?style=flat-square)](https://www.npmjs.com/package/oxe-cc)
8
+ [![license](https://img.shields.io/npm/l/oxe-cc.svg?style=flat-square)](LICENSE)
9
+
10
+ **Versão:** `0.6.4` · [package.json](package.json)
11
+
12
+ ```bash
13
+ npx oxe-cc@latest
14
+ ```
15
+
16
+ </div>
17
+
18
+ ---
19
+
20
+ ## O que é o OXE
21
+
22
+ OXE é um **framework de desenvolvimento assistido por IA** baseado em três princípios:
23
+
24
+ - **Spec-driven design** — antes de escrever código, você define *o que* construir e *como saber que está pronto*. Essa especificação restringe e guia tudo o que vem depois.
25
+ - **Context engineering** — o estado do trabalho fica em arquivos pequenos dentro de `.oxe/`, não na memória do chat. O agente lê o que precisa, quando precisa — sem sobrecarregar o contexto com decisões já tomadas.
26
+ - **Plan-Driven Dynamic Agents** — quando há múltiplos domínios, o plano cria agentes específicos para *aquela demanda*. Agentes não são reaproveitados entre projetos ou demandas.
27
+
28
+ O resultado: **menos requisições**, **mais coerência**, e um fluxo que funciona do mesmo jeito em qualquer IDE.
29
+
30
+ ---
31
+
32
+ ## Comandos principais
33
+
34
+ ```
35
+ /oxe → onde estou / o que faço / help
36
+ /oxe-askentender a situação atual com leitura robusta de STATE + sessão + artefatos
37
+ /oxe-obs registrei algo importante (incorporado automaticamente)
38
+ /oxe-quick tarefa pequena, sem cerimônia
39
+ /oxe-scanmapeia o projeto (ou atualiza se já mapeado)
40
+ /oxe-specnova feature: perguntas requisitos → roteiro
41
+ /oxe-plan tarefas por onda (--agents para multi-agente)
42
+ /oxe-execute implementar (A: completo | B: por onda | C: por tarefa)
43
+ /oxe-verify → validar que está pronto
44
+ ```
45
+
46
+ Tudo o mais é ativado automaticamente por contexto ou chamado só quando necessário.
47
+
48
+ ---
49
+
50
+ ## Sessões OXE
51
+
52
+ Sessões organizam um ciclo completo em `.oxe/sessions/sNNN-slug/` sem misturar artefatos de entregas diferentes na raiz. `spec`, `plan`, `execute`, `verify`, `checkpoint`, `research` e afins respeitam `active_session` em `.oxe/STATE.md`. `oxe-cc status` e `oxe-cc doctor` também devem refletir a sessão ativa, a autoavaliação do plano e a saúde lógica do fluxo.
53
+
54
+ ```text
55
+ .oxe/
56
+ ├── STATE.md
57
+ ├── SESSIONS.md
58
+ ├── global/
59
+ │ ├── LESSONS.md
60
+ │ └── MILESTONES.md
61
+ ├── codebase/
62
+ └── sessions/
63
+ └── s001-exemplo/
64
+ ├── SESSION.md
65
+ ├── spec/
66
+ ├── plan/
67
+ ├── execution/
68
+ ├── verification/
69
+ ├── checkpoints/
70
+ ├── research/
71
+ └── workstreams/
72
+ ```
73
+
74
+ | Subcomando | O que faz |
75
+ |------------|-----------|
76
+ | `/oxe-session new <nome>` | Cria a sessão e define `active_session` |
77
+ | `/oxe-session list` | Lista sessões em `.oxe/SESSIONS.md` |
78
+ | `/oxe-session switch <id>` | Alterna a sessão ativa |
79
+ | `/oxe-session resume <id>` | Alias de `switch` |
80
+ | `/oxe-session status` | Mostra os metadados da sessão ativa |
81
+ | `/oxe-session close` | Arquiva a sessão ativa |
82
+ | `/oxe-session migrate <nome>` | Cria sessão nova e move artefatos session-scoped da raiz |
83
+
84
+ Exemplo de ciclo:
85
+
86
+ ```text
87
+ /oxe-session new auth-redesign
88
+ /oxe-spec
89
+ /oxe-plan
90
+ /oxe-execute
91
+ /oxe-verify
92
+ /oxe-session close
93
+ ```
94
+
95
+ Com sessão ativa:
96
+
97
+ - `spec/` contém `SPEC.md`, `ROADMAP.md`, `DISCUSS.md`, `UI-SPEC.md`
98
+ - `plan/` contém `PLAN.md`, `QUICK.md`, `plan-agents.json`, `quick-agents.json`
99
+ - `execution/` contém o `STATE.md` operacional da trilha, `OBSERVATIONS.md`, `DEBUG.md`, `FORENSICS.md`
100
+ - `verification/` contém `VERIFY.md`, `VALIDATION-GAPS.md`, `SECURITY.md`, `UI-REVIEW.md`
101
+ - `LESSONS.md`, `MILESTONES.md`, `codebase/`, `SESSIONS.md` e o `STATE.md` global permanecem fora da sessão
102
+
103
+ ---
104
+
105
+ ## A cadeia
106
+
107
+ ```
108
+ /oxe-obs (qualquer momento)
109
+
110
+ /oxe-scan → /oxe-spec /oxe-plan ──────────→ /oxe-execute /oxe-verify /oxe-retro
111
+ ↓ ↓
112
+ /oxe-quick (trabalho pequeno) .oxe/global/LESSONS.md
113
+
114
+ (alimenta o próximo ciclo)
115
+ ```
116
+
117
+ Cada passo lê o anterior como contexto e escreve seu artefato no escopo correto: raiz `.oxe/` em modo legado, ou `.oxe/sessions/sNNN-slug/` quando `active_session` está definido. Nenhum passo depende de você re-explicar o que já foi decidido.
118
+
119
+ ---
120
+
121
+ ## Como cada comando funciona
122
+
123
+ | Comando | O que entrega |
124
+ |---------|--------------|
125
+ | `/oxe` | Sem input → próximo passo. Com texto roteamento. Com "help" → 8 comandos. |
126
+ | `/oxe-scan` | Se `.oxe/codebase/` já existe → modo refresh automático. `--full` força scan completo. |
127
+ | `/oxe-spec` | **Auto-reflexão semântica** antes da aprovação: detecta contradições, critérios vagos, escopo creep e conflitos com stack — sem requisição extra. Lê `.oxe/global/LESSONS.md` para não repetir erros do ciclo anterior. |
128
+ | `/oxe-plan` | **Test-first:** `Verificar` vem antes de `Implementar` em cada tarefa. Agora o `PLAN.md` também exige `## Autoavaliação do Plano` com rubrica fixa, `Melhor plano atual` e percentual de confiança determinístico. Com `--agents`: `model_hint` por agente orienta qual tier de modelo usar (schema v3). |
129
+ | `/oxe-execute` | Execução A/B/C. Antes de implementar, valida a autoavaliação do plano e bloqueia execução abaixo do limiar de confiança. Se uma tarefa falha: **diagnóstico inline automático** (2-3 hipóteses + fix + retry). |
130
+ | `/oxe-verify` | Até 6 camadas por config: audit + critérios + decisões + **calibração do plano** + UAT + gaps (`verification_depth: thorough`) + OWASP (`security_in_verify: true`). Sugere `/oxe-retro` ao concluir. |
131
+ | `/oxe-retro` | Sintetiza 3–5 lições prescritivas em `.oxe/global/LESSONS.md` consumidas automaticamente pelo próximo spec/plan. |
132
+ | `/oxe-obs` | Registra observação → propaga automaticamente para R-IDs e Tns afetados no próximo plan/spec/execute. |
133
+ | `/oxe-quick` | Objetivo → passos → agentes opcionais (PDDA lean) → verify. Para correções pontuais e features pequenas. |
134
+ | `/oxe-project` | `milestone` + `workstream` + `checkpoint` em um único comando. |
135
+ | `/oxe-session` | Cria, alterna, retoma, fecha e migra sessões OXE sem misturar artefatos de ciclos diferentes. |
136
+ | `/oxe-ask` | Lê `STATE`, resolve a sessão ativa e responde perguntas situacionais com base nos artefatos reais. |
137
+
138
+ ---
139
+
140
+ ## Quando usar cada modo do execute
141
+
142
+ ```
143
+ A) Completo → todas as ondas numa só execução (ideal: Claude, Copilot, Gemini)
144
+ B) Por onda → onda 1, você verifica, chama de novo (1 rodada por onda)
145
+ C) Por tarefa → máximo controle (1 rodada por tarefa)
146
+ ```
147
+
148
+ Se uma tarefa falha: diagnóstico inline automático (2-3 hipóteses → fix → retry). O Modo B inclui loop iterativo com escalada automática para diagnóstico profundo quando necessário.
149
+
150
+ ---
151
+
152
+ ## Comandos especializados
153
+
154
+ Estes não precisam ser decorados aparecem quando o contexto pede ou quando a situação específica justifica.
155
+
156
+ | Comando | Quando usar |
157
+ |---------|-------------|
158
+ | `/oxe-research` | Spike, mapa de sistema, engenharia reversa — antes de spec ou plano |
159
+ | `/oxe-forensics` | Falha persistente após múltiplas tentativas diagnóstico profundo |
160
+ | `/oxe-ui-spec` | Contrato UI/UX derivado da SPEC (quando UI é domínio crítico) |
161
+ | `/oxe-ui-review` | Auditoria da implementação UI contra o contrato |
162
+ | `/oxe-review-pr` | Revisão de PR ou diff de branches |
163
+ | `/oxe-checkpoint` | Snapshot nomeado do estado da sessão |
164
+
165
+ ---
166
+
167
+ ## Conceitos-chave
168
+
169
+ ### Context engineering estado em disco, não no chat
170
+
171
+ ```
172
+ .oxe/
173
+ ├── STATE.md ← índice global: fase resumida, sessão ativa, próximo passo
174
+ ├── SESSIONS.md ← índice de sessões
175
+ ├── global/
176
+ │ ├── LESSONS.md ← lições prescritivas cumulativas
177
+ │ └── MILESTONES.md ← marcos globais de entrega
178
+ ├── codebase/ mapa do repo (stack, estrutura, testes, …)
179
+ └── sessions/
180
+ └── sNNN-slug/
181
+ ├── spec/ ← SPEC.md, ROADMAP.md, DISCUSS.md, UI-SPEC.md
182
+ ├── plan/ PLAN.md, QUICK.md, blueprints de agentes
183
+ ├── execution/ STATE.md local, OBSERVATIONS.md, DEBUG.md, FORENSICS.md
184
+ ├── verification/ ← VERIFY.md, VALIDATION-GAPS.md, SECURITY.md, UI-REVIEW.md
185
+ ├── checkpoints/
186
+ ├── research/
187
+ └── workstreams/
188
+ ```
189
+
190
+ ### `/oxe-spec` — spec em 5 fases com auto-reflexão semântica
191
+
192
+ 1. **Perguntas** blocos de 3-5 por rodada, máximo 3 rodadas
193
+ 2. **Pesquisa** proposta inline na Fase 2 (sem sair do spec)
194
+ 3. **Requisitos** tabela R-ID com v1/v2/fora e critérios A*
195
+ 4. **Roteiro** fases de entrega `.oxe/ROADMAP.md`
196
+ 5. **Auto-reflexão** *(automática, sem requisição extra)* — detecta contradições, critérios vagos, escopo creep, conflitos com stack. Corrige antes de apresentar ao usuário.
197
+ 6. **Aprovação** → instrui `/oxe-plan` ou `/oxe-plan --agents`
198
+
199
+ A spec lê `.oxe/global/LESSONS.md` antes de iniciar — lições do ciclo anterior informam as perguntas e os critérios.
200
+
201
+ ### `/oxe-plan` — test-first com complexidade explícita
202
+
203
+ Cada tarefa usa a ordem **Verificar → Implementar** (test-first):
204
+ ```
205
+ Verificar: como saberei que está pronto? ← definido PRIMEIRO
206
+ Implementar: o mínimo para passar o Verificar
207
+ Complexidade: S | M | L | XL
208
+ ```
209
+
210
+ Tarefas `XL` bloqueiam o gate sem sub-tarefas ou justificativa. `/oxe-obs` propaga automaticamente constraints para os R-IDs e Tns afetados.
211
+
212
+ ### `/oxe-retro` loop de aprendizado
213
+
214
+ ```
215
+ /oxe-verify completo
216
+
217
+ /oxe-retro → 3–5 lições prescritivas → .oxe/global/LESSONS.md
218
+
219
+ /oxe-spec (próximo ciclo lê LESSONS)
220
+ /oxe-plan (próximo ciclo LESSONS)
221
+ ```
222
+
223
+ Lições não são diário são instruções para o próximo ciclo. Exemplo:
224
+ > "Tarefas com integração de terceiros: `Complexidade: L` mínimo + `Verificar` com mock fallback"
225
+
226
+ ### Plan-Driven Dynamic Agents agentes por demanda
227
+
228
+ Com `/oxe-plan --agents` (ou sugerido quando 3+ domínios detectados):
229
+ - `runId` único por demanda nunca reutilizado
230
+ - `role` específico ao domínio desta entrega
231
+ - `model_hint` por agente: `"fast"` / `"balanced"` / `"powerful"`
232
+ - Execute exibe o hint ao iniciar cada agente para o usuário configurar o modelo
233
+
234
+ ---
235
+
236
+ ## Instalação
237
+
238
+ **Requisito:** Node.js 18+
239
+
240
+ ```bash
241
+ npx oxe-cc@latest
242
+ ```
243
+
244
+ **Confirmar que funcionou:**
245
+
246
+ | IDE | Comando |
247
+ |-----|---------|
248
+ | Cursor | `/oxe` |
249
+ | Copilot (VS Code) | `/oxe` (requer `"chat.promptFiles": true`) |
250
+ | Claude Code | `/oxe` ou `oxe` |
251
+ | Gemini CLI | `/oxe` após `/commands reload` |
252
+ | Codex | `/prompts:oxe` |
253
+
254
+ <details>
255
+ <summary><strong>Flags de instalação</strong></summary>
256
+
257
+ | Flag | Efeito |
258
+ |------|--------|
259
+ | `--cursor` / `--copilot` | Só uma das stacks |
260
+ | `--all-agents` | Cursor + Copilot + Claude + OpenCode + Gemini + Codex + Windsurf + Antigravity |
261
+ | `--global` | Layout clássico: `oxe/` na raiz + `.oxe/` |
262
+ | `--local` | Layout mínimo: só `.oxe/` (padrão) |
263
+ | `--force` / `-f` | Sobrescreve arquivos existentes (use para atualizar) |
264
+ | `--dry-run` | Lista ações sem escrever |
265
+ | `--oxe-only` | workflows em `.oxe/`, sem integrações IDE |
266
+ | `--no-global-cli` / `-l` | Não instala `oxe-cc` globalmente (útil em CI) |
267
+ | `OXE_NO_PROMPT=1` | Modo não-interativo (CI) |
268
+
269
+ </details>
270
+
271
+ <details>
272
+ <summary><strong>Atualizar e desinstalar</strong></summary>
273
+
274
+ ```bash
275
+ npx oxe-cc@latest --force # atualizar workflows
276
+ npx oxe-cc update --check # verificar versão sem atualizar
277
+ npx oxe-cc uninstall --ide-only # remove integrações (mantém .oxe/)
278
+ ```
279
+
280
+ </details>
281
+
282
+ <details>
283
+ <summary><strong>Desenvolvimento (contribuir)</strong></summary>
284
+
285
+ ```bash
286
+ git clone https://github.com/propagno/oxe-build.git
287
+ cd oxe-build
288
+ npm test # 165 testes
289
+ node bin/oxe-cc.js --help
290
+ ```
291
+
292
+ </details>
293
+
294
+ ---
295
+
296
+ ## CLI (`oxe-cc`)
297
+
298
+ | Comando | O que faz |
299
+ |---------|-----------|
300
+ | `oxe-cc` / `oxe-cc install` | Instala workflows e integrações |
301
+ | `oxe-cc doctor` | Diagnóstico completo: Node, workflows, config, bootstrap `.oxe/`, sessão ativa, autoavaliação do plano e saúde lógica (`healthy` \| `warning` \| `broken`) |
302
+ | `oxe-cc status` | Próximo passo sugerido + saúde lógica do fluxo |
303
+ | `oxe-cc status --json` | Mesmo, em JSON, com `healthStatus`, `activeSession` e `planSelfEvaluation` |
304
+ | `oxe-cc update` | Atualiza workflows para a versão mais recente |
305
+ | `oxe-cc init-oxe` | Bootstrap do `.oxe/` (STATE, config, codebase/) |
306
+ | `oxe-cc uninstall` | Remove integrações OXE do HOME e do repo |
307
+ | `oxe-cc uninstall --global-cli` | Também remove o pacote npm global do PATH |
308
+
309
+ ---
310
+
311
+ ## Configuração
312
+
313
+ Arquivo `.oxe/config.json`. Principais opções:
314
+
315
+ | Chave | Padrão | Descrição |
316
+ |-------|--------|-----------|
317
+ | `profile` | `"balanced"` | `strict` / `balanced` / `fast` / `legacy` |
318
+ | `verification_depth` | `"standard"` | `"thorough"` ativa gaps automático no verify (Camada 5) |
319
+ | `plan_confidence_threshold` | `70` | Limiar mínimo para `execute` aceitar um `PLAN.md` |
320
+ | `security_in_verify` | `false` | `true` ativa OWASP automático no verify (Camada 6) |
321
+ | `discuss_before_plan` | `false` | Exige aprovação de decisões antes do plano |
322
+ | `scale_adaptive` | `true` | Scan sugere o profile pelo tamanho do projeto |
323
+ | `scan_max_age_days` | `0` | Doctor avisa quando o scan estiver velho |
324
+ | `lessons_max_age_days` | `0` | Doctor avisa quando a última retro estiver velho |
325
+ | `plugins` | `[]` | Hooks de lifecycle em `.oxe/plugins/*.cjs` |
326
+
327
+ ---
328
+
329
+ ## SDK
330
+
331
+ ```js
332
+ const oxe = require('oxe-cc');
333
+
334
+ const plan = oxe.parsePlan(fs.readFileSync('.oxe/PLAN.md', 'utf8')); // ou .oxe/sessions/<id>/plan/PLAN.md
335
+ const spec = oxe.parseSpec(fs.readFileSync('.oxe/SPEC.md', 'utf8')); // ou .oxe/sessions/<id>/spec/SPEC.md
336
+ const state = oxe.parseState(fs.readFileSync('.oxe/STATE.md', 'utf8'));
337
+
338
+ const fidelity = oxe.validateDecisionFidelity(discussMd, planMd);
339
+ const result = oxe.runDoctorChecks({ projectRoot: process.cwd() });
340
+ const expanded = oxe.health.expandExecutionProfile('strict');
341
+ ```
342
+
343
+ TypeScript: [`lib/sdk/index.d.ts`](lib/sdk/index.d.ts) · Docs: [`lib/sdk/README.md`](lib/sdk/README.md)
344
+
345
+ ---
346
+
347
+ ## Resolução de problemas
348
+
349
+ | Situação | O que tentar |
350
+ |----------|-------------|
351
+ | Comandos não aparecem no Cursor | Confirme `~/.cursor/commands/`; reinicie o Cursor |
352
+ | `/oxe-*` não aparecem no Copilot | Ative `"chat.promptFiles": true`; confirme `~/.copilot/prompts/` |
353
+ | Arquivos não atualizam | Reinstale com `--force` |
354
+ | `ETARGET` / versão não encontrada | `npm cache clean --force` |
355
+ | Erro no WSL sobre Node | Use Node instalado dentro do WSL |
356
+
357
+ `oxe-cc --help` · `oxe-cc doctor` · `OXE_NO_BANNER=1` desativa o banner
358
+
359
+ ---
360
+
361
+ ## Licença
362
+
363
+ [GPL-3.0](LICENSE)