前言¶
在 DSH 裏跑 agent,常見問題是:上下文被壓縮、進程重啓、換模型或卸插件之後,上一段會話裏的判斷接不上。不少記憶方案走自動檢索、權重和間隔配置,接口通用但日常未必按那條路走。守鏈(dsh-memory-chain)把「跨會話還能接上」做成純 Markdown 文件加五個固定工具,不建數據庫、不做自動檢索,裝好後首次運行會自動建好四頁記事本。
這是什麼¶
dsh-memory-chain(守鏈)由維護者 raoain 發佈,在 DSH 社區目錄中歸類爲「記憶」。npm 包名爲 @silentrainhero/dsh-memory-chain(當前資料中版本 0.4.2,許可證 MIT)。一句話定位:給 AI agent 的分層長期記憶——plain markdown,可在重啓、換模型、卸插件後仍保留;開箱即用,首次運行自動創建四頁(核心 / 工作 / 檔案 / 墓碑)。
- 目錄頁:https://www.skillhub.cn/plugins/raoain/dsh-memory-chain
- 源碼與說明:https://github.com/raoain/dsh-memory-chain
DSH 生態是「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。
爲什麼用五個動詞而不是又一堆配置¶
README 裏的對比很直接:很多記憶插件問「要不要開自動檢索、間隔幾小時、權重多少」——那是給陌生人的通用接口。日常 agent 的動作順序大致固定:
醒來 → 幹活 → 遇坑 → 立碑 → 收工
插件把這五件事做成五個工具,路徑寫死一次,之後不用記參數,「不給參數,給習慣」。
三層文件¶
| 層 | 文件 | 何時讀 |
|---|---|---|
| 核心層 | 0-核心.md |
每次醒來(宜控制在幾百字;超過 2 KB 等於在稀釋它) |
| 工作層 | 1-工作.md |
每次讀最近一屏 |
| 檔案層 | 2-檔案.md |
按需查,不主動讀 |
判斷標準:「不知道這一條,會不會立刻做錯事?」 會 → 核心層;不會 → 檔案層。
默認數據目錄爲 ~/.dsh/notebook。
五個工具¶
| 工具 | 作用 |
|---|---|
notebook_wake |
讀核心層 + 工作層最近 20 行 |
notebook_work |
向工作層追加一行 [YYYY-MM-DD HH:mm] 內容 |
notebook_pit |
在檔案層記坑,格式 現象\|根因\|修法 |
notebook_tomb |
給作廢規矩立墓碑:舊說法\|爲什麼作廢\|現在按什麼來 |
notebook_close |
收工標記,並提醒跑快照和備份 |
安裝與啓用¶
先做安裝,再重載或重啓 DSH,五個工具纔會出現在 agent 可用工具列表裏。
從 npm 安裝(需指定 profile 時把 <profile> 換成你的配置名):
dsh plugin --profile <profile> add @silentrainhero/dsh-memory-chain
README 裏也給出簡寫形式(無 profile 時):
dsh plugin add @silentrainhero/dsh-memory-chain
本地開發可用 link(路徑換成插件目錄的絕對路徑):
dsh plugin --profile <profile> add link:<本目錄絕對路徑>
可選:換數據根目錄時在插件配置裏設置 root,例如:
- id: dsh-memory-chain
name: dsh-memory-chain
config:
root: 'D:\我的記事本'
注意:插件以當前 DSH 進程權限讀寫文件;安裝前建議閱讀 GitHub 源碼與 MIT 許可證,確認路徑與備份策略符合你的環境。
典型用法(可復現流程)¶
- 新會話開始:調用
notebook_wake,把核心層和近期工作層載入上下文。 - 會話中:用
notebook_work追加帶時間戳的一行記錄。 - 踩坑:用
notebook_pit寫入現象|根因|修法,需要時再查檔案層。 - 舊規則作廢:用
notebook_tomb留墓碑,避免以後仍按過期說法執行。 - 結束:用
notebook_close打收工標記;真正的快照與備份需由宿主側腳本執行,插件只提醒、不代跑。
項目自帶冒煙測試,在插件源碼目錄可執行(驗證五工具註冊、讀寫、wake 不讀檔案層等):
node test/smoke.mjs
邊界與搭配¶
刻意限制(README 原文):
- 不檢索:無關鍵詞命中、無相似度、無自動注入;找不到就是沒寫。
- 不合並衝突:多會話同時寫會追加,不解決矛盾。
- 收工只留標記:快照與備份不越權執行。
可與同作者的 dsh-memory-kit 搭配:kit 管外部自檢、雙盤備份、AGENTS.md 規則;本插件管內部分層讀寫的五個動作。也可與檢索式記憶插件並用——檢索負責廣度,固定 Markdown 負責兜底。
結尾¶
守鏈適合已經在用 DSH、希望 agent 在斷點之後仍能「接上同一套判斷」的開發者:分層文件 + 五個動詞,無數據庫、無自動檢索,路徑和習慣一次定好即可。進一步細節以 GitHub README 爲準:
- https://www.skillhub.cn/plugins/raoain/dsh-memory-chain
- https://github.com/raoain/dsh-memory-chain