codex-multi-auth 2.1.1 → 2.1.3

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 CHANGED
@@ -3,7 +3,7 @@
3
3
  [![npm version](https://img.shields.io/npm/v/codex-multi-auth.svg)](https://www.npmjs.com/package/codex-multi-auth)
4
4
  [![npm downloads](https://img.shields.io/npm/dw/codex-multi-auth.svg)](https://www.npmjs.com/package/codex-multi-auth)
5
5
 
6
- Codex CLI-first multi-account OAuth manager for the official Codex CLI. The installed `codex` wrapper handles `codex auth ...` locally, forwards normal Codex commands to the official runtime, and can optionally route live Responses traffic through a localhost account-rotation proxy.
6
+ Codex CLI-first multi-account OAuth manager for the official Codex CLI. The package installs conflict-free alongside official `codex` installs; use `codex-multi-auth ...` for account management or `codex-multi-auth-codex ...` when you explicitly want the forwarding wrapper.
7
7
 
8
8
  <img width="1270" height="729" alt="2026-02-28 12_54_58-prompt txt ‎- Notepads" src="https://github.com/user-attachments/assets/0cecb77e-a6d3-432a-ba48-3577db0c7093" />
9
9
 
@@ -15,22 +15,22 @@ Codex CLI-first multi-account OAuth manager for the official Codex CLI. The inst
15
15
 
16
16
  ## What You Get
17
17
 
18
- - Canonical `codex auth ...` workflow for account login, switching, checks, and diagnostics
19
- - Official Codex CLI forwarding for all non-auth commands
20
- - Multi-account OAuth pool with health-aware selection and automatic failover
21
- - Project-scoped account storage under `~/.codex/multi-auth/projects/<project-key>/...`
22
- - Interactive dashboard for account actions and settings
23
- - Experimental settings tab for staged sync, backup, and refresh-guard controls
24
- - Forecast, report, fix, and doctor commands for operational safety
25
- - Local usage ledger, budgets, account policy controls, routing profiles, and monitor views for local governance
26
- - Runtime counters, budget/cooldown state, and multi-auth probe visibility in `codex auth status` / `codex auth report`
27
- - Default-on runtime Responses proxy for live account rotation inside forwarded Codex CLI/app sessions
28
- - Optional loopback-only local bridge for `/health`, `/v1/models`, and `/v1/responses`, protected by hashed local client tokens
29
- - Reversible packaged Codex app bind and user-level launcher routing helpers
30
- - Flagged account verification and restore flow
31
- - Session affinity and live account sync controls
32
- - Proactive refresh and preemptive quota deferral controls
33
- - Codex-oriented request/prompt compatibility with strict runtime handling
18
+ - Conflict-free `codex-multi-auth ...` workflow for account login, switching, checks, and diagnostics
19
+ - Official Codex CLI forwarding for all non-auth commands
20
+ - Multi-account OAuth pool with health-aware selection and automatic failover
21
+ - Project-scoped account storage under `~/.codex/multi-auth/projects/<project-key>/...`
22
+ - Interactive dashboard for account actions and settings
23
+ - Experimental settings tab for staged sync, backup, and refresh-guard controls
24
+ - Forecast, report, fix, and doctor commands for operational safety
25
+ - Local usage ledger, budgets, account policy controls, routing profiles, and monitor views for local governance
26
+ - Runtime counters, budget/cooldown state, and multi-auth probe visibility in `codex-multi-auth status` / `codex-multi-auth report`
27
+ - Default-on runtime Responses proxy for live account rotation inside forwarded Codex CLI/app sessions
28
+ - Optional loopback-only local bridge for `/health`, `/v1/models`, and `/v1/responses`, protected by hashed local client tokens
29
+ - Reversible packaged Codex app bind and user-level launcher routing helpers
30
+ - Flagged account verification and restore flow
31
+ - Session affinity and live account sync controls
32
+ - Proactive refresh and preemptive quota deferral controls
33
+ - Codex-oriented request/prompt compatibility with strict runtime handling
34
34
  - Stable docs set for install, config, troubleshooting, and upgrade paths
35
35
 
36
36
  ---
@@ -41,7 +41,7 @@ Codex CLI-first multi-account OAuth manager for the official Codex CLI. The inst
41
41
  > [!CAUTION]
42
42
  > This project uses OAuth account credentials and is intended for personal development use.
43
43
  >
44
- > By using this package, you acknowledge:
44
+ > By using this package, you acknowledge:
45
45
  > - This is an independent open-source project, not an official OpenAI product
46
46
  > - You are responsible for your own usage and policy compliance
47
47
  > - For production/commercial workloads, use the OpenAI Platform API
@@ -70,12 +70,12 @@ npm i -g codex-multi-auth
70
70
 
71
71
  ### Option C: Verify wiring
72
72
 
73
- `codex --version` confirms the official Codex CLI is reachable. `codex-multi-auth --version` confirms the installed wrapper package version.
73
+ `codex --version` confirms the official Codex CLI is reachable. `codex-multi-auth --version` confirms the installed manager package version. `codex-multi-auth-codex --version` is the optional forwarding wrapper entrypoint.
74
74
 
75
75
  ```bash
76
76
  codex --version
77
77
  codex-multi-auth --version
78
- codex auth status
78
+ codex-multi-auth status
79
79
  ```
80
80
 
81
81
  Any official install path is fine as long as `codex` is on `PATH`: `npm i -g @openai/codex`, `brew install --cask codex`, or an official release binary.
@@ -89,15 +89,15 @@ Any official install path is fine as long as `codex` is on `PATH`: `npm i -g @op
89
89
 
90
90
  1. Install global package:
91
91
  - `npm i -g codex-multi-auth`
92
- 2. Run first login flow with `codex auth login`
93
- 3. Validate state with `codex auth status` and `codex auth check`
94
- 4. Confirm routing with `codex auth forecast --live`
92
+ 2. Run first login flow with `codex-multi-auth login`
93
+ 3. Validate state with `codex-multi-auth status` and `codex-multi-auth check`
94
+ 4. Confirm routing with `codex-multi-auth forecast --live`
95
95
 
96
96
  ### Verification
97
97
 
98
98
  ```bash
99
- codex auth status
100
- codex auth check
99
+ codex-multi-auth status
100
+ codex-multi-auth check
101
101
  ```
102
102
 
103
103
  </details>
@@ -111,33 +111,33 @@ Install and sign in:
111
111
  ```bash
112
112
  npm i -g @openai/codex
113
113
  npm i -g codex-multi-auth
114
- codex auth login
114
+ codex-multi-auth login
115
115
  ```
116
116
 
117
117
  If you already installed the official native CLI via Homebrew or a release binary, you only need:
118
118
 
119
119
  ```bash
120
120
  npm i -g codex-multi-auth
121
- codex auth login
121
+ codex-multi-auth login
122
122
  ```
123
123
 
124
- Verify the wrapper and the new account:
124
+ Verify the manager and the new account:
125
125
 
126
126
  ```bash
127
- codex auth status
128
- codex auth check
127
+ codex-multi-auth status
128
+ codex-multi-auth check
129
129
  ```
130
130
 
131
131
  Use these next:
132
132
 
133
133
  ```bash
134
- codex auth list
135
- codex auth switch 2
136
- codex auth forecast --live
134
+ codex-multi-auth list
135
+ codex-multi-auth switch 2
136
+ codex-multi-auth forecast --live
137
137
  ```
138
138
 
139
- If browser launch is blocked, use the alternate login paths in [docs/getting-started.md](docs/getting-started.md#alternate-login-paths).
140
- For remote or headless shells, prefer `codex auth login --device-auth`.
139
+ If browser launch is blocked, use the alternate login paths in [docs/getting-started.md](docs/getting-started.md#alternate-login-paths).
140
+ For remote or headless shells, prefer `codex-multi-auth login --device-auth`.
141
141
 
142
142
  ---
143
143
 
@@ -147,39 +147,39 @@ For remote or headless shells, prefer `codex auth login --device-auth`.
147
147
 
148
148
  | Command | What it answers |
149
149
  | --- | --- |
150
- | `codex auth login` | How do I add or re-open the account menu? |
151
- | `codex auth status` | Is the wrapper active right now? |
152
- | `codex auth check` | Do my saved accounts look healthy? |
150
+ | `codex-multi-auth login` | How do I add or re-open the account menu? |
151
+ | `codex-multi-auth status` | Is the wrapper active right now? |
152
+ | `codex-multi-auth check` | Do my saved accounts look healthy? |
153
153
 
154
154
  ### Daily use
155
155
 
156
156
  | Command | What it answers |
157
157
  | --- | --- |
158
- | `codex auth list` | Which accounts are saved and which one is active? |
159
- | `codex auth switch <index>` | How do I move to a different saved account? |
160
- | `codex auth forecast --live` | Which account looks best for the next session? |
158
+ | `codex-multi-auth list` | Which accounts are saved and which one is active? |
159
+ | `codex-multi-auth switch <index>` | How do I move to a different saved account? |
160
+ | `codex-multi-auth forecast --live` | Which account looks best for the next session? |
161
161
 
162
162
  ### Repair
163
163
 
164
164
  | Command | What it answers |
165
165
  | --- | --- |
166
- | `codex auth verify-flagged` | Can any previously flagged account be restored? |
167
- | `codex auth verify --paths` | Do my storage path chain and sandbox probes still pass self-test? |
168
- | `codex auth fix --dry-run` | What safe storage or account repairs are available? |
169
- | `codex auth doctor --fix` | Can the CLI diagnose and apply the safest fixes now? |
166
+ | `codex-multi-auth verify-flagged` | Can any previously flagged account be restored? |
167
+ | `codex-multi-auth verify --paths` | Do my storage path chain and sandbox probes still pass self-test? |
168
+ | `codex-multi-auth fix --dry-run` | What safe storage or account repairs are available? |
169
+ | `codex-multi-auth doctor --fix` | Can the CLI diagnose and apply the safest fixes now? |
170
170
 
171
171
  ### Advanced
172
172
 
173
173
  | Command | What it answers |
174
174
  | --- | --- |
175
- | `codex auth report --live --json` | How do I get the full machine-readable health report? |
176
- | `codex auth fix --live --model gpt-5.3-codex` | How do I run live repair probes with a chosen model? |
177
- | `codex auth why-selected --json` | Which account does the selector pick now, and why? |
178
- | `codex auth usage --since 24h --by project` | What local usage has been recorded recently? |
179
- | `codex auth monitor --json` | What is the combined usage, policy, quota, runtime, and project state? |
180
- | `codex auth bridge token create --label local-client` | How do I create a local bridge bearer token? |
181
- | `codex auth integrations --kind python` | How do I generate local bridge client snippets? |
182
- | `codex auth rotation status` | Is live runtime account rotation enabled for forwarded Codex sessions? |
175
+ | `codex-multi-auth report --live --json` | How do I get the full machine-readable health report? |
176
+ | `codex-multi-auth fix --live --model gpt-5.3-codex` | How do I run live repair probes with a chosen model? |
177
+ | `codex-multi-auth why-selected --json` | Which account does the selector pick now, and why? |
178
+ | `codex-multi-auth usage --since 24h --by project` | What local usage has been recorded recently? |
179
+ | `codex-multi-auth monitor --json` | What is the combined usage, policy, quota, runtime, and project state? |
180
+ | `codex-multi-auth bridge token create --label local-client` | How do I create a local bridge bearer token? |
181
+ | `codex-multi-auth integrations --kind python` | How do I generate local bridge client snippets? |
182
+ | `codex-multi-auth rotation status` | Is live runtime account rotation enabled for forwarded Codex sessions? |
183
183
 
184
184
  ### Reliability behavior
185
185
 
@@ -187,7 +187,7 @@ For remote or headless shells, prefer `codex auth login --device-auth`.
187
187
  - active requests use a bounded outbound request budget so one prompt cannot walk the full pool indefinitely
188
188
  - repeated cross-account 5xx bursts trigger a short cooldown instead of continuing aggressive rotation
189
189
  - proactive refresh is staggered to reduce background refresh bursts
190
- - `codex auth status` surfaces recent runtime request metrics in text output, and `codex auth report --json` exposes the machine-readable cooldown/runtime snapshot
190
+ - `codex-multi-auth status` surfaces recent runtime request metrics in text output, and `codex-multi-auth report --json` exposes the machine-readable cooldown/runtime snapshot
191
191
 
192
192
  ---
193
193
 
@@ -222,17 +222,17 @@ For remote or headless shells, prefer `codex auth login --device-auth`.
222
222
  | Settings | `~/.codex/multi-auth/settings.json` |
223
223
  | Accounts | `~/.codex/multi-auth/openai-codex-accounts.json` |
224
224
  | Flagged accounts | `~/.codex/multi-auth/openai-codex-flagged-accounts.json` |
225
- | Quota cache | `~/.codex/multi-auth/quota-cache.json` |
226
- | Runtime observability | `~/.codex/multi-auth/runtime-observability.json` |
227
- | Usage ledger | `~/.codex/multi-auth/usage/usage-ledger.jsonl` |
228
- | Account policies | `~/.codex/multi-auth/account-policies.json` |
229
- | Routing profiles | `~/.codex/multi-auth/routing-profiles.json` |
230
- | Budget guards | `~/.codex/multi-auth/budget-guards.json` |
231
- | Local client tokens | `~/.codex/multi-auth/local-client-tokens.json` |
232
- | Runtime app helper status | `~/.codex/multi-auth/runtime-rotation-app-helper.json` |
233
- | Persistent app bind state/logs | `~/.codex/multi-auth/app-bind/` |
234
- | Logs | `~/.codex/multi-auth/logs/codex-plugin/` |
235
- | Per-project accounts | `~/.codex/multi-auth/projects/<project-key>/openai-codex-accounts.json` |
225
+ | Quota cache | `~/.codex/multi-auth/quota-cache.json` |
226
+ | Runtime observability | `~/.codex/multi-auth/runtime-observability.json` |
227
+ | Usage ledger | `~/.codex/multi-auth/usage/usage-ledger.jsonl` |
228
+ | Account policies | `~/.codex/multi-auth/account-policies.json` |
229
+ | Routing profiles | `~/.codex/multi-auth/routing-profiles.json` |
230
+ | Budget guards | `~/.codex/multi-auth/budget-guards.json` |
231
+ | Local client tokens | `~/.codex/multi-auth/local-client-tokens.json` |
232
+ | Runtime app helper status | `~/.codex/multi-auth/runtime-rotation-app-helper.json` |
233
+ | Persistent app bind state/logs | `~/.codex/multi-auth/app-bind/` |
234
+ | Logs | `~/.codex/multi-auth/logs/codex-plugin/` |
235
+ | Per-project accounts | `~/.codex/multi-auth/projects/<project-key>/openai-codex-accounts.json` |
236
236
 
237
237
  Override root with `CODEX_MULTI_AUTH_DIR=<path>`.
238
238
 
@@ -249,16 +249,16 @@ Selected runtime/environment overrides:
249
249
  | Variable | Effect |
250
250
  | --- | --- |
251
251
  | `CODEX_MULTI_AUTH_DIR` | Override settings/accounts root |
252
- | `CODEX_MULTI_AUTH_CONFIG_PATH` | Alternate config file path |
253
- | `CODEX_MODE=0/1` | Disable/enable Codex mode |
254
- | `CODEX_MULTI_AUTH_RUNTIME_ROTATION_PROXY=0/1` | Opt out/in of live Responses proxy rotation for forwarded Codex CLI/app sessions |
255
- | `CODEX_MULTI_AUTH_APP_ROTATION_IDLE_MS=<ms>` | Override automatic Codex app helper idle shutdown |
256
- | `CODEX_MULTI_AUTH_APP_BIND_INSTALL=0/1` | Opt out/in of packaged Codex app bind self-heal during install/update or rotation enable |
257
- | `CODEX_MULTI_AUTH_APP_LAUNCHER_INSTALL=0/1` | Opt out/in of routing supported app shortcuts during install/update or rotation enable |
258
- | `CODEX_MULTI_AUTH_AUTO_UPDATE=0/1` | Opt out/in of best-effort global package auto-update checks |
259
- | `CODEX_TUI_V2=0/1` | Disable/enable TUI v2 |
260
- | `CODEX_TUI_COLOR_PROFILE=truecolor|ansi256|ansi16` | TUI color profile |
261
- | `CODEX_TUI_GLYPHS=ascii|unicode|auto` | TUI glyph style |
252
+ | `CODEX_MULTI_AUTH_CONFIG_PATH` | Alternate config file path |
253
+ | `CODEX_MODE=0/1` | Disable/enable Codex mode |
254
+ | `CODEX_MULTI_AUTH_RUNTIME_ROTATION_PROXY=0/1` | Opt out/in of live Responses proxy rotation for forwarded Codex CLI/app sessions |
255
+ | `CODEX_MULTI_AUTH_APP_ROTATION_IDLE_MS=<ms>` | Override automatic Codex app helper idle shutdown |
256
+ | `CODEX_MULTI_AUTH_APP_BIND_INSTALL=0/1` | Opt out/in of packaged Codex app bind self-heal during install/update or rotation enable |
257
+ | `CODEX_MULTI_AUTH_APP_LAUNCHER_INSTALL=0/1` | Opt out/in of routing supported app shortcuts during install/update or rotation enable |
258
+ | `CODEX_MULTI_AUTH_AUTO_UPDATE=0/1` | Opt out/in of best-effort global package auto-update checks |
259
+ | `CODEX_TUI_V2=0/1` | Disable/enable TUI v2 |
260
+ | `CODEX_TUI_COLOR_PROFILE=truecolor\|ansi256\|ansi16` | TUI color profile |
261
+ | `CODEX_TUI_GLYPHS=ascii\|unicode\|auto` | TUI glyph style |
262
262
  | `CODEX_AUTH_BACKGROUND_RESPONSES=0/1` | Opt in/out of stateful Responses `background: true` compatibility |
263
263
  | `CODEX_AUTH_FETCH_TIMEOUT_MS=<ms>` | Request timeout override |
264
264
  | `CODEX_AUTH_STREAM_STALL_TIMEOUT_MS=<ms>` | Stream stall timeout override |
@@ -266,14 +266,14 @@ Selected runtime/environment overrides:
266
266
  Validate config after changes:
267
267
 
268
268
  ```bash
269
- codex auth status
270
- codex auth check
271
- codex auth forecast --live
269
+ codex-multi-auth status
270
+ codex-multi-auth check
271
+ codex-multi-auth forecast --live
272
272
  ```
273
273
 
274
- Responses background mode stays opt-in. Enable `backgroundResponses` in settings or `CODEX_AUTH_BACKGROUND_RESPONSES=1` only for callers that intentionally send `background: true`, because those requests switch from stateless `store=false` routing to stateful `store=true`. See [docs/upgrade.md](docs/upgrade.md) for rollout guidance.
275
-
276
- Runtime rotation is enabled by default for request-bearing wrapper-launched Codex sessions. Global install/update self-heals supported packaged Codex app binds and user-level launcher routing when possible, while `codex auth rotation enable` remains the explicit repair command. `codex auth rotation disable` turns the setting off and removes the persistent app bind. Set `CODEX_MULTI_AUTH_RUNTIME_ROTATION_PROXY=0`, `CODEX_MULTI_AUTH_APP_BIND_INSTALL=0`, `CODEX_MULTI_AUTH_APP_LAUNCHER_INSTALL=0`, or `CODEX_MULTI_AUTH_AUTO_UPDATE=0` to opt out of the matching default behavior.
274
+ Responses background mode stays opt-in. Enable `backgroundResponses` in settings or `CODEX_AUTH_BACKGROUND_RESPONSES=1` only for callers that intentionally send `background: true`, because those requests switch from stateless `store=false` routing to stateful `store=true`. See [docs/upgrade.md](docs/upgrade.md) for rollout guidance.
275
+
276
+ Runtime rotation is enabled by default for request-bearing wrapper-launched Codex sessions. Global install/update self-heals supported packaged Codex app binds and user-level launcher routing when possible, while `codex-multi-auth rotation enable` remains the explicit repair command. `codex-multi-auth rotation disable` turns the setting off and removes the persistent app bind. Set `CODEX_MULTI_AUTH_RUNTIME_ROTATION_PROXY=0`, `CODEX_MULTI_AUTH_APP_BIND_INSTALL=0`, `CODEX_MULTI_AUTH_APP_LAUNCHER_INSTALL=0`, or `CODEX_MULTI_AUTH_AUTO_UPDATE=0` to opt out of the matching default behavior.
277
277
 
278
278
  ---
279
279
 
@@ -295,15 +295,15 @@ These flows are intentionally non-destructive by default: sync previews before a
295
295
  <summary><b>60-second recovery</b></summary>
296
296
 
297
297
  ```bash
298
- codex auth doctor --fix
299
- codex auth check
300
- codex auth forecast --live
298
+ codex-multi-auth doctor --fix
299
+ codex-multi-auth check
300
+ codex-multi-auth forecast --live
301
301
  ```
302
302
 
303
303
  If still broken:
304
304
 
305
305
  ```bash
306
- codex auth login
306
+ codex-multi-auth login
307
307
  ```
308
308
 
309
309
  </details>
@@ -312,12 +312,12 @@ codex auth login
312
312
  <summary><b>Common symptoms</b></summary>
313
313
 
314
314
  - `codex auth` unrecognized: run `where codex` or `which codex`, then follow `docs/troubleshooting.md` for routing fallback commands
315
- - Switch succeeds but wrong account appears active: run `codex auth switch <index>`, then restart session
316
- - Requests fail fast with a pool cooldown message: wait for the cooldown window or inspect `codex auth status`
317
- - Requests fail fast after repeated upstream 5xx errors: inspect `codex auth report --json` for runtime traffic and cooldown details
318
- - Storage cleanup fails with `EBUSY` / `EPERM` (Windows): run `codex auth doctor --fix` to retry, or manually remove `~/.codex/multi-auth/<project-key>/` and re-login
319
- - OAuth callback on port `1455` fails: free the port and re-run `codex auth login`
320
- - Browser launch is blocked or you are in a headless shell: prefer `codex auth login --device-auth`; use `codex auth login --manual` or `CODEX_AUTH_NO_BROWSER=1` only when you need the callback-paste fallback
315
+ - Switch succeeds but wrong account appears active: run `codex-multi-auth switch <index>`, then restart session
316
+ - Requests fail fast with a pool cooldown message: wait for the cooldown window or inspect `codex-multi-auth status`
317
+ - Requests fail fast after repeated upstream 5xx errors: inspect `codex-multi-auth report --json` for runtime traffic and cooldown details
318
+ - Storage cleanup fails with `EBUSY` / `EPERM` (Windows): run `codex-multi-auth doctor --fix` to retry, or manually remove `~/.codex/multi-auth/<project-key>/` and re-login
319
+ - OAuth callback on port `1455` fails: free the port and re-run `codex-multi-auth login`
320
+ - Browser launch is blocked or you are in a headless shell: prefer `codex-multi-auth login --device-auth`; use `codex-multi-auth login --manual` or `CODEX_AUTH_NO_BROWSER=1` only when you need the callback-paste fallback
321
321
  - `missing field id_token` / `token_expired` / `refresh_token_reused`: re-login affected account
322
322
 
323
323
  </details>
@@ -326,14 +326,14 @@ codex auth login
326
326
  <summary><b>Diagnostics pack</b></summary>
327
327
 
328
328
  ```bash
329
- codex auth list
330
- codex auth status
331
- codex auth check
332
- codex auth verify-flagged --json
333
- codex auth forecast --live
334
- codex auth fix --dry-run
335
- codex auth report --live --json
336
- codex auth doctor --json
329
+ codex-multi-auth list
330
+ codex-multi-auth status
331
+ codex-multi-auth check
332
+ codex-multi-auth verify-flagged --json
333
+ codex-multi-auth forecast --live
334
+ codex-multi-auth fix --dry-run
335
+ codex-multi-auth report --live --json
336
+ codex-multi-auth doctor --json
337
337
  ```
338
338
 
339
339
  </details>
@@ -357,13 +357,14 @@ codex auth doctor --json
357
357
 
358
358
  ---
359
359
 
360
- ## Release Notes
361
-
362
- - Current stable: [docs/releases/v2.1.1.md](docs/releases/v2.1.1.md)
363
- - Previous stable: [docs/releases/v2.1.0.md](docs/releases/v2.1.0.md)
364
- - Earlier stable: [docs/releases/v2.0.2.md](docs/releases/v2.0.2.md)
365
- - Earlier stable: [docs/releases/v1.3.2.md](docs/releases/v1.3.2.md)
366
- - Stable archive: [docs/releases/v1.3.1.md](docs/releases/v1.3.1.md)
360
+ ## Release Notes
361
+
362
+ - Current stable: [docs/releases/v2.1.3.md](docs/releases/v2.1.3.md)
363
+ - Previous stable: [docs/releases/v2.1.2.md](docs/releases/v2.1.2.md)
364
+ - Earlier stable: [docs/releases/v2.1.1.md](docs/releases/v2.1.1.md)
365
+ - Earlier stable: [docs/releases/v2.1.0.md](docs/releases/v2.1.0.md)
366
+ - Earlier stable: [docs/releases/v1.3.2.md](docs/releases/v1.3.2.md)
367
+ - Stable archive: [docs/releases/v1.3.1.md](docs/releases/v1.3.1.md)
367
368
  - Full release archive: [docs/README.md#release-history](docs/README.md#release-history)
368
369
  - Archived prerelease: [docs/releases/v0.1.0-beta.0.md](docs/releases/v0.1.0-beta.0.md)
369
370
 
@@ -1 +1 @@
1
- {"version":3,"file":"app-bind.d.ts","sourceRoot":"","sources":["../../../lib/runtime/app-bind.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-bind.d.ts","sourceRoot":"","sources":["../../../lib/runtime/app-bind.ts"],"names":[],"mappings":"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"}
@@ -615,6 +615,21 @@ export function formatAppBindStatus(status) {
615
615
  else if (status.router?.lastAccountIndex !== null && status.router?.lastAccountIndex !== undefined) {
616
616
  parts.push(`lastAccount=Account ${status.router.lastAccountIndex + 1}`);
617
617
  }
618
- return `Codex app bind: ${parts.join(", ")}`;
618
+ return [
619
+ `Codex app bind: ${parts.join(", ")}`,
620
+ [
621
+ "Note: Codex Desktop may hide history while the app bind selects the",
622
+ "codex-multi-auth-runtime-proxy provider; use `codex auth rotation",
623
+ "unbind-app` or `codex auth rotation disable` to restore the original",
624
+ "Codex provider/config.",
625
+ ].join(" "),
626
+ [
627
+ "Model speed/reasoning controls stay in Codex config/CLI flags; set",
628
+ "`model_reasoning_effort` in",
629
+ status.state.configPath,
630
+ "or pass",
631
+ "`-c model_reasoning_effort=<level>` for wrapper-launched CLI sessions.",
632
+ ].join(" "),
633
+ ].join("\n");
619
634
  }
620
635
  //# sourceMappingURL=app-bind.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-bind.js","sourceRoot":"","sources":["../../../lib/runtime/app-bind.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-bind.js","sourceRoot":"","sources":["../../../lib/runtime/app-bind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EACN,4CAA4C,EAC5C,2CAA2C,GAC3C,MAAM,kBAAkB,CAAC;AAE1B,MAAM,iBAAiB,GAAG,UAAU,CAAC;AACrC,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AAC7D,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AACxD,MAAM,oBAAoB,GAAG,uCAAuC,CAAC;AACrE,MAAM,oBAAoB,GAAG,qCAAqC,CAAC;AACnE,MAAM,qBAAqB,GAAG,6CAA6C,CAAC;AAC5E,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAC/C,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAC3C,MAAM,wBAAwB,GAAG,IAAI,GAAG,IAAI,CAAC;AAC7C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;AAkFtD,KAAK,UAAU,eAAe,CAC7B,GAAW,EACX,SAA2B;IAE3B,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAC5D,IAAI,cAAc,GAAe,GAAG,EAAE,CAAC,SAAS,CAAC;IACjD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAC7C,cAAc,GAAG,OAAO,CAAC;IAC1B,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC;IACjE,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5B,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,CAAC;QACJ,OAAO,MAAM,SAAS,EAAE,CAAC;IAC1B,CAAC;YAAS,CAAC;QACV,cAAc,EAAE,CAAC;QACjB,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YACpC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;IACF,CAAC;AACF,CAAC;AAED,MAAM,UAAU,2BAA2B,CAC1C,SAAiB,EACjB,OAAe,EACf,YAAY,GAAG,EAAE;IAEjB,OAAO,2CAA2C,CACjD,SAAS,EACT,OAAO,EACP,YAAY,CACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,aAAqB,EAAE,cAAsB;IACzF,OAAO,4CAA4C,CAClD,aAAa,EACb,cAAc,CACd,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAa;IAC5B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,yBAAyB;IACjC,OAAO,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACrC,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAY,CAAC;QAC5C,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;YACnD,CAAC,CAAE,MAAkC;YACrC,CAAC,CAAC,IAAI,CAAC;IACT,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,UAAU,CAAC,MAA+B,EAAE,GAAW;IAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAC1D,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;QACd,CAAC,CAAC,IAAI,CAAC;AACT,CAAC;AAED,SAAS,UAAU,CAAC,MAA+B,EAAE,GAAW;IAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3E,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,IAAY;IAClD,IAAI,MAAM,GAA4C,IAAI,CAAC;IAC3D,IAAI,CAAC;QACJ,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC/B,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACR,+EAA+E;IAChF,CAAC;YAAS,CAAC;QACV,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;AACF,CAAC;AAED,KAAK,UAAU,eAAe,CAC7B,MAAc,EACd,OAAe,EACf,IAAI,GAAG,KAAK;IAEZ,MAAM,sBAAsB,CAAC,KAAK,IAAI,EAAE;QACvC,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,IAAI,CACpB,OAAO,CAAC,MAAM,CAAC,EACf;YACC,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;YACtB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAClB,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC9B,KAAK;SACL,CAAC,IAAI,CAAC,GAAG,CAAC,CACX,CAAC;QACF,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,MAAM,GAA4C,IAAI,CAAC;QAC3D,IAAI,CAAC;YACJ,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACzC,MAAM,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACxC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,GAAG,IAAI,CAAC;YACd,MAAM,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC/B,KAAK,GAAG,IAAI,CAAC;YACb,MAAM,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,CAAC;gBAAS,CAAC;YACV,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACZ,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAAY;IACzC,IAAI,CAAC;QACJ,MAAM,sBAAsB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAI,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1E,OAAO;QACR,CAAC;QACD,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,MAA+B;IAC9D,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAChD,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACxD,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACrD,IACC,IAAI,KAAK,IAAI;QACb,CAAC,IAAI;QACL,CAAC,OAAO;QACR,CAAC,UAAU;QACX,CAAC,SAAS;QACV,CAAC,UAAU;QACX,CAAC,UAAU;QACX,CAAC,OAAO;QACR,CAAC,QAAQ;QACT,CAAC,gBAAgB;QACjB,CAAC,YAAY;QACb,CAAC,eAAe;QAChB,SAAS,KAAK,IAAI,EACjB,CAAC;QACF,OAAO,IAAI,CAAC;IACb,CAAC;IACD,OAAO;QACN,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAE,aAAiC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ;QAC/E,IAAI;QACJ,IAAI;QACJ,OAAO;QACP,UAAU;QACV,SAAS;QACT,UAAU;QACV,UAAU;QACV,OAAO;QACP,QAAQ;QACR,gBAAgB;QAChB,YAAY;QACZ,WAAW,EAAE,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC;QAC9C,eAAe,EAAE,UAAU,CAAC,MAAM,EAAE,iBAAiB,CAAC;QACtD,eAAe;QACf,SAAS;KACT,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAAY;IACvC,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY;IAC3C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACvE,OAAO;QACN,OAAO,EAAE,CAAC;QACV,UAAU;QACV,OAAO,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI;QAChC,OAAO;QACP,SAAS;KACT,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY;IAC3C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,OAAO;QACN,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC;QAClC,GAAG,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC;QAC9B,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC;QACtC,aAAa,EAAE,UAAU,CAAC,MAAM,EAAE,eAAe,CAAC;QAClD,gBAAgB,EAAE,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC;QACxD,gBAAgB,EAAE,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC;QACxD,gBAAgB,EAAE,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC;QACxD,aAAa,EAAE,UAAU,CAAC,MAAM,EAAE,eAAe,CAAC;QAClD,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC;QAC1C,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC;KAC1C,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,GAAkB;IACzC,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,IAAI,CAAC;QACJ,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,GACT,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,OAAO,IAAI,KAAK,OAAO,CAAC;IACzB,CAAC;AACF,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAsB,EAAE,IAAY;IACtE,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC/E,OAAO,IAAI,CACV,OAAO,EACP,WAAW,EACX,SAAS,EACT,YAAY,EACZ,UAAU,EACV,SAAS,EACT,oBAAoB,CACpB,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAY;IAC9C,OAAO,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,qBAAqB,QAAQ,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,uBAAuB,CAC/B,QAAiB,EACjB,iBAA4B;IAE5B,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,MAAM,UAAU,GACf,iBAAiB,IAAI;QACpB,aAAa,CAAC,IAAI,GAAG,CAAC,sCAAsC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/E,aAAa,CAAC,IAAI,GAAG,CAAC,mCAAmC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KAC5E,CAAC;IACH,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;IAC7C,CAAC;IACD,MAAM,IAAI,KAAK,CACd,2CAA2C,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,UAA0B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACtD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;IACvC,MAAM,SAAS,GACd,CAAC,GAAG,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACjF,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,oBAAoB,EAAE,CAAC;IACvF,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;IACtD,OAAO;QACN,SAAS;QACT,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC;QAC1C,OAAO;QACP,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC;QAC7C,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAC/C,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAC/C,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,iCAAiC,CAAC;QACzD,gBAAgB,EAAE,uBAAuB,CACxC,OAAO,CAAC,gBAAgB,EACxB,OAAO,CAAC,sBAAsB,CAC9B;QACD,WAAW,EACV,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QACnE,eAAe,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;KAC/E,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,IAAY;IAChD,MAAM,cAAc,GACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAClE,OAAO,UAAU,cAAc,IAAI,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAsB,EAAE,QAAgB;IACpE,IAAI,CAAC,OAAO;QAAE,OAAO,QAAQ,CAAC;IAC9B,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACxD,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC5D,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,QAAQ,CAAC;IACjB,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAmB;IACvD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtD,OAAO;QACN,WAAW;QACX,IAAI,QAAQ,MAAM,gBAAgB,YAAY,KAAK,CAAC,IAAI,cAAc,UAAU,cAAc,SAAS,YAAY,OAAO,qBAAqB,wBAAwB,QAAQ,OAAO,QAAQ;QAC9L,EAAE;KACF,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC/B,OAAO,KAAK;SACV,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAmB;IACrD,MAAM,IAAI,GAAG;QACZ,KAAK,CAAC,QAAQ;QACd,KAAK,CAAC,gBAAgB;QACtB,QAAQ;QACR,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAClB,UAAU;QACV,KAAK,CAAC,UAAU;QAChB,SAAS;QACT,KAAK,CAAC,SAAS;QACf,OAAO;QACP,KAAK,CAAC,OAAO;QACb,iBAAiB;QACjB,MAAM,CAAC,wBAAwB,CAAC;KAChC,CAAC;IACF,OAAO;QACN,wCAAwC;QACxC,wGAAwG;QACxG,uBAAuB;QACvB,QAAQ;QACR,oBAAoB;QACpB,aAAa,qBAAqB,WAAW;QAC7C,+BAA+B;QAC/B,WAAW;QACX,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;QAC9D,YAAY;QACZ,wBAAwB;QACxB,WAAW;QACX,wBAAwB;QACxB,WAAW;QACX,8BAA8B;QAC9B,aAAa,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW;QAChD,gCAAgC;QAChC,aAAa,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW;QAChD,SAAS;QACT,UAAU;QACV,EAAE;KACF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACd,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,KAAmB;IACrD,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,MAAM,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7E,OAAO;IACR,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1D,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,eAAe,CAAC,KAAK,CAAC,eAAe,EAAE,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC;IAChF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,KAAmB;IACtD,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,MAAM,CACnE,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CACrE,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,CAAC;YACJ,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACR,uBAAuB;QACxB,CAAC;IACF,CAAC;AACF,CAAC;AAED,SAAS,WAAW,CAAC,KAAmB;IACvC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAClD,IAAI,CAAC;QACJ,MAAM,KAAK,GAAG,KAAK,CAClB,KAAK,CAAC,QAAQ,EACd;YACC,KAAK,CAAC,gBAAgB;YACtB,QAAQ;YACR,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;YAClB,UAAU;YACV,KAAK,CAAC,UAAU;YAChB,SAAS;YACT,KAAK,CAAC,SAAS;YACf,OAAO;YACP,KAAK,CAAC,OAAO;YACb,iBAAiB;YACjB,MAAM,CAAC,wBAAwB,CAAC;SAChC,EACD;YACC,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC;YAC/B,WAAW,EAAE,IAAI;SACjB,CACD,CAAC;QACF,KAAK,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;YAAS,CAAC;QACV,SAAS,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC;AACF,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,KAAmB,EAAE,OAAuB;IAC3E,IAAI,OAAO,CAAC,aAAa,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAClD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACxD,IAAI,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrF,WAAW,CAAC,KAAK,CAAC,CAAC;IACnB,OAAO,IAAI,CAAC;AACb,CAAC;AAED,SAAS,2BAA2B,CAAC,OAAuB;IAC3D,MAAM,KAAK,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;QACtE,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,+BAA+B,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,mBAAmB,CACjC,UAAkB,EAClB,SAAiB;IAEjB,IAAI,MAAM,GAA+B,IAAI,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,GAAG,MAAM,IAAI,MAAM,CAAC;QAC1B,IAAI,MAAM,EAAE,KAAK,KAAK,OAAO,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,MAAM,IAAI,KAAK,CAAC,2CAA2C,MAAM,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS,IAAI,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC;QAC7E,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,IAAI,KAAK,CAAC,gDAAgD,MAAM,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,MAAkC;IAC3D,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC;QAAE,OAAO;IACxD,IAAI,CAAC;QACJ,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;IACR,CAAC;IACD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC;YAAE,OAAO;QACxC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;AACF,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,UAAkB;IACnD,IAAI,CAAC;QACJ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACxC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,UAA0B,EAAE;IAClE,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACxD,OAAO;QACN,KAAK,EAAE,KAAK,KAAK,IAAI;QACrB,OAAO,EAAE,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC;QACpF,KAAK;QACL,MAAM;QACN,KAAK;KACL,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAChD,UAA0B,EAAE;IAE5B,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,CAC1C,iCAAiC,CAAC,OAAO,EAAE,KAAK,CAAC,CACjD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iCAAiC,CAC/C,OAAuB,EACvB,KAAmB;IAEnB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACtD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC1C,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,aAAa,EAAE,IAAI,IAAI,WAAW,CAAC;IAChD,IAAI,IAAI,GAAG,aAAa,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,IAAI,OAAO,GAAG,aAAa,EAAE,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAClE,MAAM,YAAY,GACjB,aAAa,IAAI,aAAa,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;QACrD,CAAC,CAAC,aAAa,CAAC,YAAY;QAC5B,CAAC,CAAC,yBAAyB,EAAE,CAAC;IAChC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,CAAC,MAAM,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI;QAC7D,OAAO,EAAE,CAAC;QACV,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,OAAO;QACP,OAAO;QACP,SAAS,EAAE,GAAG;KACd,CAAC;IACF,IAAI,WAAW,GAAG,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC9E,IAAI,KAAK,GAAiB;QACzB,OAAO,EAAE,CAAC;QACV,QAAQ;QACR,IAAI;QACJ,IAAI;QACJ,OAAO;QACP,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ;QAC9C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,YAAY;QACZ,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,eAAe,EAAE,MAAM,CAAC,WAAW,CAAC;QACpC,SAAS,EAAE,GAAG;KACd,CAAC;IAEF,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,eAAe,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAChF,MAAM,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,aAAa;QAC3B,CAAC,CAAC,MAAM,mBAAmB,CACzB,KAAK,CAAC,UAAU,EAChB,2BAA2B,CAAC,OAAO,CAAC,CACpC;QACF,CAAC,CAAC,MAAM,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC5C,MAAM,aAAa,GAAG,MAAM,EAAE,OAAO,IAAI,IAAI,CAAC;IAC9C,MAAM,cAAc,GACnB,CAAC,CAAC,aAAa;QACf,MAAM,KAAK,IAAI;QACf,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/E,IAAI,cAAc,EAAE,CAAC;QACpB,IAAI,GAAG,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAChD,OAAO,GAAG,aAAa,CAAC;IACzB,CAAC;SAAM,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACpD,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;QAC1B,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;IACjC,CAAC;IACD,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACd,oGAAoG,CACpG,CAAC;IACH,CAAC;IACD,WAAW,GAAG,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC1E,KAAK,GAAG;QACP,GAAG,KAAK;QACR,IAAI;QACJ,OAAO;QACP,eAAe,EAAE,MAAM,CAAC,WAAW,CAAC;QACpC,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE;KACxC,CAAC;IACF,IAAI,aAAa,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,EAAE,CAAC,uCAAuC,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,eAAe,CAAC,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACrD,MAAM,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO;QACN,MAAM;QACN,OAAO,EAAE,0BAA0B,KAAK,CAAC,UAAU,OAAO,OAAO,EAAE;KACnE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAClD,UAA0B,EAAE;IAE5B,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,CAC1C,mCAAmC,CAAC,OAAO,EAAE,KAAK,CAAC,CACnD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mCAAmC,CACjD,OAAuB,EACvB,KAAmB;IAEnB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACxD,IAAI,KAAK,EAAE,CAAC;QACX,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACzD,IAAI,MAAM,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,KAAK,IAAI,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,eAAe,EAAE,CAAC;YACnF,MAAM,eAAe,CACpB,MAAM,CAAC,UAAU,EACjB,4BAA4B,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAC7D,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC3B,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,MAAM,eAAe,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACP,MAAM,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QAClB,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC3D,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,eAAe,CACpB,KAAK,CAAC,UAAU,EAChB,4BAA4B,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CACjD,CAAC;QACH,CAAC;IACF,CAAC;IAED,KAAK,MAAM,SAAS,IAAI;QACvB,KAAK,CAAC,SAAS;QACf,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,UAAU;KAChB,EAAE,CAAC;QACH,IAAI,CAAC;YACJ,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACR,uBAAuB;QACxB,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO;QACN,MAAM;QACN,OAAO,EAAE,MAAM;YACd,CAAC,CAAC,4BAA4B,MAAM,CAAC,UAAU,EAAE;YACjD,CAAC,CAAC,mCAAmC;KACtC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAqB;IACxD,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO,gCAAgC,CAAC;IAC5E,MAAM,KAAK,GAAG;QACb,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mCAAmC;QAChE,QAAQ,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;QAC3B,UAAU,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE;KACnC,CAAC;IACF,IAAI,MAAM,CAAC,MAAM,EAAE,gBAAgB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtF,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC7D,CAAC;SAAM,IAAI,MAAM,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACtG,KAAK,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,MAAM,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,OAAO;QACN,mBAAmB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACrC;YACC,qEAAqE;YACrE,mEAAmE;YACnE,sEAAsE;YACtE,wBAAwB;SACxB,CAAC,IAAI,CAAC,GAAG,CAAC;QACX;YACC,oEAAoE;YACpE,6BAA6B;YAC7B,MAAM,CAAC,KAAK,CAAC,UAAU;YACvB,SAAS;YACT,wEAAwE;SACxE,CAAC,IAAI,CAAC,GAAG,CAAC;KACX,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codex-multi-auth",
3
- "version": "2.1.1",
3
+ "version": "2.1.3",
4
4
  "description": "Multi-account OAuth manager and codex auth wrapper for the official @openai/codex CLI, with switching, health checks, and recovery tools",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -106,7 +106,7 @@
106
106
  "prepare": "husky"
107
107
  },
108
108
  "bin": {
109
- "codex": "scripts/codex.js",
109
+ "codex-multi-auth-codex": "scripts/codex.js",
110
110
  "codex-multi-auth-app-launcher": "scripts/codex-app-launcher.js",
111
111
  "codex-multi-auth": "scripts/codex-multi-auth.js"
112
112
  },
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
2
2
 
3
3
  // @ts-check
4
4
 
@@ -1,8 +1,9 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
2
2
 
3
3
  // @ts-check
4
4
 
5
5
  import { createRequire } from "node:module";
6
+ import { AUTH_SUBCOMMANDS } from "./codex-routing.js";
6
7
 
7
8
  const versionFlags = new Set(["--version", "-v"]);
8
9
 
@@ -20,7 +21,17 @@ function resolveCliVersion() {
20
21
  return "";
21
22
  }
22
23
 
23
- const args = process.argv.slice(2);
24
+ function normalizeStandaloneArgs(args) {
25
+ if (args[0] === "auth") return args;
26
+ const firstArg = args[0] ?? "";
27
+ if (AUTH_SUBCOMMANDS.has(firstArg)) {
28
+ // Keep this exhaustive: generic names here are reserved for auth routing.
29
+ return ["auth", ...args];
30
+ }
31
+ return args;
32
+ }
33
+
34
+ const args = normalizeStandaloneArgs(process.argv.slice(2));
24
35
  const version = resolveCliVersion();
25
36
 
26
37
  if (version.length > 0) {
@@ -3,25 +3,25 @@ const AUTH_SUBCOMMANDS = new Set([
3
3
  "list",
4
4
  "status",
5
5
  "switch",
6
- "best",
7
- "check",
8
- "features",
9
- "usage",
10
- "verify-flagged",
11
- "verify",
12
- "forecast",
13
- "report",
14
- "fix",
15
- "doctor",
16
- "account",
17
- "budget",
18
- "bridge",
19
- "integrations",
20
- "models",
21
- "monitor",
22
- "rotation",
23
- "why-selected",
24
- "config",
6
+ "best",
7
+ "check",
8
+ "features",
9
+ "usage",
10
+ "verify-flagged",
11
+ "verify",
12
+ "forecast",
13
+ "report",
14
+ "fix",
15
+ "doctor",
16
+ "account",
17
+ "budget",
18
+ "bridge",
19
+ "integrations",
20
+ "models",
21
+ "monitor",
22
+ "rotation",
23
+ "why-selected",
24
+ "config",
25
25
  "init-config",
26
26
  "debug",
27
27
  ]);
package/scripts/codex.js CHANGED
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
2
2
 
3
3
  import { spawn } from "node:child_process";
4
4
  import { createHash, randomBytes } from "node:crypto";
@@ -579,6 +579,9 @@ function shouldCaptureForwardedCodexOutput(env = process.env) {
579
579
  if (override === "0") {
580
580
  return false;
581
581
  }
582
+ if ((env.CODEX_CI ?? "").trim() === "1") {
583
+ return true;
584
+ }
582
585
  // Windows child processes can report undefined isTTY; treat that as non-TTY so retry capture remains available.
583
586
  return process.stdout.isTTY !== true || process.stderr.isTTY !== true;
584
587
  }
@@ -764,6 +767,57 @@ function rewriteAppServerAccountReadResponseLine(line, pendingAuthRequestMethods
764
767
  })}${lineEnding}`;
765
768
  }
766
769
 
770
+ function filterKnownForwardedCodexStderr(text) {
771
+ if (typeof text !== "string" || text.length === 0) {
772
+ return "";
773
+ }
774
+ const lines = text.split(/\r?\n/);
775
+ const filtered = [];
776
+ for (let index = 0; index < lines.length; index += 1) {
777
+ const line = lines[index];
778
+ if (
779
+ /ERROR codex_core::session: failed to record rollout items: thread\s*$/.test(
780
+ line,
781
+ ) &&
782
+ /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} not found$/i.test(
783
+ lines[index + 1] ?? "",
784
+ )
785
+ ) {
786
+ index += 1;
787
+ continue;
788
+ }
789
+ if (
790
+ /ERROR rmcp::transport::streamable_http_client: fail to delete session:\s*$/.test(
791
+ line,
792
+ ) &&
793
+ /^unexpected server response: DELETE returned HTTP 404 session_id="/.test(
794
+ lines[index + 1] ?? "",
795
+ )
796
+ ) {
797
+ index += 1;
798
+ while (index + 1 < lines.length && !/"\s*$/.test(lines[index])) {
799
+ index += 1;
800
+ }
801
+ continue;
802
+ }
803
+ filtered.push(line);
804
+ }
805
+ return filtered.join("\n");
806
+ }
807
+
808
+ function withCiKnownForwardedCodexLogSilencers(env) {
809
+ if ((env.CODEX_CI ?? "").trim() !== "1") {
810
+ return env;
811
+ }
812
+ if ((env.RUST_LOG ?? "").trim().length > 0) {
813
+ return env;
814
+ }
815
+ return {
816
+ ...env,
817
+ RUST_LOG: "codex_core::session=off",
818
+ };
819
+ }
820
+
767
821
  function forwardToRealCodexOnce(
768
822
  codexBin,
769
823
  args,
@@ -794,6 +848,21 @@ function forwardToRealCodexOnce(
794
848
  } catch {
795
849
  // Best-effort cleanup only.
796
850
  }
851
+ if (captureOutput && stdout.length > 0) {
852
+ const filteredStdout = filterKnownForwardedCodexStderr(stdout);
853
+ if (filteredStdout.length > 0) {
854
+ process.stdout.write(filteredStdout);
855
+ }
856
+ }
857
+ if (captureOutput && stderr.length > 0) {
858
+ const filteredStderr = filterKnownForwardedCodexStderr(stderr);
859
+ if (filteredStderr.trim().length > 0) {
860
+ process.stderr.write(filteredStderr);
861
+ if (!filteredStderr.endsWith("\n")) {
862
+ process.stderr.write("\n");
863
+ }
864
+ }
865
+ }
797
866
  resolve({
798
867
  exitCode,
799
868
  // No-capture output stays empty by design so retry parsing cannot
@@ -812,13 +881,16 @@ function forwardToRealCodexOnce(
812
881
  finalize(1);
813
882
  };
814
883
  try {
884
+ const childEnv = captureOutput
885
+ ? withCiKnownForwardedCodexLogSilencers(env)
886
+ : env;
815
887
  child = spawn(command, commandArgs, {
816
888
  stdio: proxyAppServerAccountRead
817
889
  ? ["pipe", "pipe", "pipe"]
818
890
  : captureOutput
819
891
  ? ["inherit", "pipe", "pipe"]
820
892
  : "inherit",
821
- env,
893
+ env: childEnv,
822
894
  });
823
895
  } catch (error) {
824
896
  failLaunch(error);
@@ -883,12 +955,10 @@ function forwardToRealCodexOnce(
883
955
  child.stdout?.on("data", (chunk) => {
884
956
  const text = typeof chunk === "string" ? chunk : chunk.toString("utf8");
885
957
  stdout += text;
886
- process.stdout.write(chunk);
887
958
  });
888
959
  child.stderr?.on("data", (chunk) => {
889
960
  const text = typeof chunk === "string" ? chunk : chunk.toString("utf8");
890
961
  stderr += text;
891
- process.stderr.write(chunk);
892
962
  });
893
963
  }
894
964
 
@@ -948,6 +1018,7 @@ async function forwardToRealCodex(codexBin, rawArgs, baseEnv = process.env) {
948
1018
  );
949
1019
  lastExitCode = result.exitCode;
950
1020
  if (result.exitCode === 0) {
1021
+ repairCodexSessionIndex(resolveCodexHomeDir(baseEnv));
951
1022
  return result.exitCode;
952
1023
  }
953
1024
 
@@ -3273,6 +3344,175 @@ function normalizeExitCode(value) {
3273
3344
  return 1;
3274
3345
  }
3275
3346
 
3347
+ function extractRolloutIdFromFilename(fileName) {
3348
+ const match = fileName.match(
3349
+ /^rollout-\d{4}-\d{2}-\d{2}T\d{2}-\d{2}-\d{2}-([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\.jsonl$/i,
3350
+ );
3351
+ return match?.[1] ?? null;
3352
+ }
3353
+
3354
+ function collectRolloutFiles(rootDir, results = []) {
3355
+ let entries = [];
3356
+ try {
3357
+ entries = readdirSync(rootDir, { withFileTypes: true });
3358
+ } catch {
3359
+ return results;
3360
+ }
3361
+ for (const entry of entries) {
3362
+ const entryPath = join(rootDir, entry.name);
3363
+ if (entry.isDirectory()) {
3364
+ collectRolloutFiles(entryPath, results);
3365
+ continue;
3366
+ }
3367
+ if (entry.isFile() && extractRolloutIdFromFilename(entry.name)) {
3368
+ results.push(entryPath);
3369
+ }
3370
+ }
3371
+ return results;
3372
+ }
3373
+
3374
+ function parseRolloutIndexEntry(rolloutPath) {
3375
+ const fileName = basename(rolloutPath);
3376
+ const idFromName = extractRolloutIdFromFilename(fileName);
3377
+ if (!idFromName) return null;
3378
+ let content = "";
3379
+ try {
3380
+ content = readFileSync(rolloutPath, "utf8");
3381
+ } catch {
3382
+ return null;
3383
+ }
3384
+ const lines = content.split(/\r?\n/).filter(Boolean);
3385
+ let id = idFromName;
3386
+ let threadName = "";
3387
+ let updatedAt = null;
3388
+ let hasSessionMeta = false;
3389
+ for (const line of lines) {
3390
+ let record;
3391
+ try {
3392
+ record = JSON.parse(line);
3393
+ } catch {
3394
+ continue;
3395
+ }
3396
+ if (typeof record?.timestamp === "string") {
3397
+ updatedAt = record.timestamp;
3398
+ }
3399
+ if (record?.type === "session_meta" && typeof record.payload?.id === "string") {
3400
+ id = record.payload.id;
3401
+ hasSessionMeta = true;
3402
+ }
3403
+ if (!threadName && record?.type === "event_msg") {
3404
+ const message = record.payload?.message;
3405
+ if (typeof message === "string" && message.trim().length > 0) {
3406
+ threadName = message.trim();
3407
+ }
3408
+ }
3409
+ }
3410
+ if (!updatedAt) {
3411
+ try {
3412
+ updatedAt = statSync(rolloutPath).mtime.toISOString();
3413
+ } catch {
3414
+ updatedAt = new Date().toISOString();
3415
+ }
3416
+ }
3417
+ if (!threadName) {
3418
+ threadName = "Codex session";
3419
+ }
3420
+ if (!hasSessionMeta) {
3421
+ return null;
3422
+ }
3423
+ if (threadName.length > 80) {
3424
+ threadName = `${threadName.slice(0, 77)}...`;
3425
+ }
3426
+ return { id, thread_name: threadName, updated_at: updatedAt };
3427
+ }
3428
+
3429
+ function writeSessionIndexAtomicSync(indexPath, lines) {
3430
+ const indexDir = dirname(indexPath);
3431
+ mkdirSync(indexDir, { recursive: true });
3432
+ for (let attempt = 0; attempt <= SHADOW_HOME_CLEANUP_BACKOFF_MS.length; attempt += 1) {
3433
+ const tempPath = join(
3434
+ indexDir,
3435
+ [
3436
+ `.${basename(indexPath)}`,
3437
+ String(process.pid),
3438
+ String(Date.now()),
3439
+ randomBytes(4).toString("hex"),
3440
+ "tmp",
3441
+ ].join("."),
3442
+ );
3443
+ try {
3444
+ writeFileSync(tempPath, `${lines.join("\n")}\n`, {
3445
+ encoding: "utf8",
3446
+ mode: 0o600,
3447
+ });
3448
+ chmodSync(tempPath, 0o600);
3449
+ renameSync(tempPath, indexPath);
3450
+ chmodSync(indexPath, 0o600);
3451
+ return;
3452
+ } catch (error) {
3453
+ try {
3454
+ rmSync(tempPath, { force: true });
3455
+ } catch {
3456
+ // Preserve the original write failure.
3457
+ }
3458
+ if (
3459
+ isRetryableShadowHomeCleanupError(error) &&
3460
+ attempt < SHADOW_HOME_CLEANUP_BACKOFF_MS.length
3461
+ ) {
3462
+ sleepSync(SHADOW_HOME_CLEANUP_BACKOFF_MS[attempt]);
3463
+ continue;
3464
+ }
3465
+ throw error;
3466
+ }
3467
+ }
3468
+ }
3469
+
3470
+ function repairCodexSessionIndex(codexHome) {
3471
+ if (!codexHome || typeof codexHome !== "string") return;
3472
+ const sessionsDir = join(codexHome, "sessions");
3473
+ if (!existsSync(sessionsDir)) return;
3474
+ const indexPath = join(codexHome, "session_index.jsonl");
3475
+ let releaseLock = null;
3476
+ try {
3477
+ releaseLock = acquireShadowHomeSyncLock(codexHome);
3478
+ const seen = new Set();
3479
+ let existingLines = [];
3480
+ if (existsSync(indexPath)) {
3481
+ existingLines = readFileSync(indexPath, "utf8")
3482
+ .split(/\r?\n/)
3483
+ .filter(Boolean);
3484
+ for (const line of existingLines) {
3485
+ try {
3486
+ const entry = JSON.parse(line);
3487
+ if (typeof entry?.id === "string") {
3488
+ seen.add(entry.id);
3489
+ }
3490
+ } catch {
3491
+ // Preserve unparsable existing lines.
3492
+ }
3493
+ }
3494
+ }
3495
+
3496
+ const additions = [];
3497
+ for (const rolloutPath of collectRolloutFiles(sessionsDir)) {
3498
+ const entry = parseRolloutIndexEntry(rolloutPath);
3499
+ if (!entry || seen.has(entry.id)) continue;
3500
+ seen.add(entry.id);
3501
+ additions.push(entry);
3502
+ }
3503
+ if (additions.length === 0) return;
3504
+ additions.sort((a, b) => a.updated_at.localeCompare(b.updated_at));
3505
+ writeSessionIndexAtomicSync(indexPath, [
3506
+ ...existingLines,
3507
+ ...additions.map((entry) => JSON.stringify(entry)),
3508
+ ]);
3509
+ } catch {
3510
+ // Best-effort repair only; forwarding must not fail because indexing did.
3511
+ } finally {
3512
+ releaseLock?.();
3513
+ }
3514
+ }
3515
+
3276
3516
  const WINDOWS_SHIM_MARKER = "codex-multi-auth windows shim guardian v1";
3277
3517
  const POWERSHELL_PROFILE_MARKER_START = "# >>> codex-multi-auth shell guard >>>";
3278
3518
  const POWERSHELL_PROFILE_MARKER_END = "# <<< codex-multi-auth shell guard <<<";