@jsonstudio/rcc 0.89.1804 → 0.89.1960
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 +150 -16
- package/configsamples/config.json +19 -0
- package/configsamples/config.v1.quickstart.sanitized.json +1147 -0
- package/configsamples/provider/deepseek/config.v1.json +59 -0
- package/dist/build-info.js +2 -2
- package/dist/cli/commands/claude.d.ts +4 -0
- package/dist/cli/commands/claude.js +56 -0
- package/dist/cli/commands/claude.js.map +1 -0
- package/dist/cli/commands/clock-admin.d.ts +20 -0
- package/dist/cli/commands/clock-admin.js +234 -0
- package/dist/cli/commands/clock-admin.js.map +1 -0
- package/dist/cli/commands/code.d.ts +0 -42
- package/dist/cli/commands/code.js +4 -414
- package/dist/cli/commands/code.js.map +1 -1
- package/dist/cli/commands/codex.d.ts +4 -0
- package/dist/cli/commands/codex.js +43 -0
- package/dist/cli/commands/codex.js.map +1 -0
- package/dist/cli/commands/examples.js +13 -16
- package/dist/cli/commands/examples.js.map +1 -1
- package/dist/cli/commands/init/basic.d.ts +40 -0
- package/dist/cli/commands/init/basic.js +482 -0
- package/dist/cli/commands/init/basic.js.map +1 -0
- package/dist/cli/commands/init/camoufox.d.ts +7 -0
- package/dist/cli/commands/init/camoufox.js +59 -0
- package/dist/cli/commands/init/camoufox.js.map +1 -0
- package/dist/cli/commands/init/interactive.d.ts +18 -0
- package/dist/cli/commands/init/interactive.js +223 -0
- package/dist/cli/commands/init/interactive.js.map +1 -0
- package/dist/cli/commands/init/shared.d.ts +66 -0
- package/dist/cli/commands/init/shared.js +9 -0
- package/dist/cli/commands/init/shared.js.map +1 -0
- package/dist/cli/commands/init/workflows.d.ts +29 -0
- package/dist/cli/commands/init/workflows.js +341 -0
- package/dist/cli/commands/init/workflows.js.map +1 -0
- package/dist/cli/commands/init.d.ts +2 -26
- package/dist/cli/commands/init.js +224 -53
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/launcher-kernel.d.ts +78 -0
- package/dist/cli/commands/launcher-kernel.js +1194 -0
- package/dist/cli/commands/launcher-kernel.js.map +1 -0
- package/dist/cli/commands/start.js +27 -1
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/status.d.ts +2 -0
- package/dist/cli/commands/status.js +24 -1
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/stop.d.ts +1 -0
- package/dist/cli/commands/stop.js +201 -4
- package/dist/cli/commands/stop.js.map +1 -1
- package/dist/cli/commands/tmux-inject.d.ts +20 -0
- package/dist/cli/commands/tmux-inject.js +212 -0
- package/dist/cli/commands/tmux-inject.js.map +1 -0
- package/dist/cli/config/init-provider-catalog.js +34 -0
- package/dist/cli/config/init-provider-catalog.js.map +1 -1
- package/dist/cli/register/claude-command.d.ts +3 -0
- package/dist/cli/register/claude-command.js +5 -0
- package/dist/cli/register/claude-command.js.map +1 -0
- package/dist/cli/register/clock-admin-command.d.ts +3 -0
- package/dist/cli/register/clock-admin-command.js +5 -0
- package/dist/cli/register/clock-admin-command.js.map +1 -0
- package/dist/cli/register/codex-command.d.ts +3 -0
- package/dist/cli/register/codex-command.js +5 -0
- package/dist/cli/register/codex-command.js.map +1 -0
- package/dist/cli/register/status-config-commands.d.ts +2 -0
- package/dist/cli/register/status-config-commands.js.map +1 -1
- package/dist/cli/register/tmux-inject-command.d.ts +3 -0
- package/dist/cli/register/tmux-inject-command.js +5 -0
- package/dist/cli/register/tmux-inject-command.js.map +1 -0
- package/dist/cli/server/port-utils.d.ts +3 -2
- package/dist/cli/server/port-utils.js +171 -32
- package/dist/cli/server/port-utils.js.map +1 -1
- package/dist/cli.js +45 -6
- package/dist/cli.js.map +1 -1
- package/dist/client/gemini/gemini-protocol-client.js +56 -5
- package/dist/client/gemini/gemini-protocol-client.js.map +1 -1
- package/dist/commands/token-daemon.js +59 -7
- package/dist/commands/token-daemon.js.map +1 -1
- package/dist/commands/validate.js +87 -15
- package/dist/commands/validate.js.map +1 -1
- package/dist/config/routecodex-config-loader.js +31 -2
- package/dist/config/routecodex-config-loader.js.map +1 -1
- package/dist/docs/daemon-admin-ui.html +948 -74
- package/dist/index.d.ts +1 -0
- package/dist/index.js +325 -37
- package/dist/index.js.map +1 -1
- package/dist/manager/quota/provider-quota-center.js +8 -14
- package/dist/manager/quota/provider-quota-center.js.map +1 -1
- package/dist/modules/llmswitch/bridge.d.ts +39 -0
- package/dist/modules/llmswitch/bridge.js +169 -0
- package/dist/modules/llmswitch/bridge.js.map +1 -1
- package/dist/modules/pipeline/utils/colored-logger.js +1 -1
- package/dist/modules/pipeline/utils/colored-logger.js.map +1 -1
- package/dist/providers/auth/deepseek-account-auth.d.ts +39 -0
- package/dist/providers/auth/deepseek-account-auth.js +329 -0
- package/dist/providers/auth/deepseek-account-auth.js.map +1 -0
- package/dist/providers/auth/deepseek-account-token-acquirer.d.ts +15 -0
- package/dist/providers/auth/deepseek-account-token-acquirer.js +644 -0
- package/dist/providers/auth/deepseek-account-token-acquirer.js.map +1 -0
- package/dist/providers/auth/oauth-lifecycle.js +26 -4
- package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
- package/dist/providers/auth/oauth-repair-cooldown.d.ts +5 -0
- package/dist/providers/auth/oauth-repair-cooldown.js +39 -0
- package/dist/providers/auth/oauth-repair-cooldown.js.map +1 -1
- package/dist/providers/auth/token-scanner/index.d.ts +6 -0
- package/dist/providers/auth/token-scanner/index.js +53 -0
- package/dist/providers/auth/token-scanner/index.js.map +1 -1
- package/dist/providers/core/api/provider-config.d.ts +17 -2
- package/dist/providers/core/api/provider-types.d.ts +6 -0
- package/dist/providers/core/api/provider-types.js.map +1 -1
- package/dist/providers/core/config/camoufox-launcher.d.ts +7 -0
- package/dist/providers/core/config/camoufox-launcher.js +68 -21
- package/dist/providers/core/config/camoufox-launcher.js.map +1 -1
- package/dist/providers/core/config/service-profiles.js +19 -0
- package/dist/providers/core/config/service-profiles.js.map +1 -1
- package/dist/providers/core/contracts/deepseek-provider-contract.d.ts +34 -0
- package/dist/providers/core/contracts/deepseek-provider-contract.js +100 -0
- package/dist/providers/core/contracts/deepseek-provider-contract.js.map +1 -0
- package/dist/providers/core/runtime/anthropic-http-provider.d.ts +0 -5
- package/dist/providers/core/runtime/anthropic-http-provider.js +0 -26
- package/dist/providers/core/runtime/anthropic-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/deepseek-http-provider.d.ts +35 -0
- package/dist/providers/core/runtime/deepseek-http-provider.js +373 -0
- package/dist/providers/core/runtime/deepseek-http-provider.js.map +1 -0
- package/dist/providers/core/runtime/deepseek-session-pow.d.ts +55 -0
- package/dist/providers/core/runtime/deepseek-session-pow.js +422 -0
- package/dist/providers/core/runtime/deepseek-session-pow.js.map +1 -0
- package/dist/providers/core/runtime/gemini-cli-http-provider.d.ts +0 -3
- package/dist/providers/core/runtime/gemini-cli-http-provider.js +0 -72
- package/dist/providers/core/runtime/gemini-cli-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/gemini-http-provider.d.ts +1 -7
- package/dist/providers/core/runtime/gemini-http-provider.js +3 -110
- package/dist/providers/core/runtime/gemini-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/http-request-executor.d.ts +1 -0
- package/dist/providers/core/runtime/http-request-executor.js +4 -0
- package/dist/providers/core/runtime/http-request-executor.js.map +1 -1
- package/dist/providers/core/runtime/http-transport-provider.d.ts +10 -4
- package/dist/providers/core/runtime/http-transport-provider.js +308 -82
- package/dist/providers/core/runtime/http-transport-provider.js.map +1 -1
- package/dist/providers/core/runtime/iflow-http-provider.d.ts +0 -4
- package/dist/providers/core/runtime/iflow-http-provider.js +0 -28
- package/dist/providers/core/runtime/iflow-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/provider-factory.d.ts +5 -0
- package/dist/providers/core/runtime/provider-factory.js +59 -6
- package/dist/providers/core/runtime/provider-factory.js.map +1 -1
- package/dist/providers/core/runtime/responses-provider.d.ts +0 -2
- package/dist/providers/core/runtime/responses-provider.js +0 -11
- package/dist/providers/core/runtime/responses-provider.js.map +1 -1
- package/dist/providers/core/strategies/oauth-device-flow.js +16 -1
- package/dist/providers/core/strategies/oauth-device-flow.js.map +1 -1
- package/dist/providers/core/utils/provider-type-utils.js +2 -1
- package/dist/providers/core/utils/provider-type-utils.js.map +1 -1
- package/dist/providers/profile/families/anthropic-profile.d.ts +2 -0
- package/dist/providers/profile/families/anthropic-profile.js +32 -0
- package/dist/providers/profile/families/anthropic-profile.js.map +1 -0
- package/dist/providers/profile/families/antigravity-profile.d.ts +2 -0
- package/dist/providers/profile/families/antigravity-profile.js +109 -0
- package/dist/providers/profile/families/antigravity-profile.js.map +1 -0
- package/dist/providers/profile/families/glm-profile.d.ts +2 -0
- package/dist/providers/profile/families/glm-profile.js +48 -0
- package/dist/providers/profile/families/glm-profile.js.map +1 -0
- package/dist/providers/profile/families/iflow-profile.d.ts +2 -0
- package/dist/providers/profile/families/iflow-profile.js +232 -0
- package/dist/providers/profile/families/iflow-profile.js.map +1 -0
- package/dist/providers/profile/families/qwen-profile.d.ts +2 -0
- package/dist/providers/profile/families/qwen-profile.js +14 -0
- package/dist/providers/profile/families/qwen-profile.js.map +1 -0
- package/dist/providers/profile/families/responses-profile.d.ts +2 -0
- package/dist/providers/profile/families/responses-profile.js +28 -0
- package/dist/providers/profile/families/responses-profile.js.map +1 -0
- package/dist/providers/profile/profile-contracts.d.ts +74 -0
- package/dist/providers/profile/profile-contracts.js +2 -0
- package/dist/providers/profile/profile-contracts.js.map +1 -0
- package/dist/providers/profile/profile-registry.d.ts +3 -0
- package/dist/providers/profile/profile-registry.js +40 -0
- package/dist/providers/profile/profile-registry.js.map +1 -0
- package/dist/providers/profile/provider-directory.d.ts +2 -0
- package/dist/providers/profile/provider-directory.js +55 -0
- package/dist/providers/profile/provider-directory.js.map +1 -0
- package/dist/providers/profile/provider-profile-loader.js +43 -3
- package/dist/providers/profile/provider-profile-loader.js.map +1 -1
- package/dist/providers/profile/provider-profile.d.ts +8 -0
- package/dist/scripts/deepseek/pow-solver.mjs +146 -0
- package/dist/scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm +0 -0
- package/dist/server/handlers/config-admin-handler.js +27 -0
- package/dist/server/handlers/config-admin-handler.js.map +1 -1
- package/dist/server/runtime/http-server/clock-client-registry.d.ts +113 -0
- package/dist/server/runtime/http-server/clock-client-registry.js +592 -0
- package/dist/server/runtime/http-server/clock-client-registry.js.map +1 -0
- package/dist/server/runtime/http-server/clock-client-routes.d.ts +2 -0
- package/dist/server/runtime/http-server/clock-client-routes.js +481 -0
- package/dist/server/runtime/http-server/clock-client-routes.js.map +1 -0
- package/dist/server/runtime/http-server/clock-daemon-inject-config.d.ts +1 -0
- package/dist/server/runtime/http-server/clock-daemon-inject-config.js +11 -0
- package/dist/server/runtime/http-server/clock-daemon-inject-config.js.map +1 -0
- package/dist/server/runtime/http-server/daemon-admin/auth-handler.js +3 -3
- package/dist/server/runtime/http-server/daemon-admin/auth-handler.js.map +1 -1
- package/dist/server/runtime/http-server/daemon-admin/auth-session.d.ts +1 -0
- package/dist/server/runtime/http-server/daemon-admin/auth-session.js +18 -2
- package/dist/server/runtime/http-server/daemon-admin/auth-session.js.map +1 -1
- package/dist/server/runtime/http-server/daemon-admin/control-handler.js +2 -15
- package/dist/server/runtime/http-server/daemon-admin/control-handler.js.map +1 -1
- package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js +65 -7
- package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js.map +1 -1
- package/dist/server/runtime/http-server/executor-metadata.js +37 -1
- package/dist/server/runtime/http-server/executor-metadata.js.map +1 -1
- package/dist/server/runtime/http-server/executor-provider.js +55 -0
- package/dist/server/runtime/http-server/executor-provider.js.map +1 -1
- package/dist/server/runtime/http-server/executor-response.js +49 -1
- package/dist/server/runtime/http-server/executor-response.js.map +1 -1
- package/dist/server/runtime/http-server/index.d.ts +10 -0
- package/dist/server/runtime/http-server/index.js +534 -9
- package/dist/server/runtime/http-server/index.js.map +1 -1
- package/dist/server/runtime/http-server/managed-process-probe.d.ts +6 -0
- package/dist/server/runtime/http-server/managed-process-probe.js +294 -0
- package/dist/server/runtime/http-server/managed-process-probe.js.map +1 -0
- package/dist/server/runtime/http-server/middleware.js +16 -1
- package/dist/server/runtime/http-server/middleware.js.map +1 -1
- package/dist/server/runtime/http-server/provider-utils.js +6 -2
- package/dist/server/runtime/http-server/provider-utils.js.map +1 -1
- package/dist/server/runtime/http-server/request-executor.d.ts +1 -0
- package/dist/server/runtime/http-server/request-executor.js +360 -35
- package/dist/server/runtime/http-server/request-executor.js.map +1 -1
- package/dist/server/runtime/http-server/routes.js +95 -3
- package/dist/server/runtime/http-server/routes.js.map +1 -1
- package/dist/server/runtime/http-server/stats-manager.d.ts +10 -0
- package/dist/server/runtime/http-server/stats-manager.js +119 -16
- package/dist/server/runtime/http-server/stats-manager.js.map +1 -1
- package/dist/server/runtime/http-server/tmux-session-probe.d.ts +3 -0
- package/dist/server/runtime/http-server/tmux-session-probe.js +101 -0
- package/dist/server/runtime/http-server/tmux-session-probe.js.map +1 -0
- package/dist/server/utils/stage-logger.js +21 -5
- package/dist/server/utils/stage-logger.js.map +1 -1
- package/dist/token-daemon/index.js +59 -10
- package/dist/token-daemon/index.js.map +1 -1
- package/dist/token-daemon/server-utils.d.ts +1 -0
- package/dist/token-daemon/server-utils.js +4 -1
- package/dist/token-daemon/server-utils.js.map +1 -1
- package/dist/token-daemon/token-daemon.js +38 -4
- package/dist/token-daemon/token-daemon.js.map +1 -1
- package/dist/token-daemon/token-types.d.ts +1 -1
- package/dist/token-daemon/token-types.js +2 -1
- package/dist/token-daemon/token-types.js.map +1 -1
- package/dist/token-daemon/token-utils.js +5 -2
- package/dist/token-daemon/token-utils.js.map +1 -1
- package/dist/utils/clock-client-token.d.ts +3 -0
- package/dist/utils/clock-client-token.js +54 -0
- package/dist/utils/clock-client-token.js.map +1 -0
- package/dist/utils/managed-server-pids.d.ts +25 -0
- package/dist/utils/managed-server-pids.js +176 -0
- package/dist/utils/managed-server-pids.js.map +1 -0
- package/dist/utils/process-lifecycle-logger.d.ts +8 -0
- package/dist/utils/process-lifecycle-logger.js +151 -0
- package/dist/utils/process-lifecycle-logger.js.map +1 -0
- package/dist/utils/runtime-exit-forensics.d.ts +30 -0
- package/dist/utils/runtime-exit-forensics.js +101 -0
- package/dist/utils/runtime-exit-forensics.js.map +1 -0
- package/dist/utils/shutdown-caller-context.d.ts +22 -0
- package/dist/utils/shutdown-caller-context.js +25 -0
- package/dist/utils/shutdown-caller-context.js.map +1 -0
- package/docs/PROVIDERS_BUILTIN.md +8 -0
- package/docs/PROVIDER_TYPES.md +3 -1
- package/docs/SERVERTOOL_PRE_COMMAND_HOOKS.md +85 -0
- package/docs/clock-client-daemon-design.md +343 -0
- package/docs/daemon-admin-ui.html +948 -74
- package/docs/providers/deepseek-web-provider-design.md +192 -0
- package/docs/routing-instructions.md +4 -1
- package/docs/stop-message-auto.md +4 -3
- package/docs/v2-architecture/PROVIDER-V2-CHANGESET-RELEASE-CHECKLIST.md +80 -0
- package/docs/v2-architecture/PROVIDER-V2-LAYERING-ADR-DRAFT.md +225 -0
- package/docs/v2-architecture/PROVIDER-V2-MIGRATION-MATRIX-DRAFT.md +88 -0
- package/docs/v2-architecture/PROVIDER-V2-PHASED-MIGRATION-ROLLBACK-DRAFT.md +164 -0
- package/docs/v2-architecture/PROVIDER-V2-PROFILE-API-REGISTRY-DRAFT.md +201 -0
- package/docs/v2-architecture/PROVIDER-V2-PROFILE-GEMINI-DRAFT.md +56 -0
- package/docs/v2-architecture/PROVIDER-V2-REFACTOR-OVERVIEW-DRAFT.md +102 -0
- package/docs/v2-architecture/PROVIDER-V2-VERIFICATION-MATRIX-DRAFT.md +163 -0
- package/package.json +8 -7
- package/scripts/copy-compat-assets.mjs +18 -0
- package/scripts/copy-modules-config.mjs +1 -0
- package/scripts/deepseek/pow-solver.mjs +146 -0
- package/scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm +0 -0
- package/scripts/ensure-cli-executable.mjs +53 -10
- package/scripts/install-global.sh +5 -2
- package/scripts/install.sh +1 -1
- package/scripts/monitor/daemon-kill-watch.mjs +184 -0
- package/scripts/monitor/port-kill-watch.sh +74 -0
- package/scripts/quick-install.sh +1 -1
package/README.md
CHANGED
|
@@ -65,37 +65,170 @@ npm uninstall -g @jsonstudio/rcc
|
|
|
65
65
|
|
|
66
66
|
## 使用
|
|
67
67
|
|
|
68
|
-
### 1)
|
|
68
|
+
### 1) 初始化(推荐用 `rcc`)
|
|
69
|
+
|
|
70
|
+
默认配置路径:
|
|
71
|
+
- macOS / Linux:`~/.routecodex/config.json`
|
|
72
|
+
- Windows:`%USERPROFILE%\\.routecodex\\config.json`
|
|
73
|
+
|
|
74
|
+
交互式初始化:
|
|
69
75
|
|
|
70
76
|
```bash
|
|
71
|
-
|
|
72
|
-
routecodex start
|
|
77
|
+
rcc init
|
|
73
78
|
```
|
|
74
79
|
|
|
75
|
-
|
|
80
|
+
非交互(指定 provider + 默认路由):
|
|
76
81
|
|
|
77
82
|
```bash
|
|
78
|
-
rcc init
|
|
79
|
-
rcc start
|
|
83
|
+
rcc init --providers deepseek-web,tab,qwen --default-provider deepseek-web --camoufox --force
|
|
80
84
|
```
|
|
81
85
|
|
|
82
|
-
|
|
83
|
-
-
|
|
84
|
-
-
|
|
86
|
+
说明:
|
|
87
|
+
- `--providers` 使用 init 内置 provider id(见下文鉴权表)。
|
|
88
|
+
- `--camoufox` 会显式触发 Camoufox 环境准备(即使当前 provider 不强依赖)。
|
|
89
|
+
- `--force` 会先备份旧配置到 `config.json.bak*` 再重写。
|
|
90
|
+
|
|
91
|
+
如果你使用 dev CLI,把 `rcc` 替换成 `routecodex` 即可。
|
|
92
|
+
|
|
93
|
+
### 2) Camoufox 初始化(macOS / Windows)
|
|
94
|
+
|
|
95
|
+
`rcc init --camoufox` 会自动检查/安装 Camoufox。你也可以先手工准备:
|
|
96
|
+
|
|
97
|
+
macOS:
|
|
85
98
|
|
|
86
|
-
|
|
99
|
+
```bash
|
|
100
|
+
python3 -m pip install --user -U camoufox
|
|
101
|
+
python3 -m camoufox path
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Windows (PowerShell):
|
|
105
|
+
|
|
106
|
+
```powershell
|
|
107
|
+
py -3 -m pip install --user -U camoufox
|
|
108
|
+
py -3 -m camoufox path
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
可选环境变量(当 Python 不在默认命令路径时):
|
|
112
|
+
- `ROUTECODEX_PYTHON` / `RCC_PYTHON`:指定 Python 可执行文件路径
|
|
113
|
+
- `ROUTECODEX_CAMOUFOX_AUTO_INSTALL=0`:关闭自动安装(默认开启)
|
|
114
|
+
|
|
115
|
+
验证 Camoufox profile + 指纹是否可打开:
|
|
87
116
|
|
|
88
|
-
|
|
117
|
+
```bash
|
|
118
|
+
rcc camoufox antigravity-oauth-1-alias1.json
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### 3) macOS / Windows 环境变量写法
|
|
122
|
+
|
|
123
|
+
macOS/Linux (zsh/bash):
|
|
89
124
|
|
|
90
125
|
```bash
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
126
|
+
export OPENAI_API_KEY="your_openai_key"
|
|
127
|
+
export TAB_API_KEY="your_tab_key"
|
|
128
|
+
export GLM_API_KEY="your_glm_key"
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
Windows PowerShell(当前会话):
|
|
132
|
+
|
|
133
|
+
```powershell
|
|
134
|
+
$env:OPENAI_API_KEY="your_openai_key"
|
|
135
|
+
$env:TAB_API_KEY="your_tab_key"
|
|
136
|
+
$env:GLM_API_KEY="your_glm_key"
|
|
94
137
|
```
|
|
95
138
|
|
|
96
|
-
|
|
139
|
+
Windows PowerShell(持久化):
|
|
140
|
+
|
|
141
|
+
```powershell
|
|
142
|
+
setx OPENAI_API_KEY "your_openai_key"
|
|
143
|
+
setx TAB_API_KEY "your_tab_key"
|
|
144
|
+
setx GLM_API_KEY "your_glm_key"
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
API key 类 provider 的常用环境变量(按 init 模板):
|
|
148
|
+
- `OPENAI_API_KEY`
|
|
149
|
+
- `TAB_API_KEY`
|
|
150
|
+
- `GLM_API_KEY`
|
|
151
|
+
- `KIMI_API_KEY`
|
|
152
|
+
- `MODELSCOPE_API_KEY`
|
|
153
|
+
- `MIMO_API_KEY`
|
|
154
|
+
|
|
155
|
+
### 4) 按 init 内置 provider 配置鉴权
|
|
156
|
+
|
|
157
|
+
下表对应 `rcc init --list-providers` 的内置模板:
|
|
158
|
+
|
|
159
|
+
| Provider ID | 默认 auth 类型 | 你需要做什么 |
|
|
160
|
+
|------|------|------|
|
|
161
|
+
| `openai` | `apikey` | 设置 `OPENAI_API_KEY` |
|
|
162
|
+
| `tab` | `apikey` (responses) | 设置 `TAB_API_KEY` |
|
|
163
|
+
| `deepseek-web` | `deepseek-account` (`tokenFile` entries) | 准备 `~/.routecodex/auth/deepseek-account-*.json` |
|
|
164
|
+
| `glm` | `apikey` | 设置 `GLM_API_KEY` |
|
|
165
|
+
| `glm-anthropic` | `apikey` (`/v1/messages`) | 设置 `GLM_API_KEY` |
|
|
166
|
+
| `kimi` | `apikey` | 设置 `KIMI_API_KEY` |
|
|
167
|
+
| `modelscope` | `apikey` | 设置 `MODELSCOPE_API_KEY` |
|
|
168
|
+
| `lmstudio` | `apikey` (本地) | 通常可留空或填本地网关 key |
|
|
169
|
+
| `qwen` | `qwen-oauth` (`tokenFile=default`) | 先跑 OAuth 生成 token |
|
|
170
|
+
| `iflow` | `iflow-cookie` | 准备 `~/.routecodex/auth/iflow-work.cookie` |
|
|
171
|
+
| `mimo` | `apikey` | 设置 `MIMO_API_KEY` |
|
|
172
|
+
| `gemini-cli` | `gemini-cli-oauth` (`entries[].tokenFile`) | 先跑 OAuth 生成 token |
|
|
173
|
+
| `antigravity` | `antigravity-oauth` (`entries[].tokenFile`) | 先跑 OAuth 生成 token |
|
|
174
|
+
|
|
175
|
+
OAuth 认证命令(常用):
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
rcc oauth qwen-auto qwen
|
|
179
|
+
rcc oauth gemini-auto gemini-cli
|
|
180
|
+
rcc oauth antigravity-auto antigravity
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
DeepSeek 单文件凭据 + token(同一文件)示例:
|
|
184
|
+
|
|
185
|
+
```json
|
|
186
|
+
{
|
|
187
|
+
"mobile": "13800000000",
|
|
188
|
+
"password": "your_password",
|
|
189
|
+
"access_token": ""
|
|
190
|
+
}
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
放在 `~/.routecodex/auth/deepseek-account-1.json` 后,启动时会自动登录并回填 `access_token`。
|
|
194
|
+
|
|
195
|
+
### 5) 脱敏快速配置(来自当前线上配置)
|
|
196
|
+
|
|
197
|
+
已提供脱敏模板:
|
|
198
|
+
- `configsamples/config.v1.quickstart.sanitized.json`
|
|
199
|
+
|
|
200
|
+
快速使用:
|
|
201
|
+
|
|
202
|
+
```bash
|
|
203
|
+
cp configsamples/config.v1.quickstart.sanitized.json ~/.routecodex/config.v1.json
|
|
204
|
+
rcc start --config ~/.routecodex/config.v1.json
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
此模板已经脱敏(API key、token、账号别名),保留了可直接复用的路由结构和 provider 组合。
|
|
208
|
+
|
|
209
|
+
#### 5.1) 用 `rcc init` 把本地 v1 配置转换为 v2
|
|
210
|
+
|
|
211
|
+
如果你要把 `configsamples/config.v1.quickstart.sanitized.json` 本地化成 v2(provider 分文件 + `virtualrouterMode: v2`),推荐直接用:
|
|
212
|
+
|
|
213
|
+
```bash
|
|
214
|
+
mkdir -p ~/.routecodex
|
|
215
|
+
cp configsamples/config.v1.quickstart.sanitized.json ~/.routecodex/config.json
|
|
216
|
+
rcc init --config ~/.routecodex/config.json --force
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
说明:
|
|
220
|
+
- `rcc init` 会检测到这是 v1 配置并执行迁移。
|
|
221
|
+
- `--force` 会跳过交互确认,适合脚本化/CI。
|
|
222
|
+
- 迁移后会生成 `~/.routecodex/provider/<providerId>/config.v2.json`,并备份原始 v1 文件为 `config.json.bak*`。
|
|
223
|
+
|
|
224
|
+
可选检查:
|
|
225
|
+
|
|
226
|
+
```bash
|
|
227
|
+
rcc init --list-current-providers
|
|
228
|
+
rcc start --config ~/.routecodex/config.json
|
|
229
|
+
```
|
|
97
230
|
|
|
98
|
-
###
|
|
231
|
+
### 6) 调用 API(示例)
|
|
99
232
|
|
|
100
233
|
健康检查:
|
|
101
234
|
|
|
@@ -173,6 +306,7 @@ curl http://127.0.0.1:5555/v1/messages \
|
|
|
173
306
|
## 参考配置
|
|
174
307
|
|
|
175
308
|
- `configsamples/config.reference.json`
|
|
309
|
+
- `configsamples/config.v1.quickstart.sanitized.json`
|
|
176
310
|
- `configsamples/provider/*/config.v1.json`
|
|
177
311
|
|
|
178
312
|
## 相关链接
|
|
@@ -366,6 +366,25 @@
|
|
|
366
366
|
"targets": ["crs.gpt-5.1-codex:200", "tab.gpt-5.2-codex:100"]
|
|
367
367
|
}
|
|
368
368
|
],
|
|
369
|
+
"multimodal": [
|
|
370
|
+
{
|
|
371
|
+
"id": "multimodal-primary",
|
|
372
|
+
"mode": "priority",
|
|
373
|
+
"priority": 200,
|
|
374
|
+
"targets": [
|
|
375
|
+
"iflow.kimi-k2.5"
|
|
376
|
+
]
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
"id": "multimodal-backup",
|
|
380
|
+
"mode": "priority",
|
|
381
|
+
"priority": 100,
|
|
382
|
+
"backup": true,
|
|
383
|
+
"targets": [
|
|
384
|
+
"tab.gpt-5.2-codex"
|
|
385
|
+
]
|
|
386
|
+
}
|
|
387
|
+
],
|
|
369
388
|
"vision": [
|
|
370
389
|
{
|
|
371
390
|
"id": "vision-primary",
|