前言¶
在 DeepSeek Harness(DSH)裏做多輪、跨會話的開發對話時,模型默認只看見當前會話上下文。項目裏的技術棧約定、個人偏好、踩過的坑,往往要在每個新會話裏重複說明,或依賴人工複製粘貼。社區插件生態裏「記憶」類能力可以補這一環:baixiaoyin666/dsh-long-memory 在 Host 側監聽對話輪次,自動提煉少量穩定事實並寫進本地 JSON,新會話組裝系統提示時再注入摘要。下面介紹它的定位、能力與安裝方式;事實以 GitHub 倉庫 README 爲準(當前 package 版本 0.9.1,MIT,要求 DSH 0.2.x,已在 desktop profile 0.2.1-rc.3 上驗證)。
這是什麼¶
dsh-long-memory 由維護者 baixiaoyin666 發佈,分類爲「記憶」。一句話:DeepSeek Harness 的自動長期記憶插件——每輪對話正常結束後自動提煉記憶,新會話自動帶回;附帶詳情面板、每日日記與可切換人格。數據純本地、插件自述零第三方 npm 依賴;記憶提煉請求走當前會話已在用的模型路由,記憶文件不上傳。
核心功能¶
自動提煉與帶回¶
- 每輪在
turn/end且reason = completed時,把該輪用戶消息與助手最終回覆交給當前路由,要求輸出不超過 3 條穩定事實;無需手動說「記住這個」。 - 子代理會話(
header.origin = subagent)與非正常結束的輪次會跳過。 - 新會話第一次組裝系統提示時,注入「全局 + 當前工作區」的最近記憶摘要(≤ 1400 字);同一會話內摘要凍結,避免每輪改動系統提示、打穿 prompt 緩存。
全局與工作區兩級¶
| 範圍 | 適合記什麼 |
|---|---|
global |
用戶身份、偏好、禁忌、語言與風格等跨項目信息 |
workspace |
當前目錄的技術棧、命令、約定、關鍵決定與踩坑等 |
兩級互不污染。單工作區記憶上限 500 條,超出時淘汰最久未更新的;與已有條目高度重合(相似度 ≥ 0.82)時合併並保留更完整表述。
三個工具(手動補位)¶
自動提煉覆蓋不到時,會話內可調用:
| 工具 | 作用 | 參數 |
|---|---|---|
memory_search |
按關鍵詞檢索,返回條目 id | query(必填)、scope = auto/global/workspace、limit |
memory_save |
手動存一條穩定事實,近似重複會合並 | text(必填)、scope = global/workspace、tags |
memory_forget |
按 id 刪除 | id(必填) |
詳情面板、日記與人格¶
- 左側欄 長期記憶 圖標(設置裏也有同一頁):總條數、健康度、標籤、上次提煉結果、可搜索與按範圍過濾的列表;每條可展開「查看對話」及來源元數據。
- 日記:按日生成約 300–420 字的第一人稱日記,存於
diary.json;觀察到的習慣會作爲帶habit標籤的global記憶繼續參與後續流程。若安裝 dsh-meme,可按情緒配圖。 - 人格:默認「大肥魚」,另有多種內置人格可選;自定義人格存
personas.json,日記與留言按當前人格設定生成。
安全與導出¶
寫入前會過濾 GitHub token、sk- 密鑰、常見雲憑據、私鑰塊、身份證號、手機號及「密碼: xxx」等模式,替換爲 [已脫敏]。面板支持導出 Markdown 手帳與完整 JSON 備份。可按工作區暫停自動提煉(settings.json),手動工具仍可用。
安裝與啓用¶
插件沒有配置項,裝上即用;安裝後無需重啓。README 未提供 dsh plugin add github:... 一類命令,官方步驟如下。
- 將本倉庫下載到本地任意目錄(例如從 GitHub 下載 ZIP 並解壓)。
- 在 DSH 打開 設置 → 插件,選擇從本地目錄安裝,並指向該目錄。
等價的自動化方式:調用 plugin_manager 的 install_bundle,target 傳該目錄的絕對路徑。
- 安裝返回
application: applied後,插件列表應出現 長期記憶 / Long-term Memory。
從 0.1.1 起纔有 status.json 等診斷文件。
典型用法¶
默認全自動:正常對話即可;下一輪或下一個會話會按規則提煉與帶回。
需要顯式查改記憶時,讓助手調用上述三個工具,例如按關鍵詞查工作區約定、手動寫入一條 global 偏好、或按 id 刪除錯誤條目。
數據默認位置(DSH_HOME 可覆蓋根目錄):
~/.dsh/plugin-data/dsh-long-memory/ # macOS / Linux
%DSH_HOME%\plugin-data\dsh-long-memory\ # Windows 默認 C:\Users\<你>\.dsh\...
├── memories.json
├── diary.json
├── personas.json
├── settings.json
├── last-run.json
└── status.json
刪除 memories.json 即清空全部記憶。卸載插件只禁用或移除條目即可,文件會保留;徹底清除需刪除上述目錄。
成本說明(README):每完成一輪多一次小請求(輸入約 2k tokens,輸出上限 700);系統提示中摘要每個會話只計算一次。
適用場景與注意¶
適合:長期在同一 DSH 環境做項目開發、希望跨會話保留偏好與工作區約定,又希望數據留在本機的用戶。
務必注意:
- 插件在 Host 側運行,以當前 DSH 進程權限讀寫
plugin-data;安裝前應自行查看源碼與 MIT 許可證,確認可接受後再裝。 - 記憶來自對話提煉,敏感內容雖有過濾,仍應避免在對話中明文粘貼密鑰;必要時用
memory_forget或編輯memories.json。 - 新會話若看不到摘要,先確認
memories.json非空;某輪未更新last-run.json可能是輪次未completed或來自子代理。 - DSH 社區目錄 skillhub.cn 插件頁 與 GitHub 爲獨立信息源,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-long-memory 把「輪次結束 → 提煉 → 本地 JSON → 新會話注入摘要」串成閉環,並輔以面板、日記與人格,適合作爲 DSH 0.2.x 下的本地長期記憶方案。進一步瞭解與 issue 反饋見 GitHub:baixiaoyin666/dsh-long-memory,目錄頁見 skillhub.cn/plugins/baixiaoyin666/dsh-long-memory。