前言¶
在 DeepSeek Harness(DSH)里做智能体或长对话开发时,常见问题是:新开一轮对话就丢掉偏好、约定和踩坑记录,只能反复口头交代上下文。把「值得长期保留的结论」落到本机、并在后续对话里自动召回,是比每次粘贴长 system prompt 更稳的做法。dsh-nodal-memory(上游仓库包名 dsh-local-memory,v2)面向 DSH 桌面配置,也提供可双击运行的独立界面,数据默认只在本机、可不联网使用。
这是什么¶
- 目录标识:SkillHub 上的 2132774831/dsh-nodal-memory,分类为记忆;维护者 2132774831。
- 一句话:DeepSeek Harness 纯本地长期记忆 v2——SQLite 存储、中文二元组检索、记忆关系图、可选语义检索;也能当独立软件运行。
- 版本与许可:
package.json中为 2.6.1,MIT;v1 已停更,旧版见 dsh-memory-plugin。
核心功能¶
跨对话落盘与召回¶
插件让对话中产生的长期结论写入本地库,后续会话由宿主侧自动回忆 / 自动存储(具体工具与路由在 src/host/)。默认不调用大模型、不需要 API key;数据路径为 ~/.dsh/dsh-local-memory.db,插件与独立软件共用同一库。
中文检索(二元组 + FTS5)¶
SQLite FTS5 默认分词对中文不友好;v2 写入时额外生成二元组切分列(例:我喜欢吃牛肉面 → 我喜 喜欢 欢吃 吃牛 牛肉 肉面),两字词可命中且减少过度匹配。排序为:
score = relevance × importanceFactor × decay × usageBoost
decay 按类别设半衰期(工作 365 天 / 偏好 730 天 / 情感 60 天);usageBoost 用对数抑制高频霸榜;陈旧条仍可搜到但后移,精确命中不丢弃并可标记时效警告。
类别与补标¶
写入时按本地词表粗分 工作 / 偏好 / 情感,证据不足为「未分类」;类别影响半衰期。DSH 设置里「本地记忆」分区可做列表与补标;误判可在补标页修改。
记忆关系图¶
五种确定性关系自动连线(无需 API key):共现(同次检索同时命中)、共享标签(idf 加权)、语义相近(向量余弦,需可选 embedding)、同项目、时间相邻。界面支持力导向聚簇、孤立与疑似冲突标记。
直觉页¶
「该想起的」侧重重要且久未使用;「疑似冲突」只给候选与理由,不自动改数据。
一套 UI、两个入口¶
关系图、卡片、联想、直觉、设置等完整界面只在独立软件 app/ 维护。DSH 插件侧为轻量设置 +「打开完整记忆界面」:宿主 /dsh-local-memory/open 检测实例、必要时用 DSH 自带 Node 拉起服务再跳转;单实例锁、闲置约 10 分钟自动关闭(上游 DSH 退出后,有轮询请求则暂不收)。
可选语义检索¶
关闭时关键词检索照常。开启后在设置页配置 OpenAI 兼容 embedding 端点(例:https://api.siliconflow.cn/v1,模型 BAAI/bge-m3);仅发送记忆正文与查询词。DeepSeek 官方无 /embeddings,其 key 不能用于此处。失败自动降级为关键词检索。
安装与启用¶
作为 DSH 插件¶
装完后必须重启 DeepSeek Harness(运行中实例不热加载插件)。
# 从本地目录
dsh plugin --profile desktop add <本仓库绝对路径>
# 或从 tarball
dsh plugin --profile desktop add ./dsh-local-memory-2.0.0.tgz
重启后在 DSH 网页端 → 设置 → 左侧 「本地记忆」(settings.section,order 28)。
作为独立软件¶
node app/server.mjs --open
或双击仓库内 启动记忆软件.cmd(压缩包中为 start.cmd)。端口由系统分配,实例信息写在 ~/.dsh/local-memory/instance.json。首次启动自动建库。
从 v1 迁移:
node scripts/migrate-v1.mjs --from ~/.dsh/dsh-local-memory.json
运行环境:engines.node 要求 >= 20。
典型用法¶
- 安装插件并重启 DSH,在设置 → 本地记忆查看列表或补标。
- 需要关系图 / 直觉页时,点「打开完整记忆界面」,或单独运行
node app/server.mjs --open。 - 需要「换说法也能搜到」时,在独立软件设置页填 embedding 端点,再执行「给历史记忆补向量」。
配置与数据位置:
| 项 | 位置 |
|---|---|
| 记忆库 | ~/.dsh/dsh-local-memory.db |
| 插件配置 | ~/.dsh/dsh-local-memory.v2-config.json |
适用场景与注意¶
适合:希望 DSH 对话跨项目保留本机记忆、又要在浏览器里管理关系图与冲突候选的开发者;也可不装 DSH,仅用独立软件管理同一格式数据。
注意:
- DSH 插件在当前 dsh 进程权限下运行;安装前请自行审阅 GitHub 源码 与 MIT 许可证。
- SkillHub 为社区目录,与 DeepSeek / 幻方无官方从属关系;安装命令以上游 README 为准,勿凭仓库名臆造
dsh plugin add github:...形式。 - v2 暂不提供 v1 的 Markdown / Kun / Hermes 导入导出;需可先 v1 导出再
migrate-v1.mjs。 - 可选语义检索会访问你配置的兼容端点,其余默认不联网。
结尾¶
dsh-nodal-memory 把长期记忆固定在 SQLite、用二元组改善中文检索,并用关系图与直觉页做本地可解释的联想与冲突提示;插件负责接口与跳转,完整界面与单实例生命周期由独立软件统一维护。查阅目录页 SkillHub 与仓库 GitHub 获取最新说明与发布包。