你用AI写代码,钱花在刀刃上了吗?
一、RTK是什么
先说问题
你用Claude Code或Codex写代码时,AI会自动跑各种命令——git status、cargo test、grep……
每跑一条,命令输出就原封不动塞进AI的上下文窗口,全按token计费。
问题在这里:一次cargo test可能输出2000行,里面真正有价值的不超过50行。剩下1950行是格式、空行、重复的模块路径——你在用真金白银给噪音买头等舱。
RTK是什么
说人话:RTK(Rust Token Killer)是一个夹在”命令输出”和”AI接收”之间的压缩器。
它拦截命令结果,过滤掉垃圾,只把有用的部分送进去。整个过程对你完全透明——你该怎么用命令还是怎么用,RTK在后台静悄悄替你省钱。
原理图解
没有 RTK:Claude ──发命令──▶ shell ──▶ git/cargo/grep ▲ │ └──────── ~2,000 tokens ───────┘ (原始输出,全量计费)
使用 RTK:Claude ──发命令──▶ RTK ──▶ git/cargo/grep ▲ │ │ │ 过滤压缩 原始输出 └── ~200 tokens ─┘ (已过滤,只传有用部分)RTK夹在”命令执行完”和”结果传给AI”之间,用四种策略同时处理:
- 智能过滤 — 去除注释、空白、样板代码等噪音
- 分组 — 按目录聚合文件列表,按类型归并错误信息
- 截断 — 保留有用上下文,删掉冗余重复内容
- 去重 — 合并重复日志行并计数显示
就像把一份10页的考试卷浓缩成1页答题要点——AI需要的信息还在,废话全没了。
能省多少?
一次30分钟的Claude Code会话,实测数据:
| 操作 | 频率 | 原始Token | RTK后Token | 节省 |
|---|---|---|---|---|
ls / tree | 10次 | 2,000 | 400 | -80% |
cat / read | 20次 | 40,000 | 12,000 | -70% |
grep / rg | 8次 | 16,000 | 3,200 | -80% |
git status | 10次 | 3,000 | 600 | -80% |
git diff | 5次 | 10,000 | 2,500 | -75% |
cargo test / npm test | 5次 | 25,000 | 2,500 | -90% |
| 合计 | — | ~118,000 | ~23,900 | -80% |
一个普通开发会话,从11.8万token直接砍到2.4万。按Claude API计费,这个差距直接影响你每天的账单。
基本信息
完全开源免费(MIT协议),单一Rust二进制,<10ms额外开销,零依赖,不需要账号,无遥测。GitHub已超 52,000颗星,活跃维护中。
WARNINGRTK只压缩命令输出,不处理你手动粘贴进去的代码或问题。它的价值在”AI Agent自动执行命令”这个场景——如果你主要是手动复制代码问问题,收益会小很多。
二、RTK怎么做(Windows实战)
环境:Windows 11 + Claude Code + Codex(OpenAI)
第一件事:选好模式再安装
在Windows上用RTK,有两种方式,效果差距很大:
| 模式 | 拦截方式 | 支持命令 | 节省率 | 适合谁 |
|---|---|---|---|---|
| Windows原生 | 靠CLAUDE.md提示,Claude主动加前缀 | git系列稳定;grep需额外装ripgrep;dir不支持 | 实测约50-80% | 不想折腾,快速上手 |
| WSL(Linux子系统) | Shell Hook自动拦截,一条不漏 | 所有Linux命令开箱即用:ls、grep、find、cargo test等 | 80-90% | 愿意多配置一次,追求最大效果 |
两个核心区别:
① 拦截方式不同: Windows原生没有Hook,RTK无法自动拦截,只能靠Claude主动配合。Claude偶尔忘加前缀,那条命令就全量计费。WSL里Hook自动生效,Claude跑什么命令都先过RTK,没有漏网的。
② 支持命令不同: Windows原生下,dir不被RTK识别(直接透传),grep要单独装ripgrep,ls在PowerShell下可能报错。WSL是完整Linux环境,所有命令开箱即用,没这些坑。
TIP怎么选: 先按Windows原生装好试用。如果每天用Claude Code超过1小时,值得花20分钟开WSL换完整版。两种方式可以共存,不冲突。
第一步:安装RTK
打开PowerShell,一行搞定:
winget install --id rtk-ai.rtk --exact验证安装成功:
rtk --version看到版本号就行。

WARNING不要双击
rtk.exe,它是命令行工具,必须在终端里用。
第二步:接入Claude Code
Windows原生模式:
rtk init -gRTK自动检测Windows环境,写入Claude Code的配置文件。Claude会读到RTK的使用说明,之后会主动在命令前加rtk前缀。

初始化说明初始化时会询问是否写入
settings.json,输入y确认。RTK会自动备份原配置文件(settings.json.bak),放心操作。
WSL完整模式(可选,效果更好):
先在管理员PowerShell里开启WSL:
wsl --install进入WSL后,再装一次RTK并初始化:
curl -fsSL https://rtk-ai.app/install.sh | shrtk init -gWSL模式说明WSL模式下,需要从WSL终端启动Claude Code,RTK的Hook才能生效。文件路径通过
/mnt/d/你的项目访问Windows盘符,其余用法完全一样。
第三步:接入Codex(OpenAI,可选)
多加一个参数:
rtk init -g --codex第四步:验证效果
跑一条命令看看压缩效果:
rtk git status输出比原版短很多,但核心信息都在。查看今天节省了多少:
rtk gainrtk gain 会输出一张统计表,显示每条命令的节省率和总体效率。

Windows原生实测:哪些命令有效,哪些有坑
我在Windows原生环境(PowerShell + bash)里把常用命令挨个测了一遍:
效果好的命令:
| 命令 | 实测节省率 | 备注 |
|---|---|---|
rtk git status | 52.9% | 输出清晰,只显示关键变更 |
rtk git diff | 52.2% | 自动折叠无关内容 |
rtk git log -n 10 | ~13% | log本来就短,节省有限,正常 |
rtk ls | 79.2% | 目录树格式,按大小显示 |
rtk find "*.md" . | 99.9% | 效果极好,4800个token压成3个 |
rtk cat 文件 | ✅ 正常 | 能读文件并过滤 |
有坑的命令(及解决方法):
| 命令 | 问题 | 解决方法 |
|---|---|---|
rtk ls | 中文路径有时乱码 | 运行前执行 chcp 65001 切换UTF-8 |
rtk grep | 找不到rg(ripgrep),节省0% | 单独安装:winget install BurntSushi.ripgrep.MSVC |
rtk dir | RTK不认识dir,直接透传,节省0% | 改用 rtk ls 替代 |
rtk ls(部分环境) | PowerShell没有ls命令 | 用Git for Windows自带的bash,或上WSL |
TIP22条命令测完,整体节省率 74.5%,其中
find贡献最大(99.9%)。Git相关命令在Windows原生下表现稳定,是最值得用的场景。
WARNING
rtk gain里出现很多0%不要慌。 这只说明那条命令的原始输出本来就很短,没什么可压缩的——不是RTK坏了。节省率跟”原始输出有多冗余”成正比,cargo test、npm install这类输出冗长的命令才是RTK的主战场。
进阶:Windows原生模式手动增强
在你项目的 CLAUDE.md 里加这几行,让Claude更主动地用RTK前缀:
运行终端命令时,请在命令前加 `rtk` 前缀:- `rtk git status` 而不是 `git status`- `rtk cargo test` 而不是 `cargo test`道理讲完了,该你了
三件事,回去就能做:
- 先装上再说 —
winget install --id rtk-ai.rtk --exact,两分钟搞定,零成本试试 - 在一个真实项目里跑一天 — 用Claude Code正常开发,结束前用
rtk gain看看省了多少token,有数据才有感知 - 如果效果明显,考虑上WSL — Windows原生是”降级版”,WSL里才是RTK的完整体验,省80-90%不是吹的
不是工具不够多,是你在用对的工具之前,一直在给噪音付钱。
如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时






