前言¶
DeepSeek Harness (DSH) 是一個插件化生態,其核心在於上下文窗口的管理。雲端模型(如 DeepSeek V4)擁有百萬 token 窗口,通過 resume 恢復會話和 compaction 壓縮歷史足以維持記憶。但一旦接入本地模型(Ollama 等),窗口通常僅 4K-32K,無法將全部歷史塞入提示詞。
此時需要一種結構化的持久層,將對話中值得留存的事實提取、存儲,並在後續對話中按需注入。dsh-memory-bridge 正是爲解決這一場景而生:在上下文窗口受限時,提供可檢索、可審計、可治理的長期記憶系統。
是什麼¶
這是一個記憶樹橋接插件。它將對話自動沉澱爲可檢索、可視化的記憶樹,並在後續會話中按需注入相關上下文。項目定位爲“記憶基礎設施”,而非追求完美的智能體。它通過明文 Markdown 真源配合 SQLite 索引,實現了數據的透明可控與快速檢索。
核心能力¶
該插件提供以下核心功能:
- 跨會話持久記憶:對話自動沉澱爲記憶卡,後續會話按需檢索注入,補足 DSH 原生會話歷史之外的持久事實層。
- 記憶檢索工具:Agent 可通過
memory_search、memory_add_run、memory_review三個工具主動讀寫記憶。 - 記憶可視化:設置頁內包含 7 個可視化 tab,包括事件圖譜、知識圖譜、時間線、待審、畫像、審計和總覽。
- 經驗與畫像沉澱:自動識別“記住教訓/踩坑”並沉澱爲永久經驗;偏好信號聚合後可觸發畫像蒸餾。
- 治理閉環:通過遺忘曲線(30天閒置完結)、利用率收縮和審計反饋,防止記憶庫無限膨脹。
- 存儲與檢索:採用明文 Markdown 真源 + SQLite 索引;檢索使用零 LLM 算法(BM25 + RRF)。
- 雙通道寫入:支持 LLM 提取(廣度)與零 LLM 規則(速度),確保關鍵信息能即時落庫。
安裝與依賴¶
插件以 npm 包形式分發,維護者爲 gangwolf2312-creator。安裝前需確認本地環境已安裝 jieba。
依賴項:
- @deepseek-ai/dsh-tools: ^0.1.0-rc.7
- @deepseek-ai/cordis: ^4.0.1 (peer dependency)
配置:
插件運行依賴環境變量 apiKeyEnv,建議配置後端 LLM API Key 以啓用提取功能。
典型用法¶
- Agent 調用:Agent 可直接調用
memory_search查詢歷史記憶,或使用memory_add_run添加新記憶。 - 注入策略:插件按意圖分檔注入記憶。
- 關鍵意圖:最多注入 3 條記憶。
- 一般意圖:最多注入 1 條記憶。
- 寒暄/閒聊:不注入記憶。
- 畫像蒸餾:在 UI 的“畫像” tab 中手動觸發,或通過 RPC 調用
distill,將事件樹聚合爲用戶畫像摘要。 - 審覈流程:零 LLM 提取的不確定內容會進入
pending審覈隊列,需人工確認後固化。
設計與實現¶
- 存儲層:每張記憶卡是 Markdown 文件(包含 front matter 元數據與正文),目錄按類型分(如
events/cards、profiles)。寫入操作具有冪等性,崩潰重啓可對賬。 - 檢索機制:讀取端零 LLM 依賴。使用 jieba 分詞進行詞性提取,通過多路 RRF 融合計算相關度。數據驅動相關度門檻(如核心詞重疊閾值),避免無關記憶注入。
- 記憶與知識分離:系統區分
memory-tree(關於“你”的經歷)與memory-wiki(關於“世界”的規範),避免檢索污染。 - 架構隔離:採用 Host JS + Python Sidecar 模式。Sidecar 僅監聽 127.0.0.1,崩潰隻影響記憶模塊,不會拖垮 Harness 主進程。
注意事項¶
- LLM 依賴:提取質量完全依賴所選 LLM 的輸出能力。
- jieba 安裝:使用前需確保本地已安裝
jieba。 - 檢索限制:檢索是基於相關度排序召回,並非語義聯想,且包含一定的擴展能力。
- 故障隔離:Sidecar 崩潰只會導致記憶讀寫不可用,不影響 Harness 的會話流。
- 許可證:MIT 許可證,開源協議,使用時請遵守。
總結¶
對於上下文窗口受限的開發者或本地模型使用者,dsh-memory-bridge 提供了一套可靠的記憶治理方案。通過零 LLM 檢索、雙通道寫入和明文存儲,它在不犧牲可控性的前提下,解決了智能體“健忘”和“上下文溢出”的痛點。
項目地址:https://github.com/gangwolf2312-creator/dsh-memory-bridge