dsh-memory (Cairn):DeepSeek Harness 的持久化記憶

前言

DeepSeek Harness (DSH) 默認情況下,智能體在會話結束後會丟失所有上下文。dsh-memory(項目名 Cairn)作爲插件,爲 DSH 提供了跨會話的持久化存儲和上下文注入能力。它通過持久化 KV 後端存儲事實、偏好和約定,確保信息在重啓後依然存在。

核心功能

持久化與作用域

插件將記憶存儲在持久化 KV 後端中,支持審計日誌。記憶分爲三層作用域:
* global:跨項目記憶。
* project:按倉庫自動檢測的特定項目記憶。
* user:跨項目的用戶配置文件記憶。

檢索與注入

  • BM25 相關性搜索:使用依賴-free 的 Okapi BM25 算法,支持 CJK 分詞(拉丁詞元 + CJK 單字/二字詞組)。檢索質量經過 CI 驗證(成功@5 = 100%,MRR = 0.902)。
  • 摘要優先注入:系統提示僅保留靜態指令,數據通過 <memory-digest> 和 <recalled-memory> 標籤注入。默認僅注入摘要,保持提示詞字節穩定。
  • 步驟級自動召回:每步對話後,系統會根據用戶文本進行 BM25 搜索,匹配時追加 <recalled-memory> 標籤,不觸碰系統提示前綴,保持 KV 緩存穩定。

身份層

支持身份層(可選),智能體通過 identity_update 工具在對話中自動生成和更新兩個自文檔:
* SOUL.md:智能體的角色文檔。
* USER.md:智能體對用戶的理解。
這兩個文檔版本化存儲,默認不衰減,且優先級低於部署角色。

自動化與治理

  • 自動學習:通過投影累加器監聽對話,捕捉“記住意圖”、修正和驗證失敗後的成功,積攢足夠的候選後觸發 LLM 提取。
  • 安全掃描:在寫入和加載時掃描 API Key、Token、提示注入模式,攔截保存並標記爲 [BLOCKED: ...]。
  • 去重管道:兩階段去重(停用詞過濾的 Jaccard 預過濾 + 可選 LLM 判定),防止重複積累。
  • 雙層生命週期:重要記憶可被固定(pin)。過期項目級記憶會被移除,過期全局/用戶級記憶會被軟衰減(隱藏但不刪除,仍可搜索)。

管理與配置

  • 前端 UI:提供“Memory”設置面板,包含健康儀表盤、待審覈隊列、管理界面(支持搜索、篩選、歸檔、刪除)。
  • 人工審覈:開啓 confirmBeforeWrite 後,提取和工具寫入會變爲待審覈隊列,需手動接受或拒絕。
  • 時間窗口瀏覽:memory_list 支持按時間範圍(epoch-ms)篩選記憶。

安裝與啓用

插件作爲 peer dependency 依賴 dsh 核心服務,以單包結構提供功能。

npm install -g @deepseek-ai/dsh

安裝完成後,插件通過其自帶的 cordis.patch.yml 配置激活爲 DSH 的一個配置層。

典型用法

插件提供了以下工具和功能:

  • 記憶工具:memory_search, memory_add, memory_replace, memory_remove, memory_list, memory_get, memory_pin, memory_unpin, memory_forget。
  • 身份工具:identity_update(用於更新智能體的 SOUL 和 USER 文檔)。

在實際使用中,智能體會在對話中自動嘗試提取關鍵信息,並通過 BM25 算法在後續步驟中召回相關記憶。

適用場景與注意

該插件適合需要長期維護上下文、跨會話保持一致性的複雜任務開發。由於插件以當前 DSH 進程的權限運行,使用前需檢查源碼與許可證(當前資料未明確列出 License)。

結尾

dsh-memory 通過持久化存儲、BM25 檢索和自動化提取,解決了智能體“健忘”的問題,是構建長期運行智能體的基礎組件。

  • 項目主頁: https://github.com/chenhw7/dsh-memory
  • 生態目錄: https://www.skillhub.cn/plugins/chenhw7/dsh-memory
羽毛球分组比赛记分
小程序二维码

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

小夜