前言¶
智能体在每次会话中往往面临“无记忆”的困境,必须从零开始理解用户上下文。市面上常见的记忆方案要么将原始对话存入向量库导致信号淹没,要么允许模型随意写入 Key-Value 导致幻觉污染。dsh-daoing-memory 针对这些问题,为 DeepSeek Harness (DSH) 代理提供了一套持久、自进化且可审计的记忆系统。
是什么¶
这是一个由 daoing 维护的 DSH 插件,核心价值在于通过“赚取”机制建立信任,将原始会话转化为可复用的语义记忆。它将语义记忆(用户事实与关注点)与体验记忆(生命周期知识)分离,并通过追加式审计账本记录所有变更,确保记忆的完整性与可追溯性。
核心功能¶
该插件提供了从记录、提取、回忆到审核的全链路工具:
- 日记与提取:使用
memory_fact追加原始会话笔记;使用memory_extract将笔记提炼为持久化的事实和关注点(如决策、承诺、疑问等)。 - 体验生命周期:包含
memory_ingest、memory_report、memory_revise、memory_refine、memory_verify等工具,管理经验的信任度提升与修正过程。 - 相关性回忆:通过
memory_recall,代理可基于关键词或情境在共享经验库中检索相关内容。 - 审计与清理:
memory_ledger和memory_verify用于查询追加式审计账本;memory_consolidate用于定期压缩和清理存储。 - Profile 注入:将精简的用户快照(核心事实与关注点)注入系统提示词,使代理无需询问即可了解用户背景。
- 工作台与技能:提供浏览器侧边栏(Workbench UI)供人工审核与编辑;内置
memory-extraction技能,指导代理何时以及如何提取高质量记忆。
安装与启用¶
安装插件后需重启 DSH 进程,并手动放置技能文件。
- 安装插件:
dsh plugin --profile web add dsh-daoing-memory
- 安装技能:
node node_modules/dsh-daoing-memory/scripts/install-skill.mjs
- 重启服务:
安装完成后,请重启 DSH 以加载插件与注入机制。重启后,左侧边栏底部会出现“Memory”按钮,用于打开工作台。
典型用法¶
插件安装完成后,代理通过 memory_* 系列工具与人类协作构建记忆:
- 记录原始笔记:在会话中,代理使用
memory_fact追加当前会话的原始笔记。 - 提炼记忆:在自然的停顿点,代理运行
memory_extract,结合memory-extraction技能,从笔记中提取出事实和关注点。 - 检索与应用:在后续会话中,
memory_recall会自动检索相关经验;同时,系统提示词已包含精简的用户 Profile,无需重复询问。 - 反馈与修正:当经验被确认有用时调用
memory_report,当发现错误时调用memory_revise。
适用场景与注意¶
该插件适合需要长期维护用户画像、处理复杂任务流且对数据准确性要求较高的 DSH 代理场景。
注意事项:
* 记忆必须“赚取”:所有体验从低信任度的“候选”开始,只有经过实际使用验证才能获得高信任度,不会凭空授予。
* 人工介入:虽然插件自动运行,但人类必须通过浏览器工作台保持审核、修正和删除的参与,记忆是共享产物而非黑盒。
* 权限与源码:插件以当前 DSH 进程权限运行,安装前建议检查源码与许可证(MIT)。
总结¶
dsh-daoing-memory 通过将记忆划分为语义与体验两个维度,并结合审计账本与工作台,解决了智能体记忆污染与上下文丢失的问题。开发者可参考 GitHub 仓库 了解完整架构,或在 社区目录 查看更多详情。