@tokensrc/codex 1.14.14 → 1.14.16
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 +22 -1
- package/dist/client.d.ts +2 -1
- package/dist/client.js +33 -5
- package/dist/client.js.map +1 -1
- package/dist/command-directory.js +1 -1
- package/dist/command-directory.js.map +1 -1
- package/dist/commands.js +97 -9
- package/dist/commands.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/protocol.d.ts +121 -0
- package/dist/protocol.js +22 -2
- package/dist/protocol.js.map +1 -1
- package/dist/tui.d.ts +7 -2
- package/dist/tui.js +21 -6
- package/dist/tui.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@ npx @tokensrc/codex run
|
|
|
13
13
|
The standalone command tree includes `login`, `logout`, `list`, `upload`, `use`,
|
|
14
14
|
`run`, `app`, `auth-agent`, `enrollment`, `admin`, `shortcut`, `status`, and `reset`. The
|
|
15
15
|
`admin accounts` subtree lists tenant accounts, shows redacted credential-version
|
|
16
|
-
diagnostics, and requests one server-side refresh; it never receives refresh
|
|
16
|
+
diagnostics, records explicit subscription renewals, and requests one server-side refresh; it never receives refresh
|
|
17
17
|
tokens, ciphertext, or credential fingerprints. `admin assignments` lists
|
|
18
18
|
bindings, binds an account to a verified Keycloak subject, and unbinds by
|
|
19
19
|
assignment ID:
|
|
@@ -21,12 +21,33 @@ assignment ID:
|
|
|
21
21
|
```sh
|
|
22
22
|
numa codex admin accounts list
|
|
23
23
|
numa codex admin accounts credential-versions acct_xxx
|
|
24
|
+
numa codex admin accounts renew acct_xxx --expires-at 2026-10-01T00:00:00Z
|
|
24
25
|
numa codex admin accounts refresh acct_xxx
|
|
25
26
|
numa codex admin assignments list
|
|
26
27
|
numa codex admin assignments bind acct_xxx keycloak-subject --default
|
|
27
28
|
numa codex admin assignments unbind assignment_xxx
|
|
28
29
|
```
|
|
29
30
|
|
|
31
|
+
An account whose `subscriptionStatus` is `EXPIRED`, or whose
|
|
32
|
+
`subscriptionExpiresAt` has passed, is unavailable even when a cached OpenAI
|
|
33
|
+
access token has a later JWT expiry. Renewal requires a strictly later,
|
|
34
|
+
future ISO-8601 timestamp. It restores the platform subscription window only;
|
|
35
|
+
an independently rejected provider credential still requires a fresh managed
|
|
36
|
+
login. The renewal mutation carries the previously observed expiry for an
|
|
37
|
+
atomic compare-and-set and an `Idempotency-Key`; an unknown response must be
|
|
38
|
+
retried with the same key and request body.
|
|
39
|
+
|
|
40
|
+
The account service implements renewal at
|
|
41
|
+
`POST /v1/admin/codex/accounts/{accountId}/renew`. In one transaction it must
|
|
42
|
+
verify `expectedSubscriptionExpiresAt`, require the requested expiry to extend
|
|
43
|
+
both the current time and stored expiry, set the subscription status to
|
|
44
|
+
`ACTIVE`, and preserve a separate provider-credential failure such as
|
|
45
|
+
`NEEDS_REAUTH`. User account and v2/v4 assignment responses propagate the
|
|
46
|
+
subscription status and expiry. Before renewal, an expired assignment is never
|
|
47
|
+
delivery-eligible and credential/device-session endpoints reject it with
|
|
48
|
+
`codex_account_expired`; after renewal it becomes eligible only when its
|
|
49
|
+
credential lineage is otherwise healthy.
|
|
50
|
+
|
|
30
51
|
Tenant administrators complete a server-created account discovery or assignment
|
|
31
52
|
enrollment with one isolated official Codex login:
|
|
32
53
|
|
package/dist/client.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CodexAuthController } from "./oidc.js";
|
|
2
|
-
import { type CodexAdminAccountListResponse, type CodexAdminAssignmentDeleteResponse, type CodexAdminAssignmentListResponse, type CodexAdminAssignmentMutationResponse, type CodexAccountListResponse, type CodexAssignmentRetirementLocalDeleteAckInput, type CodexAssignmentRetirementLocalDeleteAckResponse, type CodexAssignmentRetirementPreflightResponse, type CodexCredentialVersionListResponse, type CodexEnrollmentHeartbeatInput, type CodexEnrollmentCandidateInput, type CodexEnrollmentCandidateResponse, type CodexEnrollmentIntentResponse, type CodexEnrollmentMutationInput, type CodexImportResult, type CodexLoginCredentialsResponse, type CodexManualRefreshResponse, type CodexMigrationLoginQueueResponse, type CodexShortLivedDeliveryAckInput, type CodexShortLivedDeliveryAckResponse, type CodexShortLivedDeliveryRequest, type CodexShortLivedDeliveryResponse, type CodexUserCredentialAssignmentListResponse, type CodexUploadBatch, type CodexV3CredentialAssignmentListResponse, type CodexV3EnrollmentConfiguration, type CodexV3EnrollmentInput, type CodexV3EnrollmentResponse, type CodexV3FullCredentialDeliveryAckInput, type CodexV3FullCredentialDeliveryAckResponse, type CodexV3FullCredentialDeliveryRequest, type CodexV3FullCredentialDeliveryResponse, type CodexV3GenerationReportInput, type CodexV3GenerationReportResponse, type CodexV4AccessObservationInput, type CodexV4AccessObservationResponse, type CodexV5AcknowledgeDeviceSessionInput, type CodexV5AcknowledgeDeviceSessionResponse, type CodexV5CreateDeviceSessionInput, type CodexV5CreateDeviceSessionResponse, type CodexV5GenerationReportInput, type CodexV5GenerationReportResponse, type CodexV5HeartbeatDeviceSessionInput, type CodexV5HeartbeatDeviceSessionResponse, type CodexV5ReleaseDeviceSessionInput, type CodexV5ReleaseDeviceSessionResponse, type CodexTokenPoolV4AssignmentTarget, type CodexTokenPoolV4DirectoryResolveResponse, type CodexTokenPoolV4EnrollmentConfiguration, type CodexTokenPoolV4UploadInput, type CodexTokenPoolV4UploadResponse } from "./protocol.js";
|
|
2
|
+
import { type CodexAdminAccountListResponse, type CodexAdminAccountRenewalInput, type CodexAdminAccountRenewalResponse, type CodexAdminAssignmentDeleteResponse, type CodexAdminAssignmentListResponse, type CodexAdminAssignmentMutationResponse, type CodexAccountListResponse, type CodexAssignmentRetirementLocalDeleteAckInput, type CodexAssignmentRetirementLocalDeleteAckResponse, type CodexAssignmentRetirementPreflightResponse, type CodexCredentialVersionListResponse, type CodexEnrollmentHeartbeatInput, type CodexEnrollmentCandidateInput, type CodexEnrollmentCandidateResponse, type CodexEnrollmentIntentResponse, type CodexEnrollmentMutationInput, type CodexImportResult, type CodexLoginCredentialsResponse, type CodexManualRefreshResponse, type CodexMigrationLoginQueueResponse, type CodexShortLivedDeliveryAckInput, type CodexShortLivedDeliveryAckResponse, type CodexShortLivedDeliveryRequest, type CodexShortLivedDeliveryResponse, type CodexUserCredentialAssignmentListResponse, type CodexUploadBatch, type CodexV3CredentialAssignmentListResponse, type CodexV3EnrollmentConfiguration, type CodexV3EnrollmentInput, type CodexV3EnrollmentResponse, type CodexV3FullCredentialDeliveryAckInput, type CodexV3FullCredentialDeliveryAckResponse, type CodexV3FullCredentialDeliveryRequest, type CodexV3FullCredentialDeliveryResponse, type CodexV3GenerationReportInput, type CodexV3GenerationReportResponse, type CodexV4AccessObservationInput, type CodexV4AccessObservationResponse, type CodexV5AcknowledgeDeviceSessionInput, type CodexV5AcknowledgeDeviceSessionResponse, type CodexV5CreateDeviceSessionInput, type CodexV5CreateDeviceSessionResponse, type CodexV5GenerationReportInput, type CodexV5GenerationReportResponse, type CodexV5HeartbeatDeviceSessionInput, type CodexV5HeartbeatDeviceSessionResponse, type CodexV5ReleaseDeviceSessionInput, type CodexV5ReleaseDeviceSessionResponse, type CodexTokenPoolV4AssignmentTarget, type CodexTokenPoolV4DirectoryResolveResponse, type CodexTokenPoolV4EnrollmentConfiguration, type CodexTokenPoolV4UploadInput, type CodexTokenPoolV4UploadResponse } from "./protocol.js";
|
|
3
3
|
import type { ResolvedCodexConfig } from "./types.js";
|
|
4
4
|
export declare function normalizeCodexServiceUrl(rawUrl: string, allowInsecureHttp?: boolean): string;
|
|
5
5
|
export declare class CodexServiceClient {
|
|
@@ -47,6 +47,7 @@ export declare class CodexServiceClient {
|
|
|
47
47
|
listAdminAccounts(): Promise<CodexAdminAccountListResponse>;
|
|
48
48
|
listCredentialVersions(accountId: string): Promise<CodexCredentialVersionListResponse>;
|
|
49
49
|
refreshAdminAccount(accountId: string): Promise<CodexManualRefreshResponse>;
|
|
50
|
+
renewAdminAccount(accountId: string, input: CodexAdminAccountRenewalInput, idempotencyKey: string): Promise<CodexAdminAccountRenewalResponse>;
|
|
50
51
|
listAdminAssignments(): Promise<CodexAdminAssignmentListResponse>;
|
|
51
52
|
bindAdminAssignment(input: {
|
|
52
53
|
accountId: string;
|
package/dist/client.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CodexAuthError, CodexLoginRequiredError, CodexServiceError } from "./errors.js";
|
|
2
|
-
import { CODEX_ACCOUNTS_IMPORT_PATH, CODEX_ACCOUNTS_LIST_PATH, CodexAssignmentRetirementLocalDeleteAckInputSchema, CodexAssignmentRetirementLocalDeleteAckResponseSchema, CodexAssignmentRetirementPreflightResponseSchema, CODEX_ADMIN_ACCOUNTS_PATH, CODEX_ADMIN_ASSIGNMENTS_PATH, CODEX_CREDENTIAL_ASSIGNMENTS_PATH, CodexAdminAssignmentDeleteResponseSchema, CodexAdminAssignmentListResponseSchema, CodexAdminAssignmentMutationResponseSchema, CodexAdminAccountListResponseSchema, CodexAccountListResponseSchema, CodexCredentialVersionListResponseSchema, CodexEnrollmentHeartbeatInputSchema, CodexEnrollmentCandidateInputSchema, CodexEnrollmentCandidateResponseSchema, CodexEnrollmentIntentResponseSchema, CodexEnrollmentMutationInputSchema, CodexImportResultSchema, CodexLoginCredentialsResponseSchema, CodexManualRefreshResponseSchema, CodexMigrationLoginQueueResponseSchema, CodexShortLivedDeliveryAckInputSchema, CodexShortLivedDeliveryAckResponseSchema, CodexShortLivedDeliveryRequestSchema, CodexShortLivedDeliveryResponseSchema, CodexUserCredentialAssignmentListResponseSchema, CODEX_V3_CREDENTIAL_ASSIGNMENTS_PATH, CODEX_V3_ENROLLMENT_CONFIGURATION_PATH, CODEX_V3_ENROLLMENTS_PATH, CodexV3CredentialAssignmentListResponseSchema, CodexV3EnrollmentConfigurationSchema, CodexV3EnrollmentInputSchema, CodexV3EnrollmentResponseSchema, CodexV3FullCredentialDeliveryAckInputSchema, CodexV3FullCredentialDeliveryAckResponseSchema, CodexV3FullCredentialDeliveryRequestSchema, CodexV3FullCredentialDeliveryResponseSchema, CodexV3GenerationReportInputSchema, CodexV3GenerationReportResponseSchema, CodexV4AccessObservationInputSchema, CodexV4AccessObservationResponseSchema, CodexV5AcknowledgeDeviceSessionInputSchema, CodexV5AcknowledgeDeviceSessionResponseSchema, CodexV5CreateDeviceSessionInputSchema, CodexV5CreateDeviceSessionResponseSchema, CodexV5GenerationReportInputSchema, CodexV5GenerationReportResponseSchema, CodexV5HeartbeatDeviceSessionInputSchema, CodexV5HeartbeatDeviceSessionResponseSchema, CodexV5ReleaseDeviceSessionInputSchema, CodexV5ReleaseDeviceSessionResponseSchema, CODEX_TOKEN_POOL_V4_ENROLLMENT_CONFIGURATION_PATH, CODEX_TOKEN_POOL_V4_UPLOADS_PATH, CodexTokenPoolV4DirectoryResolveResponseSchema, CodexTokenPoolV4EnrollmentConfigurationSchema, CodexTokenPoolV4IdempotencyKeySchema, CodexTokenPoolV4UploadInputSchema, CodexTokenPoolV4UploadResponseSchema, codexAccountLoginCredentialsPath, codexAssignmentRetirementLocalDeleteAckPath, codexAssignmentRetirementPath, codexAdminAssignmentPath, codexAdminCredentialVersionsPath, codexAdminEnrollmentIntentActionPath, codexAdminEnrollmentIntentPath, codexAdminMigrationLoginQueuePath, codexAdminRefreshPath, codexAssignmentShortLivedDeliveriesPath, codexShortLivedDeliveryAckPath, codexV3AssignmentFullCredentialDeliveriesPath, codexV3AssignmentFullCredentialDeliveryResolvePath, codexV3EnrollmentResolvePath, codexV3FullCredentialDeliveryAckPath, codexV3LineageGenerationReportResolvePath, codexV3LineageGenerationReportsPath, codexV4LineageAccessObservationPath, codexV5AssignmentDeviceSessionResolvePath, codexV5AssignmentDeviceSessionsPath, codexV5DeviceSessionActionPath, codexV5LineageGenerationReportsPath, codexTokenPoolV4DirectoryResolvePath, codexTokenPoolV4UploadResolvePath } from "./protocol.js";
|
|
2
|
+
import { CODEX_ACCOUNTS_IMPORT_PATH, CODEX_ACCOUNTS_LIST_PATH, CodexAssignmentRetirementLocalDeleteAckInputSchema, CodexAssignmentRetirementLocalDeleteAckResponseSchema, CodexAssignmentRetirementPreflightResponseSchema, CODEX_ADMIN_ACCOUNTS_PATH, CODEX_ADMIN_ASSIGNMENTS_PATH, CODEX_CREDENTIAL_ASSIGNMENTS_PATH, CodexAdminAssignmentDeleteResponseSchema, CodexAdminAssignmentListResponseSchema, CodexAdminAssignmentMutationResponseSchema, CodexAdminAccountListResponseSchema, CodexAdminAccountRenewalInputSchema, CodexAdminAccountRenewalResponseSchema, CodexAccountListResponseSchema, CodexCredentialVersionListResponseSchema, CodexEnrollmentHeartbeatInputSchema, CodexEnrollmentCandidateInputSchema, CodexEnrollmentCandidateResponseSchema, CodexEnrollmentIntentResponseSchema, CodexEnrollmentMutationInputSchema, CodexImportResultSchema, CodexLoginCredentialsResponseSchema, CodexManualRefreshResponseSchema, CodexMigrationLoginQueueResponseSchema, CodexShortLivedDeliveryAckInputSchema, CodexShortLivedDeliveryAckResponseSchema, CodexShortLivedDeliveryRequestSchema, CodexShortLivedDeliveryResponseSchema, CodexUserCredentialAssignmentListResponseSchema, CODEX_V3_CREDENTIAL_ASSIGNMENTS_PATH, CODEX_V3_ENROLLMENT_CONFIGURATION_PATH, CODEX_V3_ENROLLMENTS_PATH, CodexV3CredentialAssignmentListResponseSchema, CodexV3EnrollmentConfigurationSchema, CodexV3EnrollmentInputSchema, CodexV3EnrollmentResponseSchema, CodexV3FullCredentialDeliveryAckInputSchema, CodexV3FullCredentialDeliveryAckResponseSchema, CodexV3FullCredentialDeliveryRequestSchema, CodexV3FullCredentialDeliveryResponseSchema, CodexV3GenerationReportInputSchema, CodexV3GenerationReportResponseSchema, CodexV4AccessObservationInputSchema, CodexV4AccessObservationResponseSchema, CodexV5AcknowledgeDeviceSessionInputSchema, CodexV5AcknowledgeDeviceSessionResponseSchema, CodexV5CreateDeviceSessionInputSchema, CodexV5CreateDeviceSessionResponseSchema, CodexV5GenerationReportInputSchema, CodexV5GenerationReportResponseSchema, CodexV5HeartbeatDeviceSessionInputSchema, CodexV5HeartbeatDeviceSessionResponseSchema, CodexV5ReleaseDeviceSessionInputSchema, CodexV5ReleaseDeviceSessionResponseSchema, CODEX_TOKEN_POOL_V4_ENROLLMENT_CONFIGURATION_PATH, CODEX_TOKEN_POOL_V4_UPLOADS_PATH, CodexTokenPoolV4DirectoryResolveResponseSchema, CodexTokenPoolV4EnrollmentConfigurationSchema, CodexTokenPoolV4IdempotencyKeySchema, CodexTokenPoolV4UploadInputSchema, CodexTokenPoolV4UploadResponseSchema, codexAccountLoginCredentialsPath, codexAssignmentRetirementLocalDeleteAckPath, codexAssignmentRetirementPath, codexAdminAssignmentPath, codexAdminCredentialVersionsPath, codexAdminEnrollmentIntentActionPath, codexAdminEnrollmentIntentPath, codexAdminMigrationLoginQueuePath, codexAdminRenewPath, codexAdminRefreshPath, codexAssignmentShortLivedDeliveriesPath, codexShortLivedDeliveryAckPath, codexV3AssignmentFullCredentialDeliveriesPath, codexV3AssignmentFullCredentialDeliveryResolvePath, codexV3EnrollmentResolvePath, codexV3FullCredentialDeliveryAckPath, codexV3LineageGenerationReportResolvePath, codexV3LineageGenerationReportsPath, codexV4LineageAccessObservationPath, codexV5AssignmentDeviceSessionResolvePath, codexV5AssignmentDeviceSessionsPath, codexV5DeviceSessionActionPath, codexV5LineageGenerationReportsPath, codexTokenPoolV4DirectoryResolvePath, codexTokenPoolV4UploadResolvePath } from "./protocol.js";
|
|
3
3
|
export function normalizeCodexServiceUrl(rawUrl, allowInsecureHttp = false) {
|
|
4
4
|
const url = new URL(rawUrl);
|
|
5
5
|
const loopback = ["127.0.0.1", "localhost", "::1", "[::1]"].includes(url.hostname);
|
|
@@ -103,13 +103,18 @@ export class CodexServiceClient {
|
|
|
103
103
|
const safeServiceCode = serviceCode && /^[a-z][a-z0-9_.-]{0,127}$/i.test(serviceCode)
|
|
104
104
|
? serviceCode
|
|
105
105
|
: undefined;
|
|
106
|
-
const
|
|
106
|
+
const normalizedServiceCode = safeServiceCode === "client_credential_expired"
|
|
107
|
+
? "codex_account_expired"
|
|
108
|
+
: safeServiceCode;
|
|
109
|
+
const code = normalizedServiceCode
|
|
107
110
|
?? (response.status === 401 || response.status === 403
|
|
108
111
|
? "codex_access_denied"
|
|
109
112
|
: "codex_service_error");
|
|
110
|
-
throw new CodexServiceError(
|
|
111
|
-
? "ChatGPT account
|
|
112
|
-
:
|
|
113
|
+
throw new CodexServiceError(normalizedServiceCode === "codex_account_expired"
|
|
114
|
+
? "ChatGPT account subscription has expired and must be renewed by an administrator."
|
|
115
|
+
: normalizedServiceCode === "codex_account_needs_reauth"
|
|
116
|
+
? "ChatGPT account credentials are invalid and must be re-imported by an administrator."
|
|
117
|
+
: `Codex account service request failed (HTTP ${response.status}): ${detail}`, code, response.status);
|
|
113
118
|
}
|
|
114
119
|
return body;
|
|
115
120
|
}
|
|
@@ -430,6 +435,29 @@ export class CodexServiceClient {
|
|
|
430
435
|
}
|
|
431
436
|
return parsed.data;
|
|
432
437
|
}
|
|
438
|
+
async renewAdminAccount(accountId, input, idempotencyKey) {
|
|
439
|
+
const request = CodexAdminAccountRenewalInputSchema.safeParse(input);
|
|
440
|
+
const key = CodexTokenPoolV4IdempotencyKeySchema.safeParse(idempotencyKey);
|
|
441
|
+
if (!request.success || !key.success || request.data.subscriptionExpiresAt <= Date.now()
|
|
442
|
+
|| request.data.expectedSubscriptionExpiresAt != null
|
|
443
|
+
&& request.data.subscriptionExpiresAt <= request.data.expectedSubscriptionExpiresAt) {
|
|
444
|
+
throw new CodexServiceError("Invalid Codex account renewal request.", "invalid_codex_account_renewal");
|
|
445
|
+
}
|
|
446
|
+
const parsed = CodexAdminAccountRenewalResponseSchema.safeParse(await this.request(codexAdminRenewPath(accountId), {
|
|
447
|
+
method: "POST",
|
|
448
|
+
body: request.data,
|
|
449
|
+
headers: { "Idempotency-Key": key.data }
|
|
450
|
+
}));
|
|
451
|
+
if (!parsed.success || parsed.data.account.id !== accountId
|
|
452
|
+
|| parsed.data.account.subscriptionExpiresAt !== request.data.subscriptionExpiresAt
|
|
453
|
+
|| parsed.data.previousSubscriptionExpiresAt !== request.data.expectedSubscriptionExpiresAt
|
|
454
|
+
|| parsed.data.previousSubscriptionExpiresAt != null
|
|
455
|
+
&& parsed.data.previousSubscriptionExpiresAt >= request.data.subscriptionExpiresAt
|
|
456
|
+
|| parsed.data.account.subscriptionStatus?.toUpperCase() === "EXPIRED") {
|
|
457
|
+
throw new CodexServiceError("Invalid or mismatched Codex account renewal response.", "invalid_codex_service_response");
|
|
458
|
+
}
|
|
459
|
+
return parsed.data;
|
|
460
|
+
}
|
|
433
461
|
async listAdminAssignments() {
|
|
434
462
|
const parsed = CodexAdminAssignmentListResponseSchema.safeParse(await this.request(CODEX_ADMIN_ASSIGNMENTS_PATH));
|
|
435
463
|
if (!parsed.success) {
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ const definitions = [
|
|
|
9
9
|
{ name: "app", description: "Launch the official Codex desktop app", command: "codex app [workspace] [-s|--select-account|-a|--account <id>] [-u|--server <url>]", summary: "准备官方 ChatGPT 登录并启动现有 macOS/Windows Codex 桌面 App;不安装或改动App版本", access: "authenticated", examples: ["numa codex app . -s", "numa codex app . --account acct_xxx"] },
|
|
10
10
|
{ name: "shortcut", description: "Install or remove launcher shortcuts", command: "codex shortcut [install|remove] [-t|--target run|app|both] [-s|--select-account] [--no-cli-wrapper]", summary: "安装或删除macOS/Windows/Linux的原子自更新Numa launcher、Codex快捷命令与桌面入口", access: "public", examples: ["numa codex shortcut install", "numa codex shortcut install --target app --workspace .", "numa codex shortcut remove"] },
|
|
11
11
|
{ name: "auth-agent", description: "Continuously renew official Codex credentials", command: "codex auth-agent [account]", summary: "前台刷新短效 token 到官方 Codex 登录并输出完整状态日志", access: "authenticated", examples: ["numa codex auth-agent acct_xxx --replace-login", "numa codex auth-agent --replace-login --once"] },
|
|
12
|
-
{ name: "admin", description: "Manage server-side Codex accounts and assignments", command: "codex admin <accounts|assignments>", summary: "
|
|
12
|
+
{ name: "admin", description: "Manage server-side Codex accounts and assignments", command: "codex admin <accounts|assignments>", summary: "管理员查看账号与凭据版本、续订或触发凭据刷新,并管理 Keycloak 用户账号绑定", access: "authenticated", examples: ["numa codex admin accounts list", "numa codex admin accounts credential-versions acct_xxx", "numa codex admin accounts renew acct_xxx --expires-at 2026-10-01T00:00:00Z", "numa codex admin accounts refresh acct_xxx", "numa codex admin assignments list", "numa codex admin assignments bind acct_xxx user-subject --default", "numa codex admin assignments unbind assignment_xxx"] },
|
|
13
13
|
{ name: "status", description: "Show selection, desktop app, and official credential status", command: "codex status", summary: "查看当前账号选择、ChatGPT Desktop 版本与官方 auth.json 状态", access: "public", examples: ["numa codex status --json"] },
|
|
14
14
|
{ name: "reset", description: "Reset selection and managed credentials", command: "codex reset", summary: "重置本地账号选择和登录,并清理废弃的 provider 残留", access: "public", examples: ["numa codex reset"] }
|
|
15
15
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-directory.js","sourceRoot":"","sources":["../src/command-directory.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,GAAsC;IACrD,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,wCAAwC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,sBAAsB,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE;IACjM,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,oEAAoE,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,2DAA2D,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,kBAAkB,EAAE,+CAA+C,EAAE,iFAAiF,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE;IACjZ,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,uBAAuB,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE;IACpM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,+BAA+B,EAAE,OAAO,EAAE,gCAAgC,EAAE,OAAO,EAAE,qCAAqC,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,uDAAuD,CAAC,EAAE;IACvP,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE,OAAO,EAAE,kCAAkC,EAAE,OAAO,EAAE,qDAAqD,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,4EAA4E,CAAC,EAAE;IAC1S,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,0DAA0D,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,gCAAgC,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,yBAAyB,CAAC,EAAE;IACnO,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,+BAA+B,EAAE,OAAO,EAAE,2FAA2F,EAAE,OAAO,EAAE,uCAAuC,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,mBAAmB,EAAE,mCAAmC,EAAE,kCAAkC,CAAC,EAAE;IACxV,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,uCAAuC,EAAE,OAAO,EAAE,mFAAmF,EAAE,OAAO,EAAE,6DAA6D,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,qBAAqB,EAAE,qCAAqC,CAAC,EAAE;IAC9U,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,sCAAsC,EAAE,OAAO,EAAE,qGAAqG,EAAE,OAAO,EAAE,4DAA4D,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,6BAA6B,EAAE,wDAAwD,EAAE,4BAA4B,CAAC,EAAE;IACrZ,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,+CAA+C,EAAE,OAAO,EAAE,4BAA4B,EAAE,OAAO,EAAE,oCAAoC,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,gDAAgD,EAAE,8CAA8C,CAAC,EAAE;IACjT,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,mDAAmD,EAAE,OAAO,EAAE,oCAAoC,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"command-directory.js","sourceRoot":"","sources":["../src/command-directory.ts"],"names":[],"mappings":"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"}
|
package/dist/commands.js
CHANGED
|
@@ -21,7 +21,7 @@ import { superviseCodexV5Credentials, synchronizeCodexV5SelectionOnce } from "./
|
|
|
21
21
|
import { executeCodexAssignmentRetirementLocalDelete } from "./retirement-flow.js";
|
|
22
22
|
import { clearCodexSelection, loadCodexSelection, rememberCodexSelectionProviderAccount, saveCodexSelection } from "./selection.js";
|
|
23
23
|
import { installCodexShortcuts, removeCodexShortcuts } from "./shortcuts.js";
|
|
24
|
-
import { isCodexAccountAvailable, renderCodexAccountDashboard, selectCodexAccount } from "./tui.js";
|
|
24
|
+
import { isCodexAccountAvailable, isCodexSubscriptionExpired, renderCodexAccountDashboard, selectCodexAccount } from "./tui.js";
|
|
25
25
|
import { readCodexShortLivedDeliveryJournal } from "./short-lived-delivery-journal.js";
|
|
26
26
|
import { superviseCodexShortLivedCredentials } from "./credential-supervisor.js";
|
|
27
27
|
export const NO_AVAILABLE_CHATGPT_ACCOUNT_MESSAGE = "当前用户没有绑定可用的 ChatGPT 账号。请前往 OA 系统提交 IT11 工单,申请独享或共享的 ChatGPT 个人账号。";
|
|
@@ -79,10 +79,31 @@ function assertLegacyManagementEnabled(config) {
|
|
|
79
79
|
throw new CodexServiceError("Schema-v2 user-bound credentials are enabled; legacy refresh-token pool management is disabled.", SCHEMA_V2_LEGACY_MANAGEMENT_DISABLED, 409);
|
|
80
80
|
}
|
|
81
81
|
function assignmentCredentialStatus(assignment) {
|
|
82
|
+
if (isCodexSubscriptionExpired(assignment))
|
|
83
|
+
return "EXPIRED";
|
|
82
84
|
if (assignment.deliveryEligible)
|
|
83
85
|
return "AVAILABLE";
|
|
84
86
|
return ["NEEDS_REAUTH", "LOST", "DIVERGED", "COMPROMISED"].includes(assignment.lineageStatus ?? "") ? "NEEDS_REAUTH" : "TEMPORARILY_UNAVAILABLE";
|
|
85
87
|
}
|
|
88
|
+
function assertCodexSubscriptionActive(subscription, label) {
|
|
89
|
+
if (!isCodexSubscriptionExpired(subscription))
|
|
90
|
+
return;
|
|
91
|
+
throw new CodexServiceError(`ChatGPT account ${label} has expired and must be renewed by an administrator.`, "codex_account_expired", 409);
|
|
92
|
+
}
|
|
93
|
+
function subscriptionSummary(subscription) {
|
|
94
|
+
const rawExpiresAt = subscription.subscriptionExpiresAt;
|
|
95
|
+
const expiresAt = typeof rawExpiresAt === "number"
|
|
96
|
+
? rawExpiresAt
|
|
97
|
+
: typeof rawExpiresAt === "string"
|
|
98
|
+
? Date.parse(rawExpiresAt)
|
|
99
|
+
: undefined;
|
|
100
|
+
return {
|
|
101
|
+
...(subscription.subscriptionStatus !== undefined
|
|
102
|
+
? { subscriptionStatus: subscription.subscriptionStatus }
|
|
103
|
+
: {}),
|
|
104
|
+
...(Number.isFinite(expiresAt) ? { subscriptionExpiresAt: expiresAt } : {})
|
|
105
|
+
};
|
|
106
|
+
}
|
|
86
107
|
function v4AssignmentMatchesLocalState(assignment, state) {
|
|
87
108
|
return state?.phase === "INSTALLED" && state.authorityMode === "CLIENT_MANAGED"
|
|
88
109
|
&& assignment.assignmentId === state.assignmentId
|
|
@@ -146,6 +167,14 @@ function formatAdminAccount(account) {
|
|
|
146
167
|
providerAccountId: account.providerAccountId
|
|
147
168
|
})} (${account.id})`;
|
|
148
169
|
}
|
|
170
|
+
function parseSubscriptionRenewalExpiry(value) {
|
|
171
|
+
const normalized = value.trim();
|
|
172
|
+
const expiresAt = Date.parse(normalized);
|
|
173
|
+
if (!/(?:Z|[+-]\d{2}:\d{2})$/iu.test(normalized) || !Number.isFinite(expiresAt)) {
|
|
174
|
+
throw new CodexServiceError("--expires-at must be an ISO-8601 timestamp with a timezone offset.", "invalid_codex_account_renewal");
|
|
175
|
+
}
|
|
176
|
+
return expiresAt;
|
|
177
|
+
}
|
|
149
178
|
async function loadAccountData(deps, options = {}, allowV4Replacement = false) {
|
|
150
179
|
const previous = await loadCodexSelection(deps.config.persistence.configDirectory);
|
|
151
180
|
if (accountTokenPoolV4Enabled(deps.config)) {
|
|
@@ -167,13 +196,16 @@ async function loadAccountData(deps, options = {}, allowV4Replacement = false) {
|
|
|
167
196
|
isDefault: previous?.account.distributionMode === "CLIENT_MANAGED_V4"
|
|
168
197
|
&& previous.account.assignmentId === assignment.assignmentId,
|
|
169
198
|
accessExpiresAt: Date.parse(assignment.credentialExpiresAt),
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
? "
|
|
173
|
-
:
|
|
174
|
-
|| assignment.
|
|
175
|
-
|
|
176
|
-
|
|
199
|
+
...subscriptionSummary(assignment),
|
|
200
|
+
credentialStatus: isCodexSubscriptionExpired(assignment)
|
|
201
|
+
? "EXPIRED"
|
|
202
|
+
: assignment.lineageStatus === "NEEDS_REAUTH"
|
|
203
|
+
|| assignment.refreshTokenHealth === "REJECTED"
|
|
204
|
+
? "NEEDS_REAUTH"
|
|
205
|
+
: locallyManaged || multiDevice && assignment.authorityMode === "CLIENT_MANAGED"
|
|
206
|
+
|| assignment.deliveryEligible
|
|
207
|
+
&& (allowV4Replacement || !replacementCandidate)
|
|
208
|
+
? "AVAILABLE" : "TEMPORARILY_UNAVAILABLE",
|
|
177
209
|
lineageStatus: assignment.authorityMode === "CLIENT_MANAGED" && !locallyManaged
|
|
178
210
|
? multiDevice && assignment.lineageStatus !== "STALE"
|
|
179
211
|
? assignment.lineageStatus : "SYNC_LAGGING"
|
|
@@ -199,6 +231,7 @@ async function loadAccountData(deps, options = {}, allowV4Replacement = false) {
|
|
|
199
231
|
...(assignment.credentialExpiresAt
|
|
200
232
|
? { accessExpiresAt: Date.parse(assignment.credentialExpiresAt) }
|
|
201
233
|
: {}),
|
|
234
|
+
...subscriptionSummary(assignment),
|
|
202
235
|
credentialStatus: assignmentCredentialStatus(assignment),
|
|
203
236
|
lineageStatus: assignment.lineageStatus ?? undefined,
|
|
204
237
|
quota: null
|
|
@@ -398,6 +431,7 @@ async function selectedCredentials(deps, requested, options = {}) {
|
|
|
398
431
|
|| assignment.authorityMode !== "CLIENT_MANAGED") {
|
|
399
432
|
throw new CodexServiceError("The recovered local v4 lineage no longer matches the server assignment.", "lineage_version_conflict", 409);
|
|
400
433
|
}
|
|
434
|
+
assertCodexSubscriptionActive(assignment, assignment.label);
|
|
401
435
|
const selection = await saveCodexSelection(deps.config.persistence.configDirectory, {
|
|
402
436
|
serviceUrl: options.server ?? deps.config.connection.serverUrl,
|
|
403
437
|
allowInsecurePoc: Boolean(options.insecurePoc || options.insecureHttp || deps.config.connection.allowInsecureHttp),
|
|
@@ -425,6 +459,7 @@ async function selectedCredentials(deps, requested, options = {}) {
|
|
|
425
459
|
if (!assignment) {
|
|
426
460
|
throw new CodexServiceError("The selected v5 assignment is no longer active.", "codex_assignment_not_found", 404);
|
|
427
461
|
}
|
|
462
|
+
assertCodexSubscriptionActive(assignment, assignment.label);
|
|
428
463
|
if (assignment.authorityMode !== "CLIENT_MANAGED") {
|
|
429
464
|
return persistInstalledSelection(deps, await installCredentials(deps, staged, serviceConnection(options)));
|
|
430
465
|
}
|
|
@@ -458,6 +493,7 @@ async function selectedCredentials(deps, requested, options = {}) {
|
|
|
458
493
|
|| assignment.authorityMode !== "CLIENT_MANAGED") {
|
|
459
494
|
throw new CodexServiceError("The local v4 lineage no longer matches the server assignment.", "lineage_version_conflict", 409);
|
|
460
495
|
}
|
|
496
|
+
assertCodexSubscriptionActive(assignment, assignment.label);
|
|
461
497
|
const selection = await saveCodexSelection(deps.config.persistence.configDirectory, {
|
|
462
498
|
serviceUrl: options.server ?? deps.config.connection.serverUrl,
|
|
463
499
|
allowInsecurePoc: Boolean(options.insecurePoc || options.insecureHttp || deps.config.connection.allowInsecureHttp),
|
|
@@ -502,6 +538,7 @@ async function selectedCredentials(deps, requested, options = {}) {
|
|
|
502
538
|
if (!assignment) {
|
|
503
539
|
throw new CodexServiceError("The selected schema-v2 credential assignment is no longer active.", "codex_assignment_not_found", 404);
|
|
504
540
|
}
|
|
541
|
+
assertCodexSubscriptionActive(assignment, assignment.label);
|
|
505
542
|
const state = await readManagedCodexLineageState(deps.env);
|
|
506
543
|
const journal = await readCodexShortLivedDeliveryJournal(deps.env);
|
|
507
544
|
const stateMatches = state !== undefined
|
|
@@ -528,6 +565,23 @@ async function selectedCredentials(deps, requested, options = {}) {
|
|
|
528
565
|
if (!selection.account.accountId) {
|
|
529
566
|
throw new CodexServiceError("The saved Codex selection has no provider account.", "invalid_configuration");
|
|
530
567
|
}
|
|
568
|
+
const client = deps.clientFor({
|
|
569
|
+
serverUrl: selection.serviceUrl,
|
|
570
|
+
allowInsecureHttp: selection.allowInsecurePoc
|
|
571
|
+
});
|
|
572
|
+
const accounts = await client.listAccounts();
|
|
573
|
+
const selectedAccount = accounts.accounts.find((account) => account.id === selection.account.id
|
|
574
|
+
|| account.accountId === selection.account.accountId);
|
|
575
|
+
if (!selectedAccount) {
|
|
576
|
+
throw new CodexServiceError("The selected Codex account is no longer available.", "codex_account_not_found", 404);
|
|
577
|
+
}
|
|
578
|
+
assertCodexSubscriptionActive(selectedAccount, selectedAccount.label ?? selectedAccount.id);
|
|
579
|
+
if (!isCodexAccountAvailable(selectedAccount)) {
|
|
580
|
+
throw new CodexServiceError(`ChatGPT account ${selectedAccount.label ?? selectedAccount.id} is unavailable.`, selectedAccount.credentialStatus === "NEEDS_REAUTH"
|
|
581
|
+
? "codex_account_needs_reauth"
|
|
582
|
+
: selectedAccount.credentialStatus === "EXPIRED"
|
|
583
|
+
? "codex_account_expired" : "codex_account_temporarily_unavailable", 409);
|
|
584
|
+
}
|
|
531
585
|
if (!(await codexFileCredentialsMatchAccount(selection.account.accountId, deps.env))) {
|
|
532
586
|
return installCredentials(deps, selection, {
|
|
533
587
|
serverUrl: selection.serviceUrl,
|
|
@@ -555,6 +609,7 @@ async function launchWithSelectedCredentials(deps, selected, launch) {
|
|
|
555
609
|
&& item.authorityMode === "CLIENT_MANAGED");
|
|
556
610
|
if (!assignment)
|
|
557
611
|
throw new CodexServiceError("The selected assignment is not ready for a fenced v5 device session.", "client_credential_assignment_not_found", 404);
|
|
612
|
+
assertCodexSubscriptionActive(assignment, assignment.label);
|
|
558
613
|
return superviseCodexV5Credentials({
|
|
559
614
|
client,
|
|
560
615
|
tenantId: deps.config.connection.tenantId,
|
|
@@ -1071,8 +1126,11 @@ export function registerCodexCommands(program, deps, options = {}) {
|
|
|
1071
1126
|
return;
|
|
1072
1127
|
}
|
|
1073
1128
|
for (const account of result.accounts) {
|
|
1074
|
-
|
|
1129
|
+
const expired = isCodexSubscriptionExpired(account);
|
|
1130
|
+
deps.output.write(`${formatAdminAccount(account)} ${expired ? "EXPIRED" : account.status}/${account.credentialStatus}`
|
|
1075
1131
|
+ ` assignments=${account.activeAssignmentCount ?? 0}`
|
|
1132
|
+
+ `${account.subscriptionExpiresAt
|
|
1133
|
+
? ` subscription-expires=${new Date(account.subscriptionExpiresAt).toISOString()}` : ""}`
|
|
1076
1134
|
+ `${account.lastRefreshErrorCode ? ` error=${account.lastRefreshErrorCode}` : ""}\n`);
|
|
1077
1135
|
}
|
|
1078
1136
|
});
|
|
@@ -1114,6 +1172,36 @@ export function registerCodexCommands(program, deps, options = {}) {
|
|
|
1114
1172
|
if (!ok)
|
|
1115
1173
|
process.exitCode = 1;
|
|
1116
1174
|
});
|
|
1175
|
+
serviceOptions(adminAccounts.command("renew <account>")
|
|
1176
|
+
.description("Renew an expired account by recording a later subscription expiry")
|
|
1177
|
+
.requiredOption("--expires-at <timestamp>", "new ISO-8601 subscription expiry with timezone")
|
|
1178
|
+
.option("--idempotency-key <key>", "reuse a prior account-renewal idempotency key"))
|
|
1179
|
+
.action(async (account, opts, command) => {
|
|
1180
|
+
const expiresAt = parseSubscriptionRenewalExpiry(opts.expiresAt);
|
|
1181
|
+
const now = Date.now();
|
|
1182
|
+
if (expiresAt <= now) {
|
|
1183
|
+
throw new CodexServiceError("The renewed subscription expiry must be in the future.", "invalid_codex_account_renewal");
|
|
1184
|
+
}
|
|
1185
|
+
const client = deps.clientFor(serviceConnection(opts));
|
|
1186
|
+
const resolved = await resolveAdminAccount(client, account);
|
|
1187
|
+
if (resolved.subscriptionExpiresAt != null && expiresAt <= resolved.subscriptionExpiresAt) {
|
|
1188
|
+
throw new CodexServiceError("The renewed subscription expiry must be later than the current expiry.", "invalid_codex_account_renewal", 409);
|
|
1189
|
+
}
|
|
1190
|
+
const result = await client.renewAdminAccount(resolved.id, {
|
|
1191
|
+
schemaVersion: CODEX_DISTRIBUTION_SCHEMA_VERSION,
|
|
1192
|
+
expectedSubscriptionExpiresAt: resolved.subscriptionExpiresAt,
|
|
1193
|
+
subscriptionExpiresAt: expiresAt
|
|
1194
|
+
}, opts.idempotencyKey?.trim() || randomUUID());
|
|
1195
|
+
if (await json(command, deps)) {
|
|
1196
|
+
print(deps.output, success(result));
|
|
1197
|
+
return;
|
|
1198
|
+
}
|
|
1199
|
+
deps.output.write(`${formatAdminAccount(result.account)}: subscription renewed`
|
|
1200
|
+
+ ` previous=${result.previousSubscriptionExpiresAt
|
|
1201
|
+
? new Date(result.previousSubscriptionExpiresAt).toISOString() : "none"}`
|
|
1202
|
+
+ ` expires=${new Date(result.account.subscriptionExpiresAt).toISOString()}`
|
|
1203
|
+
+ ` status=${result.account.status}/${result.account.credentialStatus}\n`);
|
|
1204
|
+
});
|
|
1117
1205
|
const adminAssignments = admin.command("assignments")
|
|
1118
1206
|
.description("List, bind, or unbind tenant Codex account assignments");
|
|
1119
1207
|
serviceOptions(adminAssignments.command("list").description("List tenant Codex account assignments"))
|