mirror of
https://github.com/farion1231/cc-switch.git
synced 2026-07-25 13:45:03 +08:00
398f40dacb
- Remove personal tap requirement from all READMEs (en/zh/ja) - Update v3.15.0 release notes to highlight official cask availability - Add celebration banner noting Homebrew official repository inclusion - Simplify installation to single command: brew install --cask cc-switch
528 lines
26 KiB
Markdown
528 lines
26 KiB
Markdown
# CC Switch v3.15.0
|
||
|
||
> Claude Desktop 升级为一等管理面板(含第三方供应商代理切换)、按角色的模型映射、反向代理大幅强化、Codex OAuth 实时模型发现、用量看板筛选驱动 Hero 卡
|
||
|
||
**[English →](v3.15.0-en.md) | [日本語版 →](v3.15.0-ja.md)**
|
||
|
||
---
|
||
|
||
> [!WARNING]
|
||
>
|
||
> ## 唯一官方渠道声明(请务必阅读)
|
||
>
|
||
> CC Switch 是**完全免费、开源**的桌面应用,**不会向用户收取任何费用**。最近发现多个山寨网站冒用 CC Switch 名义诱导用户付费、收集账号信息,部分已造成实际经济损失。请仅通过下列官方渠道获取本软件:
|
||
>
|
||
> | 类别 | 唯一官方 |
|
||
> | -------- | ------------------------------------------------------------------------------ |
|
||
> | 官网 | **[ccswitch.io](https://ccswitch.io)** |
|
||
> | 源码 | **[github.com/farion1231/cc-switch](https://github.com/farion1231/cc-switch)** |
|
||
> | 下载 | **[GitHub Releases](https://github.com/farion1231/cc-switch/releases)** |
|
||
> | 作者 | **[@farion1231](https://github.com/farion1231)** |
|
||
> | 举报山寨 | **[GitHub Issues](https://github.com/farion1231/cc-switch/issues)** |
|
||
>
|
||
> **任何向你收费、要求充值、或索取登录凭据的"CC Switch"网站或客户端均为假冒**。如果你被诱导支付了费用,请立即停止操作并通过 GitHub Issues 反馈,让我们能尽快下线相关山寨站点。
|
||
|
||
---
|
||
|
||
## Claude Desktop 使用攻略
|
||
|
||
本版本最主打的能力是 **Claude Desktop 一等管理面板**。如果你已经在 Claude Code 里配置了很多供应商,建议先阅读这篇攻略:
|
||
|
||
**[使用 CC Switch,一键配置、管理和切换 Claude Desktop 供应商](../user-manual/zh/2-providers/2.6-claude-desktop.md)**
|
||
|
||
攻略覆盖从 Claude Code 一键导入已有供应商、添加 Claude Desktop 专属供应商、直连 / 模型映射两种模式、本地路由开关显示设置,到恢复 Claude Desktop 官方登录模式的完整流程。
|
||
|
||
---
|
||
|
||
## 概览
|
||
|
||
CC Switch v3.15.0 是 v3.14.x 之后的一次大版本更新,核心聚焦在**把 Claude Desktop 升级为一等管理面板**,并配套提供第三方供应商通过内置代理网关进行切换、按角色的模型映射(sonnet / opus / haiku)+ `supports1m` 长上下文标志、Copilot/Codex OAuth 供应商复用、重新设计的 Claude Code 导入流程、App 切换器对"Claude Code"和"Claude Desktop"的可视化区分,以及 44 个从 Claude Code 预设目录翻译而来的 Claude Desktop 预设。
|
||
|
||
围绕反向代理的可靠性,本版本进行了一次系统性硬化:P0–P3 多轮针对路由 / 生命周期 / 重试 / 故障转移 / 补正器的修补;非 Anthropic 后端启用 HTTPS 连接池复用以降低单请求延迟;Codex 与 OpenAI Responses 缓存命中率提升(`prompt_cache_key` 仅在有真实客户端会话标识时发送、对外请求体与 `tool_call` 参数 / `tool_result` 内容的 JSON key 规范化排序、`session_id` 串入用量记录器);Anthropic ↔ OpenAI `tool_choice` 正确互转;Vertex AI 完整 URL 不再被截断;Gemini 改为从 URI 路径提取模型名;Local Routing 接管检测更精细;可监听 IPv6 地址。Codex OAuth 类 Claude 供应商不再依赖硬编码的模型列表,CC Switch 会按需从 ChatGPT 后端拉取实时模型列表。
|
||
|
||
Claude Code 的模型映射改为基于角色(`sonnet` / `opus` / `haiku`)+ 显示名,并引入 `supports1m` 布尔标志,替代旧版的 `[1M]` 后缀写法,把路由决策与原始模型 ID 解耦。用量看板新增**筛选驱动的 Hero 卡**,展示缓存归一化后的真实总 token 与缓存命中率,并跟随当前日期范围 / 供应商 / 模型筛选实时更新;配套修复了缓存成本语义错误以及每个请求都触发的定价警告噪声。在 OpenAI Responses API usage 解析路径上做了鲁棒化处理,让上游缺失或畸形的 `usage` 不再让 VSCode Claude Code 插件因 `null` 输出崩溃。
|
||
|
||
供应商生态进一步扩张:新增 BytePlus、火山 Agentplan、ClaudeAPI、ClaudeCN、RunAPI、RelaxyCode、PatewayAI、百度千帆 Coding Plan 合作伙伴预设;豆包 Seed 升级为合作伙伴预设;供应商卡片现在会显示"是否支持 Local Routing"的徽章。本版本还修复了大量 Codex 会话、OAuth、Claude Desktop 表单、Linux 段错误、终端 fallback 等场景下的细节问题,并完成了多项 GitHub Actions 依赖升级。
|
||
|
||
**发布日期**:2026-05-16
|
||
|
||
**更新规模**:127 commits | 211 files changed | +17,980 / -2,748 lines
|
||
|
||
---
|
||
|
||
## 重点内容
|
||
|
||
- **Claude Desktop 成为一等管理面板**:通过内置代理网关提供第三方供应商切换、按角色的模型映射(sonnet / opus / haiku)+ `supports1m` 长上下文标志、Copilot/Codex OAuth 供应商复用、44 个从 Claude Code 预设目录翻译过来的预设。注意:20 个 Claude Desktop 预设默认从代理模式切到直连模式,升级后如依赖代理路由请验证连通性
|
||
- **反向代理大幅强化**:P0–P3 生命周期 / 重试 / 故障转移 / 补正器修补;非 Anthropic 后端 HTTPS 连接池复用;Codex/Responses 缓存命中率提升;Anthropic ↔ OpenAI `tool_choice` 正确映射;Vertex AI URL 完整保留;Gemini 路径式模型提取;接管检测细化;支持 IPv6 监听地址
|
||
- **供应商生态扩张**:新增 BytePlus、火山 Agentplan、ClaudeAPI、ClaudeCN、RunAPI、RelaxyCode、PatewayAI、百度千帆 Coding Plan 合作伙伴预设;豆包 Seed 升级合作伙伴;供应商卡片显示"路由代理支持"徽章
|
||
- **按角色的模型映射 + 1M 标志**:基于角色的 sonnet / opus / haiku 路由 + 显示名 + `supports1m` 标志,替代旧的 `[1M]` 后缀
|
||
- **Codex OAuth 实时模型发现**:ChatGPT Codex 类供应商按需从 ChatGPT 后端拉取实时模型列表
|
||
- **用量看板筛选驱动 Hero**:展示缓存归一化的真实总 token 和缓存命中率,跟随当前日期 / 供应商 / 模型筛选实时更新
|
||
- **DeepSeek 工具调用 + 零 usage 最终 delta**:DeepSeek 工具调用一并返回 `reasoning_content` (#2543, 感谢 @bling-yshs);最终 `message_delta` 总是带 usage 块(即便全为 0),严格 Anthropic 客户端不再因 `null` 崩溃 (#2485, 感谢 @Myoontyee)
|
||
- **OpenAI Responses API usage 解析鲁棒化**:让上游缺失或畸形 usage 不再让 VSCode Claude Code 插件崩溃 (#2422, 感谢 @magucas)
|
||
|
||
---
|
||
|
||
## 新功能
|
||
|
||
### Claude Desktop 第三方供应商代理切换
|
||
|
||
CC Switch 第一次把 **Claude Desktop** 作为一等受管面板对待,与 Claude Code / Codex / Gemini / OpenCode / OpenClaw / Hermes 并列。
|
||
|
||
- 新增 Claude Desktop 专属面板,通过 CC Switch 内置代理网关把第三方供应商代理给 Claude Desktop
|
||
- 为需要路由代理的供应商在卡片上呈现"是否支持 Local Routing"的徽章
|
||
- 按角色的模型路由映射,锁定到 `sonnet` / `opus` / `haiku`
|
||
- Copilot / Codex OAuth 供应商在 Claude Desktop 面板中可复用
|
||
- 重新设计的 Claude Code 设置导入流程
|
||
- App 切换器视觉区分"Claude Code"与"Claude Desktop",应用可见性设置中使用"Claude Code"标签
|
||
- 44 个从 Claude Code 预设目录翻译过来的 Claude Desktop 供应商预设
|
||
|
||
### 供应商卡片:路由代理支持徽章
|
||
|
||
Claude Code 与 Codex 面板中的供应商卡片新增"路由代理支持"徽章,方便一眼识别哪些供应商可以通过 Local Routing 提供服务。
|
||
|
||
### Codex OAuth 实时模型列表
|
||
|
||
ChatGPT Codex 类供应商不再依赖硬编码的模型选择,CC Switch 会按需从 ChatGPT 后端拉取**实时模型列表**。
|
||
|
||
### 按角色的模型映射 + 1M 标志
|
||
|
||
Claude Code 模型映射改为基于角色(`sonnet` / `opus` / `haiku`)+ 显示名,并引入 `supports1m` 布尔标志,替代旧版 `[1M]` 后缀,把路由决策与原始模型 ID 解耦。
|
||
|
||
### 用量看板筛选驱动 Hero
|
||
|
||
用量看板的 Hero 摘要现在是筛选驱动的,跟随当前日期范围 / 供应商 / 模型筛选实时变化;展示**缓存归一化后的真实总 token**与缓存命中率,让 Hero 数字与下方明细列表对齐。
|
||
|
||
### 供应商表单"先存上再说"
|
||
|
||
软化供应商表单的输入校验,把非阻塞性的输入问题改为"先存上再说"的提示,不会因为一个无伤大雅的字段问题阻止保存 (#2307, 感谢 @allenxln)。
|
||
|
||
### Universal 供应商复制动作
|
||
|
||
为 universal 供应商在供应商列表中新增"复制"按钮 (#2416, 感谢 @hubutui)。
|
||
|
||
### 持久化 Tauri 窗口状态
|
||
|
||
窗口位置和尺寸现在跨重启保留 (#2377, 感谢 @BillSaul)。
|
||
|
||
### 托盘图标 hover 提示
|
||
|
||
系统托盘图标现在悬浮显示状态提示 (#2417, 感谢 @Coconut-Fish)。
|
||
|
||
### Warp 终端会话启动
|
||
|
||
新增对 Warp 终端的支持,可在 Warp 中执行保存的会话 (#2466, 感谢 @tisonkun)。
|
||
|
||
### DeepSeek 工具调用 `reasoning_content`
|
||
|
||
DeepSeek 工具调用响应现在同时返回 `reasoning_content` 和 `tool_calls`,调用方可以两者一并渲染 (#2543, 感谢 @bling-yshs)。
|
||
|
||
### 百度千帆 Coding Plan(Claude Code)
|
||
|
||
新增百度千帆 Coding Plan 预设 (#2322, 感谢 @jimmyzhuu)。
|
||
|
||
### Compshare Coding Plan 预设(跨应用)
|
||
|
||
Compshare Coding Plan 预设跨 claude / codex / hermes / openclaw 全应用就位。
|
||
|
||
### 合作伙伴供应商预设
|
||
|
||
新增 **BytePlus**、**火山 Agentplan**、**ClaudeAPI**、**ClaudeCN**、**RunAPI**、**RelaxyCode**、**PatewayAI** 合作伙伴预设;**豆包 Seed** 升级合作伙伴预设(端点和链接刷新)。
|
||
|
||
### 44 个 Claude Desktop 供应商预设
|
||
|
||
从 Claude Code 预设目录翻译 44 个供应商预设进入新的 Claude Desktop 面板。
|
||
|
||
---
|
||
|
||
## 变更
|
||
|
||
### 20 个 Claude Desktop 预设默认切到直连模式
|
||
|
||
20 个 Claude Desktop 预设默认从代理模式切到直连模式,降低对不需要代理兼容垫片的用户的上手摩擦。如果你升级前依赖代理路由这些预设的连通性,请升级后验证。
|
||
|
||
### Claude Desktop 操作约束
|
||
|
||
切换 Claude Desktop 供应商会写入 CC Switch 管理的 3P profile,**需要重启 Claude Desktop** 才能生效;代理模式的供应商在使用期间需要 CC Switch 的 Local Routing 保持运行。
|
||
|
||
### Failover / Local Routing 联动校验
|
||
|
||
Failover 控件现在要求目标应用的 Local Routing 接管已启用才能开启;只关代理服务但仍有应用依赖接管状态的情况会被拦下,避免出现"代理关了但应用仍以为接管在跑"的不一致。
|
||
|
||
### 用量统计语义变化
|
||
|
||
用量摘要现在报告**缓存归一化后的真实总 token**和**缓存命中率**。历史 token 与成本数字在数据去重 + 价格重算后**可能会有偏移**——新数字更准,但不会等于旧版给出的数字。
|
||
|
||
### 供应商预设渲染顺序
|
||
|
||
预设列表现在按作者定义的数组顺序渲染,合作伙伴排前面,替代之前的隐式排序。
|
||
|
||
### 模型映射提示文案简化
|
||
|
||
`modelMappingOffHint` 跨中 / 英 / 日重写为动作导向的简洁文案。
|
||
|
||
### CC Switch 品牌官网统一到 ccswitch.io
|
||
|
||
应用内和 README 中所有"官网"引用都统一到 ccswitch.io 作为唯一官方网站;Release notes 模板也呈现 ccswitch.io。
|
||
|
||
### 主题切换简化
|
||
|
||
移除主题切换时的圆形扩散动画,改为即时交叉淡入。
|
||
|
||
### Claude Code App 切换器视觉区分
|
||
|
||
App 切换器视觉上区分"Claude Code"和"Claude Desktop",应用可见性设置中使用"Claude Code"标签。
|
||
|
||
### CI:Claude Review 升级到 Opus 4.7
|
||
|
||
Claude review GitHub Action 升级到 Opus 4.7;调整 prompt 降低 nitpick 噪声;新增 `@claude` 仅 review 的 Code Action;锁定 PR head SHA 用于 checkout;移除 `--max-turns 5` 限制。
|
||
|
||
### GitHub Actions 依赖升级
|
||
|
||
- `actions/checkout` 4 → 6 (#2517)
|
||
- `pnpm/action-setup` 5 → 6 (#2518)
|
||
- `softprops/action-gh-release` 2 → 3 (#2519)
|
||
- `actions/stale` 9 → 10 (#2520)
|
||
|
||
### DeepSeek 预设切到 V4
|
||
|
||
DeepSeek 预设现在出货 V4(flash / pro)+ 刷新定价种子。
|
||
|
||
### Codex 1M 上下文开关在编辑表单隐藏
|
||
|
||
Codex 供应商编辑表单中不再呈现 1M 上下文开关,降低对当前 Codex 部署无实际效果的旋钮密度。
|
||
|
||
### OpenClaudeCode 迁移到 MicuAPI 域名
|
||
|
||
OpenClaudeCode 预设迁移到 MicuAPI 域名;Micu API 链接刷新到 `micuapi.ai`。
|
||
|
||
### CrazyRouter 端点切到 `cn` 子域
|
||
|
||
CrazyRouter 预设端点改用 `cn` 子域。
|
||
|
||
### RelaxyCode 自定义图标
|
||
|
||
RelaxyCode 预设图标改用自定义 `relaxcode.png` 资源。
|
||
|
||
### Kimi For Coding 文档 URL
|
||
|
||
Kimi For Coding 网站 URL 更新到 `/code/docs/` 路径。
|
||
|
||
### SiliconFlow 国际站显示 USD
|
||
|
||
SiliconFlow 国际站的余额显示正确为 USD(之前错显 CNY)。
|
||
|
||
---
|
||
|
||
## 修复
|
||
|
||
### OpenAI Responses API usage 解析鲁棒化
|
||
|
||
强化 `build_anthropic_usage_from_responses()` 与 Responses → Anthropic SSE 翻译器,让上游缺失或畸形的 `usage` 不再在 `message_delta` 中产出 `"usage": null`。这解决了严格 Anthropic 客户端(典型如 VSCode Claude Code 插件)在某些供应商(Codex OAuth、DashScope 的 `compatible-mode/v1/responses` 端点)下崩在 `Cannot read properties of null (reading 'output_tokens')` 的问题。增加 OpenAI 字段名回退(`prompt_tokens` / `completion_tokens`)、null / 空 / 部分对象处理、即使 input/output tokens 缺失也保留缓存 token 字段 (#2422, 感谢 @magucas)。
|
||
|
||
### 代理可靠性补丁(P0–P3)
|
||
|
||
跨 request-forwarder 路径多轮路由 / 生命周期 / 重试 / 补正器修补;抽取共享的 `handle_rectifier_retry_failure` helper 与 `auth_header_value` helper。
|
||
|
||
### 代理:非 Anthropic 后端 HTTPS 连接池复用
|
||
|
||
非 Anthropic 后端复用池化的 HTTPS 连接,不再每个请求开新 TLS session,显著降低单请求延迟。
|
||
|
||
### 代理:转发客户端真实 HTTP 方法
|
||
|
||
不再硬编码 `POST`,按客户端实际的 HTTP 方法转发;上游的非 POST 端点(如 GET `/v1/models`)现在能正常工作。
|
||
|
||
### 代理:每次尝试计数器 + `max_retries` 接线
|
||
|
||
客户端请求计数器移出每次尝试的循环;`AppProxyConfig.max_retries` 现在正确接到请求转发器。
|
||
|
||
### 代理:故障转移判定细化
|
||
|
||
请求转发器中重试 / 不可重试错误的分类更准确。
|
||
|
||
### 代理:接管检测细化
|
||
|
||
接管检测更紧;关接管时走 fallback 恢复,避免遗留状态把供应商卡住。
|
||
|
||
### 代理:Anthropic ↔ OpenAI `tool_choice` 互转
|
||
|
||
格式转换时把 Anthropic 的 `tool_choice` 正确映射到 OpenAI Chat 的嵌套形式。
|
||
|
||
### 代理:Gemini 请求模型从 URI 路径提取
|
||
|
||
Gemini 请求模型从 URI 路径提取(不再从 body 取),转换后的流量上报正确的模型名。
|
||
|
||
### 代理:认证 header 错误处理
|
||
|
||
`get_auth_headers` 现在返回 `Result`,凭据有问题时不再 panic。
|
||
|
||
### 代理:IPv6 监听地址校验
|
||
|
||
代理面板现在接受 IPv6 监听地址。
|
||
|
||
### 代理:Codex / Responses 缓存命中率提升
|
||
|
||
通过稳定缓存键派生提高 Codex 与 OpenAI Responses 请求的缓存命中率;只在客户端确实带了会话标识时才发 `prompt_cache_key`,避免不相关对话被坍缩到同一个 key 上;对外请求体与 `tool_call` 参数 / `tool_result` 内容里的 JSON key 做规范化排序以便前缀缓存能字节级匹配;把 `session_id` 串到 usage 日志记录器做请求关联。
|
||
|
||
### 代理:JSON Schema 下划线字段保留
|
||
|
||
私参过滤现在保留 JSON Schema name map(`properties`、`patternProperties`、`definitions`、`$defs`)内的下划线前缀字段名,用户自定义 schema key(如 `_id`、`_meta`)能正常穿过过滤。
|
||
|
||
### 代理:Read 工具空白页剔除
|
||
|
||
从 `Read` 工具输入中剔除空白页,避免供应商拒绝请求 (#2472, 感谢 @Kwensiu)。
|
||
|
||
### 代理:单请求热路径瘦身
|
||
|
||
缩减每个请求的热路径开销和数据库等待时间。
|
||
|
||
### 代理:接管下展示真实供应商模型名
|
||
|
||
接管运行时,Claude Code 菜单现在暴露真实供应商模型名,不是陈旧的 alias。
|
||
|
||
### 代理:最终 `message_delta` 总是带 usage
|
||
|
||
最终 `message_delta` 事件现在总是包含 usage 块(即使全为 0),严格 Anthropic 客户端不再因为 `null` 崩溃 (#2485, 感谢 @Myoontyee)。
|
||
|
||
### 代理:流式 `message_delta` 去重
|
||
|
||
对某些上游会发两次的 `message_delta` 事件做去重 (#2366, 感谢 @codeasier)。
|
||
|
||
### 代理:工具调用路径的 `reasoning_content` 保留
|
||
|
||
工具调用路径转换时正确保留 scoped `reasoning_content` 字段;Kimi / Moonshot 的 OpenAI Chat 兼容路径保留该字段,通用 OpenAI 兼容请求保持不带 (#2367, 感谢 @codeasier)。
|
||
|
||
### 代理:Vertex AI 完整 URL 保留
|
||
|
||
Vertex AI 的完整 URL 在代理转发时不再被截断 (#2415, 感谢 @xpfo-go)。
|
||
|
||
### 代理:剥离 system content 开头的计费 header
|
||
|
||
某些上游会在 system message 开头插一段计费 header 内容,现在被剥离 (#2350)。
|
||
|
||
### 代理:Claude 鉴权策略从 `ANTHROPIC_*` 环境变量名派生
|
||
|
||
不再依赖不透明的启发式,鉴权策略从实际的 `ANTHROPIC_*` 环境变量名派生。
|
||
|
||
### 第三方 Claude 供应商:禁用模型测试
|
||
|
||
对那些不一致实现 `/v1/models` 的第三方 Claude 网关,关闭模型探测。
|
||
|
||
### Model-Fetch:Anthropic 兼容子路径供应商的 `/models`
|
||
|
||
`/models` 发现现在对 Anthropic 兼容的子路径供应商生效。
|
||
|
||
### Copilot:Claude 模型 ID 对比实时 `/models`
|
||
|
||
Copilot 后端的供应商现在用实时 `/models` 列表来比对 Claude 模型 ID,避免陈旧 ID 不一致。
|
||
|
||
### Codex:会话标题不再吸入 `environment_context`
|
||
|
||
Codex 会话标题提取不再把 `environment_context` 的噪声拉进来 (#2439, 感谢 @eclipsehx)。
|
||
|
||
### Codex:隐藏 subagent 会话
|
||
|
||
Codex subagent 会话从主会话列表隐藏 (#2445, 感谢 @LanternCX)。
|
||
|
||
### Codex 启动期 live import 去重
|
||
|
||
修复 Codex 启动期 live import 路径里的重复导入 bug (#2590, 感谢 @DhruvShankpal)。
|
||
|
||
### Codex 供应商切换不再扰动历史
|
||
|
||
切换激活 Codex 供应商不再改动现有会话历史 (#2349, 感谢 @SaladDay)。
|
||
|
||
### Codex 用量日志措辞修正
|
||
|
||
修正一条 Codex 会话用量的误导性日志 (#2473, 感谢 @tisonkun)。
|
||
|
||
### Claude:`max` effort 通过 env 持久化
|
||
|
||
`max` effort 现在能跨重启正确通过 env 变量持久化 (#2493, 感谢 @makoMakoGo)。
|
||
|
||
### Claude Desktop:模型路由不再要求 `[1M]` 后缀
|
||
|
||
路由匹配不再要求遗留的 `[1M]` 后缀。
|
||
|
||
### Claude Desktop:供应商表单输入失焦
|
||
|
||
修复 Claude Desktop 供应商表单中输入框编辑时丢失焦点的问题。
|
||
|
||
### Claude Desktop:假的"代理停止"状态提示
|
||
|
||
移除代理主动停止时假触发的提示。
|
||
|
||
### Claude Desktop:空工具栏胶囊隐藏
|
||
|
||
当 Claude Desktop 是激活应用时,空的工具栏胶囊会被隐藏。
|
||
|
||
### UI:Monitor 徽章图标居中
|
||
|
||
在 App 切换器里居中 Monitor 徽章图标。
|
||
|
||
### Linux:选择主题触发 segfault
|
||
|
||
防止在 Linux 上选择主题触发 segfault (#2502, 感谢 @definfo)。
|
||
|
||
### 终端:冷启动时 iTerm fallback
|
||
|
||
防止冷启动时把不存在的 iTerm 选为 fallback (#2448, 感谢 @hulkbig)。
|
||
|
||
### 配置:JSON key 字母序排序
|
||
|
||
配置写入现在按字母序排 JSON key,输出确定 (#2469, 感谢 @fuleinist)。
|
||
|
||
### "导入已有"无副作用化
|
||
|
||
"导入已有"操作改为无副作用 (#2429, 感谢 @xwil1)。
|
||
|
||
### Coding Plan:智谱周窗口按重置时间命名
|
||
|
||
修正智谱周窗口的等级名以匹配实际重置时间 (#2420, 感谢 @TuYv)。
|
||
|
||
### DashScope:usage 解析鲁棒化
|
||
|
||
强化 DashScope usage 解析,畸形 payload 不会再让 VSCode Claude Code 插件崩 (#2425, 感谢 @magucas)。
|
||
|
||
### 用量:代理和会话日志去重
|
||
|
||
跨代理和会话日志两个来源的用量记录去重。
|
||
|
||
### 用量:缓存成本语义 + 定价警告风暴
|
||
|
||
修正缓存成本语义,并消除每个请求都触发的噪声定价警告。
|
||
|
||
### CI:前端格式化 + Linux clippy 恢复
|
||
|
||
恢复前端格式化与 Linux clippy 在 CI 中的运行。
|
||
|
||
### 代理测试 helper clippy 警告
|
||
|
||
修复代理测试 helper 中的一个 clippy 警告。
|
||
|
||
---
|
||
|
||
## 移除
|
||
|
||
### Hermes Agent 用量追踪集成
|
||
|
||
移除原本计划在本周期上线的 Hermes Agent 用量追踪集成——上游行为变化让维护这个集成变得不切实际。该集成**从未在任何已发布版本中启用**;开发过程中发现的"零成本渲染" bug 在回滚集成前已经修复。
|
||
|
||
### 主题切换圆形扩散动画
|
||
|
||
移除主题切换时的圆形扩散动画——在性能较弱的合成器上会卡顿,视觉收益有限。
|
||
|
||
### DDSHub 合作伙伴整合
|
||
|
||
移除 DDSHub 作为合作伙伴预设,并删除各 README 中的交叉链接段落。
|
||
|
||
---
|
||
|
||
## 文档
|
||
|
||
### README 赞助商刷新(中 / 英 / 日)
|
||
|
||
新增 BytePlus、ClaudeCN、RunAPI、PatewayAI 赞助商条目;交叉链接 BytePlus 与火山条目;刷新 CrazyRouter 的 $2 额度领取流程、Compshare 描述、Right Code 描述、其他赞助商的 logo 与列表项;把 LionCC logo 抹平到白底;中文 README 的赞助商 logo 切到火山图;在 README 副标题中加入 Hermes Agent。
|
||
|
||
### Release notes 模板
|
||
|
||
Release notes 模板中呈现 `ccswitch.io`。
|
||
|
||
### 品牌官网
|
||
|
||
在各 README 与应用内引用中把 `ccswitch.io` 文档化为唯一官方网站。
|
||
|
||
---
|
||
|
||
## ⚠️ 升级提醒
|
||
|
||
### 20 个 Claude Desktop 预设默认切到直连模式
|
||
|
||
这 20 个预设之前默认通过代理路由,现在默认直连。如果你升级前正好用着其中某个、又依赖代理路由的连通性(比如代理里有特殊补正器或转换层),请验证一下连通性;如有需要,可在 CC Switch 面板里手动切回代理模式。
|
||
|
||
### Claude Desktop 操作约束
|
||
|
||
切换 Claude Desktop 供应商需要**重启 Claude Desktop** 才能生效;代理模式的供应商在使用期间需要 CC Switch 的 Local Routing 保持运行——退出 CC Switch 或停止 Local Routing 会让代理模式的 Claude Desktop 供应商断流。
|
||
|
||
### Failover 需要接管启用
|
||
|
||
启用 Failover 前请先确认目标应用的 Local Routing 接管已开启,否则 Failover 控件会拒绝启动;想关代理服务但仍有应用依赖接管的情况会被拦下,需要先在应用层关掉接管再停代理。
|
||
|
||
### 用量统计数字可能与历史不一致
|
||
|
||
用量摘要现在用缓存归一化的真实总 token + 缓存命中率。历史 token 与成本数字在数据去重 + 价格重算后**可能会有偏移**——新数字更准,但不会等于旧版给出的数字。
|
||
|
||
---
|
||
|
||
## ⚠️ 风险提示
|
||
|
||
本版本在涉及反向代理类功能上沿用 v3.12.3 / v3.13.0 提出的风险提示。
|
||
|
||
**GitHub Copilot 反向代理**:使用 Copilot 的反代路径可能违反 GitHub / Microsoft 服务条款。详情见 [v3.12.3 release notes](v3.12.3-zh.md#️-风险提示)。
|
||
|
||
**Codex OAuth 反向代理**:使用 ChatGPT 订阅的 Codex OAuth 反代可能违反 OpenAI 服务条款,详情见 [v3.13.0 release notes](v3.13.0-zh.md#️-风险提示)。
|
||
|
||
**Claude Desktop 第三方供应商代理切换**:通过 CC Switch 内置代理网关把 Claude Desktop 的请求转到第三方供应商时,第三方供应商对计费、合规与数据留存的约束各不相同,请在使用前阅读目标供应商的服务条款。
|
||
|
||
用户启用上述功能即表示**自行承担所有风险**。CC Switch 不对因使用这些功能而导致的任何账号限制、警告或服务暂停承担责任。
|
||
|
||
---
|
||
|
||
## 下载与安装
|
||
|
||
访问 [Releases](https://github.com/farion1231/cc-switch/releases/latest) 下载对应版本。
|
||
|
||
### 系统要求
|
||
|
||
| 系统 | 最低版本 | 架构 |
|
||
| ------- | -------------------------- | ----------------------------------- |
|
||
| Windows | Windows 10 及以上 | x64 |
|
||
| macOS | macOS 12 (Monterey) 及以上 | Intel (x64) / Apple Silicon (arm64) |
|
||
| Linux | 见下表 | x64 / ARM64 |
|
||
|
||
### Windows
|
||
|
||
| 文件 | 说明 |
|
||
| ---------------------------------------- | ----------------------------------- |
|
||
| `CC-Switch-v3.15.0-Windows.msi` | **推荐** - MSI 安装包,支持自动更新 |
|
||
| `CC-Switch-v3.15.0-Windows-Portable.zip` | 便携版,解压即用,不写入注册表 |
|
||
|
||
### macOS
|
||
|
||
| 文件 | 说明 |
|
||
| -------------------------------- | --------------------------------------------- |
|
||
| `CC-Switch-v3.15.0-macOS.dmg` | **推荐** - DMG 安装包,拖入 Applications 即可 |
|
||
| `CC-Switch-v3.15.0-macOS.zip` | 解压后拖入 Applications,Universal Binary |
|
||
| `CC-Switch-v3.15.0-macOS.tar.gz` | 用于 Homebrew 安装和自动更新 |
|
||
|
||
> macOS 版本已通过 Apple 代码签名和公证,可直接安装使用。
|
||
|
||
### Homebrew(macOS)
|
||
|
||
> 🎉 CC Switch 现已收录至 Homebrew 官方 cask 仓库,无需添加第三方 tap!
|
||
|
||
```bash
|
||
brew install --cask cc-switch
|
||
```
|
||
|
||
更新:
|
||
|
||
```bash
|
||
brew upgrade --cask cc-switch
|
||
```
|
||
|
||
### Linux
|
||
|
||
> Linux 资产同时提供 **x86_64** 和 **ARM64**(`aarch64`)两种架构。资产文件名中包含架构标识,请按你机器的 `uname -m` 输出选择对应版本:
|
||
>
|
||
> - `CC-Switch-v3.15.0-Linux-x86_64.AppImage` / `.deb` / `.rpm`
|
||
> - `CC-Switch-v3.15.0-Linux-arm64.AppImage` / `.deb` / `.rpm`
|
||
|
||
| 发行版 | 推荐格式 | 安装方式 |
|
||
| --------------------------------------- | ----------- | ---------------------------------------------------------------------- |
|
||
| Ubuntu / Debian / Linux Mint / Pop!\_OS | `.deb` | `sudo dpkg -i CC-Switch-*.deb` 或 `sudo apt install ./CC-Switch-*.deb` |
|
||
| Fedora / RHEL / CentOS / Rocky Linux | `.rpm` | `sudo rpm -i CC-Switch-*.rpm` 或 `sudo dnf install ./CC-Switch-*.rpm` |
|
||
| openSUSE | `.rpm` | `sudo zypper install ./CC-Switch-*.rpm` |
|
||
| Arch Linux / Manjaro | `.AppImage` | 添加执行权限后直接运行,或使用 AUR |
|
||
| 其他发行版 / 不确定 | `.AppImage` | `chmod +x CC-Switch-*.AppImage && ./CC-Switch-*.AppImage` |
|