調査日: 2026-04-10 リポジトリ: https://github.com/rtk-ai/rtk
RTK (Rust Token Killer) は、AIコーディングエージェント(Claude Code、Cursor、Gemini CLIなど)のCLIコマンド出力を圧縮し、LLMのトークン消費量を 60-90% 削減 するRust製CLIプロキシツール。
- GitHub Stars: 22,200+
- ライセンス: MIT
- 最新リリース: v0.35.0(2026-04-06)
- 開発元: rtk-ai(組織メンバー非公開、実質的に単一開発者 Patrick Szymkowiak)
rtk init -gでClaude CodeのPreToolUseフックをインストールgit status→rtk git statusのように透過的にコマンドを書き換え- AI側はリライトを認識せず、透過的に動作
- 処理オーバーヘッドは10ms未満
- Smart Filtering -- ノイズ、コメント、空白行の除去
- Grouping -- 類似項目をディレクトリやエラータイプ別に集約
- Truncation -- 冗長部分をカットしつつ関連コンテキストを維持
- Deduplication -- 重複するログ行をカウント付きで折りたたみ
Claude Code、GitHub Copilot(VS Code/CLI)、Cursor、Gemini CLI、Codex(OpenAI)、Windsurf、Cline/Roo Code、OpenCode、OpenClawなど10+プラットフォーム
Claude Codeの組み込みツール(Read、Grep、Glob)はフックをバイパスするため、圧縮の恩恵を受けない。Bashツール経由のコマンド実行のみが対象となる。
- トークンコスト削減: 60-90%のトークン削減(実ユーザーで83.7%、89%などの報告)
- セッション持続時間の延長: コンテキストウィンドウの消費を抑え、長い作業セッションが可能
- 推論精度の向上: ノイズが減ることで、AIが重要な情報に集中できる
- コスト削減: APIトークン使用量に直結するため、直接的な費用削減
- 低オーバーヘッド: 10ms未満の処理時間
- 無料: CLI自体はMITライセンスで無料利用可能
GitHub Issue #640 にて包括的なセキュリティレビューが公開されており、以下の問題が指摘されている。
rtk err、rtk test、rtk summary コマンドがユーザー入力を sh -c / cmd /C に直接渡している。Claude Codeのフックが permissionDecision: "allow" でコマンドを自動承認するため、LLMが生成した悪意あるペイロード(例: cargo test; malicious-payload)が確認なしに実行されるリスクがある。
Homebrewビルドにテレメトリが含まれ、以下を外部エンドポイントに送信する:
- デバイスハッシュ(ホスト名+ユーザー名のSHA-256)
- 使用コマンド
- トークン数
インストール時の同意ダイアログがなく、デフォルトで有効。オプトアウトには設定ファイルの手動編集が必要。
- CI環境検出が単純な環境変数(
CI=1)に依存しており、リポジトリ内のMakefileやシェルスクリプトで簡単にバイパス可能 - 信頼されていない
.rtk/filters.tomlが自動ロードされるリスク
プロジェクトローカルのフィルタファイルはSHA-256検証を要求するが、グローバル設定は無条件に信頼される。マルウェアがセキュリティスキャナーの出力を抑制する可能性がある。
パスワードやAPIトークンを含む完全なコマンド文字列がSQLiteデータベースに90日間未編集で保存され、LLMからアクセス可能。
RTK_TEE_DIR 環境変数が相対パスを検証なしで受け入れる。
失敗したコマンドがフィルタリング出力がある場合に終了コード0を返し、Claude Codeに成功と誤認させる可能性がある。
SECURITY.md には適切なセキュリティ原則が文書化されているが、実際のコードベースは複数の記載ルールに違反している。
| 観点 | 評価 |
|---|---|
| トークン削減効果 | 高い(60-90%の実測報告あり) |
| セキュリティリスク | 高い(シェルインジェクション、テレメトリ、認証情報保存) |
| Claude Codeでの実効性 | 限定的(組み込みツールはフックをバイパス) |
| 長期メンテナンスの信頼性 | 不確実(単一開発者運営) |
トークン削減効果は魅力的だが、現時点ではセキュリティ上の課題が多い。特に業務プロジェクトへの導入は慎重にすべき。
- Issue #640 の指摘事項が修正されるまで様子見が安全
- 導入する場合はテレメトリのオプトアウト設定を必ず行う
- 機密情報を扱うプロジェクトではSQLiteへのコマンド保存に注意