dsh-mnemon
Đã xác minhdsh-mnemon · v0.5.27 · MIT · Giao diện web
Composable, view-based memory for DeepSeek Harness. Pluggable sources and strategies, with layered memory out of the box.
Cài đặt
dsh plugin add dsh-mnemon Xác nhận layer đã áp bằng dsh --profile default --dump-config — xem hướng dẫn cài plugin.
Mã nguồn
Phát hành lên npm mà không có repository công khai. Hãy kiểm tra nội dung package trước khi cài.
Thẻ
- agent-memory
- context-management
- cross-session-memory
- deepseek-harness
- deepseek-harness-plugin
- document-search
- llm-memory
- long-term-memory
- memory-orchestration
- memory-provider
- multi-agent-memory
- persistent-memory
- pluggable-memory
- project-documents
- project-memory
- runtime-memory
- semantic-recall
- shared-agent-memory
- working-memory
Tác giả
Readme
dsh-mnemon
English · 简体中文
面向 DeepSeek Harness 的可组合视图记忆。
记忆来源与策略可插拔,开箱即用提供分层记忆。
为什么需要 dsh-mnemon
每次会话都从零开始的 Agent,会反复询问你早已说过的事情;把所有内容塞进同一个记忆库也不行,要么每轮都被淹没,要么漏掉真正要紧的信息。dsh-mnemon 为 DeepSeek Harness 提供分层、可见、可组合的记忆。
- 每一轮都拿到合适的记忆。 偏好和工作中的事实常驻上下文;项目档案与长期证据只在问题需要时才检索。
- 看得见这一轮用了什么。 每条回复下方的回合记忆栏列出这一轮读到和写入的档案与记忆,点一下就在记忆系统中打开它;记忆系统展示全部已保存的内容,并可直接编辑。
- 一键存入记忆。 对话里出现值得保留的事实,点击回复下的脑形图标,由任务 Agent 去重、提炼并写入合适的记忆空间,也可以直接存到你选择的位置:工作记忆、用户画像或某个记忆空间。回执写明存到了哪里。
- 在插件页组合。 选择一个主策略和若干可选增强,切换时无需迁移任何数据;每个组件都有自己的设置页。
- 数据放在你想放的地方。 默认由 Mnemon Native 在本地保存,也可以接入八种第三方 Provider;存储范围可选全局、按工作区或集中存储,并支持 ZIP 备份。
- 可以扩展。 Source 与 Strategy 都是基于公开 SDK 的普通 DSH 插件;安装的组件与随附组件拥有同样的页面和开关。
看看实际效果
以下录屏来自真实 WebUI,由真实的 DeepSeek 模型作答,项目是预置的虚构项目 Lumen;等待模型的片段加速播放,画面右下角有标记。
把新事实存进记忆。 回复中出现了新的测量结果:点击回复下的脑形图标,把候选内容改成要记住的那一句,交给任务 Agent;回执写明存进了哪个记忆空间,一键即可查看。
在一处查看全部记忆。 状态、运行时记忆、项目档案与记忆空间集中在记忆系统中;图谱按实体把记忆连接起来,Agent 查询给出按内容引用记忆的回答。
在插件页组合记忆。 一个主策略、它的记忆来源与可选增强,每个开关即时生效;每个组件都有自己的页面,存储、备份与界面设置也在这里。
更多画面与每一步的说明见界面指南,全部截图、录屏与采集环境见 v0.5.19 图集。
三类记忆
| 记忆 | 适合保存 | 如何进入 Agent 上下文 |
|---|---|---|
| 运行时记忆 | 偏好、协作约定、下一轮就需要的事实 | 每轮以紧凑的 USER.md 与 MEMORY.md 注入 |
| 项目档案 | 设计、调查、流程与交接材料 | 先检索,相关时再阅读全文 |
| 记忆空间 | 长期事实、决策、实体及其关系 | 按需从已启用的 Provider 召回 |
默认的分层策略让运行时记忆常驻,另外两类按需读取;通用策略在同一份预算内提供全部可用来源,由模型决定如何使用。记忆空间是由 Provider 承载、可以独立命名和激活的长期证据范围,英文界面称 memory space。
快速开始
第一次使用 DSH?安装与启动从一台空白电脑一直带你到第一条记忆,每一步都有截图。简要步骤如下,需要 Node.js 22.19 或更高:
npm install --global pnpm
npx @deepseek-ai/dsh web
- 在打开的页面中点击插件 → 添加插件,输入
dsh-mnemon,点击安装,再点击立即启用。 - 在侧栏打开记忆系统,“状态”页列出每个记忆组件和 Provider。
- 在对话中说一句需要记住的话。回复下方的回合记忆栏列出这一轮读到和写入的记忆,脑形图标可以把回复存入记忆。
- 使用记忆空间时,可用
npm install --global @mnemon-dev/mnemon安装 Mnemon Native 所需的 CLI,或在记忆空间页面启用其他 Provider。 - 在插件 → 可组合记忆中选择主策略与增强。
dsh-mnemon 支持 DSH 0.2.0-rc.2(npm latest 与 next)与 0.1.7-rc.2。同一个包也用于桌面版的插件页、命令行 dsh plugin --profile web add dsh-mnemon,以及 Headless:dsh plugin --profile headless add dsh-mnemon;更早的宿主请继续使用 v0.5.16。接下来可以看快速开始,已有安装的升级见兼容性与升级。
工作原理
- Source(记忆来源) 拥有记忆及其操作:运行时记忆、项目档案和记忆空间,Provider 是记忆空间的子模块。
- Strategy(策略) 决定可用的 Source 如何参与一轮对话:哪些常驻、哪些可以检索、使用哪些工具和预算。增强通过标准插槽为它补充能力。
- Core(核心) 把结果校验为本轮唯一的不可变 View(上下文视图),DSH 宿主将它固定到这一轮并控制工具访问。
随附插件与外部仓库使用同一套公开契约。架构说明了归属关系、回合生命周期,以及组件可以贡献内容的界面区域。
官方插件
Starter 固定一组经过测试、各自独立版本的包。同一时间只运行一个主策略;增强在你打开之前保持关闭。
| 包 | 作用 | 默认 |
|---|---|---|
| dsh-mnemon-source-runtime | 运行时记忆:USER.md、MEMORY.md、修订与本地热存储 | 开启 |
| dsh-mnemon-source-documents | 项目档案:Markdown、检索、修订与归档 | 开启 |
| dsh-mnemon-source-memory-spaces | 记忆空间:长期证据及其 Provider | 开启 |
| dsh-mnemon-strategy-default-three-tier | 分层策略:运行时记忆常驻,其余按需读取 | 选中 |
| dsh-mnemon-strategy-general | 通用策略:全部可用来源共享一份预算 | 关闭 |
| dsh-mnemon-strategy-auto-capture | 主动记录:在回合中提示保留有用的事实 | 关闭 |
| dsh-mnemon-strategy-light-context | 轻量上下文:为常驻内容设置共同上限 | 关闭 |
| dsh-mnemon-strategy-scoped | 范围组合:按顺序选择来源,并限定可写子集 | 关闭 |
记忆空间 Provider:Mnemon Native(默认,本地)· OpenViking · Honcho · Mem0 · Hindsight · Holographic · RetainDB · ByteRover · Supermemory。第三方 Provider 在配置前保持关闭;图谱、删除与枚举能力因后端而异。详见 Provider 指南。
自己动手扩展
用 dsh-mnemon/extension-sdk 定义 Source 或 Strategy,通过标准插槽编写增强,或用 dsh-mnemon-source-memory-spaces/provider-sdk 编写记忆空间驱动。组件还可以把自己的设置和状态卡片加入 dsh-mnemon 的页面。你的仓库自己负责清单、依赖、测试与构建;DSH 负责安装和挂载,是否把它选为主策略是另一个独立决定。
从插件开发指南开始。新能力与新 Provider 请先在 Issue 中讨论,再提交 PR,详见 CONTRIBUTING。
数据与信任
- 运行时记忆与项目档案是本地文件,Mnemon Native 也在本地;第三方 Provider 使用各自的服务与作用域。
- 关闭组件不会删除其中的记忆,更换存储位置也不会搬移数据;需要迁移时使用 ZIP 备份。
- Git 同步把同一份 Mnemon Pack 载荷以可读文件发布到你自己的仓库,另一台机器可以拉取。用 GitHub 登录后可从已有仓库中选择或新建一个;token 字段保留为选填。push 与 pull 都会先要求确认;
writeEnabled=false时两个方向都会被拒绝。自动备份可以选择间隔(关闭,或数小时到一周),选择即保存:后台随后重复同一条已确认的 push,途中会把远端分支读进本机;每次推送都会把镜像的零散对象收进一个 pack,让 clone 保持小体积。备份历史打开一个弹窗:上半按每次备份携带的 manifest 列出分支历史——时间、机器、组件——下半是逐条记忆差异,检查远端打开的是同一个弹窗。差异分成三类:同一主题两边写法不同(只有这类需要让 AI 整理,方案先以待审查建议出现,可以满意,通过后采纳并执行,也可以留下意见——已拒绝的方案要先重新打开,你的意见才会进入下一次整理)、只在远端(没有冲突时直接新增即可)、只在本机(推送后即可共享)。整理记忆可以填写你的要求,并会看到分支持有而本机没有的条目;已接受的方案可以逐条勾选执行,因此可以只采纳其中一部分。 - 已保存的 Provider 凭据只留在宿主上,不会被导出;但备份仍包含私有记忆,请妥善保护。
- Source 与 Strategy 是受信任的进程内 JavaScript,不是沙箱代码;历史记忆永远不会凌驾于当前指令之上。
开发与验证
pnpm install --frozen-lockfile
pnpm verify
pnpm verify:plugins
需要 Node.js ^22.19.0 || >=24.0.0 与 pnpm。node scripts/serve-e2e.mjs 会启动一个用后即弃的真实 WebUI;加上 --docs-demo 即可得到这些截图背后的示例项目,再加 --live-model 则由 DeepSeek API(读取 DEEPSEEK_API_KEY)真实作答。机制测试不代表模型准确率,也不代表云端 Provider 的实际表现。详见开发与验证。




