前言¶
DeepSeek Harness (DSH) 的一個會話通常以“空白 slate”開始:對話記錄保存在磁盤上以備審計,但模型無法再次訪問歷史內容。這導致項目偏好、決策約束等持久化事實無法在重啓或配置切換後保留。dsh-memory-lite 插件爲智能體提供了一個顯式的 memory 工具,使這些事實能夠跨會話持久化。
這是什麼¶
pacoyi/dsh-memory-lite 是 DeepSeek Harness 的輕量級跨會話記憶插件。它提供了一套審批門控的 memory 工具(保存/召回/列表/遺忘)以及設置頁的“記憶庫”UI 卡片。插件完全本地化,不發送網絡請求或遙測數據,所有數據存儲在本地 JSON 文件中。
核心功能¶
- memory 工具
提供四種操作:save(保存)、recall(召回)、list(列表)、forget(遺忘)。 - 設置卡片 UI
在 DSH 的設置頁提供“記憶庫”卡片,支持查看、新增、刪除、回收站恢復,以及導入嚮導和導出面板。 - 審批門控
save和forget操作需要主機審批(tools/pre-execute),防止未經授權的寫入。 - 導入/導出
支持冪等的記憶導入導出,支持從其他 Agent(如 Claude Code 的CLAUDE.md)遷移記憶。 - 範圍隔離
記憶範圍基於主機執行上下文(會話工作目錄),不同項目之間互不可見。 - 審計日誌
記錄每次變更的意圖、提交狀態、來源和條目 ID。 - 本地存儲
數據存儲在~/.dsh/memory-lite.*,文件損壞時會被隔離,不會靜默覆蓋。
安裝與啓用¶
需要先安裝 DSH CLI。安裝命令如下:
dsh plugin --profile web add github:pacoyi/dsh-memory-lite
安裝後,重啓對應的 profile(例如 dsh --profile web),memory 工具即可使用。
典型用法¶
直接與智能體對話即可觸發記憶工具。智能體會決定何時保存和召回,並先請求用戶審批。
示例對話:
* “記住:這個項目用 pnpm,不要用 npm”
* “我之前跟你說過什麼關於部署的事?”
工具參數:
| 參數 | 適用操作 | 描述 |
|---|---|---|
operation |
全部 | save | recall | list | forget |
text |
save | 要記住的筆記內容,需自包含且 ≤ 2000 字符 |
tags |
save | 可選標籤,如 ["preference", "project-x"],最多 8 個 |
query |
recall | 關鍵詞,不區分大小寫匹配文本和標籤 |
tag |
recall | 匹配攜帶該標籤的條目 |
limit |
list/recall | 返回的最大條目數,默認 10,最大 100 |
id |
forget | 要移入回收站的條目 ID |
注意與限制¶
- 隱私與數據安全
插件本身不發送網絡請求。但recall和list的結果會進入模型可見的對話面,發送給模型提供商,並記錄在會話日誌中。切勿在此存儲敏感數據(如 API Key、客戶數據、私有源代碼)。 - 內容限制
- 筆記長度 ≤ 2000 字符
- 標籤數量 ≤ 8 個
- 單個條目 ID ≤ 1000 個
- 環境要求
需要 Node.js >= 20。 - 文件編輯
如果需要直接編輯~/.dsh/memory-lite.json,必須停止 DSH 主機進程,因爲插件擁有併發寫入權限。
短結尾¶
dsh-memory-lite 適合需要在多個會話間保持項目上下文、注重審計和安全性的開發者。它通過本地文件存儲和審批機制,提供了一種輕量、可控的 Agent 記憶方案。更多細節可查看 GitHub 倉庫。