13 KiB
CC Switch v3.12.3
GitHub Copilot 反向代理、macOS 代码签名与公证、Reasoning Effort 映射、Tool Search 环境变量开关、Skill 备份/恢复生命周期
概览
CC Switch v3.12.3 新增了 GitHub Copilot 反向代理 支持和 Copilot Auth Center 认证管理,引入了 Reasoning Effort 映射 实现跨供应商推理强度控制,通过 Claude 2.1.76+ 原生 ENABLE_TOOL_SEARCH 环境变量实现了 Tool Search 开关,新增了 OpenCode SQLite 后端 支持,并完成了 macOS 代码签名与 Apple 公证。同时引入了完整的 Skill 备份/恢复生命周期,改进了代理对 OpenAI o 系列模型的兼容性和 gzip 压缩支持,优化了 Skills 缓存策略,更新了 Claude 4.6 上下文窗口、MiniMax M2.7 和小米 MiMo 模型预设,并修复了 WebDAV 密码、工具消息解析、暗色模式和 Copilot 请求指纹等方面的问题。
发布日期:2026-03-24
更新规模:36 commits | 107 files changed | +9,124 / -802 lines
重点内容
- GitHub Copilot 反向代理:新增 Copilot 反向代理支持,通过 Copilot Auth Center 管理 GitHub Token 认证,实现 Copilot 模型在 Claude Code 中的无缝使用(⚠️ 风险提示)
- macOS 代码签名与公证:macOS 版本已通过 Apple 代码签名和公证,新增 DMG 安装格式,无需再手动绕过"未知开发者"警告
- Reasoning Effort 映射:代理层自动映射 — 显式
output_config.effort优先,回退到budget_tokens阈值(<4000→low, 4000–16000→medium, ≥16000→high),支持 o 系列和 GPT-5+ 模型 - Tool Search 环境变量开关:利用 Claude 2.1.76+ 原生
ENABLE_TOOL_SEARCH环境变量,在通用配置编辑器中一键启用 Tool Search - Skill 备份/恢复生命周期:卸载前自动备份 Skill 文件;新增备份列表、恢复和删除管理
- OpenCode SQLite 后端:为 OpenCode 新增 SQLite 会话存储(与现有 JSON 后端并存),ID 冲突时 SQLite 优先的双后端扫描
- Codex 1M 上下文窗口开关:配置编辑器中一键设置
model_context_window = 1000000,自动填充model_auto_compact_token_limit - 禁用自动升级开关:通用配置编辑器中新增
DISABLE_AUTOUPDATER环境变量复选框,防止 Claude Code 自动升级 - 代理 Gzip 压缩:非流式代理请求自动协商 gzip 压缩,减少带宽消耗
- o 系列模型兼容性:Chat Completions 代理正确使用
max_completion_tokens处理 o1/o3/o4-mini 模型 - Skills 导入重构:将基于文件系统的隐式应用推断替换为显式的
ImportSkillSelection,防止多应用错误激活
新功能
GitHub Copilot 反向代理
新增完整的 GitHub Copilot 集成,作为 Claude Code 供应商使用。
- 通过 OAuth Device Code 流程进行 GitHub 认证
- 支持多账号管理和自动 Token 刷新
- Anthropic ↔ OpenAI 格式自动转换
- 实时获取可用模型列表和用量统计 (#930,感谢 @Mason-mengze)
Copilot Auth Center
在设置中新增认证中心面板,全局管理 GitHub 账号。
- 支持按供应商绑定账号(通过
meta.authBinding) - 统一的 Token 管理和刷新机制
Tool Search 开关
利用 Claude 2.1.76+ 原生 ENABLE_TOOL_SEARCH 环境变量控制 Tool Search 功能。
- 在供应商通用配置编辑器中以复选框形式暴露
- 替代了之前的二进制补丁方案,更简洁可靠 (#930,感谢 @Mason-mengze)
Reasoning Effort 映射
新增代理层自动推理强度映射,支持 OpenAI o 系列和 GPT-5+ 模型。
- 两级解析:显式
output_config.effort优先,回退到budget_tokens阈值(<4000→low, 4000–16000→medium, ≥16000→high) - 覆盖 Chat Completions 和 Responses API 两条路径,含 17 个单元测试
OpenCode SQLite 后端
为 OpenCode 新增 SQLite 会话存储支持(与现有 JSON 后端并存)。
- 双后端扫描,ID 冲突时 SQLite 优先
- 原子会话删除和路径校验
- JSON 后端保持向后兼容
Codex 1M 上下文窗口开关
在配置编辑器中新增 Codex 1M 上下文窗口一键开关。
- 复选框设置
config.toml中的model_context_window = 1000000 - 启用时自动填充
model_auto_compact_token_limit = 900000 - 关闭时干净移除两个字段
禁用自动升级开关
在 Claude 通用配置编辑器中新增禁用自动升级的复选框。
- 勾选后设置
DISABLE_AUTOUPDATER=1环境变量,阻止 Claude Code 自动升级 - 与 Teammates 模式、Tool Search、高强度思考等开关同一排显示
Skill 卸载自动备份
卸载 Skill 前自动备份文件,防止数据意外丢失。
- 备份存储在
~/.cc-switch/skill-backups/,包含所有 skill 文件和记录原始元数据的meta.json - 旧备份自动清理,最多保留 20 个
- 备份路径返回前端并在成功提示中显示
Skill 备份恢复与删除
新增卸载时创建的 Skill 备份的管理功能。
- 列出所有可用的 skill 备份及元数据
- 恢复操作将文件拷回 SSOT,保存数据库记录,并同步到当前应用,失败时自动回滚
- 删除操作在确认对话框后移除备份目录
macOS 代码签名与 Apple 公证
CI 流程新增完整的 macOS 代码签名和 Apple 公证支持。
- 导入 Apple Developer ID 证书,签名 Universal Binary
- 提交 Apple 公证并将票据装订到
.app和.dmg - 硬性验证步骤(
codesign --verify+spctl -a+stapler validate)把关发布
变更
Skills 缓存策略优化
- 将
invalidateQueries替换为直接setQueryData更新,用于 skill 安装/卸载/导入操作 - 新增
staleTime: Infinity和keepPreviousData,消除加载闪烁 (#1573,感谢 @TangZhiZzz)
代理 Gzip 压缩
- 非流式请求允许 reqwest 自动协商 gzip 并透明解压响应
- 流式请求保守地保持
Accept-Encoding: identity,避免中断的 SSE 流解压出错
o1/o3 模型兼容性
- Chat Completions 路径对 o1/o3/o4-mini 模型使用
max_completion_tokens替代max_tokens(#1451,感谢 @Hemilt0n) - Responses API 路径保持使用正确的
max_output_tokens字段
OpenCode 模型变体
- 将 OpenCode 的模型变体放在预设顶层而非嵌套在 options 内部,提升可发现性 (#1317)
Skills 导入流程
- 将基于文件系统的隐式应用推断替换为显式的
ImportSkillSelection,防止同一 skill 目录存在于多个应用路径下时错误激活多个应用 - 为
sync_to_app增加协调逻辑,移除已禁用/孤立的符号链接 - MCP
sync_all_enabled现在会从 live 配置中移除已禁用的服务器
Claude 4.6 上下文窗口
- Claude Opus 4.6 和 Sonnet 4.6 上下文窗口从 200K 更新至 1M(GA 发布)
MiniMax 模型升级
- MiniMax 预设从 M2.5 升级至 M2.7,更新三语合作伙伴描述
小米 MiMo 模型升级
- MiMo 预设从 mimo-v2-flash 升级至 mimo-v2-pro
添加供应商对话框简化
- 移除冗余的 OAuth 标签页,对话框从 3 个标签页减少到 2 个(应用专属 + 通用)
供应商表单高级选项折叠
- Claude 供应商表单中的模型映射、API 格式等高级字段在未填写时默认折叠
- 预设填充值后自动展开,手动清空不会自动折叠
Bug 修复
WebDAV 密码被静默清除
- 修复 ProviderList 或 UsageScriptModal 保存设置时 WebDAV 密码被静默清除的问题
- 前端 payload 中剥离
webdavSync,后端merge_settings_for_save()增加回填逻辑保护现有密码
工具消息解析
- 修复 Claude(tool_result content blocks)、Codex(function_call/function_call_output payloads)和 Gemini(array content + toolCalls extraction)的 tool_use/tool_result 消息分类 (#1401,感谢 @BlueOcean223)
暗色模式选择器
- 将 Tailwind
darkMode从["selector", "class"]改为["selector", ".dark"],确保暗色模式正确激活 (#1596,感谢 @qinxiandiqi)
Copilot 请求指纹
- 统一所有 Copilot API 调用点的请求指纹头,防止 User-Agent 泄漏和 Stream Check 不匹配
供应商表单防重复提交
- 修复快速连续点击按钮时供应商添加/编辑表单重复提交的问题 (#1352,感谢 @Hexi1997)
Ghostty 终端会话恢复
- 修复在 Ghostty 终端中恢复 Claude 会话失败的问题 (#1506,感谢 @canyonsehun)
Skill ZIP 导入扩展名
- ZIP 导入对话框现在支持
.skill文件扩展名 (#1240, #1455,感谢 @yovinchen)
Skill ZIP 安装目标应用
- ZIP 方式安装的 skill 现在使用当前活跃应用,而非始终默认为 Claude
OpenClaw 活跃供应商高亮
- 修复 OpenClaw 当前激活的供应商卡片未高亮显示的问题 (#1419,感谢 @funnytime75)
响应式布局与 TOC
- 改善存在 TOC 标题时的响应式布局 (#1491,感谢 @West-Pavilion)
Skills 导入对话框白屏
- 在 ImportSkillsDialog 中补充缺失的 TooltipProvider,修复打开对话框时的运行时崩溃
面板底部空白区域
- 将所有内容面板的硬编码
h-[calc(100vh-8rem)]替换为flex-1 min-h-0,消除因不同平台偏移量不匹配导致的底部空白
文档
定价模型 ID 归一化
- 在中英日三语用户手册中新增模型 ID 归一化规则说明(前缀剥离、后缀修剪、
@→-替换)(#1591,感谢 @makoMakoGo)
macOS 签名与公证说明
- 移除 README、安装指南和 FAQ 中所有
xattr变通方案和"未知开发者"警告 - 替换为"已通过 Apple 代码签名和公证"的说明
⚠️ 风险提示
GitHub Copilot 反向代理免责声明
本版本新增的 Copilot 反向代理功能通过逆向工程的非官方 API 访问 GitHub Copilot 服务。启用此功能前,请注意以下风险:
- 违反服务条款:此功能可能违反 GitHub 可接受使用政策和附加产品条款,其中禁止过度自动化批量活动、未经授权的服务复制以及通过自动化手段对服务器施加不当负担。
- 账号风险:已有类似工具的用户收到 GitHub 官方警告邮件,指出其存在"脚本化交互或其他刻意的异常或高强度使用"行为。收到警告后继续使用可能导致 Copilot 访问权限被暂停甚至永久封禁。
- 无法保证长期可用:GitHub 可能随时更新其检测机制,当前可用的使用方式未来可能被标记。
用户启用此功能即表示自行承担所有风险。CC Switch 不对因使用此功能而导致的任何账号限制、警告或服务暂停承担责任。
下载与安装
访问 Releases 下载对应版本。
系统要求
| 系统 | 最低版本 | 架构 |
|---|---|---|
| Windows | Windows 10 及以上 | x64 |
| macOS | macOS 12 (Monterey) 及以上 | Intel (x64) / Apple Silicon (arm64) |
| Linux | 见下表 | x64 |
Windows
| 文件 | 说明 |
|---|---|
CC-Switch-v3.12.3-Windows.msi |
推荐 - MSI 安装包,支持自动更新 |
CC-Switch-v3.12.3-Windows-Portable.zip |
便携版,解压即用,不写入注册表 |
macOS
| 文件 | 说明 |
|---|---|
CC-Switch-v3.12.3-macOS.dmg |
推荐 - DMG 安装包,拖入 Applications 即可 |
CC-Switch-v3.12.3-macOS.zip |
解压后拖入 Applications,Universal Binary |
CC-Switch-v3.12.3-macOS.tar.gz |
用于 Homebrew 安装和自动更新 |
macOS 版本已通过 Apple 代码签名和公证,可直接安装使用。
Homebrew(macOS)
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-*.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 |