AI Code Switch 是帮助你在本地管理 AI 编程工具接入大模型的工具。 它可以让你的 Claude Code、Codex 等工具不再局限于官方模型。 为所有编程工具提供本地API驱动,自动智能的切换不同场景下的模型。
而且它尽可能简单的帮你解决这件事。
- 视频演示:https://www.bilibili.com/video/BV1uEznBuEJd/
- 1分钟让Claude Code接入GLM国产模型:https://www.bilibili.com/video/BV1a865B8ErA/
- 1分钟让Codex接入免费模型Agnes:https://www.bilibili.com/video/BV1tQ7Q63Eva/ Codex接入Deepseek可参考该方法实现
- 在线教程:https://space.bilibili.com/37442719/lists/8333248
- 可登记任意的大模型API接口服务,让你可以在一个面板管理你的大模型厂商
- 一键切换模型:可以注册多个供应商的多个API接口,当想要切换模型时,只需要点击一个按钮就可以立即切换
- 自动配置:无需你手动去修改claude code或codex的系统配置文件,aicodeswitch自动帮你修改,你只要启动它,无需配置claude code或codex就可以让它们正常工作
- 一键配置供应商,省去复杂的供应商配置流程
- 启动所有已知大模型接口标准,可接入任意客户端,包括但不限于openclaw、hermes、trae等,根据不同需要自主配置接口对应的大模型服务
- API转流:将兼容openai接口标准的模型,轻松接入到claude code中,支持将符合openai、anthropic、gemini的数据格式转发给claude code或codex
- 按需中转请求:根据请求类型,让不同的模型来处理不同的任务,节省成本,基于该特性,可以让glm等原生非多模态模型支持图像识别
- 智能故障切换:当API服务发生故障时,智能切换到其他API服务进行尝试,无需手动切换,特别适用于中转服务商
- 代理:针对无法直接访问的模型服务,例如地区被ban,支持设置代理来解决
- tokens超量限制:避免其中一个服务商的用量超过限制,浪费了钱,适合有免费额度的服务商
- 次数超量限制:次数到达一定量后,切换其他服务商,适合coding plan的服务商
- 日志:超精细的日志记录和会话记录,帮助你发现编程工具本身的问题,以及专研工具的agent逻辑
- 统计:丰富且详细的统计数据,用量信息快速掌握,发掘自己的编程习惯
- Skills管理:一键搜索和安装Skills,一键启用skill到claude code或codex
- MCP管理:一键安装预设MCP,一键启用MCP
- 导入和导出:一键备份数据,在多太电脑间共享aicodeswitch配置
- 服务端部署,自定义API Key,支持B/S架构,让aicodeswitch成为在线服务,提供给团队使用
- 数据完全本地,自主可控
- 特殊语法:在发送的提示词最前面添加
[!]来直接切换为高智商模型服务([x]关闭),简单快捷
桌面版基于 Electron,内置了 Node 运行时,无需另外安装 Node.js。
- 下载安装包:进入下载(提供 Windows
.exe/.msi、macOS.dmg(arm64 与 x64)、Linux.AppImage/.deb) - 本地构建:
npm install后执行npm run electron:build,产物输出到release/目录
# 安装
npm install -g aicodeswitch
# 启动服务
aicos start
# http://127.0.0.1:4567
# 启动服务并打开管理界面
aicos ui
# 停止服务
aicos stop
配置供应商
- 什么是供应商?
- 供应商配置有什么用?
具体请看下方文档。
路由配置
- 什么是路由?
- 什么是路由规则?
具体请看下方文档。
覆盖配置文件
在aicodeswitch中,点击“写入Claude Code配置”按钮,它会修改Claude Code的配置文件,让Claude Code开始使用aicocdeswitch提供的模型API,而非直接连到官网的模型API。
你不用太担心,你可以在写入后,点击“恢复Claude Code配置”按钮,将Claude Code的配置文件恢复到原始状态。
Codex的配置覆盖逻辑一模一样。
设置
你可以在设置页面,对aicodedeswitch进行配置。
也可以导出配置数据,转移到其他电脑上导入。
所谓供应商,就是提供AI服务的上游服务商。可以是OpenAI、Claude、DeepSeek、GLM 官方服务,也可以是其他中转服务商。
通过将你所有的AI服务商统一起来管理,可以帮你:
- 避免频繁修改配置文件,通过aicodeswitch,可以一键切换到不同的供应商的AI服务API
- 通过aicodeswitch,将不同供应商的接口数据,转换为工具可以正确使用的接口数据格式,也就是说,你可以将Claude Code接入遵循openai的接口数据协议的其他接口
- 避免你忘记曾经注册过那些供应商
- 充分榨干不怎么用的供应商的服务,避免充值后不怎么用浪费了
供应商接口返回的数据格式标准类型,目前支持以下几种:
- OpenAI(Responses API标准)
- OpenAI Chat (Chat Completions API标准)
- DeepSeek Chat(reasoning_content标准)
- Claude
- Claude Chat
- Gemini
- Gemini Chat
有什么用?
aicodeswitch内部,会根据“源类型”来转换数据。例如,你的供应商API服务接口是OpenAI Chat的数据格式,而你在路由中配置的“客户端工具“是Claude Code,那么就意味着,这个供应商API的数据,需要经过转换之后才能被Claude Code正确使用。
路由是aicodeswitch的核心功能,它负责将不同的对象工具(目前指Claude Code和Codex)的请求,路由到不同的供应商API服务上。
目前指Claude Code或Codex。
以Claude Code为例,它的请求实际上并非铁板一块,可以被分为多种。比如它的深度思考、长文对话、图片理解等等,都是可以独立对待的。
路由规则的目的,就是让你的工具发出的请求,可以根据这个区分,发送给不同的服务商来处理。例如,你默认使用glm-4.7作为写代码的模型,但是,你可以把图片识别的请求发给doubao-code来进行,因为doubao-code的图片识别平均价格可以更低。同样的道理,不同目标的请求可以通过不同的规则来处理,以提升编程的质量和效果。
目前,我仅提供了几个比较容易区分的规则,以后,还会添加更多的规则。
我们可以为Claude Code添加多个路由,但是,我们必须激活一个路由,才能开始使用。 而且,所有以Claude Code为对象的路由,在同一时间,只有一个可以被激活。
你可以根据你的实际情况来实时切换路由,比如,你可以在发现自己的某个服务商处的余额较少时,立即切换到另外一个服务商。
智能故障切换机制
当同一请求类型配置多个规则时,系统会按排序优先使用第一个,如果某个服务报错(4xx/5xx)或请求超时,将自动切换到下一个可用规则,确保你可以正常使用coding工具。
支持将openai的流式响应数据转换成Claude Code的流式数据,并支持实时转换,从而可以让你使用支持openAI的API服务来在Claude Code中使用。
不过,需要注意,如果你的API服务商不支持tools,或者所支持的max_tokens太小,是无法在Claude Code中使用的。
你可以在 aicodeswitch 中集中统一管理 skills,把skills分发给claude code和codex,随时启用和停用skills。 另外,你可以基于自然语言搜索skills,找到skill之后,支持一键安装。
你可以在 aicodeswitch 中集中统一管理 MCP,把MCP分发给claude code和codex,随时启用和停用MCP。 并且,你还可以通过MCP来实现图像理解。
在日志页面,您可以查看:
请求日志:所有 API 请求的详细记录
- 请求来源和目标
- 请求内容和响应
- 耗时和状态码
- 错误信息(如有)
错误日志:错误和异常记录
- 错误类型
- 错误详情
- 发生时间
会话日志:按照会话session来汇集日志
日志筛选
根据提供的选项进行筛选。
作为 CLI 工具,你可以在 ~/.aicodeswitch/ 目录下找到工具的相关文件。里面有一个 aicodeswitch.conf 文件,可以进行配置。 目前仅支持以下配置:
# aicodeswitch的服务端口
PORT=4567
# 如果提供AUTH,你无法直接登录用户界面,必须输入AUTH的值才能进入,相当于是一个登陆鉴权
# 如果你在自己的服务器上使用,通过远程接入接口时,就必须提供这个值
# AUTH=
服务监听地址由 AUTH 模式自动决定,无需也无法通过配置修改:
- AUTH 关闭:仅监听
127.0.0.1(本机访问)- AUTH 开启:监听
0.0.0.0(允许远端 AccessKey 客户端连接)写入本地编程工具(Claude Code / Codex)配置文件的地址、以及 UI / CLI 展示的访问地址,统一使用
127.0.0.1。
在路由管理页面修改规则的目标供应商,或调整优先级即可。
在请求日志页面,筛选状态码不为 200 的记录。
在系统设置页面使用导出配置功能,然后将提供的数据保存到本地文件中。
在系统设置页面修改日志保留天数配置。
- PCM: 用户意图识别、精准上下文、多线对话的Agent系统
- Lan Transfer: 免费高效的局域网文件互传工具
- MCP Bone: 远程托管的MCP服管理工具
- Anys: 免费前端监控kit
- WebCut: 免费开源的网页端视频剪辑UI框架
- indb: 网页端轻量kv数据库操作库
- Formast: 复杂业务场景下的企业级JSON驱动表单框架
- Claude Code 深度教程: 100%免费的Claude Code入门到精通教程
- AICodingBus: AI Tokens 交换平台
你的支持是我前进的动力!
此项目采用双许可证模式:
- 开源使用:项目默认采用 GPL 3.0 许可证,允许个人免费使用、修改和分发,但所有衍生品必须开源。
- 商业使用:如果您希望商业化使用而不遵守 GPL 条款(例如闭源销售),请联系我们购买单独的商业许可证。
如有问题或建议,请访问项目 GitHub 仓库提交 Issue。
