命令列工具
DeusData/codebase-memory-mcp avatar
DeusData/codebase-memory-mcp

codebase-memory-mcp:為 MCP 用戶端打造的本地程式碼知識圖譜

高效能程式碼智能MCP伺服器。將程式碼庫索引到持久知識圖譜中,平均儲存以毫秒為單位。 158 種語言,亞毫秒查詢,標記減少 99%。單一靜態二進位文件,零依賴性。

43,377 個 Star3,535 個 ForkCMIT

秒懂

它是什麼?
一個以 C 實作的工具,把程式碼庫索引成持久化知識圖譜,並透過 15 個 MCP 工具提供搜尋、追蹤與架構分析。 聚焦本專案的實際功能、技術入口、部署條件、資料流、版本變化與授權邊界,並依官方 README 所列能力判斷適用工作情境和不適合的替代用途。
適合誰用?
README 把 codebase-memory-mcp 描述成一個偏重發布與維運的專案:單一靜態二進位檔、可設定 43 個用戶端表面的安裝程式、共享的協調守護程序,以及可提交到儲存庫的圖譜產物。效能數字出自 README 自己的基準表,MIT 授權條款只授予文中列出的權利,不提供任何擔保。
可以商用嗎?
可以。MIT 是寬鬆授權:你可以使用、修改並販售以它為基礎的軟體,只需保留著作權與授權聲明。
還在維護嗎?
有在維護。儲存庫在最近一天內有新的提交。
用什麼語言寫的?
主要是 C(依據 GitHub 的語言統計)。

以上回答依據專案的 GitHub 資料(最近同步於 2026年9月15日)與我們的分析,不構成法律意見。

開源專案深度解析

deusdata-codebase-memory-mcp-deep-analysis|為 MCP 用戶端設計的結構分析後端

deusdata-codebase-memory-mcp-deep-analysis|為 MCP 用戶端設計的結構分析後端 的專案脈絡:codebase-memory-mcp 是一個以 C 實作、把儲存庫索引成持久化知識圖譜並透過 15 個 MCP 工具提供服務的工具。README 把它描述成結構分析後端,而不是 LLM:MCP 用戶端裡的模型,例如 Claude Code,負責把自然語言轉換成圖譜查詢。剖析使用編譯進二進位檔的 vendored tree-sitter 語法,涵蓋 158 種語言,另外還有 Hybrid LSP 語意型別解析,適用於 Python、TypeScript、JavaScript、JSX、TSX、PHP、C#、Go、C、C++、Java、Kotlin、Rust 與 Perl 等列出的語言。圖譜記錄函式、類別、呼叫鏈、HTTP 路由與跨服務連結。

deusdata-codebase-memory-mcp-deep-analysis|為 MCP 用戶端設計的結構分析後端:codebase-memory-mcp 的 README 與這一節直接相關;核對時請保留 main 分支、DeusData/codebase-memory-mcp 路徑與實際輸出,避免把基線文章的概括當成當前版本承諾。

deusdata-codebase-memory-mcp-deep-analysis|索引速度與記憶體優先的管線

deusdata-codebase-memory-mcp-deep-analysis|索引速度與記憶體優先的管線 的專案脈絡:README 的頭條效能宣稱是:在 Apple M3 Pro 上對 Linux 核心(2800 萬行、7.5 萬個檔案)做完整索引只需 3 分鐘,產生 481 萬個節點與 772 萬條邊。同一儲存庫的快速索引耗時 1 分 12 秒,產生 188 萬個節點;Django 約 6 秒完成索引,產生 4.9 萬個節點與 19.6 萬條邊。管線被描述為記憶體優先:LZ4 壓縮、記憶體中的 SQLite、結束時一次性寫入磁碟,索引完成後記憶體歸還作業系統。README 也報告了 token 效率:五個結構化查詢約消耗 3400 個 token,而逐檔案 grep 探索約需 41.2 萬個 token,減少了 99.2%。這些數字出自 README 自己的基準表與引用的 arXiv 預印本,來源沒有說明它們如何被獨立重現。

deusdata-codebase-memory-mcp-deep-analysis|索引速度與記憶體優先的管線:codebase-memory-mcp 的 README 與這一節直接相關;核對時請保留 main 分支、DeusData/codebase-memory-mcp 路徑與實際輸出,避免把基線文章的概括當成當前版本承諾。

deusdata-codebase-memory-mcp-deep-analysis|發布、安裝與共享守護程序

deusdata-codebase-memory-mcp-deep-analysis|發布、安裝與共享守護程序 的專案脈絡:專案以單一靜態二進位檔發布,支援 macOS(arm64/amd64)、Linux(arm64/amd64)與 Windows(amd64),沒有執行期相依。install 指令會自動偵測已安裝的編碼代理,並在支援的地方寫入 MCP 條目、持久指令、技能與生命週期鉤子。每個帳號共享一個協調守護程序,橫跨所有已設定的用戶端:第一個守護程序支援的會話啟動它,每個會話註冊自己的工作,最後一個會話把它關閉。所有活躍的 CBM 處理程序必須執行完全相同的版本、可執行檔建置、協調 ABI 與正式快取根;衝突的處理程序在動手之前就會失敗,並把衝突記錄在快取日誌目錄下的 daemon-conflicts.ndjson 裡。更新在所有平台上都從安裝腳本執行,而不是在執行中的二進位檔內部執行,README 聲明 cbm 不會主動發出任何網路請求。

deusdata-codebase-memory-mcp-deep-analysis|發布、安裝與共享守護程序:codebase-memory-mcp 的 README 與這一節直接相關;核對時請保留 main 分支、DeusData/codebase-memory-mcp 路徑與實際輸出,避免把基線文章的概括當成當前版本承諾。

deusdata-codebase-memory-mcp-deep-analysis|多代理設定與工具層級

deusdata-codebase-memory-mcp-deep-analysis|多代理設定與工具層級 的專案脈絡:安裝程式設定 43 個用戶端表面:37 個自動偵測、6 個條件式,條件式是指安裝程式只在檔案記載的平台或已存在的設定路徑證明目標處於啟用狀態時才寫入。對於有檔案化自訂代理格式的用戶端,安裝程式從一份規範契約建立三個定義:Scout(第一層),約 3 到 4 個窄呼叫,用於快速初步探索;Verify(第二層,預設),以任務為導向的圖譜證據;Auditor(第三層),有界範圍並明確列出未解決的限製。README 的矩陣涵蓋 Claude Code、Codex CLI、Gemini CLI、Zed、OpenCode、VS Code、Cursor 等用戶端,並說明哪些鉤子會被安裝或保留不裝。它也說明已安裝的鉤子是 fail-open 且僅提供內容的,沒有穩定內容生命週期事件的用戶端會收到可跨會話攜帶契約的持久檔案。

deusdata-codebase-memory-mcp-deep-analysis|多代理設定與工具層級:codebase-memory-mcp 的 README 與這一節直接相關;核對時請保留 main 分支、DeusData/codebase-memory-mcp 路徑與實際輸出,避免把基線文章的概括當成當前版本承諾。

deusdata-codebase-memory-mcp-deep-analysis|團隊共享的圖譜產物

deusdata-codebase-memory-mcp-deep-analysis|團隊共享的圖譜產物 的專案脈絡:索引會產生一個壓縮檔 .codebase-memory/graph.db.zst,可以提交到儲存庫,讓隊友跳過完整重建索引。它是一個 zstd 壓縮的 SQLite 快照:去掉索引、以 VACUUM INTO 壓縮,再用 zstd 1.5.7 壓縮,典型壓縮比是 8 到 13 比 1。有兩個層級:best,使用 zstd -9 加索引剝離與 VACUUM INTO,在明確 index_repository 時寫入;fast,使用 zstd -3,由 watcher 寫入以支援低延遲增量更新。當隊友在沒有本地資料庫但產物存在的情況下執行 codebase-memory-mcp 時,index_repository 會先匯入產物,再做增量索引,避免完整的重建成本。README 說首次匯出時會自動建立帶 merge=ours 的 .gitattributes 行,讓並行編輯不會在二進位產物上產生衝突,而且這個產物是可選的。

deusdata-codebase-memory-mcp-deep-analysis|團隊共享的圖譜產物:codebase-memory-mcp 的 README 與這一節直接相關;核對時請保留 main 分支、DeusData/codebase-memory-mcp 路徑與實際輸出,避免把基線文章的概括當成當前版本承諾。

deusdata-codebase-memory-mcp-deep-analysis|CLI 模式與查詢工具

deusdata-codebase-memory-mcp-deep-analysis|CLI 模式與查詢工具 的專案脈絡:每個 MCP 工具都可以作為本地一次性指令呼叫:codebase-memory-mcp cli <tool>,旗標由該工具的輸入模式產生,可用 cli <tool> --help 查看。CLI 指令不會啟動或連線協調守護程序,也不會留下常駐處理程序。修改資料的指令使用以作業系統為基礎的共享 per-project 鎖,序列化同一專案上的衝突工作,同時讓不相關的專案獨立進行。進度只寫到 stderr,所以 stdout 保持機器可讀以輸出指令結果;當 stderr 被重導向時用 --progress 強製顯示進度,--json 回傳完整的 MCP 結果封套。查詢工具包括 search_graph、trace_path、detect_changes、query_graph(唯讀 openCypher 子集)、get_code_snippet、get_architecture、search_code、manage_adr 與 ingest_traces。任何超出所支援 Cypher 子集的寫法都會以明確的 unsupported 錯誤失敗,而不是回傳空結果。

deusdata-codebase-memory-mcp-deep-analysis|CLI 模式與查詢工具:codebase-memory-mcp 的 README 與這一節直接相關;核對時請保留 main 分支、DeusData/codebase-memory-mcp 路徑與實際輸出,避免把基線文章的概括當成當前版本承諾。

deusdata-codebase-memory-mcp-deep-analysis|隱私立場、診斷與 MIT 授權

deusdata-codebase-memory-mcp-deep-analysis|隱私立場、診斷與 MIT 授權 的專案脈絡:README 聲明該工具 100% 本地執行、不收集遙測資料,程式碼、查詢、環境與用法不會離開你的機器。正因如此,當問題在維護方一側無法重現時,需要使用者自己採集資料:在第一個守護程序會話啟動前設定 CBM_DIAGNOSTICS=1,守護程序就會寫 trajectory.ndjson 記憶體趨勢檔,每 5 秒一行 JSON,包含 rss、committed、peak、page_faults、fd 與 queries,外加 snapshot.json。專案以 MIT 授權發布,授予使用、複製、修改、合併、發布、散布、再授權與出售副本的權利,並按原樣提供軟體,不附帶任何擔保。授權文字沒有提及安全態勢、支援承諾或生產就緒性;README 確實聲稱發布的二進位檔經過簽名、校驗和檢查,並由 70 多個防毒引擎掃描。

deusdata-codebase-memory-mcp-deep-analysis|隱私立場、診斷與 MIT 授權:codebase-memory-mcp 的 README 與這一節直接相關;核對時請保留 main 分支、DeusData/codebase-memory-mcp 路徑與實際輸出,避免把基線文章的概括當成當前版本承諾。

編輯結論

README 把 codebase-memory-mcp 描述成一個偏重發布與維運的專案:單一靜態二進位檔、可設定 43 個用戶端表面的安裝程式、共享的協調守護程序,以及可提交到儲存庫的圖譜產物。效能數字出自 README 自己的基準表,MIT 授權條款只授予文中列出的權利,不提供任何擔保。

官方來源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
社群筆記

社群筆記