@christiandoxa/prodex 0.22.0 → 0.24.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 +72 -33
  2. package/package.json +7 -7
package/README.md CHANGED
@@ -2,31 +2,44 @@
2
2
 
3
3
  [![CI](https://github.com/christiandoxa/prodex/actions/workflows/ci.yml/badge.svg)](https://github.com/christiandoxa/prodex/actions/workflows/ci.yml)
4
4
 
5
- Run Codex, Claude Code, Caveman mode, and optional Claude-Mem-assisted sessions on top of one OpenAI profile pool.
5
+ `prodex` is a wrapper around Codex / Claude Code setups when you want to work with multiple isolated profiles.
6
6
 
7
- `prodex` manages isolated `CODEX_HOME` profiles, checks quota before launch, rotates fresh work to another ready profile when needed, and keeps existing continuations attached to the profile that already owns them.
7
+ Main use case: one account per profile, quota checked before launch, and new sessions can hop to another ready profile when the current one is not a good candidate. Existing sessions stay pinned to the profile they started with.
8
8
 
9
- ## Highlights
9
+ It can also launch Caveman mode, and optionally wire Claude-Mem into the selected session path.
10
10
 
11
- - One account = one profile
12
- - Built-in quota preflight and fresh-request rotation
13
- - Continuation affinity for existing Codex sessions
14
- - `prodex caveman` launches Codex with Caveman mode preloaded
15
- - `prodex caveman mem` keeps Caveman mode while pointing Claude-Mem transcript watching at the active Prodex session path
16
- - `prodex claude caveman` launches Claude Code with Caveman mode preloaded
17
- - `prodex claude caveman mem` combines Caveman mode with an existing Claude-Mem Claude Code install
18
- - `prodex claude` runs Claude Code through the same profile pool
11
+ ## Features
12
+
13
+ - one account = one profile
14
+ - isolated profile homes
15
+ - quota preflight before launch
16
+ - rotates fresh work to another ready profile
17
+ - keeps continuation/session affinity
18
+ - `prodex caveman` for Codex + Caveman
19
+ - `prodex caveman mem` for Codex + Caveman + Claude-Mem
20
+ - `prodex claude` for Claude Code through the same pool
21
+ - `prodex claude caveman` for Claude Code + Caveman
22
+ - `prodex claude caveman mem` for Claude Code + Caveman + Claude-Mem
19
23
 
20
24
  ## Requirements
21
25
 
22
- - At least one logged-in Prodex profile
26
+ You need at least one logged-in Prodex profile.
27
+
28
+ Depending on what you want to run:
29
+
23
30
  - Codex CLI for `prodex` and `prodex caveman`
24
31
  - Claude Code (`claude`) for `prodex claude` and `prodex claude caveman`
25
- - Optional: `claude-mem` if you want to use `mem` prefixes such as `prodex caveman mem` or `prodex claude caveman mem`
32
+ - optionally `claude-mem` for `mem` variants
33
+
34
+ Installing `@christiandoxa/prodex` from npm also installs the pinned Codex runtime dependency:
35
+
36
+ ```bash
37
+ npm install -g @christiandoxa/prodex
38
+ ````
26
39
 
27
- Installing `@christiandoxa/prodex` from npm also installs the pinned Codex runtime dependency `@openai/codex@0.121.0` for you. Claude Code is still a separate CLI.
40
+ That pulls in `@openai/codex@0.121.0` as well. Claude Code is still separate.
28
41
 
29
- If you want the `mem` path, install Claude-Mem separately with the upstream installer:
42
+ If you want Claude-Mem support, install it with the upstream installer:
30
43
 
31
44
  ```bash
32
45
  npx claude-mem install --ide codex-cli
@@ -48,22 +61,22 @@ npm install -g @christiandoxa/prodex
48
61
  cargo install prodex
49
62
  ```
50
63
 
51
- Version-pinned install:
64
+ If you want a pinned version:
52
65
 
53
66
  ```bash
54
- npm install -g @christiandoxa/prodex@0.22.0
55
- cargo install prodex --force --version 0.22.0
67
+ npm install -g @christiandoxa/prodex@0.24.0
68
+ cargo install prodex --force --version 0.24.0
56
69
  ```
57
70
 
58
- ## Quick Start
71
+ ## Quick start
59
72
 
60
- If your shared Codex home already contains a login:
73
+ If your current shared Codex home is already logged in:
61
74
 
62
75
  ```bash
63
76
  prodex profile import-current main
64
77
  ```
65
78
 
66
- Or create profiles through the normal login flow:
79
+ Or do it from scratch:
67
80
 
68
81
  ```bash
69
82
  prodex login
@@ -71,14 +84,21 @@ prodex profile add second
71
84
  prodex login --profile second
72
85
  ```
73
86
 
74
- Inspect the pool:
87
+ Import a currently logged-in Copilot CLI account into Prodex metadata:
88
+
89
+ ```bash
90
+ prodex profile import copilot
91
+ prodex profile import copilot --name copilot-main --activate
92
+ ```
93
+
94
+ Check what Prodex sees:
75
95
 
76
96
  ```bash
77
97
  prodex profile list
78
98
  prodex quota --all
79
99
  ```
80
100
 
81
- Run through Prodex:
101
+ Run stuff through Prodex:
82
102
 
83
103
  ```bash
84
104
  prodex
@@ -91,15 +111,16 @@ prodex claude caveman -- -p "summarize this repo briefly"
91
111
  prodex claude caveman mem -- -p "summarize this repo briefly"
92
112
  ```
93
113
 
94
- `prodex` without a subcommand is shorthand for `prodex run`.
114
+ `prodex` with no subcommand is just `prodex run`.
95
115
 
96
- ## Main Commands
116
+ ## Commands
97
117
 
98
118
  ### Profiles
99
119
 
100
120
  ```bash
101
121
  prodex profile list
102
122
  prodex profile add second
123
+ prodex profile import copilot
103
124
  prodex profile import-current main
104
125
  prodex login --profile second
105
126
  prodex use --profile main
@@ -108,6 +129,12 @@ prodex profile remove second
108
129
  prodex profile remove --all
109
130
  ```
110
131
 
132
+ A note on Copilot import:
133
+
134
+ `prodex profile import copilot` does **not** move the Copilot token into Prodex-managed storage. The token stays where Copilot already keeps it. Prodex only records the provider identity and API endpoint in its own metadata.
135
+
136
+ The imported profile shows up in the pool and export/import flows, but `prodex run`, `prodex login`, `prodex logout`, and `prodex quota` still only work with OpenAI/Codex profiles right now.
137
+
111
138
  ### Codex
112
139
 
113
140
  ```bash
@@ -129,9 +156,11 @@ prodex caveman exec "review this repo in caveman mode"
129
156
  prodex caveman 019c9e3d-45a0-7ad0-a6ee-b194ac2d44f9
130
157
  ```
131
158
 
132
- `prodex caveman` uses the Caveman plugin from [JuliusBrussee/caveman](https://github.com/JuliusBrussee/caveman) and launches Codex from a temporary overlay `CODEX_HOME`, so the base profile home stays unchanged after the session ends.
159
+ `prodex caveman` uses the Caveman plugin from [JuliusBrussee/caveman](https://github.com/JuliusBrussee/caveman) and launches Codex with a temporary overlay `CODEX_HOME`.
160
+
161
+ That matters because the base profile home is left alone after the session exits.
133
162
 
134
- Prefix Codex args with `mem` when you want an existing Claude-Mem Codex install to follow the selected Prodex session path instead of only watching the default `~/.codex/sessions` tree.
163
+ If you use the `mem` variant, Prodex points an existing Claude-Mem Codex setup at the active Prodex session path instead of the default `~/.codex/sessions` tree.
135
164
 
136
165
  ### Claude Code
137
166
 
@@ -146,13 +175,17 @@ prodex claude --profile second caveman -- -p "review the latest diff briefly"
146
175
  prodex claude --profile second -- -p --output-format json "show the latest diff"
147
176
  ```
148
177
 
149
- Use `prodex claude` for the normal Claude Code path, and use `prodex claude caveman` when you want the same Claude front end with Caveman mode preloaded.
178
+ Use `prodex claude` for the normal Claude Code path.
150
179
 
151
- Prefixing Claude args with `caveman` loads the Caveman plugin for that Claude session only while keeping Claude state under Prodex-managed `CLAUDE_CONFIG_DIR`, so the global `~/.claude` state is not the source of truth for the Prodex session.
180
+ Use `prodex claude caveman` if you want Claude Code with Caveman preloaded.
152
181
 
153
- Prefixing Claude args with `mem` loads an existing upstream Claude-Mem Claude Code plugin install through Claude's repeatable `--plugin-dir` support. `prodex claude caveman mem` combines both prefixes in one session.
182
+ The `caveman` prefix loads the plugin for that session only while still keeping state under the Prodex-managed `CLAUDE_CONFIG_DIR`, not global `~/.claude`.
154
183
 
155
- ### Export, Quota, and Debugging
184
+ The `mem` prefix loads an existing Claude-Mem Claude Code install via Claude's `--plugin-dir` support.
185
+
186
+ `prodex claude caveman mem` combines both.
187
+
188
+ ### Export / quota / debug
156
189
 
157
190
  ```bash
158
191
  prodex profile export
@@ -161,6 +194,12 @@ prodex quota --all --once
161
194
  prodex doctor --runtime
162
195
  ```
163
196
 
164
- ## Learn More
197
+ ## Notes
198
+
199
+ This is basically a profile/session router for people who do a lot of CLI-driven agent work and do not want everything tied to one mutable global home.
200
+
201
+ If you only use one account and do not care about quota-aware routing or keeping sessions attached to their original profile, you probably do not need it.
202
+
203
+ ## More
165
204
 
166
- For a longer walkthrough and the broader command set, see [QUICKSTART.md](./QUICKSTART.md).
205
+ See [QUICKSTART.md](./QUICKSTART.md) for the longer walkthrough.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@christiandoxa/prodex",
3
- "version": "0.22.0",
3
+ "version": "0.24.0",
4
4
  "description": "Safe multi-account auto-rotate for Codex CLI with isolated CODEX_HOME profiles",
5
5
  "license": "MIT",
6
6
  "bin": {
@@ -16,12 +16,12 @@
16
16
  "@openai/codex": "0.121.0"
17
17
  },
18
18
  "optionalDependencies": {
19
- "@christiandoxa/prodex-linux-x64": "0.22.0",
20
- "@christiandoxa/prodex-linux-arm64": "0.22.0",
21
- "@christiandoxa/prodex-darwin-x64": "0.22.0",
22
- "@christiandoxa/prodex-darwin-arm64": "0.22.0",
23
- "@christiandoxa/prodex-win32-x64": "0.22.0",
24
- "@christiandoxa/prodex-win32-arm64": "0.22.0"
19
+ "@christiandoxa/prodex-linux-x64": "0.24.0",
20
+ "@christiandoxa/prodex-linux-arm64": "0.24.0",
21
+ "@christiandoxa/prodex-darwin-x64": "0.24.0",
22
+ "@christiandoxa/prodex-darwin-arm64": "0.24.0",
23
+ "@christiandoxa/prodex-win32-x64": "0.24.0",
24
+ "@christiandoxa/prodex-win32-arm64": "0.24.0"
25
25
  },
26
26
  "engines": {
27
27
  "node": ">=18"