@christiandoxa/prodex 0.104.0 → 0.105.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +236 -11
  2. package/package.json +7 -7
package/README.md CHANGED
@@ -46,13 +46,17 @@ You need at least one logged-in Prodex profile.
46
46
 
47
47
  ## Installation
48
48
 
49
- ### npm
49
+ <details open>
50
+ <summary>Install from npm</summary>
50
51
 
51
52
  ```bash
52
53
  npm install -g @christiandoxa/prodex
53
54
  ```
54
55
 
55
- ### Source checkout
56
+ </details>
57
+
58
+ <details>
59
+ <summary>Install from source checkout</summary>
56
60
 
57
61
  ```bash
58
62
  cargo install --path .
@@ -60,12 +64,17 @@ cargo install --path .
60
64
 
61
65
  If you install from source, make sure the `codex` binary in your `PATH` is already installed and up to date.
62
66
 
67
+ </details>
68
+
63
69
  ## Optional tools
64
70
 
65
- `prodex` can run without Claude-Mem, RTK, SQZ, token-savior, claw-compactor, or llm-min docs.
71
+ `prodex` can run without Claude-Mem, RTK, SQZ, token-savior, claw-compactor, llm-min docs, or Presidio.
66
72
 
67
73
  Install them only if you want to use commands such as:
68
74
 
75
+ <details>
76
+ <summary>Optional tool commands</summary>
77
+
69
78
  ```bash
70
79
  prodex caveman mem
71
80
  prodex caveman mem rtk
@@ -74,12 +83,16 @@ prodex sqz
74
83
  prodex tokensavior
75
84
  prodex clawcompactor
76
85
  prodex llmmin
86
+ prodex presidio doctor
87
+ prodex presidio redact --text "My phone is 212-555-1234"
77
88
  prodex s
78
89
  prodex super
79
90
  prodex claude mem
80
91
  prodex claude caveman mem
81
92
  ```
82
93
 
94
+ </details>
95
+
83
96
  <details>
84
97
  <summary>Install Claude-Mem</summary>
85
98
 
@@ -114,13 +127,13 @@ RTK is used by the `rtk` variants and by my daily `prodex s` / `prodex super` wo
114
127
  ### Homebrew
115
128
 
116
129
  ```bash
117
- brew install rtk
130
+ brew install rtk-ai/tap/rtk
118
131
  ```
119
132
 
120
133
  ### Linux/macOS quick install
121
134
 
122
135
  ```bash
123
- curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh | sh
136
+ curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/master/install.sh | sh
124
137
  ```
125
138
 
126
139
  If it installs to `~/.local/bin`, make sure that directory is in your `PATH`:
@@ -138,7 +151,7 @@ echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
138
151
  ### Cargo
139
152
 
140
153
  ```bash
141
- cargo install --git https://github.com/rtk-ai/rtk
154
+ cargo install --git https://github.com/rtk-ai/rtk rtk
142
155
  ```
143
156
 
144
157
  ### Verify RTK
@@ -154,7 +167,7 @@ Remove it and reinstall from the Git URL:
154
167
 
155
168
  ```bash
156
169
  cargo uninstall rtk
157
- cargo install --git https://github.com/rtk-ai/rtk
170
+ cargo install --git https://github.com/rtk-ai/rtk rtk
158
171
  ```
159
172
 
160
173
  ### Initialize RTK
@@ -175,9 +188,193 @@ Then restart your coding tool.
175
188
 
176
189
  </details>
177
190
 
191
+ <details>
192
+ <summary>Install SQZ</summary>
193
+
194
+ SQZ is used by `prodex sqz` and by Super mode when the `sqz-mcp` binary is available on `PATH` or under a managed optimizer checkout.
195
+
196
+ Recommended Linux/macOS install:
197
+
198
+ ```bash
199
+ curl -fsSL https://raw.githubusercontent.com/ojuschugh1/sqz/main/install.sh | sh
200
+ ```
201
+
202
+ Windows PowerShell:
203
+
204
+ ```powershell
205
+ irm https://raw.githubusercontent.com/ojuschugh1/sqz/main/install.ps1 | iex
206
+ ```
207
+
208
+ Alternative npm install:
209
+
210
+ ```bash
211
+ npm install -g sqz-cli
212
+ ```
213
+
214
+ Optional source install:
215
+
216
+ ```bash
217
+ cargo install sqz-cli
218
+ ```
219
+
220
+ Initialize hooks if you also want SQZ outside Prodex:
221
+
222
+ ```bash
223
+ sqz init --global
224
+ # or only for the current project
225
+ sqz init
226
+ ```
227
+
228
+ Verify:
229
+
230
+ ```bash
231
+ sqz --version
232
+ sqz gain
233
+ which sqz-mcp
234
+ ```
235
+
236
+ Prodex auto-registers `prodex-sqz` for Super/Caveman overlay sessions when `sqz-mcp` is discoverable.
237
+
238
+ </details>
239
+
240
+ <details>
241
+ <summary>Install token-savior</summary>
242
+
243
+ token-savior is used by `prodex tokensavior` and by Super mode when the `token-savior` binary is available on `PATH` or under a managed optimizer checkout.
244
+
245
+ Recommended isolated install:
246
+
247
+ ```bash
248
+ git clone https://github.com/Mibayy/token-savior ~/.local/share/token-savior
249
+ python3 -m venv ~/.local/token-savior-venv
250
+ ~/.local/token-savior-venv/bin/pip install -e "$HOME/.local/share/token-savior[mcp]"
251
+ ln -sf ~/.local/token-savior-venv/bin/token-savior ~/.local/bin/token-savior
252
+ ```
253
+
254
+ Make sure `~/.local/bin` is on `PATH`:
255
+
256
+ ```bash
257
+ echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
258
+ ```
259
+
260
+ If you use Zsh:
261
+
262
+ ```bash
263
+ echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
264
+ ```
265
+
266
+ Verify:
267
+
268
+ ```bash
269
+ token-savior --help
270
+ which token-savior
271
+ ```
272
+
273
+ Prodex handles MCP registration for its own overlay session when it can find the binary, so you do not need to manually edit `.mcp.json` just for `prodex super`.
274
+
275
+ </details>
276
+
277
+ <details>
278
+ <summary>Install claw-compactor</summary>
279
+
280
+ claw-compactor is used by `prodex clawcompactor` and by Super mode as a deterministic/local context compaction aid.
281
+
282
+ Recommended source install:
283
+
284
+ ```bash
285
+ git clone https://github.com/aeromomo/claw-compactor.git ~/.local/share/claw-compactor
286
+ python3 -m venv ~/.local/claw-compactor-venv
287
+ ~/.local/claw-compactor-venv/bin/pip install -e "$HOME/.local/share/claw-compactor[accurate]"
288
+ ```
289
+
290
+ If you only need exact token counting for the scripts:
291
+
292
+ ```bash
293
+ ~/.local/claw-compactor-venv/bin/pip install tiktoken
294
+ ```
295
+
296
+ Expose the checkout to Prodex's managed optimizer discovery:
297
+
298
+ ```bash
299
+ mkdir -p ~/.local/share/prodex-optimizers
300
+ ln -sfn ~/.local/share/claw-compactor ~/.local/share/prodex-optimizers/claw-compactor
301
+ ```
302
+
303
+ Quick non-destructive benchmark:
304
+
305
+ ```bash
306
+ python3 ~/.local/share/claw-compactor/scripts/mem_compress.py /path/to/workspace benchmark
307
+ ```
308
+
309
+ </details>
310
+
311
+ <details>
312
+ <summary>Install or generate llm-min docs</summary>
313
+
314
+ `prodex llmmin` and Super mode look for checked-in `llm-min.txt`-style documentation. Prodex does not require the `llm-min` generator at runtime.
315
+
316
+ Install the upstream generator only when you want to create or refresh those docs:
317
+
318
+ ```bash
319
+ python3 -m pip install llm-min
320
+ playwright install
321
+ ```
322
+
323
+ `llm-min` uses Gemini for document compression, so set a Gemini API key before generating docs:
324
+
325
+ ```bash
326
+ export GEMINI_API_KEY=your_api_key_here
327
+ ```
328
+
329
+ Generate from local docs:
330
+
331
+ ```bash
332
+ llm-min -i ./docs -o ./llm_min_docs -n project
333
+ ```
334
+
335
+ Then check in or reference the generated `llm-min.txt`/`llm-full.txt` artifacts as appropriate for your repo. If you do not want remote model calls, skip the generator and provide hand-written or checked-in `llm-min.txt` files.
336
+
337
+ </details>
338
+
339
+ <details>
340
+ <summary>Install Presidio</summary>
341
+
342
+ Presidio is used by `prodex presidio` and by the optional Super-mode privacy prompt. It runs as local Analyzer and Anonymizer HTTP services.
343
+
344
+ Fast Docker install using Microsoft's published images:
345
+
346
+ ```bash
347
+ docker pull mcr.microsoft.com/presidio-analyzer
348
+ docker pull mcr.microsoft.com/presidio-anonymizer
349
+
350
+ docker run -d --name presidio-analyzer -p 5002:3000 mcr.microsoft.com/presidio-analyzer:latest
351
+ docker run -d --name presidio-anonymizer -p 5001:3000 mcr.microsoft.com/presidio-anonymizer:latest
352
+ ```
353
+
354
+ Source checkout with Compose:
355
+
356
+ ```bash
357
+ git clone https://github.com/microsoft/presidio.git ~/.local/share/presidio
358
+ cd ~/.local/share/presidio
359
+ docker compose -f docker-compose-text.yml up -d --build
360
+ ```
361
+
362
+ Verify with Prodex:
363
+
364
+ ```bash
365
+ prodex presidio doctor
366
+ prodex presidio redact --text "My name is John Smith and my phone is 212-555-1234."
367
+ prodex presidio enable
368
+ ```
369
+
370
+ `prodex super` / `prodex s` asks `Use Presidio for data safety? [y/N]` before starting an interactive session. The default is `n`. Answering `y` marks the session as Presidio-enabled and is equivalent to adding the `presidio` prefix to the Super stack.
371
+
372
+ </details>
373
+
178
374
  ## Quick start
179
375
 
180
- ### Import your current Codex login
376
+ <details open>
377
+ <summary>Import your current Codex login</summary>
181
378
 
182
379
  If your current Codex home is already logged in:
183
380
 
@@ -185,7 +382,10 @@ If your current Codex home is already logged in:
185
382
  prodex profile import-current main
186
383
  ```
187
384
 
188
- ### Or create profiles from scratch
385
+ </details>
386
+
387
+ <details>
388
+ <summary>Create profiles from scratch</summary>
189
389
 
190
390
  ```bash
191
391
  prodex login
@@ -193,7 +393,10 @@ prodex profile add second
193
393
  prodex login --profile second
194
394
  ```
195
395
 
196
- ### Check profiles and quota
396
+ </details>
397
+
398
+ <details>
399
+ <summary>Check profiles and quota</summary>
197
400
 
198
401
  ```bash
199
402
  prodex profile list
@@ -201,7 +404,10 @@ prodex quota --all
201
404
  prodex session list
202
405
  ```
203
406
 
204
- ### Start Codex through Prodex
407
+ </details>
408
+
409
+ <details>
410
+ <summary>Start Codex through Prodex</summary>
205
411
 
206
412
  ```bash
207
413
  prodex
@@ -213,6 +419,8 @@ Or run a one-off prompt:
213
419
  prodex exec "review this repo"
214
420
  ```
215
421
 
422
+ </details>
423
+
216
424
  <details>
217
425
  <summary>Import a Copilot CLI account</summary>
218
426
 
@@ -227,6 +435,9 @@ When you import a Copilot profile, Prodex does not move the Copilot token into P
227
435
 
228
436
  ## Daily command: `prodex s`
229
437
 
438
+ <details open>
439
+ <summary>Super mode overview</summary>
440
+
230
441
  For daily work, I use:
231
442
 
232
443
  ```bash
@@ -261,6 +472,18 @@ prodex s exec "review this repo"
261
472
  prodex caveman mem rtk sqz tokensavior clawcompactor llmmin --full-access
262
473
  ```
263
474
 
475
+ Before an interactive Super session starts, Prodex asks whether to enable Presidio:
476
+
477
+ ```text
478
+ Use Presidio for data safety? [y/N]
479
+ ```
480
+
481
+ The default is `n`. Answering `y` is equivalent to adding the `presidio` prefix:
482
+
483
+ ```bash
484
+ prodex caveman mem rtk sqz tokensavior clawcompactor llmmin presidio --full-access
485
+ ```
486
+
264
487
  Full access maps to Codex's sandbox-bypass launch flag. Use it only when you intentionally want Codex to run without the normal approval and sandbox protections.
265
488
 
266
489
  Super's built-in optimization stack is deliberately local and deterministic. It preloads the existing Caveman, Claude-Mem, and RTK pieces, auto-registers `sqz-mcp` and `token-savior` MCP servers when those binaries are already on `PATH` or in a managed `prodex-optimizers` checkout, then uses Smart Context Autopilot plus low-token workflow accommodations for targets such as `claw-compactor` and `llm-min.txt`.
@@ -272,6 +495,8 @@ RTK and SQZ split the token work across different sides of the flow:
272
495
 
273
496
  Managed optimizer checkouts are discovered from `PRODEX_OPTIMIZERS_HOME`, `$XDG_DATA_HOME/prodex-optimizers`, then `~/.local/share/prodex-optimizers`.
274
497
 
498
+ </details>
499
+
275
500
  ## Commands
276
501
 
277
502
  <details open>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@christiandoxa/prodex",
3
- "version": "0.104.0",
3
+ "version": "0.105.0",
4
4
  "description": "Safe multi-account auto-rotate for Codex CLI with isolated CODEX_HOME profiles",
5
5
  "license": "Apache-2.0",
6
6
  "bin": {
@@ -16,12 +16,12 @@
16
16
  "@openai/codex": "latest"
17
17
  },
18
18
  "optionalDependencies": {
19
- "@christiandoxa/prodex-linux-x64": "0.104.0",
20
- "@christiandoxa/prodex-linux-arm64": "0.104.0",
21
- "@christiandoxa/prodex-darwin-x64": "0.104.0",
22
- "@christiandoxa/prodex-darwin-arm64": "0.104.0",
23
- "@christiandoxa/prodex-win32-x64": "0.104.0",
24
- "@christiandoxa/prodex-win32-arm64": "0.104.0"
19
+ "@christiandoxa/prodex-linux-x64": "0.105.0",
20
+ "@christiandoxa/prodex-linux-arm64": "0.105.0",
21
+ "@christiandoxa/prodex-darwin-x64": "0.105.0",
22
+ "@christiandoxa/prodex-darwin-arm64": "0.105.0",
23
+ "@christiandoxa/prodex-win32-x64": "0.105.0",
24
+ "@christiandoxa/prodex-win32-arm64": "0.105.0"
25
25
  },
26
26
  "engines": {
27
27
  "node": ">=18"