前言¶
DeepSeek Harness(DSH)的插件生态强调组合与声明,插件可以在智能体运行时中提供工具、存储、会话等能力。长期记忆是其中一个比较实际的需求:智能体不仅需要在一次会话里记住上下文,还需要跨会话保存偏好、项目知识、经历和压缩后的摘要。
dsh-agent-memory 是面向 DSH 的长期记忆插件。它提供分层存储、作用域路由、工具面和压缩联动,让智能体可以决定记什么、何时召回、如何更新与归档。
这是什么¶
jonah791/dsh-agent-memory 是一个为 DeepSeek Harness(DSH)打造的智能体驱动长期记忆插件,分类为记忆类插件,许可证为 MIT。
它的目标是给 DSH 智能体提供跨会话的经历库:主人偏好、项目知识、决策理由、学习沉淀等内容可以被结构化写入、检索读取和整理压缩。
当前已核实状态如下:
- 状态:
v0.3,智能体核心联动已落地 - DSH 为预览版
0.1.0-rc,无兼容承诺 runtime: host-onlyenvDeps: 无,纯逻辑 / 标准 Nodeboundary: 无特殊授权边界- 兼容:
cordis ^4.0.1/dsh-tools ^0.1.0-rc.6 - 依赖官方 storage 栈:
storage/storage-json/storage-domain,web-app bundle 已提供 - 测试:
165+ tests / 0 fail
核心功能¶
分层记忆¶
插件将记忆分为几层,每层适合不同内容:
L1 fact:主人偏好、环境事实,使用key做精确覆盖更新L2 knowledge:可复用知识、学习沉淀,同标题自动合并L3 episodic:有结果的情景、经历时间线summary:压缩产物,冷归档保留,可深挖,索引高密度
其中,L3 episodic 使用时间桶压缩,粒度为:
日 → 周 → 月 → 年
作用域¶
插件支持两种作用域:
global:全局记忆,例如主人偏好、环境信息,永远附加检索workspace:工作区级记忆,按项目.dsh/memory.yml配置路由
workspace 级路由可配置层级、预算、时间刻度等。
工具面¶
插件向智能体暴露以下工具:
remember:写入、覆盖、合并,返回id和actionrecall:检索,支持关键词、层级、标签、时间过滤,按相关度和新鲜度排序memory_browse:时间金字塔浏览,用于不知道具体有什么时的发现路径update/forget:修订或归档,归档后不进入活跃检索,但仍可深挖memory_stats:查看各层、时间桶、归档计数
与 dsh-agent-compact 联动¶
插件可与 dsh-agent-compact 联动,处理会话压缩后的记忆沉淀:
- 会话压缩完成
checkpoint原文保底存档到episodic- 发送
inbox通知 wakeup=false,排队不唤醒
是否提炼、如何组织由智能体自主决策,理由记入 source.reason。压缩在进程内完成后不再写哨兵重启。
安装与启用¶
先安装依赖并构建:
cd <你的 self-plugins 目录>
git clone https://github.com/jonah791/dsh-agent-memory.git
cd dsh-agent-memory
pnpm install
pnpm build
组合配置示例如下:
- insert:
- id: agent-memory
name: dsh-agent-memory
该配置声明插件 id 为 agent-memory,名称为 dsh-agent-memory。
插件依赖官方 storage 栈:
storage
storage-json
storage-domain
这些能力由 web-app bundle 提供。
典型用法¶
下面这些用法来自插件已核实的工具面说明,适合作为日常调用的基本路径。
写入记忆¶
使用 remember 写入、覆盖或合并记忆。
- 偏好、环境事实可进入
L1 fact - 可复用知识可进入
L2 knowledge - 有结果的情景、经历可进入
L3 episodic
写入后返回 id 和 action,便于后续追踪。
检索记忆¶
使用 recall 检索已有记忆。
可使用的过滤维度包括:
- 关键词
- 层级
- 标签
- 时间
结果按相关度和新鲜度排序。
浏览记忆结构¶
当不确定库里具体有什么时,可以使用 memory_browse。
它提供时间金字塔浏览路径,适合从粗粒度时间结构逐步查看内容。
修订与归档¶
使用 update 修订记忆,使用 forget 归档记忆。
归档后的记忆不进入活跃检索,但仍可深挖。
查看统计¶
使用 memory_stats 查看:
- 各层计数
- 时间桶计数
- 归档计数
本地测试¶
插件仓库中给出的测试命令为:
node node_modules/typescript/lib/tsc.js -p tsconfig.json && node --test
已核实测试结果为:
165+ tests / 0 fail
适用场景与注意¶
适合这类场景:
- 需要在 DSH 中为智能体提供跨会话长期记忆
- 需要区分全局记忆和工作区记忆
- 需要对记忆做分层、检索、修订、归档和统计
- 需要与
dsh-agent-compact配合,保存会话压缩后的 checkpoint
使用前注意:
- DSH 当前为预览版
0.1.0-rc,无兼容承诺 - 插件声明为
host-only运行,且无特殊授权边界 - 插件以当前 dsh 进程权限运行,安装前应检查源码与 MIT 许可证
- 依赖
cordis ^4.0.1/dsh-tools ^0.1.0-rc.6 - 依赖官方 storage 栈:
storage/storage-json/storage-domain
结尾¶
dsh-agent-memory 为 DSH 智能体提供了一条比较完整的长期记忆路径:分层写入、作用域路由、工具面调用、时间桶压缩,以及与会话压缩插件的联动。它不是简单的存储扩展,而是把“记什么、怎么整理、何时召回”交给智能体决策,框架层负责存储、路由、检索和压缩条件。
GitHub 仓库:
https://github.com/jonah791/dsh-agent-memory
已核实资料中未提供社区目录页 URL。