前言¶
DeepSeek Harness (DSH) 的设计理念是「一切皆插件」。在多轮对话或长时间运行中,对话上下文容易丢失,或者跨会话的偏好(如沟通风格、工作习惯)无法持久化。dsh-agent-memory 旨在解决这个问题,提供一套能够实时采集证据、持久化偏好,并在 Web UI 中提供状态监控的长期记忆方案。
这是什么¶
这是一个用于 DSH 的长期记忆插件,由 BPTumbleweed 维护。它通过零运行时依赖的架构设计,实现了对话证据的实时采集、全局偏好与会话记忆的双层注入,以及一个只读的数据浏览器和状态面板。
核心功能¶
- 实时采集对话证据:通过钩子机制将用户消息追加到
evidence/live-messages.jsonl。 - Web UI 状态面板:在对话视图的
记忆标签页中展示/dsh-agent-memory/panel。 - 只读数据浏览器:提供
/dsh-agent-memory/data/<kind>路由,支持浏览 human、live、signals、preferences 等类型数据。 - 能力探测与熔断:插件加载时会探测能力,若连续失败达到阈值会触发熔断,且该熔断不会影响 DSH 主程序运行。
- 零运行时依赖:仅使用 Node.js 原生模块。
安装与启用¶
使用官方插件管理命令安装。安装后需重启对应 profile 的 web 实例。
dsh plugin --profile web add github:BPTumbleweed/dsh-agent-memory
systemctl restart dsh-web-<your-instance>
典型用法¶
插件依赖配套的 CLI (bin/) 来填充数据。首次使用需要进行全量回填。
python3 bin/memory-scan.py --full --root ~/agent-memory --dsh-home ~/.dsh
记录偏好:
python3 bin/memory-note.py "prefers terse, evidence-backed answers" --section "沟通"
处理完信号后,清空待处理计数器:
python3 bin/memory-scan.py --mark-distilled
注意事项¶
- 偏好注入:插件不接管偏好注入,偏好注入由官方
agent-instructions负责。 - 脆弱层保护:会话内记忆注入是脆弱层,受字节预算限制,且受熔断机制保护。
- 存储机制:旧记录会被压缩,存储布局由插件读取,由 CLI 写入。
生态与链接¶
该插件面向跨版本升级设计,遵循 MIT 许可证。更多细节可查阅社区目录与 GitHub 仓库。