前言¶
在 DSH Web GUI 场景里,Agent 经常需要把用户偏好、项目约定和阶段性结论保留到后续会话。若用数据库、向量库或 MCP 来承载记忆,维护面会变大。dsh-light-memory 的思路更轻:把记忆写成可见、可编辑、可 git 管理的 Markdown 文件,再围绕两个动作做维护。
下面介绍它的定位、核心能力、安装方式、典型用法,以及使用时需要确认的安全与依赖边界。
这是什么¶
dsh-light-memory 是 chidaic 维护的一个 DSH 插件,面向 DSH Web GUI 提供轻量记忆系统。
它不使用数据库、向量库、MCP 或 Python。记忆本体由四个 Markdown 文件组成:
USER.mdPROJECT.mdWORKLOG.mdCONVENTION.md
这些文件是插件保存记忆的载体,也可以直接编辑。
许可证为 MIT,要求 Node >=20.0.0。
核心功能¶
四个文件,各司其职¶
插件用四个文件分别承载不同性质的内容:
| 文件 | 用途 |
|---|---|
USER.md |
用户级记忆 |
PROJECT.md |
项目级记忆 |
WORKLOG.md |
操作流水 |
CONVENTION.md |
记忆规约 |
其中,CONVENTION.md 用于自定义记忆规约。你可以编辑它,定义“记什么、怎么沉淀”。
两个动作:append 与 distill¶
插件提供两个主要动作:
append:把一段操作记录追加到WORKLOG.md。distill:在任务边界处理本次会话新增段,并将有结论的内容沉降进USER.md或PROJECT.md。
这两个动作把“临时流水”和“可复用结论”分开处理。
注入方式¶
插件通过以下三种方式把记忆注入到模型上下文:
systemPrompt.sectionsystemPrompt.context- 按需读取
整体目标是让注入更友好地配合 prefix-cache。
提供的工具¶
插件提供四个工具:
| 工具 | 作用 |
|---|---|
memory_append |
将一段操作记录追加到 WORKLOG.md |
memory_read |
读取 USER.md / PROJECT.md 全文,或读取 WORKLOG.md 最近 n 段 |
memory_convention |
读取 CONVENTION.md 全文 |
memory_distill |
在任务边界只扫描本次会话新增段,并将有结论内容沉降进 USER.md 或 PROJECT.md |
安装与启用¶
使用 DSH 插件命令安装:
dsh plugin --profile web add dsh-light-memory
安装后重启 dsh web 生效。
典型用法¶
可以按下面的流程使用:
1、先用 memory_append 将一段操作记录追加到 WORKLOG.md。
2、需要查看记忆时,用 memory_read 读取 USER.md / PROJECT.md 全文,或读取 WORKLOG.md 最近 n 段。
3、需要查看当前记忆规约时,用 memory_convention 读取 CONVENTION.md 全文。
4、在任务边界用 memory_distill 处理本次会话新增段,并将有结论的内容沉降进 USER.md 或 PROJECT.md。
5、在设置页调整用户级、项目级注入开关,以及参数默认值。
6、如果希望改变记忆规则,直接编辑 CONVENTION.md。
默认配置¶
默认配置包括以下参数:
recentSegments: 3
recentBytes: 8192
userMaxBytes: 2048
projectMaxBytes: 8192
userMaxEntries: 60
projectMaxEntries: 80
maxBytes: 25600
maxSegmentBytes: 4096
这些参数用于控制记忆读取、注入和大小边界。设置页可调整用户级、项目级注入开关与参数默认值。
安全边界¶
插件内置了几类机械防护:
- 上限守卫:只拦截持久结论文件增长越上限的
write/edit写,放行缩小写。 - secret 扫描:在
append或结论库写前拦截 API key、token、私钥块等模式。 - 路径逃逸防护:要求
realpath落在允许根内,拒绝symlink、..或绝对路径逃逸。
这些限制的目的是减少误写、泄密和路径越界风险。
适用场景与注意¶
dsh-light-memory 适合在 DSH Web GUI 中做 Agent 工作流、并希望记忆以纯文本形式落盘的场景。它比较适合以下需求:
- 记忆要可见、可编辑、可 git 管理。
- 不想引入数据库、向量库、MCP 或 Python。
- 希望按用户级、项目级、操作流水、记忆规约分别开关。
- 希望在
systemPrompt.section、systemPrompt.context和按需读取之间做更稳定的上下文注入。
使用前建议确认:
- 运行环境满足 Node >=20.0.0。
- 插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。
- README 声称零数据库、零依赖、零遥测,但
package.json的dsh.client.inject声明了@deepseek-ai/dsh-client-runtime。是否需要额外运行时依赖未确认,部署前建议核对源码与运行环境。
链接¶
GitHub 仓库:
https://github.com/chidaic/dsh-light-memory
插件目录页:
https://www.skillhub.cn/plugins/chidaic/dsh-light-memory