SymbolPeek、AIのコード解析トークン使用量を95%削減
- •SymbolPeek MCPサーバーにより、AIエージェントがファイル全体ではなく特定のシンボルのみを読み取ることが可能になった。
- •実用テストでは平均95.7%のコンテキスト削減を達成し、約1.61Mトークンの節約を実現した。
- •本ツールはTypeScript、JavaScript、Rust、Python、Java、Go、JSON、Markdownのリポジトリに対応している。
開発者のアレックス(Alex)は、AIコーディングエージェントにコードベースへの粒度の細かいシンボルレベルのアクセスを提供するモデルコンテキストプロトコル(MCP)サーバー「SymbolPeek」を公開した。エージェントがソースファイル全体ではなく、特定の定義や呼び出し元、参照のみを要求できるようにすることで、大規模なコード解析に必要なトークン消費を大幅に抑制する。このツールは、TypeScript Compiler APIを活用して、インポートエイリアスやバレルエクスポート、推論された型などの複雑な構造を解析する。
1,800行のファイルを用いた実用テストでは、65KBのソースファイル全体を読み込む代わりに、わずか2KBのデータで特定の関数の取得に成功した。実際の開発環境における統計では、162件のリクエストで352,910行のコード、約6.4MBのデータを読み込まずに済んだ。開発者によると、これらの指標から約1.61Mトークンの節約となり、従来のファイル全体を読み込む手法と比較して平均95.7%のコンテキスト削減を達成した。
SymbolPeekはTypeScriptやJavaScript以外にも、Rust、Python、Java、Go、JSON、Markdownをサポートする。TypeScriptではコンパイラによる解析を利用し、その他の言語ではTree-sitterを用いて高速かつ構文を意識したナビゲーションを行う。単純なシンボルの抽出に巨大なファイルを読み込む非効率さを排除し、AIコーディングセッションにおける情報密度を高めることを目的としている。grepなどの標準的なテキスト検索ツールを補完する存在として設計され、呼び出し階層や診断情報を追跡するセマンティックな理解が必要なタスクに焦点を当てている。