# CC Switch v3.12.3 > GitHub Copilot 反向代理、macOS 代码签名与公证、Reasoning Effort 映射、Tool Search 环境变量开关、Skill 备份/恢复生命周期 **[English →](v3.12.3-en.md) | [日本語版 →](v3.12.3-ja.md)** --- ## 概览 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 服务。启用此功能前,请注意以下风险: 1. **违反服务条款**:此功能可能违反 [GitHub 可接受使用政策](https://docs.github.com/en/site-policy/acceptable-use-policies/github-acceptable-use-policies)和[附加产品条款](https://docs.github.com/en/site-policy/github-terms/github-terms-for-additional-products-and-features),其中禁止过度自动化批量活动、未经授权的服务复制以及通过自动化手段对服务器施加不当负担。 2. **账号风险**:已有类似工具的用户收到 GitHub 官方警告邮件,指出其存在"脚本化交互或其他刻意的异常或高强度使用"行为。收到警告后继续使用可能导致 Copilot 访问权限被暂停甚至永久封禁。 3. **无法保证长期可用**:GitHub 可能随时更新其检测机制,当前可用的使用方式未来可能被标记。 用户启用此功能即表示**自行承担所有风险**。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 | ### 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) ```bash brew tap farion1231/ccswitch brew install --cask cc-switch ``` 更新: ```bash 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` |