嗨,我是小華同學,專注解鎖高效工作與前沿AI工具!每日精選開源技術、實戰技巧,助你省時50%、領先他人一步。👉免費訂閱,與10萬+技術人共享升級祕笈!
在做 AI 程式碼審查時,你是否有這種感覺——每次讓它審查程式碼,它都要把整個程式碼庫讀一遍,token 燒得飛快,但真正相關的程式碼反而被淹沒了?
這不是你的錯覺。
上週我用 Claude Code 審查一個 2000+ 檔案的 Flask 專案,想讓它幫忙看看某個 API 改了哪些地方。結果 Claude 讀了整整 15 分鐘,消耗了將近 20 萬 token,最後給出一個「根據分析,建議關注以下檔案...」的回覆。
打開詳情一看——它列出了 47 個「可能相關」的檔案。
47 個。我只是想看看一個 API 改動的影響範圍,結果你給我 47 個檔案?
相信做過大型專案 AI 程式碼審查的開發者都感同身受:改一行程式碼,AI 給你回覆一整本《戰爭與和平》。不是 AI 不夠聰明,是它真的不知道你的程式碼庫裡誰呼叫誰、誰依賴誰。
主流 AI 編碼工具每次任務都會重新掃描整個程式碼庫。token 消耗巨大,效率卻很低。
今天要介紹的這個開源工具 code-review-graph,就是來解決這個問題的。它的核心理念很簡單:給 AI 建一張程式碼「地圖」,讓它只讀真正需要的內容。
實測效果:程式碼審查場景 token 消耗降低 6.8 倍,日常編碼任務最高降低 49 倍。
01 它是怎麼運作的?
code-review-graph 採用了「知識圖譜」的思路,整個流程分為四步:
第一步:Tree-sitter 解析
用 Tree-sitter 把程式碼解析成抽象語法樹(AST),識別出函式、類別、導入關係、呼叫鏈這些結構化資訊。
第二步:建構程式碼圖
把解析結果存成一張圖。節點是函式、類別、模組,邊是它們之間的關係(誰呼叫誰、誰繼承誰、誰引用誰)。
第三步:追蹤影響半徑
當有程式碼變更時,工具會計算出這份改動會影響哪些檔案、哪些函式、哪些測試——這就是「blast radius」(影響半徑)。
第四步:MCP 協定注入
透過 Model Context Protocol(MCP)把精準的上下文傳給 AI 編碼工具。AI 只需要讀這幾 KB 的關鍵資訊,而不是整個程式碼庫。
02 硬核數據會說話
光講原理不夠看,直接上實測數據。開發者在 6 個真實開源專案(13 次提交)上做了自動化評估:
Token 消耗對比
| 專案 | 樸素方式 | 使用圖後 | 節省比例 |
|---|---|---|---|
| Flask | 44,751 | 4,252 | 9.1 倍 |
| Gin | 21,972 | 1,153 | 16.4 倍 |
| FastAPI | 4,944 | 614 | 8.1 倍 |
| Next.js | 9,882 | 1,249 | 8.0 倍 |
| HTTPX | 12,044 | 1,728 | 6.9 倍 |
| 平均 | — | — | 8.2 倍 |
平均節省 8.2 倍的 token,意味著你的 AI 額度能用更久,或者同樣的額度能完成更多任務。
影響分析準確性
更重要的是,這套方案沒有因為「精簡」而犧牲準確性:
- ●召回率 100%:所有真正受影響的檔案都被找到了,沒有遺漏
- ●平均 F1 值 0.54:存在一定程度的過度預測(會把一些可能相關的檔案也包含進來),但這是刻意為之——寧可多讀一些,也不能漏掉關鍵改動
大型專案效果
對於大型 monorepo 專案,效果更加誇張:
在一個 27,700+ 檔案的超大儲存庫裡,code-review-graph 排除了 99.9% 的無關檔案,只讓 AI 讀取約 15 個真正相關的檔案。
03 適合哪些場景?
場景一:程式碼審查
當你要審查一個 PR 或者檢查某個改動的影響範圍時,code-review-graph 會精確告訴你哪些檔案、哪些函式會受到影響。不是 47 個「可能相關」,而是真正相關的 5-10 個檔案。
場景二:大型專案維護
面對一個幾十人維護的遺留程式碼庫,想搞清楚某個模組被誰依賴、修改它會影響哪些功能?圖譜一目了然。
場景三:架構重構
想移除某個「看起來沒用到」的模組?先用知識缺口分析看看它是否真的孤立,再做決策。
場景四:程式碼 onboarding
新人入職,需要快速了解一個陌生程式碼庫的結構?圖譜比逐個翻檔案夾高效得多。
04 增量更新:改完程式碼,圖自動刷新
很多人擔心「建圖是一次性工作,後續維護很麻煩」。實際不是。
code-review-graph 會在每次 git 提交或檔案儲存時自動觸發更新:
- 1.鉤子檢測到變更檔案
- 2.透過 SHA-256 找到相關依賴
- 3.只重新解析變更的部分
- 4.圖資料庫增量更新
一個 2,900 檔案的專案,增量索引只需要不到 2 秒。 首次建構會慢一些(約 10 秒處理 500 個檔案),但後續都是增量生效。
05 支援多少語言和平臺?
目前支援 23+ 程式語言,涵蓋主流技術棧:
Python、TypeScript/TSX、JavaScript、Vue、Svelte、Go、Rust、Java、Scala、C#、Ruby、Kotlin、Swift、PHP、Solidity、C/C++、Dart、R、Perl、Lua、Zig、PowerShell、Julia,以及 Jupyter/Databricks 筆記本。
支援的 AI 編碼平臺也很廣:
- ●Claude Code
- ●Cursor
- ●Codex
- ●Windsurf
- ●Zed
- ●Continue
- ●OpenCode
- ●Antigravity
- ●Kiro
基本上你用的 AI 編碼工具,它都支援。
06 不僅僅是程式碼審查
很多人以為這只是「程式碼審查工具」,實際上它的能力遠不止於此:
架構分析
自動生成程式碼架構圖,標註耦合度過高的地方(Hub 節點)和架構瓶頸(Bridge 節點)。做架構重構時特別有用。
知識缺口分析
發現那些「孤立」的程式碼(沒有被充分測試的函式、很少被呼叫的模組、測試覆蓋薄弱的區域)。
語義搜尋
支援向量嵌入搜尋,可以按語義尋找程式碼實體,而不只是關鍵字匹配。
重構輔助
重新命名預覽、框架感知的死碼檢測、基於社群結構的重構建議。
匯出能力
可以把圖匯出成 GraphML(給 Gephi 用)、Neo4j Cypher、Obsidian 知識庫,或者 SVG 靜態圖。靈活對接你現有的工作流程。
07 怎麼安裝使用?
前提條件:Python 3.10+
安裝指令:
pip install code-review-graph
# 自動檢測並配置你使用的 AI 編碼平臺
code-review-graph install
# 建構程式碼圖
code-review-graph build
一條指令完成所有配置。install 會自動偵測你裝了哪些 AI 編碼工具,寫入對應的 MCP 配置,並注入圖感知指令。
可選依賴(按需安裝):
pip install code-review-graph[embeddings]
# 社群檢測支援
pip install code-review-graph[communities]
# 評估基準測試
pip install code-review-graph[eval]
# Wiki 生成(需要 ollama)
pip install code-review-graph[wiki]
# 全部安裝
pip install code-review-graph[all]
安裝完成後,打開你的專案,向 AI 助手發送:
然後就可以開始用了。
08 總結
code-review-graph 解決了一個很實在的問題:讓 AI 只讀它該讀的程式碼。
核心價值:
- ●Token 消耗平均降低 8.2 倍,最多 49 倍
- ●增量更新,修改程式碼後圖自動刷新
- ●支援 23+ 語言和主流 AI 編碼平臺
- ●本地 SQLite 儲存,不依賴雲端服務
- ●不僅僅是審查,還能做架構分析、重構輔助、知識缺口發現
侷限性也需要知道:
- ●小型單檔變更場景,圖建構開銷可能大於收益
- ●搜尋品質(MRR)還有提升空間
- ●流程檢測目前只在 Python 專案裡比較可靠
如果你經常做程式碼審查、或者在大專案裡用 AI 編碼工具,這個工具值得一試。
完整專案資訊
- ●GitHub:https://github.com/tirth8205/code-review-graph
- ●官網:https://code-review-graph.com
- ●PyPI:https://pypi.org/project/code-review-graph/
- ●許可證:MIT(免費開源)
如果這篇文章對你有幫助,點個在看支持一下。有任何問題歡迎留言區交流。
覺得好用的話,也可以去 GitHub 點個 Star,算是對開發者最好的支持。
我們下期見!