@vtxmacro/cli 2026.8.53 → 2026.8.55

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 (3) hide show
  1. package/README.md +44 -16
  2. package/bin/vtx.js +1460 -146
  3. package/package.json +52 -4
package/README.md CHANGED
@@ -10,7 +10,8 @@ vtx --version
10
10
  ```
11
11
 
12
12
  The host supports Windows x64 and Linux x64, including WSL. The package installs
13
- the exact supported OpenAI Codex runtime and GitHub Copilot SDK. The VTX host
13
+ the exact supported OpenAI Codex runtime, GitHub Copilot SDK, and official
14
+ DeepSeek Harness package wave. The VTX host
14
15
  verifies the Codex runtime's version and digest before use; it does not borrow a
15
16
  Codex binary from PATH or an editor extension.
16
17
  For Windows-login auto-start, install and configure the CLI from native Windows;
@@ -52,7 +53,7 @@ Both paths use a separate least-privilege `insights:inference` OAuth grant.
52
53
  VTX never receives an agent vendor password, OAuth token, or subscription
53
54
  credential.
54
55
 
55
- ### Durable subscription hosts
56
+ ### Durable inference hosts
56
57
 
57
58
  Codex remains the reference implementation and its existing App Server,
58
59
  authentication, quota, recovery, and provider-mode path are unchanged. GitHub
@@ -64,9 +65,10 @@ and VTX grant. VTX resolves the package-owned pinned Copilot platform runtime
64
65
  explicitly and rejects an `auto`-only catalog because it cannot prove the
65
66
  effective model.
66
67
 
67
- An explicitly capable durable Codex or Copilot model can also control Main in
68
- **Agent** mode using the same VTX OAuth grant and its own private subscription
69
- login. VTX assigns the running bot but does not send a VTX-authored prompt or set
68
+ An explicitly capable durable Codex, Copilot, or DeepSeek Harness model can also
69
+ control Main in **Agent** mode using the same VTX OAuth grant and its own local
70
+ adapter-specific vendor credential: ChatGPT or Copilot login, or a DeepSeek API
71
+ key. VTX assigns the running bot but does not send a VTX-authored prompt or set
70
72
  the analysis cadence. The assigned runtime keeps a durable Agent thread,
71
73
  chooses when to wake, requests only the assignment-scoped VTX data it needs (or
72
74
  none), and submits the normal structured decision for VTX to validate and
@@ -106,6 +108,27 @@ vtx inference-host doctor --adapter copilot --instance copilot-1 --json
106
108
  vtx inference-host service install --adapter copilot --instance copilot-1
107
109
  ```
108
110
 
111
+ For DeepSeek Harness, import the API key through stdin so it never appears in
112
+ process arguments, then install a distinct durable instance:
113
+
114
+ ```bash
115
+ vtx inference-host login --instance deepseek-1
116
+ vtx inference-host deepseek-login --instance deepseek-1 < /private/path/deepseek.key
117
+ vtx inference-host doctor --adapter deepseek-harness --instance deepseek-1 --json
118
+ vtx inference-host service install --adapter deepseek-harness --instance deepseek-1
119
+ ```
120
+
121
+ The DeepSeek key remains in the local OS credential store or the explicitly
122
+ selected private-file fallback; it is never written to the service manifest or
123
+ sent to VTX. Provider mode is tool-less. Main Agent mode uses a durable Harness
124
+ session with only the three assignment-scoped VTX tools. Review and Screener
125
+ remain Provider-only. An Agent dispatch whose provider outcome cannot be proved
126
+ is durably fenced and is not repeated after a service restart. Inspect
127
+ `status --json`, `doctor --json`, and service logs; revoke and relink the exact
128
+ instance after reconciling an ambiguous fence. An authentication fence clears
129
+ only after a successful replacement key import. Quota and rate-limit failures
130
+ honor their provider retry time or a bounded local cooldown.
131
+
109
132
  To connect another Codex subscription to the same VTX account, repeat the
110
133
  login and service-install commands with a stable local name such as
111
134
  `--instance codex-2`. Each named instance has an isolated VTX grant, Codex
@@ -132,26 +155,31 @@ The command never kills an arbitrary process, logs either account out, changes
132
155
  VTX profile settings, or controls a Trader. If any package-owned VTX automation
133
156
  is still live, recovery fails closed and preserves its evidence.
134
157
 
135
- For each VTX profile and lane, **Host #1** is tried first and later compatible
136
- hosts follow in the saved Host cascade order. Distinct computers may use the
137
- same authenticated subscription; provider quota remains account-level.
138
- Quota/credits exhaustion can advance only to a later host reporting a different
139
- account identity. Unusable authentication and exhausted recoverable host failures
158
+ For each VTX profile and lane, **Host #1** is selected. Provider-mode calls may
159
+ continue through later compatible hosts in the saved Host cascade order. Agent
160
+ mode keeps its durable thread and assignment on Host #1 and fences a failure
161
+ instead of automatically transferring it. Distinct computers may use the same
162
+ authenticated subscription; when account identity is reported, provider quota
163
+ remains account-level and quota exhaustion skips only positively matching
164
+ identities. Unusable authentication and exhausted recoverable Provider failures
140
165
  can advance the same logical call. VTX never changes
141
166
  provider, model, effort, or response mode, and never cascades a bad request,
142
167
  policy rejection, or uncertain dispatch outcome.
143
168
 
144
- Automated hosts do not impose a subscription-specific profile-count or
169
+ Automated hosts do not impose a provider-specific profile-count or
145
170
  concurrency limit by default. Set an explicit positive integer with
146
- `--max-concurrency` when you want a local limit. Every active turn shares the live subscription
147
- rate-limit gate and cooldown; unlimited local admission does not guarantee
148
- capacity beyond the authenticated account's current entitlement. Updating from
171
+ `--max-concurrency` when you want a local limit. Every active turn still
172
+ consumes capacity from its adapter-specific provider account or API key;
173
+ unlimited local admission does not guarantee provider capacity. Codex uses its
174
+ reported live subscription gate and cooldown. DeepSeek Harness is API-billed and
175
+ does not claim a stable account identity or provider rate-limit window. Updating from
149
176
  an older bounded host removes its previous numeric limit; run
150
177
  `service install --max-concurrency <positive-integer>` only to add one back.
151
178
 
152
179
  Every durable host uses a separate least-privilege `insights:inference`
153
180
  OAuth grant. Codex additionally keeps its ChatGPT subscription login in a dedicated
154
- private Codex home; Copilot uses its official cached user login.
181
+ private Codex home; Copilot uses its official cached user login; DeepSeek Harness
182
+ keeps its API key in the local VTX credential boundary.
155
183
  No vendor credential is written to the VTX service manifest. The per-user OS service starts immediately, starts again at login, and
156
184
  reconnects after sleep, network loss, or a worker exit. Stopping a VTX bot leaves
157
185
  the provider online and idle. Use `vtx inference-host run` only for foreground
@@ -177,7 +205,7 @@ confirmation page was blocked; the grant succeeded.
177
205
 
178
206
  ### Any compatible agent harness
179
207
 
180
- Codex, Claude Code, Cursor, GitHub Copilot, Antigravity, and other agents that can
208
+ Codex, DeepSeek Harness, Claude Code, Cursor, GitHub Copilot, Antigravity, and other agents that can
181
209
  run shell commands can use their existing first-party session without a
182
210
  VTX-owned vendor adapter:
183
211