oxe-cc 1.12.0 → 1.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/dependabot.yml +31 -0
- package/.github/workflows/ci.yml +141 -56
- package/.github/workflows/release.yml +114 -89
- package/CHANGELOG.md +866 -754
- package/README.md +600 -736
- package/bin/lib/oxe-agent-install.cjs +299 -284
- package/bin/lib/oxe-artifact-catalog.cjs +376 -0
- package/bin/lib/oxe-command-registry.cjs +31 -0
- package/bin/lib/oxe-context-engine.cjs +11 -11
- package/bin/lib/oxe-core-command-handlers.cjs +82 -0
- package/bin/lib/oxe-dashboard.cjs +140 -140
- package/bin/lib/oxe-manifest.cjs +20 -20
- package/bin/lib/oxe-npm-version.cjs +6 -4
- package/bin/lib/oxe-plugin-cli.cjs +95 -0
- package/bin/lib/oxe-plugins.cjs +94 -3
- package/bin/lib/oxe-process.cjs +67 -0
- package/bin/lib/oxe-project-health.cjs +2846 -2781
- package/bin/lib/oxe-runtime-semantics.cjs +68 -69
- package/bin/oxe-cc.js +369 -353
- package/docs/INTEGRATION.md +182 -0
- package/docs/QUALITY-GATES.md +46 -0
- package/docs/RELEASE-READINESS.md +86 -61
- package/docs/RUNTIME-SMOKE-MATRIX.md +137 -135
- package/docs/oxe-artifact-map.html +1172 -0
- package/lib/sdk/index.cjs +20 -0
- package/lib/sdk/index.d.ts +971 -876
- package/lib/sdk/index.types.ts +933 -0
- package/oxe/templates/PLUGINS.md +8 -1
- package/oxe/templates/STATE-REFERENCE.md +125 -0
- package/oxe/templates/STATE.md +11 -121
- package/oxe/workflows/help.md +2 -0
- package/package.json +129 -108
- package/packages/runtime/package.json +18 -18
- package/packages/runtime/src/evidence/evidence-store.ts +2 -2
- package/packages/runtime/src/scheduler/multi-agent-coordinator.ts +728 -728
- package/packages/runtime/src/workspace/strategies/git-worktree.ts +24 -24
- package/packages/runtime/tsconfig.json +8 -2
- package/vscode-extension/.vscodeignore +2 -0
- package/vscode-extension/package.json +193 -185
- package/vscode-extension/src/extension.js +11 -1
package/README.md
CHANGED
|
@@ -1,736 +1,600 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
|
|
3
|
-
<p align="center">
|
|
4
|
-
<img src="assets/readme-banner.svg" alt="OXE" width="920" />
|
|
5
|
-
</p>
|
|
6
|
-
|
|
7
|
-
[](https://www.npmjs.com/package/oxe-cc)
|
|
8
|
-
[](LICENSE)
|
|
9
|
-
|
|
10
|
-
**
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
```bash
|
|
15
|
-
npx oxe-cc@latest
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
/oxe
|
|
196
|
-
/oxe-
|
|
197
|
-
/oxe-
|
|
198
|
-
|
|
199
|
-
/oxe-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
/oxe-verify
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
##
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
O
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
.
|
|
251
|
-
├──
|
|
252
|
-
├──
|
|
253
|
-
├──
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
/
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
|
370
|
-
|
|
371
|
-
|
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
|
400
|
-
|
|
401
|
-
| `
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
```
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
---
|
|
473
|
-
|
|
474
|
-
##
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
```
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
<details>
|
|
603
|
-
<summary><strong>Atualizar e desinstalar</strong></summary>
|
|
604
|
-
|
|
605
|
-
```bash
|
|
606
|
-
npx oxe-cc@latest --force # atualizar workflows
|
|
607
|
-
npx oxe-cc update --check # verificar versão sem atualizar
|
|
608
|
-
npx oxe-cc uninstall --ide-only # remove integrações (mantém .oxe/)
|
|
609
|
-
```
|
|
610
|
-
|
|
611
|
-
</details>
|
|
612
|
-
|
|
613
|
-
<details>
|
|
614
|
-
<summary><strong>Desenvolvimento (contribuir)</strong></summary>
|
|
615
|
-
|
|
616
|
-
```bash
|
|
617
|
-
git clone https://github.com/propagno/oxe-build.git
|
|
618
|
-
cd oxe-build
|
|
619
|
-
npm test # suíte completa: root + runtime TypeScript
|
|
620
|
-
npm run scan:assets
|
|
621
|
-
node bin/oxe-cc.js --help
|
|
622
|
-
```
|
|
623
|
-
|
|
624
|
-
</details>
|
|
625
|
-
|
|
626
|
-
---
|
|
627
|
-
|
|
628
|
-
## CLI (`oxe-cc`)
|
|
629
|
-
|
|
630
|
-
| Comando | O que faz |
|
|
631
|
-
|---------|-----------|
|
|
632
|
-
| `oxe-cc` / `oxe-cc install` | Instala workflows e integrações |
|
|
633
|
-
| `oxe-cc doctor` | Diagnóstico completo: Node, workflows, contratos semânticos, config, sessão ativa, saúde lógica (`healthy` \| `warning` \| `broken`) |
|
|
634
|
-
| `oxe-cc doctor --release --write-manifest` | Gate de publicação: valida árvore canónica, `workflow-runtime-contracts.json`, versões, CHANGELOG, runtime compilado; persiste `release-manifest.json` |
|
|
635
|
-
| `oxe-cc status` | Próximo passo sugerido + saúde lógica |
|
|
636
|
-
| `oxe-cc status --full` | Coverage matrix + readiness gate + active run (ANSI) |
|
|
637
|
-
| `oxe-cc status --json` | Estado completo em JSON (schema v5): workspaceMode, healthStatus, activeSession, planSelfEvaluation, contextQuality, semanticsDrift, verificationSummary, pendingGates, multiAgent, promotionSummary e mais |
|
|
638
|
-
| `oxe-cc context build` | Gera context pack em `.oxe/context/packs/` por contrato de workflow |
|
|
639
|
-
| `oxe-cc context inspect` | Inspeciona context pack sem escrita |
|
|
640
|
-
| `oxe-cc update` | Atualiza workflows para a versão mais recente |
|
|
641
|
-
| `oxe-cc init-oxe` | Bootstrap do `.oxe/` |
|
|
642
|
-
| `oxe-cc dashboard` | Interface web local para revisão, comentários e aprovação |
|
|
643
|
-
| `oxe-cc runtime <status\|start\|pause\|resume\|replay\|compile\|verify\|project\|ci\|promote\|recover\|gates\|agents>` | Controla o runtime enterprise |
|
|
644
|
-
| `oxe-cc runtime gates <list\|show\|resolve>` | Lista, inspeciona e resolve gates operacionais |
|
|
645
|
-
| `oxe-cc runtime agents status` | Ownership, handoffs, heartbeats e failover multi-agent |
|
|
646
|
-
| `oxe-cc runtime promote --target pr_draft` | Promoção remota governada por verify, gates, risk e coverage |
|
|
647
|
-
| `oxe-cc runtime recover` | Reidrata journal, gates, evidence e estado canónico |
|
|
648
|
-
| `oxe-cc capabilities <list\|install\|remove\|update>` | Mantém catálogo de capabilities em `.oxe/` |
|
|
649
|
-
| `oxe-cc plugins <list\|install\|remove>` | Gerencia plugins de lifecycle |
|
|
650
|
-
| `oxe-cc uninstall` | Remove integrações OXE |
|
|
651
|
-
| `oxe-cc uninstall --global-cli` | Também remove o pacote npm global |
|
|
652
|
-
|
|
653
|
-
---
|
|
654
|
-
|
|
655
|
-
## Configuração
|
|
656
|
-
|
|
657
|
-
Arquivo `.oxe/config.json`. Principais opções:
|
|
658
|
-
|
|
659
|
-
| Chave | Padrão | Descrição |
|
|
660
|
-
|-------|--------|-----------|
|
|
661
|
-
| `profile` | `"balanced"` | `strict` / `balanced` / `fast` / `legacy` |
|
|
662
|
-
| `verification_depth` | `"standard"` | `"thorough"` ativa gaps automático no verify |
|
|
663
|
-
| `plan_confidence_threshold` | `90` | Limiar para `execute` aceitar um `PLAN.md` |
|
|
664
|
-
| `security_in_verify` | `false` | `true` ativa OWASP automático no verify |
|
|
665
|
-
| `discuss_before_plan` | `false` | Exige aprovação de decisões antes do plano |
|
|
666
|
-
| `scale_adaptive` | `true` | Scan sugere o profile pelo tamanho do projeto |
|
|
667
|
-
| `plugins` | `[]` | Hooks de lifecycle em `.oxe/plugins/*.cjs` |
|
|
668
|
-
| `permissions` | `[]` | Regras glob+ação para gate de arquivos em execute/apply |
|
|
669
|
-
| `runtime.quotas.*` | `Infinity` | Limites enterprise para work items, mutações e retries por run |
|
|
670
|
-
|
|
671
|
-
---
|
|
672
|
-
|
|
673
|
-
## SDK
|
|
674
|
-
|
|
675
|
-
```js
|
|
676
|
-
const oxe = require('oxe-cc');
|
|
677
|
-
|
|
678
|
-
const plan = oxe.parsePlan(fs.readFileSync('.oxe/PLAN.md', 'utf8'));
|
|
679
|
-
const spec = oxe.parseSpec(fs.readFileSync('.oxe/SPEC.md', 'utf8'));
|
|
680
|
-
const state = oxe.parseState(fs.readFileSync('.oxe/STATE.md', 'utf8'));
|
|
681
|
-
|
|
682
|
-
const fidelity = oxe.validateDecisionFidelity(discussMd, planMd);
|
|
683
|
-
const result = oxe.runDoctorChecks({ projectRoot: process.cwd() });
|
|
684
|
-
|
|
685
|
-
async function verifyActiveRun() {
|
|
686
|
-
return oxe.verifyRun?.({
|
|
687
|
-
projectRoot: process.cwd(),
|
|
688
|
-
runId: 'oxe-run-123',
|
|
689
|
-
workItemId: 'T1',
|
|
690
|
-
cwd: process.cwd(),
|
|
691
|
-
});
|
|
692
|
-
}
|
|
693
|
-
```
|
|
694
|
-
|
|
695
|
-
O SDK reexporta bridges do runtime enterprise: `verifyRun`, `operational.buildRuntimePluginRegistry`, `operational.readRuntimeGates`, `operational.resolveRuntimeGate`, `operational.runRuntimeVerify`, `operational.runRuntimePromotion`, `operational.recoverRuntimeState`.
|
|
696
|
-
|
|
697
|
-
TypeScript: [`lib/sdk/index.d.ts`](lib/sdk/index.d.ts) · Docs: [`lib/sdk/README.md`](lib/sdk/README.md)
|
|
698
|
-
|
|
699
|
-
---
|
|
700
|
-
|
|
701
|
-
## Critérios de publicação
|
|
702
|
-
|
|
703
|
-
O pacote está pronto para publicação quando estes sinais estiverem verdes:
|
|
704
|
-
|
|
705
|
-
```bash
|
|
706
|
-
npm test
|
|
707
|
-
npm run scan:assets
|
|
708
|
-
npm run build:vscode-ext
|
|
709
|
-
node bin/oxe-cc.js doctor --release --write-manifest
|
|
710
|
-
npm run release:pack-check
|
|
711
|
-
node bin/oxe-cc.js status --full
|
|
712
|
-
```
|
|
713
|
-
|
|
714
|
-
Artefatos obrigatórios: `release-manifest.json`, `runtime-smoke-report.json`, `runtime-real-report.json`, `recovery-fixture-report.json`, `multi-agent-soak-report.json`, `multi-agent-real-report.json` em `.oxe/release/`.
|
|
715
|
-
|
|
716
|
-
---
|
|
717
|
-
|
|
718
|
-
## Resolução de problemas
|
|
719
|
-
|
|
720
|
-
| Situação | O que tentar |
|
|
721
|
-
|----------|-------------|
|
|
722
|
-
| Comandos não aparecem no Cursor | Confirme `~/.cursor/commands/`; reinicie o Cursor |
|
|
723
|
-
| `/oxe-*` não aparecem no Copilot | Ative `"chat.promptFiles": true`; confirme `.github/prompts/` e `.github/copilot-instructions.md` |
|
|
724
|
-
| Copilot responde fora do workflow OXE | `npx oxe-cc doctor`; se houver blocos mistos de outros frameworks, `npx oxe-cc uninstall --copilot-legacy-clean` |
|
|
725
|
-
| Runtime não responde com nova semântica | Verifique drift entre `oxe/workflows/` e prompts instalados; `npm run sync:runtime-metadata` |
|
|
726
|
-
| Arquivos não atualizam | `npx oxe-cc@latest --force` |
|
|
727
|
-
| `ETARGET` / versão não encontrada | `npm cache clean --force` |
|
|
728
|
-
| Erro no WSL sobre Node | Use Node instalado dentro do WSL |
|
|
729
|
-
|
|
730
|
-
`oxe-cc --help` · `oxe-cc doctor` · `OXE_NO_BANNER=1` desativa o banner
|
|
731
|
-
|
|
732
|
-
---
|
|
733
|
-
|
|
734
|
-
## Licença
|
|
735
|
-
|
|
736
|
-
[MIT](LICENSE)
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<img src="assets/readme-banner.svg" alt="OXE — Orchestrated eXperience Engineering" width="920" />
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/oxe-cc)
|
|
8
|
+
[](LICENSE)
|
|
9
|
+
|
|
10
|
+
**Framework OXE — Orchestrated eXperience Engineering**
|
|
11
|
+
|
|
12
|
+
Desenvolvimento assistido por IA com especificação, contexto persistente, execução rastreável e verificação por evidências — independente da IDE ou do agente.
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
npx oxe-cc@latest
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
**Versão:** `1.16.0` · **Node.js:** `>=18`
|
|
19
|
+
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Por que o OXE existe
|
|
25
|
+
|
|
26
|
+
Agentes de IA escrevem código rapidamente, mas velocidade sem método costuma gerar quatro problemas: contexto perdido entre conversas, requisitos implícitos, mudanças difíceis de auditar e uma falsa sensação de conclusão porque “o código parece pronto”.
|
|
27
|
+
|
|
28
|
+
O OXE adiciona uma camada de engenharia entre a intenção humana e a execução do agente:
|
|
29
|
+
|
|
30
|
+
```text
|
|
31
|
+
objetivo
|
|
32
|
+
↓
|
|
33
|
+
contexto e decisões persistidos em .oxe/
|
|
34
|
+
↓
|
|
35
|
+
spec → plan → execute → verify
|
|
36
|
+
↓
|
|
37
|
+
código + evidências + aprendizado para o próximo ciclo
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
O framework não substitui a IDE, o modelo ou o processo da equipe. Ele oferece um protocolo comum para que Cursor, GitHub Copilot, Claude, OpenCode, Gemini, Codex, Windsurf e outros runtimes trabalhem sobre o mesmo estado canônico.
|
|
41
|
+
|
|
42
|
+
### O que muda na prática
|
|
43
|
+
|
|
44
|
+
| Sem uma camada de método | Com OXE |
|
|
45
|
+
|---|---|
|
|
46
|
+
| O contexto fica preso no chat | Estado e decisões ficam em `.oxe/` |
|
|
47
|
+
| Cada agente interpreta a demanda de um jeito | Workflows canônicos definem o contrato de cada etapa |
|
|
48
|
+
| O plano descreve tarefas, mas não prova conclusão | Cada tarefa nasce com uma forma explícita de verificar |
|
|
49
|
+
| Trocar de IDE significa recomeçar a explicação | As integrações projetam o mesmo núcleo para cada runtime |
|
|
50
|
+
| “Terminou” significa apenas que o código foi gerado | `verify` exige critérios, evidências, integração e riscos |
|
|
51
|
+
| Erros e decisões se perdem entre ciclos | Memory e Learning Kernel alimentam os próximos planos |
|
|
52
|
+
|
|
53
|
+
### Benefícios esperados
|
|
54
|
+
|
|
55
|
+
- **Menos reexplicação:** o agente reconstrói contexto a partir de artefatos pequenos e selecionados por workflow.
|
|
56
|
+
- **Escopo mais previsível:** requisitos, decisões e exclusões são registrados antes da mutação.
|
|
57
|
+
- **Execução auditável:** runs, eventos, checkpoints, gates e evidências formam uma trilha operacional.
|
|
58
|
+
- **Verificação independente:** o resultado é confrontado com critérios de aceite, não apenas com o plano produzido.
|
|
59
|
+
- **Portabilidade:** o método permanece igual mesmo quando a equipe troca de IDE, CLI ou modelo.
|
|
60
|
+
- **Escala proporcional:** tarefas pequenas usam um fluxo lean; entregas complexas ganham sessões, ondas e agentes especializados.
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Evidência operacional do projeto
|
|
65
|
+
|
|
66
|
+
O OXE procura demonstrar suas próprias promessas no pipeline do repositório. O snapshot abaixo vem da validação local registrada em **18 de julho de 2026**; não representa métricas de adoção externa ou produtividade humana.
|
|
67
|
+
|
|
68
|
+
| Indicador verificável | Resultado |
|
|
69
|
+
|---|---:|
|
|
70
|
+
| Quality gates obrigatórios | **10/10 aprovados** |
|
|
71
|
+
| Testes raiz validados no Node 18 | **628/628** |
|
|
72
|
+
| Testes do runtime TypeScript | **384/384** |
|
|
73
|
+
| Cenários smoke, runtime real, recovery e multiagente | **30/30** |
|
|
74
|
+
| Cobertura de linhas/statements | **83,05%** |
|
|
75
|
+
| Cobertura de funções | **92,48%** |
|
|
76
|
+
| Cobertura de branches | **61,76%** |
|
|
77
|
+
| Vulnerabilidades reportadas por `npm audit` | **0** |
|
|
78
|
+
| Participantes ativados em VS Code Extension Host real | **13/13** |
|
|
79
|
+
| Arquivos validados no tarball npm | **507** |
|
|
80
|
+
|
|
81
|
+
Esses números são recalculados pelos gates do repositório. Consulte [QUALITY-GATES.md](docs/QUALITY-GATES.md) e [RELEASE-READINESS.md](docs/RELEASE-READINESS.md) para o contrato completo. Métricas de produto devem ser interpretadas como sinais: cobertura não substitui bons critérios, contagem de testes não mede valor entregue e número de agentes não equivale a produtividade.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Comece em cinco minutos
|
|
86
|
+
|
|
87
|
+
### 1. Instale no projeto
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
cd meu-projeto
|
|
91
|
+
npx oxe-cc@latest
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
O instalador cria um `.oxe/` enxuto e adiciona as integrações escolhidas. Artefatos como `SPEC.md`, `PLAN.md`, runs, sessões e mapas nascem sob demanda.
|
|
95
|
+
|
|
96
|
+
### 2. Confirme a saúde
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
npx oxe-cc doctor
|
|
100
|
+
npx oxe-cc status --full
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### 3. Entregue um objetivo
|
|
104
|
+
|
|
105
|
+
```text
|
|
106
|
+
/oxe adicionar importação de CSV com validação e histórico
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
O Conductor classifica a complexidade, recupera contexto, seleciona personas e escolhe entre execução individual e Swarm Mode.
|
|
110
|
+
|
|
111
|
+
### 4. Ou controle o ciclo manualmente
|
|
112
|
+
|
|
113
|
+
```text
|
|
114
|
+
/oxe-spec
|
|
115
|
+
/oxe-plan
|
|
116
|
+
/oxe-execute
|
|
117
|
+
/oxe-verify
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Ao terminar, o projeto contém não só a implementação, mas também os requisitos, decisões, evidências e lições que explicam como ela foi construída.
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## Escolha o fluxo certo
|
|
125
|
+
|
|
126
|
+
### Nano — mudança pequena e isolada
|
|
127
|
+
|
|
128
|
+
```text
|
|
129
|
+
/oxe-quick → objetivo → passos curtos → implementação → verify
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
Use para texto, configuração, estilo, teste pontual ou bug local. O Quick evita SPEC e PLAN longos, mas preserva objetivo e verificação. Promova para o ciclo Standard quando surgirem API pública, segurança, muitos arquivos ou mais de dois domínios.
|
|
133
|
+
|
|
134
|
+
### Standard — padrão para features e refatorações
|
|
135
|
+
|
|
136
|
+
```text
|
|
137
|
+
/oxe → /oxe-spec → /oxe-plan → /oxe-execute → /oxe-verify
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
É o fluxo recomendado para a maioria das entregas. A spec define o problema, o plan converte critérios em tarefas verificáveis, o execute implementa com tracking e o verify fecha o ciclo por evidência.
|
|
141
|
+
|
|
142
|
+
### Full — entregas complexas ou de equipe
|
|
143
|
+
|
|
144
|
+
```text
|
|
145
|
+
/oxe-session new <nome>
|
|
146
|
+
→ /oxe-spec --full --research
|
|
147
|
+
→ /oxe-plan --agents
|
|
148
|
+
→ /oxe-execute por onda
|
|
149
|
+
→ /oxe-dashboard
|
|
150
|
+
→ /oxe-verify --gaps --security --pr
|
|
151
|
+
→ /oxe-session close
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
Use quando existirem três ou mais domínios, trabalho paralelo, risco operacional, modernização brownfield ou necessidade de aprovação intermediária.
|
|
155
|
+
|
|
156
|
+
### Guia rápido de decisão
|
|
157
|
+
|
|
158
|
+
| Situação | Fluxo sugerido |
|
|
159
|
+
|---|---|
|
|
160
|
+
| Correção local bem compreendida | `/oxe-quick` |
|
|
161
|
+
| Nova feature ou refatoração relevante | ciclo Standard |
|
|
162
|
+
| UI com contrato visual | `/oxe-spec --ui` → ciclo Standard → `/oxe-verify --ui` |
|
|
163
|
+
| Segurança, autenticação ou dados sensíveis | profile `strict` + `--research` + `--security` |
|
|
164
|
+
| Bug intermitente durante execução | `/oxe-execute --debug` |
|
|
165
|
+
| Falha persistente após tentativas | `/oxe-execute --deep-diagnosis` |
|
|
166
|
+
| Modernização de legado | sessão + `--full --research` + execução por onda |
|
|
167
|
+
| Revisão antes do merge | `/oxe-verify --pr --gaps` |
|
|
168
|
+
| Trabalho simultâneo em frentes diferentes | `/oxe-session workstream new <nome>` |
|
|
169
|
+
| Não sei onde o ciclo parou | `/oxe` ou `oxe-cc status --full` |
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## A trilha principal
|
|
174
|
+
|
|
175
|
+
São seis comandos para o uso cotidiano:
|
|
176
|
+
|
|
177
|
+
| Comando | Responsabilidade |
|
|
178
|
+
|---|---|
|
|
179
|
+
| `/oxe` | Entrada universal: situação, ajuda, pergunta contextual ou objetivo autônomo |
|
|
180
|
+
| `/oxe-quick` | Demanda pequena com miniobjetivo, passos e verificação |
|
|
181
|
+
| `/oxe-spec` | Perguntas → pesquisa opcional → requisitos → roteiro → aprovação |
|
|
182
|
+
| `/oxe-plan` | Plano test-first por ondas; `--agents` gera blueprint multiagente |
|
|
183
|
+
| `/oxe-execute` | Implementação completa, por onda ou por tarefa, com runtime tracking |
|
|
184
|
+
| `/oxe-verify` | Critérios, evidências, integração, riscos, UAT e retrospectiva |
|
|
185
|
+
|
|
186
|
+
### Flags que absorvem fluxos especializados
|
|
187
|
+
|
|
188
|
+
```text
|
|
189
|
+
/oxe-spec --refresh atualiza o mapa do codebase
|
|
190
|
+
/oxe-spec --full força scan completo
|
|
191
|
+
/oxe-spec --research pesquisa ou spike técnico
|
|
192
|
+
/oxe-spec --deep aumenta profundidade da investigação
|
|
193
|
+
/oxe-spec --ui produz UI-SPEC
|
|
194
|
+
|
|
195
|
+
/oxe-execute --note "texto" registra observação contextual
|
|
196
|
+
/oxe-execute --debug diagnóstico técnico inline
|
|
197
|
+
/oxe-execute --deep-diagnosis investigação pós-falha persistente
|
|
198
|
+
/oxe-execute --checkpoint "x" snapshot nomeado
|
|
199
|
+
/oxe-execute --iterative retries controlados por onda
|
|
200
|
+
|
|
201
|
+
/oxe-verify --gaps auditoria de cobertura dos critérios
|
|
202
|
+
/oxe-verify --security auditoria OWASP aderente ao stack
|
|
203
|
+
/oxe-verify --ui compara implementação com UI-SPEC
|
|
204
|
+
/oxe-verify --pr revisão do PR/diff
|
|
205
|
+
/oxe-verify --diff A...B revisão de intervalo específico
|
|
206
|
+
/oxe-verify --skip-retro não gera retrospectiva ao fechar
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
Os antigos comandos `scan`, `research`, `debug`, `forensics`, `checkpoint`, `security`, `ui-review`, `review-pr` e `retro` continuam reconhecidos, mas os estágios acima são a interface preferencial.
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## Modo autônomo e agentes dinâmicos
|
|
214
|
+
|
|
215
|
+
Quando recebe `/oxe <objetivo>`, o Conductor aplica uma heurística explícita:
|
|
216
|
+
|
|
217
|
+
| Complexidade | Sinal típico | Modo |
|
|
218
|
+
|---|---|---|
|
|
219
|
+
| simples | 1 domínio e até 3 arquivos esperados | Agent Mode |
|
|
220
|
+
| média | 1–2 domínios e aproximadamente 3–8 arquivos | Agent Mode |
|
|
221
|
+
| complexa | 3+ domínios, 8+ arquivos ou integração transversal | Swarm Mode |
|
|
222
|
+
|
|
223
|
+
### Agent Mode
|
|
224
|
+
|
|
225
|
+
O próprio Conductor executa a demanda com a persona adequada. A sessão fica registrada em `.oxe/agent/AGENT-SESSION.json` e passa por verificação antes de fechar.
|
|
226
|
+
|
|
227
|
+
### Swarm Mode
|
|
228
|
+
|
|
229
|
+
O trabalho é decomposto em tarefas e ondas. Agentes recebem papéis específicos, ownership de arquivos, dependências e `model_hint`. Um reviewer adversarial e um verifier independente avaliam a integração. O run fica em `.oxe/swarm/<run-id>/`.
|
|
230
|
+
|
|
231
|
+
### Personas builtin
|
|
232
|
+
|
|
233
|
+
`executor`, `planner`, `verifier`, `researcher`, `debugger`, `architect`, `ui-specialist` e `db-specialist`. Personas customizadas podem ser adicionadas em `.oxe/personas/`.
|
|
234
|
+
|
|
235
|
+
O princípio é **Plan-Driven Dynamic Agents**: os agentes derivam do plano da demanda atual e são invalidados ao terminar. Eles não são uma equipe genérica permanente.
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## Como o OXE mantém contexto sem inflar o prompt
|
|
240
|
+
|
|
241
|
+
### Estado canônico em disco
|
|
242
|
+
|
|
243
|
+
`.oxe/STATE.md` é a porta de entrada curta. Os demais artefatos aparecem quando necessários:
|
|
244
|
+
|
|
245
|
+
```text
|
|
246
|
+
.oxe/
|
|
247
|
+
├── STATE.md fase e próximo passo
|
|
248
|
+
├── config.json profile e políticas
|
|
249
|
+
├── SPEC.md requisitos e critérios
|
|
250
|
+
├── PLAN.md ondas, tarefas e verificação
|
|
251
|
+
├── VERIFY.md evidências e resultado
|
|
252
|
+
├── context/packs/ contexto selecionado por workflow
|
|
253
|
+
├── runs/ estado operacional e journal
|
|
254
|
+
├── sessions/ ciclos isolados
|
|
255
|
+
├── memory/ memória persistente
|
|
256
|
+
├── swarm/ coordenação multiagente
|
|
257
|
+
└── release/ evidências dos gates de publicação
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
Use `oxe-cc map` para distinguir o que já existe do que será criado sob demanda.
|
|
261
|
+
|
|
262
|
+
### Context Engine
|
|
263
|
+
|
|
264
|
+
Cada workflow declara artefatos obrigatórios, opcionais, tier de contexto e política de freshness. O engine seleciona e comprime apenas o necessário:
|
|
265
|
+
|
|
266
|
+
```bash
|
|
267
|
+
oxe-cc context build --workflow plan
|
|
268
|
+
oxe-cc context inspect --workflow verify --json
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Memory e Learning Kernel
|
|
272
|
+
|
|
273
|
+
Memória de repositório, decisões, observações e lições são recuperadas antes de novos runs. Ao final do `verify`, a retrospectiva automática destila padrões úteis e evita que o próximo ciclo dependa da lembrança de uma conversa antiga.
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## Runtime enterprise: execução como estado, não como narrativa
|
|
278
|
+
|
|
279
|
+
Em `execute` e `verify`, o caminho recomendado é runtime-first. O runtime compila SPEC e PLAN para um grafo formal, registra transições e depois projeta Markdown para leitura humana.
|
|
280
|
+
|
|
281
|
+
```text
|
|
282
|
+
SPEC + PLAN
|
|
283
|
+
↓ runtime compile
|
|
284
|
+
ExecutionGraph + verification suite
|
|
285
|
+
↓ execute / events / gates
|
|
286
|
+
ACTIVE-RUN + journal + evidence
|
|
287
|
+
↓ runtime verify
|
|
288
|
+
verification manifest + risk ledger
|
|
289
|
+
↓ project
|
|
290
|
+
VERIFY.md e demais projeções
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
Comandos principais:
|
|
294
|
+
|
|
295
|
+
```bash
|
|
296
|
+
oxe-cc runtime status
|
|
297
|
+
oxe-cc runtime compile
|
|
298
|
+
oxe-cc runtime execute
|
|
299
|
+
oxe-cc runtime verify
|
|
300
|
+
oxe-cc runtime gates list
|
|
301
|
+
oxe-cc runtime recover
|
|
302
|
+
oxe-cc runtime promote --target pr_draft
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
Isso permite pausar, retomar, repetir uma onda, recuperar um journal interrompido e exigir aprovação formal sem depender do histórico do chat.
|
|
306
|
+
|
|
307
|
+
---
|
|
308
|
+
|
|
309
|
+
## Sessões, workstreams e milestones
|
|
310
|
+
|
|
311
|
+
Sessões isolam ciclos longos e evitam colisão entre artefatos:
|
|
312
|
+
|
|
313
|
+
```text
|
|
314
|
+
/oxe-session new checkout
|
|
315
|
+
/oxe-session status
|
|
316
|
+
/oxe-session switch sessions/s002-checkout
|
|
317
|
+
/oxe-session close
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
Workstreams organizam frentes paralelas; milestones agrupam entregas maiores:
|
|
321
|
+
|
|
322
|
+
```text
|
|
323
|
+
/oxe-session workstream new backend
|
|
324
|
+
/oxe-session workstream switch frontend
|
|
325
|
+
/oxe-session milestone new beta
|
|
326
|
+
/oxe-session milestone audit
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
Para trabalho diário, `oxe-cc status --full` é a inspeção preferencial. O `oxe-cc dashboard` é opt-in para revisão visual de planos, ondas, agentes, checkpoints, gates e evidências.
|
|
330
|
+
|
|
331
|
+
---
|
|
332
|
+
|
|
333
|
+
## Instalação por ambiente
|
|
334
|
+
|
|
335
|
+
### Instalação padrão
|
|
336
|
+
|
|
337
|
+
```bash
|
|
338
|
+
npx oxe-cc@latest
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
### Todas as integrações suportadas
|
|
342
|
+
|
|
343
|
+
```bash
|
|
344
|
+
npx oxe-cc@latest --all-agents
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
| Ambiente | Superfície instalada/invocação |
|
|
348
|
+
|---|---|
|
|
349
|
+
| Cursor | comandos em `~/.cursor/commands/`; use `/oxe` |
|
|
350
|
+
| GitHub Copilot no VS Code | `.github/copilot-instructions.md` + `.github/prompts/`; habilite `chat.promptFiles` |
|
|
351
|
+
| Copilot CLI | skills em `~/.copilot/skills/`; recarregue com `/skills reload` |
|
|
352
|
+
| Claude Code | comandos em `~/.claude/commands/` |
|
|
353
|
+
| OpenCode | comandos nas pastas de configuração OpenCode |
|
|
354
|
+
| Gemini CLI | comandos em `~/.gemini/commands/`; use `/commands reload` |
|
|
355
|
+
| Codex | skills em `~/.agents/skills` e prompts em `~/.codex/prompts` |
|
|
356
|
+
| Windsurf | workflows globais do Windsurf |
|
|
357
|
+
| Antigravity | skills na árvore do Gemini Antigravity |
|
|
358
|
+
|
|
359
|
+
Flags relevantes:
|
|
360
|
+
|
|
361
|
+
| Flag | Uso |
|
|
362
|
+
|---|---|
|
|
363
|
+
| `--cursor`, `--copilot`, `--copilot-cli` | instala uma integração específica |
|
|
364
|
+
| `--opencode`, `--gemini`, `--codex`, `--windsurf`, `--antigravity` | instala somente o runtime indicado |
|
|
365
|
+
| `--ide-local` | mantém integrações suportadas dentro do repositório |
|
|
366
|
+
| `--ide-global` | instala integrações no HOME do usuário |
|
|
367
|
+
| `--local` | layout mínimo em `.oxe/` |
|
|
368
|
+
| `--global` | layout clássico com `oxe/` canônico na raiz |
|
|
369
|
+
| `--oxe-only` | instala o núcleo sem integrações de IDE |
|
|
370
|
+
| `--dry-run` | mostra as alterações sem gravar |
|
|
371
|
+
| `--force` | atualiza/sobrescreve artefatos gerenciados |
|
|
372
|
+
|
|
373
|
+
CI sem interação:
|
|
374
|
+
|
|
375
|
+
```bash
|
|
376
|
+
OXE_NO_PROMPT=1 npx oxe-cc@latest --oxe-only --no-global-cli
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
Atualização e remoção:
|
|
380
|
+
|
|
381
|
+
```bash
|
|
382
|
+
npx oxe-cc update --check
|
|
383
|
+
npx oxe-cc update --if-newer
|
|
384
|
+
npx oxe-cc uninstall --ide-only
|
|
385
|
+
npx oxe-cc uninstall --global-cli
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
No WSL, use uma instalação do Node dentro do próprio WSL.
|
|
389
|
+
|
|
390
|
+
---
|
|
391
|
+
|
|
392
|
+
## Profiles de execução
|
|
393
|
+
|
|
394
|
+
Defina `profile` em `.oxe/config.json`:
|
|
395
|
+
|
|
396
|
+
| Profile | Indicado para | Comportamento |
|
|
397
|
+
|---|---|---|
|
|
398
|
+
| `balanced` | maioria das features | cerimônia e verificação moderadas |
|
|
399
|
+
| `fast` | manutenção de baixo risco | menos discussão e verificação rápida |
|
|
400
|
+
| `strict` | segurança, API pública, dados e releases | discussão, verificação profunda e UAT |
|
|
401
|
+
| `legacy` | brownfield e stacks pouco conhecidas | investigação e verificação thorough |
|
|
402
|
+
|
|
403
|
+
```json
|
|
404
|
+
{
|
|
405
|
+
"profile": "strict",
|
|
406
|
+
"security_in_verify": true,
|
|
407
|
+
"plan_confidence_threshold": 90,
|
|
408
|
+
"runtime": {
|
|
409
|
+
"quotas": {
|
|
410
|
+
"max_retries_per_task": 2
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
Chaves explícitas prevalecem sobre os defaults do profile.
|
|
417
|
+
|
|
418
|
+
---
|
|
419
|
+
|
|
420
|
+
## Capabilities, plugins e Azure
|
|
421
|
+
|
|
422
|
+
Capabilities são extensões nativas declarativas do projeto:
|
|
423
|
+
|
|
424
|
+
```bash
|
|
425
|
+
oxe-cc capabilities list
|
|
426
|
+
oxe-cc capabilities install <id>
|
|
427
|
+
oxe-cc capabilities update
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
Plugins adicionam hooks de lifecycle. A instalação via CLI aceita somente pacotes npm validados; plugins por path devem ser criados e referenciados explicitamente no `config.json`:
|
|
431
|
+
|
|
432
|
+
```bash
|
|
433
|
+
oxe-cc plugins list
|
|
434
|
+
oxe-cc plugins install <pacote> [versão]
|
|
435
|
+
```
|
|
436
|
+
|
|
437
|
+
O provider Azure é local-first e usa Azure CLI, inventário materializado, dry-run e checkpoint antes de mutações:
|
|
438
|
+
|
|
439
|
+
```bash
|
|
440
|
+
oxe-cc azure auth login --tenant <tenant-id>
|
|
441
|
+
oxe-cc azure auth set-subscription --subscription <dev-sub-id>
|
|
442
|
+
oxe-cc azure sync --diff
|
|
443
|
+
oxe-cc azure find api --type servicebus
|
|
444
|
+
oxe-cc azure operations list
|
|
445
|
+
```
|
|
446
|
+
|
|
447
|
+
---
|
|
448
|
+
|
|
449
|
+
## CLI de referência
|
|
450
|
+
|
|
451
|
+
| Comando | Função |
|
|
452
|
+
|---|---|
|
|
453
|
+
| `oxe-cc install` | instala núcleo e integrações |
|
|
454
|
+
| `oxe-cc doctor` | valida estrutura, configuração e saúde lógica |
|
|
455
|
+
| `oxe-cc doctor --release --write-manifest` | executa o gate de release e grava o manifesto |
|
|
456
|
+
| `oxe-cc status --full` | mostra próximo passo, coverage matrix e active run |
|
|
457
|
+
| `oxe-cc status --json` | saída estruturada para hosts e CI |
|
|
458
|
+
| `oxe-cc map --json` | catálogo dos artefatos existentes e lazy |
|
|
459
|
+
| `oxe-cc context build\|inspect` | produz ou inspeciona context packs |
|
|
460
|
+
| `oxe-cc events --tail 50 --json` | lê eventos operacionais incrementalmente |
|
|
461
|
+
| `oxe-cc dashboard` | inicia a interface web local |
|
|
462
|
+
| `oxe-cc runtime ...` | controla compile, execute, verify, gates, recovery e promotion |
|
|
463
|
+
| `oxe-cc update` | atualiza os artefatos gerenciados |
|
|
464
|
+
| `oxe-cc uninstall` | remove integrações e, conforme flags, o núcleo |
|
|
465
|
+
|
|
466
|
+
Ajuda completa:
|
|
467
|
+
|
|
468
|
+
```bash
|
|
469
|
+
npx oxe-cc@latest --help
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
---
|
|
473
|
+
|
|
474
|
+
## SDK para automação
|
|
475
|
+
|
|
476
|
+
O mesmo núcleo pode ser consumido programaticamente:
|
|
477
|
+
|
|
478
|
+
```js
|
|
479
|
+
const oxe = require('oxe-cc');
|
|
480
|
+
|
|
481
|
+
const health = oxe.runDoctorChecks({ projectRoot: process.cwd() });
|
|
482
|
+
const plan = oxe.parsePlan(planMarkdown);
|
|
483
|
+
const spec = oxe.parseSpec(specMarkdown);
|
|
484
|
+
|
|
485
|
+
if (!health.ok || !oxe.validateDecisionFidelity(discussMarkdown, planMarkdown).ok) {
|
|
486
|
+
process.exitCode = 1;
|
|
487
|
+
}
|
|
488
|
+
```
|
|
489
|
+
|
|
490
|
+
O SDK também expõe bridges operacionais para runtime, gates, verificação, promotion e recovery. Tipos: [index.d.ts](lib/sdk/index.d.ts) · fonte das declarações: [index.types.ts](lib/sdk/index.types.ts) · [documentação do SDK](lib/sdk/README.md).
|
|
491
|
+
|
|
492
|
+
---
|
|
493
|
+
|
|
494
|
+
## Uso em equipe
|
|
495
|
+
|
|
496
|
+
Uma adoção saudável costuma seguir três estágios:
|
|
497
|
+
|
|
498
|
+
1. **Individual:** `/oxe-quick`, ciclo Standard e `status --full`.
|
|
499
|
+
2. **Equipe:** profiles compartilhados, sessões, revisão de SPEC/PLAN e dashboard.
|
|
500
|
+
3. **Governado:** runtime-first, gates formais, CI, evidências de release e promotion controlada.
|
|
501
|
+
|
|
502
|
+
Métricas úteis para acompanhar a adoção:
|
|
503
|
+
|
|
504
|
+
| Dimensão | Métrica recomendada | Interpretação |
|
|
505
|
+
|---|---|---|
|
|
506
|
+
| Fluxo | ciclos que terminam em `verify_complete` | mede fechamento, não apenas início |
|
|
507
|
+
| Requisitos | critérios A* com evidência | revela cobertura real da entrega |
|
|
508
|
+
| Planejamento | tarefas com comando de verificação | mede executabilidade do plano |
|
|
509
|
+
| Qualidade | gaps e riscos residuais por ciclo | mostra onde o método ainda é frágil |
|
|
510
|
+
| Operação | retries, gates e recoveries por run | indica instabilidade ou políticas excessivas |
|
|
511
|
+
| Aprendizado | lições reutilizadas em ciclos posteriores | mede memória útil, não volume de documentação |
|
|
512
|
+
| Eficiência | tempo por gate e por onda | ajuda a localizar gargalos sem premiar pressa |
|
|
513
|
+
|
|
514
|
+
Não use quantidade de prompts, agentes ou linhas geradas como métrica isolada de sucesso. O objetivo é reduzir retrabalho e aumentar confiança na entrega.
|
|
515
|
+
|
|
516
|
+
Guias: [adoção por papéis](docs/ROLES.md) · [adoção em equipe](docs/TEAM-ADOPTION.md) · [walkthrough](docs/WALKTHROUGH.md) · [playbook de incidentes](docs/INCIDENT-PLAYBOOK.md).
|
|
517
|
+
|
|
518
|
+
---
|
|
519
|
+
|
|
520
|
+
## Desenvolvimento e qualidade do próprio OXE
|
|
521
|
+
|
|
522
|
+
```bash
|
|
523
|
+
git clone https://github.com/propagno/oxe-build.git
|
|
524
|
+
cd oxe-build
|
|
525
|
+
npm ci
|
|
526
|
+
npm test
|
|
527
|
+
```
|
|
528
|
+
|
|
529
|
+
O repositório usa um único lockfile e npm workspaces para raiz, runtime e extensão.
|
|
530
|
+
|
|
531
|
+
Gates principais:
|
|
532
|
+
|
|
533
|
+
```bash
|
|
534
|
+
npm run lint
|
|
535
|
+
npm run format:check
|
|
536
|
+
npm run test:sdk-types
|
|
537
|
+
npm run test:coverage
|
|
538
|
+
npm run test:packed-consumer
|
|
539
|
+
npm run test:vscode-ext
|
|
540
|
+
npm audit
|
|
541
|
+
npm run scan:assets
|
|
542
|
+
npm run build:vscode-ext
|
|
543
|
+
npm run release:manifest
|
|
544
|
+
npm run release:pack-check
|
|
545
|
+
npm run quality:report
|
|
546
|
+
```
|
|
547
|
+
|
|
548
|
+
O consumidor empacotado instala o tarball em um projeto temporário limpo e valida CLI, SDK, runtime e TypeScript. O teste da extensão ativa os 13 participantes em um VS Code Extension Host real. O ratchet de cobertura impede regressão dos pisos globais e dos módulos críticos.
|
|
549
|
+
|
|
550
|
+
O pipeline de release usa GitHub Actions fixadas por SHA, valida correspondência entre tag e versão e produz o VSIX antes de criar a GitHub Release. A publicação no npm é uma promoção manual e separada, executada pelo mantenedor depois da aprovação da release.
|
|
551
|
+
|
|
552
|
+
---
|
|
553
|
+
|
|
554
|
+
## Solução de problemas
|
|
555
|
+
|
|
556
|
+
| Sintoma | Diagnóstico sugerido |
|
|
557
|
+
|---|---|
|
|
558
|
+
| Não sei qual é o próximo passo | `npx oxe-cc status --full` |
|
|
559
|
+
| Workflows ausentes ou incoerentes | `npx oxe-cc doctor` |
|
|
560
|
+
| Comandos não aparecem no Cursor | confira `~/.cursor/commands/` e reinicie a IDE |
|
|
561
|
+
| Prompts não aparecem no Copilot | habilite `"chat.promptFiles": true` e confira `.github/prompts/` |
|
|
562
|
+
| Copilot CLI não atualizou skills | execute `/skills reload` |
|
|
563
|
+
| Gemini não atualizou comandos | execute `/commands reload` |
|
|
564
|
+
| Context pack está stale | `oxe-cc context build --workflow <slug>` |
|
|
565
|
+
| Execute falha repetidamente | `/oxe-execute --deep-diagnosis` |
|
|
566
|
+
| Runtime interrompido | `oxe-cc runtime recover` |
|
|
567
|
+
| `npx` usa uma versão antiga | `npx clear-npx-cache` e repita com `@latest` |
|
|
568
|
+
|
|
569
|
+
---
|
|
570
|
+
|
|
571
|
+
## Documentação complementar
|
|
572
|
+
|
|
573
|
+
- [Quickstart](QUICKSTART.md)
|
|
574
|
+
- [Walkthrough completo](docs/WALKTHROUGH.md)
|
|
575
|
+
- [Papéis e responsabilidades](docs/ROLES.md)
|
|
576
|
+
- [Adoção em equipe](docs/TEAM-ADOPTION.md)
|
|
577
|
+
- [Matriz de cenários do runtime](docs/RUNTIME-SMOKE-MATRIX.md)
|
|
578
|
+
- [Quality gates](docs/QUALITY-GATES.md)
|
|
579
|
+
- [Release readiness](docs/RELEASE-READINESS.md)
|
|
580
|
+
- [SDK](lib/sdk/README.md)
|
|
581
|
+
- [Workflows canônicos](oxe/workflows/)
|
|
582
|
+
- [Referência brownfield](oxe/workflows/references/legacy-brownfield.md)
|
|
583
|
+
|
|
584
|
+
---
|
|
585
|
+
|
|
586
|
+
## Princípios de uso
|
|
587
|
+
|
|
588
|
+
1. Comece por `/oxe`; aumente a estrutura apenas quando o risco exigir.
|
|
589
|
+
2. Trate `.oxe/` como estado do trabalho, não como documentação decorativa.
|
|
590
|
+
3. Defina como verificar antes de implementar.
|
|
591
|
+
4. Prefira runtime-first para `execute` e `verify`.
|
|
592
|
+
5. Não encerre um ciclo sem evidência ou risco residual explícito.
|
|
593
|
+
6. Use agentes por domínio e por demanda; não por disponibilidade.
|
|
594
|
+
7. Faça o próximo ciclo aprender com o anterior.
|
|
595
|
+
|
|
596
|
+
---
|
|
597
|
+
|
|
598
|
+
## Licença
|
|
599
|
+
|
|
600
|
+
[MIT](LICENSE)
|