CCSwitch 配置
用 CC Switch 管理 Claude Code、Codex、Gemini CLI 的供应商,把 TUTUJING API 接进本地编程客户端。
一、先分清三个接入地址
三个客户端使用不同协议,地址不是同一个写法。路径填错通常表现为 404 或一直连不上,而不是「密钥无效」。
| 客户端 | 协议 | 请求地址 | 不要写成 |
|---|---|---|---|
| Claude Code | Anthropic Messages | https://api.tutujing.com | https://api.tutujing.com/v1 |
| Codex | OpenAI Responses | https://api.tutujing.com/v1 | https://api.tutujing.com |
| Gemini CLI | Gemini Native | https://api.tutujing.com | https://api.tutujing.com/v1beta |
三个地址共用同一个站点,密钥都是 sk- 格式;但每把密钥绑定一个分组,Claude Code、Codex、Gemini CLI 通常要分别建密钥。区别只在客户端自己拼接的路径:Claude Code 接 /v1/messages,Codex 接 /responses,Gemini CLI 接 /v1beta/...。所以上表里的地址,就是最终要填进 CC Switch 的地址。
二、安装 CC Switch
从官网或 GitHub Releases 下载桌面版,Windows、macOS、Linux 都有安装包。CC Switch 只负责改写客户端配置,不替代客户端本身:开始前先装好 Claude Code、Codex CLI、Gemini CLI,其中命令行工具可以在 CC Switch 侧栏的 Apps 页安装、升级。没有图形界面的服务器环境用社区维护的 CC Switch CLI,它和桌面版共用 ~/.cc-switch 数据,数据库版本可能比桌面版旧。
- 官网:https://ccswitch.io
- 版本:建议装 v4 最新版;导入按钮走的是
ccswitch://深度链接,老版本对部分字段的处理不同。 - 安装后先打开一次,确认侧栏能看到 Claude Code、Codex、Gemini 三个应用。
三、准备密钥和分组
- 登录控制台,进入「API 密钥」。
- 新建密钥,分组要选包含目标模型的分组:Claude Code 选 Claude 相关分组,Codex 选 GPT 相关分组,Gemini CLI 选 Gemini 相关分组。
- 用密钥行末的「复制密钥」复制完整
sk-密钥;页面关闭后只是不再明文展示,之后仍可重新复制。 - 建议每个客户端单独一把密钥,方便在日志里区分来源,也方便单独禁用。
模型名必须与模型广场完全一致。下表只是常用组合,实际以你的令牌分组在模型广场里能看到的模型为准。
| 客户端 | 常见分组 | 示例模型 |
|---|---|---|
| Claude Code | Claude 满血稳定一哥、CCMax 特价(可蒸馏)、Claude 官转满血等 | claude-sonnet-4-6、claude-opus-5 |
| Codex | GPT官Key、GPT Pro专用、GPT不降智、GPT 企业级等 | gpt-5.6-sol |
| Gemini CLI | Gemini 反重力、Gemini 满血分组 | gemini-4-argon |
分组决定这把密钥能用哪些模型。分组和模型对不上时,请求会以 503 或 model_not_found 失败,而不是扣费后返回空结果。
四、一键导入(推荐)
控制台的 API 密钥列表已经内置 CC Switch 导入入口,不用手抄地址和密钥。
打开密钥的 CC Switch 入口
在「API 密钥」里找到要用的密钥,点行末的更多操作,选择「CC Switch」。
选择应用
在弹窗里选择 Claude、Codex 或 Gemini。应用不同,生成的地址也不同:Claude 和 Gemini 用站点根地址,Codex 自动带 /v1。
确认名称和主模型
名称保持默认或改成你能认出的名字;主模型从下拉框里选。Claude 还可以额外指定 Haiku、Sonnet、Opus 三个模型映射,不填就沿用默认。
在 CC Switch 里确认导入
点「打开 CC Switch」,浏览器询问是否打开外部应用时选择「打开」。CC Switch 会弹出导入确认框,核对地址、密钥(已打码)和模型,确认「导入后切换」开关处于打开状态,点「导入」。
等待生效
导入完成后,供应商卡片出现在对应应用列表里。Claude Code 直接生效;Codex 和 Gemini CLI 按第六节重启后生效。
链接是在点击时按当前密钥现场生成的,不会预置在页面源码里。不要把它复制到聊天、文档、截图或公开网页;同一个链接点两次会导入两份同名供应商。
五、手动配置
没有导入入口、或者想自己控制配置时,用各应用的「自定义配置」逐项填写。保存后在供应商卡片上切到它。
Claude Code
侧栏选 Claude Code → 添加供应商 → 自定义配置 → 填下面这段 JSON:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.tutujing.com",
"ANTHROPIC_AUTH_TOKEN": "sk-你的密钥",
"ANTHROPIC_MODEL": "claude-sonnet-4-6"
}
}ANTHROPIC_BASE_URL 不要再加 /v1;ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY 二选一即可。模型名换成你分组里有的名字。
Claude Code 的后台小任务会用到 Haiku 档模型。你的分组里没有对应模型时,用「一键导入」弹窗补 Haiku、Sonnet、Opus 映射,或在 CC Switch 的供应商表单里填模型映射,避免小请求返回 404。
Codex
Codex 供应商的编辑器分两块:一块填 API Key,一块是 config.toml(地址、模型和协议)。CC Switch 切到这个供应商时,会把 Key 写进 config.toml 的 experimental_bearer_token,不会写 ~/.codex/auth.json —— auth.json 只给 OpenAI 官方登录用。
在 API Key / auth.json 一栏填 sk-你的密钥(如果显示的是 JSON 编辑器,就填 {"OPENAI_API_KEY": "sk-你的密钥"}),config.toml 按下面填:
model_provider = "custom" model = "gpt-5.6-sol" model_reasoning_effort = "high" disable_response_storage = true [model_providers.custom] name = "custom" base_url = "https://api.tutujing.com/v1" wire_api = "responses" requires_openai_auth = true experimental_bearer_token = "sk-你的密钥"
base_url 必须带 /v1,wire_api 固定为 responses。只通过 CC Switch 表单添加时,密钥按表单的 API Key / auth.json 字段填即可;手工改 config.toml 时才需要自己写 experimental_bearer_token。切换后重启 Codex,模型列表才会刷新。
Gemini CLI
侧栏选 Gemini CLI → 添加供应商 → 自定义配置 → 填下面这段 JSON:
{
"env": {
"GEMINI_API_KEY": "sk-你的密钥",
"GOOGLE_GEMINI_BASE_URL": "https://api.tutujing.com",
"GEMINI_MODEL": "gemini-4-argon"
}
}GOOGLE_GEMINI_BASE_URL 不要带 /v1beta,Gemini CLI 会自己拼接。保存后重启 Gemini CLI。
六、切换与生效
| 客户端 | 切换后怎么生效 |
|---|---|
| Claude Code | 立即生效,不用重启;新开一个会话即可。 |
| Codex | 重启终端或桌面应用;如果模型列表没刷新,用 CC Switch 提示里的「重启 Codex 守护进程」,或完全退出 Codex 桌面应用再打开。 |
| Gemini CLI | 重启终端。 |
要回到官方登录,在 CC Switch 里切到内置的 Claude Official、OpenAI Official、Google Official 供应商即可,之后按客户端自己的流程重新登录。
CC Switch 切换时只改端点、密钥、模型等关键字段,插件、hooks、MCP 和你自己加的设置会保留;第一次改写配置文件前,它会把原文件备份到 ~/.cc-switch/backups/live-first-write/。
七、验证与排错
- 在客户端发一条最小请求,例如让它只回复一个词。
- 回到控制台「日志」,确认这条请求的记录里有正确的模型、令牌和分组。
- 金额或额度变化应与模型广场的计价一致;对不上时先核对模型名,不要先怀疑余额。
| 现象 | 常见原因 | 处理 |
|---|---|---|
401 Invalid token(中文界面可能显示「无效的令牌」) | 密钥错误、已禁用,或复制时末尾带了空格 | 重新复制密钥;到密钥列表确认状态 |
| 404 | 地址路径错误:Claude 多写 /v1、Codex 少写 /v1、Gemini 写了 /v1beta | 按第一节的地址表改回 |
503 / model_not_found | 令牌分组不包含这个模型,或当前分组下暂无可用渠道 | 改密钥分组,或换成该分组里有的模型 |
| 400 | 请求参数不合法、上下文超限,或模型不支持该请求 | 换模型或减少输入;以日志里的原始报错为准 |
| 一直超时 | 本机网络、代理或防火墙 | 先在本机直接请求地址确认可达 |
CC Switch 卡片上的「连通性检查」只测地址是否可达,不会真正发模型请求,所以查不出密钥错误、模型名错误或分组不对。最终以客户端真实请求 + 控制台日志为准。
手动填模型时最常错的是名字:大小写、连字符、日期后缀都要和模型广场一致。名字不确定时,先在模型输入框旁点「获取模型列表」,从接口返回的列表里选。
八、安全提醒
- 密钥等同于账号余额:不要写进截图、公开仓库、聊天记录或网页源码。
- CC Switch 的深度链接里带密钥,只在登录状态下现场生成、现场使用。
- 不同客户端、不同项目用不同密钥;发现泄露立即禁用并重建。
- 本页只覆盖接入地址和配置字段;CC Switch 的账号登录、路由、聚合、MCP 等功能以它自己的文档为准。
