【保姆级教程】通过CCswtich兼容Cluade Cli和桌面版,接入第三方API热切换模型

前言

最近在折腾Claude中转站,因为各种公益站太香了,本来以为只是填个 base url 和 key 的小事,结果CLI的不知道填到哪,桌面版的进去傻眼了,进去登陆之后,连配置入口都找不到,切到code还只能用订阅的默认免费模型发信息,踩了不少坑:

  • 不知道怎么接入第三方API
  • Claude Code CLI 能用,但是不知道怎么用桌面版
  • 同一个中转站,sonnet 能用,opus/haiku 不一定能用
  • ccswitch 切了 provider,但还像没切换一样
  • 有的模型不是配置错了,而是上游根本没权限
  • 开启本地代理之后 ccswitch 用的是一家中转站,结果另一家中转站收到请求

这篇不是“权威教程”,更像是我自己的排查记录。主要是用ccswitch 实现 Claude Code 桌面端和 CLI 端同时使用,而且可以在ccswitch里无感切换中转站,不用退出重进,真正意义上实现中转站的无缝切换,同时和codex也可以借用此管理方法。

行动思路

这里我跟各位佬友讲讲我是怎么想到解决方案然后一步步尝试成功的,如果想直接看解决方案可以跳到下一部分

  • 看到最新版ccswitch里已经区分claude cli和桌面版,好奇怎么用ccs来管理中转站,使用桌面版和cli

  • 上各种论坛搜索,按教程配置

  • 成功找到入口,发现和教程不一样,人傻眼了,然后复制粘贴帖子,给codex分析,理解在干什么

  • 然后codex帮我看懂了整个底层机制,我自己再测试了真正的流量转发,最终明白了原理

详细保姆级配置教程

1.ccswitch

下载地址

https://github.com/farion1231/cc-switch
找到这里下载安装即可


我也是基于这个最新版本配置的

必做配置

进来后大概是这样的
点击左上方的小齿轮
image

划到下面 如果你是codex用户把这个勾选上

会弹迁移官方会话,不用管点确认

按照图片中的勾选好
记好自己的服务地址等下会用,默认应该是一样的

中转站配置

点击选择claude cli,点击右上角加号
分别往对应的地方填入url和key,这里各位佬友比较熟悉,不过多赘述,有问题的可以在评论区询问,佬友的公益站太香了,佬友们可以自行搜索

这里不配置桌面端的原因是,即使配置了,走ccswitch依旧是走的cli的配置
我已经试验过了,试验过程是我开启本地路由,然后配置桌面端和cli为两个不同的中转站,然后正常在桌面端和cli分别发消息,发现只有cli端的中转站收到请求
所以其实桌面端的代码内核还是cli :thinking:应该是的

如果是不走ccswitch的直连,佬友们可以单独在桌面端界面配置

2.下载登录安装Claude Cli和桌面版

各位佬友应该都是先接触的Cli版吧,如果你下载过了就不用管,这个教程旨在同时使用两个,优劣会在后面说明
下载方式
cli版
[前置需要有node.js和npm]

npm install -g @anthropic-ai/claude-code

桌面版
桌面版

3.Claude桌面版怎么配置

这里引用一下之前佬友的教学

后面的一些配置地方现在已经找不到了,我只配置了

  • Gateway base URL

    • 填:http://127.0.0.1:15721
  • Gateway API key

    • 填:PROXY_MANAGED
  • Gateway auth scheme

    • 选:bearer

注意服务地址的替换,默认的一样
因为注册表的配置有难度,我选择丢给codex,有能力的参见上方第一篇文档:

提示词

请帮我把 Claude Desktop 的 3P Gateway 配置写入 Windows 注册表:
- Gateway base URL 使用 http://127.0.0.1:15721
- Gateway API key 使用 PROXY_MANAGED
- Auth scheme 使用 bearer
- 模型列表写入 claude-opus-4-8、claude-sonnet-4-6、claude-haiku-4-5
- 启用 Claude Code for Desktop
- 开启 skip login-mode chooser

在powershell中使用下面命令可以自查注册表是否成功写入

New-Item -Path 'HKCU:\SOFTWARE\Policies\Claude' -Force | Out-Null
Set-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Claude' -Name 'inferenceProvider' -Value 'gateway' -Type String
Set-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Claude' -Name 'inferenceGatewayBaseUrl' -Value 'http://127.0.0.1:15721' -Type String
Set-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Claude' -Name 'inferenceGatewayApiKey' -Value 'PROXY_MANAGED' -Type String
Set-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Claude' -Name 'inferenceGatewayAuthScheme' -Value 'bearer' -Type String
Set-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Claude' -Name 'inferenceModels' -Value '["claude-opus-4-8","claude-sonnet-4-6","claude-haiku-4-5"]' -Type String
Set-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Claude' -Name 'isClaudeCodeForDesktopEnabled' -Value 1 -Type DWord
Set-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Claude' -Name 'skipLoginModeChooser' -Value 1 -Type DWord

在powershell中使用下面命令可以自查ccswitch代理是否成功开启

Test-NetConnection 127.0.0.1 -Port 15721

原理和分析

至此,已经完成了所有设置,佬友们可以尝试重启后回到Claude桌面端,会变成这个样子,可以开心的蹬啦 :innocent:

同时解释一下为什么要这样配置,说清楚原理:

1.为什么要配置ccswitch的本地代理

因为可以直接热切换多个中转站,不用退出重进Cluade,不用再重复教程配置

2.什么是模型映射

配置中转站的可能会出现,大概意思是,你想用claude opus 4.8,但是他在中转站的名字叫别的名字,这个时候开启就可以让中转站得知请求,或者你只想用claude这个工具,但是接入别的模型,比如deepseek,这个时候就是把claude opus 4.8翻译成deepseek,能够成功使用。如果中转站原生支持所谓的官方模型,或者名字就和官方模型一样,那你开不开启都是无所谓的

3.同时配置了cli和桌面版的中转站,并开启了本地代理,究竟走哪个

走cli的,即使中转站不同

4.codex用不用开本地代理

我个人觉得没必要,因为codex集成了cli和桌面端,所以相比claude要走两个配置,直连每次切换需要重复配置非常麻烦,codex直接每次切换退出重进一下就好了,非常方便

碎碎念

哈哈哈哈哈哈哈 :grinning_face:这是一个苦逼期末周大学生端午的研究成果,也是心血来潮第一次写这么正经的帖子,凌晨自己手敲的纲要,写着写着还顺带学习了markdown语法,不错不错,发完就去复习了,祝大家天天开心 :melting_face:

结语

这是小萌新的第一条帖子,希望这份保姆级教程能够对各位佬友有所帮助,如有错漏,希望大家友善互动,批评指正·-·希望自己的帖子能够让大家知道操作的同时能够理解原理,今后我也会继续贡献更多力量 :distorted_face:
感谢各位佬友的支持,如果感觉教程有用的话,请给个大拇哥留个言支持一下,你的支持才能让这份教程被更多人看见,再次感谢

8 个赞
收到,已阅。感谢分享。

也在纳闷,为什么站点不把直接填写什么api地址直接贴上去,无脑一些,对小白也会非常友好啊

1 个赞

谢谢分享心得用心了

感谢分享

感谢分享

谢谢分享

感谢太有用了 桌面端一直失败总算过了

哈哈很用心的一个帖子,主包考完试了,后面会继续更新干货的,很奇怪n站的浏览量喔,感觉很难涨,不知道还有佬友能看到嘛 :xhj001:

感谢,很实用