戳上方蓝字“笃秀一芯”关注我
大家好,我是 笃秀一芯。

记得以前搞底层的朋友一脸鄙视地跟我说:“做普通开发别用 Rust,写它跟写编译器似的,心智负担太重,不适合人类。”
但最近使用的几款工具,作者居然全是 Rustacean。虽然Go语言已经天下无敌了,但还是有必要分享下这些rust工具给大家。

我上周同时开了 Claude Code 写业务、Goose 修 lint、Gemini CLI 读文档,三个 terminal 窗口摆着,切 provider 的时候手滑把 DeepSeek 的 key 粘到 Claude 的 config 里了——然后花了二十分钟才搞明白为啥 Claude 报 401。
那一刻我就想:有没有个东西能把我这几个 AI 小祖宗的配置统一管了?
还真有。而且俩都是 Rust 写的。这事儿就很 Rust 本色:被现有工具折磨 → 骂骂咧咧 → 自己造一个 → 性能还吊打原版。
🧰 cc-switch —— AI CLI 的"宿管阿姨"
先讲痛点,你肯定中过招
现在 AI coding CLI 的配置有多乱:
Claude Code 要改 ~/.claude/settings.jsonGoose 要改 ~/.config/goose/config.yamlCodex 要 .envGemini CLI 要 gcloud authMCP 每个工具还要单独配 stdio/http/sse
换一个模型 ≈ 搬一次家。更要命的是**:Claude Code 改完 config 得重启 terminal 才能生效**,你刚打到一半的 prompt 全没了。
cc-switch 是啥
GitHub 上 farion1231/cc-switch,5 万+ Star,MIT 协议**。定位是"AI CLI 配置统一管理器*"*,专治上面这些破事。
技术栈很 Rust 味:
核心逻辑 纯 Rust(配置解析、provider 管理、MCP 同步、本地代理) 桌面端 Tauri 2 + React/TS,安装包 ≈ 11MB,常驻托盘几乎不占内存 CLI 版 cc-switch-cli纯 Rust 跑,SSH 远程也能用Web 版 Rust 编译 wasm,Headless 服务器友好
三端共享同一套 Rust core lib——provider 解析、MCP 格式转换、API 节点测速逻辑写一次到处跑,这 code reuse 爽感只有 Rustacean 懂。
为啥这活儿适合 Rust 干
划重点 👇
要同时啃 JSON / YAML / TOML / .env四种配置格式 → Serde 一把梭,零成本抽象本地代理要做 API 测速 + 故障自动转移 → 碰 socket, tokio + hyper稳得像老狗常驻托盘不能有 GC 停顿 → 无 GC 是 Rust 的基本修养 跨平台(Win/Mac/Linux)托盘 + 桌面 UI → Tauri 的 Rust 核心比 Electron 轻 10 倍
几个真香的骚功能
- 50+ provider 预设
:Claude 官方、DeepSeek、智谱、Kimi、通义、Gemini、OpenRouter 乃至"某国内中转站"的 base_url 都给你预填了,填 key 就跑 - MCP 一次配,三家同步
:配一次自动推到 Claude Code / Goose / Codex,不用每个工具跪舔一遍 - Claude Code 热切换不重启
:改 provider 点一下,terminal 里正在跑的会话不断,继续喷 code - API 节点故障转移
:你挂两个 DeepSeek 中转节点,A 挂了自动切 B,不用半夜爬起来改 config
装法也简单:桌面端 Releases 下对应包,Mac 直接 brew install --cask cc-switch。
goose—— 自己会跑的 AI 实习生
cc-switch 是"管 AI 工具的",goose 是 "AI 工具本人"。
先认祖归宗
Goose 本体是 Block(原 Square)开源的本地 AI coding agent,MIT 协议,纯 Rust 写的。aaif-goose 一般是高校/研究机构(AAIF 大概是某个 AI 论坛或实验室的 fork)做的定制版,核心和 Block/main 一致,可能多了些内部 MCP 预设或私有模型适配,普通用户直接用 Block 主线就行,折腾党可以逛 aaif 的 fork 捡 patch。
它和 Claude Code / Codex 有啥不一样
| 纯本地 agent loop | ||
最关键的一点**:Goose 是单二进制分发**。Mac 上下载完拖进 Applications 就能跑,不用装 node、不用装 python,不会像某些工具偷偷把你 src/ 传上去(虽然 Claude Code 也本地跑,但 Goose 的 agent loop 是 Rust 写的,沙箱更硬)。
为啥 agent 用 Rust 写这么爽
划重点 👇
- Agent Loop + 工具调用沙箱
:Rust 所有权保证它不会偷偷 rm -rf你的根目录,shell/file/network 调用都在权限模块里裹着- Provider 抽象成 trait
:换模型只要 impl ParseResponse,Claude 的流式、DeepSeek 的返回格式、Ollama 的本地推理,统一成一套 LLM 交互层- Extension 是独立 subprocess + stdin/stdout JSON-RPC
:扩展可以用任何语言写,但核心 loop 是 Rust 保稳,跑几百轮 tool call 内存也不会飘 - Recipe 机制
:相当于把"修 lint → 改代码 → 跑测试"这种固定 workflow 打包成一个 yaml,点一下 goose 自己循环到你满意
举个 recipe 的小例子(真的就这么简单):
name: fix-clippy
description: 自动修 cargo clippy 报错
prompt: 运行 cargo clippy,把所有报错逐个修掉,修完再跑一次确认 0 warning
tools: [shell, file]
你提交个 MR 带 clippy 报错,Goose headless 模式在 CI 里跑一个这个 recipe,改完自动 push —— 老板问你就说"招了个 Rust 实习生,不交社保"。
🤝 这俩凑一起才是完全体
cc-switch 里可以直接配 Goose 的 provider + MCP,点一下启动,连 ~/.config/goose/config.yaml 都不用手写。
形象点说:
- cc-switch = 宿管阿姨
:管你有多少个 AI 工人、每个工人的工牌(API key)/ 工位(MCP)/ 排班(provider)怎么排 - goose = 最能打的实习生
:自己会领活、自己会装工具、干不完还会自己喊(调 MCP)
以前你伺候三个 AI CLI 像伺候三个性格不合的祖宗,现在阿姨管后勤,实习生干活,你只管摸鱼等 PR。
🔚 为啥最近 AI 工具圈 Rust 出镜率这么高
你盘点下:
桌面壳**:Tauri**(Rust) 搜索**:ripgrep**(Rust) 打包**:turbo**(Rust) AI 工具链**:cc-switch**(Rust**)、goose**(Rust**)、qdrant/vector**(Rust 向量库)
原因其实很朴素:
AI 工具要"本地跑不卡 + 不偷用户数据 + 跨平台 + 能和 node/python 生态互操作",Rust 刚好全踩中。写配置管理器要碰文件系统/Serde,写 agent 要沙箱/async/跨平台分发,这都是 Rust 的舒适区。
以后写 AI toolchain 的,不会 Rust 可能真的要落后半拍 —— 至少不会被配置折磨得自己造轮子(笑)。
你最近在用哪个 AI coding 工具?配置折腾过最久的一次是啥?评论区唠唠。
夜雨聆风



