前言¶
DeepSeek Harness (DSH) 提供了插件化架構,讓開發者可以擴展系統能力。在構建智能體時,需要處理長期記憶、文檔檢索等 RAG 場景。dsh-kb-manager 是一個本地知識庫生命週期插件,它通過 SQLite 原生索引和混合檢索,爲 Agent 提供了無需額外服務的文檔管理方案。
安裝與啓用¶
安裝該插件前,需要先確保環境已安裝 DeepSeek Harness,且 Node.js 版本不低於 22.19.0。
直接執行以下命令安裝:
dsh plugin add github:xiaoshi7915/dsh-kb-manager
安裝完成後,可通過 Web 面板或 Headless 模式使用其功能。
核心功能¶
該插件專注於本地知識庫的完整生命週期管理,主要包含以下能力:
- 多格式導入:支持將本地文件或 HTTP(S) URL 導入知識庫。
- 智能分塊:基於 CJK 語言感知的分塊策略,能更好地處理中文、日文、韓文文本。
- 向量索引:使用
sqlite-vec進行 KNN 檢索,無需額外啓動向量數據庫進程。 - 混合檢索:結合 BM25 全文檢索和向量檢索,通過 Reciprocal Rank Fusion (RRF) 融合結果。
- 異步任務系統:導入和重建索引等操作通過異步任務處理,支持進度查詢和取消。
- 管理功能:提供軟刪除(即時恢復)、物理壓縮、快照/導出/導入、Web 面板等管理能力。
- 安全與審計:包含 SSRF 防護、導入路徑白名單、審計日誌,以及搜索結果默認標記爲
untrusted: true。
典型用法¶
安裝後,Agent 可以調用相關工具進行操作。以下是典型的工作流程:
- 創建知識庫:調用
create_kb創建一個新的知識庫實例。 - 導入文檔:調用
import_document導入本地文件或 URL。該操作會返回一個job_id,通過get_job查詢導入進度。 - 檢索內容:調用
search_kb進行混合檢索。檢索結果始終會包含untrusted: true標記。 - 追溯來源:若需追溯來源,調用
get_chunk獲取包含上下文和元數據的文本塊。 - 刪除操作:刪除文檔使用
delete_document,支持軟刪除(可重新導入恢復)。刪除整個知識庫使用delete_kb,需要提供confirm_token進行二次確認。
注意事項¶
- 前置依賴:必須在已安裝 DeepSeek Harness 的環境中運行。
- 版本要求:需要 Node.js >= 22.19.0。
- 安全性:搜索結果默認標記爲
untrusted: true,表明內容僅作爲數據引用,不直接作爲指令執行。 - 刪除限制:
delete_kb操作需要confirm_token(60秒 TTL)進行確認,防止誤刪。 - 安全防護:插件內置了 SSRF 防護和導入路徑白名單,限制了文件導入來源。
結尾¶
dsh-kb-manager 解決了 DeepSeek Harness 中本地知識庫管理的痛點,通過 SQLite 原生索引和混合檢索,爲 Agent 提供了輕量級、可審計的長期記憶解決方案。相關目錄與源碼地址如下:
- 目錄頁: https://www.skillhub.cn/plugins/xiaoshi7915/dsh-kb-manager
- GitHub: https://github.com/xiaoshi7915/dsh-kb-manager