rtk: シェルコマンドの出力を圧縮して LLM のトークン使用量を削減する高性能 CLI プロキシ

rtk: シェルコマンドの出力を圧縮して LLM のトークン使用量を削減する高性能 CLI プロキシ

解決する課題

RTK(Rust Token Killer)は、シェルコマンドを実行する際の LLM の高コストとコンテキストウィンドウ使用量を削減します。gitcargonpmdockeraws などの一般的な CLI ツールの冗長な出力をフィルタリング・圧縮し、AI エージェントに返す前に「トークン膨張」を防ぎ、トークン消費を 60〜90% 削減することが一般的です。

仕組み

RTK は Rust で書かれた高性能 CLI プロキシとして動作します。シェルコマンドをインターセプトし、以下の 4 つの主要な圧縮戦略を適用します。

  1. スマートフィルタリング: ボイラープレート、余分な空白、コメントなどのノイズを除去します。
  2. グルーピング: エラーを種類別にまとめたり、ファイルをディレクトリ別に集約したりします。
  3. トランケーション: 必要なコンテキストは残しつつ、冗長情報をカットします。
  4. 重複排除: 繰り返し出力されたログ行を回数に置き換えます。

自動リライトフックを介してコマンドを透過的に変更でき(例: git statusrtk git status に変換されます)、Claude Code、Cursor、Windsurf など特定の AI エージェント向けプラグインとしても利用できます。

対象ユーザー

AI コーディングエージェント(Claude Code、GitHub Copilot、Cursor、Cline など)を使用し、API コストを削減し、膨大で冗長なコマンド出力に LLM が圧倒されるのを防ぎたい開発者向けです。

ハイライト

  • 幅広いコマンドサポート: Git、GitHub CLI、テストランナー(Jest、Pytest、Cargo)、ビルドツール、クラウドプロバイダー(AWS、Kubernetes)など 100 以上のコマンドに最適化されたフィルタを提供。
  • 低オーバーヘッド: 10ms 未満のオーバーヘッドで動作する単一の Rust バイナリ。
  • エージェント向けに設計: 14 種類の AI ツール向けにコマンドを自動リライトするフックシステムを搭載。
  • トークン分析: rtk gain などの組み込みツールでトークン節約を時間経過で追跡・可視化。
  • 失敗時のリカバリ: コマンドが失敗した際に、フィルタリングされていない完全出力をログファイルに自動保存し、必要に応じて LLM がフルコンテキストを取得可能にします。

Sources