vgxness 1.3.0 → 1.3.1
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/README.md +16 -16
- package/dist/cli/commands/interactive-entrypoint-dispatcher.js +4 -4
- package/dist/cli/commands/setup-dispatcher.js +4 -4
- package/dist/cli/doctor-renderer.js +1 -1
- package/dist/cli/sdd-renderer.js +7 -7
- package/dist/cli/setup-status-renderer.js +1 -0
- package/dist/cli/tui/main-menu/main-menu-read-model.js +8 -0
- package/dist/cli/tui/main-menu/main-menu-render-shape.js +14 -1
- package/dist/cli/tui/opentui/code/index.js +4 -4
- package/dist/cli/tui/opentui/main-menu/screen.js +6 -0
- package/dist/cli/tui/opentui/setup/screen.js +1 -1
- package/dist/cli/tui/opentui/setup/smoke.js +1 -1
- package/dist/cli/tui/setup/setup-tui-read-model.js +3 -3
- package/dist/cli/tui/setup/setup-tui-render-shape.js +8 -9
- package/dist/cli/tui/setup/setup-tui-state.js +1 -1
- package/dist/code/runtime/sdd-context.js +2 -2
- package/dist/mcp/validation.js +6 -2
- package/dist/orchestrator/natural-language-planner.js +1 -1
- package/dist/sdd/sdd-workflow-service.js +1 -1
- package/dist/setup/backup-rollback-service.js +2 -2
- package/dist/setup/setup-lifecycle-service.js +6 -6
- package/dist/setup/setup-plan.js +3 -3
- package/dist/verification/verification-plan-service.js +1 -1
- package/docs/architecture.md +39 -38
- package/docs/cli.md +134 -127
- package/docs/funcionamiento-del-sistema.md +16 -16
- package/docs/harness-gap-analysis.md +15 -1
- package/docs/prd.md +10 -10
- package/docs/vgxcode.md +20 -9
- package/docs/vgxness-code.md +6 -4
- package/package.json +1 -1
- package/dist/cli/guided-main-menu.js +0 -470
- package/dist/cli/setup-wizard-read-model.js +0 -72
- package/dist/cli/setup-wizard-renderer.js +0 -155
- package/dist/cli/setup-wizard-state.js +0 -82
|
@@ -58,7 +58,7 @@ Scripts principales:
|
|
|
58
58
|
|
|
59
59
|
| Script | Funcion |
|
|
60
60
|
|---|---|
|
|
61
|
-
| `
|
|
61
|
+
| `bun run cli:bun -- ...` | Ejecuta la CLI local desde el repo usando el mismo runtime Bun que los bins instalados. |
|
|
62
62
|
| `npm run build` | Compila TypeScript y copia migraciones. |
|
|
63
63
|
| `npm run test` | Ejecuta tests con el runner nativo de Node. |
|
|
64
64
|
| `npm run typecheck` | Valida tipos sin emitir archivos. |
|
|
@@ -170,10 +170,10 @@ Una accion puede entrar por CLI o por MCP.
|
|
|
170
170
|
Ejemplos CLI:
|
|
171
171
|
|
|
172
172
|
```bash
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
173
|
+
vgxness sdd status --project vgxness --change my-change
|
|
174
|
+
vgxness orchestrator preview --project vgxness --intent "Build a new checkout workflow" --change checkout-flow
|
|
175
|
+
vgxness agents resolve --project vgxness --workflow sdd --phase apply-progress
|
|
176
|
+
vgxness runs list --project vgxness
|
|
177
177
|
```
|
|
178
178
|
|
|
179
179
|
Ejemplo MCP:
|
|
@@ -305,7 +305,7 @@ Este seam es importante porque separa la decision de ruteo de la ejecucion real.
|
|
|
305
305
|
La CLI expone el planner con:
|
|
306
306
|
|
|
307
307
|
```bash
|
|
308
|
-
|
|
308
|
+
vgxness orchestrator preview --project vgxness --intent "Build a new persistent checkout workflow" --change checkout-flow --db .vgx/memory.sqlite
|
|
309
309
|
```
|
|
310
310
|
|
|
311
311
|
Parametros:
|
|
@@ -325,7 +325,7 @@ Ejemplo de decision esperada:
|
|
|
325
325
|
Intent: Build a new persistent checkout workflow capability
|
|
326
326
|
Flow: sdd
|
|
327
327
|
Suggested change id: checkout-flow
|
|
328
|
-
Preview action:
|
|
328
|
+
Preview action: vgxness sdd next --project vgxness --change checkout-flow
|
|
329
329
|
Safety: no ejecuto nada
|
|
330
330
|
```
|
|
331
331
|
|
|
@@ -416,7 +416,7 @@ La precedencia de seleccion de base es:
|
|
|
416
416
|
La ruta historica `.vgx/memory.sqlite` sigue siendo compatible, pero ahora es explicita:
|
|
417
417
|
|
|
418
418
|
```bash
|
|
419
|
-
|
|
419
|
+
vgxness memory search --project vgxness --db .vgx/memory.sqlite
|
|
420
420
|
```
|
|
421
421
|
|
|
422
422
|
Este detalle es importante: `vgxness` puede funcionar como herramienta instalada globalmente sin acoplar la memoria al workdir actual, pero tambien permite aislar estado cuando se necesita reproducibilidad en tests o dogfood local.
|
|
@@ -616,7 +616,7 @@ Tools representativas (no exhaustivas; la fuente actual de nombres soportados es
|
|
|
616
616
|
La CLI se ejecuta localmente con:
|
|
617
617
|
|
|
618
618
|
```bash
|
|
619
|
-
|
|
619
|
+
vgxness <area> <command> [flags]
|
|
620
620
|
```
|
|
621
621
|
|
|
622
622
|
Areas principales vistas en el dispatcher:
|
|
@@ -644,7 +644,7 @@ La base se selecciona con la misma regla que el resto del sistema:
|
|
|
644
644
|
Sin `--db`, la CLI usa la base global de usuario. Si se quiere la base del repo para pruebas locales, se debe pedir explicitamente:
|
|
645
645
|
|
|
646
646
|
```bash
|
|
647
|
-
|
|
647
|
+
vgxness sdd status --project vgxness --change my-change --db .vgx/memory.sqlite
|
|
648
648
|
```
|
|
649
649
|
|
|
650
650
|
## Setup local
|
|
@@ -714,7 +714,7 @@ Supongamos que se quiere trabajar en un cambio llamado `add-agent-profiles`.
|
|
|
714
714
|
### 1. Revisar setup
|
|
715
715
|
|
|
716
716
|
```bash
|
|
717
|
-
|
|
717
|
+
vgxness setup status --project vgxness
|
|
718
718
|
```
|
|
719
719
|
|
|
720
720
|
El sistema revisa store, MCP y agente default.
|
|
@@ -722,7 +722,7 @@ El sistema revisa store, MCP y agente default.
|
|
|
722
722
|
### 2. Clasificar el pedido natural
|
|
723
723
|
|
|
724
724
|
```bash
|
|
725
|
-
|
|
725
|
+
vgxness orchestrator preview --project vgxness --intent "Build a new agent profile workflow" --change add-agent-profiles
|
|
726
726
|
```
|
|
727
727
|
|
|
728
728
|
El sistema devuelve un preview no ejecutable. Si detecta nueva capacidad, arquitectura, workflow, persistencia, seguridad o riesgo de ejecucion, recomienda `sdd` y puede incluir el proximo comando manual de SDD.
|
|
@@ -730,7 +730,7 @@ El sistema devuelve un preview no ejecutable. Si detecta nueva capacidad, arquit
|
|
|
730
730
|
### 3. Consultar estado SDD
|
|
731
731
|
|
|
732
732
|
```bash
|
|
733
|
-
|
|
733
|
+
vgxness sdd status --project vgxness --change add-agent-profiles
|
|
734
734
|
```
|
|
735
735
|
|
|
736
736
|
Si no hay artefactos, la primera fase lista deberia ser `explore`.
|
|
@@ -738,7 +738,7 @@ Si no hay artefactos, la primera fase lista deberia ser `explore`.
|
|
|
738
738
|
### 4. Guardar el artefacto de exploracion
|
|
739
739
|
|
|
740
740
|
```bash
|
|
741
|
-
|
|
741
|
+
vgxness sdd save-artifact --project vgxness --change add-agent-profiles --phase explore --content "# Explore"
|
|
742
742
|
```
|
|
743
743
|
|
|
744
744
|
El sistema guarda el contenido en memoria como artefacto con topic key:
|
|
@@ -750,7 +750,7 @@ sdd/add-agent-profiles/explore
|
|
|
750
750
|
### 5. Preguntar la siguiente fase
|
|
751
751
|
|
|
752
752
|
```bash
|
|
753
|
-
|
|
753
|
+
vgxness sdd next --project vgxness --change add-agent-profiles
|
|
754
754
|
```
|
|
755
755
|
|
|
756
756
|
Si `explore` esta presente, la siguiente fase runnable sera `proposal`.
|
|
@@ -758,7 +758,7 @@ Si `explore` esta presente, la siguiente fase runnable sera `proposal`.
|
|
|
758
758
|
### 6. Resolver un agente para implementar
|
|
759
759
|
|
|
760
760
|
```bash
|
|
761
|
-
|
|
761
|
+
vgxness agents resolve --project vgxness --workflow sdd --phase apply-progress --provider opencode --task "Implement agent profile routing"
|
|
762
762
|
```
|
|
763
763
|
|
|
764
764
|
El sistema devuelve candidatos con score y razones.
|
|
@@ -1,4 +1,18 @@
|
|
|
1
|
-
# Harness Systems Gap Analysis
|
|
1
|
+
# Historical Harness Systems Gap Analysis
|
|
2
|
+
|
|
3
|
+
> **Status:** historical planning note. This document predates much of the v1 runtime foundation. Use `docs/architecture.md`, `docs/prd.md`, and `docs/cli.md` as the current product references. Keep this file for design context, not as a live gap checklist.
|
|
4
|
+
|
|
5
|
+
## Current interpretation after v1.3.0
|
|
6
|
+
|
|
7
|
+
Several items below now exist as v1 foundations: local run records, preflight/approval planning, SDD artifacts, memory-backed storage, agent/subagent registries, provider setup previews, package evidence, and MCP control-plane tools.
|
|
8
|
+
|
|
9
|
+
The remaining strategic gaps are narrower:
|
|
10
|
+
|
|
11
|
+
- real provider/executor dispatch instead of planning-only run execution;
|
|
12
|
+
- stronger SDD governance gates that combine artifact presence, human acceptance, verification evidence, and blockers;
|
|
13
|
+
- operational TUI screens for SDD, runs, approvals, doctor, and settings;
|
|
14
|
+
- sandbox/worktree enforcement beyond advisory planning;
|
|
15
|
+
- export/import/redaction and upgrade/rollback evidence for beta readiness.
|
|
2
16
|
|
|
3
17
|
This research compares current agent harness patterns against the `vgxness` PRD and identifies what the product still needs before it can become a serious local-first SDD harness.
|
|
4
18
|
|
package/docs/prd.md
CHANGED
|
@@ -119,7 +119,7 @@ The MCP server is the main integration surface for AI coding tools. It should ex
|
|
|
119
119
|
|
|
120
120
|
Minimum MCP capabilities:
|
|
121
121
|
|
|
122
|
-
- Start a local MCP server through `
|
|
122
|
+
- Start a local MCP server through `vgxness mcp start` or an installed provider config.
|
|
123
123
|
- Install MCP integration for supported tools through guided setup.
|
|
124
124
|
- Expose SDD status, readiness, next-phase, and artifact operations.
|
|
125
125
|
- Expose run start/checkpoint/finalize and approval-request operations.
|
|
@@ -160,15 +160,15 @@ Minimum CLI capabilities:
|
|
|
160
160
|
Candidate CLI shape:
|
|
161
161
|
|
|
162
162
|
```bash
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
163
|
+
vgxness init
|
|
164
|
+
vgxness doctor
|
|
165
|
+
vgxness status
|
|
166
|
+
vgxness mcp install opencode
|
|
167
|
+
vgxness mcp status
|
|
168
|
+
vgxness sdd status <change>
|
|
169
|
+
vgxness sdd next <change>
|
|
170
|
+
vgxness profiles list
|
|
171
|
+
vgxness profiles set apply <model>
|
|
172
172
|
```
|
|
173
173
|
|
|
174
174
|
#### TUI
|
package/docs/vgxcode.md
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
#
|
|
1
|
+
# VGXNESS Code OpenTUI shell (`vgxcode`)
|
|
2
2
|
|
|
3
|
-
Experimental Bun/OpenTUI coding interface for VGXNESS.
|
|
3
|
+
Experimental Bun/OpenTUI coding interface for VGXNESS Code.
|
|
4
|
+
|
|
5
|
+
**Naming rule:** `VGXNESS Code` is the public product/runtime surface (`vgxness code ...`; `vgx code ...` remains a compatibility alias). `vgxcode` is the internal root-owned OpenTUI shell that renders and drives that runtime during repository development.
|
|
4
6
|
|
|
5
7
|
## Why this is root-owned
|
|
6
8
|
|
|
7
|
-
VGXNESS ships the existing `vgx
|
|
9
|
+
VGXNESS ships the existing `vgxness`/`vgx` CLI bins while the OpenTUI coding interface remains an internal root-owned surface. The repository root owns `@opentui/core`, the Bun lockfile, and verification.
|
|
8
10
|
|
|
9
|
-
This keeps the shipped `vgx
|
|
11
|
+
This keeps the shipped `vgxness`/`vgx` CLI stable while letting us build the OpenTUI experience directly from root source.
|
|
10
12
|
|
|
11
13
|
## Run
|
|
12
14
|
|
|
@@ -16,27 +18,36 @@ Prerequisite: install Bun.
|
|
|
16
18
|
bun src/cli/tui/opentui/code/index.ts
|
|
17
19
|
```
|
|
18
20
|
|
|
19
|
-
Interactive mode
|
|
21
|
+
Interactive mode starts in read-only `inspect`. Type a task/question and press `Enter`; `vgxcode` runs the root Bun CLI bridge as one of:
|
|
20
22
|
|
|
21
23
|
```bash
|
|
22
24
|
bun run cli:bun -- code inspect "<your prompt>" --events-jsonl
|
|
23
25
|
bun run cli:bun -- code plan "<your prompt>" --events-jsonl
|
|
26
|
+
bun run cli:bun -- code craft-preview "<your prompt>" --events-jsonl
|
|
27
|
+
bun run cli:bun -- code craft "<your prompt>" --events-jsonl --approval-channel stdio
|
|
24
28
|
```
|
|
25
29
|
|
|
26
|
-
The
|
|
30
|
+
The OpenTUI shell uses `bun run --silent cli:bun -- ...` internally so Bun lifecycle output does not pollute the JSONL event stream.
|
|
31
|
+
|
|
32
|
+
The prompt defaults to `inspect`. Press `Tab` to toggle between `inspect` and `plan`, or prefix a prompt with `/inspect`, `/plan`, `/craft-preview`, or `/craft`:
|
|
27
33
|
|
|
28
34
|
```text
|
|
29
35
|
/plan outline a safe implementation
|
|
30
36
|
/inspect summarize the current architecture
|
|
37
|
+
/craft-preview show the diff you would make
|
|
38
|
+
/craft apply the smallest approved fix
|
|
31
39
|
```
|
|
32
40
|
|
|
33
|
-
After submit, the prompt input is cleared and the submitted prompt remains visible as `Last submitted`. The UI shows explicit `idle`, `running`, `completed`, and `error` states.
|
|
41
|
+
After submit, the prompt input is cleared and the submitted prompt remains visible as `Last submitted`. The UI shows explicit `idle`, `running`, `completed`, and `error` states.
|
|
42
|
+
|
|
43
|
+
`vgxcode` does not own mutation policy. `inspect`, `plan`, and `craft-preview` are read-only/preview paths. `/craft` is approval-capable and may mutate only through the VGXNESS Code runtime and its explicit approval channel; the OpenTUI shell only renders pending approvals and writes approve/deny decisions to the live runtime process.
|
|
34
44
|
|
|
35
45
|
To replay real read-only runtime events without spawning the root CLI, pipe the root Bun CLI JSONL bridge into `vgxcode`:
|
|
36
46
|
|
|
37
47
|
```bash
|
|
38
48
|
bun run cli:bun -- code inspect "What is this project?" --events-jsonl | bun src/cli/tui/opentui/code/index.ts
|
|
39
49
|
bun run cli:bun -- code plan "Plan a safe change" --events-jsonl | bun src/cli/tui/opentui/code/index.ts
|
|
50
|
+
bun run cli:bun -- code craft-preview "Preview a safe change" --events-jsonl | bun src/cli/tui/opentui/code/index.ts
|
|
40
51
|
```
|
|
41
52
|
|
|
42
53
|
Use `bun run cli:bun -- ...` for OpenTUI-adjacent local testing. `npm run cli -- ...` uses Node/tsx and can fail when a path loads `@opentui/core`.
|
|
@@ -45,7 +56,7 @@ Press `Ctrl+C` to exit.
|
|
|
45
56
|
|
|
46
57
|
## Current scope
|
|
47
58
|
|
|
48
|
-
The shell reads newline-delimited `CodeRuntimeEvent` JSON from stdin when piped. If stdin has events or parse errors, `vgxcode` renders that stream and does not spawn the root CLI. If stdin is a TTY, the OpenTUI entrypoint opens the interactive prompt and uses
|
|
59
|
+
The shell reads newline-delimited `CodeRuntimeEvent` JSON from stdin when piped. If stdin has events or parse errors, `vgxcode` renders that stream and does not spawn the root CLI. If stdin is a TTY, the OpenTUI entrypoint opens the interactive prompt and uses `inspect` by default through the JSONL bridge.
|
|
49
60
|
|
|
50
61
|
Errors are shown in the Activity panel when JSONL parsing fails, unsupported runtime events appear, npm/lifecycle banners appear in the stream, or the spawned root CLI exits non-zero.
|
|
51
62
|
|
|
@@ -73,4 +84,4 @@ bun src/cli/tui/opentui/code/index.ts
|
|
|
73
84
|
|
|
74
85
|
## Safety rule
|
|
75
86
|
|
|
76
|
-
`vgxcode` renders state. It must not execute tools, bypass approvals, or own mutation policy. Runtime, approvals, verification, SDD, and memory stay in the VGXNESS core runtime.
|
|
87
|
+
`vgxcode` renders state and user decisions. It must not execute tools directly, bypass approvals, or own mutation policy. Runtime, approvals, verification, SDD, and memory stay in the VGXNESS core runtime.
|
package/docs/vgxness-code.md
CHANGED
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
VGXNESS Code is the native VGXNESS coding CLI/runtime. It is not an OpenCode wrapper, fork, compatibility layer, config format, prompt copy, or branded re-skin. Provider adapters translate VGXNESS-native requests only.
|
|
4
4
|
|
|
5
|
+
`vgxcode` is the internal root-owned OpenTUI shell for VGXNESS Code development. Public commands stay under `vgxness code ...`; the OpenTUI shell should render runtime state and approval decisions without becoming a separate mutation policy layer.
|
|
6
|
+
|
|
5
7
|
## Commands
|
|
6
8
|
|
|
7
|
-
- `
|
|
8
|
-
- `
|
|
9
|
-
- `
|
|
10
|
-
- `
|
|
9
|
+
- `vgxness code inspect "<question>"` — read-only repository investigation.
|
|
10
|
+
- `vgxness code plan "<task>"` — read-only implementation planning.
|
|
11
|
+
- `vgxness code craft "<task>"` — bounded edit-capable work with approval gates.
|
|
12
|
+
- `vgxness code sdd <change> <phase>` — SDD-backed phase work; use `--save-artifact` only when persistence is intended.
|
|
11
13
|
|
|
12
14
|
Useful controls: `--provider`, `--model`, `--stream`, `--json`, `--max-source-bytes`, `--approval-policy ask|allow|deny`, `--verification none|suggest|run|repair`, `--transcript off|summary|full`, and `--memory off|ask|auto`.
|
|
13
15
|
|