dsh-memory-chain(守链):用五个动词给 AI agent 做长期记忆

前言

在 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 许可证,确认路径与备份策略符合你的环境。

典型用法(可复现流程)

  1. 新会话开始:调用 notebook_wake,把核心层和近期工作层载入上下文。
  2. 会话中:用 notebook_work 追加带时间戳的一行记录。
  3. 踩坑:用 notebook_pit 写入 现象|根因|修法,需要时再查档案层。
  4. 旧规则作废:用 notebook_tomb 留墓碑,避免以后仍按过期说法执行。
  5. 结束:用 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
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜