Files
wehub-resource-sync 64ed910d3f
CI / Backend Checks (push) Has been cancelled
CI / Frontend Checks (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 11:57:20 +08:00

23 KiB
Raw Permalink Blame History

CC Switch v3.14.0

Hermes Agent 成为第 6 个受管应用、Claude Opus 4.7 全面接入、Gemini Native API 代理、Local Routing 统一重命名、应用级窗口控件

English → | 日本語版 →


概览

CC Switch v3.14.0 是一次大版本更新,核心焦点是把 Hermes Agent 作为第 6 个一等受管应用接入 CC Switch,并把 Claude Opus 4.7 铺设到全部聚合器与 Bedrock 预设矩阵。Hermes 支持覆盖数据库 v9 → v10 迁移、完整的 Rust 命令面、基于 YAML 的 ~/.hermes/config.yaml 读写(含原子备份)、MCP 同步、Skills 同步、SQLite + JSONL 会话管理,以及专属的前端面板和 Memory 编辑面板;与 Hermes Agent 0.10.0 schema 对齐的四种协议(chat_completionsanthropic_messagescodex_responsesbedrock_converse)全部可选。用户自行维护的 providers: dict 条目以只读卡片形式呈现,深度 YAML 配置则直接委托给 Hermes Web UI。

除了 Hermes,本次还新增了 Gemini Native API 代理api_format = "gemini_native"),让代理可以把请求直接转发到 Google 的 generateContent 端点,完整支持流式、schema 转换和 shadow 请求;把老的 "Local Proxy Takeover" 在三语 UI / README / 文档中统一重命名为 Local Routing;新增 应用级窗口控件,在 Linux Wayland 等合成器绘制按钮失灵的场景下可选让 CC Switch 自绘最小化 / 最大化 / 关闭按钮;并在本版本发布前额外合入了从工具栏直接启动 hermes dashboard、LemonData 全应用预设、DDSHub Codex 端点以及若干 Hermes 健康检查与 Usage 模态框的修复。

会话侧通过 @tanstack/react-virtual 虚拟化会话列表,让上千条记录的长会话也能流畅滚动,长消息默认折叠;Usage 面板新增日期范围选择器(今日 / 1d / 7d / 14d / 30d + 自定义日期时间)和翻页输入;Stream Check 错误分类以彩色 toast 呈现,默认探测模型重新梳理,"模型不存在"响应被单独识别;并新增在 Local Routing 激活时阻止切换到官方供应商的保护,以免官方流量被引入本地代理造成账号风险。Pricing 数据库 v8 → v9 重新种入约 50 个新模型条目(包括 Claude 4.7、Opus 4.7 Adaptive Thinking、Grok 4、Qwen 3.5/3.6、MiniMax M2.5/M2.7、Doubao Seed 2.0 系列、GLM-5/5.1 等),并修正了多项陈旧价格。

发布日期2026-04-21

更新规模100 commits | 219 files changed | +20,548 / -3,569 lines


重点内容

  • Hermes Agent 支持(第 6 个受管应用):数据库 v9 → v10 迁移、完整 Rust 命令面、YAML 读写带原子备份、MCP 同步、Skills 同步、SQLite + JSONL 会话管理、专属前端面板、四种 API 协议(chat_completions / anthropic_messages / codex_responses / bedrock_converse
  • Claude Opus 4.7 全面接入:自适应思维白名单、按百万 token 定价种子、Bedrock SKUanthropic.claude-opus-4-7 / global.anthropic.claude-opus-4-7,丢弃老 -v1 后缀),全部聚合器 / Bedrock 预设升级为默认 Opus 模型
  • Claude max 推理力度:推理下拉从 high 升级到 max
  • Gemini Native API 代理:新增 api_format = "gemini_native",代理可直达 Google generateContent,完整流式 / schema 转换 / shadow 请求
  • GitHub Copilot 企业版:为 Copilot 型 Claude 供应商新增 GHES 认证与端点配置
  • Copilot 次数消耗深度优化:转发前主动剥离 thinking 块、tool_result 消息归类修正、subagent 检测、x-interaction-id 合并计费、orphan tool_result 清理、默认启用 warmup 降级 —— 系统性降低 premium 交互消耗
  • 会话列表虚拟化:长会话流畅滚动,长消息默认折叠降低文字布局成本
  • Codex / OpenClaw 会话标题提取:自动抽取有意义标题,两行显示,剥离 OpenClaw message_id 尾噪声
  • Usage 日期范围选择器Today / 1d / 7d / 14d / 30d 预设 + 自定义日期时间日历;分页列表支持页码跳转输入
  • Stream Check 错误分类:错误按类别分色 toast;默认探测模型刷新;单独识别 "model not found"
  • Local Routing 激活时阻止官方供应商切换:官方流量走本地代理有账号暂停风险,强制拦截并 toast 警告
  • Pricing 数据库刷新(v8 → v9:新增 ~50 条模型条目并修正陈旧价格
  • 应用级窗口控件:可选让 CC Switch 自绘 min/max/close,显著改善 Linux Wayland 体验
  • Hermes 接入统一 Skills 管理Skills 安装 / 启用 / 过滤现覆盖 Hermes
  • Hermes / OpenClaw 配置目录自定义:在设置里指定 ~/.hermes/config.yamlopenclaw.json 的自定义位置
  • 从工具栏启动 Hermes Dashboard:Web UI 探测失败时,点击可在用户首选终端中启动 hermes dashboard
  • 新合作伙伴预设LemonData 覆盖全部 6 个应用;DDSHub 新增 Codex 端点;StepFun Step Plan

新功能

Hermes Agent 支持(第 6 个受管应用)

CC Switch 首次支持 Hermes Agent 作为一等受管应用,与 Claude / Codex / Gemini / OpenCode / OpenClaw 并列。

  • 数据库迁移 v9 → v10:为 mcp_serversskills 表新增 enabled_hermes 列(DEFAULT 0 自动迁移,无数据丢失)
  • YAML 配置读写~/.hermes/config.yaml 读写带原子备份;tests/hermes_roundtrip.rs 守护不损坏不相关键和 OAuth MCP auth
  • 四种 API 协议:与 Hermes Agent 0.10.0 对齐的 chat_completions / anthropic_messages / codex_responses / bedrock_converse;新 deeplink 默认为 chat_completions
  • 用户 providers: dict 只读呈现:用户在 YAML 里手写的 providers 条目在 CC Switch 中以只读卡片展示,深度配置跳转到 Hermes Web UI
  • 累加式切换:与 Claude / Codex 的"覆盖式"切换不同,Hermes 所有供应商共存于同一 YAML

Hermes Memory 面板

  • 新增 Memory 面板直接编辑 MEMORY.md / USER.md,带启用开关、字符数限制和保存流
  • 替换 Hermes 的 Prompts 入口

Hermes 供应商预设(约 50 个)

  • 覆盖 Nous Research、胜算云、OpenRouter、DeepSeek、Together AI、StepFun、智谱 GLM、百炼、Kimi、MiniMax、豆包、百灵、魔搭、KAT-Coder、PackyCode、Cubence、AIGoCode、RightCode、AICodeMirror、AICoding、CrazyRouter、SSSAiCode、Micu、CTok.ai、DDSHub、E-FlowCode、LionCCAPI、PIPELLM、Compshare、SiliconFlow、AiHubMix、DMXAPI、TheRouter、Novita、Nvidia、小米 MiMo

从工具栏启动 Hermes Dashboard

  • Hermes Web UI 探测失败时,工具栏按钮改为弹出确认框,提供在用户首选终端里运行 hermes dashboard
  • 通过临时 bash / batch 脚本启动,hermes dashboard 就绪后自动打开浏览器,无需轮询
  • Memory 面板和 Health banner 保留原有 toast 行为
  • 顺便修正了离线 toast 里过时的 hermes web 提示(正确命令是 hermes dashboard
  • Linux 终端探测改为先 which 后 stat,提升兼容性

Claude Opus 4.7 支持

  • 新增 Claude Opus 4.7 及其自适应思维白名单、按百万 token 定价种子、Bedrock SKUanthropic.claude-opus-4-7 / global.anthropic.claude-opus-4-7,丢弃老 -v1 后缀)
  • 全部聚合器 / Bedrock 预设升级为默认 Opus 模型

Claude max 推理力度

  • Claude 推理下拉从 high 升级到 max,解锁更强的思考容量

Gemini Native API 代理

  • 新增 api_format = "gemini_native",代理可直接转发到 Google generateContent API (#1918, 感谢 @yovinchen)
  • 完整支持流式、schema 转换、shadow 请求
  • 在 proxy providers 模块下新增 gemini_url.rsgemini_schema.rsgemini_shadow.rsstreaming_gemini.rstransform_gemini.rs

GitHub Copilot 企业版(GHES

  • 为 Copilot 型 Claude 供应商新增 GHES 认证与端点配置 (#2175, 感谢 @hotelbe)

会话列表虚拟化

  • 通过 @tanstack/react-virtual 虚拟化会话列表,上千条记录流畅滚动
  • 长会话消息默认折叠,减少文字布局开销

Codex / OpenClaw 会话标题提取

  • Codex 和 OpenClaw 会话自动抽取有意义的标题,两行显示
  • 剥离 OpenClaw message_id 后缀噪声

Usage 日期范围选择器

  • Usage 面板新增日期范围选择器,预设 TabToday / 1d / 7d / 14d / 30d+ 自定义日期 + 时间日历 (#2002, 感谢 @yovinchen)
  • 分页列表新增页码跳转输入

模型映射快速填入

  • 供应商表单的模型映射字段旁新增快速填入按钮,加快编辑 (#2179, 感谢 @lispking)

Stream Check 错误分类

  • 按类别为 Stream Check 错误上色并以 toast 呈现
  • 刷新所有厂商默认探测模型到当前主力机型
  • 对 "model not found" 响应做单独识别

Local Routing 激活时阻止官方供应商切换

  • 在 Local Routing 激活状态下,切换到官方供应商会被强制拦截并弹出警告 toast
  • 原因:官方 API 流量经由本地代理存在账号暂停风险

Pricing 数据库刷新(v8 → v9

  • 迁移时重新种入定价表
  • 新增约 50 条模型条目,覆盖 Claude 4.7、Opus 4.7 Adaptive Thinking、Grok 4、Qwen 3.5/3.6、MiniMax M2.5/M2.7、Doubao Seed 2.0 系列、GLM-5/5.1
  • 修正 DeepSeek、Kimi K2.5 等陈旧价格

应用级窗口控件

  • 新增可选设置,让 CC Switch 自绘最小化 / 切换最大化 / 关闭按钮,代替系统装饰 (#1119, 感谢 @git1677967754)
  • 在合成器按钮可能失灵的 Linux Wayland 上显著改善体验

Hermes 接入统一 Skills 管理

  • 统一的 Skills 界面新增 Hermes
  • Skills 安装 / 启用 / 过滤现覆盖 Hermes,与 Claude / Codex / Gemini / OpenCode / OpenClaw 并列

OpenClaw 配置目录自定义

  • 新增设置项,允许把 CC Switch 指向自定义的 openclaw.json 位置 (#1518, 感谢 @mrFranklin)

Hermes 配置目录自定义

  • 新增设置项,允许把 CC Switch 指向自定义的 ~/.hermes/config.yaml 位置,底层通过数据驱动 dispatch

StepFun Step Plan 预设

  • 新增 StepFun Step PlanEN / ZH)供应商预设 (#2155, 感谢 @hengm3467)

New API 用量脚本模板

  • 为 New API 用量脚本模板新增 User-Agent 头,提升上游兼容性

LemonData 全应用预设

  • LemonData 作为第三方合作伙伴预设覆盖 Claude / Codex / Gemini / OpenCode / OpenClaw / Hermes 全部 6 个应用
  • 含图标资源和 zh / en / ja 三语合作伙伴推广文案
  • Claude 预设使用 ANTHROPIC_API_KEY 认证,OpenAI 兼容应用目标为 gpt-5.4

DDSHub Codex 预设

  • 新增 DDSHub 的 Codex 兼容端点(与 Claude 服务同 host
  • base URL 省略 /v1 后缀,由网关自动路由 OpenAI SDK 路径

变更

"Local Proxy Takeover" → "Local Routing"

  • 三语 UI 文案、README、文档中全部统一重命名
  • 功能行为保持不变

Hermes Auto api_mode 移除

  • 用户必须显式选择协议;新 deeplink 默认为 chat_completions
  • 消除了基于 URL 的启发式识别带来的意外

Hermes 供应商表单

  • 新增 API mode 下拉和按供应商的模型编辑器
  • 切换激活供应商时,把按供应商的模型绑定到顶层 model:

Hermes 深度配置委托

  • 深度 YAML 配置不再在 CC Switch 表单里重复,直接通过"启动 Hermes Web UI"按钮交给 Web UI

Hermes 工具栏布局

  • Web UI 按钮图标从 ExternalLink 换成 LayoutDashboard —— 点击可能启动 hermes dashboard 而非仅仅打开 URL,面板式图标语义更准
  • MCP 移到工具栏末尾,与 Claude / Codex / Gemini / OpenCode 的布局对齐

Claude Quick-Set 移除 ANTHROPIC_REASONING_MODEL

  • 把推理能力和模型选择解耦,quick-set 表单不再暴露该遗留字段

按供应商代理配置移除

  • 统一到全局的 Local Routing
  • 按供应商的代理开关和存储都已移除

统一工具栏图标按钮宽度

  • 在 Claude / Codex / Gemini / OpenCode / OpenClaw / Hermes 面板之间规格化图标按钮宽度,表头视觉一致

Rust Toolchain 锁定 1.95

  • 全仓库采纳 clippy 1.95 建议并锁定 toolchain,防止 nightly 漂移

托盘菜单 ID 常量

  • 托盘标识符从硬编码字符串 "main" 改为 TRAY_ID 常量("cc-switch"),所有调用点同步 (#1978, 感谢 @lidaxian121)

Copilot 次数消耗深度优化

一次系统性优化专门降低 Copilot 反向代理的 premium 交互消耗,涵盖以下多项改进:

  • 转发前主动剥离 thinking 块Anthropic 的 thinking / redacted_thinking 块会被 OpenAI 兼容端点拒绝,过去一次请求先失败消耗一次 premium 交互、再由 thinking_rectifier 触发重试。新增主动剥离步骤(Copilot 优化管线第 3.5 步,位于 tool_result 合并之后),直接省掉那一次无谓的 premium 消耗
  • 请求分类修正:含 tool_result 的消息归类为代理继续,而不是用户发起的新请求 —— 避免每次工具调用都被错误计入 premium 次数
  • subagent 检测:通过 __SUBAGENT_MARKER__metadata._agent_ 回退识别 subagent,设置 x-interaction-type=conversation-subagent
  • 确定性 x-interaction-id 合并计费:从 session ID 推导 x-interaction-id,把同一会话内的多次请求合并为一次计费交互
  • Orphan tool_result 清理:清理孤立的 tool_result,避免触发上游错误导致重试和重复计费
  • Warmup 降级默认开启:使用 gpt-5-mini 作为默认降级模型
  • 优化管线重排classify → sanitize → merge → warmup,让分类看到原始 tool_result 语义
  • 修复 CopilotOptimizerConfig 默认值不一致(统一到 gpt-5-mini

用量脚本内网支持

  • 移除 usage script 的私网 IP / 可疑主机名屏蔽,解锁企业内网、Docker、自建 API 端点
  • 内置模板仍强制 HTTPS(localhost 除外)和同源检查;自定义模板仍由用户控制,这类请求 URL 检查跳过

Failover 队列备注

  • 供应商备注现在在 failover 队列选择器和队列行中显示,方便在多供应商队列里识别 (#2138, 感谢 @Coconut-Fish)

Bug 修复

工具栏最大化后持续折叠

  • 窗口最大化 / 还原后,工具栏不再卡在折叠状态;折叠判定会随尺寸变化重新计算

Hermes YAML 污染与 OAuth MCP auth 丢失

  • 经 CC Switch 往返写入不再丢失 OAuth MCP auth 块、也不污染不相关的 YAML 键
  • 新增 tests/hermes_roundtrip.rs 作为守护测试

Hermes 激活供应商展示

  • Hermes UI 现在正确展示激活供应商,并连通添加 / 启用 / 移除动作

Hermes 供应商持久化

  • 供应商持久化到 custom_providers: 下,api_modemodel 可跨重启 / 配置重载存活

Hermes 健康检查错借 OpenClaw schema

  • 以前 Hermes 供应商被路由到 check_additive_app_stream(OpenClaw 的调度器),后者读 camelCase 的 baseUrl / apiKey / api,导致即便 Hermes 字段全填还是报 "OpenClaw provider is missing baseUrl"
  • 新增 check_hermes_stream,用 Hermes 专用提取器把 api_modechat_completions / anthropic_messages / codex_responses)映射到对应的 check_claude_stream api_formatbedrock_converse 明确标记为不支持
  • 先解析 api_mode 再抽 URL / API key,让 bedrock_converse 用户看到真实原因,而不是误导性的 "missing base_url"

Usage 查询模态框支持 Hermes / OpenClaw

  • getProviderCredentials 新增对 Hermessnake_case base_url / api_key)和 OpenClawcamelCase baseUrl / apiKey)的扁平 settingsConfig 字段读取,让 SiliconFlow 等匹配供应商自动选中 "official balance" 模板
  • 重构 BALANCE 和 TOKEN_PLAN 测试路径复用 providerCredentials,不再直接读 env.ANTHROPIC_*,修正了非 Claude 应用即使配置了 key 也报 "empty key" 的问题

Codex cache_control 保留

  • 在 Codex 格式转换合并 system prompt 时保留 cache_control (#1946, 感谢 @yovinchen)

Claude prompt cache key 泄漏

  • Claude chat 转换时不再发送 prompt cache key (#2003, 感谢 @yovinchen)

代理逐跳响应头剥离

  • 按 RFC 7230 剥离代理响应的 hop-by-hop 头(Connection、Keep-Alive、Transfer-Encoding 等) (#2060, 感谢 @yovinchen)

代理 CORS 层移除

  • 移除代理中过于宽松的 CORS 层 (#1915, 感谢 @zerone0x)

代理 toast 显示后端错误详情

  • 代理相关 toast 现在展示后端错误 payload 的详情,而不是一句笼统的失败

Usage 日志去重

  • 代理和会话日志的用量记录去重,相同请求不再被重复计数
  • 请求日志时间范围与面板的 1d / 7d / 30d 选择器同步

Common Config 勾选持久化

  • Claude / Codex / Gemini common-config 勾选状态重开后正确保留 (#2191, 感谢 @zxZeng)

Claude 插件 settings.json 同步

  • 编辑当前供应商时,会同步回 Claude 插件路径下的 settings.json (#1905, 感谢 @chengww5217)

Google Official Gemini env 保留

  • 保存 Google Official Gemini 供应商时不再清空 env

OpenCode JSON5 尾逗号解析

  • OpenCode 配置读取容忍尾逗号(JSON5 (#2023, 感谢 @wwminger)

预设刷新

  • 刷新 DeepSeek 和 Claude 1M 的陈旧 context 窗口
  • 刷新陈旧模型 ID,回填 Hermes 模型列表
  • 修正 Nous 端点,Hermes 占位图替换为 Nous 品牌图
  • 移除未使用的官方 Hermes 预设

搜索命中时折叠消息自动展开

  • 搜索匹配落在折叠内容内部时,消息自动展开以定位匹配

未知订阅配额等级隐藏

  • 供应商卡片不再渲染未知订阅配额等级

weekly_limit 标签统一

  • 跨语言把 weekly_limit 等级标签对齐到官方的"7 天"命名

根级 Skill 仓库安装

  • 修复当仓库根本身就是一个 skill 时的安装失败

Session ID 解析 clippy

  • 移除 session ID 解析里的冗余闭包(clippy 警告)

Stream Check 默认探测模型刷新

  • 默认探测模型更新到每家厂商当前主力

Skills 导入同步

  • 导入的 Skills 即时同步到启用应用目录,不再仅记录在数据库里导致 UI 显示"已安装"但目标目录空缺 (#2101, 感谢 @yaoguohh)

Ghostty 会话恢复

  • 改为通过 shell 执行 + --working-directory 启动 Ghostty 会话恢复 (#1976, 感谢 @Suda202)
  • 避免路径含空格 / 特殊字符时 cwd 转义问题

文档

README 赞助商更新

  • SiliconFlow 注册赠送更新为 ¥16
  • 精简 SSSAiCode 赞助文案
  • 更新合作伙伴 logo
  • 新增 LemonData 赞助商

全局代理提示澄清

  • 三语澄清全局代理与 Local Routing 的关系

Takeover → Routing 文档重命名

  • 接管相关文档在三语下重命名为 routing,同步更新锚点

PIPELLM 网站 URL

  • PIPELLM 赞助商网站 URL 更新为 code.pipellm.ai

⚠️ 重要变更(Breaking

Hermes 必须显式 api_mode

  • Auto 模式移除;导入或 deeplink 得到的供应商默认落到 chat_completions
  • 既有 Auto 配置的用户会被提示选择协议

Claude Quick-Set 移除 ANTHROPIC_REASONING_MODEL

  • 该遗留字段不再暴露;既有设置自动清理

按供应商代理配置移除

  • 迁移到全局 Local Routing 设置
  • 既有按供应商代理值被忽略

数据库 schema v9 → v10

  • mcp_serversskills 表新增 enabled_hermes
  • 自动迁移,DEFAULT 0,无数据丢失

Pricing 表 v8 → v9 重置

  • 首次启动时 model_pricing 表被清空并重新种入,以应用新模型和修正后的价格

XCodeAPI 预设移除

  • 使用 XCodeAPI 预设的用户请迁移到其它供应商

⚠️ 风险提示

本版本在涉及反向代理类功能上沿用 v3.12.3 / v3.13.0 提出的风险提示。

GitHub Copilot 反向代理:使用 Copilot 的反代路径可能违反 GitHub / Microsoft 服务条款。详情见 v3.12.3 release notes

Codex OAuth 反向代理:使用 ChatGPT 订阅的 Codex OAuth 反代可能违反 OpenAI 服务条款,详情见 v3.13.0 release notes

用户启用上述功能即表示自行承担所有风险。CC Switch 不对因使用这些功能而导致的任何账号限制、警告或服务暂停承担责任。


下载与安装

访问 Releases 下载对应版本。

系统要求

系统 最低版本 架构
Windows Windows 10 及以上 x64
macOS macOS 12 (Monterey) 及以上 Intel (x64) / Apple Silicon (arm64)
Linux 见下表 x64

Windows

文件 说明
CC-Switch-v3.14.0-Windows.msi 推荐 - MSI 安装包,支持自动更新
CC-Switch-v3.14.0-Windows-Portable.zip 便携版,解压即用,不写入注册表

macOS

文件 说明
CC-Switch-v3.14.0-macOS.dmg 推荐 - DMG 安装包,拖入 Applications 即可
CC-Switch-v3.14.0-macOS.zip 解压后拖入 ApplicationsUniversal Binary
CC-Switch-v3.14.0-macOS.tar.gz 用于 Homebrew 安装和自动更新

macOS 版本已通过 Apple 代码签名和公证,可直接安装使用。

HomebrewmacOS

brew tap farion1231/ccswitch
brew install --cask cc-switch

更新:

brew upgrade --cask cc-switch

Linux

发行版 推荐格式 安装方式
Ubuntu / Debian / Linux Mint / Pop!_OS .deb sudo dpkg -i CC-Switch-*.debsudo apt install ./CC-Switch-*.deb
Fedora / RHEL / CentOS / Rocky Linux .rpm sudo rpm -i CC-Switch-*.rpmsudo 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