ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

CC Switch 统一配置管理全解:一条请求如何从 Claude Code 走到备用供应商

CC Switch 统一配置管理全解:一条请求如何从 Claude Code 走到备用供应商 CC Switch 统一配置管理全解一条请求如何从 Claude Code 走到备用供应商【免费下载链接】cc-switchA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build Hermes Agent. Only official website: ccswitch.io项目地址: https://gitcode.com/GitHub_Trending/cc/cc-switch上周五你把 A 供应商的 API Key 复制进 B 供应商的配置文件却忘了改端点地址。Claude Code 一跑就是 401。接着你翻了三个 CLI 工具的配置格式还各不相同。这正是 CC Switch 用统一配置管理解决的痛点它在工具和供应商之间架了一个本地代理从此换供应商只需在界面点一下配置文件彻底不用你碰。一条请求的旅程拦截、改写、记账 ⚡请求进来。Claude Code、Codex 这类 CLI 工具把 base URL 指向 CC Switch 的本地代理代理监听在本地回环端口默认 49152。它用 Rust 和 Axum 实现入口在src-tauri/src/proxy/server.rs。ProxyServer 内部持有一个共享的 ProxyState装着数据库连接、代理配置和当前供应商映射表。选择供应商。请求到达后src-tauri/src/proxy/provider_router.rs里的 ProviderRouter 去 SQLite 的 providers 表查这个应用的当前供应商。如果开了故障转移队列它按队列顺序返回候选列表。所有熔断器状态也挂在路由器上跨请求保持。转发。src-tauri/src/proxy/forwarder.rs的转发器接手重写目标端点把认证占位符换成真实密钥再把客户端的模型名映射成上游真实模型名。协议差异Anthropic 格式和 OpenAI 格式的请求体不同也在这层抹平。响应回来。response_processor 解析响应流src-tauri/src/proxy/usage/模块顺手抽出 token 用量和成本写入本地 SQLite。用量面板的数据来源就是这里。配置怎么同步你在界面点切换改的只是 providers 表里的is_current标记。代理每次请求实时读库立即生效。表结构在src-tauri/src/database/schema.rs核心字段长这样id, app_type, name, settings_config, -- 供应商原始配置 is_current, -- 是否当前供应商 in_failover_queue -- 是否进入故障转移队列三个真正有辨识度的机制熔断器代理里的保险丝 ️它解决什么痛点供应商挂掉后最难受的是请求还在往那儿发一路超时。实现思路。熔断器说白了就是电路里的保险丝。src-tauri/src/proxy/circuit_breaker.rs里每个供应商一个熔断器三态Closed 正常放行Open 跳闸请求直接拒掉HalfOpen 试探放少量请求去探路。连续失败到默认阈值 4 次就跳闸超时后转半开再连成 2 次就恢复。关键代码在src-tauri/src/proxy/circuit_breaker.rs。对日常意味着什么某供应商抽风时你感觉不到连续超时。代理自己把它跳过流量直接走下一家。故障转移队列顺序就是尝试顺序它解决什么痛点你备了好几家但不想在主供应商宕机时手动切。实现思路。把备用供应商加进故障转移队列排好序。路由器选候选时按 P1 → P2 依次尝试跳过已熔断的。切换成功后src-tauri/src/proxy/failover_switch.rs的 FailoverSwitchManager 负责落地更新当前供应商刷新托盘和前端界面。它带一套去重逻辑并发请求不会触发多次切换。对日常意味着什么某家挂了下一个请求自动接力界面上的当前供应商自己会变。用量归因这笔 token 到底算谁的 它解决什么痛点模型别名加路由接管用量统计很容易记串。实现思路。关键在于按实际发往上游的模型名归因。转发器会返回 outbound_model即映射后的真实模型名。用量计算用src-tauri/src/proxy/usage/calculator.rs的 CostCalculator 按单价折算。单价表你可以自己改跟上供应商调价。对日常意味着什么面板上的花费和供应商账单对得上不会把接管流量记成别家的账。落到实际使用切换供应商时你只需要做这一步场景主供应商涨价了你想整体迁到更便宜的一家。操作路径打开 CC Switch 主界面在对应应用下找到供应商卡片点切换。改的只是数据库里那个is_current标记所有指向代理的工具在下一个请求就跟着切。不重启不改文件。新增一个供应商三十秒搞定场景刚拿到一个新供应商的 API Key想立刻用起来。操作路径点添加选预设模板或手填端点加密钥。表单在src/components/providers/AddProviderDialog.tsx各家预设放在src/config/claudeProviderPresets.ts这类文件里。填完密钥进库后续请求由代理自动注入工具端完全感知不到密钥存在。主供应商不稳定队列该怎么排场景白天主力供应商间歇性抽风你想让备用自动顶上。配置要点把备用供应商加入故障转移队列按可靠性排序再打开自动故障转移开关。队列顺序就是失败时的尝试顺序谁在前面谁先上。能扩到哪边界又在哪MCP 与深度链接两个官方扩展入口 MCP 服务器管理在src/components/mcp/后端命令在src-tauri/src/commands/里。mcp_servers 表为每个工具各存一个启用标记一份配置可以分发给 Claude、Codex 等多个工具。深度链接协议 ccswitch:// 支持导入供应商、提示词、技能解析器在src-tauri/src/deeplink/前端先弹确认框再落库。第三方工具可以借此把配置一键推进来。它做不好的地方先说清楚按设计它是本地个人助理不是中心化配置服务器。团队批量分发要外接 WebDAV 同步没有内置的团队后端。工具必须支持自定义 base URL 才能被代理接管不支持改端点的工具不在射程内。Codex 官方登录ChatGPT 账号明确不进故障转移队列因为请求自带账号凭证重试会跨越账号边界provider_router.rs里专门排除了它。另外代理跟应用同生命周期应用关了代理就停工具退回原配置。回到开头那个 401 的场景。现在密钥、端点、故障转移顺序都在同一个数据库里你要做的只是在界面上点一下。统一配置管理的意义就是让改配置文件这件事不再发生。【免费下载链接】cc-switchA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build Hermes Agent. Only official website: ccswitch.io项目地址: https://gitcode.com/GitHub_Trending/cc/cc-switch创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表