DeepSeek Harness (DSH) 的核心設計理念是“一切皆插件”。在構建需要深入理解代碼庫的智能體時,如何高效地檢索符號、追溯調用鏈或獲取架構概覽是常見痛點。@lovedolove/dsh-codebase-memory-mcp 是一個獨立的 Codebase Memory MCP 橋接插件,它將 Codebase Memory MCP 的能力注入到 DSH 的工具鏈中。
該插件由維護者 LoveDoLove 維護,註冊了六種基於知識圖譜的代碼工具,並隨插件自動啓動後端服務與可視化界面,同時附帶了一套代理技能和狀態檢查命令。
核心功能¶
插件主要完成以下工作:
- 註冊工具:在 DSH 工具面註冊了六個知識圖譜工具,用於代碼搜索、片段讀取、架構概覽和調用鏈追蹤。
- 自動啓動:加載插件時自動啓動
codebase-memory-mcp守護進程及其圖形化 Web UI。 - 系統提示注入:向模型注入“Codebase Memory — Knowledge Graph Policy”策略,指導模型在何時優先使用圖譜工具而非傳統的
grep或read。 - 代理技能:捆綁了一個名爲
codebase-memory的代理技能,可通過skill工具加載。 - 斜槓命令:註冊了
/cbm命令,用於查詢可執行文件路徑、Web UI 鏈接及已索引項目。 - 跨平臺檢測:支持跨平臺可執行文件檢測,包括
CBM_EXE環境變量覆蓋、系統目錄、PATH以及 WSL 互操作性。
前置要求¶
在安裝插件前,必須確保以下環境已就緒:
- DeepSeek Harness:版本需滿足
>=0.1.2-rc.1 <0.3.0-0。 - Node.js:版本需滿足
>=18 <25。 - 可執行文件:
codebase-memory-mcp可執行文件必須預先安裝。插件僅在加載時檢測該二進制文件,若未找到,守護進程將不會啓動,工具也不會註冊。
安裝¶
使用官方命令將插件安裝到指定的 DSH Profile(例如 web)中:
dsh plugin --profile web add @lovedolove/dsh-codebase-memory-mcp
安裝後,DSH 會自動激活該 Bundle。如果遇到依賴缺失(如 @deepseek-ai/dsh-commands),插件會通過優雅降級處理,僅保留核心的 tools 注入功能。
典型用法¶
插件安裝並啓動後,智能體或用戶可以直接調用相應的工具或命令。
工具調用示例¶
-
確認索引狀態
首先調用cbm_projects()確認當前項目已被正確索引。 -
符號搜索
使用cbm_search根據名稱或路徑查找符號:
cbm_search(name_pattern=".*auth.*")
- 調用鏈追蹤
查找某個函數的調用者與被調用者,設置最大深度:
cbm_trace(symbol="login", direction="both", max_depth=3)
- 讀取片段
獲取精確的代碼定義,無需加載完整文件:
cbm_snippet(qualified_name="app.auth.login")
- 架構概覽
獲取特定目錄下的組件結構:
cbm_arch(directory="src")
狀態檢查¶
通過 /cbm 命令查看服務狀態:
- 顯示可執行文件路徑。
- 顯示 Web UI 訪問鏈接(默認端口 9749)。
- 列出當前已索引的項目列表。
若未找到可執行文件,該命令會提示安裝或設置環境變量 CBM_EXE。
注意事項¶
該插件作爲 Bridge 插件運行,其核心邏輯依賴於 codebase-memory-mcp 的上游項目。建議在安裝前檢查源碼與許可證(MIT)。插件支持跨平臺,但在 Windows 上需注意二進制文件路徑的解析與 WSL 環境的兼容性。