oc-codex-multi-auth 6.1.2 → 6.1.6

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 (84) hide show
  1. package/README.md +27 -23
  2. package/config/README.md +35 -35
  3. package/config/opencode-legacy.json +80 -30
  4. package/config/opencode-modern.json +14 -4
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +157 -11
  7. package/dist/index.js.map +1 -1
  8. package/dist/lib/accounts/persistence.d.ts.map +1 -1
  9. package/dist/lib/accounts/persistence.js +1 -0
  10. package/dist/lib/accounts/persistence.js.map +1 -1
  11. package/dist/lib/accounts/state.d.ts +2 -2
  12. package/dist/lib/accounts/state.d.ts.map +1 -1
  13. package/dist/lib/accounts/state.js +87 -19
  14. package/dist/lib/accounts/state.js.map +1 -1
  15. package/dist/lib/auth/auth.d.ts +2 -2
  16. package/dist/lib/auth/auth.d.ts.map +1 -1
  17. package/dist/lib/auth/auth.js +9 -6
  18. package/dist/lib/auth/auth.js.map +1 -1
  19. package/dist/lib/auth/login-runner.d.ts +1 -0
  20. package/dist/lib/auth/login-runner.d.ts.map +1 -1
  21. package/dist/lib/auth/login-runner.js +3 -0
  22. package/dist/lib/auth/login-runner.js.map +1 -1
  23. package/dist/lib/auth/scopes.d.ts +5 -0
  24. package/dist/lib/auth/scopes.d.ts.map +1 -0
  25. package/dist/lib/auth/scopes.js +23 -0
  26. package/dist/lib/auth/scopes.js.map +1 -0
  27. package/dist/lib/auth/server.d.ts +6 -1
  28. package/dist/lib/auth/server.d.ts.map +1 -1
  29. package/dist/lib/auth/server.js +95 -51
  30. package/dist/lib/auth/server.js.map +1 -1
  31. package/dist/lib/codex-usage.d.ts +91 -0
  32. package/dist/lib/codex-usage.d.ts.map +1 -0
  33. package/dist/lib/codex-usage.js +368 -0
  34. package/dist/lib/codex-usage.js.map +1 -0
  35. package/dist/lib/oauth-constants.d.ts +5 -5
  36. package/dist/lib/oauth-constants.d.ts.map +1 -1
  37. package/dist/lib/oauth-constants.js +5 -5
  38. package/dist/lib/oauth-constants.js.map +1 -1
  39. package/dist/lib/prompts/codex.d.ts +2 -0
  40. package/dist/lib/prompts/codex.d.ts.map +1 -1
  41. package/dist/lib/prompts/codex.js +43 -11
  42. package/dist/lib/prompts/codex.js.map +1 -1
  43. package/dist/lib/request/fetch-helpers.d.ts +2 -2
  44. package/dist/lib/request/fetch-helpers.d.ts.map +1 -1
  45. package/dist/lib/request/fetch-helpers.js +37 -25
  46. package/dist/lib/request/fetch-helpers.js.map +1 -1
  47. package/dist/lib/request/helpers/model-map.d.ts +1 -0
  48. package/dist/lib/request/helpers/model-map.d.ts.map +1 -1
  49. package/dist/lib/request/helpers/model-map.js +28 -25
  50. package/dist/lib/request/helpers/model-map.js.map +1 -1
  51. package/dist/lib/request/request-transformer.d.ts +1 -0
  52. package/dist/lib/request/request-transformer.d.ts.map +1 -1
  53. package/dist/lib/request/request-transformer.js +46 -22
  54. package/dist/lib/request/request-transformer.js.map +1 -1
  55. package/dist/lib/schemas.d.ts +8 -0
  56. package/dist/lib/schemas.d.ts.map +1 -1
  57. package/dist/lib/schemas.js +3 -0
  58. package/dist/lib/schemas.js.map +1 -1
  59. package/dist/lib/storage/migrations.d.ts +4 -0
  60. package/dist/lib/storage/migrations.d.ts.map +1 -1
  61. package/dist/lib/storage/migrations.js +1 -0
  62. package/dist/lib/storage/migrations.js.map +1 -1
  63. package/dist/lib/tools/codex-limits.d.ts.map +1 -1
  64. package/dist/lib/tools/codex-limits.js +39 -340
  65. package/dist/lib/tools/codex-limits.js.map +1 -1
  66. package/dist/lib/tools/codex-switch.d.ts.map +1 -1
  67. package/dist/lib/tools/codex-switch.js +9 -0
  68. package/dist/lib/tools/codex-switch.js.map +1 -1
  69. package/dist/lib/tui-quota-cache.d.ts +33 -0
  70. package/dist/lib/tui-quota-cache.d.ts.map +1 -0
  71. package/dist/lib/tui-quota-cache.js +247 -0
  72. package/dist/lib/tui-quota-cache.js.map +1 -0
  73. package/dist/lib/tui-status.d.ts +55 -0
  74. package/dist/lib/tui-status.d.ts.map +1 -0
  75. package/dist/lib/tui-status.js +343 -0
  76. package/dist/lib/tui-status.js.map +1 -0
  77. package/dist/lib/types.d.ts +3 -1
  78. package/dist/lib/types.d.ts.map +1 -1
  79. package/dist/tui.d.ts +6 -0
  80. package/dist/tui.d.ts.map +1 -0
  81. package/dist/tui.js +363 -0
  82. package/dist/tui.js.map +1 -0
  83. package/package.json +16 -2
  84. package/scripts/install-oc-codex-multi-auth-core.js +119 -18
package/README.md CHANGED
@@ -8,16 +8,18 @@ Badges: CI + OpenSSF Scorecard will turn green once Phase 3 Batch A (CI workflow
8
8
  [![Node.js Version](https://img.shields.io/node/v/oc-codex-multi-auth.svg)](https://nodejs.org)
9
9
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
10
10
 
11
+ <img width="1227" height="702" alt="cover" src="https://github.com/user-attachments/assets/b796eb2f-282e-468a-ba6a-acadf09d731b" />
12
+
11
13
  Use your ChatGPT Plus/Pro subscription inside OpenCode with OAuth login, GPT-5/Codex model presets, and multi-account failover.
12
14
 
13
15
  `oc-codex-multi-auth` is an OpenCode plugin for developers who want Codex-first GPT-5 workflows in OpenCode without switching to separate Platform API credentials for personal use. It uses the same official OAuth flow as the Codex CLI, adds model templates for current GPT-5 families, and can rotate across multiple ChatGPT accounts when one account is rate-limited or unavailable.
14
16
 
15
17
  ## What This Project Does
16
18
 
17
- - Adds an OpenCode plugin that authenticates with ChatGPT Plus/Pro through official OAuth
18
- - Ships ready-to-use GPT-5.5 release templates, explicit `gpt-5.5-medium` / `gpt-5.5-high` selectors, `gpt-5-codex`, and related GPT-5 families
19
- - Routes requests through a stateless Codex-compatible request pipeline with automatic token refresh
20
- - Supports multi-account rotation, per-project account storage, and guided onboarding commands
19
+ - Adds an OpenCode plugin that authenticates with ChatGPT Plus/Pro through official OAuth
20
+ - Ships ready-to-use GPT-5.5 OAuth model templates, variant picker presets, optional explicit selector IDs, `gpt-5-codex`, and related GPT-5 families
21
+ - Routes requests through a stateless Codex-compatible request pipeline with automatic token refresh
22
+ - Supports multi-account rotation, per-project account storage, and guided onboarding commands
21
23
 
22
24
  ## Quick Start
23
25
 
@@ -25,12 +27,12 @@ Use your ChatGPT Plus/Pro subscription inside OpenCode with OAuth login, GPT-5/C
25
27
  # 1. Install or refresh the plugin config
26
28
  npx -y oc-codex-multi-auth@latest
27
29
 
28
- # 2. Sign in with ChatGPT Plus/Pro
29
- opencode auth login
30
-
31
- # 3. Run a prompt in OpenCode
32
- opencode run "Explain this repository" --model=openai/gpt-5.5-medium
33
- ```
30
+ # 2. Sign in with ChatGPT Plus/Pro
31
+ opencode auth login
32
+
33
+ # 3. Run a prompt in OpenCode
34
+ opencode run "Explain this repository" --model=openai/gpt-5.5 --variant=medium
35
+ ```
34
36
 
35
37
  What the installer does:
36
38
 
@@ -39,20 +41,22 @@ What the installer does:
39
41
  - normalizes the plugin entry to `"oc-codex-multi-auth"`
40
42
  - clears the cached plugin copy so OpenCode reinstalls the latest package
41
43
 
42
- By default, the installer now writes a full catalog config that includes both:
43
- - modern base model entries such as `gpt-5.5` for `--variant` workflows
44
- - explicit preset entries such as `gpt-5.5-medium` / `gpt-5.5-high` so the shipped catalog is visible directly in model pickers
45
-
46
- Tested live on OpenCode `1.14.22`: explicit GPT-5.5 model IDs like `openai/gpt-5.5-medium` and `openai/gpt-5.5-high` work directly. Some OpenCode releases still reject bare `openai/gpt-5.5` on the CLI even when the base config entry exists in the effective config.
44
+ By default, the installer writes the compact UI config:
45
+ - model picker entries stay on actual OAuth model families such as `gpt-5.5` and `gpt-5.5-fast`
46
+ - reasoning presets are selected through OpenCode's model variant picker (`none`, `low`, `medium`, `high`, `xhigh`)
47
+ - rerunning the default installer removes explicit preset entries and stale base models from earlier plugin catalogs
48
+
49
+ If you prefer direct model IDs such as `openai/gpt-5.5-medium` or `openai/gpt-5.5-fast-medium`, install with `--full`.
47
50
 
48
51
  ## Example Usage
49
52
 
50
53
  ```bash
51
- # General GPT-5 workflow
52
- opencode run "Summarize the failing test and suggest a fix" --model=openai/gpt-5.5-medium
53
-
54
- # Codex-focused workflow
55
- opencode run "Refactor the retry logic and update the tests" --model=openai/gpt-5-codex --variant=high
54
+ # General GPT-5 workflow
55
+ opencode run "Summarize the failing test and suggest a fix" --model=openai/gpt-5.5 --variant=medium
56
+ opencode run "Summarize the failing test and suggest a fix" --model=openai/gpt-5.5-fast --variant=medium
57
+
58
+ # Codex-focused workflow
59
+ opencode run "Refactor the retry logic and update the tests" --model=openai/gpt-5-codex --variant=high
56
60
  ```
57
61
 
58
62
  ## Usage Notice
@@ -86,7 +90,7 @@ OpenCode users often want the same GPT-5 and Codex model experience they use in
86
90
 
87
91
  ## Common Workflows
88
92
 
89
- - Personal coding sessions in OpenCode using `gpt-5.5-medium`, `gpt-5.5-high`, or `gpt-5-codex`
93
+ - Personal coding sessions in OpenCode using `gpt-5.5` / `gpt-5.5-fast` with variants, or `gpt-5-codex`
90
94
  - Switching between personal and workspace-linked ChatGPT accounts
91
95
  - Keeping separate account pools per project or monorepo
92
96
  - Recovering from unsupported-model, auth, or rate-limit issues with guided commands
@@ -106,10 +110,10 @@ See [Architecture](docs/development/ARCHITECTURE.md) for implementation details.
106
110
 
107
111
  Use the quick-start path above for the fastest setup. For full setup, local development installs, legacy OpenCode support, and verification steps, see [Getting Started](docs/getting-started.md).
108
112
 
109
- If you prefer the compact variant-only config on OpenCode `v1.0.210+`, use:
113
+ For direct selector IDs in scripts or older habits, use the full catalog:
110
114
 
111
115
  ```bash
112
- npx -y oc-codex-multi-auth@latest --modern
116
+ npx -y oc-codex-multi-auth@latest --full
113
117
  ```
114
118
 
115
119
  ## Configuration
package/config/README.md CHANGED
@@ -6,10 +6,10 @@ This directory contains the official OpenCode config templates for `oc-codex-mul
6
6
 
7
7
  | File | OpenCode version | Description |
8
8
  |------|------------------|-------------|
9
- | [`opencode-modern.json`](./opencode-modern.json) | **v1.0.210+** | Variant-based config: 9 base models with 34 total presets |
10
- | [`opencode-legacy.json`](./opencode-legacy.json) | **v1.0.209 and below** | Legacy explicit entries: 34 individual model definitions |
9
+ | [`opencode-modern.json`](./opencode-modern.json) | **v1.0.210+** | Variant-based config: 9 base models with 36 total presets |
10
+ | [`opencode-legacy.json`](./opencode-legacy.json) | **v1.0.209 and below** | Legacy explicit entries: 36 individual model definitions |
11
11
 
12
- The installer currently uses a merged full-catalog mode by default so users get both the modern base entries and the explicit preset entries without having to hand-edit `opencode.json`.
12
+ The installer uses the compact modern template by default so the model picker shows only base OAuth model families. Rerun the default installer to remove explicit preset IDs and stale base models left by earlier plugin catalogs. Use `--full` when you want the explicit preset IDs installed too.
13
13
 
14
14
  ## Quick pick
15
15
 
@@ -35,13 +35,13 @@ opencode --version
35
35
 
36
36
  OpenCode v1.0.210+ added model `variants`, so one model entry can expose multiple reasoning levels. That keeps modern config much smaller while preserving the same effective presets.
37
37
 
38
- Both templates include:
39
- - GPT-5.5, GPT-5.5 Pro, GPT-5.4 Mini, GPT-5.4 Nano, GPT-5 Codex, GPT-5.1, GPT-5.1 Codex, GPT-5.1 Codex Max, GPT-5.1 Codex Mini
40
- - Reasoning variants per model family
41
- - `store: false` and `include: ["reasoning.encrypted_content"]`
42
- - Context metadata (`gpt-5.5`/`gpt-5.5-pro`: 1,050,000; `gpt-5.4-mini`/`gpt-5.4-nano`/Codex models: 400,000; `gpt-5.1`: 272,000; all output: 128,000)
43
-
44
- Use `opencode debug config` to verify that these template entries were merged into your effective config. On tested OpenCode `1.14.22`, `opencode models openai` exposes explicit GPT-5.5 entries such as `gpt-5.5-medium` / `gpt-5.5-high`, while bare `gpt-5.5` may still be omitted or rejected by provider lookup even when it exists in the effective config.
38
+ Both templates include:
39
+ - GPT-5.5, GPT-5.5 Fast, GPT-5.4 Mini, GPT-5.4 Nano, GPT-5 Codex, GPT-5.1, GPT-5.1 Codex, GPT-5.1 Codex Max, GPT-5.1 Codex Mini
40
+ - Reasoning variants per model family
41
+ - `store: false` and `include: ["reasoning.encrypted_content"]`
42
+ - Context metadata (`gpt-5.5`/`gpt-5.5-fast`: 1,050,000; `gpt-5.4-mini`/`gpt-5.4-nano`/Codex models: 400,000; `gpt-5.1`: 272,000; all output: 128,000)
43
+
44
+ Use `opencode debug config` to verify that these template entries were merged into your effective config. The default compact install shows base OAuth entries such as `gpt-5.5` / `gpt-5.5-fast`; the separate OpenCode variant picker exposes the reasoning presets.
45
45
 
46
46
  If your OpenCode runtime supports global compaction tuning, you can also set:
47
47
  - `model_context_window = 1050000`
@@ -55,18 +55,19 @@ If your workspace is entitled, you can add Spark model IDs manually.
55
55
 
56
56
  ## Usage examples
57
57
 
58
- Recommended real-session selectors (tested on OpenCode `1.14.22`):
59
-
60
- ```bash
61
- opencode run "task" --model=openai/gpt-5.5-medium
62
- opencode run "task" --model=openai/gpt-5-codex --variant=high
63
- ```
64
-
65
- If your OpenCode release already exposes bare GPT-5.5 base entries, the compact modern template also supports:
66
-
67
- ```bash
68
- opencode run "task" --model=openai/gpt-5.5 --variant=medium
69
- ```
58
+ Recommended compact UI selectors:
59
+
60
+ ```bash
61
+ opencode run "task" --model=openai/gpt-5.5 --variant=medium
62
+ opencode run "task" --model=openai/gpt-5.5-fast --variant=medium
63
+ opencode run "task" --model=openai/gpt-5-codex --variant=high
64
+ ```
65
+
66
+ If you need direct explicit selector IDs for scripts, install with:
67
+
68
+ ```bash
69
+ npx -y oc-codex-multi-auth@latest --full
70
+ ```
70
71
 
71
72
  ## Minimal config (advanced)
72
73
 
@@ -76,19 +77,18 @@ A barebones debug template is available at [`minimal-opencode.json`](./minimal-o
76
77
 
77
78
  Current defaults are strict entitlement handling:
78
79
  - `unsupportedCodexPolicy: "strict"` returns entitlement errors directly
79
- - set `unsupportedCodexPolicy: "fallback"` (or `CODEX_AUTH_UNSUPPORTED_MODEL_POLICY=fallback`) to enable automatic fallback retries
80
- - `fallbackToGpt52OnUnsupportedGpt53: true` keeps the legacy `gpt-5.3-codex -> gpt-5.2-codex` edge inside fallback mode
81
- - `gpt-5.5 -> gpt-5.4` is included by default for current ChatGPT-account entitlement gaps
82
- - `gpt-5.5-pro -> gpt-5.5-20260423` is included by default in fallback mode
83
- - `gpt-5.4-pro -> gpt-5.4` remains available for older manual configs
84
- - `unsupportedCodexFallbackChain` lets you override fallback order per model
85
-
86
- Default fallback chain (when policy is `fallback`):
87
- - `gpt-5.5 -> gpt-5.4`
88
- - `gpt-5.5-pro -> gpt-5.5-20260423`
89
- - `gpt-5.4-pro -> gpt-5.4` (if you manually select `gpt-5.4-pro`)
90
- - `gpt-5.3-codex -> gpt-5-codex -> gpt-5.2-codex`
91
- - `gpt-5.3-codex-spark -> gpt-5-codex -> gpt-5.3-codex -> gpt-5.2-codex` (only relevant if Spark IDs are added manually)
80
+ - set `unsupportedCodexPolicy: "fallback"` (or `CODEX_AUTH_UNSUPPORTED_MODEL_POLICY=fallback`) to enable automatic fallback retries
81
+ - `fallbackToGpt52OnUnsupportedGpt53: true` keeps the legacy `gpt-5.3-codex -> gpt-5.2-codex` edge inside fallback mode
82
+ - `gpt-5.5 -> gpt-5.4` is included by default for accounts/workspaces that do not yet expose GPT-5.5
83
+ - user-typed `gpt-5.5-pro*` is canonicalized to `gpt-5.5` before fallback because GPT-5.5 Pro is ChatGPT-only, not a Codex-routable model
84
+ - `gpt-5.4-pro -> gpt-5.4` remains available for older manual configs
85
+ - `unsupportedCodexFallbackChain` lets you override fallback order per model
86
+
87
+ Default fallback chain (when policy is `fallback`):
88
+ - `gpt-5.5 -> gpt-5.4`
89
+ - `gpt-5.4-pro -> gpt-5.4` (if you manually select `gpt-5.4-pro`)
90
+ - `gpt-5.3-codex -> gpt-5-codex -> gpt-5.2-codex`
91
+ - `gpt-5.3-codex-spark -> gpt-5-codex -> gpt-5.3-codex -> gpt-5.2-codex` (only relevant if Spark IDs are added manually)
92
92
  - `gpt-5.2-codex -> gpt-5-codex`
93
93
  - `gpt-5.1-codex -> gpt-5-codex`
94
94
 
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "models": {
18
18
  "gpt-5.5-none": {
19
- "name": "GPT 5.5 20260423 None (OAuth)",
19
+ "name": "GPT 5.5 None (OAuth)",
20
20
  "limit": {
21
21
  "context": 1050000,
22
22
  "output": 128000
@@ -41,7 +41,7 @@
41
41
  }
42
42
  },
43
43
  "gpt-5.5-low": {
44
- "name": "GPT 5.5 20260423 Low (OAuth)",
44
+ "name": "GPT 5.5 Low (OAuth)",
45
45
  "limit": {
46
46
  "context": 1050000,
47
47
  "output": 128000
@@ -66,7 +66,7 @@
66
66
  }
67
67
  },
68
68
  "gpt-5.5-medium": {
69
- "name": "GPT 5.5 20260423 Medium (OAuth)",
69
+ "name": "GPT 5.5 Medium (OAuth)",
70
70
  "limit": {
71
71
  "context": 1050000,
72
72
  "output": 128000
@@ -91,7 +91,7 @@
91
91
  }
92
92
  },
93
93
  "gpt-5.5-high": {
94
- "name": "GPT 5.5 20260423 High (OAuth)",
94
+ "name": "GPT 5.5 High (OAuth)",
95
95
  "limit": {
96
96
  "context": 1050000,
97
97
  "output": 128000
@@ -116,7 +116,7 @@
116
116
  }
117
117
  },
118
118
  "gpt-5.5-xhigh": {
119
- "name": "GPT 5.5 20260423 Extra High (OAuth)",
119
+ "name": "GPT 5.5 Extra High (OAuth)",
120
120
  "limit": {
121
121
  "context": 1050000,
122
122
  "output": 128000
@@ -140,10 +140,10 @@
140
140
  "store": false
141
141
  }
142
142
  },
143
- "gpt-5.4-mini-none": {
144
- "name": "GPT 5.4 Mini None (OAuth)",
143
+ "gpt-5.5-fast-none": {
144
+ "name": "GPT 5.5 Fast None (OAuth)",
145
145
  "limit": {
146
- "context": 400000,
146
+ "context": 1050000,
147
147
  "output": 128000
148
148
  },
149
149
  "modalities": {
@@ -165,10 +165,10 @@
165
165
  "store": false
166
166
  }
167
167
  },
168
- "gpt-5.4-mini-low": {
169
- "name": "GPT 5.4 Mini Low (OAuth)",
168
+ "gpt-5.5-fast-low": {
169
+ "name": "GPT 5.5 Fast Low (OAuth)",
170
170
  "limit": {
171
- "context": 400000,
171
+ "context": 1050000,
172
172
  "output": 128000
173
173
  },
174
174
  "modalities": {
@@ -190,10 +190,10 @@
190
190
  "store": false
191
191
  }
192
192
  },
193
- "gpt-5.4-mini-medium": {
194
- "name": "GPT 5.4 Mini Medium (OAuth)",
193
+ "gpt-5.5-fast-medium": {
194
+ "name": "GPT 5.5 Fast Medium (OAuth)",
195
195
  "limit": {
196
- "context": 400000,
196
+ "context": 1050000,
197
197
  "output": 128000
198
198
  },
199
199
  "modalities": {
@@ -215,10 +215,10 @@
215
215
  "store": false
216
216
  }
217
217
  },
218
- "gpt-5.4-mini-high": {
219
- "name": "GPT 5.4 Mini High (OAuth)",
218
+ "gpt-5.5-fast-high": {
219
+ "name": "GPT 5.5 Fast High (OAuth)",
220
220
  "limit": {
221
- "context": 400000,
221
+ "context": 1050000,
222
222
  "output": 128000
223
223
  },
224
224
  "modalities": {
@@ -240,10 +240,10 @@
240
240
  "store": false
241
241
  }
242
242
  },
243
- "gpt-5.4-mini-xhigh": {
244
- "name": "GPT 5.4 Mini Extra High (OAuth)",
243
+ "gpt-5.5-fast-xhigh": {
244
+ "name": "GPT 5.5 Fast Extra High (OAuth)",
245
245
  "limit": {
246
- "context": 400000,
246
+ "context": 1050000,
247
247
  "output": 128000
248
248
  },
249
249
  "modalities": {
@@ -265,10 +265,60 @@
265
265
  "store": false
266
266
  }
267
267
  },
268
- "gpt-5.5-pro-medium": {
269
- "name": "GPT 5.5 Pro 20260423 Medium (OAuth)",
268
+ "gpt-5.4-mini-none": {
269
+ "name": "GPT 5.4 Mini None (OAuth)",
270
270
  "limit": {
271
- "context": 1050000,
271
+ "context": 400000,
272
+ "output": 128000
273
+ },
274
+ "modalities": {
275
+ "input": [
276
+ "text",
277
+ "image"
278
+ ],
279
+ "output": [
280
+ "text"
281
+ ]
282
+ },
283
+ "options": {
284
+ "reasoningEffort": "none",
285
+ "reasoningSummary": "auto",
286
+ "textVerbosity": "medium",
287
+ "include": [
288
+ "reasoning.encrypted_content"
289
+ ],
290
+ "store": false
291
+ }
292
+ },
293
+ "gpt-5.4-mini-low": {
294
+ "name": "GPT 5.4 Mini Low (OAuth)",
295
+ "limit": {
296
+ "context": 400000,
297
+ "output": 128000
298
+ },
299
+ "modalities": {
300
+ "input": [
301
+ "text",
302
+ "image"
303
+ ],
304
+ "output": [
305
+ "text"
306
+ ]
307
+ },
308
+ "options": {
309
+ "reasoningEffort": "low",
310
+ "reasoningSummary": "auto",
311
+ "textVerbosity": "medium",
312
+ "include": [
313
+ "reasoning.encrypted_content"
314
+ ],
315
+ "store": false
316
+ }
317
+ },
318
+ "gpt-5.4-mini-medium": {
319
+ "name": "GPT 5.4 Mini Medium (OAuth)",
320
+ "limit": {
321
+ "context": 400000,
272
322
  "output": 128000
273
323
  },
274
324
  "modalities": {
@@ -282,7 +332,7 @@
282
332
  },
283
333
  "options": {
284
334
  "reasoningEffort": "medium",
285
- "reasoningSummary": "detailed",
335
+ "reasoningSummary": "auto",
286
336
  "textVerbosity": "medium",
287
337
  "include": [
288
338
  "reasoning.encrypted_content"
@@ -290,10 +340,10 @@
290
340
  "store": false
291
341
  }
292
342
  },
293
- "gpt-5.5-pro-high": {
294
- "name": "GPT 5.5 Pro 20260423 High (OAuth)",
343
+ "gpt-5.4-mini-high": {
344
+ "name": "GPT 5.4 Mini High (OAuth)",
295
345
  "limit": {
296
- "context": 1050000,
346
+ "context": 400000,
297
347
  "output": 128000
298
348
  },
299
349
  "modalities": {
@@ -315,10 +365,10 @@
315
365
  "store": false
316
366
  }
317
367
  },
318
- "gpt-5.5-pro-xhigh": {
319
- "name": "GPT 5.5 Pro 20260423 Extra High (OAuth)",
368
+ "gpt-5.4-mini-xhigh": {
369
+ "name": "GPT 5.4 Mini Extra High (OAuth)",
320
370
  "limit": {
321
- "context": 1050000,
371
+ "context": 400000,
322
372
  "output": 128000
323
373
  },
324
374
  "modalities": {
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "models": {
18
18
  "gpt-5.5": {
19
- "name": "GPT 5.5 20260423 (OAuth)",
19
+ "name": "GPT 5.5 (OAuth)",
20
20
  "limit": {
21
21
  "context": 1050000,
22
22
  "output": 128000
@@ -58,8 +58,8 @@
58
58
  }
59
59
  }
60
60
  },
61
- "gpt-5.5-pro": {
62
- "name": "GPT 5.5 Pro 20260423 (OAuth)",
61
+ "gpt-5.5-fast": {
62
+ "name": "GPT 5.5 Fast (OAuth)",
63
63
  "limit": {
64
64
  "context": 1050000,
65
65
  "output": 128000
@@ -74,9 +74,19 @@
74
74
  ]
75
75
  },
76
76
  "variants": {
77
+ "none": {
78
+ "reasoningEffort": "none",
79
+ "reasoningSummary": "auto",
80
+ "textVerbosity": "medium"
81
+ },
82
+ "low": {
83
+ "reasoningEffort": "low",
84
+ "reasoningSummary": "auto",
85
+ "textVerbosity": "medium"
86
+ },
77
87
  "medium": {
78
88
  "reasoningEffort": "medium",
79
- "reasoningSummary": "detailed",
89
+ "reasoningSummary": "auto",
80
90
  "textVerbosity": "medium"
81
91
  },
82
92
  "high": {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAe,MAAM,qBAAqB,CAAC;AAwL/D;;;;;;;;;;;;;;;GAeG;AAEH,eAAO,MAAM,iBAAiB,EAAE,MAmrG/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAoB,CAAC;AAElD,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAKH,OAAO,KAAK,EAAE,MAAM,EAAe,MAAM,qBAAqB,CAAC;AAiM/D;;;;;;;;;;;;;;;GAeG;AAEH,eAAO,MAAM,iBAAiB,EAAE,MAy3G/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAoB,CAAC;AAElD,eAAe,iBAAiB,CAAC"}