dsh-memory-system 使用指南
为 DSH 提供本地优先的跨会话持久记忆,零外部依赖,Markdown 存数据,写入需确认。
本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。
本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。
快速上手
dsh-memory-system
— 源: plugin_wiki.wiki_content
安装与验证
dsh plugin --profile web add @zhujunpeng12/dsh-memory-system
复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。
— 源: plugins.install
关键要点
- 在默认位置
~/.dsh-memory/创建记忆库骨架(memory/{events,index}+projects/+ 空user_profile.md/rules.md),控制台打印已初始化记忆库于 ...; - 该会话首轮自动注入热记忆包(画像/规则/项目摘要/近期事件),开箱即有记忆。
memory_write默认是 dry-run(预览):不显式apply=true且经用户确认,不落盘。「Agent 说记下了」≠ 真写入了——需要时用memory_gate/查看 events 文件确认。- 冷召回是 BM25 关键词检索,不是语义向量:适合精确/近精确匹配(专有名词、代码、日期、明确主题),对同义改写、长尾表达、跨语言召回有限;向量检索默认关闭(零依赖代价)。
- 单写者租约锁:同一记忆库同一时刻只有一个写者,多 Agent 并发写会串行化(等锁)。不适合多 Agent 高频同时写同一个记忆库——多写者场景请拆分记忆库或错峰。
— 源: plugin_wiki.readme_zh (fallback readme_raw)
常见问题
这个插件和 DSH 自带的会话记忆有什么区别?
DSH 默认会话之间是失忆的;本插件把每次会话产生的规则、项目笔记、纠正等"事实"沉淀到本机 Markdown(默认 ~/.dsh-memory),下次新会话开始时自动注入一个 ≤14KB 的"热记忆包",需要时再按需召回历史细节,整套数据存你自己电脑里,无需数据库或外部向量服务。
记忆数据存在哪里?会泄露到云端吗?
默认存储在用户主目录的 ~/.dsh-memory/ 目录下,是普通 Markdown 文件夹,仓库本身不含任何个人数据。如需可视化可以设置 MEMORY_VAULT 环境变量指向你自己的 Obsidian Vault,所有读写都发生在你本机。
安装后还要手动配置什么吗?
首次运行会自动创建 ~/.dsh-memory/ 骨架(包含 memory/events/index/projects 等子目录和空的 user_profile.md/rules.md),无需任何手动配置。如要切换到 Obsidian 模式或自定义路径,再设置 MEMORY_VAULT 和 DSH_HOME 环境变量。
Agent 会偷偷修改我的记忆文件吗?
不会。所有写入操作(memory_write)默认是 dry-run(预览),只在用户明确确认并设置 apply=true 时才真正落盘;写入还有 30 秒租约锁、SHA-256 前置条件、before-image 备份、提交回执四层保护,纠错必须 supersedes 原条目且不覆盖历史 raw 流水。
必须装 Python 才能用吗?
是的。记忆引擎由 Python 标准库脚本实现(无需 pip 安装任何包),要求 Python 3.10+ 且命令名可用为 python;如果你的可执行文件名是 py 或 python3,启动 Harness 前设置 PYTHON 环境变量指向它。
怎么卸载?会留下残留文件吗?
在 web profile 目录执行 npx @deepseek-ai/dsh plugin --profile web remove @zhujunpeng12/dsh-memory-system 即可卸载插件本身;插件不会删除 ~/.dsh-memory/ 下的记忆数据,卸载前如不再使用需自行备份或手动删除该目录。
需要 Obsidian 吗?
不需要。默认就是普通本地 Markdown 文件夹,用任何编辑器都能查看;只有想用 Obsidian 双链、关系图谱等可视化功能时,把 MEMORY_VAULT 指向你的 Vault 即可切换到 Vault 模式,模板在 templates/vault/ 里。
冷包召回能不能理解同义改写?
不能。冷召回基于 exact 匹配 + 中文 bigram BM25 + 元数据重排,适合精确/近精确匹配(专有名词、代码标识符、日期、明确主题);同义改写、长尾表达、跨语言召回能力有限,向量语义检索默认关闭以保持零依赖。
— 源: plugin_wiki.faq_json
兼容性
- DSH: 0.1.0-rc.7
- Node: 22 或 24(>=22)
— 源: plugin_wiki.compatibility_json
踩坑提醒
安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。
— 来源:通用规则