aovestdipaperino/tokensave

The most comprehensive code intelligence MCP server for AI coding agents. 40+ tools, 30+ languages, 9 agent integrations. Pre-indexed semantic knowledge graphs for instant code understanding — fewer tokens, fewer tool calls, 100% local.

tokensave – AIコーディングエージェントのためのセマンティックコードインテリジェンス

概要 – tokensave は、プロジェクトのソースコードのセマンティック知識グラフを構築するRustベースのローカルコードインデックスサーバーです。AI搭載のコーディングアシスタント(Claude、Gemini、Cursor、Copilotなど)は、grepやファイル読み取りの代わりにこのグラフをクエリできるため、「探索」操作に費やすトークン数を大幅に削減できます。

重要性 – 大規模言語モデルエージェントはトークン単位で課金されます。grep、findなどのツールでリポジトリをスキャンすると、エージェントがコードを書き始める前に数百トークンを消費する可能性があります。シンボル、コールグラフ、リレーションシップを事前にインデックス化することで、tokensave はエージェントが正確なシンボル、その呼び出し元、スニペットを1回のツール呼び出しで取得できるようにし、コストとレイテンシを節約します。

主な機能

  • セマンティック検索 – 意味(例:「認証」)でコードを検索し、エントリポイント、関連シンボル、ソーススニペットを含む構造化された結果を受け取ります。
  • 影響分析 – 呼び出し元、呼び出し先、および任意のシンボルの完全な変更半径を追跡します。
  • マルチブランチサポート – 祖先ブランチの作業を再利用するオプションのブランチごとのデータベースにより、ブランチ切り替え時に完全な再インデックス化を強制しません。
  • クラッシュ耐性のある同期 – 解析は短命のサブプロセスで実行されます。Tree-sitter文法でのセグメンテーションフォールトは、インデックスジョブ全体ではなくワーカーのみを強制終了します。
  • アトミック編集プリミティブ – 影響を受けるファイルを自動的に再インデックス化する安全なAST対応の置換/挿入操作。
  • 広範な言語カバレッジ – Rust、Go、Python、TypeScript、C/C++、Swift、シェーダー言語など50以上の言語をサポート。
  • エージェント統合 – Claude Code、Gemini CLI、Cursor、Copilotなど12以上のエージェント向けのすぐに使えるMCP(メタコーディングプロトコル)ツール定義。

使用方法

  1. インストール – Homebrew、Scoop、cargo binstall、またはmacOS、Linux、Windows用のプリビルドバイナリを使用。
  2. エージェントへの登録 – tokensave install --agent <name> は、必要なMCPサーバーエントリとフック構成を各エージェントのネイティブ設定(例:~/.claude.json)に書き込みます。--localフラグを使用すると、登録をプロジェクト固有に保つことができます。
  3. インデックスの作成 – tokensave init は、グラフを含むlibSQLデータベースを持つ.tokensave/ディレクトリを作成します。後続の変更は tokensave sync で適用されます。
  4. エージェントからクエリ – エージェントは tokensave_search、tokensave_branch_search、または編集プリミティブなどのMCPツールを呼び出します。サーバーは即座に構造化された結果を返します。

インストールのハイライト

  • クロスプラットフォーム – macOS(Apple Silicon)、Linux(x86_64/ARM64)、Windows用のバイナリ。
  • 機能ティア – lite、medium、full バイナリで、バイナリサイズと言語カバレッジをトレードオフできます。
  • ゼロトラスト – すべてのデータはデバイス上に保持され、APIキーや外部サービスは不要です。

高度な機能

  • マルチブランチインデックス – tokensave branch add/list/remove などのコマンドで、Gitフックを介した自動バックグラウンド追跡を使用して、Gitブランチごとに個別のグラフを維持できます。
  • サブプロセス分離抽出 – 単一の不正なファイルが同期全体を停止するのを防ぎます。
  • セッション間メモリ – 特定のMCPツールは、エージェントセッション間でコンテキストを保持します(詳細はドキュメントを参照)。

検討すべき対象 – LLMベースのコーディングアシスタントに大きく依存しており、トークン消費を削減し、応答速度を向上させ、コード分析を完全にローカルに保ちたいチーム。

詳細情報 – リポジトリのREADME、docs/BRANCHING-USER-GUIDE.mdファイル、およびcrates.ioのクレートページには、より詳細な使用方法と構成情報が記載されています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト