GraphifyがClaude Code最大の制約を解く:コードベースをAIが検索できる知識グラフへ

safishamsi/graphifyを紹介する。Claude Code、Codex、Cursor、Gemini CLI、AntigravityなどのAIコーディングアシスタント向け知識グラフツールで、コード、DB schema、文書、PDF、画像、動画、音声を検索可能なグラフに変換する。

safishamsi/graphify は、AIコーディングアシスタント向けの知識グラフツールです。目的は明快です。プロジェクトディレクトリ内のコード、文書、SQL schema、スクリプト、論文、画像、動画、音声を検索可能な知識グラフに整理し、AIアシスタントが grep、全文読み込み、その場限りの検索だけに頼らずにプロジェクトを理解できるようにします。

プロジェクトURL:safishamsi/graphify

この記事の整理時点で、GitHubページには約50.2k stars、5.4k forksが表示されており、ライセンスはMITです。READMEでは、AIコーディングアシスタント内で /graphify と入力すると、プロジェクト全体を検索可能な知識グラフにマッピングすると説明されています。

解決する中核問題

AIコーディングアシスタントはますます強くなっていますが、実際のコードベースではまだよく次の問題に直面します。

  • 主要モジュール同士がどうつながるのかわからない。
  • 多くのファイルを読んでも、全体のアーキテクチャマップができない。
  • 検索でテキストは見つかるが、上流・下流の依存関係がわからない。
  • コード、database schema、ドキュメント、インフラ設定が別々の場所に分散している。
  • チーム開発では、人によってプロジェクト構造の理解が異なる。

Graphifyが作ろうとしているのは、プロジェクトの「記憶層」です。コードエンティティ、文書の概念、データベース表、設定、設計メモ、ファイル間の関係をつなげ、AIアシスタントが毎回ゼロからファイルを読むのではなく、グラフを問い合わせられるようにします。

最小構成での使い方

Graphifyの最小利用はとても簡単です。インストール後、AIコーディングアシスタント内で次を入力します。

1
/graphify .

PowerShellでは先頭の / がパス区切りとして扱われるため、Windows PowerShellでは次のようにします。

1
graphify .

実行後、graphify-out/ ディレクトリが生成され、主なファイルは次の三つです。

1
2
3
4
graphify-out/
├── graph.html
├── GRAPH_REPORT.md
└── graph.json

それぞれの役割は異なります。

  • graph.html:ブラウザーで開けるインタラクティブグラフ。ノードクリック、フィルター、検索ができる。
  • GRAPH_REPORT.md:プロジェクトのハイライト、重要概念、意外な接続、推奨質問。
  • graph.json:完全なグラフ。後から再読み込みせずに直接問い合わせられる。

Mermaidの呼び出しフロー図を含む読みやすいアーキテクチャページを作るには、次を実行します。

1
graphify export callflow-html

インストールと対応プラットフォーム

GraphifyのPyPIパッケージ名は graphifyy です。y が二つある点に注意してください。READMEでは、PyPI上の他の graphify* パッケージはこのプロジェクトと無関係だと明記されています。ただしCLIコマンド名は graphify のままです。

推奨インストール方法は次の通りです。

1
uv tool install graphifyy

代替方法もあります。

1
2
pipx install graphifyy
pip install graphifyy

インストール後、AIアシスタントに登録します。

1
graphify install

対応プラットフォームは多く、Claude Code、Codex、OpenCode、GitHub Copilot CLI、VS Code Copilot Chat、Aider、Cursor、Gemini CLI、Kimi Code、Kiro、Google Antigravityなどがあります。プラットフォームごとに次のようなコマンドを使えます。

1
2
3
4
graphify install --platform codex
graphify install --platform gemini
graphify cursor install
graphify antigravity install

Codexユーザーは、~/.codex/config.toml[features] に次も追加する必要があります。

1
multi_agent = true

READMEでは、Codexは /graphify ではなく $graphify を使うとも説明されています。

どんなファイルを処理できるか

Graphifyは幅広い入力タイプを扱えます。

コードでは31言語をサポートします。Python、TypeScript、JavaScript、Go、Rust、Java、C/C++、Ruby、C#、Kotlin、Scala、PHP、Swift、Lua、Zig、PowerShell、SQL、Shell、JSONなどです。

文書では次をサポートします。

  • .md
  • .mdx
  • .qmd
  • .html
  • .txt
  • .rst
  • .yaml
  • .yml

オプション依存関係でさらに拡張できます。

1
2
3
4
5
6
7
pip install "graphifyy[pdf]"
pip install "graphifyy[office]"
pip install "graphifyy[video]"
pip install "graphifyy[mcp]"
pip install "graphifyy[neo4j]"
pip install "graphifyy[sql]"
pip install "graphifyy[all]"

pdf はPDF抽出、office.docx.xlsxvideo は動画と音声の文字起こし、mcp はMCP stdio server、neo4j はNeo4jへのpush、sql はSQL schema抽出に使います。

生成されるレポートの価値

GRAPH_REPORT.md は普通の要約ではありません。プロジェクト内でAIアシスタントが注目すべき関係を抽出します。

READMEで挙げられている内容には次のようなものがあります。

  • God nodes:プロジェクト内で最も多く接続されている中核概念。
  • Surprising connections:ファイルやモジュールをまたぐ意外な接続。
  • The why:コメント、docstring、設計文書から抽出された設計理由。
  • Suggested questions:グラフが特に答えやすい質問。
  • Confidence tags:関係が EXTRACTEDINFERREDAMBIGUOUS としてラベル付けされる。

これは重要です。通常の検索は「この単語がどこに出るか」を教えます。一方、グラフは「この概念がどのモジュール、設定、表、文書と関係するか」を答えられます。大規模コードベースでは、これは単純な全文検索よりアーキテクチャ理解に近いものです。

よく使うコマンド

Graphifyの主なコマンドは次の通りです。

1
2
3
4
5
6
7
8
9
/graphify .
/graphify ./docs --update
/graphify . --cluster-only
/graphify . --no-viz
/graphify . --wiki
graphify export callflow-html
/graphify query "what connects auth to the database?"
/graphify path "UserService" "DatabasePool"
/graphify explain "RateLimiter"

論文や動画をグラフへ追加することもできます。

1
2
/graphify add https://arxiv.org/abs/1706.03762
/graphify add <youtube-url>

PR分析補助には次のコマンドも使えます。

1
2
3
4
graphify prs
graphify prs 42
graphify prs --triage
graphify prs --conflicts

これらはコードレビューに向いています。PRがどのグラフコミュニティに影響するか、他のPRと衝突リスクがあるか、どのreview queueを優先すべきかを確認できます。

MCP、Neo4j、CIとの関係

GraphifyはHTMLグラフを生成するだけではありません。グラフをAIアシスタントへ繰り返し呼び出せる形で公開できます。

たとえばMCP serverを起動できます。

1
python -m graphify.serve graphify-out/graph.json

MCP serverは query_graphget_nodeget_neighborsshortest_pathlist_prsget_pr_impacttriage_prs などを提供します。

Neo4jへのエクスポートやpushにも対応します。

1
2
/graphify ./raw --neo4j
/graphify ./raw --neo4j-push bolt://localhost:7687

チーム開発では、READMEは graphify-out/ をgitにコミットすることを提案しています。これにより、チーム全員が同じプロジェクトマップから始められます。次も実行できます。

1
graphify hook install

これにより、git commit後にグラフが自動再構築され、merge driverも設定されます。複数人が並行してコミットしても、graph.json に競合マーカーが残りにくくなります。

プライバシーとコスト

GraphifyのREADMEはプライバシー境界を比較的明確に説明しています。

コードファイルはtree-sitterでローカル解析され、API呼び出しは発生しません。動画と音声はfaster-whisperでローカル文字起こしできます。文書、PDF、画像などの意味抽出は、利用しているAIアシスタントのモデルAPIを通ります。

headless graphify extract を使う場合、次の環境変数が必要になることがあります。

1
2
3
4
5
6
7
ANTHROPIC_API_KEY
GEMINI_API_KEY
GOOGLE_API_KEY
OPENAI_API_KEY
DEEPSEEK_API_KEY
MOONSHOT_API_KEY
OLLAMA_BASE_URL

ローカルOllama、AWS Bedrock、Claude Code CLIなどもbackendとして使えます。READMEにはtelemetry、usage tracking、analyticsがないことも記載されています。

実際に使うときは、コードのローカル解析がすべての内容が外へ出ないことを意味するわけではない点に注意が必要です。文書、PDF、画像、クラウドモデルが関わる場合は、backend、API key、企業コンプライアンス、データ境界を確認する必要があります。

向いている場面

Graphifyは次のようなユーザーに向いています。

  • Claude Code、Codex、Cursor、Gemini CLIにプロジェクト構造をより理解させたい開発者。
  • 大規模で見慣れないコードベースを素早く理解したい人。
  • コード、SQL schema、ドキュメント、設定をまとめて分析したいチーム。
  • アーキテクチャレビュー、PR review、リファクタリング影響分析を行う人。
  • プロジェクト知識をMCPツールとしてAgentに公開したい人。
  • チームのために「プロジェクトマップ」を残したい技術リーダー。

すべてのプロジェクトに必要なわけではありません。小さなスクリプト、一回限りのdemo、非常に単純なリポジトリでは、通常の検索とREADMEで十分かもしれません。Graphifyの価値は、モジュールが多く、文書が多く、チーム開発が多く、AIアシスタントが頻繁に関与する大きなプロジェクトでより出やすくなります。

まとめ

Graphifyの意味は、AIコーディングアシスタントのコンテキストを「一時的なファイル読み取り」から「長期的に検索可能なプロジェクト知識グラフ」へ進めることです。

開発者にとって、GraphifyはIDE、検索、LSPの代替ではありません。AIアシスタントに構造化された記憶層を追加します。どのモジュールが重要か、どの概念が強くつながるか、どの文書が設計理由を説明しているか、あるPRがどのコミュニティに影響するかを扱えます。Codex、Claude Code、Gemini CLI、AntigravityのようなAgentツールが普及するほど、この種のプロジェクトグラフ層はますます有用になります。

参考:

记录并分享
Hugo で構築されています。
テーマ StackJimmy によって設計されています。