DeepSeek Harness (DSH) 跨会话记忆插件

前言

DeepSeek Harness (DSH) 采用插件化架构。在处理长周期任务时,对话上下文容易丢失,导致模型重复解释背景、遗忘之前的决策。dsh-plugin-memory 旨在解决这个问题。它让对话模型在执行任务时边干边记,将值得长期保留的信息持久化为 Markdown 文件,并在新会话中自动注入。该插件由 justhalfbit 维护,遵循 MIT 许可证。

安装与启用

安装前请确保已安装 DSH 0.1.2 及以上版本,且 pnpm 在系统 PATH 上。

  1. 使用官方安装命令:
    dsh plugin --profile web add github:justhalfbit/dsh-plugin-memory
重启 `dsh web` 以生效。
  1. 记忆数据默认存储在 ~/.dsh/memory 目录。卸载时插件会保留该目录下的数据,如需清理请手动删除。

核心功能

该插件主要提供以下能力:

  • 两层记忆结构:主记忆文件(存储 Facts、Decisions、Lessons、Preferences)和专题文件(存储深度笔记)。
  • 模型边干边记:支持三档积极度(保守 / 平衡 / 积极),模型可主动调用工具保存信息。
  • 后台静默蒸馏:可选在对话结束后静默提取记忆,不产生工具卡片,适合无人值守长任务。
  • 按项目隔离:以工作目录为粒度,使用哈希编码目录名防止冲突。
  • 纯 Markdown 存储:数据可读、可手编、可纳入版本控制。
  • 设置面板:支持浏览器界面卡片配置和 settings.yaml 配置,全部支持热更新。
  • 完备护栏:包括内容哈希去重、条目数量上限、修剪顺序(手动条目最后淘汰)等机制。

存储结构与注入机制

记忆文件存储在 ~/.dsh/memory/projects/ 目录下。每个项目对应一个以路径哈希命名的子目录,内部包含:

  • memories.md:主记忆文件,按分类存储条目。
  • topics/*.md:专题文件,存储深度笔记。

注入机制采用渐进式披露:
1. 主记忆:全量注入到系统提示中,受字符预算限制。
2. 专题索引:仅注入文件名和摘要,正文按需加载。
3. 去重:基于渲染体 SHA-1 防止重复注入,提升 KV Cache 效率。

工具与配置

插件提供 7 个核心工具:

  • memory_save:保存一条记忆。
  • memory_search:关键词检索。
  • memory_forget:删除条目。
  • memory_read:读取专题文件。
  • memory_write_topic:创建或重写专题文件。
  • memory_delete_topic:删除专题文件。
  • memory_list:列出所有条目和专题。

配置项支持热更新,可通过浏览器界面或 ~/.dsh/settings.yaml 中的 memory 节配置。主要字段包括:

  • enabled:总开关。
  • proactivity:积极度档位。
  • autoDistill:是否开启后台蒸馏。
  • injectBudgetChars:注入提示的字符预算。
  • distillMinChars:触发蒸馏的最小字符数。
  • cooldownTurns:蒸馏冷却轮数。
  • maxEntriesPerCategory:每类条目上限。

注意事项

使用该插件时需注意以下限制:

  1. 并发写入:跨进程并发写同一项目为「最后写胜」的弱保证,进程内严格串行。
  2. 会话隔离:记忆按项目共享,不按会话隔离。同一项目的任何会话都能改写其它会话的条目。
  3. 蒸馏权限:自动蒸馏只能新增条目,以及改写/删除它自己创建的 auto 条目,无法改写 manual 条目。
  4. 错误处理:蒸馏失败的窗口不重试,这是有意的成本控制策略。
羽毛球分组比赛记分
小程序二维码

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

小夜