前言¶
在 DeepSeek Harness(DSH)里做智能体或长会话开发时,上下文很容易走向两个极端:要么每开新对话都要重复偏好、路径和踩过的坑,要么把历史一股脑塞进 system prompt,既烧 token,又让模型被无关事实干扰。社区里有一些「黑盒记忆」产品,往往只展示它愿意让你看到的那部分,数据和规则也不在你手里。
下面介绍的是非官方开源插件 dsh-thirdparty-memory(中文名:DSH 第三方长期记忆插件)。它在本地用 SQLite 存记忆,按类别管理,注入时做关键词与可选本地向量相关性筛选,自动抽取的人设类事实还要先过审阅收件箱,再进入提示词。
这是什么¶
dsh-thirdparty-memory 由维护者 steel-dsh-memory 发布,包 id 与 npm 名均为 dsh-thirdparty-memory。项目明确声明:与 DeepSeek、豆包及其官方团队无隶属关系,仅为兼容 DSH 的第三方插件。当前版本 0.4.3(2026-11-10),许可证 MIT。
运行环境(README 原文):DSH Desktop(MSIX)、DeepSeek Harness portable(Electron)、CLI dsh web;需要 Node.js 18+(随包 exe 内置 Node 24;SQLite 依赖内置 node:sqlite,需 Node 22.5+)。存储为单机 SQLite(WAL),无服务端、无云、无遥测;向量检索为本地 hashed n-gram 索引(256 维、余弦相似度),零运行时 npm 依赖(服务基于 node:http)。
分类归属:DSH 社区目录中的「记忆」类插件。目录页:skillhub 插件页;源码:GitHub。
核心功能¶
README 用一张总开关概括能力方向:自动抽取、五类记忆、审阅收件箱、按相关性注入、本地记忆页、Windows 单文件管理器,界面支持 English / 简体中文 / 繁體中文。下列能力均来自项目文档表述。
- 分类 + 相关性注入:并非每条记忆每轮都进 prompt;只有与当前消息相关的条目会展开,其余收成编号索引。文档举例:无关问题时约占 6.5 KB → 1.2 KB。
- 多主题分摊:一句话里提到多个主题时,各主题可各取代表条目,避免单一热点占满预算。
- 显式召回:可说「extract all memories about X」类表述,放宽相关性阈值并扩大预算,拉取该主题整批记忆。
- 审阅收件箱:自动抽取的
persona事实先停在收件箱,接受后才注入。 - 自判写入:默认
judgeMode: model,由智能体判断值得保留的内容(坑点、结论、个人事实等)并写入,且先搜后更新,避免重复条目。 [全局]前缀:正文以[全局]/[global]开头的记忆每轮注入。- 可观测性:Token 面板看各段字节/ token 成本;一键预览新对话将注入的完整文本。
- 本地向量(可关):字符/词 n-gram 哈希到 256 维,与关键词分混合;偏字面相近而非同义扩展;配置
vector: false可关闭。
五种记忆类型¶
| 类别 | 含义 | 何时注入 |
|---|---|---|
global |
语言偏好、硬性禁止、工作流规则 | 每轮 |
project |
与项目绑定的路径、坑点、脚本、规格 | 仅在该项目激活时(消息中出现项目名或 currentProject) |
persona |
你在意什么、习惯与偏好等 | 每轮(经审阅的条目) |
ephemeral |
当前会话草稿上下文 | 仅本会话 |
general |
其余 | 按关键词相关性 |
每条还可带 priority(high / medium / low)与可选 TTL(永久或 N 天)。文档强调:项目记忆既是门槛也是过滤器——项目激活只让条目「有资格」参与筛选,不会把该项目下全部记忆一次性灌进 prompt。
persona 条目为避免「第三人称画像」感,文档要求有日期、场景、可核对的原话或动作,结构模板为:YYYY-MM-DD <发生了什么> — "<原话>" — <一行解读>;无场景无引用则不写。
安装与启用¶
插件以 DSH 当前进程权限 运行,安装前宜自行审阅源码与 MIT 许可证。下列命令来自 README「Install」小节(管理器 exe 路径)。
方式一:单文件管理器(文档称最简单)
首次运行 dsh-memory-manager.exe 会选择 UI 语言,将捆绑运行时解压到 %LOCALAPPDATA%\dsh-thirdparty-memory\,启动记忆页并在浏览器打开;托盘菜单含「打开记忆页」「复制地址」「存储位置」「附加到 DSH」等。
dsh-memory-manager.exe # 打开页面并在托盘驻留
dsh-memory-manager.exe --install # 附加到检测到的各 DSH 配置
dsh-memory-manager.exe --start / --stop / --restart / --status
dsh-memory-manager.exe --port 7900 # 自定义端口(端口占用则拒绝)
package.json 中声明对 @deepseek-ai/dsh-tools 的 peer 依赖(可选),并带有 Cordis 补丁 ./cordis.patch.yml 供 DSH bundle 使用。更细的逐步说明见仓库内 docs/tutorial.md(含中文版)。
典型用法¶
经过上面的安装步骤后,可按文档中的工作流理解日常使用:
- 总开关:在 DSH 侧启用插件后,记忆由插件服务读写本地 SQLite;卸载或换模型时,数据库文件可随用户带走(README 强调记忆是用户数字资产)。
- 写入:默认由模型在对话中判断并
search+ 更新已有条目,减少重复;全局规则可用[全局]前缀保证每轮可见。 - 审阅:自动抽取的 persona 在收件箱中待确认,避免未核实推断直接进入 prompt。
- 注入:普通轮次按关键词(及可选本地向量)筛选;需要整批时用显式召回语句降低阈值。
- 运维:用记忆页或管理器查看存储路径、预览注入文本、观察 token 面板;向量不需要时可设
vector: false。
适用场景与注意¶
适合谁:需要在 DSH 上长期保留项目知识、个人工作流规则与会话外仍有效的结论,又希望 prompt 体积可控、数据留在本机的开发者。
注意:
- 非官方项目,社区目录(skillhub.cn)与 DeepSeek / 幻方无官方从属关系,勿当作官方应用商店条目。
- 插件与 DSH 同权限访问本机;审阅收件箱与本地存储不能替代你对敏感内容的自查。
- Windows 管理器约 34 MB,内嵌 Node;Linux 用户需按仓库文档用 Node 方式启动记忆页(README 以 Windows exe 为主叙述)。
- GitHub 上当前星标约为 1(以目录页/仓库为准),生态较新,升级前留意
package.json版本与 changelog。
结尾¶
dsh-thirdparty-memory 把长期记忆拆成五类、用相关性过滤控制注入体积,并用审阅收件箱约束自动抽取的人设内容,配合本地 SQLite 与零额外运行时依赖,适合在 DSH「一切皆插件」的生态里自建可携带的记忆层。
- 目录页:https://www.skillhub.cn/plugins/steel-dsh-memory/dsh-thirdparty-memory
- 仓库:https://github.com/steel-dsh-memory/dsh-thirdparty-memory