@iam-brain/opencode-codex-auth 0.3.0 → 0.3.2

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 (108) hide show
  1. package/README.md +74 -32
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +4 -19
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/codex-native/accounts.d.ts +21 -0
  6. package/dist/lib/codex-native/accounts.d.ts.map +1 -0
  7. package/dist/lib/codex-native/accounts.js +203 -0
  8. package/dist/lib/codex-native/accounts.js.map +1 -0
  9. package/dist/lib/codex-native/acquire-auth.d.ts +22 -0
  10. package/dist/lib/codex-native/acquire-auth.d.ts.map +1 -0
  11. package/dist/lib/codex-native/acquire-auth.js +338 -0
  12. package/dist/lib/codex-native/acquire-auth.js.map +1 -0
  13. package/dist/lib/codex-native/auth-menu-flow.d.ts +9 -0
  14. package/dist/lib/codex-native/auth-menu-flow.d.ts.map +1 -0
  15. package/dist/lib/codex-native/auth-menu-flow.js +192 -0
  16. package/dist/lib/codex-native/auth-menu-flow.js.map +1 -0
  17. package/dist/lib/codex-native/auth-menu-quotas.d.ts +9 -0
  18. package/dist/lib/codex-native/auth-menu-quotas.d.ts.map +1 -0
  19. package/dist/lib/codex-native/auth-menu-quotas.js +111 -0
  20. package/dist/lib/codex-native/auth-menu-quotas.js.map +1 -0
  21. package/dist/lib/codex-native/catalog-sync.d.ts +28 -0
  22. package/dist/lib/codex-native/catalog-sync.d.ts.map +1 -0
  23. package/dist/lib/codex-native/catalog-sync.js +36 -0
  24. package/dist/lib/codex-native/catalog-sync.js.map +1 -0
  25. package/dist/lib/codex-native/chat-hooks.d.ts +76 -0
  26. package/dist/lib/codex-native/chat-hooks.d.ts.map +1 -0
  27. package/dist/lib/codex-native/chat-hooks.js +136 -0
  28. package/dist/lib/codex-native/chat-hooks.js.map +1 -0
  29. package/dist/lib/codex-native/oauth-auth-methods.d.ts +45 -0
  30. package/dist/lib/codex-native/oauth-auth-methods.d.ts.map +1 -0
  31. package/dist/lib/codex-native/oauth-auth-methods.js +171 -0
  32. package/dist/lib/codex-native/oauth-auth-methods.js.map +1 -0
  33. package/dist/lib/codex-native/oauth-persistence.d.ts +4 -0
  34. package/dist/lib/codex-native/oauth-persistence.d.ts.map +1 -0
  35. package/dist/lib/codex-native/oauth-persistence.js +28 -0
  36. package/dist/lib/codex-native/oauth-persistence.js.map +1 -0
  37. package/dist/lib/codex-native/oauth-server.d.ts.map +1 -1
  38. package/dist/lib/codex-native/oauth-server.js +31 -1
  39. package/dist/lib/codex-native/oauth-server.js.map +1 -1
  40. package/dist/lib/codex-native/oauth-utils.d.ts +51 -0
  41. package/dist/lib/codex-native/oauth-utils.d.ts.map +1 -0
  42. package/dist/lib/codex-native/oauth-utils.js +268 -0
  43. package/dist/lib/codex-native/oauth-utils.js.map +1 -0
  44. package/dist/lib/codex-native/openai-loader-fetch.d.ts +36 -0
  45. package/dist/lib/codex-native/openai-loader-fetch.d.ts.map +1 -0
  46. package/dist/lib/codex-native/openai-loader-fetch.js +191 -0
  47. package/dist/lib/codex-native/openai-loader-fetch.js.map +1 -0
  48. package/dist/lib/codex-native/rate-limit-snapshots.d.ts +2 -0
  49. package/dist/lib/codex-native/rate-limit-snapshots.d.ts.map +1 -0
  50. package/dist/lib/codex-native/rate-limit-snapshots.js +24 -0
  51. package/dist/lib/codex-native/rate-limit-snapshots.js.map +1 -0
  52. package/dist/lib/codex-native/request-routing.d.ts +3 -0
  53. package/dist/lib/codex-native/request-routing.d.ts.map +1 -0
  54. package/dist/lib/codex-native/request-routing.js +41 -0
  55. package/dist/lib/codex-native/request-routing.js.map +1 -0
  56. package/dist/lib/codex-native/request-transform-pipeline.d.ts +19 -0
  57. package/dist/lib/codex-native/request-transform-pipeline.d.ts.map +1 -0
  58. package/dist/lib/codex-native/request-transform-pipeline.js +24 -0
  59. package/dist/lib/codex-native/request-transform-pipeline.js.map +1 -0
  60. package/dist/lib/codex-native/request-transform.d.ts +18 -4
  61. package/dist/lib/codex-native/request-transform.d.ts.map +1 -1
  62. package/dist/lib/codex-native/request-transform.js +227 -25
  63. package/dist/lib/codex-native/request-transform.js.map +1 -1
  64. package/dist/lib/codex-native/session-affinity-state.d.ts +15 -0
  65. package/dist/lib/codex-native/session-affinity-state.d.ts.map +1 -0
  66. package/dist/lib/codex-native/session-affinity-state.js +49 -0
  67. package/dist/lib/codex-native/session-affinity-state.js.map +1 -0
  68. package/dist/lib/codex-native/session-messages.d.ts +8 -0
  69. package/dist/lib/codex-native/session-messages.d.ts.map +1 -0
  70. package/dist/lib/codex-native/session-messages.js +55 -0
  71. package/dist/lib/codex-native/session-messages.js.map +1 -0
  72. package/dist/lib/codex-native.d.ts +8 -34
  73. package/dist/lib/codex-native.d.ts.map +1 -1
  74. package/dist/lib/codex-native.js +130 -1662
  75. package/dist/lib/codex-native.js.map +1 -1
  76. package/dist/lib/codex-status-tool.d.ts.map +1 -1
  77. package/dist/lib/codex-status-tool.js.map +1 -1
  78. package/dist/lib/codex-status-ui.d.ts.map +1 -1
  79. package/dist/lib/codex-status-ui.js +6 -2
  80. package/dist/lib/codex-status-ui.js.map +1 -1
  81. package/dist/lib/config.d.ts +17 -12
  82. package/dist/lib/config.d.ts.map +1 -1
  83. package/dist/lib/config.js +143 -157
  84. package/dist/lib/config.js.map +1 -1
  85. package/dist/lib/installer-cli.d.ts.map +1 -1
  86. package/dist/lib/installer-cli.js +22 -58
  87. package/dist/lib/installer-cli.js.map +1 -1
  88. package/dist/lib/model-catalog.d.ts +1 -0
  89. package/dist/lib/model-catalog.d.ts.map +1 -1
  90. package/dist/lib/model-catalog.js +214 -9
  91. package/dist/lib/model-catalog.js.map +1 -1
  92. package/dist/lib/request-snapshots.d.ts +2 -0
  93. package/dist/lib/request-snapshots.d.ts.map +1 -1
  94. package/dist/lib/request-snapshots.js +48 -1
  95. package/dist/lib/request-snapshots.js.map +1 -1
  96. package/dist/lib/rotation.d.ts.map +1 -1
  97. package/dist/lib/rotation.js +3 -0
  98. package/dist/lib/rotation.js.map +1 -1
  99. package/package.json +3 -2
  100. package/schemas/codex-config.schema.json +19 -44
  101. package/dist/lib/codex-native/collaboration.d.ts +0 -19
  102. package/dist/lib/codex-native/collaboration.d.ts.map +0 -1
  103. package/dist/lib/codex-native/collaboration.js +0 -126
  104. package/dist/lib/codex-native/collaboration.js.map +0 -1
  105. package/dist/lib/orchestrator-agents.d.ts +0 -29
  106. package/dist/lib/orchestrator-agents.d.ts.map +0 -1
  107. package/dist/lib/orchestrator-agents.js +0 -212
  108. package/dist/lib/orchestrator-agents.js.map +0 -1
package/README.md CHANGED
@@ -3,70 +3,116 @@
3
3
  [![CI](https://github.com/iam-brain/opencode-codex-auth/actions/workflows/ci.yml/badge.svg)](https://github.com/iam-brain/opencode-codex-auth/actions/workflows/ci.yml)
4
4
  [![npm version](https://img.shields.io/npm/v/%40iam-brain%2Fopencode-codex-auth.svg)](https://www.npmjs.com/package/@iam-brain/opencode-codex-auth)
5
5
 
6
- OpenCode plugin that authenticates OpenAI provider traffic with ChatGPT OAuth and routes requests through Codex backend endpoints.
6
+ OpenCode plugin for OpenAI ChatGPT OAuth with multi-account management, Codex-compatible request modes, and dynamic model behavior controls.
7
7
 
8
- Quick links: [Getting Started](docs/getting-started.md) · [Configuration](docs/configuration.md) · [Accounts and Rotation](docs/accounts-and-rotation.md) · [Troubleshooting](docs/troubleshooting.md)
8
+ Quick links: `docs/getting-started.md` · `docs/configuration.md` · `docs/multi-account.md` · `docs/troubleshooting.md`
9
+
10
+ ## Why this plugin
11
+
12
+ - Uses ChatGPT OAuth instead of API keys for OpenAI provider flows.
13
+ - Keeps account rotation state in a plugin-owned store (`codex-accounts.json`).
14
+ - Supports `native` and `codex` runtime modes.
15
+ - Adds account-manager UX to `opencode auth login` (quotas, toggles, scoped deletes, transfer).
9
16
 
10
17
  ## Quick start
11
18
 
12
- Install and register the plugin:
19
+ Install and register the plugin (recommended):
13
20
 
14
21
  ```bash
15
22
  npx -y @iam-brain/opencode-codex-auth
16
23
  ```
17
24
 
18
- Authenticate:
25
+ Then authenticate:
19
26
 
20
27
  ```bash
21
28
  opencode auth login
22
29
  ```
23
30
 
24
- Run one request:
31
+ Use an OpenAI model through OpenCode:
25
32
 
26
33
  ```bash
27
- opencode run "say hi" --model=openai/gpt-5.3-codex
34
+ opencode run "say hi" --model=openai/gpt-5
28
35
  ```
29
36
 
30
- If `openai/gpt-5.3-codex` is not available on your account, use another available `openai/*` model.
37
+ If that model is unavailable on your account, use any available `openai/*` model.
38
+
39
+ ## Usage notice
40
+
41
+ This plugin is intended for personal development use with your own ChatGPT account. For production multi-user systems, use the OpenAI Platform API.
42
+
43
+ ## Install behavior
31
44
 
32
- ## What the installer changes
45
+ By default, `npx -y @iam-brain/opencode-codex-auth` runs the installer.
33
46
 
34
- `npx -y @iam-brain/opencode-codex-auth` runs `install` by default (`bin/opencode-codex-auth.ts`, `lib/installer-cli.ts`).
47
+ The installer does two things:
35
48
 
36
- Installer actions:
49
+ 1. Ensures `@iam-brain/opencode-codex-auth@latest` is present in `~/.config/opencode/opencode.json`.
50
+ 2. Creates `~/.config/opencode/codex-config.json` with defaults when missing.
51
+ 3. Synchronizes `~/.config/opencode/commands/create-personality.md` for `/create-personality` (created/updated as needed).
52
+ 4. Synchronizes `~/.config/opencode/skills/personality-builder/SKILL.md` (plus references) for skill-driven personality workflows.
37
53
 
38
- 1. Ensures `@iam-brain/opencode-codex-auth@latest` exists in `~/.config/opencode/opencode.json` (`lib/opencode-install.ts`).
39
- 2. Creates `~/.config/opencode/codex-config.json` if missing (`lib/config.ts`).
40
- 3. Synchronizes `/create-personality` command template (`lib/personality-command.ts`).
41
- 4. Synchronizes `personality-builder` skill files (`lib/personality-skill.ts`).
54
+ At plugin startup, managed templates are synchronized to the latest version:
42
55
 
43
- Re-run installer safely:
56
+ - `/create-personality` command template
57
+ - `personality-builder` skill bundle
58
+
59
+ Re-run installer (idempotent):
44
60
 
45
61
  ```bash
46
62
  npx -y @iam-brain/opencode-codex-auth install
47
63
  ```
48
64
 
65
+ ## Config split
66
+
67
+ Keep `opencode.json` minimal (plugin enablement only). Put runtime behavior in:
68
+
69
+ - `~/.config/opencode/codex-config.json`
70
+
71
+ Canonical config/env docs (complete key + variable reference) are in `docs/configuration.md`.
72
+
73
+ Schemas for user-edited JSON files are in:
74
+
75
+ - `schemas/codex-config.schema.json`
76
+ - `schemas/opencode.schema.json`
77
+ - `schemas/codex-accounts.schema.json` (advanced/manual recovery)
78
+
79
+ Personality files live in lowercase directories:
80
+
81
+ - project-local: `.opencode/personalities/`
82
+ - global: `~/.config/opencode/personalities/`
83
+
84
+ Create guided custom personalities with:
85
+
86
+ ```bash
87
+ /create-personality
88
+ ```
89
+
49
90
  ## Runtime modes
50
91
 
51
- - `native` (default): native OpenCode-style identity/header path.
52
- - `codex`: codex-style identity/header path.
92
+ - `native`: native-plugin style identity/headers.
93
+ - `codex`: codex-rs style identity/headers.
94
+
95
+ ## Account storage
53
96
 
54
- Mode behavior source of truth: `lib/config.ts` and `lib/codex-native.ts`.
97
+ - Provider auth marker: `~/.local/share/opencode/auth.json`
98
+ - Plugin multi-account store: `~/.config/opencode/codex-accounts.json`
99
+ - Session affinity cache: `~/.config/opencode/cache/codex-session-affinity.json`
100
+ - Quota snapshot cache: `~/.config/opencode/cache/codex-snapshots.json`
55
101
 
56
- ## Storage files
102
+ Legacy sources can be imported explicitly from the auth menu:
57
103
 
58
- - Plugin account store: `~/.config/opencode/codex-accounts.json` (`lib/storage.ts`).
59
- - Plugin config: `~/.config/opencode/codex-config.json` (`lib/config.ts`).
60
- - Session affinity cache: `~/.config/opencode/cache/codex-session-affinity.json` (`lib/session-affinity.ts`).
61
- - Quota snapshot cache: `~/.config/opencode/cache/codex-snapshots.json` (`lib/codex-status-storage.ts`).
62
- - OpenCode provider marker: `~/.local/share/opencode/auth.json` (read for transfer checks in `lib/storage.ts`).
104
+ - `~/.config/opencode/openai-codex-accounts.json`
105
+ - `~/.local/share/opencode/auth.json`
63
106
 
64
107
  ## Documentation
65
108
 
66
- - Docs index: `docs/README.md`
67
- - User docs: `docs/getting-started.md`, `docs/configuration.md`, `docs/accounts-and-rotation.md`, `docs/troubleshooting.md`, `docs/privacy-and-data-handling.md`
68
- - Maintainer docs: `docs/maintainers/releasing.md`, `docs/maintainers/documentation-standards.md`
69
- - Development internals: `docs/development/`
109
+ - Docs portal: `docs/README.md`
110
+ - Getting started: `docs/getting-started.md`
111
+ - Configuration: `docs/configuration.md`
112
+ - Compaction: `docs/compaction.md`
113
+ - Multi-account: `docs/multi-account.md`
114
+ - Troubleshooting: `docs/troubleshooting.md`
115
+ - Development docs: `docs/development/`
70
116
 
71
117
  ## Development
72
118
 
@@ -74,7 +120,3 @@ Mode behavior source of truth: `lib/config.ts` and `lib/codex-native.ts`.
74
120
  npm install
75
121
  npm run verify
76
122
  ```
77
-
78
- ## Usage notice
79
-
80
- This plugin is intended for personal development use with your own ChatGPT account. For production multi-user systems, use the OpenAI Platform API.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAyCjD,eAAO,MAAM,qBAAqB,EAAE,MA6LnC,CAAA;AAED,eAAe,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AA0CjD,eAAO,MAAM,qBAAqB,EAAE,MA+KnC,CAAA;AAED,eAAe,qBAAqB,CAAA"}
package/dist/index.js CHANGED
@@ -1,9 +1,8 @@
1
1
  import { tool } from "@opencode-ai/plugin";
2
2
  import { listAccountsForTools, removeAccountByIndex, switchAccountByIndex, toggleAccountEnabledByIndex } from "./lib/accounts-tools";
3
3
  import { CodexAuthPlugin, refreshAccessToken } from "./lib/codex-native";
4
- import { ensureDefaultConfigFile, getCompatInputSanitizerEnabled, getCustomSettings, getDebugEnabled, getHeaderTransformDebugEnabled, getHeaderSnapshotsEnabled, getMode, getRotationStrategy, getPidOffsetEnabled, getPersonality, getProactiveRefreshBufferMs, getProactiveRefreshEnabled, getSpoofMode, getQuietMode, loadConfigFile, resolveConfig } from "./lib/config";
4
+ import { ensureDefaultConfigFile, getCompatInputSanitizerEnabled, getCodexCompactionOverrideEnabled, getBehaviorSettings, getDebugEnabled, getHeaderTransformDebugEnabled, getHeaderSnapshotsEnabled, getMode, getRemapDeveloperMessagesToUserEnabled, getRotationStrategy, getPidOffsetEnabled, getPersonality, getProactiveRefreshBufferMs, getProactiveRefreshEnabled, getSpoofMode, getQuietMode, loadConfigFile, resolveConfig } from "./lib/config";
5
5
  import { createLogger } from "./lib/logger";
6
- import { reconcileOrchestratorAgentsState } from "./lib/orchestrator-agents";
7
6
  import { generatePersonaSpec } from "./lib/persona-tool";
8
7
  import { createPersonalityFile } from "./lib/personality-create";
9
8
  import { installCreatePersonalityCommand } from "./lib/personality-command";
@@ -27,22 +26,6 @@ export const OpenAIMultiAuthPlugin = async (input) => {
27
26
  });
28
27
  const runtimeMode = getMode(cfg);
29
28
  const log = createLogger({ debug: getDebugEnabled(cfg) });
30
- try {
31
- const reconcile = await reconcileOrchestratorAgentsState({
32
- enabled: runtimeMode === "collab"
33
- });
34
- if (reconcile.renamed.length > 0) {
35
- log.debug("orchestrator agent state reconciled", {
36
- enabled: reconcile.enabled,
37
- renamed: reconcile.renamed.length
38
- });
39
- }
40
- }
41
- catch (error) {
42
- log.debug("orchestrator agent state reconcile failed", {
43
- error: error instanceof Error ? error.message : String(error)
44
- });
45
- }
46
29
  if (getProactiveRefreshEnabled(cfg)) {
47
30
  const bufferMs = getProactiveRefreshBufferMs(cfg);
48
31
  const timer = setInterval(() => {
@@ -71,9 +54,11 @@ export const OpenAIMultiAuthPlugin = async (input) => {
71
54
  rotationStrategy: getRotationStrategy(cfg),
72
55
  spoofMode: getSpoofMode(cfg),
73
56
  compatInputSanitizer: getCompatInputSanitizerEnabled(cfg),
57
+ remapDeveloperMessagesToUser: getRemapDeveloperMessagesToUserEnabled(cfg),
58
+ codexCompactionOverride: getCodexCompactionOverrideEnabled(cfg),
74
59
  headerSnapshots: getHeaderSnapshotsEnabled(cfg),
75
60
  headerTransformDebug: getHeaderTransformDebugEnabled(cfg),
76
- customSettings: getCustomSettings(cfg)
61
+ behaviorSettings: getBehaviorSettings(cfg)
77
62
  });
78
63
  const z = tool.schema;
79
64
  hooks.tool = {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { AccountAuthType, AccountRecord, OpenAIAuthMode, OpenAIOAuthDomain } from "../types";
2
+ import type { AccountInfo, DeleteScope } from "../ui/auth-menu";
3
+ export declare function normalizeAccountAuthTypes(input: unknown): AccountAuthType[];
4
+ export declare function mergeAccountAuthTypes(existing: unknown, incoming: unknown): AccountAuthType[];
5
+ export declare function removeAccountAuthType(existing: unknown, scope: Exclude<DeleteScope, "both">): AccountAuthType[];
6
+ export declare function upsertAccount(openai: OpenAIOAuthDomain, incoming: AccountRecord): AccountRecord;
7
+ export declare function formatAccountLabel(account: {
8
+ email?: string;
9
+ plan?: string;
10
+ accountId?: string;
11
+ } | undefined, index: number): string;
12
+ export declare function ensureAccountAuthTypes(account: AccountRecord): AccountAuthType[];
13
+ export declare function reconcileActiveIdentityKey(openai: OpenAIOAuthDomain): void;
14
+ export declare function findDomainAccountIndex(domain: OpenAIOAuthDomain, account: AccountInfo): number;
15
+ export declare function buildAuthMenuAccounts(input: {
16
+ native?: OpenAIOAuthDomain;
17
+ codex?: OpenAIOAuthDomain;
18
+ activeMode: OpenAIAuthMode;
19
+ }): AccountInfo[];
20
+ export declare function hydrateAccountIdentityFromAccessClaims(account: AccountRecord): void;
21
+ //# sourceMappingURL=accounts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/accounts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAI/D,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,EAAE,CAe3E;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,eAAe,EAAE,CAG7F;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,eAAe,EAAE,CAE/G;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,aAAa,GAAG,aAAa,CAyD/F;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,EAC1E,KAAK,EAAE,MAAM,GACZ,MAAM,CAUR;AAQD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,aAAa,GAAG,eAAe,EAAE,CAIhF;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAU1E;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,GAAG,MAAM,CAW9F;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,KAAK,CAAC,EAAE,iBAAiB,CAAA;IACzB,UAAU,EAAE,cAAc,CAAA;CAC3B,GAAG,WAAW,EAAE,CAoEhB;AAED,wBAAgB,sCAAsC,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAWnF"}
@@ -0,0 +1,203 @@
1
+ import { extractAccountIdFromClaims, extractEmailFromClaims, extractPlanFromClaims, parseJwtClaims } from "../claims";
2
+ import { buildIdentityKey, normalizeEmail, normalizePlan, synchronizeIdentityKey } from "../identity";
3
+ const ACCOUNT_AUTH_TYPE_ORDER = ["native", "codex"];
4
+ export function normalizeAccountAuthTypes(input) {
5
+ const source = Array.isArray(input) ? input : ["native"];
6
+ const seen = new Set();
7
+ const out = [];
8
+ for (const rawType of source) {
9
+ const type = rawType === "codex" ? "codex" : rawType === "native" ? "native" : undefined;
10
+ if (!type || seen.has(type))
11
+ continue;
12
+ seen.add(type);
13
+ out.push(type);
14
+ }
15
+ if (out.length === 0)
16
+ out.push("native");
17
+ out.sort((a, b) => ACCOUNT_AUTH_TYPE_ORDER.indexOf(a) - ACCOUNT_AUTH_TYPE_ORDER.indexOf(b));
18
+ return out;
19
+ }
20
+ export function mergeAccountAuthTypes(existing, incoming) {
21
+ const merged = [...normalizeAccountAuthTypes(existing), ...normalizeAccountAuthTypes(incoming)];
22
+ return normalizeAccountAuthTypes(merged);
23
+ }
24
+ export function removeAccountAuthType(existing, scope) {
25
+ return normalizeAccountAuthTypes(existing).filter((type) => type !== scope);
26
+ }
27
+ export function upsertAccount(openai, incoming) {
28
+ const normalizedEmail = normalizeEmail(incoming.email);
29
+ const normalizedPlan = normalizePlan(incoming.plan);
30
+ const normalizedAccountId = incoming.accountId?.trim();
31
+ const strictIdentityKey = buildIdentityKey({
32
+ accountId: normalizedAccountId,
33
+ email: normalizedEmail,
34
+ plan: normalizedPlan
35
+ });
36
+ const strictMatch = strictIdentityKey
37
+ ? openai.accounts.find((existing) => {
38
+ const existingAccountId = existing.accountId?.trim();
39
+ const existingEmail = normalizeEmail(existing.email);
40
+ const existingPlan = normalizePlan(existing.plan);
41
+ return (existingAccountId === normalizedAccountId &&
42
+ existingEmail === normalizedEmail &&
43
+ existingPlan === normalizedPlan);
44
+ })
45
+ : undefined;
46
+ const refreshFallbackMatch = strictMatch || !incoming.refresh
47
+ ? undefined
48
+ : openai.accounts.find((existing) => existing.refresh === incoming.refresh);
49
+ const match = strictMatch ?? refreshFallbackMatch;
50
+ const matchedByRefreshFallback = refreshFallbackMatch !== undefined && strictMatch === undefined;
51
+ const requiresInsert = matchedByRefreshFallback &&
52
+ strictIdentityKey !== undefined &&
53
+ match?.identityKey !== undefined &&
54
+ match.identityKey !== strictIdentityKey;
55
+ const target = !match || requiresInsert ? {} : match;
56
+ if (!match || requiresInsert) {
57
+ openai.accounts.push(target);
58
+ }
59
+ if (!matchedByRefreshFallback || requiresInsert) {
60
+ if (normalizedAccountId)
61
+ target.accountId = normalizedAccountId;
62
+ if (normalizedEmail)
63
+ target.email = normalizedEmail;
64
+ if (normalizedPlan)
65
+ target.plan = normalizedPlan;
66
+ }
67
+ if (incoming.enabled !== undefined)
68
+ target.enabled = incoming.enabled;
69
+ if (incoming.refresh)
70
+ target.refresh = incoming.refresh;
71
+ if (incoming.access)
72
+ target.access = incoming.access;
73
+ if (incoming.expires !== undefined)
74
+ target.expires = incoming.expires;
75
+ if (incoming.lastUsed !== undefined)
76
+ target.lastUsed = incoming.lastUsed;
77
+ target.authTypes = normalizeAccountAuthTypes(incoming.authTypes ?? match?.authTypes);
78
+ synchronizeIdentityKey(target);
79
+ if (!target.identityKey && strictIdentityKey)
80
+ target.identityKey = strictIdentityKey;
81
+ return target;
82
+ }
83
+ export function formatAccountLabel(account, index) {
84
+ const email = account?.email?.trim();
85
+ const plan = account?.plan?.trim();
86
+ const accountId = account?.accountId?.trim();
87
+ const idSuffix = accountId ? (accountId.length > 6 ? accountId.slice(-6) : accountId) : null;
88
+ if (email && plan)
89
+ return `${email} (${plan})`;
90
+ if (email)
91
+ return email;
92
+ if (idSuffix)
93
+ return `id:${idSuffix}`;
94
+ return `Account ${index + 1}`;
95
+ }
96
+ function hasActiveCooldown(account, now) {
97
+ return (typeof account.cooldownUntil === "number" && Number.isFinite(account.cooldownUntil) && account.cooldownUntil > now);
98
+ }
99
+ export function ensureAccountAuthTypes(account) {
100
+ const normalized = normalizeAccountAuthTypes(account.authTypes);
101
+ account.authTypes = normalized;
102
+ return normalized;
103
+ }
104
+ export function reconcileActiveIdentityKey(openai) {
105
+ if (openai.activeIdentityKey &&
106
+ openai.accounts.some((account) => account.identityKey === openai.activeIdentityKey && account.enabled !== false)) {
107
+ return;
108
+ }
109
+ const fallback = openai.accounts.find((account) => account.enabled !== false && account.identityKey);
110
+ openai.activeIdentityKey = fallback?.identityKey;
111
+ }
112
+ export function findDomainAccountIndex(domain, account) {
113
+ if (account.identityKey) {
114
+ const byIdentity = domain.accounts.findIndex((entry) => entry.identityKey === account.identityKey);
115
+ if (byIdentity >= 0)
116
+ return byIdentity;
117
+ }
118
+ return domain.accounts.findIndex((entry) => {
119
+ const sameId = (entry.accountId?.trim() ?? "") === (account.accountId?.trim() ?? "");
120
+ const sameEmail = normalizeEmail(entry.email) === normalizeEmail(account.email);
121
+ const samePlan = normalizePlan(entry.plan) === normalizePlan(account.plan);
122
+ return sameId && sameEmail && samePlan;
123
+ });
124
+ }
125
+ export function buildAuthMenuAccounts(input) {
126
+ const now = Date.now();
127
+ const rows = new Map();
128
+ const mergeFromDomain = (authMode, domain) => {
129
+ if (!domain)
130
+ return;
131
+ for (const account of domain.accounts) {
132
+ ensureAccountAuthTypes(account);
133
+ const identity = account.identityKey ??
134
+ buildIdentityKey({
135
+ accountId: account.accountId,
136
+ email: normalizeEmail(account.email),
137
+ plan: normalizePlan(account.plan)
138
+ }) ??
139
+ `${authMode}:${account.accountId ?? account.email ?? account.plan ?? "unknown"}`;
140
+ const existing = rows.get(identity);
141
+ const currentStatus = hasActiveCooldown(account, now)
142
+ ? "rate-limited"
143
+ : typeof account.expires === "number" && Number.isFinite(account.expires) && account.expires <= now
144
+ ? "expired"
145
+ : "unknown";
146
+ if (!existing) {
147
+ const isCurrentAccount = authMode === input.activeMode &&
148
+ Boolean(domain.activeIdentityKey && account.identityKey === domain.activeIdentityKey);
149
+ rows.set(identity, {
150
+ identityKey: account.identityKey,
151
+ index: rows.size,
152
+ accountId: account.accountId,
153
+ email: account.email,
154
+ plan: account.plan,
155
+ authTypes: [authMode],
156
+ lastUsed: account.lastUsed,
157
+ enabled: account.enabled,
158
+ status: isCurrentAccount ? "active" : currentStatus,
159
+ isCurrentAccount
160
+ });
161
+ continue;
162
+ }
163
+ existing.authTypes = normalizeAccountAuthTypes([...(existing.authTypes ?? []), authMode]);
164
+ if (typeof account.lastUsed === "number" && (!existing.lastUsed || account.lastUsed > existing.lastUsed)) {
165
+ existing.lastUsed = account.lastUsed;
166
+ }
167
+ if (existing.enabled === false && account.enabled !== false) {
168
+ existing.enabled = true;
169
+ }
170
+ if (existing.status !== "rate-limited" && currentStatus === "rate-limited") {
171
+ existing.status = "rate-limited";
172
+ }
173
+ else if (existing.status !== "rate-limited" && existing.status !== "expired" && currentStatus === "expired") {
174
+ existing.status = "expired";
175
+ }
176
+ const isCurrentAccount = authMode === input.activeMode &&
177
+ Boolean(domain.activeIdentityKey && account.identityKey === domain.activeIdentityKey);
178
+ if (isCurrentAccount) {
179
+ existing.isCurrentAccount = true;
180
+ existing.status = "active";
181
+ }
182
+ }
183
+ };
184
+ mergeFromDomain("native", input.native);
185
+ mergeFromDomain("codex", input.codex);
186
+ return Array.from(rows.values()).map((row, index) => ({ ...row, index }));
187
+ }
188
+ export function hydrateAccountIdentityFromAccessClaims(account) {
189
+ const claims = typeof account.access === "string" && account.access.length > 0 ? parseJwtClaims(account.access) : undefined;
190
+ if (!account.accountId)
191
+ account.accountId = extractAccountIdFromClaims(claims);
192
+ if (!account.email)
193
+ account.email = extractEmailFromClaims(claims);
194
+ if (!account.plan)
195
+ account.plan = extractPlanFromClaims(claims);
196
+ account.email = normalizeEmail(account.email);
197
+ account.plan = normalizePlan(account.plan);
198
+ if (account.accountId)
199
+ account.accountId = account.accountId.trim();
200
+ ensureAccountAuthTypes(account);
201
+ synchronizeIdentityKey(account);
202
+ }
203
+ //# sourceMappingURL=accounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../lib/codex-native/accounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { AuthData, FetchOrchestratorAuthContext } from "../fetch-orchestrator";
2
+ import type { Logger } from "../logger";
3
+ import { type StickySessionState } from "../rotation";
4
+ import type { OpenAIAuthMode, RotationStrategy } from "../types";
5
+ export type AcquireOpenAIAuthInput = {
6
+ authMode: OpenAIAuthMode;
7
+ context?: FetchOrchestratorAuthContext;
8
+ isSubagentRequest: boolean;
9
+ stickySessionState: StickySessionState;
10
+ hybridSessionState: StickySessionState;
11
+ seenSessionKeys: Map<string, number>;
12
+ persistSessionAffinityState: () => void;
13
+ pidOffsetEnabled: boolean;
14
+ configuredRotationStrategy?: RotationStrategy;
15
+ log?: Logger;
16
+ };
17
+ export declare function createAcquireOpenAIAuthInputDefaults(): {
18
+ stickySessionState: StickySessionState;
19
+ hybridSessionState: StickySessionState;
20
+ };
21
+ export declare function acquireOpenAIAuth(input: AcquireOpenAIAuthInput): Promise<AuthData>;
22
+ //# sourceMappingURL=acquire-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acquire-auth.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/acquire-auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAA;AAGnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAA2C,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAE9F,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAiBhE,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,cAAc,CAAA;IACxB,OAAO,CAAC,EAAE,4BAA4B,CAAA;IACtC,iBAAiB,EAAE,OAAO,CAAA;IAC1B,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,2BAA2B,EAAE,MAAM,IAAI,CAAA;IACvC,gBAAgB,EAAE,OAAO,CAAA;IACzB,0BAA0B,CAAC,EAAE,gBAAgB,CAAA;IAC7C,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAgB,oCAAoC,IAAI;IACtD,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,kBAAkB,EAAE,kBAAkB,CAAA;CACvC,CAKA;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC,CA6VxF"}