github farion1231/cc-switch v4.0.14
CC Switch v4.0.14

5 hours ago

CC Switch v4.0.14

本版本为用量统计面板增加了大量自定义选项:用量页新增「设置」页签,金额可以换成人民币、欧元、日元等币种显示(汇率可以自己改),侧栏「今日」可以选显示金额、Token、请求数或缓存命中率,请求日志可以选显示哪些列,并新增缓存写入、命中率、总耗时和状态码四列;再打开用量页时,会回到上次看的页签、时间范围和图表指标。Claude Code 卡片上的「打开终端」会先说明这个目录是做什么用的,并记住最近用过的目录。还修复了 Codex 经路由连接 Gemini 时第二轮工具调用报 400、路由模式下 Codex 的重试次数设置失效、超过 128 MiB 的 Skills 仓库装不上、含大写字母的自定义定价不生效、Hermes 开发版一直提示有新版本、故障转移队列调整顺序没反应等问题。4.0 完整的更新内容请见 v4.0 发布说明。

English → | 日本語版 →


新增

用量金额可以换成其他币种显示。 用量页原来的「定价」页签改为「设置」,上面是新的「显示」区,下面仍是定价配置。在「币种」里可以选美元(默认)、人民币、欧元、日元、新台币、土耳其里拉,「汇率」预填了参考值,可以自己改。费用仍按美元记录,只在显示时换算,悬停可以看到美元原值;图表先换算再画,坐标轴刻度仍是整数。换算后的金额最多保留两位小数(日元少两位),金额较大时按千分位分隔。

侧栏「今日」可以选显示什么。 侧栏用量那一行原来固定显示今日金额,现在可以在「侧栏「今日」」里选金额、Token、请求数、缓存命中率,最多选两项,也可以都不选、不显示。名字不再被后面的数字挤窄;选了两项时,这一行只显示两个数字,完整说明放在悬停提示里。

请求日志可以选显示哪些列。 在「请求日志的列」里勾选要显示的列,新增四列,默认都不显示:

  • 缓存写入:写进缓存的 Token 数。Codex、Gemini、Grok 不报告这个数,显示「—」并在悬停时说明。
  • 命中率:每条请求的缓存命中率(#7298),算法和总命中率相同;向下取到一位小数,接近全中也不会显示成 100%。
  • 总耗时:整个流式响应的时长;从会话日志估算的值前面带「≈」。
  • 状态码:显示这一列时,时间旁边的错误标记就不再显示。

列多时表格可以左右滚动,不再把每一列挤窄。

用量页记住上次的视图。 再打开用量页时,会回到上次看的页签、预设时间范围和趋势图、热力图的指标。自定义的日期范围不会覆盖记住的预设范围,应用、供应商、模型筛选不保留。

「打开终端」先说明再选目录。 以前点 Claude Code 卡片上的「打开终端」会直接弹出系统的选目录窗口,看不出这个目录是做什么的。现在先弹出「在哪个目录打开终端?」,说明会在你选的目录里打开终端,并用这张卡的配置启动 Claude Code,一般选项目文件夹。上次成功打开的目录会自动填上,「最近用过」里最多列出五个目录,点一下就能选,也可以移除。卡片有自己的地址和 Key 时,还会说明这个终端是隔离的:之后在 CC Switch 里切换供应商不会影响它。

定价: 新增 Gemini 4 Argon 的内置价格(#8356),是 2026-11-30 前的介绍价;已经记成 0 的历史请求会在启动时重新计价。

改进

Claude Desktop 的 1M 模型只显示一行。 Desktop 以前会把每个声明了 1M 的模型列两次:普通的一行,加一行「1M 上下文」。现在只留普通的一行,选中后仍按 1M 窗口用。路由和聚合模式下,下次启动 CC Switch 或切换模式后生效;直连模式下,下次切换供应商或保存这张卡后生效。

路由时不能删除直连那家,现在会说明原因。 路由或聚合模式下,直连指向的那张卡不能删除,因为退出路由后要回到它(#8277)。以前提示写的是「正在用的这家不能删除」,而路由页上这张卡并没有标成正在使用,让人摸不着头脑。现在提示会写明原因,以及先在直连页对别家点「回到直连并使用」再删除。

连接上游失败时,日志写明具体原因。 以前路由转发失败只记「error sending request」这类笼统的话,分不出是域名解析、连接被拒、TLS 还是连接被重置(#8416)。现在日志会带上底层原因,方便判断多家同时失败是不是同一条网络出了问题;记录前会先去掉 URL,查询参数里的 Key 不会进日志。

预设: 硅基流动国内站的 Claude Code、Claude Desktop、Hermes、OpenClaw 预设改用 DeepSeek-V4-Flash(原来的 MiniMax-M2.5 已下线);TokenFactory 在中文界面显示为「词元工厂」;Pi 换成 pi.dev 新的三色图标。

修复

  • Codex 经路由连接 Gemini 时,第二轮工具调用报 400「missing a thought_signature」(#8336)。Gemini 会在工具调用里返回一个签名,并要求下一轮原样带回,CC Switch 的格式转换把它丢了。现在会保存并带回;CC Switch 在一轮工具调用中途重启、签名丢失时,按 Gemini 文档的做法补一个占位签名,不再报错。其他上游不受影响。
  • 路由模式下,Codex 配置里的重试次数不生效(#8265)。进入路由后,供应商设置的 stream_max_retries、request_max_retries、stream_idle_timeout_ms 会被丢掉,比如设成 50 次的重试又回到 Codex 默认的 5 次。现在会保留。
  • 超过 128 MiB 的 Skills 仓库装不上,还被误报成解压超限(#8421)。仓库压缩包以前整个读进内存,上限 128 MiB;现在边下载边写进临时文件,上限提高到和解压一致的 512 MiB,下载超限时单独提示。
  • 含大写字母的自定义模型定价不生效,成本一直是 0(#8413)。例如按界面显示名填的 GLM-5.3-Flash-EXL3。现在查价不区分大小写,新请求和保存后的历史回填都能算上。
  • OpenCode 会话中工具调用多的轮次,估算速度偏低(#8402)。耗时以前算到工具执行完,现在算到模型输出结束。
  • OpenCode 一键导入的两个问题:导入成功后卡片的「已添加」状态不及时更新(#8380);名字是中文的供应商导入后在编辑页保存不了(#8379)。
  • Hermes 开发版一直提示有新版本(#8394)。0.22.1+238.g<sha> 这类开发版版本号以前被当成正式版 0.22.1 去比较,hermes update 之后提示也不消失。现在开发版不再提示。
  • WSL 里装了但运行报错的工具,被显示成「未安装」(#8167)。以前输出里只要有「not found」就判为未安装,例如「module not found」;现在只认 shell 的「找不到命令」。
  • Codex 父会话里有一条乱码记录时,子代理用量一直统计不上(#8360)。现在跳过这条记录,其余正常统计。
  • 故障转移队列调整顺序后没变化,却提示成功(#8297)。队列里有两家排序值相同,或者新加的供应商没有排序值时,上移下移会写成相同的值。现在调整后的顺序一定会生效。
  • Windows 上同一个项目因为盘符大小写不同,在会话管理里被拆成两组(#8233)。例如 D:\projects\demo 和 d:\projects\demo。现在会合成一组。
  • OpenClaw 在配置 JSON 里改了请求头后,「发送 User-Agent」开关不跟着变(#8256)。

升级说明

数据库结构没有变化,仍然是 20。

  • 用量页的「定价」页签移到了「设置」里;币种、侧栏「今日」和请求日志列的设置只保存在本机,不随云同步。
  • Claude Desktop 直连模式下,1M 模型的两行要等下次切换供应商或保存这张卡后才合成一行。
  • Gemini 4 Argon 的内置价格是 2026-11-30 前的介绍价,之后的正式价会在下一次价格更新里调整。

致谢

感谢 @Vincebye(含大写字母的自定义定价)、@xianshang33(OpenCode 速度估算)、@HaiYangBG1(OpenCode 一键导入的两个问题)、@Tsuki-hash(Hermes 开发版误报新版本)、@Adonis0123(WSL 工具检测)、@Carl723000(Codex 父会话乱码记录)、@Besty0728(Gemini 4 Argon 定价)的贡献。

感谢 @maq233、@CR547、@zqbake、@Hybangbang、@zhang3776813、@zhangyudi-01、@zsp1029、@hulkbig、@tarnish233 报告问题、提供复现信息和修复思路。

完整的技术细节请见 CHANGELOG。

Don't miss a new cc-switch release

NewReleases is sending notifications on new releases.