# 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`              |
