乐于分享
好东西不私藏

AI 编程烧钱?这个 48K 星工具省 80% token

AI 编程烧钱?这个 48K 星工具省 80% token

先说个场景。

你在用 Claude Code 写代码,一个上午下来,token 消耗飙到六位数。倒不是心疼那几十块钱,而是每次等 AI 读完你项目的目录结构、git 状态、测试输出,那个等待时间比你自己敲代码还久。

它不是卡,是在吞 token。

有个 Rust 单文件工具,专门干一件事。把你的命令输出先过滤一遍,去掉 LLM 根本不需要的垃圾,再喂给 AI。效果很直接,省 80%。

GitHub 上叫 rtk,48.6K 星,3K fork。名字是 Rust Token Killer 的缩写,简单粗暴。


它到底省多少

来看一组真实数据。这是一次 30 分钟的 Claude Code 编程会话。

操作
原始 token
rtk 后
省掉
npm test
 跑 5 次
25,000
2,500
90%
ls
 / tree 10 次
2,000
400
80%
cat
 读文件 20 次
40,000
12,000
70%
grep
 搜索 8 次
16,000
3,200
80%
git
 提交推送 8 次
1,600
120
92%
合计118,00023,90080%

git 操作省最多,92%。因为你改了什么、commit message 写什么,AI 不需要知道你仓库里 200 个文件的完整 diff。rtk 只保留改了哪些文件、变更了多少行,就够 AI 理解上下文了。

测试输出也省得狠,90%。jest 一口气吐 500 行日志,实际上 AI 只需要看哪些测试挂了、报什么错。rtk 把重复堆栈折叠、通过的测试折叠,只留下失败的关键信息。

坦率的讲,这组数据不是极限情况。日常编码会话里,token 大部分都花在了「AI 不需要知道的冗余信息」上。rtk 做的就是把这层砍掉。


它怎么做到的

四种策略,按命令类型自动组合。

智能过滤。 ls 输出里的日期、权限位、文件大小,AI 不需要。rtk 只保留文件名和目录结构。cat 读代码,注释和空行砍掉,只留实际逻辑。不是每次都砍,你可以配白名单。

分组聚合。 同一个目录下的文件归堆,同类型的构建错误合并。AI 看到的是「src/ 下有 12 个文件有类型错误」,不是 12 行重复报错。

截断。 长文件只给头尾,大日志只留关键段。比如一个 2000 行的 server log,rtk 保留前 20 行启动信息和最后 50 行报错,中间全砍。

去重。 CI 挂了跑 3 次同一个报错,rtk 折叠成「以上错误出现了 3 次」。AI 不需要读三遍一样的东西。

这四种策略不是固定的。rtk 内置了 100+ 个命令的「配方」—— 每个命令用什么策略组合、砍多少、保留什么,都是调过的。


怎么用

分两步,安装,注入。不同系统走不同路线。

安装 rtk

macOS 用户。

brew install rtk

Homebrew 是最省事的,一条命令搞定。

如果没装 Homebrew,用官方安装脚本。

curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh | sh

这个脚本会把 rtk 装到 ~/.local/bin 下面。如果你的 PATH 里没这个目录,加一行到 .bashrc 或 .zshrc

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc

Linux 用户。

跟 macOS 一样,用安装脚本或 cargo。

curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh | sh

如果你装了 Rust 工具链,也可以走 cargo。

cargo install --git https://github.com/rtk-ai/rtk

Windows 用户。

去 GitHub Releases 页面,下载 rtk-x86_64-pc-windows-msvc.zip。解压后把 rtk.exe 放到一个在 PATH 里的目录,比如 C:\Users\你的用户名\.local\bin

执行的时候注意,别双击 exe,那个窗口一闪就没了。要在 PowerShell 或者命令提示符里面跑。

Windows 上自动注入功能有部分限制,建议用 WSL 获得完整体验。

注入到你的 AI 工具

装好之后,让 rtk 接管你的终端命令。

rtk init -g        # Claude Code / Copilot,默认

如果你用其他工具。

rtk init -g --gemini       # Gemini CLIrtk init -g --codex        # OpenAI Codexrtk init --agent cursor    # Cursorrtk init --agent windsurf  # Windsurfrtk init --agent cline     # Cline / Roo Codertk init --agent hermes    # Hermes

跑完之后重启你的 AI 工具。接下来你正常敲 git statusnpm testdocker ps,rtk 会在命令执行前自动改写,把输出过滤干净再喂给 AI。

你感觉不到任何变化,打字、问问题、改代码,一切照旧。唯一的区别是,token 消耗曲线从陡峭变成平缓。

看看省了多少

跑一行看一眼。

rtk gain --graph

输出一张 ASCII 图,近 30 天每个命令省了多少 token,折合多少钱。想看日报可以 rtk gain --daily,导出 JSON 分析可以 rtk gain --all --format json

覆盖的命令不止 git 和 npm。docker、k8s、AWS CLI、cargo、pytest、jest、ESLint、playwright、Go test 都在支持列表里。Rust 写的单文件,没有任何外部依赖,启动时间不到 10 毫秒。


说句实在话

48K 人 star 它不是因为它「看起来很酷」。是因为它做的事情太实用了,而且零迁移成本。

你不需要换编辑器,不需要改工作流,不需要学新命令。装完就忘掉它存在,token 账单会替你记住。

装好之后,跑一局正常的编码会话,然后 rtk gain --graph 看一眼。数字可能比你想的还好看。


  • • GitHub, https://github.com/rtk-ai/rtk
  • • 文档, https://docs.rs/rtk