DeepSeek Harness 分层长期记忆插件

前言

DeepSeek Harness (DSH) 的生态强调插件化扩展。在构建智能体时,一个常见痛点是模型在多轮对话或跨会话中逐渐遗忘上下文。dsh-layered-memory 旨在解决这一问题,通过引入分层长期记忆机制,帮助智能体在会话之间保持连续性和个性化。

插件简介

这是一个静态 bundle 插件,由 Olalaye 维护。它通过 dsh plugin 命令安装后,随 Harness 启动自动加载。安装后零配置,模型会自动获得记忆管理能力。插件的核心价值在于将记忆划分为三层结构,并利用 AI 进行自动提炼与去重。

核心架构

插件将记忆划分为三个层级,每层独立存储、独立容量上限。

  • 瞬时(Transient):存储当前会话的要点。由 agent/pre-step 事件钩子自动捕获用户消息,无需模型干预。
  • 情景(Episodic):存储每次会话的摘要。在任务收尾或用户告别时,通过 memory_commit 提交,自动沉淀会话记录。
  • 语义(Semantic):存储长期事实、偏好和习惯。由模型自动提炼,支持跨会话精准召回。

数据持久化在 ~/.dsh-memory/ 目录下,以 JSON 文件形式存储。

安装与启用

通过 DSH 的插件管理器安装,无需构建步骤。

dsh plugin --profile demo add github:Olalaye/dsh-layered-memory

安装完成后,模型会自动获得四个工具函数和一套系统提示词,无需额外配置即可使用。

模型工具

插件向模型注册了四个工具,支持自然语言调用。

  1. memory_recall:跨层检索相关历史。当用户提到”之前”、”上次”或”记得吗”时优先调用。
  2. memory_remember:写入语义事实或瞬时笔记。适用于用户明确表达的长期偏好或习惯。
  3. memory_commit:提交当前会话摘要。将情景记录沉淀到情景层,并将事实沉淀到语义层。
  4. memory_stats:查看各层条数与存储位置。

典型用法

在对话中直接使用自然语言即可触发记忆操作:

  • “记住:我汇报时喜欢用表格”
  • “以后写文档都用中文,标题用 ## 两级”
  • “上次我们讨论的 X 项目结论是什么?”
  • “把这个会话记下来”
  • “查一下我上次说的关于 Y 的要求”
  • “忘记我之前说的那件事吧”

管理接口

该插件不提供 React 设置页,而是通过 HTTP API 提供管理能力。Web 服务默认仅监听 127.0.0.1。

管理 API 路由:

  • GET /api/memory/stats:统计各层条数。
  • GET /api/memory/list:列出记忆条目。
  • GET /api/memory/search:全文检索。
  • POST /api/memory/add:手动新增。
  • POST /api/memory/update:编辑条目。
  • POST /api/memory/remove:删除条目。
  • POST /api/memory/clear:清空记忆。

删除、清空等敏感操作必须通过 HTTP API 完成。

注意事项

  • 数据隐私:记忆数据存储在用户目录(~/.dsh-memory/)下,属于个人隐私数据,不属于仓库内容。
  • 删除限制:模型工具暂不提供删除入口,仅支持通过 HTTP API 进行删除或清空操作。
  • 会话计数:重启进程后,会话计数器会重置,但已落盘的历史数据不会丢失。
  • 回环监听:Web 服务仅监听本地回环地址,不对外暴露。

参考资料

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜