dsh-knowledge-bridge:零配置主機級知識庫訪問與安全防護

前言

DeepSeek Harness(DSH)的智能體通常運行在沙盒環境中,無法直接讀取宿主機上的文件系統。這導致兩個常見問題:一是智能體無法訪問團隊共享的知識庫(如 Antigravity 的 ~/.gemini 目錄),在遇到文件權限問題時容易產生“文件不存在”的誤判;二是智能體可能誤執行破壞性命令,如 git reset --hard 或 rm -rf,導致數據丟失。

dsh-knowledge-bridge 是一個運行在宿主機層面的 Cordis 插件。它使用宿主進程的權限讀取文件系統,向智能體提供三個檢索工具,並注入一條指令讓模型知曉知識庫的存在。同時,它內置了防破壞性的 Shell 命令安全機制。

核心功能

檢索工具

插件向智能體暴露以下三個工具:

  • knowledge_search:基於關鍵詞的搜索。具備明確的權重系統:標題 10,ID 8,別名 8,標籤 6,引用 4,摘要 3,工件名 2,正文 1。搜索結果包含 ID、標題、得分、截斷的摘要和工件列表,不會直接返回文件內容。
  • knowledge_read:按需讀取完整文檔或特定工件(如 master_guide.md)。
  • knowledge_list:提供知識庫的目錄大綱,包含 ID、標題、工件數量以及一行預覽。

配置與發現

  • 零配置發現:插件會自動從環境變量 DSH_KNOWLEDGE_PATHS 或一系列已知位置查找知識庫。默認路徑包括 ~/.gemini/antigravity-ide/knowledge、~/.antigravity-ide/knowledge、~/.dsh/knowledge、~/.codex/knowledge 以及當前目錄下的 ./knowledge 和 ./docs/knowledge。
  • 規則注入:插件會從工作區發現 AGENTS.md、GEMINI.md 或 CLAUDE.md 並將其注入到系統提示詞中。
  • 版本與更新信息:knowledge_info 工具會返回當前安裝版本、更新命令、重啓要求以及版本檢查結果。

安全防護

  • 安全護欄:插件會攔截 bash、pwsh、cmd 或 terminal 調用中匹配禁止模式的命令(如 git reset --hard、rm -rf 等),防止智能體執行破壞性操作。
  • Token 優化:工具摘要會被截斷,避免在後續對話中因輸出過長導致 Token 溢出。

安裝與啓用

環境要求

  • Node.js 版本需 >= 20.0.0。
  • 插件本身無外部依賴,僅使用 Node.js 內置模塊 (node:fs, node:path, node:os)。

安裝步驟

在 DeepSeek Harness 的終端中執行以下命令:

dsh plugin --profile <profile> add https://github.com/Babydunx1/dsh-knowledge-bridge

安裝完成後,需要重啓 DeepSeek Harness 以加載新的 JavaScript 模塊。

典型用法

安裝插件後,可以通過項目自帶的腳本驗證其功能。這些命令無需 DeepSeek Harness 介入即可運行:

# 運行測試套件
npm test

# 驗證構建合約的靜態檢查
npm run validate

# 演示:索引示例知識庫並打印智能體將看到的內容
npm run demo

適用場景與注意

  • 定位說明:這不是一個將整個知識庫(2MB 可能產生約 1M tokens)加載到提示詞中的記憶系統,也不是向量數據庫。它採用確定性關鍵詞評分,不依賴嵌入服務。
  • 權限說明:插件以宿主機權限運行,能訪問環境變量指定的路徑,但不會自動將整個目錄掛載到智能體的上下文中,而是按需檢索。
  • 環境變量:可以通過設置 DSH_KNOWLEDGE_PATHS 環境變量來覆蓋默認的發現路徑。
  • 平臺支持:支持 Windows、macOS 和 Linux。

總結

dsh-knowledge-bridge 解決了智能體在沙盒環境下無法獲取外部知識以及誤操作的風險。它通過零配置發現、按需檢索和防破壞機制,爲 DeepSeek Harness 提供了可靠的知識層支持。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜