Add codex2api as a protocol-first OAuth source
This keeps the existing CPA, SUB2API, and contribution flows intact while introducing codex2api as a separate source that plugs into Step 7 and Step 10 through backend APIs instead of page DOM. The sidepanel now exposes codex2api settings, preserves the built-in local default through placeholder-only UI, and accepts user-provided public admin URLs. Step 7 now treats missing or invalid management secrets as terminal config errors so the flow stops instead of retrying needlessly. Constraint: New source must be additive and must not break existing CPA/SUB2API/contribution paths Rejected: Drive codex2api through admin page button clicks | too brittle against frontend DOM changes Rejected: Reuse contribution mode as a source surface | violates existing panelMode/runtime-mode boundary Confidence: high Scope-risk: moderate Reversibility: clean Directive: Keep codex2api on the protocol path unless its API becomes insufficient; do not add a panel content script without proving the protocol path cannot work Tested: npm test; targeted codex2api/auth retry loops repeated 40 times; full suite repeated 5 times Not-tested: Real browser run against a live codex2api instance with a real Admin Secret and OpenAI authorization
This commit is contained in:
@@ -132,7 +132,15 @@
|
||||
4. Step 1 会直接在 SUB2API 后台生成 OAuth 链接
|
||||
5. Step 10 会把 localhost 回调提交回 SUB2API,并直接创建 OpenAI 账号
|
||||
|
||||
### 方案 C:`Hotmail 账号池`
|
||||
### 方案 C:`Codex2API + QQ / 163 / 163 VIP`
|
||||
|
||||
1. `来源` 选择 `Codex2API`
|
||||
2. 填好 `Codex2API` 后台地址、管理密钥
|
||||
3. `Mail` 与 `邮箱生成` 的配置方式同方案 A
|
||||
4. Step 7 会直接通过 Codex2API 协议 `/api/admin/oauth/generate-auth-url` 生成 OAuth 链接
|
||||
5. Step 10 会把 localhost 回调中的 `code / state` 通过 `/api/admin/oauth/exchange-code` 直接提交给 Codex2API
|
||||
|
||||
### 方案 D:`Hotmail 账号池`
|
||||
|
||||
1. `Mail` 选择 `Hotmail`
|
||||
2. 在 `Hotmail 账号池` 中添加 `邮箱 / Client ID / Refresh Token`
|
||||
@@ -177,6 +185,20 @@ Step 1 和 Step 10 都依赖这个地址。
|
||||
|
||||
插件会在 Step 1 和 Step 10 自动从 `/api/v1/admin/proxies/all` 解析这个代理,并在 OAuth 链接生成、授权码交换和账号创建请求中附带 `proxy_id`。如果名称匹配到多个代理,请改填代理 ID;留空则不会发送 `proxy_id`。
|
||||
|
||||
### `Codex2API`
|
||||
|
||||
当 `来源 = Codex2API` 时,需要配置:
|
||||
|
||||
- `Codex2API`:后台账号管理页地址,默认 `http://localhost:8080/admin/accounts`
|
||||
- `管理密钥`:Codex2API 的 `Admin Secret`
|
||||
|
||||
插件会在:
|
||||
|
||||
- Step 7 调用 `POST /api/admin/oauth/generate-auth-url` 生成授权链接
|
||||
- Step 10 调用 `POST /api/admin/oauth/exchange-code` 完成 localhost callback 的授权码交换并创建账号
|
||||
|
||||
这条来源是协议直连,不依赖 Codex2API 后台页面的“添加账号 / OAuth 授权 / 生成授权链接”按钮 DOM。
|
||||
|
||||
### `Mail`
|
||||
|
||||
支持五种验证码来源:
|
||||
|
||||
Reference in New Issue
Block a user