前言¶
在 DeepSeek Harness(DSH)的开发实践中,智能体往往依赖会话历史或静态技能文档来获取上下文。这些方式通常无法持久化存储智能体希望记住的“事实”或“笔记”,尤其是在跨会话时。dsh-memory 作为一个社区插件,填补了这一空白,为智能体提供了持久化、可编辑的存储能力。
插件简介¶
dsh-memory 是一个为 DeepSeek Harness 提供持久化、可编辑记忆/笔记存储的社区插件。它允许智能体以稳定的键值对形式写入、读取和搜索事实,这些数据在会话结束后依然存在。该插件由 Amengclass 维护,采用 MIT 许可证,无需构建步骤,直接使用纯 ESM JavaScript。
核心功能¶
插件提供了四个核心工具,用于管理智能体的长期记忆:
- memory_set:在稳定的键下持久化插入或更新事实/笔记(支持可选标签)。
- memory_get:按键读取单个条目;如果省略键,则列出所有条目。
- memory_delete:按键删除条目(幂等操作)。
- memory_search:在键、值和标签中进行不区分大小写的子字符串搜索,并支持按所需标签过滤。
安装与启用¶
将插件安装到 Harness 配置文件中。由于插件以纯 ESM JavaScript 形式分发,无需构建步骤:
dsh plugin --profile web add github:Amengclass/dsh-memory
插件仅声明存储域,存储后端由部署环境提供(例如 web 配置默认使用 @deepseek-ai/dsh-storage-json),因此无需修改后端配置。
典型用法¶
智能体可以通过调用上述工具来管理记忆。例如,在项目中设定一条约定:
memory_set key="project/convention" value="Do not modify public/" tags=["project","rule"]
在后续会话中,智能体可以检索该条目:
memory_get key="project/convention"
适用场景与注意¶
该插件适合需要智能体在多个会话中保持特定状态或知识库的场景。
- 依赖项:运行时需要 peer 依赖项,通常由 Harness 的 node_modules 提供:
@deepseek-ai/dsh-storage-domain、@deepseek-ai/dsh-tools、@deepseek-ai/schemastery和zod。 - 存储机制:数据存储在部署配置的
/sqlite或 JSON 后端中,不涉及手写文件操作。 - 许可证:MIT 许可证,允许自由使用和修改。
结语¶
dsh-memory 为 DSH 智能体提供了基础的持久化知识层,使其能够像人类一样保留长期记忆。更多细节可参考其 GitHub 仓库 或 社区目录。