DeepSeek Harness (DSH) 的理念是“一切皆插件”。在开发智能体时,一个常见的问题是:每次会话重启,智能体都像第一次见面,忘记之前的上下文。dsh-memory 插件实现了 Claude Code 的记忆模型,让智能体在会话间保持记忆,且不会混淆不同项目。它采用纯文件存储,无任何依赖。
插件定位¶
该插件由 annkun 维护,提供 DeepSeek Harness 的持久化记忆功能。它通过纯 Markdown 文件实现记忆存储,不需要服务器、账户或嵌入提供商。
核心功能¶
- 跨会话记忆:智能体在重启后会“唤醒”时带有上下文。
- 可视化记忆管理器:通过 UI 管理记忆,支持搜索、标签、分组。
- 项目隔离:项目记忆携带子目录标签,会话作用域读取和写入,避免跨项目混淆。
- 安全与边界:设计有界(硬性限制),管道安全(原子写入、拒绝写入秘密),零依赖。
安装与启用¶
- 确保已安装 DSH CLI。
- 运行安装命令。注意
--profile参数必须放在add之前。
dsh plugin --profile web add @fooxe/dsh-memory
- 重启 DSH。工具注册仅发生在服务启动时。停止服务(Ctrl+C),然后重新启动服务,再打开新会话。
典型用法¶
该插件提供了四个核心工具:
memory_save:保存持久化记忆。memory_search:不区分大小写的关键词搜索(支持 ID、标题、标签、内容)。memory_read:读取单条记忆。memory_list:按作用域列出最近记忆。
使用示例:
在会话中告诉智能体记住偏好,例如:
“Remember — this project uses pnpm, not npm.”
智能体会调用memory_save保存该信息。在下一个会话中询问:
“Which package manager do we use?”
智能体会直接回答来自记忆的内容,无需再次询问。
作用域与注意事项¶
插件使用两个隔离的作用域存储记忆:
- 用户作用域(
~/.dsh/memory):存储个人偏好、跨项目经验、工作习惯。 - 项目作用域(
<project-root>/.dsh/memory):存储技术决策、约定、团队共享信息。
注意事项:
* 命令顺序:--profile 必须放在 add 之前。
* 重启生效:安装后必须重启 DSH 才能注册工具。
* 安全拒绝:写入路径会拒绝所有秘密信息。
* Windows 兼容:包含 Windows 路径保护机制。
* 原子写入:防止崩溃导致文件损坏。
总结¶
该插件通过文件系统实现了可靠的记忆功能,适合需要长期上下文的智能体开发场景。更多详情可访问 GitHub 或 SkillHub 目录。