NEW

CodeGraph|コードを知識グラフ化してAIの無駄な探索を根絶するMCPツール

対象環境: Claude Code(デスクトップアプリ版・CLI版)、Windows x64。

SNSで「Claude Code を使っている人はこれだけは絶対入れて」と拡散しているツールがあります。 名前は CodeGraph(colbymchenry 製)。「ツール呼び出し-92%・コード探索71%高速化」という触れ込みですが、実際の数値は異なります。

本記事では GitHub の実測値をもとに正確な情報を整理し、Windows 環境への導入手順と「ユーザーが意識しなくても自動で使われる」仕組みまで解説します。


SNS の主張 vs 実際のベンチマーク

SNS投稿の主張 GitHubの実測値(7リポジトリ平均) 評価
ツール呼び出し -92% -70%(最大-89%) ⚠️ 誇張
コード探索 71%高速化 49%高速化(最大63%) ⚠️ 誇張
Claude Code / Cursor / Codex / OpenCode 全対応 正確
完全ローカル・オープンソース ✅ MIT 正確

実数値でも十分に有意です。誇張はあるものの、ツール自体は GitHub スター9,600以上(2026年5月時点)を獲得している実績ある OSS です。

リポジトリ別ベンチマーク

対象コードベース コスト削減 トークン削減 高速化 ツール呼び出し削減
VS Code 35% 73% 41% 72%
Excalidraw 47% 73% 60% 86%
Django 34% 64% 59% 81%
Tokio(Rust) 52% 81% 63% 89%
平均 35% 59% 49% 70%

何が問題を解決するのか

従来の AI コード探索の問題

Claude Code がコードベースを調査するとき、デフォルトでは以下の動作をします。

「この関数がどこで使われているか調べて」
  → Read(file_a.py)
  → Read(file_b.py)
  → Grep(pattern)
  → Read(file_c.py)
  → ...(トークンと時間が溶ける)

ファイルを一つずつ開いて読む手探り探索です。大規模なプロジェクトほどコストが膨らみます。

CodeGraph のアプローチ

「この関数がどこで使われているか調べて」
  → codegraph_callers("関数名")  ← 1回で完結

tree-sitter で全ソースを AST 解析し、シンボルと依存関係を SQLite に格納。MCP 経由で Claude が即座にクエリできます。


仕組み

3ステップのパイプライン

1. 抽出(Extract)
   tree-sitter が全ソースを AST 解析
   → シンボル・関数・クラス・インポートを抽出

2. 保存(Store)
   SQLite(FTS5全文検索付き)に格納
   → .codegraph/codegraph.db

3. 自動同期(Sync)
   OS ネイティブのファイル監視(FSEvents / inotify / ReadDirectoryChangesW)
   → ファイル変更を検知して 2 秒後に差分更新

MCP ツール一覧

ツール 用途
codegraph_search シンボル・関数名の検索
codegraph_context タスク向けコンテキストを一括取得(最頻出)
codegraph_callers この関数を呼んでいる箇所を一覧
codegraph_callees この関数が呼んでいる関数を一覧
codegraph_impact 変更の影響範囲を分析
codegraph_node シンボルの詳細情報を取得
codegraph_files ディレクトリ構造の表示
codegraph_status インデックス状態の確認

「意識せず使われる」仕組み

CodeGraph の最大の特徴は、ユーザーが何も指示しなくても Claude が自動で使い始める点です。

なぜ自動で使われるのか

CodeGraph は MCP 接続時に server-instructions.ts の内容を Claude のコンテキストへ自動注入します。

Claude Code 起動
  └→ CodeGraph MCP サーバー自動起動(stdio型)
       └→ 接続時に「CodeGraph ツールを優先せよ」という指示を自動注入
            └→ 以降、コード探索は CodeGraph 優先で自動実行

この仕組みにより、Claude は明示的に「CodeGraph を使って」と言われなくても、コード探索のたびに codegraph_contextcodegraph_search を選択します。

さらに強制する:CLAUDE.md へのルール追記

server-instructions.ts の自動注入だけでも機能しますが、グローバルの ~/.claude/CLAUDE.md にルールを追記することで二重に強制できます。

## CodeGraph 優先ルール

`codegraph` MCP が利用可能な場合、コード探索は必ず以下の優先順位で行う:

1. シンボル・関数・クラスの検索 → codegraph_search
2. タスク実行前のコンテキスト取得 → codegraph_context
3. 呼び出し元・呼び出し先の追跡 → codegraph_callers / codegraph_callees
4. 変更影響範囲の確認 → codegraph_impact

Grep や連続した Read でのファイル手探りは、CodeGraph で取得できる情報には使わない。

Hook でも実装できますが、Read/Grep を完全ブロックすると設定ファイル確認など正当な用途も止まるため、CLAUDE.md ルールが適切です。


対応言語・フレームワーク

対応言語(19種類以上)

TypeScript、JavaScript、Python、Go、Rust、Java、C#、PHP、Ruby、C、C++、Swift、Kotlin、Scala、Dart、Svelte、Vue、Liquid、Pascal/Delphi

フレームワーク認識(13種類)

Django、Flask、FastAPI、Express、NestJS、Laravel、Rails、Spring、Gin/chi/gorilla/mux、Axum/actix/Rocket、ASP.NET、Vapor、React Router/SvelteKit

Python + FastAPI プロジェクトはルーティングパターンも含めて認識されます。


Windows 環境へのインストール実録

必要環境

  • Node.js 20-24
  • Windows x64(macOS・Linux も対応)

Step 1:グローバルインストール

npm install -g @colbymchenry/codegraph

インストール後、codegraph --version でバージョンを確認します。 Windows 環境では codegraph.cmdC:\Users\<username>\AppData\Roaming\npm\ に配置されます。

Step 2:グローバル MCP サーバーとして登録

claude mcp add --scope user codegraph -- "C:\Users\<username>\AppData\Roaming\npm\codegraph.cmd" serve --mcp

~/.claude.json に以下の設定が追加されます。

{
  "mcpServers": {
    "codegraph": {
      "type": "stdio",
      "command": "C:\\Users\\<username>\\AppData\\Roaming\\npm\\codegraph.cmd",
      "args": ["serve", "--mcp"]
    }
  }
}

--scope user によりグローバル設定になるため、すべてのプロジェクト・すべてのセッションで有効です。

Step 3:プロジェクト初期化(1回だけ)

cd your-project
codegraph init

プロジェクトのソースコードが解析され、.codegraph/codegraph.db にグラフが構築されます。以後はファイル変更を自動監視して差分更新されます。

動作確認

Claude Code を再起動後、コードの探索タスクを依頼してみてください。ツール呼び出し欄に codegraph_contextcodegraph_search が自動で現れれば統合成功です。


他ツールとの組み合わせ

claude-smart(ReflexioAI)と合わせて使うと役割が明確に補完されます。

ツール 何を削減するか 仕組み
claude-smart 同じ指摘の繰り返し(学習で行動変容) Playbook にルール蓄積
CodeGraph ファイル探索のツール呼び出し グラフDBで即答

どちらも完全ローカル・外部APIコールなしで動作します。


まとめ

CodeGraph は SNS の数値(-92%・71%高速化)は誇張ですが、実測値(-70%ツール呼び出し・35%コスト削減)でも導入価値は十分あります。

最大のメリットは 「MCP 接続時に自動で指示が注入される」設計により、ユーザーが何も意識しなくても Claude がコード探索の手法を自動切換えする点です。

プロジェクトごとに codegraph init を1回実行するだけで、以後の全セッションが自動的に恩恵を受けます。


参考資料