做 AI 编程时,每次执行 git status、cargo test、npm run build,原始输出动辄几千甚至上万 token。但你实际需要什么?
「有没有改」「有没有报错」 —— 就这几个字而已。
RTK (Rust Token Killer) 能在你和终端之间加了一层"过滤器",把冗余的注释、空格、重复行去掉,压缩到原来的十分之一。一次 30 分钟的 Claude Code 会话,能省下约 8 万 token。
快速上手
x install rtk
配置全局钩子,重启 claude code 后即可启用 rtk 压缩:
rtk init --global
钩子透明地将 Bash 命令改写成 RTK 等价命令,AI 收到的输出已经被压缩。
重要:钩子只对 Bash 工具调用生效。Claude Code 内置的 Read、Grep、Glob 等工具不经过 Bash 钩子。
核心命令
| 命令 | 说明 |
|---|---|
rtk ls . | 目录树 |
rtk read file.rs | 文件读取 |
rtk git status | 紧凑状态 |
rtk git diff | 精简 diff |
rtk git push | 输出 "ok main" |
rtk test cargo test | 只显示失败用例 |
rtk pytest | Python 测试 |
rtk docker ps | 容器列表 |
rtk gain | Token 节省统计 |
Token 节省效果
| 操作 | 频率 | 原始 | RTK 后 | 节省 |
|---|---|---|---|---|
git status | 10x | 3,000 | 600 | 80% |
git diff | 5x | 10,000 | 2,500 | 75% |
cargo test | 5x | 25,000 | 2,500 | 90% |
grep/rg | 8x | 16,000 | 3,200 | 80% |
| pytest | 4x | 8,000 | 800 | 90% |
一次会话约节省 80% token 消耗。
工作原理
RTK 在终端命令和 AI 之间架设代理,对输出应用四大策略:
- 智能过滤:去掉注释、空格、模板代码
- 分组聚合:文件按目录、错误按类型分组
- 截断保留:保留关键上下文,剪掉重复
- 去重压缩:重复行合并为带计数的单行
适用场景
- AI 编程辅助:终端输出质量直接影响 AI 理解效率
- 频繁执行开发命令:一天几十次 git/test/build,节省累积明显
- 大项目输出处理:
ls、grep结果几百行,压缩后 AI 处理更快
总结
模型 token 越来越便宜,但上下文窗口是有限的、珍贵的。你用垃圾内容填满上下文窗口,那就是浪费。
**RTK 的本质是:让你的上下文窗口被高质量信息填满,而不是被噪音占用。**让 AI 少看废话,多看重点。