@christiandoxa/prodex 0.2.126 → 0.2.127
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 +91 -31
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -2,32 +2,51 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://github.com/christiandoxa/prodex/actions/workflows/ci.yml)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Run multiple isolated Codex profiles on the same OpenAI account pool, with smart quota checks, clean profile separation, and continuation-aware routing.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
`prodex` helps you manage multiple Codex identities without turning your workflow into a mess.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
9
|
+
It is designed around a simple model:
|
|
10
|
+
|
|
11
|
+
- **One account = one profile**
|
|
12
|
+
- **Quota is checked before launch**
|
|
13
|
+
- **Fresh work can move to another ready profile**
|
|
14
|
+
- **Existing continuations stay with the profile that already owns them**
|
|
15
|
+
|
|
16
|
+
That means you can keep working smoothly across multiple accounts while preserving session continuity where it matters.
|
|
17
|
+
|
|
18
|
+
## Why `prodex`?
|
|
19
|
+
|
|
20
|
+
Not everyone wants to pay $200 for a single account.
|
|
21
|
+
|
|
22
|
+
Sometimes it makes more sense to run 2 or 3 separate $20 accounts you already have. The problem is that doing it manually is annoying fast. You have to log in, log out, switch homes, check quota, and keep track of which session belongs to which account.
|
|
23
|
+
|
|
24
|
+
`prodex` exists to remove that pain.
|
|
25
|
+
|
|
26
|
+
It manages isolated profiles for each account, checks quota before launch, routes fresh work to an available profile, and keeps ongoing continuations attached to the right one.
|
|
27
|
+
|
|
28
|
+
Less account juggling, less friction, more actual work.
|
|
13
29
|
|
|
14
30
|
## Requirements
|
|
15
31
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
-
|
|
32
|
+
Before using `prodex`, make sure you have:
|
|
33
|
+
|
|
34
|
+
- **An OpenAI account**, plus at least one logged-in Prodex profile
|
|
35
|
+
- **Codex CLI**, if you want to use `prodex`
|
|
36
|
+
- **Claude Code (`claude`)**, if you want to use `prodex claude`
|
|
19
37
|
|
|
20
|
-
|
|
38
|
+
> Installing `@christiandoxa/prodex` from npm also installs the Codex runtime dependency for you.
|
|
39
|
+
> Claude Code is still a separate CLI and must already be available on your `PATH` if you want to use `prodex claude`.
|
|
21
40
|
|
|
22
41
|
## Install
|
|
23
42
|
|
|
24
|
-
|
|
43
|
+
### npm
|
|
25
44
|
|
|
26
45
|
```bash
|
|
27
46
|
npm install -g @christiandoxa/prodex
|
|
28
47
|
```
|
|
29
48
|
|
|
30
|
-
|
|
49
|
+
### Cargo
|
|
31
50
|
|
|
32
51
|
```bash
|
|
33
52
|
cargo install prodex
|
|
@@ -43,14 +62,14 @@ Check your installed version:
|
|
|
43
62
|
prodex --version
|
|
44
63
|
```
|
|
45
64
|
|
|
46
|
-
The current local version in this repo is `0.2.
|
|
65
|
+
The current local version in this repo is `0.2.127`:
|
|
47
66
|
|
|
48
67
|
```bash
|
|
49
|
-
npm install -g @christiandoxa/prodex@0.2.
|
|
50
|
-
cargo install prodex --force --version 0.2.
|
|
68
|
+
npm install -g @christiandoxa/prodex@0.2.127
|
|
69
|
+
cargo install prodex --force --version 0.2.127
|
|
51
70
|
```
|
|
52
71
|
|
|
53
|
-
|
|
72
|
+
Switching from a Cargo-installed binary to npm?
|
|
54
73
|
|
|
55
74
|
```bash
|
|
56
75
|
cargo uninstall prodex
|
|
@@ -65,21 +84,21 @@ If your shared Codex home already contains a login:
|
|
|
65
84
|
prodex profile import-current main
|
|
66
85
|
```
|
|
67
86
|
|
|
68
|
-
Or create a profile through the
|
|
87
|
+
Or create a profile through the usual login flow:
|
|
69
88
|
|
|
70
89
|
```bash
|
|
71
90
|
prodex login
|
|
72
91
|
prodex login --device-auth
|
|
73
92
|
```
|
|
74
93
|
|
|
75
|
-
|
|
94
|
+
Want to name the profile first?
|
|
76
95
|
|
|
77
96
|
```bash
|
|
78
97
|
prodex profile add second
|
|
79
98
|
prodex login --profile second
|
|
80
99
|
```
|
|
81
100
|
|
|
82
|
-
Check
|
|
101
|
+
Check your profile pool and quota status:
|
|
83
102
|
|
|
84
103
|
```bash
|
|
85
104
|
prodex profile list
|
|
@@ -95,11 +114,50 @@ prodex exec "review this repo"
|
|
|
95
114
|
prodex claude -- -p "summarize this repo"
|
|
96
115
|
```
|
|
97
116
|
|
|
98
|
-
`prodex` without a subcommand is shorthand for `prodex run`.
|
|
117
|
+
> `prodex` without a subcommand is shorthand for `prodex run`.
|
|
118
|
+
|
|
119
|
+
## Common Workflows
|
|
120
|
+
|
|
121
|
+
### 1. Create or import profiles
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
prodex profile import-current main
|
|
125
|
+
prodex profile add second
|
|
126
|
+
prodex login --profile second
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### 2. Inspect your pool
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
prodex profile list
|
|
133
|
+
prodex quota --all
|
|
134
|
+
prodex info
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### 3. Run Codex with automatic profile selection
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
prodex
|
|
141
|
+
prodex run
|
|
142
|
+
prodex exec "review this repo"
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### 4. Resume an existing session on the correct profile
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
prodex run 019c9e3d-45a0-7ad0-a6ee-b194ac2d44f9
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### 5. Run Claude Code through the same profile pool
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
prodex claude -- -p "summarize this repo"
|
|
155
|
+
prodex claude --profile second -- -p --output-format json "show the latest diff"
|
|
156
|
+
```
|
|
99
157
|
|
|
100
|
-
##
|
|
158
|
+
## Command Reference
|
|
101
159
|
|
|
102
|
-
### Profile
|
|
160
|
+
### Profile & Login
|
|
103
161
|
|
|
104
162
|
```bash
|
|
105
163
|
prodex profile list
|
|
@@ -114,7 +172,7 @@ prodex logout --profile main
|
|
|
114
172
|
prodex profile remove second
|
|
115
173
|
```
|
|
116
174
|
|
|
117
|
-
### Run
|
|
175
|
+
### Run with Codex CLI
|
|
118
176
|
|
|
119
177
|
```bash
|
|
120
178
|
prodex
|
|
@@ -125,14 +183,14 @@ prodex run 019c9e3d-45a0-7ad0-a6ee-b194ac2d44f9
|
|
|
125
183
|
printf 'context from stdin' | prodex run exec "summarize this"
|
|
126
184
|
```
|
|
127
185
|
|
|
128
|
-
### Run
|
|
186
|
+
### Run with Claude Code
|
|
129
187
|
|
|
130
188
|
```bash
|
|
131
189
|
prodex claude -- -p "summarize this repo"
|
|
132
190
|
prodex claude --profile second -- -p --output-format json "show the latest diff"
|
|
133
191
|
```
|
|
134
192
|
|
|
135
|
-
### Export
|
|
193
|
+
### Export & Import Profiles
|
|
136
194
|
|
|
137
195
|
```bash
|
|
138
196
|
prodex profile export
|
|
@@ -141,9 +199,10 @@ prodex profile export --profile main --profile second backup.json
|
|
|
141
199
|
prodex profile import backup.json
|
|
142
200
|
```
|
|
143
201
|
|
|
144
|
-
`prodex profile export` includes each exported profile
|
|
202
|
+
`prodex profile export` includes each exported profile’s `auth.json`.
|
|
203
|
+
By default, it exports every configured profile and asks whether the bundle should be password-protected.
|
|
145
204
|
|
|
146
|
-
### Quota, Status
|
|
205
|
+
### Quota, Status & Debugging
|
|
147
206
|
|
|
148
207
|
```bash
|
|
149
208
|
prodex quota --all
|
|
@@ -163,13 +222,14 @@ prodex doctor --runtime
|
|
|
163
222
|
tail -n 200 "$(cat /tmp/prodex-runtime-latest.path)"
|
|
164
223
|
```
|
|
165
224
|
|
|
166
|
-
Use `prodex cleanup` to remove stale local runtime logs,
|
|
225
|
+
Use `prodex cleanup` to remove stale local runtime logs, temporary login homes, dead broker leases and registries, plus old orphaned managed profile homes that are no longer tracked in state.
|
|
167
226
|
|
|
168
227
|
## Notes
|
|
169
228
|
|
|
170
|
-
|
|
171
|
-
|
|
229
|
+
* Managed profiles share persisted Codex state through Prodex-owned shared storage.
|
|
230
|
+
* `prodex quota --all` refreshes live by default.
|
|
231
|
+
* Use `--once` if you only want a one-shot snapshot.
|
|
172
232
|
|
|
173
|
-
## More
|
|
233
|
+
## Learn More
|
|
174
234
|
|
|
175
235
|
For a longer walkthrough, see [QUICKSTART.md](./QUICKSTART.md).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@christiandoxa/prodex",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.127",
|
|
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.118.0"
|
|
17
17
|
},
|
|
18
18
|
"optionalDependencies": {
|
|
19
|
-
"@christiandoxa/prodex-linux-x64": "0.2.
|
|
20
|
-
"@christiandoxa/prodex-linux-arm64": "0.2.
|
|
21
|
-
"@christiandoxa/prodex-darwin-x64": "0.2.
|
|
22
|
-
"@christiandoxa/prodex-darwin-arm64": "0.2.
|
|
23
|
-
"@christiandoxa/prodex-win32-x64": "0.2.
|
|
24
|
-
"@christiandoxa/prodex-win32-arm64": "0.2.
|
|
19
|
+
"@christiandoxa/prodex-linux-x64": "0.2.127",
|
|
20
|
+
"@christiandoxa/prodex-linux-arm64": "0.2.127",
|
|
21
|
+
"@christiandoxa/prodex-darwin-x64": "0.2.127",
|
|
22
|
+
"@christiandoxa/prodex-darwin-arm64": "0.2.127",
|
|
23
|
+
"@christiandoxa/prodex-win32-x64": "0.2.127",
|
|
24
|
+
"@christiandoxa/prodex-win32-arm64": "0.2.127"
|
|
25
25
|
},
|
|
26
26
|
"engines": {
|
|
27
27
|
"node": ">=18"
|