コードベース全体をナレッジグラフに変換する"Graphify"を紹介!

The Only Bamboo
240 フォロワー
5 回視聴·2026/07/28
AIコーディングアシスタントにコードを理解させるとき、grepとReadを繰り返させていませんか?Graphifyを使えば、コードベース全体をナレッジグラフに変換して、AIに「地図」を渡せます!
3ヶ月半で9万スターを獲得した話題のツール。ベクトルDBではなく、tree-sitterでASTを解析してグラフを構築するので、LLMクレジットゼロ・ネット送信ゼロで動作します。
0:00 grepとReadを繰り返すAIの限界
0:56 3ヶ月半で9万スターの正体
1:36 ベクトルDBじゃなくてグラフ
2:37 セットアップは2コマンド
3:13 実際にグラフを生成してみる
4:04 コード以外も全部入る
5:04 グラフへの問い合わせ方
5:58 チームで共有する運用
6:45 strictモードでAIの行動を変える
7:23 mattpocock/skillsとの違い
8:11 ハマりどころと制限
8:50 AIに地図を渡すという発想
▼ 関連リンク
Graphify GitHub: https://github.com/Graphify-Labs/graphify
PyPI (graphifyy): https://pypi.org/project/graphifyy/
公式サイト: https://graphify.com
AI生成·誤りが含まれる可能性があります
動画の概要
AI生成AIが巨大なリポジトリを解析する際、ファイルを手探りで読み込んでトークンを浪費したり、的外れな回答をしたりする問題を解決するツール「Graphify」の紹介です。リポジトリをナレッジグラフに変換し、構造的な関係性をAIに把握させることで、効率的かつ正確なコード解析を実現します。
そう、今年の4月にリリースされて、3ヶ月後の解析はツリーシッターで、ローカル処理だから
あー、それ巨大リポあるあるだね
AIが手探りでファイル読んでいくから、本題にたどり着く前にトークン使い切っちゃう
しかも関係ないファイルまで読み込んで、結局検討違いの回答してくるし
リポジトリの全体像がAIに見えてないのが原因だよ
シャリちゃん、グラフ・イファイって知ってる?
聞いたことない。何それ?
リポジトリを丸ごとナレッジグラフに変換して、AIに渡せるスキルだよ
プレップで手探りする代わりにグラフをクエリさせる
コードの構造を先に把握させるってことか
それ、試してみたいのです
グラフ・イファイ、今GitHub見てきた人数9万超えてるんだけど
そう、今年の4月にリリースされて、3ヶ月半で9万1000スター
Yコンビネーターの今期バッチに採択されてるプロジェクトだよ
スキル集とかフレームワークじゃなくて、単機能のスキルでしょ?
それでこの規模ってちょっと異常だよね
比較すると面白くて、アンスロピック公式のスキル集が16万
マットコーコック氏のスキル集が17万5
グラフ・イファイは単発コマンドなのに、それらと同じ土俵に立ってる
フロードコードとかカーソルとか、20以上の環境で動くのも大きいのかな?
それもあるね
どの環境でも同じように使えるから、導入のハードルが低いんだよ
ナレッジグラフって聞くと、エンベディングとかベクトルDBを創造するんだけど
グラフ・イファイはそこが違うんだよね
ベクトル検索じゃなくて、ノードを辿るグラフトラバーサル
ルイジドで引っ張ってくるんじゃなくて、関係性を直接辿るってこと?
そう、このクラスはあの関数を読んでる
このモジュールは誰をインポートしてるって、コードの構造そのものがレッジになる
しかも各エッジに、エクストラクテッドかインファードってタグが付くの
それって何の区別?
エクストラクテッドは、ASTから直接読み取った確実な関係
インポートとか関数呼び出しとか
インファードは、グラフ・イファイが名前解決とかリンポートの追跡で推論した関係
出典が明示されてるから、どこまで信頼していいかわかるんだね
そういうこと、あとアンビギュアスって曖昧なやつもある
このAST解析って、LLMに投げてるの?
コードの解析はツリーシッターでローカル処理だから
LLMのクレジットはゼオ、ネット送信も無し
コードだけならオフラインで完結するのか、それは安心かも
ドキュメントとか画像を含める時だけ、モデルが必要になるよ
で、インストールってどのくらい面倒なの?
2コマンドで終わるよ
まず、UVツールインストールグラフィファイYでCAYを入れる
え?グラフィファイYってYが2つ?
そう、ファイピアイのパッケージ名はまつみにYが2つ
Yが1つのグラフィファイは別パッケージだから
間違えると失敗するよ
危なかった、普通に打ち間違えるところだった
次にグラフィファイインストールを打つと
クロードコードにスキルが登録される
それだけ?設定ファイル書いたりしなくていいの?
うん、インストールコマンドが環境を自動判定して
必要なファイルを配置してくれる
じゃあもうスラッシュグラフィファイって打てば動くんだ
よし、早速試してみよう
スラッシュグラフィファイスペースドットって打てばいいんだよね
そう、タレントディレクトリを解析するならそれでOK
実行するとグラフィファイアウトってフォルダに3つのファイルが出力されるよ
3つ、ジェイソンだけじゃないんだ
グラフドットジェイソンが生のグラフデータ
グラフリポートドットMDが分析レポート
で、グラフドットHTMLがブラウザで開ける可視化ファイル
HTMLで可視化まで出るの?見てみたい
ブラウザでグラフドットHTMLを開くと
ノードがぐわーって広がるフォースダイレクテッドグラフが出
プラスとか関数がノードになってて
呼び出しやインポートがエッジで繋がってる
あー、ノードに色ついてる
これ何の区別?
それがコミュニティ、いわゆるクラスタね
ライデンホーってアルゴリズムで
関連の強いノード同士を自動でグループ化してくれるの
色を見ればどのあたりがまとまった機能群なのかパッと分かるんだね
ツリーシッターでAST解析って言ってたけど
対応言語ってどのくらいあるの?
36言語以上
Python、TypeScript、Go、ラストあたりは当然として
CUDAとかメタル、あとセールスフォースのAPEXまで対応してる
APEXまで?
業務系の人も使えるんだね
ただ、グラフEFIの面白いところはコードだけじゃないんだよね
コストグレスオプションをつけると
コストグレスのスキーマをライブで取得できる
DBの構想もグラフに入るってこと?
そう、テーブルやカラムがノードになってアプリのコードと繋がる
さらにテラフォームの.tfファイルも読めるから
インフラ定義も同じグラフになる
アプリとDBとインフラが一つのグラフに統合されるのか?
このAPIがどのテーブルに書き込んで
それを管理してるインフラはどれか
みたいな質問が1回のクエリで答えられるようになる
PDFとか画像も追加できるって書いてあったけど
それもグラフに入るの?
うん、LLMを使って内容を抽出してノード化する
動画も対応してるよ
設計者のPDFとコードが繋がったら
ドキュメント探す手間が減りそうなのです
グラフができたのは分かったけど
これどうやって使うの?
主に3つのコマンドがあるよ
クエリ、パス、エクスプレイン
まずクエリは自然言語で質問できるコマンド
クレップみたいにキーワード指定じゃなくて
普通に日本語で聞けるんだ
グラフをBFSでたどって
関連するノードが返ってくる
次にパスコマンド
これは2つのノード間の最短経路を出す
JALUTSUSAI PASCASとAPIモデルフィールドって打つと
3ホップで繋がってるよ
みたいに返ってくる
AとBがどう繋がってるか
経路で見えるってことか
依存関係を置いたい時に便利そうだね
最後のエクスプレインは
特定のノードの接続関係を一覧表示する
エクスプレインでAPIルーターって打つと
そのノードが何を呼んでるか
何から呼ばれてるかが全部で
ソースの下り番号とか
コミュニティ番号も出るの?
出るよ
どのファイルの何行目か
接続が何本あるかも表示される
このgraphify-outフォルダ
.gitignoreに入れとくべき?
逆、むしろコミットしておくのがおすすめ
チームメンバーがプルした瞬間から
同じグラフを共有できるようになる
新しく入った人も
すぐにリコジトリの構造を把握できるってことか?
そう、オンボーディングの手間がかなり減るよ
でも、コード変更するたびに
手動でグラフ再生するの面倒じゃない?
graphify-hook-installってコマンドがあって
これを打つとコストコミットフックが設定される
コミットするたびに
自動でグラフがサイビルドされるよ
でもgraph.jsonをみんなで編集したら
マジでコンフリクトしない?
そこも考慮されてて
Gitmergeドライバーも同時にセットアップされる
graph.jsonはユニオンマージで処理されるか
コンフリクトが起きない設計になってるの?
チーム運用まで想定して作られてるんだね
グラフを作っても
AIが勝手にグレップし始めたら意味なくない?
そこを矯正できるオプションがあるよ
graphify-cloud-install-strictを打つと
ストリクトモードが有効になる
ストリクトモードって何が変わるの?
フロードコードがリードとかグレップを使う前に
必ずグラフをクエリするようになる
fretool-use-hookっていう仕組みで
ファイル読み込み系の操作に割り込むの
ファイルを直接読む前に
まずグラフであたりを付けさせるってことか?
そう
グレップ連発でコンテキスト溢れるのを防げるし
的外れなファイルを読む無駄も減る
最初に困ってたやつ
これで解決できそうなのです
大きいリポジトリほど効果が出やすいから
試してみて
graphifyってスキルだよね
matpokok-slash-skillsとはどう違うの?
同じスキルカテゴリだけど
目的が全然違うんだよ
graphifyはリポジトリの地図を描くスキル
matpokok-slash-skillsは
AIの働き方の作法を注入するスキル種
作法って具体的には何が入ってるの?
TDDループで実装させるとか
PRレビューの手順とか
ドメインモデリングの進め方とか
中身はほぼクロンプトと手順書で
思い処理はしない
graphifyはツリーシッターで
AST全部舐めるから
そこが対照的だね
そう
だから強豪じゃなくて
併用する関係なの
両方入れておいて
使い分けるってこと?
特に巨大リポでは
まずgraphifyで構造を把握させて
その上でmatpokok-slash-skillsの
スラッシュコード-でビューを走らせる
みたいな流れが自然だよ
さっきgraphifyYYってYが2つって言ってたけど
マジでそこ間違いやすいよね
だね
あともう一つ
PIPインストールは避けた方がいいよ
PIPじゃダメなの?
普通に使えそうだけど
スキルがPythonの実行環境を独自に解決するんだけど
PIPだとそこが食い違うことがある
モジュールノットファウンドエラーで動かない
みたいな報告がMacとWindowsで出てるの
だからUVツールインストールが推奨なんだね
あとは巨大リポジトリの話
コセンノードを凍ると
graph.htmlがかなり重くなる
ブラウザで開くと固まるやつ?
そう
そういう時は
--non-visで可視化をスキップして
JSON出力だけにするといいよ
フレップで手探りさせるんじゃなくて
先に地図を渡すって発想が面白いよね
AIって知事されたことはうまくやるけど
前代像が見えてないと遠回りしがちだから
最初に構造を把握させておくだけで
無駄なファイル読みがかなり減るよ
しかもコード部分はツリーシッターでローカル処理だから
完全に無料なんだよね
そう
APIキーなしでグラフ生成までいける
まずは小さめのリポジトリで試して
graph.htmlを眺めてみるといいよ
ノードが加わって広がるの
見てるだけで構造が頭に入ってくる感じがする
コミュニティの色分けで
どこがまとまった機能かも一目で分かるしね
シャリナも早速今困ってるリポで試してみるのです
コンテキストこかつから解放されるといいね
