TL;DR:RTK 是一個用 Rust 編寫的 CLI 代理工具,在 LLM 程式設計工具(如 Claude Code、Cursor、Gemini CLI)執行指令時,自動過濾和壓縮輸出內容,減少 60-90% 的 token 消耗。單一執行檔、零相依、支援 100+ 指令,安裝只需一行指令。

如果你每天都在用 Claude Code、Cursor、Gemini CLI 等 AI 程式設計助手,你一定會遇到這個痛點:每次 AI 助手執行 git statuslscatcargo test 等指令時,完整的原始輸出都會被塞進 LLM 上下文視窗,瘋狂消耗 token。

一個 30 分鐘的編碼會話,大約消耗 118,000 個 token,其中 94,100 個都是冗餘資訊。

RTK 就是來解決這個問題的。它用 Rust 編寫,體積小巧(單一二進位檔案,零相依),在指令執行路徑上攔截輸出,智慧過濾噪音,只保留關鍵資訊。30 分鐘會話的 token 消耗從 118,000 降到約 23,900 —— 節省 80%

RTK 是什麼?

RTK 全名 "Rust Token Killer"(Rust 編寫的 Token 終結者),是一個執行在你和 LLM 之間的 CLI 代理層。它不是 LLM,不是 IDE 外掛程式,而是一個很聰明的「中間人」。

  沒有 RTK:                                使用 RTK 後:

  Claude  --git status-->  shell  -->  git       Claude  --git status-->  RTK  -->  git
    ^                                   |           ^                      |          |
    |        ~2,000 tokens (原始輸出)    |           |   ~200 tokens         | 智慧過濾 |
    +-----------------------------------+           +------- (壓縮輸出) -----+----------+

當 AI 工具執行指令時,RTK 會:

  1. 智慧過濾 — 去除註解、空白字元、範本化文字
  2. 智慧分組 — 按目錄/類型聚合相似項目(檔案按目錄歸類、錯誤按類型分組)
  3. 智慧截斷 — 保留關鍵上下文,砍掉冗餘內容
  4. 去重合併 — 將重複的日誌行合併為計數

專案資訊:

屬性
GitHub rtk-ai/rtk
語言 Rust
授權 Apache 2.0
Stars 68,000+
最新版本 0.28.2
相依 零(單個靜態二進位)

安裝 RTK

RTK 的安裝非常簡單。它不相依任何執行環境,就是一個獨立的二進位檔案。

macOS / Linux

推薦:Homebrew

brew install rtk

快速安裝指令碼:

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

安裝到 ~/.local/bin,確保該路徑在 PATH 中: bash echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc source ~/.bashrc

從 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/CMD/Windows Terminal)中執行。

驗證安裝

rtk --version   # 應顯示 "rtk 0.28.2"
rtk gain        # 應顯示 token 節省統計

名稱衝突警告:crates.io 上還有一個叫 "rtk"(Rust Type Kit)的專案。如果 rtk gain 指令報錯,說明裝錯了。請使用上面的 cargo install --git 方式安裝。

快速上手:3 分鐘接入你的 AI 工具

安裝完成後,只需一步即可為你的 AI 程式設計工具啟用 RTK:

# Claude Code / Copilot(預設)
rtk init -g

# Gemini CLI
rtk init -g --gemini

# Codex(OpenAI)
rtk init -g --codex

# Cursor
rtk init -g --agent cursor

# Windsurf
rtk init -g --agent windsurf

# Cline / Roo Code
rtk init --agent cline

# Kilo Code
rtk init --agent kilocode

# Google Antigravity
rtk init --agent antigravity

-g(或 --global)參數的作用:它會自動重寫你 AI 工具的設定檔,把所有常用指令(如 git status)替換為 rtk git status。重新啟動 AI 工具後生效。

# 重新啟動 Claude Code 後測試
git status  # 自動重寫為 rtk git status

⚠️ Hook 只在 Bash 工具呼叫上生效。Claude Code 的內建工具(如 ReadGrepGlob)不經過 Bash hook,所以不會被自動重寫。如果想在這些場景下也獲得壓縮輸出,請直接用 shell 指令(cat/rg/find)或手動呼叫 rtk readrtk greprtk find

RTK 支援的指令一覽

RTK 支援超過 100 條指令的壓縮輸出,覆蓋檔案操作、Git、測試、建置、套件管理、雲端服務等場景。

檔案操作

rtk ls .                        # 智慧目錄樹(token -80%)
rtk read file.rs                # 智慧檔案讀取
rtk read file.rs -l aggressive  # 僅保留函式簽名(去掉函式本體)
rtk smart file.rs               # 2 行啟發式程式碼摘要
rtk find "*.rs" .               # 壓縮版 find 結果
rtk grep "pattern" .            # 分組搜尋結果
rtk diff file1 file2            # 壓縮 diff(檔案不同時 exit 1)

Git 操作

rtk git status                  # 緊湊狀態
rtk git log -n 10               # 一行式提交記錄
rtk git diff                    # 壓縮 diff
rtk git add                     # → "ok"
rtk git commit -m "msg"         # → "ok abc1234"
rtk git push                    # → "ok main"
rtk git pull                    # → "ok 3 files +10 -2"

git push 的效果對比非常震撼:

# git push(15 行,~200 tokens)           # rtk git push(1 行,~10 tokens)
Enumerating objects: 5, done.             ok main
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.
...

從 15 行壓縮到 1 行,token 減少 95%

測試執行器

rtk pytest                      # Python 測試(-90%)
rtk cargo test                  # Rust 測試(-90%)
rtk go test                     # Go 測試(NDJSON,-90%)
rtk jest                        # Jest 緊湊輸出
rtk vitest                      # Vitest 緊湊輸出
rtk playwright test             # E2E 測試結果(僅失敗)
rtk err <cmd>                   # 從任意指令中提取錯誤
rtk test <cmd>                  # 通用測試包裝——僅失敗(-90%)

建置與 Lint

rtk tsc                         # TypeScript 錯誤按檔案分組
rtk cargo build                 # Cargo 建置(-80%)
rtk cargo clippy                # Cargo clippy(-80%)
rtk ruff check                  # Python linting(JSON,-80%)
rtk golangci-lint run           # Go linting(JSON,-85%)
rtk next build                  # Next.js 建置壓縮
rtk prettier --check .          # 需要格式化的檔案

Docker 與容器

rtk docker ps                   # 緊湊容器列表
rtk docker images               # 緊湊映像檔列表
rtk docker logs <container>     # 去重日誌
rtk kubectl pods                # 緊湊 Pod 列表
rtk kubectl logs <pod>          # 去重日誌

AWS CLI

rtk aws sts get-caller-identity # 一行身分識別
rtk aws ec2 describe-instances  # 緊湊執行個體列表
rtk aws lambda list-functions   # 名稱/執行環境/記憶體(去除金鑰)
rtk aws s3 ls                   # 截斷列表 + tee 復原
rtk aws dynamodb scan           # 展開類型註解

資料分析

rtk json config.json            # 結構展示(去除值)
rtk deps                        # 相依摘要
rtk env -f AWS                  # 過濾環境變數
rtk log app.log                 # 去重日誌
rtk summary <long command>      # 啟發式摘要

Token 節省分析:你的 RTK 效果如何?

RTK 內建詳細的統計功能,讓你清楚看到省了多少 token:

rtk gain                        # 摘要統計
rtk gain --graph                # ASCII 圖表(最近 30 天)
rtk gain --history              # 最近指令歷史
rtk gain --daily                # 每日明細
rtk gain --all --format json    # JSON 匯出(儀表板用)

rtk discover                    # 發現未利用的節省機會
rtk discover --all --since 7    # 所有專案,最近 7 天

rtk session                     # 顯示近期會話的 RTK 採用率

全域參數

-u, --ultra-compact    # ASCII 圖示 + 內聯格式(額外節省 token)
-v, --verbose          # 增加詳細度(-v, -vv, -vvv)

實戰:RTK + Claude Code 的一天

假設你是一個 Rust 專案的全職開發者,一天內的工作流程是這樣的:

早上:程式碼審查

# 檢視今天的提交
git log --oneline --since="today"   # rtk 壓縮為單行提交摘要

# 檢查 PR 列表
gh pr list                          # rtk 輸出緊湊 PR 表

# 檢視某個 PR 詳情
gh pr view 42                       # rtk 輸出 PR 詳情 + 檢查狀態

上午:功能開發

# 檢視專案結構
ls -la                              # rtk 目錄樹(~150 tokens vs ~800)

# 檢視核心檔案
read src/main.rs                    # rtk 智慧讀取(保留簽名+關鍵邏輯)

# 執行測試
cargo test                          # rtk 僅失敗測試(-90%)

# 提交並推送
git commit -m "feat: add auth"      # rtk → "ok abc1234"
git push                            # rtk → "ok main"

下午:CI 除錯

# 檢視 CI 執行結果
gh run list                         # rtk 緊湊工作流狀態

# 排查失敗
docker ps                           # rtk 緊湊容器列表
docker logs my-container            # rtk 去重日誌

# 修復後重新測試
rtk test pytest                     # 通用測試包裝,僅顯示失敗

一天下來省了多少?

場景 原始 Token RTK Token 節省
目錄/檔案瀏覽 50,000 10,000 -80%
Git 操作 18,100 3,700 -80%
測試執行 41,000 4,100 -90%
建置/Lint 18,000 3,600 -80%
其他 10,000 2,000 -80%
合計 137,100 23,400 -83%

如果你按 $10/百萬 token 的 Claude 3.5 Sonnet 定價計算,一天可以省下 ~$1.14。一個月 20 個工作日就是 ~$22.8——看起來不多?但如果是團隊 10 個人呢?每月 $228,每年 $2,736

對於使用更貴的模型(如 Claude Opus),節省金額會更可觀。

架構原理

RTK 的設計哲學很樸素:不做 LLM 能做的事,只做 LLM 不需要看的東西。

// 偽程式碼:RTK 的核心處理流程
fn process_command(cmd: &str, output: &str) -> String {
    match cmd_type(cmd) {
        CmdType::GitStatus => compact_git_status(output),
        CmdType::TestRunner => failures_only(output),
        CmdType::FileList => group_by_dir(output),
        CmdType::Logs => deduplicate(output),
        CmdType::Build => errors_only(output),
        _ => heuristic_summary(output),
    }
}

RTK 對每種指令類型套用不同的壓縮策略:

  • git status:只保留修改檔案的簡要列表,去掉詳細的 staged/unstaged 狀態說明
  • cargo test:只顯示失敗的測試案例,通過的測試合併為一行統計
  • ls/find:按目錄分組,只顯示檔案名稱,不顯示權限/大小/日期
  • docker logs:去除重複行,相同日誌行顯示首次 + 計數
  • aws describe-*:去除中繼資料,只保留關鍵屬性(且自動過濾敏感資訊)

整個 RTK 二進位檔案編譯後只有幾 MB,啟動開銷 <10ms,幾乎零感。

適用場景與限制

✅ 非常適合

  • AI 程式設計助手重度使用者:每天用 Claude Code、Cursor、Gemini CLI 工作 4+ 小時
  • 多語言專案:Rust/Go/Python/TypeScript 混合專案,各種測試 runner 都覆蓋
  • 團隊協作:統一 token 預算,減少 CI/CD 中 LLM 呼叫成本
  • 雲端部署:在 CI 管線中使用 AI 工具時(按 token 付費)

⚠️ 需要注意

  • Hook 只覆蓋 Bash 呼叫:Claude Code 的內建工具不經過 RTK
  • 過度壓縮可能遺失上下文:除錯複雜問題時可能需要 --verbose 檢視完整輸出
  • 需要重新適應:AI 工具的輸出變短後,你可能需要調整對 AI 的提問方式

總結

RTK 是我見過最實用、最立竿見影的 AI 程式設計輔助工具之一。它沒有炒作、沒有花俏的 UI,就是一個安靜工作的 Rust 二進位檔案,幫你每天省 token、省錢、提速。

30 秒安裝,永久受益。 這就是開源精神——用最少的程式碼,解決最實際的痛點。

快速開始:

brew install rtk      # macOS
rtk init -g           # 啟用 Claude Code 整合
# 重新啟動 Claude Code,開始享受 token 節省

如果你的 AI 程式設計工具每天執行幾十上百條指令,RTK 絕對值得嘗試。68K+ GitHub Stars 已經證明了它的價值——現在輪到你了。


相關連結: