受够了天天手改 settings.json,我用 GLM 5.3 十分钟撸了个切换器,已经开源了

0 阅读5分钟

受够了天天手改 settings.json,我用 GLM 5.3 十分钟撸了个切换器,已经开源了

先说结论:AISwitch,一个桌面小工具,专门用来给 Claude Code 和 Codex CLI 一键切换模型/服务商。Tauri 2 + React 19 写的,macOS / Windows / Linux 都有安装包,MIT 协议,源码在这里:

github.com/small-dream…

感兴趣的可以先去看代码,回头再听我唠开发过程。

起因:一件烦了很久的小事

用 Claude Code 的朋友应该都懂这个流程——想从官方 API 切到 GLM 或者 DeepSeek,你得:

  1. 打开 ~/.claude/settings.json,把 ANTHROPIC_BASE_URL 换掉
  2. 把新 key 粘进去,注意别多删一个逗号
  3. 模型名再改一下
  4. Codex 那边还有一套 config.toml + auth.json,来一遍

一天来个两三回,每次都是「改配置 → 保存 → 跑一下试试 → 哦豁 JSON 写坏了 → 再改」。也不是什么大事,但就是烦,像鞋里进了个小石子。

市面上的方案我也试过一些,要么是本地起个代理帮我转发,要么就是 Web 版的管理台。可我需求很简单:我就想换个配置文件,别在我和 API 之间加东西。加一层代理,我得担心它记不记日志、挂了怎么办;Web 版更别提了,让它读我的 API key?

于是就想着自己写一个。规则只有一条:只读写 Claude Code 和 Codex 的配置文件,别的一概不做。

过程:GLM 5.3 十分钟出了能用的版本

说实话这个项目本来在 todo list 里躺了挺久的,一直没动,因为「写个 Tauri 项目」听起来就要折腾半天:脚手架、Rust 侧的文件操作、前后端 IPC……

结果 GLM 5.3 发布那天我寻思拿它试试,把 PRD 丢给它——真的是我随手写的一段话,大意是「做一个切换 Claude Code 配置的工具,要有预设、备份、回滚」——十分钟不到,一个能跑的 Tauri 应用就摆在那了。窗口、列表、切换逻辑都是通的,我做的基本就是提需求、看代码、提修改意见。

image.png 当然,十分钟拿到的是 MVP,「能用」和「敢放出去给别人用」之间还差着一个周末加几个晚上。这部分 AI 帮的忙也很大,但方向得自己把握,几个我坚持抠到底的点:

写入必须原子化。 配置文件写一半崩溃了,用户的 CLI 就废了。最后的方案是先写临时文件、收紧权限、再原子替换,写完读回来校验。这套流程是我跟模型来回讨论了几轮才定下来的,它一开始给的实现就是普通的直接覆盖写入,被我打回去重写了。

Key 的处理要偏执一点。 存 key 的文件全部 0600 权限,界面上永远打码——短的 key 也全遮,不露一半。连通性测试只允许 HTTPS(本机 localhost 例外)。这些不是用户会主动要求的功能,但一个碰 API key 的工具,我觉得这是本分。

装了要能干净地卸载。 第一次切换之前,AISwitch 会把你原始的配置拍个快照。哪天不想要它了,点一下「恢复到安装前」,三步确认,每个文件恢复成什么样都列给你看。我自己最烦那种卸载完留一堆残渣的软件,不能自己变成那样。

有意思的是,这些「额外要求」提给 GLM 5.3 之后,它的完成质量比我预期高。比如我提了一句「临时文件在 rename 之前就要收紧权限,不然崩溃残留会泄 key」,它不光改了,还在旁边补了启动时把历史遗留的松散权限收紧的逻辑。这种你只说半句、它能把另半句补上的感觉,是这次体验里最爽的部分。

它能干什么

具体功能列一下,懒得看文字的直接翻截图:

  • 启动时自动读 Claude Code / Codex 的全局配置,当前用的哪家、什么模型,一目了然
  • 预设管理:Base URL + Key + 模型名存成一个档位,起个名字
  • 一键切换,写入前自动备份,写坏了自动回滚,历史备份也能手动恢复
  • 切换前可以测一下连通性,别切过去了才发现 key 填错了
  • Codex 的 models.json 可以直接托管进来,贴一条或者整个文件都行
  • 系统托盘直接切,不用开窗口
  • 中英文界面、明暗主题都有

image.png 再强调一遍隐私的事:纯本地,无账号,无云端,无埋点。数据只存在你自己的 ~/.aiswitch/ 目录里,出网请求只有你手动触发的连通性测试,而且只允许 HTTPS。不信的话,代码全开源,欢迎审计。

一点想法

这次最大的感受是,「会写代码」这件事的价值重心在变。十分钟出 MVP 意味着验证一个想法的成本几乎为零,真正花时间的变成了:想清楚产品该做什么、不该做什么,以及在安全这种用户看不见的地方肯不肯下笨功夫。

工具本身是小事,但每天能省下几次改配置的烦躁,还不用把 key 交给任何中间层——对我来说这就够了。

如果你也在 Claude Code / Codex 之间来回切模型,欢迎试试:

GitHub: github.com/small-dream… 下载安装包请到 Releases 页面(安装包目前没签名,macOS 首次打开需要在「系统设置 → 隐私与安全性」里放行一次)

用着顺手的话,点个 star;遇到 bug 或者想要新功能,开个 issue 就行,人都在。