dsh-memory-echo:在 DSH 里按原话找回「我说过什么」

前言

DeepSeek Harness(DSH)里若已有长期记忆类插件,常见做法是存提炼后的结论:方便续写上下文,但当你问「我上次原话怎么说的」「那个禁令完整表述是什么」时,压缩过的摘要往往对不上逐字需求。长期记忆和原话检索解决的不是同一类问题。

下面介绍社区插件 dsh-memory-echo(维护者 CNyaotian-Lunar,分类:记忆)。它在本地保留用户真正发过的话,供按需查询;不自动把内容注入对话上下文。仓库说明为 Utterance-level short-term memory plugin for DeepSeek Harness,当前为 0.1.x,接口与数据格式尚未稳定。

这是什么

dsh-memory-echo 是 DSH 的原话级短期记忆插件:从会话日志里只抽取你自己发的消息,写入本地 SQLite;助手回复、工具输出、子代理任务书不会入库。与「只存结论」的长期记忆库互补——前者回答「当时怎么说的」,后者更适合「我们达成了什么共识」。

插件无网络请求,运行时依赖为零(仅使用 Node 内置 node: 模块)。许可证为 MIT。

读什么、写什么

加载与扫描时,插件从 $DSH_HOME/sessions/**/session.v4.jsonl.zstd 读取会话日志,筛选 source.kind === 'user' 的用户消息,写入 $DSH_HOME/data/dsh-memory-echo/echo.db。该库全局一份,不按工作区分;可通过配置项 dbDir 指定库的完整目录。

设计上有几条固定约束(来自仓库说明):

约束 原因
存全文,不做有损压缩 压缩可能丢掉否定与动词,禁令会变成操作步骤
不自动注入上下文 执行途中不会预置查询,避免抑制按需检索
查询失败区分原因 not-found / unavailable / empty-db / expired 含义不同
只存用户发言 助手与工具输出不算「说过的话」

安装与启用

官方推荐从插件名安装:

dsh plugin add dsh-memory-echo

若要从源码构建再链接本地目录,仓库给出的步骤为进入克隆后的目录执行 npm install && npm run build,再用 dsh plugin add link:$(pwd)。package.json 要求 Node >=22.13、DSH >=0.2.0-rc.2;插件元数据标注与 0.2.1-rc.2 兼容。

安装后默认 enabled: true,会在加载时按配置做增量扫描(autoScan: true,默认回看 autoScanDays: 7 天)。

配置要点

键 默认 说明
enabled true 关闭后不注册工具、不扫描
dbDir '' 空则使用 $DSH_HOME/data/dsh-memory-echo
sessionsRoot '' 空则使用 $DSH_HOME/sessions
autoScan true 加载时增量扫描
autoScanDays 7 增量扫描回看天数

每条原话带有 valid_until:默认保留 30 天;设 retentionDays: 0 可关闭淡出。到期后常规查询不可见,但数据仍在库中,查询时可传 includeExpired: true。

典型用法

工具名为 memory_echo,仅在模型或工作流主动调用时读取库内容。仓库示例:

memory_echo({ query: "硬盘" })                      // 查关键词
memory_echo({ days: 1 })                            // 今天说过什么
memory_echo({ mode: "bucket", days: 1 })            // 按天聚合:哪一段、几条、样例
memory_echo({ query: "方案", includeExpired: true }) // 连已淡出的一起查

query 宜为 2~4 个字的实体词(如「硬盘」「报错」「方案」)。传整句会被切成多段且要求段段命中,往往查不到结果;想回忆「上次提到的那个方案」,应传核心词而非整句问法。

隐私与本地数据

插件在本地运行,但会把你说过的内容复制进 SQLite。落库前会对常见凭据形态做模式替换(如 sk- 密钥、JWT、Authorization / Cookie 头、查询串中的 token= / password= 等),只换值、保留键名与上下文;未匹配到的形态仍可能原样入库,不能视为万无一失。

若要彻底移除数据:关闭插件后删除目录 $DSH_HOME/data/dsh-memory-echo/,插件不会在该目录之外重建其它产物。

适用场景与注意

适合需要在 DSH 对话里按关键词或时间范围找回自己原话的开发者:例如核对口头约束、找回某天的表述、区分「没说过」与「已过期查不到」。

插件以当前 DSH 进程权限读写 $DSH_HOME 与会话日志;安装前应阅读 GitHub 仓库 源码与 MIT 许可证,确认脱敏策略是否满足你的合规要求。DSH 生态强调「一切皆插件」;SkillHub 目录页 为社区收录站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-memory-echo 补的是「原话可查、按需调用、本地 SQLite」这一层:与长期记忆的结论库并列使用,而不是替代它。需要安装说明与配置细节时,以仓库 README 为准。

  • 目录页:https://www.skillhub.cn/plugins/CNyaotian-Lunar/dsh-memory-echo
  • GitHub:https://github.com/CNyaotian-Lunar/dsh-memory-echo
羽毛球分组比赛记分
小程序二维码

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

Xiaoye