@eddyskywalker/dsh-chatgpt-subscription 0.13.2 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/README.md +75 -8
- package/lib/client.js +183 -115
- package/lib/client.js.map +1 -1
- package/lib/index.js +648 -58
- package/lib/types/client/CodexSubscriptionSection.d.ts +1 -1
- package/lib/types/client/CodexSubscriptionSection.d.ts.map +1 -1
- package/lib/types/client/ProviderHubSection.d.ts.map +1 -1
- package/lib/types/client/api.d.ts +12 -0
- package/lib/types/client/api.d.ts.map +1 -1
- package/lib/types/client/claude/ClaudeSection.d.ts.map +1 -1
- package/lib/types/client/claude/locales.d.ts +2 -11
- package/lib/types/client/claude/locales.d.ts.map +1 -1
- package/lib/types/client/locales.d.ts +13 -1
- package/lib/types/client/locales.d.ts.map +1 -1
- package/lib/types/host/claude/model-catalog.d.ts +42 -20
- package/lib/types/host/claude/model-catalog.d.ts.map +1 -1
- package/lib/types/host/claude/types.d.ts +7 -2
- package/lib/types/host/claude/types.d.ts.map +1 -1
- package/lib/types/host/codex-account-pool.d.ts +129 -1
- package/lib/types/host/codex-account-pool.d.ts.map +1 -1
- package/lib/types/host/codex-adopt.d.ts +255 -0
- package/lib/types/host/codex-adopt.d.ts.map +1 -0
- package/lib/types/host/routes.d.ts +11 -1
- package/lib/types/host/routes.d.ts.map +1 -1
- package/lib/types/host/token-store.d.ts +26 -1
- package/lib/types/host/token-store.d.ts.map +1 -1
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/shared/contracts.d.ts +22 -0
- package/lib/types/shared/contracts.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OPT-IN adoption of a pre-existing Codex CLI sign-in.
|
|
3
|
+
*
|
|
4
|
+
* WHAT THIS IS FOR. A user who already runs the unmodified Codex CLI is already
|
|
5
|
+
* signed in to the very subscription this provider serves. Asking them to sign in
|
|
6
|
+
* a second time is pure friction, so this module offers the one thing that
|
|
7
|
+
* removes it: reading back the credential the CLI itself stored in
|
|
8
|
+
* `$CODEX_HOME/auth.json` (`~/.codex/auth.json` when the variable is unset). It
|
|
9
|
+
* is opt-in — nothing here runs until the user asks for it.
|
|
10
|
+
*
|
|
11
|
+
* ---------------------------------------------------------------------------
|
|
12
|
+
* RULE 1 — THIS MODULE NEVER WRITES. IT IS A READER, AND ONLY A READER.
|
|
13
|
+
* ---------------------------------------------------------------------------
|
|
14
|
+
* It must not create, modify, move or delete any file belonging to the Codex CLI.
|
|
15
|
+
* No file this module touches is ever opened for writing, no directory is
|
|
16
|
+
* created, nothing is renamed and nothing is unlinked. The guarantee is
|
|
17
|
+
* structural rather than a promise in prose: the module imports exactly two
|
|
18
|
+
* functions BY NAME from 'node:fs/promises' — readFile and stat — instead of the
|
|
19
|
+
* whole namespace, so introducing a write would require a visible change to the
|
|
20
|
+
* import list, which is the line a reviewer reads first. Nothing exported here
|
|
21
|
+
* writes. The tests assert the stronger, observable form of the rule: a
|
|
22
|
+
* credential file's bytes, size and mtime are identical before and after both
|
|
23
|
+
* entry points run, and its directory gains no entries.
|
|
24
|
+
*
|
|
25
|
+
* ---------------------------------------------------------------------------
|
|
26
|
+
* RULE 2 — PRESENCE AND CONTENT ARE TWO SEPARATE FUNCTIONS
|
|
27
|
+
* ---------------------------------------------------------------------------
|
|
28
|
+
* codexCliCredentialPresence() is cheap enough to call on plugin startup and
|
|
29
|
+
* answers only yes/no: it stats the candidate and never opens it for reading. It
|
|
30
|
+
* exists so the settings card can offer the import before the user has agreed to
|
|
31
|
+
* it, and so a user who never opts in never has their token read at all.
|
|
32
|
+
*
|
|
33
|
+
* readCodexCliCredentials() is the full read, and it is called only AFTER the
|
|
34
|
+
* user explicitly opts in. Keeping the two apart is the whole point: a startup
|
|
35
|
+
* path that slurped the file "just in case" would make the opt-in decorative.
|
|
36
|
+
*
|
|
37
|
+
* ---------------------------------------------------------------------------
|
|
38
|
+
* RULE 3 — AN ADOPTED CREDENTIAL IS A SNAPSHOT, AND THIS PLUGIN NEVER REFRESHES IT
|
|
39
|
+
* ---------------------------------------------------------------------------
|
|
40
|
+
* An adopted credential is used only while its own accessToken is still valid.
|
|
41
|
+
* Once it is expired the pool reports it as expired and tells the user to sign in
|
|
42
|
+
* again in the Codex CLI and re-adopt. That is deliberate, not a gap: the
|
|
43
|
+
* ChatGPT refresh token the CLI stores ROTATES, and the CLI refreshes its own
|
|
44
|
+
* file in place. Two processes refreshing the same grant therefore invalidate
|
|
45
|
+
* each other — whoever loses the race holds a token the server has already
|
|
46
|
+
* retired, and the user ends up signed OUT of the Codex CLI by this plugin's good
|
|
47
|
+
* intentions. An in-process single-flight cannot fix that, because the race is
|
|
48
|
+
* across PROCESSES: this plugin and the CLI are separate programs with separate
|
|
49
|
+
* memories, and the only shared state between them is the file — which this
|
|
50
|
+
* module must not write back into (Rule 1).
|
|
51
|
+
*
|
|
52
|
+
* So the honest contract is: borrow the access token for as long as the CLI itself
|
|
53
|
+
* vouched for it, and never touch the refresh token. Expiry is therefore part of
|
|
54
|
+
* the adoption decision rather than a detail — see
|
|
55
|
+
* {@link isAdoptedCodexCredentialExpired}.
|
|
56
|
+
*
|
|
57
|
+
* The marker the pool chunk must honour is the literal 'adopted: true' plus
|
|
58
|
+
* {@link isAdoptedCodexCredential}; an account carrying it must be treated as
|
|
59
|
+
* read-only, non-refreshable and disposable. There is deliberately no refresh
|
|
60
|
+
* function in this module to find in the first place.
|
|
61
|
+
*
|
|
62
|
+
* ---------------------------------------------------------------------------
|
|
63
|
+
* RULE 4 — AN UNRECOGNISED SHAPE YIELDS undefined, NEVER AN EXCEPTION
|
|
64
|
+
* ---------------------------------------------------------------------------
|
|
65
|
+
* The card shows 'unrecognised local sign-in format' for undefined, which is a far
|
|
66
|
+
* better outcome than a thrown error escaping into the settings route. Nothing is
|
|
67
|
+
* guessed: a document in another auth_mode, a missing or non-object tokens
|
|
68
|
+
* block, a missing access or refresh token, an access token that is not a JWT
|
|
69
|
+
* with a usable 'exp', an unreadable or unparsable file — all of them are
|
|
70
|
+
* undefined. Extra and unknown fields are ignored rather than rejected, so a
|
|
71
|
+
* future CLI that adds one does not break adoption.
|
|
72
|
+
*
|
|
73
|
+
* THE TRAP THIS PARSER EXISTS TO AVOID. A Codex auth.json is NOT a flat bag of
|
|
74
|
+
* tokens. It is a document that may carry an API key alongside the OAuth tokens,
|
|
75
|
+
* and a "find the first accessToken anywhere in the JSON" scan would pick
|
|
76
|
+
* whichever one the serializer happened to emit first — which is how an API key
|
|
77
|
+
* or an unrelated token ends up presented to the Responses API as the user's
|
|
78
|
+
* subscription credential. The read is therefore a direct, specific lookup of
|
|
79
|
+
* tokens.access_token and its siblings — never a tree walk — and the test suite
|
|
80
|
+
* holds a fixture carrying an unrelated token beside the real one and asserts
|
|
81
|
+
* which comes back.
|
|
82
|
+
*
|
|
83
|
+
* ---------------------------------------------------------------------------
|
|
84
|
+
* THE CLAIMS ARE DERIVED LOCALLY, NEVER ASKED OF ANYBODY
|
|
85
|
+
* ---------------------------------------------------------------------------
|
|
86
|
+
* expiresAt comes from the access token's own 'exp' claim, email and planType
|
|
87
|
+
* from the id token's claims. The JWT payload is decoded in process; no token is
|
|
88
|
+
* ever sent anywhere to be inspected, and no token value is logged or returned
|
|
89
|
+
* from anything but the credential object the caller asked for.
|
|
90
|
+
*
|
|
91
|
+
* WHY EXPIRY IS REFUSED RATHER THAN DEFAULTED. A snapshot whose validity cannot
|
|
92
|
+
* be established must not be used. Rather than stamping "now" or "never" and
|
|
93
|
+
* hoping, this module yields undefined: the card then says the local sign-in
|
|
94
|
+
* format is unrecognised, which is true, instead of importing a credential that
|
|
95
|
+
* would 401 on the first request.
|
|
96
|
+
*/
|
|
97
|
+
import type { StoredOAuthCredentials } from './token-store.ts';
|
|
98
|
+
/**
|
|
99
|
+
* Environment variable that relocates the Codex CLI's home directory.
|
|
100
|
+
*
|
|
101
|
+
* Highest precedence, and honoured exactly as the CLI honours it: when it is set
|
|
102
|
+
* to a non-blank value it names the home that holds auth.json, whatever the
|
|
103
|
+
* platform's conventional location happens to be. This is also what makes the
|
|
104
|
+
* whole module testable without touching a developer's real profile.
|
|
105
|
+
*/
|
|
106
|
+
export declare const CODEX_HOME_ENV = "CODEX_HOME";
|
|
107
|
+
/** File name of the credential document inside the Codex home. */
|
|
108
|
+
export declare const CODEX_CLI_CREDENTIAL_FILE = "auth.json";
|
|
109
|
+
/**
|
|
110
|
+
* Top-level key holding the OAuth tokens.
|
|
111
|
+
*
|
|
112
|
+
* Named as a constant because the specificity of this key IS the defence
|
|
113
|
+
* described in the module comment: the read addresses this key, not the first
|
|
114
|
+
* token it can find anywhere in the document.
|
|
115
|
+
*/
|
|
116
|
+
export declare const CODEX_CLI_TOKENS_KEY = "tokens";
|
|
117
|
+
/**
|
|
118
|
+
* The one auth_mode this provider can adopt.
|
|
119
|
+
*
|
|
120
|
+
* A Codex home may also hold an API-key sign-in, which is a different kind of
|
|
121
|
+
* credential for a different billing arrangement. Adopting it as a subscription
|
|
122
|
+
* sign-in would present the wrong credential to the Responses API, so the mode is
|
|
123
|
+
* checked rather than assumed: an unrecognised mode is an unrecognised document.
|
|
124
|
+
*/
|
|
125
|
+
export declare const CODEX_CLI_CHATGPT_AUTH_MODE = "chatgpt";
|
|
126
|
+
/** Where an adopted snapshot came from, for the card and for the pool record. */
|
|
127
|
+
export declare const CODEX_CLI_CREDENTIAL_SOURCE = "codex";
|
|
128
|
+
/**
|
|
129
|
+
* What the user is told when an adopted credential has aged out.
|
|
130
|
+
*
|
|
131
|
+
* Exported so the pool report and the settings card say the same sentence, and
|
|
132
|
+
* so the instruction is stated once: the re-sign-in happens in the CODEX CLI, not
|
|
133
|
+
* here, and the import has to be repeated afterwards.
|
|
134
|
+
*/
|
|
135
|
+
export declare const ADOPTED_CODEX_CREDENTIAL_EXPIRED_HINT: string;
|
|
136
|
+
/** One adopted credential: the store's own credential shape plus its provenance. */
|
|
137
|
+
export interface CodexCliAdoptedCredential {
|
|
138
|
+
/**
|
|
139
|
+
* The pool marker. Literal true on every snapshot this module returns.
|
|
140
|
+
*
|
|
141
|
+
* A discriminant rather than a description: a pool chunk that stores this record
|
|
142
|
+
* must refuse to refresh it, and a boolean it can test is harder to overlook
|
|
143
|
+
* than a comment it can read past.
|
|
144
|
+
*/
|
|
145
|
+
readonly adopted: true;
|
|
146
|
+
/** Which local sign-in this was taken from. */
|
|
147
|
+
readonly source: typeof CODEX_CLI_CREDENTIAL_SOURCE;
|
|
148
|
+
/** The exact file it was read from, so the card can name it. */
|
|
149
|
+
readonly sourcePath: string;
|
|
150
|
+
/** The credential in the store's own shape, ready to be persisted by the caller. */
|
|
151
|
+
readonly credentials: StoredOAuthCredentials;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* The Codex CLI's home directory.
|
|
155
|
+
*
|
|
156
|
+
* The environment override wins whenever it is set to a non-blank value — a blank
|
|
157
|
+
* or whitespace-only variable is treated as unset rather than as "the directory
|
|
158
|
+
* whose name is empty", which on Windows would resolve to a drive-relative path.
|
|
159
|
+
* Otherwise the conventional home/.codex directory is used, os.homedir() being
|
|
160
|
+
* the same %USERPROFILE% on Windows and ~ on POSIX that the CLI itself uses.
|
|
161
|
+
*
|
|
162
|
+
* Read at CALL time rather than captured in a module constant: a test (or an
|
|
163
|
+
* embedder) that sets the variable after import must see the change.
|
|
164
|
+
*/
|
|
165
|
+
export declare function codexHomeDir(): string;
|
|
166
|
+
/**
|
|
167
|
+
* Every path this module will look at, most authoritative first.
|
|
168
|
+
*
|
|
169
|
+
* A single candidate, which is a judgement call stated plainly. The Claude reader
|
|
170
|
+
* in this package also falls back to the conventional home when the environment
|
|
171
|
+
* override points somewhere else; here the override IS the user's own statement of
|
|
172
|
+
* where this CLI keeps its sign-in, and honouring a stale scratch directory is
|
|
173
|
+
* more dangerous than reporting nothing: a snapshot belonging to a profile the CLI
|
|
174
|
+
* is not currently using would be adopted silently. The path actually consulted is
|
|
175
|
+
* returned and printed by the caller, so "not found" is always accompanied by the
|
|
176
|
+
* exact place that was looked at.
|
|
177
|
+
*
|
|
178
|
+
* A pure function — no filesystem access at all — so it is safe to call just to
|
|
179
|
+
* render the card, and so its precedence is testable without touching a disk.
|
|
180
|
+
*/
|
|
181
|
+
export declare function codexCliCredentialPaths(): readonly string[];
|
|
182
|
+
/**
|
|
183
|
+
* Is there a local Codex CLI sign-in to offer?
|
|
184
|
+
*
|
|
185
|
+
* Safe on plugin startup: this NEVER opens a candidate for reading, so a user who
|
|
186
|
+
* never opts in never has the credential's contents touched — not by this
|
|
187
|
+
* function, not by the route that renders the card. Only stat runs, which reveals
|
|
188
|
+
* existence and timestamps and nothing else.
|
|
189
|
+
*
|
|
190
|
+
* Deliberately NOT reported here: whether the file is valid, expired, or even
|
|
191
|
+
* JSON. Answering that would require the read this function exists to avoid, and
|
|
192
|
+
* the card does not need it — validity is answered by the read, after opt-in, and
|
|
193
|
+
* lands on the card as either a credential or 'unrecognised local sign-in
|
|
194
|
+
* format'.
|
|
195
|
+
*
|
|
196
|
+
* A boolean, rather than the record the Claude reader returns, because the two
|
|
197
|
+
* callers want different things and neither needs the other's shape: the status
|
|
198
|
+
* route wants a flag, and reports the path it consulted beside it. paths
|
|
199
|
+
* is injectable so tests drive it against fixtures instead of a real profile;
|
|
200
|
+
* production callers take the default.
|
|
201
|
+
*/
|
|
202
|
+
export declare function codexCliCredentialPresence(paths?: readonly string[]): Promise<boolean>;
|
|
203
|
+
/**
|
|
204
|
+
* Map one parsed credential document onto the store's credential shape.
|
|
205
|
+
*
|
|
206
|
+
* Pure and exported so the format rules can be tested without a filesystem, and
|
|
207
|
+
* so a later chunk that reads the document from somewhere else (a backup, a pasted
|
|
208
|
+
* blob) reuses the one set of rules instead of growing a second, drifting copy.
|
|
209
|
+
*
|
|
210
|
+
* Returns undefined for every shape it does not recognise, and never throws — see
|
|
211
|
+
* Rule 4 in the module comment. The gate is deliberately narrow: the document must
|
|
212
|
+
* be a JSON object in the ChatGPT auth mode, its tokens block must be an object,
|
|
213
|
+
* and it must carry BOTH a non-empty access token and a non-empty refresh token.
|
|
214
|
+
* An access token alone is not adopted because the store's record is a sign-in,
|
|
215
|
+
* not a bare token, and a record with an empty one could never be re-recognised.
|
|
216
|
+
*
|
|
217
|
+
* The unrelated-token trap is handled by construction: value.tokens is addressed
|
|
218
|
+
* directly and no other key of the document is ever traversed, so whatever else
|
|
219
|
+
* the file carries cannot reach the result.
|
|
220
|
+
*/
|
|
221
|
+
export declare function parseAdoptedCodexCredential(value: unknown, sourcePath: string): CodexCliAdoptedCredential | undefined;
|
|
222
|
+
/**
|
|
223
|
+
* Read the local Codex CLI sign-in; the first usable candidate wins.
|
|
224
|
+
*
|
|
225
|
+
* ONLY call this after the user has explicitly opted in — see the module comment.
|
|
226
|
+
*
|
|
227
|
+
* Never throws and never rejects: an absent file, an unreadable file, a file that
|
|
228
|
+
* is not JSON, and a JSON document of an unrecognised shape all produce undefined,
|
|
229
|
+
* which the card renders as 'unrecognised local sign-in format'. A settings route
|
|
230
|
+
* must not be able to fail because a user's file was mid-write.
|
|
231
|
+
*/
|
|
232
|
+
export declare function readCodexCliCredentials(paths?: readonly string[]): Promise<CodexCliAdoptedCredential | undefined>;
|
|
233
|
+
/**
|
|
234
|
+
* Whether a value carries the adopted marker.
|
|
235
|
+
*
|
|
236
|
+
* The predicate the pool chunk tests a stored credential with before deciding
|
|
237
|
+
* whether it may ever be refreshed. It recognises this module's snapshot and
|
|
238
|
+
* nothing else: a plain store credential has no 'adopted' field and must NOT be
|
|
239
|
+
* mistaken for one, because treating a plugin-owned account as a disposable
|
|
240
|
+
* snapshot would freeze an account the user signed in here.
|
|
241
|
+
*/
|
|
242
|
+
export declare function isAdoptedCodexCredential(value: unknown): value is CodexCliAdoptedCredential;
|
|
243
|
+
/**
|
|
244
|
+
* Whether an adopted credential's access token is already unusable.
|
|
245
|
+
*
|
|
246
|
+
* A structural mirror of the expiry test the OAuth module applies to its own
|
|
247
|
+
* credentials (expiresAt - Date.now() > 0), asked of a pooled credential so the
|
|
248
|
+
* pool can refuse it WITHOUT ever reaching for a refresh this module deliberately
|
|
249
|
+
* does not perform. A non-finite expiresAt counts as expired, matching the
|
|
250
|
+
* refusal in the reader: no established validity, no use.
|
|
251
|
+
*
|
|
252
|
+
* now is injectable so a test can reason about a fixed clock.
|
|
253
|
+
*/
|
|
254
|
+
export declare function isAdoptedCodexCredentialExpired(credential: Pick<StoredOAuthCredentials, 'expiresAt'>, now?: number): boolean;
|
|
255
|
+
//# sourceMappingURL=codex-adopt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-adopt.d.ts","sourceRoot":"","sources":["../../../src/host/codex-adopt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+FG;AAUH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAE9D;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,eAAe,CAAA;AAE1C,kEAAkE;AAClE,eAAO,MAAM,yBAAyB,cAAc,CAAA;AAEpD;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,WAAW,CAAA;AAE5C;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,YAAY,CAAA;AAEpD,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,UAAU,CAAA;AAKlD;;;;;;GAMG;AACH,eAAO,MAAM,qCAAqC,QAEM,CAAA;AAExD,oFAAoF;AACpF,MAAM,WAAW,yBAAyB;IACxC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAA;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,MAAM,EAAE,OAAO,2BAA2B,CAAA;IACnD,gEAAgE;IAChE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,oFAAoF;IACpF,QAAQ,CAAC,WAAW,EAAE,sBAAsB,CAAA;CAC7C;AAaD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAIrC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,IAAI,SAAS,MAAM,EAAE,CAE3D;AAqBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,0BAA0B,CAC9C,KAAK,GAAE,SAAS,MAAM,EAA8B,GACnD,OAAO,CAAC,OAAO,CAAC,CAKlB;AA8CD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM,GACjB,yBAAyB,GAAG,SAAS,CA2CvC;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,GAAE,SAAS,MAAM,EAA8B,GACnD,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC,CAchD;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,yBAAyB,CAK3F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,IAAI,CAAC,sBAAsB,EAAE,WAAW,CAAC,EACrD,GAAG,GAAE,MAAmB,GACvB,OAAO,CAGT"}
|
|
@@ -8,5 +8,15 @@ import type { SearchProviderSwitcher } from './search-provider-switcher.ts';
|
|
|
8
8
|
import { UsageService } from './usage-service.ts';
|
|
9
9
|
/** Read-only audit provider the optional route serves. */
|
|
10
10
|
export type RouteAuditReader = (sessionId: string) => Promise<SubagentRouteAuditDto>;
|
|
11
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Test seam for the adopt routes: the paths the Codex reader consults.
|
|
13
|
+
*
|
|
14
|
+
* Present for the same reason the Claude line carries 'adoptPaths': the reader
|
|
15
|
+
* resolves its own path from CODEX_HOME, and a test must point it at a fixture
|
|
16
|
+
* rather than at the machine it is running on. Production callers take the default.
|
|
17
|
+
*/
|
|
18
|
+
export interface RouteAdoptOptions {
|
|
19
|
+
adoptPaths?: readonly string[];
|
|
20
|
+
}
|
|
21
|
+
export declare function registerRoutes(ctx: Context, oauth: OAuthService, usage: UsageService, preferences: SubscriptionPreferenceStore, proxyManager?: ProxyManager, searchSwitcher?: SearchProviderSwitcher, routeAudit?: RouteAuditReader, accountPool?: CodexAccountPool, fetchConfiguration?: FetchConfigurationDto, adopt?: RouteAdoptOptions): () => void;
|
|
12
22
|
//# sourceMappingURL=routes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../src/host/routes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,KAAK,EAEV,qBAAqB,
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../src/host/routes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,KAAK,EAEV,qBAAqB,EAIrB,qBAAqB,EAEtB,MAAM,wBAAwB,CAAA;AAG/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,OAAO,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAA;AAC9D,OAAO,EAAmB,KAAK,2BAA2B,EAAE,MAAM,kBAAkB,CAAA;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAqB,MAAM,oBAAoB,CAAA;AAKpE,0DAA0D;AAC1D,MAAM,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAA;AAEpF;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAC/B;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,YAAY,EACnB,WAAW,EAAE,2BAA2B,EACxC,YAAY,CAAC,EAAE,YAAY,EAC3B,cAAc,CAAC,EAAE,sBAAsB,EACvC,UAAU,CAAC,EAAE,gBAAgB,EAC7B,WAAW,CAAC,EAAE,gBAAgB,EAC9B,kBAAkB,CAAC,EAAE,qBAAqB,EAC1C,KAAK,CAAC,EAAE,iBAAiB,GACxB,MAAM,IAAI,CAwUZ"}
|
|
@@ -1,5 +1,30 @@
|
|
|
1
1
|
import type { CredentialStorageDto } from '../shared/contracts.ts';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* The adoption markers, as they hang off a credential this package stores.
|
|
4
|
+
*
|
|
5
|
+
* FLATTENED onto the credential rather than nested under it, for the same reason
|
|
6
|
+
* the Claude line flattens its own: the pool's hooks (needsRefresh, refresh,
|
|
7
|
+
* authRejectedReason) receive the CREDENTIAL and never the account record, so the
|
|
8
|
+
* marker has to be reachable from there, and every other field a pooled row reads
|
|
9
|
+
* already sits at the top level.
|
|
10
|
+
*
|
|
11
|
+
* A borrowed snapshot is never refreshed (the refresh token belongs to the client
|
|
12
|
+
* that wrote the file, and two programs spending it invalidate each other), so the
|
|
13
|
+
* marker is the whole difference between a row this plugin may rotate and a row
|
|
14
|
+
* that is a snapshot until it expires. It is written on EVERY account the pool
|
|
15
|
+
* creates, including the explicit false case, because the core merges a
|
|
16
|
+
* re-authorization as { ...existing, ...created } and an omitted key would leave a
|
|
17
|
+
* stored 'adopted: true' behind.
|
|
18
|
+
*/
|
|
19
|
+
export interface AdoptedCredentialMarkers {
|
|
20
|
+
/** Literal true on a credential copied out of another application's sign-in. */
|
|
21
|
+
adopted?: true;
|
|
22
|
+
/** Which local sign-in it was taken from, e.g. 'codex'. */
|
|
23
|
+
source?: string;
|
|
24
|
+
/** The exact file it was read from, so a card can name it. */
|
|
25
|
+
sourcePath?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface StoredOAuthCredentials extends AdoptedCredentialMarkers {
|
|
3
28
|
accessToken: string;
|
|
4
29
|
refreshToken: string;
|
|
5
30
|
idToken?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-store.d.ts","sourceRoot":"","sources":["../../../src/host/token-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAElE,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"token-store.d.ts","sourceRoot":"","sources":["../../../src/host/token-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAElE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,wBAAwB;IACvC,gFAAgF;IAChF,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,sBAAuB,SAAQ,wBAAwB;IACtE,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,IAAI,IAAI,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;IACzB,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,MAAM,WAAW,UAAW,SAAQ,eAAe,CAAC,sBAAsB,CAAC;IACzE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAA;CAC1D;AAED,6EAA6E;AAC7E,qBAAa,gBAAiB,YAAW,UAAU;IACjD,QAAQ,CAAC,OAAO;;;MAAgD;IAChE,OAAO,CAAC,KAAK,CAAsC;IAE7C,IAAI,IAAI,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAI9C,IAAI,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,sBAAsB,CAoC7E"}
|
package/lib/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAgIxC,OAAO,EAEL,KAAK,YAAY,EAElB,MAAM,0CAA0C,CAAA;AAEjD,yDAAyD;AACzD,MAAM,WAAW,MAAM;IACrB;oGACgG;IAChG,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAA;IACzC,qGAAqG;IACrG,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,gEAAgE;IAChE,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;;;OAIG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAA;IACpC,qFAAqF;IACrF,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B;;;;;;OAMG;IACH,yBAAyB,CAAC,EAAE,MAAM,EAAE,CAAA;IACpC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,SAAS,GAAG,YAAY,CAAA;IAC7C;;;OAGG;IACH,sBAAsB,CAAC,EAAE,YAAY,GAAG,KAAK,CAAA;CAC9C;AAED,eAAO,MAAM,MAAM,EAAE,CAAC,CAAC,MAAM,CAa3B,CAAA;AAEF,eAAO,MAAM,MAAM,UAAqE,CAAA;AAExF,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,GAAE,MAAW,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,28 @@ export interface PluginStatusDto {
|
|
|
46
46
|
/** Account the next request would use. */
|
|
47
47
|
activeAccountId?: string;
|
|
48
48
|
rotationStrategy?: AccountRotationStrategy;
|
|
49
|
+
/**
|
|
50
|
+
* Whether a local Codex CLI sign-in exists to import.
|
|
51
|
+
*
|
|
52
|
+
* Presence only, answered by a stat: the settings card has to offer the import
|
|
53
|
+
* BEFORE the user agrees to it, and a startup path that read the file "just in
|
|
54
|
+
* case" would make that agreement decorative. Validity is answered by the adopt
|
|
55
|
+
* route itself, after opt-in.
|
|
56
|
+
*/
|
|
57
|
+
codexCliSignInAvailable?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* The exact file that was consulted to answer `codexCliSignInAvailable`.
|
|
60
|
+
*
|
|
61
|
+
* Presence alone cannot answer "why was nothing found?", so the path travels
|
|
62
|
+
* with the flag. It is a location, never a credential: `codex-adopt.ts`
|
|
63
|
+
* resolves it from CODEX_HOME and the flag is a stat of that one file, so
|
|
64
|
+
* printing it says where the plugin looked without opening anything.
|
|
65
|
+
*
|
|
66
|
+
* One path rather than a list, because this reader defines exactly one
|
|
67
|
+
* candidate — a list here would imply a precedence this provider does not
|
|
68
|
+
* have. A host that does not consult the file simply omits the field.
|
|
69
|
+
*/
|
|
70
|
+
codexCliSignInPath?: string;
|
|
49
71
|
detectedProxy?: string | null;
|
|
50
72
|
activeProxy?: string | null;
|
|
51
73
|
error?: PublicErrorDto;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../src/shared/contracts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../src/shared/contracts.ts"],"names":[],"mappings":"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"}
|