一個工具,幫我省下 30% 的 Claude Code 成本

作者:竇竇的AI工具庫
日期:2026年2月3日 下午11:00
來源:WeChat 原文

整理版優先睇

速讀 5 個重點 高亮

CodeGraph 幫你慳 30% Claude Code Token:一張代碼地圖取代盲目探索

整理版摘要

呢篇文章嘅作者係一個成日用 Claude Code 嘅開發者,佢發現每次叫 Claude 做嘢,佢都要重新探索曬成個 codebase——用 grep、glob、Read 掃曬啲文件,先至開始真正工作。呢個過程燒咗大量 tokens 同時間,作者稱之為「探索税」。為瞭解決呢個問題,作者揾到一個叫 CodeGraph 嘅工具,佢嘅核心係預先用 tree-sitter 解析代碼,建立一個語義知識圖譜,然後 Claude Code 可以直接透過 MCP 協議查詢呢個圖譜,而唔需要逐個文件掃描。

作者自己實測,用 CodeGraph 之後,token 消耗減少約 30%,工具調用減少約 25%。呢個唔係理論,係真金白銀嘅節省。而且安裝好簡單,一行命令就搞掂,仲可以自動用 Git hook 同步更新索引,幾乎零維護。

整體結論係:與其畀 Claude 次次由零開始認識你嘅代碼,不如畀佢一張「代碼地圖」,等佢直接開始做嘢。呢個做法唔單止慳錢,仲大幅提升效率,尤其係大型 project 或者複雜任務嗰陣效果更明顯。

  • CodeGraph 透過預先建立嘅語義圖譜,令 Claude Code 可以直接查詢代碼結構,節省約 30% token 消耗同 25% 工具調用次數。
  • 方法係用 tree-sitter 解析代碼成 AST,將函數、類、調用關係等存入本地 SQLite 數據庫,透過 MCP 協議畀 Claude Code 查詢。
  • 同用 Markdown 記低代碼結構嘅方案相比,圖譜查詢係結構化存取,Claude 真正理解代碼之間嘅關係,而唔係靠估。
  • 啟發:每次 AI 工具重複掃描相同代碼,就係嘥錢嘥時間;應該用工具幫佢建立持久化嘅上下文,避免重複付出「探索税」。
  • 可行動點:一行命令 npx @colbymchenry/codegraph 安裝,之後用 codegraph init -i 初始化 project,重啟 Claude Code 即時見效;Git hook 會自動同步更新,唔使手動維護。
值得記低
工具

CodeGraph 安裝指令

一行命令安裝 CodeGraph 工具:npx @colbymchenry/codegraph

連結 github.com

GitHub 倉庫

CodeGraph 原始碼同詳細文檔:github.com/colbymchenry/codegraph

整理重點

探索税:你每次用 Claude Code 嘅隱形成本

你一定經歷過呢種痛:打開 Claude Code,輸入一個請求,然後佢就開始派出「探索大軍」——用 grep、glob、Read 一個個爬你嘅文件。每次調用,燒 token;每個文件,食埋上下文 window。

作者測過一個複雜任務,60 次工具調用、157,800 tokens、將近 2 分鐘,而呢啲只係為咗等 Claude 認識你嘅代碼,未開始做正經嘢。

更崩潰嘅係:關閉呢個會話,所有知識全部消失。下次打開又要重新探索、重新付費。呢個就係所謂嘅「探索税」——每次用 Claude Code 都要默默繳納嘅隱形成本。

整理重點

繞路方案都唔夠聰明,真正需要係地圖

唔係第一個發現呢個問題嘅人,社區入面流傳各種 workaround,但都係 hacky:

  • Markdown 文件做「記憶」──將代碼結構塞入 CLAUDE.md,但 Claude 只係讀文檔,唔理解代碼之間嘅關係。
  • 等子代理維護共享記憶──更加複雜,但本質係玩文字文件,無真正結構。
  • 或者手動粘貼 code 入 prompt──用到但太累,完全不可擴展。

核心問題係呢啲方案都冇畀到 Claude 真正需要嘅嘢——一張代碼地圖。

若果探索代理有一張地圖呢?呢個就係 CodeGraph 嘅核心諗法:與其等 Claude 盲目掃描文件,不如佢查一個預先整好嘅語義知識圖譜——入面已經裝好曬你 codebase 嘅完整關係圖。

整理重點

CodeGraph 點樣做?5 分鐘安裝兼直擊底層

安裝超簡單:只要 Node.js 18+ 同 Claude Code,一行命令搞掂:

程式內容 bash
npx @colbymchenry/codegraph

交互式安裝器會自動幫你設定 MCP 伺服器、授權,同問你要唔要初始化當前 project。完成之後重啟 Claude Code,再打:

程式內容 bash
codegraph init -i

85 個檔案建立索引、542 個代碼符號、關係邊全部映射——唔使半秒鐘。

底層原理一句話CodeGraph 用 tree-sitter 解析代碼做 AST,將函數、類、方法、關係全部存入本地 SQLite 數據庫(帶向量嵌入),然後 Claude Code 透過 MCP 協議查詢呢個圖譜。

  1. 1 一次性索引:tree-sitter 解析代碼成 AST,提取所有節點同關係。
  2. 2 MCP 連接Claude Code 需要了解代碼時直接查圖譜,唔使再探索。
  3. 3 精準獲取:入口函數、相關符號、代碼片段、調用關係——一次查詢搞掂。
  4. 4 Git 鈎子自動同步:每次 commit 自動更新索引,零維護。

支援 16+ 種語言,包括 TypeScriptPython、Go、RustJava、C#、PHP、Ruby、C、C++、Swift、Kotlin 等,API 統一。

100% 本地運行,冇數據離開你部機,冇 API key,冇外部服務,就係你 project 入面一個 SQLite 檔案。

整理重點

真實數據同結論:唔好再為探索付費

作者用同一個複雜任務跑咗 3 次對比測試,結果好實質:用 CodeGraph 之後,工具調用由 ~60 降到 ~42(↓25%),token 消耗由 ~157,800 降到 ~69,400(↓30%),探索時間都明顯縮短。

結論好簡單:每次等 Claude 從零開始認識你嘅代碼,你都係為同一件事重複買單。

除咗節省 token,CodeGraph 仲帶嚟語義搜索(按意思揾 code,例如「authentication」可以揾到 login、validateToken)、影響分析(改 code 前知道影響範圍),而且永遠保持最新——Git 鈎子每次 commit 自動同步。

作者強調:呢個唔係理論,係真係可以落手用、慳到真金白銀嘅方案。

你一定經歷過呢種痛

打開 Claude Code,輸入一個請求。

然後,探索開始咗:

⏺ Explore(/src/api/)
⎿ 完成 (24 次工具調用 · 40,000 tokens · 59秒)

⏺ Explore(/src/components/)
⎿ 完成 (32 次工具調用 · 57,000 tokens · 1分26秒)

⏺ Explore(/src/database/)
⎿ 完成 (18 次工具調用 · 33,000 tokens · 51秒)

每一次。都係噉樣。

Claude 對你嘅代碼庫冇記憶。所以佢一定要派出「探索大軍」——用 grepglobRead 一個個爬你啲檔案。

每次調用,燒 token。每個檔案,食掉上下文窗口。

我喺自己嘅 project 度測試咗:

60 次工具調用。157,800 tokens。差唔多 2 分鐘。

而呢一切,只係為咗等 Claude 「認識」我嘅代碼——佢都未開始做嘢㗎。

仲令人崩潰嘅係:關閉呢個會話,所有知識全部消失。

下次打開?重新探索。再俾多次錢。

呢個就係我所講嘅 「探索税」——你每次用 Claude Code 都喺度默默繳納嘅隱形成本。


啲「聰明」嘅繞路方案,其實都唔夠聰明

我唔係第一個發現呢個問題嘅人。

社羣入面流傳住各種 workaround:

1. 用 Markdown 檔案做「記憶」

將代碼結構、架構說明塞入去 CLAUDE.md

有啲用,但 Claude 只係喺度「讀文件」。佢唔理解代碼之間嘅關係。

2. 俾子代理維護共享記憶

仲複雜,但本質上都係喺度搞文字檔案。依然係 hacky,依然缺少真正嘅結構。

3. 手動將代碼貼上 prompt

用得,但太攰啦。而且完全冇得擴展。

💡 核心問題:呢啲方案都冇俾 Claude 佢真正需要嘅嘢——

一張代碼地圖。


如果探索代理有一張地圖呢?

這就是 CodeGraph 嘅核心想法。

與其等 Claude 盲目掃描檔案,不如等佢查詢一個預先整好嘅語意知識圖譜

  • 邊啲函數調用咗邊啲函數
  • 邊啲類繼承咗邊啲類
  • 接口喺邊度被實現
  • 檔案之間點樣透過 import 連接
  • 改一個地方,影響半徑有幾大

呢樣唔係等 Claude 去「解讀」一份文件。

係等佢直接查詢一個結構化數據庫——數據庫入面已經裝好咗你代碼嘅完整關係圖。

探索代理仲係會行。但效率完全唔同:

⏺ Explore(/src/api/)
⎿ 完成 (18 次工具調用 · 22,000 tokens · 34秒)

⏺ Explore(/src/components/)
⎿ 完成 (24 次工具調用 · 29,400 tokens · 56秒)

⏺ Explore(/src/database/)
⎿ 完成 (14 次工具調用 · 18,000 tokens · 27秒)

圖譜查詢幾乎係瞬時嘅。檔案掃描?再見啦。


真實數據:慳咗幾多?

我喺同一個複雜任務上跑咗 3 次對比測試:

指標
冇 CodeGraph
有 CodeGraph
節省
工具調用次數
~60
~42
↓ 25%
Token 消耗
~157,800
~69,400
↓ 30%
探索時間
2+ 分鐘
~2 分鐘
更快啟動

🎯 結論:探索代理用 CodeGraph 之後,token 消耗減少 ~30%,工具調用減少 ~25%。

這是真金白銀——每一次複雜任務,都係慳錢慳時間。


5 分鐘搞掂:安裝就係咁簡單

要求

  • Node.js 18+
  • Claude Code

一行命令

npx @colbymchenry/codegraph

互動式安裝器會幫你搞掂一切:

  1. 自動配置 MCP 伺服器到 ~/.claude.json
  2. 設定 CodeGraph 工具嘅自動授權
  3. 問你要唔要初始化當前項目

重啟 Claude Code,然後初始化你想用嘅項目:

codegraph init -i

完成。

85 個檔案建立索引,542 個代碼符號,關係邊全部映射——唔夠半秒鐘


佢係點樣運作嘅?

底層原理一句話版本

CodeGraph 用 tree-sitter 解析你嘅代碼,將函數、類、方法、關係全部存落本地 SQLite 數據庫(帶向量嵌入)。Claude Code 透過 MCP 協議查詢呢個圖譜。

更具體少少 :

  1. 一次性索引:tree-sitter 解析代碼做 AST,提取所有節點同關係
  2. MCP 連接:Claude Code 需要理解代碼時,直接查圖譜,唔再探索
  3. 精準獲取:入口函數、相關符號、代碼片段、調用關係——一次查詢搞掂曬
  4. Git 掛鈎自動同步:每次 commit 自動更新索引,零維護

同 Markdown 方案嘅本質區別

Claude 唔再係「閲讀一份總結然後猜測」,而係「查詢一個已經理解你代碼結構嘅數據庫」。


你可以得到啲咩?

🧠 更智能嘅上下文構建
原生嘅 Claude Explorer 子代理會利用 CodeGraph 更快揾到檔案,更早得出分析,用更少 token 揾答案。

🔍 語意搜尋
按意義揾代碼。搜「authentication」,即使你嘅命名係 loginvalidateTokenAuthService,都揾到。

📈 影響分析
改代碼之前就知道會影響啲咩。追蹤調用者、被調用者,睇清每個符號嘅「爆炸半徑」。

🌍 支援 16+ 種語言
TypeScript、JavaScript、Python、Go、Rust、Java、C#、PHP、Ruby、C、C++、Swift、Kotlin,甚至 Liquid(Shopify 主題)。API 統一。

🔒 100% 本地運行
冇數據離開你部機。冇 API key。冇外部服務。就係你 project 入面一個 SQLite 檔案。

⚡ 永遠保持最新
Git 掛鈎喺每次 commit 時自動同步。唔使手動維護。


寫喺最後:唔好再為「探索」俾錢啦

每次等 Claude 由頭開始認識你嘅代碼,你都係為同一件事重複埋單。

CodeGraph 改變咗呢個規則。

俾 Claude 一張地圖,等佢直接開始工作。

📦 GitHub:github.com/colbymchenry/codegraph

📦 npm:@colbymchenry/codegraph

5 分鐘設定。30% 成本節省。

你嘅下一個 Claude Code 會話,唔使再交探索税啦。


你一定經歷過這種痛

打開 Claude Code,輸入一個請求。

然後,探索開始了:

⏺ Explore(/src/api/)
⎿ 完成 (24 次工具調用 · 40,000 tokens · 59秒)

⏺ Explore(/src/components/)
⎿ 完成 (32 次工具調用 · 57,000 tokens · 1分26秒)

⏺ Explore(/src/database/)
⎿ 完成 (18 次工具調用 · 33,000 tokens · 51秒)

每一次。都是這樣。

Claude 對你的代碼庫沒有記憶。所以它必須派出"探索大軍"——用 grepglobRead 一個個爬你的文件。

每次調用,燒 token。每個文件,吃掉上下文窗口。

我在自己的項目上測了一下:

60 次工具調用。157,800 tokens。將近 2 分鐘。

而這一切,只是為了讓 Claude "認識"我的代碼——它還沒開始幹活呢。

更讓人崩潰的是:關掉這個會話,所有知識全部消失。

下次打開?重新探索。重新付費。

這就是我所說的 「探索税」——你每次使用 Claude Code 都在默默繳納的隱形成本。


那些"聰明"的繞路方案,其實都不夠聰明

我不是第一個發現這個問題的人。

社區裏流傳着各種 workaround :

1. 用 Markdown 文件做"記憶"

把代碼結構、架構說明塞進 CLAUDE.md

有點用,但 Claude 只是在"讀文檔"。它不理解代碼之間的關係。

2. 讓子代理維護共享記憶

更復雜,但本質上還是在折騰文本文件。依然是 hacky,依然缺少真正的結構。

3. 手動把代碼粘貼進 prompt

能用,但太累了。而且完全不可擴展。

💡 核心問題:這些方案都沒有給 Claude 它真正需要的東西——

一張代碼地圖。


如果探索代理有一張地圖呢?

這就是 CodeGraph 的核心想法 。

與其讓 Claude 盲目掃描文件,不如讓它查詢一個預先構建好的語義知識圖譜

  • 哪些函數調用了哪些函數
  • 哪些類繼承了哪些類
  • 接口在哪裏被實現
  • 文件之間如何通過 import 連接
  • 改動一個地方,影響半徑有多大

這不是讓 Claude 去"解讀"一份文檔。

這是讓它直接查詢一個結構化數據庫——數據庫裏已經裝好了你代碼的完整關係圖。

探索代理還是會跑。但效率完全不同:

⏺ Explore(/src/api/)
⎿ 完成 (18 次工具調用 · 22,000 tokens · 34秒)

⏺ Explore(/src/components/)
⎿ 完成 (24 次工具調用 · 29,400 tokens · 56秒)

⏺ Explore(/src/database/)
⎿ 完成 (14 次工具調用 · 18,000 tokens · 27秒)

圖譜查詢幾乎是瞬時的。文件掃描?再見了。


真實數據:省了多少?

我在同一個複雜任務上跑了 3 次對比測試 :

指標
沒有 CodeGraph
有 CodeGraph
節省
工具調用次數
~60
~42
↓ 25%
Token 消耗
~157,800
~69,400
↓ 30%
探索時間
2+ 分鐘
~2 分鐘
更快啓動

🎯 結論:探索代理用 CodeGraph 後,token 消耗減少 ~30%,工具調用減少 ~25%。

這是真金白銀——每一次複雜任務,都在省錢省時間。


5 分鐘搞定:安裝就是這麼簡單

要求

  • Node.js 18+
  • Claude Code

一行命令

npx @colbymchenry/codegraph

交互式安裝器會幫你搞定一切 :

  1. 自動配置 MCP 服務器到 ~/.claude.json
  2. 設置 CodeGraph 工具的自動授權
  3. 詢問是否初始化當前項目

重啓 Claude Code,然後初始化你想用的項目:

codegraph init -i

完成。

85 個文件建立索引,542 個代碼符號,關係邊全部映射——不到半秒鐘


它是怎麼工作的?

底層原理一句話版本

CodeGraph 用 tree-sitter 解析你的代碼,把函數、類、方法、關係全部存進本地 SQLite 數據庫(帶向量嵌入)。Claude Code 通過 MCP 協議查詢這個圖譜。

更具體一點 :

  1. 一次性索引:tree-sitter 解析代碼成 AST,提取所有節點和關係
  2. MCP 連接:Claude Code 需要理解代碼時,直接查圖譜,不再探索
  3. 精準獲取:入口函數、相關符號、代碼片段、調用關係——一次查詢全搞定
  4. Git 鈎子自動同步:每次 commit 自動更新索引,零維護

和 Markdown 方案的本質區別

Claude 不再是"閲讀一份總結然後猜測",而是"查詢一個已經理解你代碼結構的數據庫"。


你能得到什麼?

🧠 更智能的上下文構建
原生的 Claude Explorer 子代理會利用 CodeGraph 更快找到文件,更早得出分析,花更少的 token 找答案。

🔍 語義搜索
按意義找代碼。搜"authentication",即使你的命名是 loginvalidateTokenAuthService,也能找到。

📈 影響分析
改代碼前就知道會影響什麼。追蹤調用者、被調用者,看清每個符號的"爆炸半徑"。

🌍 支持 16+ 種語言
TypeScript、JavaScript、Python、Go、Rust、Java、C#、PHP、Ruby、C、C++、Swift、Kotlin,甚至 Liquid(Shopify 主題)。API 統一 。

🔒 100% 本地運行
沒有數據離開你的機器。沒有 API key。沒有外部服務。就是你項目裏的一個 SQLite 文件 。

⚡ 永遠保持最新
Git 鈎子在每次 commit 時自動同步。不用手動維護。


寫在最後:別再為"探索"付費了

每次讓 Claude 從零開始認識你的代碼,你都在為同樣的事情重複買單。

CodeGraph 改變了這個規則。

給 Claude 一張地圖,讓它直接開始工作。

📦 GitHub:github.com/colbymchenry/codegraph

📦 npm:@colbymchenry/codegraph

5 分鐘設置。30% 成本節省。

你的下一個 Claude Code 會話,不必再交探索税了。