30K Star 神器,给 Claude Code 装上学院地图,Token 中位数省 65 倍 – 码哥實

0
30K Star 神器,给 Claude Code 装上学院地图,Token 中位数省 65 倍 – 码哥實


30K Star 神器,给 Claude Code 装上学院地图,Token 中位数省 65 倍 – 码哥實

上周我LETクロードコードはサポート結果のバグを修正しました。

小先 grep 一度 payment次に、再調整された 12 の効果を見つけます。 OrderService ここで、またインポートが 8 つ実行されました。 使用されているベースの設計が 1 つ見られるため、変更を確認しました。 service/ 目次にはこう書かれています。

問題は変わりましたが、私の心は正しい場所にあります。

これはクロードの賢さではありません、是是没「地図」。

前日要聊的 code-review-graph,是在AI青一副GPS。 GitHub 30,608 スター,2,787 フォーク,MIT 契約,プロジェクト作成日2026 年 2 月 26 日,半年冲 30K スター。 最新バージョン v2.3.7,2026 年 7 月 18 日公開。

彼の声はとてもダイレクトです。Stop burning tokens. Start reviewing smarter.

私は本当に年を重ねており、設計、電気、原則、ベンチマーク猫、適用可能な境界全満一遍皇README一遙灯電気、可決我看過電視のものを持っています。

それは最終的には問題を解決します

先述のオールライン、code-review-graph は、別の RAG コード検索ツールではありません。

それはツリーシッターによって行われます。

室家在 6 个電影結果上跑了電影電影、中位トークン削減 65 倍、範囲 36 倰 3」刂76

この数字を見ると、最初の反応は「吹的吧」であることがわかります。私もそうです。それで、後で、それをどのように測定するか、基本的なレベルは何ですか、どのような種類の水があるかについて特別に理解します。

ただし、それを実行させてください。

手握り手实战

環境の準備

Python 3.10以降のバージョンが必要です uvx 安全に使用できません。 pipx、効果は同じです。

# 方式一,uvx,推荐,零安装
uvx code-review-graph --version

# 方式二,pipx
pipx install code-review-graph

# 方式三,pip 全局装
pip install code-review-graph

言語検索機能を使用したい場合は、埋め込みを追加する必要があります。

pip install "code-review-graph[embeddings]"

ローカル モデルは初回のみ使用され、HuggingFace がダウンロードされるため、デフォルトでは埋め込み可能ではありません。

クロードコードへのインストール

1 つのコマンドでプラットフォームを自動的に検出し、MCP 構成を書き込みます。

code-review-graph install --platform claude-code

それは 14 の電気効果、Claude Code、Cursor、Codex、Windsurf、Zed、Continue、OpenCode、Antigravity、Gemini CLI、Qwen、Kiro、Qoder、Copilot、CodeBuddy をサポートします。完全に完了する必要があるエディタを再起動し、MCP サービス务之事起動。

MCPはバインドされています localhostこれは、コードのプライバシーに敏感なチームにとって非常に重要です。後で、これはコードのプライバシーに敏感なチームにとって非常に重要です。その後、これはコードのプライバシーに敏感なチームにとって非常に重要です。

構造図

プロジェクトのルート ディレクトリに移動し、実行します。

code-review-graph build

それはうまくいきます git ls-files git によって追跡されるすべてのファイルをリストします。gitignore は自動的にスキップします。 500 ファイルが初めて更新されます。

前作完你说是最好根安全多一个 .code-review-graph/ フォルダ、中には graph.db、最も安全な 3 つのテーブル ストリーム ファイルの SQLite チャートが追加されました。 .gitignore

クロードコードでは

Claude Code を再起動すると、一連のスラッシュ コマンドが表示されます。

/code-review-graph:build-graph
/code-review-graph:review-delta
/code-review-graph:review-pr

review-delta それが最も重要なことです。 git の変更に対して現在の作業領域を検出し、マップの端に沿って影響範囲を追跡し、AI に「これらのファイルのみを表示する」ように指示します。

我改完一定利、正視在クロード・コード里骑 /code-review-graph:review-delta,差分全体ではなく、構造化されたレビューの簡単なレポートが返されます。

  • どのノードを変更するか
  • これらのノードは次のように呼ばれます
  • これらのノードを対象とするテストはどれですか
  • 0 ~ 100 のリスク スコア
  • 推奨される最小レビュー ファイル

AI が Jeton 从「安全家店」を読み取る全プロセスは、「两三千 Jeton 構造化要約」に落ちます。

パネルトークンの節約

detect-changes --brief このコマンドは、Token Savings パネルなどを出力します。

Files changed: 3
Nodes impacted: 47
Review set: 8 files (2,840 tokens)
Full corpus: 142,356 tokens
Savings: 50.1x

トークンの値は次のとおりです chars/4 これが気になり始めた REPRODUCING.md,公式使用 222 个文書は校正を行います,chars/4 跟tiktoken cl100k_base 偏差は0.5%以内です。つまり、偏差は無視できる。

パターンに従ってください

開発するとき、毎回手動でビルドする必要はなく、開いて聞くことができます。

code-review-graph watch

ファイルを保存すると、自動的に更新が増加します。 SHA-256 ハッシュ率を増やし、実際に変更されたファイルの内容のみを再分析し、エッジに沿って影響を受けるノードの関係を更新します。実際の体験はほとんど実感がありません。

インタラクティブな画像を表示

code-review-graph visualize

これはローカル Web サービスであり、チャートに基づいて対話的に在美国里画に出ます。上下のノードを使用すると、どれがハブ ノードでどれがポッド ノードであるかを確認できます。この機能は、新しい同僚の新人研修やシステムの理解に使用できます。

.code-review-graphignore

生成されたコード、移行、製品ビルドのフロントエンドなど、インデックスを作成したくない一部のディレクトリ。 .code-review-graphignore,構文は gitignore と同じです。

**/generated/**
**/migrations/versions/**
frontend/dist/

GitHub 共有アクション

また、PR で自動的に評価でき、設定もできる GitHub Action も提供します。 fail-on-risk 扉の組み合わせとして。

name: Code Review Graph
on: [pull_request]
jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - uses: tirth8205/code-review-graph-action@v2
        with:
          fail-on-risk: 70
          github-token: ${{ secrets.GITHUB_TOKEN }}

70%を超えるリスクがあると合併が妨げられます。このスコアは拍脑袋のスコアではなく、ノード変更のハブ度、影響を受ける半径内のテスト カバレッジ レート、および信頼マージンが含まれます。

コードレビューグラフ 安全工作流

ベンチマーク数値

いいですね、最も重要な部分ですが、この数字の 65 倍は信頼できません。

公式に6つの電子効果源に記載されているものを抽出しました。

倉庫 トークン全量语料 トークンを返す 余分に節約する
速い 948,793 2,653 375.6倍
ボール 143,594 2,196 71.0倍
コードレビューグラフ自体 208,821 3,190 68.1倍
ジン 166,868 2,766 61.9倍
httpx 142,356 2,661 60.6倍
急行 136,052 3,936 36.0倍

中間位数は 65 倍。 fastapi 那志 375.6 倍は、fastapi のため、最高です。 __init__.pyapplications.py 多数のシンボルがエクスポートされており、すべての量がテーブルに入力されると、これらのファイルがコンテキスト内に繰り返し表示され、ダイアグラムは真に関連するリンク チェーンのみを返します。

しかし、ここで警告があります。

基本ラインは「全量语料」、つまり倉庫全体を AI に与えます。これは、基地に与えられるすべての倉庫のすべてではありません。実はクロードコードユーザー会用のgrep、glob、find references したがって、65 倍は「極限の改良」比、つまり「熟線電影」比です。

これはまだ正式ではありません REPRODUCING.md 里了、しかしそれはReadmeの目立つ位置にありません。私の判断では、賢い grep 戦略を使用したとしても、グラフには明らかな利点があるというのが現状です。これは、grep はテキストとのみ一致し、呼び出しと継承チェーンの間の関係がわからないためです。しかし、65 倍という利点は決して誇張されたものではありません。

F1 の分析の影響は 0.69、精度 0.546、再現率 1.0、再現率 1.0 です。グランド トゥルースは、同じ微小室実験電界からのものであるように見えます。設計証書、これらの証書証書、電影証書真。 0、公式の自己マーク「これも不用」」

多起电影电影は0.909分、6つの倉庫にまたがる11の手動タスクによって測定され、このデータは比較的信頼性が高く、「地図の辺に沿って正しい答えが見つからない」を測定しており、流通ステートメントに依存しません。

したがって、私の結論は、トークンの節約の方向性は正しく、量のレベルは信頼できますが、毎日確認できる量は375倍です。

全量喂入 vs 图谱设计トークンの比較

原理

Tree-sitter 解析出计边

Core は Tree-sitter、一单量解析库で、それ以来 GitHub 独自の Atom エディタがリリースされ、現在ではすべてのコード構造解析ツールのほぼデファクトスタンダードとなっています。

あらゆる文書分析を AST (抽象文法ツリー) に取り込み、そこから抽出します。

  • ノード、関数定義、クラス定義、メソッド、インポート文、ドキュメント自体
  • 角、CALLS,関数 A は関数 B を呼び出します;IMPORTS,文書 A が文書 B をインポート;INHERITS,米A自米B;TESTED_BY、设计A被最終文件T因标

每条边还带一置信度设计,EXTRACTED AST電影からの移動はあり、安全性が高いです。INFERRED これは、厳密に決定されるか、または電気的影響が推定される可能性があります。AMBIGUOUS AI はこれらのタグを取得し、どの関係が信頼に値するかを判断できます。

知说图谱调与四米带置信能边

なぜLSPを使わないのでしょうか?

尋ねられるかもしれません、LSP、言語サーバー プロトコル、そうではありませんこれらの上测吗、find referencesgo to definition、電子効果の正確なタイプ推論を行うために、電子機器のフロントエンドを使用します。

違いは精度と幅です。

LSP は正確ですが重い。すべての言語はデーモンです,Python 要起 pyright,Go 要起 gopls,Java 要起 jdtls,吘内倃册 CPU LSP のリファレンス リストは「100% 正確か無か」です。動的言語またはモンキー パッチのシーンでは、直接直接使用することがよくあります。

Tree-sitter は启発行式の AST 解析、不タイプ推密、一国际 35 の语语、Python、JavaScript、TypeScript、Go、Rust、Java、C/C++、C#、Ruby、Kotlin、Swift、PHP、Scala、Solidity、、Solidity Zig、Nix、Verilog、Terraform、Vue SFC、Jupyterノートブックは 100% 正確ですが、「不是演格安全双受発行室」を保証します。

シナリオのコードを確認すると、後者が適切です。ファイルの交換が非常に多く見られ、さらなる電子効果の漏洩を避けるための電子効果の設定です。

影響分析範囲

これは、ツール全体の最も核となるアルゴリズムです。

関数を変更しました。あなたが行ったことは、

  1. 対応するファイル ノードを見つける
  2. フォローする CALLSIMPORTS 逆方向送信、このノードのすべての依存関係を調べます
  3. フォローする TESTED_BY 边内容この安全最机の設計
  4. 内部に到達するノードの設定と設置信度の追加
  5. 最小かつ十分なレビュー ドキュメントを 1 つ出力する

この処理を爆発半径解析、爆発半径解析と呼びます。従来の静的分析ツールも同様のことを行いますが、通常、ふるいにかけるための数百のドキュメントが出力されます。 CRG の違いは、処理が快適な AI コンテキスト ウィンドウに結果を切り出すことができることです (通常、20 万のトークン)。

更新を増やす

最初の完全なビルドの後、各更新はわずか 3 ステップで行われます。

  1. git diff 変更ファイルリストを取得する
  2. 結果に対する SHA-256 ハッシュの計算、上の 1 つのハッシュ比
  3. 変更されたファイルのハッシュのみを再分析し、古いノードとエッジを削除し、新しいノードを挿入して、新しいノードでエッジを更新します。

增量更新フロー: 実際に変更されたファイルのみが分析されます

MCP 契約、30 ツール

AI は電気的に改変された図ではありませんが、MCP ツールを介して閲覧する必要があります。

ツールには、ノードの詳細のクエリ、ユーザーの呼び出し、ユーザーの呼び出し、影響半径分析、シンボルの検索、コミュニティ構造の取得、ハブ ノードの取得、リスク スコアの取得などが含まれます。 5 つのプロンプト テンプレート reviewarchitecturedebugonboardpre-merge、可以下一篇手机が最適です。

重要な設計は、何をチェックするか、マップが何を返すかを AI が決定することです。 AI は一度にすべてのデータを取得するわけではありませんが、データベースをチェックするのと同じように、まずノードをチェックし、その結果に基づいて次のステップでどのエッジに沿って歩くかを決定します。これはマルチジャンプ探索であり、ここも RAG よりも強力です。

なぜRAGではないのでしょうか?

ここが一番誤解されやすいポイントです。

RAG、エレクトロニック・ハンド・マシン・エレクトロニック、小さな構成図を小さくする、余弦技術を使って知覚する最新の品。という質問に答えます。

CRG 存是 AST 解析出情管边,答えるべき質問は「谕是了X」「X的子米朌朔檪䀺佛朔是〺评论机会会歌〺」です。

CRG 内の埋め込み CRG はシーケンスの最初のノードを見つけるために使用される電子的な設計です。

キーワードは言及された場所を見つけることができますが、の方角能動画「阿用章正視了哪三章」。

公式在多起電影电影上拿了 0.909 分,一方 RAG プログラム在上在上电影电影停留实体上电影的電影,なぜならベクトルは類似度が似ているからであり,B は類似しており,B と C は類似しており,構造的関係を有する A ⷟ C を表していない。

ライデンのコミュニティテストのスコア

この図では、ライデン コミュニティ検出アルゴリズムも実行されました。高度に相互接続されたノードはコミュニティを統合します。ハブ ノードに対応するモジュールまたはコードの一部は、他の多数のノードに依存するノードであり、リスクが高くなります。

リスクスコアには、ノードのハブ変更の程度、影響を受ける半径内のノードの数、関係のエッジ、コミュニティ趈越数、テストカバレッジ率帆盖率〺0信度100の再生などのいくつかの要素が統合されており、人間のレビュー担当者とCI门禁に迅速な判断基準を与えます。

コードレビューグラフ

その他のツールの選び方

前回の 073 篇文章里 sense、codegraph、CodeGraph の 3 つのツールを比較してみました。

セレナータCRG は、ツリーシッター ルート、量、言語カバーを実行し、この種の「宁斗もったいない」シナリオのレビューと影響分析に適しています。

リミックス、解決策は、倉庫全体を大きなテキスト ファイルとして AI に供給することです。それは「大きなテキストファイルをAIにどのように与えるか」を解決し、CRGは「AIにどのようなコードを与えるか」を解決します。

クロードコンテキスト 类RAGツール、做ベクトル検索、「找哪里了手手ション」のファジークエリに適しています。 「找代们定利被调手う」構造化クエリに適したCRG。

意味/コードグラフ,073 篇聊过,センスは IDE 内のリアルタイム視覚化にバイアスをかけ、コードグラフは静的アーキテクチャ図の生成にバイアスをかけます。CRG は MCP の唯一の詳細な統合であり、「AI 消費用」を最初のターゲットのチャート ツールとしており、その出力は人が見るためのチャートではなく、AI が読むためのチャートですが、AI が読むためのチャートではありません。

シンプルな選択提案、

  • コード ライブラリは 500 ドキュメントを超え、AI は無関係なコードを読みすぎることが多く、CRG
  • 正確なタイプの認識と構造が必要です。Serena を使用してください
  • 是想想掌少学技作性傂经做做AI電影,repomix如用
  • 想找「哪里了了XXX」のあいまい検索、RAGクラスツールをより直接的に

適切でない場合

この篇の文章はこの文章ではなく、いくつかのシーンで CRG が反撃して混乱しました。

小さなプロジェクト製。 几百个文件例文帳に追加,AI は本来コンテキストに読み込まれた関連コードを理解できるようになる.

改良用途は少ない。 改文案、超CSS、追加ログ、直接AIに差分を見させて、原一圈查图谱纹属廃棄物。

JavaScript と Go の現在の検出は現時点では弱いです。 公式ベンチマーク里 JS/Go のデータ フロー検出再現率はわずか 33% であり、これは 2 つの言語のデータ フロー関係が三分之二のデータ フロー関係であることを意味します。

検索機能自体が弱い。 検索エンジンのMRRは、検索結果の品質を測る指標である平均相互順位でわずか0.35で、0.35ということは正しい結果が平均して3位に表示されることを意味します。検索エンジンではありません、検索エンジンではありません、それは強いです。

共同交換電影も使用できません。 それは「改了了なんます、上海すんますますますます」です。この関数は過去のマイニングに基づいており、現在の予測精度は 0、公式の自己実験ベンチマークです。

よくある質問

Q,私のコードを空に渡しますか?

唯一のネットワーク動作は、HuggingFace からのオプションの埋め込みモデルです。ダウンロード、ダウンロード完了も完全に公開されています。

Q,プライベートウェアハウスとモノリポをサポート0

サポート git ls-filesモノリポジトリはディレクトリの構築に使用できますが、個別に構築することもできます。大きなモノリポジトリを分割して構築することをお勧めします。単一リポジトリのサイズが大きいことは避けてください。

Q,クロードコードと組み込みコード検索の違いは何ですか?

クロード コードには、ファイル名とテキストの一致に基づいた glob および grep が組み込まれています。 CRG は「誰がこの関数を呼び出したのか」という構造的な関係を示します。

Q.

最初の 500 ドキュメントの増加には約 10 秒、3000 ドキュメントの増加には約 2.5 秒、そのうち 1.4 秒は Python の起動にかかりました。 watch モード、保存されたファイルは自動的に更新され、本体の感触は 2 番目のレベルです。

Q、30 個の MCP ツールは、AI の電子映像を設計することはできません。

AIはツールの説明によって選択され、ほとんどのシーンが使用されます review-deltareview-pr これら 2 つのパッケージ化されたプロンプト テンプレートは、ツールを手動で選択する必要はありません。特定の機能を手動でデバッグする場合など、高度なシナリオでは 30 のツールが使用されます。

最後に書きました

我用了了年、最大の感情は「省了多就トークン」ではありませんが、レビューの質は本当に変わりました。

以前は、Claude Code がコードをレビューするとき、コードの差分のみが表示され、最も関連性の高い参照は grep でした。これでマップチェックが行われるようになります。

トークン経済学には常に最も有名な点があり、コンテキスト ウィンドウは超大、越自人连「全閉道将就行佻就行但大位大、越自人连」「2 つの隠れたコストがあり、1 つは钱、入力トークンの按用量计费、2 つは品質、中間効果が失われ、モデルの中間位置の情報の注目が低下します。」

コードレビューグラフがこれを証明しています。 AI の知能が高まるのではなく、AI の知能が低下するのです。

プロジェクトアドレス github.com/tirth8205/code-review-graph,MIT 合意、自己脱退。


🔧 文中にリクエストを完了しました

下拉閱讀 加入書架 下載漫畫
beeaa00ee37c5db0e2fb2c5c5efe4f29

回帰「プロンプト」评论设计、更新を続けます。


お役に立てれば転送させていただきます — AI 係数の取得に使用され、転送のセキュリティ時間を節約します。

加我微信设计专弜报看群、読者の意見提出を歓迎します、愛しています、ブログ和个云休公号発行叐出発行号に細心の注意を払ってください、

Leave a Reply

Your email address will not be published. Required fields are marked *