前言¶
在 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