前言¶
在 DeepSeek Harness(DSH)的開發實踐中,智能體往往依賴會話歷史或靜態技能文檔來獲取上下文。這些方式通常無法持久化存儲智能體希望記住的“事實”或“筆記”,尤其是在跨會話時。dsh-memory 作爲一個社區插件,填補了這一空白,爲智能體提供了持久化、可編輯的存儲能力。
插件簡介¶
dsh-memory 是一個爲 DeepSeek Harness 提供持久化、可編輯記憶/筆記存儲的社區插件。它允許智能體以穩定的鍵值對形式寫入、讀取和搜索事實,這些數據在會話結束後依然存在。該插件由 Amengclass 維護,採用 MIT 許可證,無需構建步驟,直接使用純 ESM JavaScript。
核心功能¶
插件提供了四個核心工具,用於管理智能體的長期記憶:
- memory_set:在穩定的鍵下持久化插入或更新事實/筆記(支持可選標籤)。
- memory_get:按鍵讀取單個條目;如果省略鍵,則列出所有條目。
- memory_delete:按鍵刪除條目(冪等操作)。
- memory_search:在鍵、值和標籤中進行不區分大小寫的子字符串搜索,並支持按所需標籤過濾。
安裝與啓用¶
將插件安裝到 Harness 配置文件中。由於插件以純 ESM JavaScript 形式分發,無需構建步驟:
dsh plugin --profile web add github:Amengclass/dsh-memory
插件僅聲明存儲域,存儲後端由部署環境提供(例如 web 配置默認使用 @deepseek-ai/dsh-storage-json),因此無需修改後端配置。
典型用法¶
智能體可以通過調用上述工具來管理記憶。例如,在項目中設定一條約定:
memory_set key="project/convention" value="Do not modify public/" tags=["project","rule"]
在後續會話中,智能體可以檢索該條目:
memory_get key="project/convention"
適用場景與注意¶
該插件適合需要智能體在多個會話中保持特定狀態或知識庫的場景。
- 依賴項:運行時需要 peer 依賴項,通常由 Harness 的 node_modules 提供:
@deepseek-ai/dsh-storage-domain、@deepseek-ai/dsh-tools、@deepseek-ai/schemastery和zod。 - 存儲機制:數據存儲在部署配置的
/sqlite或 JSON 後端中,不涉及手寫文件操作。 - 許可證:MIT 許可證,允許自由使用和修改。
結語¶
dsh-memory 爲 DSH 智能體提供了基礎的持久化知識層,使其能夠像人類一樣保留長期記憶。更多細節可參考其 GitHub 倉庫 或 社區目錄。