RTK (Rust Token Killer) 使用文档

RTK (Rust Token Killer) 使用文档

项目概述

RTK 是一个高性能的 CLI 代理工具,可以将 LLM 令牌消耗减少 60-90%。它通过过滤和压缩命令输出,在输出到 LLM 上下文之前进行优化。

  • 单个 Rust 二进制文件
  • 支持 100+ 命令
  • 开销 <10ms
  • MIT 许可证

核心优势

在一个 30 分钟的 Claude Code 会话中,RTK 可以节省约 80% 的令牌:

操作 频率 标准输出 RTK 输出 节省
ls / tree 10x 2,000 400 -80%
cat / read 20x 40,000 12,000 -70%
grep / rg 8x 16,000 3,200 -80%
git status 10x 3,000 600 -80%
git diff 5x 10,000 2,500 -75%
cargo test 5x 25,000 2,500 -90%
总计 ~118,000 ~23,900 -80%

安装指南

Windows 安装(推荐)

方法 1:下载预编译二进制

  1. 访问 GitHub Releases
  2. 下载最新版本的 rtk-x86_64-pc-windows-msvc.zip
  3. 解压到本地目录
  4. rtk.exe 放到 PATH 中:
# 创建本地 bin 目录
mkdir -p ~/.local/bin

# 移动可执行文件
mv rtk.exe ~/.local/bin/

# 添加到 PATH(PowerShell)
$env:PATH += ";$env:USERPROFILE\.local\bin"

# 或添加到系统 PATH(永久)
# 控制面板 > 系统和安全 > 系统 > 高级系统设置 > 环境变量

方法 2:使用 Cargo 安装

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

方法 3:使用 Homebrew(如果已安装)

brew install rtk

验证安装

# 检查版本
rtk --version

# 查看令牌节省统计
rtk gain

# 如果两个命令都成功,说明安装正确

⚠️ 注意:存在名称冲突。另一个项目 "Rust Type Kit" 也叫 "rtk"。确保 rtk gain 命令有效。


快速开始

1. 初始化 RTK

为你的 AI 工具初始化 RTK:

# Claude Code / Copilot(默认)
rtk init -g

# Gemini CLI
rtk init -g --gemini

# OpenAI Codex
rtk init -g --codex

# Cursor
rtk init --agent cursor

# Windsurf
rtk init --agent windsurf

# Cline / Roo Code
rtk init --agent cline

# Kilo Code
rtk init --agent kilocode

# Google Antigravity
rtk init --agent antigravity

# Hermes
rtk init --agent hermes

2. 重启 AI 工具

初始化后,重启你的 AI 工具(如 Claude Code)。

3. 测试

运行任何命令,RTK 会自动优化输出:

git status      # 自动转换为 rtk git status
ls -la          # 自动转换为 rtk ls
cat file.txt    # 自动转换为 rtk cat

工作原理

无 RTK 的流程

Claude  --git status-->  shell  -->  git
  ^                                   |
  |        ~2,000 tokens (原始)       |
  +-----------------------------------+

使用 RTK 的流程

Claude  --git status-->  RTK  -->  git
  ^                      |          |
  |   ~200 tokens        | 过滤     |
  +------- (压缩) --------+----------+

四大优化策略

  1. 智能过滤 - 移除噪声(注释、空白、样板代码)
  2. 分组聚合 - 按目录分组文件、按类型分组错误
  3. 截断处理 - 保留相关上下文,删除冗余信息
  4. 去重处理 - 折叠重复的日志行

常用命令

基础命令

# 查看帮助
rtk --help
rtk <command> --help

# 查看版本
rtk --version

# 查看配置
rtk config show

文件操作

# 列出目录(压缩格式)
rtk ls
rtk ls -la
rtk tree

# 读取文件
rtk cat file.txt
rtk head -20 file.txt
rtk tail -10 file.txt

# 搜索文件
rtk find . -name "*.rs"
rtk grep "pattern" file.txt
rtk rg "pattern"

Git 操作

# 查看状态
rtk git status

# 查看差异
rtk git diff
rtk git diff --cached

# 查看日志
rtk git log
rtk git log --oneline

# 提交操作
rtk git add .
rtk git commit -m "message"
rtk git push

测试和构建

# Rust 项目
rtk cargo test
rtk cargo build
rtk cargo check

# Node.js 项目
rtk npm test
rtk npm run build

# Python 项目
rtk pytest
rtk python -m pytest

# Go 项目
rtk go test ./...

令牌分析

# 查看节省统计
rtk gain

# 显示 ASCII 图表(最近 30 天)
rtk gain --graph

# 查看历史记录
rtk gain --history

# 按天分解
rtk gain --daily

# JSON 格式导出
rtk gain --all --format json

# 发现遗漏的节省机会
rtk discover

# 查看最近 7 天的所有项目
rtk discover --all --since 7

# 显示最近会话的 RTK 采用情况
rtk session

高级命令

# 摘要模式(启发式摘要)
rtk summary <long command>

# 原始传递模式(跟踪但不过滤)
rtk proxy <command>

# 超紧凑模式(ASCII 图标,内联格式)
rtk <command> -u

# 详细模式
rtk <command> -v      # 一级详细
rtk <command> -vv     # 二级详细
rtk <command> -vvv    # 三级详细

输出示例

目录列表

无 RTK(45 行,~800 tokens):

drwxr-xr-x  15 user staff 480 Jan 15 10:30 .
drwxr-xr-x  20 user staff 640 Jan 15 10:00 ..
-rw-r--r--   1 user staff 1234 Jan 15 10:30 .gitignore
-rw-r--r--   1 user staff 5678 Jan 15 10:30 Cargo.toml
drwxr-xr-x   3 user staff 96 Jan 15 10:30 src
drwxr-xr-x   2 user staff 64 Jan 15 10:30 tests
...

使用 RTK(12 行,~150 tokens):

my-project/
+-- src/ (8 files)
|   +-- main.rs
|   +-- lib.rs
|   +-- utils.rs
+-- tests/ (3 files)
+-- Cargo.toml
+-- .gitignore
+-- README.md

Git 操作

无 RTK(15 行,~200 tokens):

Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 456 bytes | 456.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
To github.com:user/repo.git
   abc1234..def5678  main -> main

使用 RTK(1 行,~10 tokens):

ok main

测试输出

无 RTK(200+ 行):

running 15 tests

test utils::test_parse ... ok
test utils::test_format ... ok
test utils::test_edge_case ... FAILED
test utils::test_overflow ... FAILED
...
failures:

---- utils::test_edge_case stdout ----
thread 'utils::test_edge_case' panicked at 'assertion failed: ...

使用 RTK(~20 行):

FAILED: 2/15 tests

test_edge_case: assertion failed at utils.rs:42
test_overflow: panic at utils.rs:18

Summary: 13 passed, 2 failed

自动重写钩子

最有效的使用方式。钩子透明地拦截 Bash 命令,在执行前将其重写为 RTK 等效命令。

结果:100% RTK 采用,零令牌开销。

工作流程

  1. 运行 rtk init -g 初始化
  2. RTK 在 shell 配置中安装钩子
  3. 每个 Bash 命令自动被 RTK 拦截和优化
  4. AI 工具接收压缩后的输出

支持的 Shell

  • Bash
  • Zsh
  • Fish
  • PowerShell(Windows)

配置

查看配置

rtk config show

编辑配置

RTK 配置文件位置:

  • Linux/macOS: ~/.config/rtk/config.toml
  • Windows: %APPDATA%\rtk\config.toml

常见配置选项

# 启用/禁用特定命令的优化
[filters]
git = true
cargo = true
npm = true
docker = true

# 输出格式
[output]
ultra_compact = false
colors = true
max_lines = 100

# 分析
[analytics]
enabled = true
track_tokens = true

故障排除

问题 1:rtk gain 命令失败

原因:可能安装了错误的 RTK(Rust Type Kit)

解决方案

# 卸载错误的版本
cargo uninstall rtk

# 重新安装正确的版本
cargo install --git https://github.com/rtk-ai/rtk

问题 2:Windows 上 RTK 不工作

原因:可能没有正确添加到 PATH

解决方案

# 检查 PATH
echo $env:PATH

# 手动添加到 PATH
$env:PATH += ";$env:USERPROFILE\.local\bin"

# 或使用系统设置永久添加

问题 3:钩子未激活

原因:Shell 配置未正确更新

解决方案

# 重新初始化
rtk init -g

# 重启 shell 或 AI 工具
# 检查钩子是否安装
cat ~/.bashrc | grep rtk

问题 4:某些命令未被优化

原因:该命令可能不在支持列表中

解决方案

# 查看支持的命令
rtk discover

# 使用代理模式
rtk proxy <command>

高级用法

与 Claude Code 集成

  1. 安装 RTK:
rtk init -g
  1. 重启 Claude Code

  2. 所有 Bash 命令自动优化

与其他 AI 工具集成

# Cursor
rtk init --agent cursor

# Windsurf
rtk init --agent windsurf

# Cline
rtk init --agent cline

自定义过滤规则

编辑 ~/.config/rtk/config.toml

[filters.custom]
my_command = true
another_command = false

导出分析数据

# JSON 格式
rtk gain --all --format json > rtk_stats.json

# CSV 格式
rtk gain --all --format csv > rtk_stats.csv

性能指标

开销

  • 平均延迟: <10ms
  • 内存占用: ~5MB
  • CPU 使用: <1%

节省效果

  • 平均令牌节省: 60-90%
  • 最佳情况: 92%(git add/commit/push)
  • 最差情况: 70%(cat/read)

资源链接


许可证

MIT License - 详见 LICENSE


常见问题

Q: RTK 会影响命令的功能吗?

A: 不会。RTK 只是过滤和压缩输出,不改变命令的实际功能。

Q: RTK 支持哪些操作系统?

A: Linux、macOS 和 Windows(通过 WSL 或 PowerShell)。

Q: RTK 可以离线使用吗?

A: 可以。RTK 是本地工具,不需要网络连接。

Q: RTK 会收集数据吗?

A: RTK 可以选择性地收集匿名使用统计数据,但可以禁用。

Q: 如何卸载 RTK?

A:

# 如果通过 Cargo 安装
cargo uninstall rtk

# 如果通过 Homebrew 安装
brew uninstall rtk

# 手动删除二进制文件
rm ~/.local/bin/rtk.exe

最后更新: 2026-05-13
RTK 版本: 0.34.3

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容