同一个模型配置在 Claude Code 和 Claude Desktop 中不一定使用同一入口。本文只解决一个问题:如何在 CC Switch 中配置 Claude 并确认应用实际读取了新设置,同时保留重启、环境变量和回滚检查。文中只讨论可在本地复现的步骤,不把单次结果扩展成产品承诺;每个结论都标注前提、证据和无法覆盖的边界。读者可以先完成最小验证,再根据自己的版本、权限和数据补充实验,避免把配置示例误当成普遍结论。
Claude 这条链路最容易出现一种假成功:CC Switch 页面显示供应商已经保存,但 Claude 仍然读取旧环境变量;或者 Key 和 URL 都没问题,模型 ID 却不在当前供应商的可用列表里。还有一种情况是 Claude Code 可以直连,Claude Desktop 却需要不同的预设或本地路由。
所以整篇按这条顺序写:
选择应用
-> 添加 上游 API 供应商
-> 匹配 Anthropic Messages 配置
-> 设置模型角色
-> 启用并重启
-> 发送最小请求
-> 查看日志和用量
一、Claude Code 和 Claude Desktop 不是同一个入口
两者都叫 Claude,但管理方式并不完全相同:
| 应用 | 主要用途 | 配置关注点 |
|---|---|---|
| Claude Code | 终端或 IDE 内的编码 Agent | 环境变量、CLI 配置、项目规则和模型角色 |
| Claude Desktop | 桌面聊天、MCP 和资料工作台 | 桌面应用预设、模型列表、MCP 和登录状态 |
CC Switch 会根据你当前选择的应用写入不同的 live 配置。你在 Claude Code 页面添加的供应商,不代表 Claude Desktop 会自动使用;反过来也一样。
配置前先回答两个问题:
- 你是要长期切换,还是只做一次临时测试?
长期使用建议交给 CC Switch 管理,临时测试可以使用官方文档提供的环境变量,但不要同时让环境变量、配置文件和 CC Switch 三处争抢同一个字段。
- 当前开放的 Claude 兼容模型 ID
- 该模型支持的上游协议
- 是否需要使用
ANTHROPIC_API_KEY或ANTHROPIC_AUTH_TOKEN - 是否支持工具调用、流式输出和长上下文
Base URL、模型 ID 和认证字段都以当前文档为准。示例只能帮助你理解形状,不能直接复制:
供应商名称:上游 API
Base URL:https://example.com/v1
模型 ID:<当前控制台显示的模型 ID>
协议:Anthropic Messages 或服务商要求的兼容格式
Key:<只在 CC Switch 密钥字段中填写>
三、在 CC Switch 里添加 Claude Code 供应商
第一步:切到 Claude Code
打开 CC Switch,在应用切换区域选择 Claude Code。确认你没有停留在 Claude Desktop 或 Codex 页面。
第二步:添加供应商
常见字段如下:
| 字段 | 填写原则 |
|---|---|
| API Format | 选择与上游和 Claude Code 适配的格式 |
| Model | 选择当前可用模型 ID |
| Role Models | 按需要映射主模型、快速模型和子代理模型 |
如果 CC Switch 的字段名称不同,不要照搬其他版本截图。以当前界面显示的字段为准,核心是确认“应用协议”和“上游协议”之间是否需要本地转换。
第三步:配置模型角色
Claude Code 可能会把模型分成不同角色。不同版本字段名称可能不同,但概念通常包括:
- 主模型:处理当前任务的主要模型
- 高能力模型:处理复杂推理或大范围修改
- 日常模型:处理一般编码任务
- 快速模型:处理轻量请求、补全或简单检查
- 子代理模型:为子任务提供独立调用
第四步:保存并启用
保存后回到 Claude Code 供应商列表:
- 确认供应商卡片存在。
- 确认启用开关已打开。
- 确认没有同时启用两个同名或同路由供应商。
- 关闭正在运行的 Claude Code 终端或 IDE 集成。
- 重新打开 Claude Code。
很多 CLI 会在启动时读取配置,运行中的进程不会实时刷新。只在 CC Switch 中点击保存,不重启 Claude Code,往往会让你误以为配置没有生效。
四、Claude Code 的最小验证
不要第一步就让模型修改项目。先使用一个空目录或测试项目,发送:
只回复 OK,并告诉我当前使用的模型名称。
然后再发送只读任务:
只读取当前目录,列出你看到的文件名。
不要修改、创建或删除任何文件。
验收至少包含四项:
| 验收项 | 通过表现 |
|---|---|
| 网络和 Key | 返回正常内容,没有 401/403 |
| 模型 ID | 返回的模型与当前供应商配置一致或能映射到预期模型 |
| 工具能力 | 需要工具时能正确返回,不把工具调用当普通文本 |
如果“只回复 OK”都失败,先不测工具调用。工具调用失败时,变量至少多出 schema、参数、流式事件和权限,排错会更慢。
第一步:切换到 Claude Desktop
在 CC Switch 的应用入口选择 Claude Desktop,再添加供应商。不要直接复制 Claude Code 的整套配置文件,因为桌面应用可能使用不同的字段和模型校验逻辑。
第二步:优先使用应用预设
- Desktop 对模型 ID 的要求
- 供应商字段的显示和隐藏
- 本地路由接管
- MCP 配置与桌面应用的边界
- 官方登录与第三方供应商的切换
如果使用自定义配置,至少确认 Base URL、认证字段、上游格式和当前可用模型 ID。Desktop 能打开不代表模型调用成功,仍需发出最小请求。
第三步:确认登录状态没有覆盖供应商
不要为了验证第三方模型而删除官方账户信息。更稳的做法是保留官方登录回退路径,在 CC Switch 中切换供应商时确认当前生效的连接方式。
第四步:用非敏感内容测试
在桌面聊天中输入:
请用三句话解释什么是 API 网关,不要引用我的本地文件,也不要调用外部工具。
如果回答正常,再单独测试 MCP 或本地资料。不要把“模型能聊天”与“模型能安全访问本地工具”混为一谈。
六、环境变量为什么会让配置看起来失效
Claude 相关工具常见环境变量包括:
ANTHROPIC_BASE_URLANTHROPIC_API_KEYANTHROPIC_AUTH_TOKENANTHROPIC_MODEL- 不同角色的模型变量
这些变量的名称和优先级会随工具版本变化。文章不建议读者直接复制一组长期环境变量,而是建议先查看当前工具官方文档,并检查当前终端是否仍然设置了旧值。
排查思路如下:
- 关闭旧终端,重新打开一个干净终端。
- 确认系统级、用户级和当前 Shell 没有残留旧 Base URL。
- 确认 CC Switch 当前启用的是 Claude Code,而不是 Claude Desktop 供应商。
- 重新启动 Claude Code。
- 用
只回复 OK验证。
不要把环境变量的完整输出粘贴给 AI,其中可能包含 Key。可以只告诉它变量名是否存在、Base URL 是否指向旧地址,并把敏感值打码。
七、直连与本地路由怎么选
| 需求 | 直连 | 本地路由 |
|---|---|---|
| Claude Messages 与上游格式一致 | 适合 | 可选 |
| 需要协议转换 | 不适合 | 适合 |
| 需要用量、日志、故障转移 | 能力有限 | 更适合 |
| 需要保留官方登录回退 | 需要按应用处理 | 需要检查是否接管官方流量 |
启用本地路由后,确认路由只监听本机地址,且目标应用真的把请求交给 CC Switch。官方 CC Switch v3.18.0 发布说明中也将本地路由、协议转换、诊断日志和用量统计作为重要能力,但具体页面和字段会随版本变化。
八、常见报错排查
401 或 403
优先检查:
- Key 是否复制完整
- Key 是否已过期、额度是否足够
- 认证字段是否选对
- 当前模型是否允许该 Key 调用
404 或路径不存在
invalid model 或模型不存在
429 或额度不足
仍然使用旧模型
按顺序检查 CC Switch 启用状态、环境变量、运行中的旧进程、应用页面和模型角色映射。完全退出并重启通常比重复点击保存更有效。
九、企业级使用的最小边界
- 按项目、成员或环境拆分 Key。
- 给高成本模型设置预算和告警。
- 记录应用、模型、时间、Token 和失败原因。
- 生产与测试使用不同供应商或不同 Key。
- 不把客户资料、源代码凭据和内部密钥直接送入未经批准的模型。
- 重大任务保留官方模型或人工复核回退路径。
总结
应用选对
协议匹配
模型角色可用
最小请求和用量都通过
结论
本文给出了问题定位、配置或验证的可执行路径。实际结果仍取决于当前版本、权限和运行环境,提交前应按官方文档复核可变字段,并保留失败证据和回滚边界。