分享一个开源的本机 AI 网关:中转、国产模型、Claude Code、Codex 放在一起管,每个请求花了多少钱都看得到

先说适合谁:同时用 Claude Code 、Codex ,手上有好几个中转或国产模型的 key ,被 CC Switch 切换折腾过的,可以试试。

之前用 CC Switch 的几个痛点

  • 切上游总要重启客户端。( proxy 模式也没有特别好用)
  • Codex 初始化时输入的 key 被它学了过去,结果上游直接炸了。(好像最近修了)
  • Codex 换了供应商,旧会话就接不上(#7257,四十多楼,还开着)。
  • 路由弱,切换也不方便。 一个客户端同时只能用一个供应商;按模型分给不同家(#3703)挂了快四个月没有维护者回复;负载均衡标了不做,理由是会丢缓存(#842);按供应商单独设代理,3.14 起还被去掉了(#2243)。
  • 设计和产品力差。 界面不好看,交互也乱。功能越堆越多:十个客户端、MCP 、Skills 、提示词、会话、用量、几十个供应商预设(里面还有赞助商),核心的切换和路由反而没做好。
  • 中转能看到你发出去的全部内容,它发出前不做任何检查(#7357 还开着)。

换成 ThinkWatch Lite 之后

思路不一样:客户端只接一次,指向本机的网关,之后的事都在网关里做。

  • 切中转不用重启:换上游、调路由都在网关里完成,客户端的配置不再动。手动选择的策略组在菜单栏或托盘里就能切。
  • 配置只写一次:接管时只改指向网关的那几项,写之前给完整 diff 、备份原文件,随时能还原。客户端只拿到一把网关专用的 key ,原来的 key 和登录信息不会被导入或拿去用。
  • Codex 会话不再拆开:Codex 只认一个 provider ,换上游不影响会话列表(接管前的旧会话仍在原来那边)。
  • 路由够用:按模型、token 数、工具、图片、思考等条件分给不同的上游,也能改写模型名;故障转移、轮询、延迟最低、费用最低都有。轮询时同一个会话固定在同一个上游,缓存照常命中。
  • 什么格式都能接:Anthropic 、OpenAI Chat 、Responses 、Gemini 四种格式互相转换。Claude Code 能用 GPT 、Gemini ,Codex 能接只有 Chat 接口的中转。
  • 每个请求看得清:费用、token 、缓存命中、首 token 时间、生成速度,走了哪条规则、依次试了哪几个上游,完整的请求和响应都在。中转可以按倍率计价,请求还能重放到另一个上游对照。菜单栏直接显示今天花了多少,GLM Coding Plan 、ChatGPT 的额度也能看。
  • 省套餐额度:Claude Code 自己发的标题生成、预热这类辅助请求,可以由网关本地应答,不发给上游。
  • 中转收不到你的 key:发出前把 API key 、token 、私钥等换成占位符,响应里回显时再换回来;模型让客户端执行「下载后执行」「外发环境变量」这类命令时,在流式输出中途切断。默认只记录、不拦截,看过日志确认没有误报再打开。

一键接管的客户端:Claude Code 、Codex (包括 ChatGPT 桌面版里的 Codex )、opencode 、Claude Desktop 、Zed 、Aider 、DeepSeek Harness ; Cursor 、Continue 、Antigravity CLI 有手动配置的说明。Windows 上 WSL 里的 Claude Code 、Codex 也能接( WSL 1 或 mirrored 网络)。网关还能装在 Linux 服务器上,由桌面端远程管理。

安装

GitHub: https://github.com/ThinkWatchProject/ThinkWatch-Lite ( MIT ,数据都在本机,不收集使用数据)

用着有问题,或者想要哪个客户端、上游,欢迎在楼里说。