你的 AI 助手每改一行程式,常常把大半個專案重新讀一遍。token 帳單就是這樣燒起來的。
一句話結論:code-review-graph 是一個本機優先的開源工具,先把整個程式碼庫解析成一張「函式呼叫關係圖」,讓 Claude Code、Cursor、Codex 這類 AI coding 工具在 review 時只讀受改動影響的十幾個檔案。官方拿 6 個真實開源專案實測,每題 token 中位省 82 倍(最佳個案 528 倍),MIT 授權、原始碼不外送。截至 2026 年 7 月,GitHub 約 25,000 星,當日仍在日榜衝星。
code-review-graph 到底在解決什麼問題?
問題出在 AI coding 工具「讀檔」的方式。你叫 Claude Code 幫忙 review 一個改動,它為了搞懂前因後果,往往把相關目錄整批塞進 context,甚至掃過大半個 repo。專案越大,這筆浪費越誇張——一個幾千檔的 monorepo,真正跟這次改動有關的可能只有十幾個檔,其餘全是陪讀。
code-review-graph 的做法是先幫程式碼「畫地圖」。它用 Tree-sitter 把每個檔案解析成語法樹,抽出函式、類別、import 當作「節點」,把呼叫、繼承、測試覆蓋當作「邊」,組成一張結構圖存進本機的 SQLite。之後 AI 要 review 時,它只回傳跟這次改動真正相關的那一小撮檔案,而不是讓 AI 自己盲掃。
它是怎麼做到只讀十幾個檔的?
關鍵字叫「影響半徑」(blast radius)。當一個檔案變動,這張圖會往外追:誰呼叫了它、誰又依賴那些呼叫者、哪些測試會受牽連。追完這一圈,就是這次改動真正可能波及的範圍,AI 只讀這些就夠。官方給的 monorepo 例子很直白:27,700 多個檔被排除在 review context 之外,實際只讀大約 15 個檔。
速度也不差。它是增量更新——存檔或 commit 觸發後,只 diff 有變的檔、用 SHA-256 找出受影響的相依項、重新解析變動的部分。官方數字是一個 2,900 檔的專案增量重建在 2 秒內完成。語言覆蓋也廣,Python、JavaScript/TypeScript、Go、Rust、Java、C/C++、PHP、Ruby 到 Jupyter notebook 都吃,缺的語言還能自己丟一份設定檔補上,不必改原始碼。
它同時提供三種用法:當 MCP server(內建 30 個工具、5 套 review/除錯/上手流程模板)接進 AI 編輯器;當 CLI 直接在終端機查圖;還能當 GitHub Action,在每個 Pull Request 上貼一則「風險評分」留言,標出高風險函式、受影響的執行流程和測試缺口,而且整個建圖、查圖都在 CI 上跑,原始碼不外送。
怎麼安裝?三行指令接上 Claude Code、Cursor
安裝很輕。需要 Python 3.10 以上,然後跑三行:
- 裝套件:
pip install code-review-graph(或用 pipx/uv)。 - 自動接工具:
code-review-graph install。它會偵測你電腦上有哪些 AI coding 工具,自動寫好各自的 MCP 設定——Claude Code、Cursor、Codex、Gemini CLI、GitHub Copilot、Kiro、CodeBuddy 都在支援名單內。想只設定某一個,加--platform claude-code之類的參數即可。 - 建圖:
code-review-graph build解析你的程式碼庫。一個 500 檔的專案初次建圖大約 10 秒;之後開 watch 模式或掛上 commit hook 就能自動保持更新。
裝好、重啟編輯器之後,直接對 AI 說「幫這個專案建 code review graph」就能開始用。要移除也對稱:code-review-graph uninstall 只清掉它自己寫進去的設定,不會動到你其他的 MCP server 或 hook。
跟 Serena、repomix 差在哪?該選哪個?
這三個都是在幫 AI「更懂你的 codebase、少燒 token」,但切入點完全不同。簡單分:repomix 是把整包程式碼塞進對話,Serena 靠語言伺服器做符號級導航,code-review-graph 則是靠結構圖回答「改這裡會炸到哪」的多跳問題。
| 工具 | 核心機制 | 最擅長 | 授權/星數 |
|---|---|---|---|
| code-review-graph | Tree-sitter AST 結構圖 + 影響半徑 | 多跳問題:改動波及哪些檔、誰呼叫誰、哪些測試會壞 | MIT/約 25k★ |
| Serena(oraios) | LSP 語言伺服器(find_symbol、find references) | 符號級精準導航與安全改名 | MIT/約 25k★ |
| repomix | 把整個 repo 打包成一份 prompt 檔 | 一次把小專案整包塞進對話 | MIT/約 26k★ |
| grep/直接讀整個 repo | 逐檔搜尋或全讀 | 單跳查一個字串、小專案 | 工具內建 |
作者自己在文件裡也講得很白:小改動、單一檔案的瑣碎編輯、一次性的問題,用 grep 反而更快,不必動用整張圖;真正划算的場景是大型 repo、跨檔案的影響分析、「誰的誰又呼叫了誰」這種多跳追蹤。這種老實話,反而讓人比較敢信它的數字。
82 倍是真的嗎?先看清楚 benchmark 怎麼算
先把話說清楚:82 倍是「中位數」,不是「你一定省這麼多」。官方拿 6 個真實開源專案、13 個 commit 跑自動化評測,每題 token 降幅落在 38 倍到 528 倍之間,中位大約 82 倍。那個常被拿出來講的 528 倍,是單一最佳個案(fastapi)的上限,不是常態。
作者連弱點都一起列了:影響分析的 F1 大約 0.71,偏保守,寧可多標幾個「可能受影響」也不漏,所以大型相依圖會有一些誤報;關鍵字搜尋的排序還不夠好(MRR 0.35);執行流程偵測目前對 Python、PHP/Laravel 最強,JavaScript 和 Go 還要再練。願意把這些攤開來講的專案,比那些只喊「省 90% token」的可信得多。
適合誰?不適合誰?
適合:手上有中大型專案、尤其是 monorepo,天天用 Claude Code/Cursor/Codex 做 review 或改動,而且開始感覺到 token 額度不夠用的人。想在 CI 加一道自動化風險把關、又不願意把原始碼送去第三方服務的團隊,GitHub Action 這條路特別對味。
不適合:只有幾十個檔的小專案、或平常只問 AI 一次性的小問題——建圖的成本回收不回來,直接讓 AI 讀檔或 grep 更省事。對搜尋排序、JavaScript 流程分析要求很高的人,現階段也要有它還在打磨的心理準備。
不想裝它,還有什麼替代方案?
- Serena:要的是符號級精準導航和安全改名,選它。它把 IDE 的「跳到定義/找引用」能力開放給 AI,改東西時 context 也不會被撐大。
- repomix:專案不大、只想把整包程式碼一次餵進對話,這個最直接,npm 生態成熟。
- 先從省 context 的其他招下手:例如把 Claude Code 的臃腫 context 換個方式壓縮,我們之前寫過 pxpipe 用圖片計價把 token 帳單砍七成,思路不同但目標一樣。
- 什麼都不裝:小專案就讓 AI 直接讀,把力氣花在把問題問清楚,往往比裝工具更有效。
省下來的 token,怎麼變成你的錢?
如果你靠 AI 接案或做副業,這筆帳很實在。token 省下來,等於同一份 Claude Code 或 Cursor 訂閱額度能撐更久、在用量上限內做更多活;review 只讀十幾個檔,AI 回得更快,交付週期跟著縮短;CI 自動幫你標風險函式和測試缺口,少踩一個 bug 就少一次返工。把省下的成本和時間,換成多接一個案子、或把毛利留住一點,這才是工具真正的價值——不是省那幾塊訂閱費,是讓你單位時間產出更多。
新手三分鐘行動清單
- 挑一個你手上最大、最常請 AI 幫忙的專案當白老鼠。
pip install code-review-graph裝好,跑code-review-graph install讓它自動接上你的 Claude Code 或 Cursor。code-review-graph build建圖,然後對 AI 說「幫這個專案建 code review graph」。- 做一次平常的 review,比較一下 AI 這次讀了幾個檔、回得快不快。
- 覺得有用,再把 GitHub Action 掛上去,讓每個 PR 自動出風險評分。
常見問題(FAQ)
它會把我的程式碼傳到雲端嗎?預設不會。它是本機優先,圖存在專案裡的 SQLite,零遙測;只有你自己開啟雲端 embedding 搜尋時才會用到外部服務,那是選配。
要另外裝資料庫嗎?不用。核心圖儲存靠本機 SQLite 檔,不需要任何外部資料庫或雲端服務。
它跟我編輯器的其他 MCP server 會打架嗎?安裝只寫它自己那份設定,移除時也只清自己的東西,不會動到你別的 MCP server、hook 或 skill。
免費嗎?MIT 授權,完全開源免費,可以自由修改、整合進商用專案。
結論:這是給「大專案 + 重度 AI review」的人準備的
code-review-graph 不是萬用神器,它很清楚自己的守備範圍:大型 codebase、跨檔案影響分析、想少燒 token 又不想把碼送出門。如果這正是你每天的痛,花三分鐘裝來試——省下的不只是 token,是你請 AI 幹活的整體效率。相關工具還可以看 Desktop Commander 讓 Claude 直接接管終端機 和 claude-code-templates 一行指令配好 Claude Code,一起把你的 AI 開發環境調到最省。專案原始碼在 GitHub。
本文為工具介紹與教學,非投資或商業建議。文中數據(星數、token 降幅、效能)截至 2026 年 7 月,來自專案官方文件與公開評測,實際效果依你的專案大小與語言而異,請以官方最新說明為準。







發表迴響