前言¶
DeepSeek Harness (DSH) 強調“一切皆插件”的生態理念。在本地開發或文檔管理場景中,模型往往難以準確檢索非結構化文本,且長期對話中的實戰經驗容易流失。dsh-knowledge 插件提供了一套本地化的解決方案,旨在解決文檔、網頁和對話經驗的存儲、檢索與可視化問題。
插件定位¶
這是一個純本地、零依賴的知識庫插件。它利用 Node 24 內置的 node:sqlite 和 fetch 構建 FTS5 全文檢索索引,將 Markdown 文本、代碼和網頁內容存入單文件數據庫,並提供來源標註、會話經驗沉澱以及知識圖譜可視化功能。
核心能力¶
零依賴與中文支持¶
插件不依賴 npm 包,直接使用 Node 24 內置模塊。針對中文場景,採用 FTS5 trigram 分詞算法,配合短詞 LIKE 兜底策略,確保中文、代碼及混合文本的檢索效果。
來源檢索與經驗沉澱¶
- 來源標註:模型檢索時會返回命中片段的來源路徑、標題及行號區間,強制引用。
- 經驗庫:支持兩種經驗入庫方式。一是模型在解決具體問題時主動調用
kb_remember記錄;二是使用kb_ingest_session讀取歷史會話(支持 zstd 多幀解碼)進行補錄。
網頁剪藏與交互面板¶
- 網頁剪藏:提供
kb_add_url工具,抓取網頁後自動去除導航、頁腳等非正文內容,轉爲 Markdown 入庫(限制 4 MiB)。 - 交互面板:模型輸出包含
kbquery圍欄(如{"q":"搜索內容"})時,會渲染一個交互式搜索面板,支持實時搜索與結果查看。
知識圖譜¶
提供 Obsidian 風格的力導向佈局可視化。數據存儲在 ~/.dsh/knowledge/kb.sqlite。通過右下角的懸浮按鈕(默認位於網易資產庫圖標上方)進入:
- 節點大小代表內容量(文檔藍、網頁綠、經驗橙)。
- 支持節點拖拽、力導向佈局、點擊漣漪效果及詳情面板查看。
- 支持節點與關聯節點的物理聯動。
安裝與啓用¶
在終端執行以下命令安裝:
dsh plugin --profile web add https://github.com/dhb861832993-star/dsh-knowledge#v0.2.1
安裝完成後,需要重啓 dsh web,新會話才能加載插件功能。安裝後可詢問模型“知識庫裏有什麼”,模型會調用 kb_stats 返回當前庫狀態。
典型用法¶
- 導入文檔:在對話中要求模型將 Markdown 文件或文件夾導入知識庫,模型會自動調用
kb_add執行遞歸導入。 - 檢索引用:詢問具體問題(如“上次 UE4.27 MCP 的端口配置是多少?”),模型會調用
kb_search並在回答中附帶來源路徑和行號。 - 記錄經驗:對話結束後,模型可主動調用
kb_remember記錄本次解決問題的標題、方案和標籤。 - 網頁剪藏:使用
kb_add_url命令抓取指定網頁併入庫。 - 可視化瀏覽:點擊右下角懸浮按鈕打開知識圖譜,拖動節點整理佈局,或查看節點詳情。
注意事項¶
- 路徑限制:導入路徑解析後必須落在工作區根目錄內,防止越界訪問。
- 類型過濾:二進制文件擴展名在黑名單中,會被自動跳過。
- 存儲位置:所有數據僅寫入
~/.dsh/knowledge/kb.sqlite,可進行整體備份。 - 生效時機:插件僅對重啓後的
dsh web會話生效,修改數據後需重啓。
生態與鏈接¶
該插件由社區開發者維護,遵循 MIT 許可證。完整的源碼與文檔可參考 GitHub 倉庫。