Skip to content

Instantly share code, notes, and snippets.

@ha1t
Last active April 10, 2026 09:49
Show Gist options
  • Select an option

  • Save ha1t/4c880980aaae014baa4b6302a78410fe to your computer and use it in GitHub Desktop.

Select an option

Save ha1t/4c880980aaae014baa4b6302a78410fe to your computer and use it in GitHub Desktop.
RTK (rtk-ai/rtk) 調査レポート

RTK (rtk-ai/rtk) 調査レポート

調査日: 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 statusrtk git status のように透過的にコマンドを書き換え
  • AI側はリライトを認識せず、透過的に動作
  • 処理オーバーヘッドは10ms未満

4つの圧縮戦略

  1. Smart Filtering -- ノイズ、コメント、空白行の除去
  2. Grouping -- 類似項目をディレクトリやエラータイプ別に集約
  3. Truncation -- 冗長部分をカットしつつ関連コンテキストを維持
  4. 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 にて包括的なセキュリティレビューが公開されており、以下の問題が指摘されている。

致命的 (Critical)

シェルインジェクション脆弱性

rtk errrtk testrtk summary コマンドがユーザー入力を sh -c / cmd /C に直接渡している。Claude Codeのフックが permissionDecision: "allow" でコマンドを自動承認するため、LLMが生成した悪意あるペイロード(例: cargo test; malicious-payload)が確認なしに実行されるリスクがある。

高 (High)

テレメトリがデフォルト有効(同意なし)

Homebrewビルドにテレメトリが含まれ、以下を外部エンドポイントに送信する:

  • デバイスハッシュ(ホスト名+ユーザー名のSHA-256)
  • 使用コマンド
  • トークン数

インストール時の同意ダイアログがなく、デフォルトで有効。オプトアウトには設定ファイルの手動編集が必要。

信頼モデルのバイパス

  • CI環境検出が単純な環境変数(CI=1)に依存しており、リポジトリ内のMakefileやシェルスクリプトで簡単にバイパス可能
  • 信頼されていない .rtk/filters.toml が自動ロードされるリスク

グローバルフィルタの無保護

プロジェクトローカルのフィルタファイルはSHA-256検証を要求するが、グローバル設定は無条件に信頼される。マルウェアがセキュリティスキャナーの出力を抑制する可能性がある。

中 (Medium)

認証情報の露出

パスワードやAPIトークンを含む完全なコマンド文字列がSQLiteデータベースに90日間未編集で保存され、LLMからアクセス可能。

パストラバーサルリスク

RTK_TEE_DIR 環境変数が相対パスを検証なしで受け入れる。

終了コードのマスキング

失敗したコマンドがフィルタリング出力がある場合に終了コード0を返し、Claude Codeに成功と誤認させる可能性がある。

セキュリティポリシーと実装のギャップ

SECURITY.md には適切なセキュリティ原則が文書化されているが、実際のコードベースは複数の記載ルールに違反している。

総合評価

リスクと効果のバランス

観点 評価
トークン削減効果 高い(60-90%の実測報告あり)
セキュリティリスク 高い(シェルインジェクション、テレメトリ、認証情報保存)
Claude Codeでの実効性 限定的(組み込みツールはフックをバイパス)
長期メンテナンスの信頼性 不確実(単一開発者運営)

推奨

トークン削減効果は魅力的だが、現時点ではセキュリティ上の課題が多い。特に業務プロジェクトへの導入は慎重にすべき。

  • Issue #640 の指摘事項が修正されるまで様子見が安全
  • 導入する場合はテレメトリのオプトアウト設定を必ず行う
  • 機密情報を扱うプロジェクトではSQLiteへのコマンド保存に注意

参考リンク

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment