Chuyển đến nội dung chính

dsh-mnemon

Đã xác minh

dsh-mnemon · v0.3.2 · MIT · Giao diện web

Composable three-tier memory control plane for DeepSeek Harness: persistent runtime context, searchable project documents, pluggable long-term memory, guarded strategies, WebUI, and headless tools.

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ẻ

Tác giả

Readme

dsh-mnemon

English · 简体中文

npm version npm downloads GitHub release GitHub stars License: MIT dshfind

DeepSeek Harness 的三层、可插拔、Agent 驱动记忆系统。

三层记忆 · 九种长期记忆 Provider · 一套受监督工作流

dsh-mnemon v0.2.0 多记忆体实时快照与 Provider 可观察范围

先看能力地图 · 5 分钟开始 · v0.3.2 升级说明 · 观看宽屏实机演示

dsh-mnemon 为 DSH 提供统一的记忆控制面,但不要求所有知识进入同一种数据库。运行时记忆让紧凑上下文每轮可用;项目档案保留完整叙事;记忆体按需召回长期证据,底层可选择 Mnemon、OpenViking、Honcho、Mem0、Hindsight、Holographic、RetainDB、ByteRover 或 Supermemory

Mnemon 仍是官方优先的原生引擎。可以替换的是第三层;无论选择哪个 Provider,前两层的存储、工作区和交互心智保持不变。

从 v0.3.0 开始,三层是可组合内核中的默认拓扑,不再是各入口各自写死的唯一结构。MemoryBoot 把受信任的 Layer、Adapter、Strategy、Guard 与 MemorySource 装配为一代运行图;每个用户回合固定一份轻量 TurnView:Runtime 精确内容 eager 进入 Wake,Documents 与 Memory Spaces 只给出有界路由封面,完整召回权限保留在 Host。用户仍只安装一个 dsh-mnemon,设置、工具、RPC 与 UI 工作流不变。参见可组合架构扩展开发指南

30 秒理解能力边界

层级 适合保存 如何进入 Agent 上下文 由谁管理
运行时 偏好、协作规则、项目约定、环境事实 USER.md / MEMORY.md 每轮紧凑投影 dsh-mnemon Host 确定性管理
档案 设计、调查、流程、复盘、交接材料 先检索,再按需阅读全文 dsh-mnemon Host 确定性管理
记忆体 跨会话事实、决策、实体与关系 从已激活记忆体召回有界证据 Mnemon Native 或三方 Provider

三层不是同一内容的副本。简单判断规则是:**每轮都需要的放运行时,需要完整阅读的放档案,需要跨任务按需召回的放记忆体。**当前指令、仓库文件与实时工具结果始终高于历史记忆。

点击之后,谁在工作

用户操作 实际执行方式 数据影响
检索 并发调用各 Provider 最快的原生召回路径 只读
Agent 查询 新建独立顶层任务 Agent,只接收有界证据并组织答案 只读
沉淀记忆 / 存入记忆 独立任务 Agent 判断、选路、查重、提炼;Host 控制写入 只有通过判断才写入
智能选择 硬规则先筛选,只有真实歧义才交给任务 Agent 保存路由回执
AI 维护元信息 每个选中记忆体各自启动异步任务,并使用最快采样路径 只更新本地标题与说明
归档档案 任务 Agent 先建立可检索冷引用,Host 验证后移动原文 受监督迁移
本回合记忆 展开本轮召回、写入和档案检索;点击条目精确跳转 只读

只有明确写出“任务 Agent”的行才会消耗独立模型上下文;检索本回合记忆都是确定性的 Host 读取。

任务 Agent 不会复用或挤占主对话历史,默认跟随 DSH 新建会话时的模型路由;也可以在设置 → 记忆系统 → 后台任务 Agent单独指定 Provider 与模型。该固定路由也作用于空闲复盘、写入、证据问答、Provider 选择、记忆迁移、USER 压缩、档案归档和元信息维护等受限 Mnemon worker;对话中的 Recall 与 Related 仍由 Host 直接读取,不使用后台路由。

在 DSH 0.1.1-rc.2 中,第一方 deepseek-official/deepseek-v4-flash-vision-exp 路由会标记为图片输入。Mnemon 后台任务目前仍只发送文本 Prompt;多模态对话消息在生命周期处理中保留 DSH attachment 引用,不会把原始图片字节复制到记忆。

一套记忆体工作流,九种 Provider

Provider 形态 适合场景
Mnemon 官方原生,本地 CLI + SQLite 精确写入、实体、类型关系、本地优先共享
OpenViking HTTP + viking:// 资源树与异步提炼
Honcho HTTP workspace / peers 团队与 Agent peer conclusions
Mem0 Platform 或自托管 HTTP 已有用户 / Agent 记忆
Hindsight HTTP memory bank bank、实体与 Provider 原生图谱
Holographic 本地结构化事实文件 可审计事实、信任评分、本地实体
RetainDB HTTP project / user 项目与用户双作用域画像
ByteRover 本地 brv CLI 代码知识树与 curate 流程
Supermemory HTTP container 文档摄取与容器级共享

Provider 能力差异会如实展示:引擎没有图谱边、删除语义或可枚举内容时,dsh-mnemon 不会伪造。**设置页管理可复用的 Provider 服务;记忆体页管理具体实例、激活、作用域与元信息。**三方 Provider 默认关闭。

完整差异见 Provider 能力与部署矩阵

真实 WebUI 演示

下面约 55 秒的素材来自真实的 1600×900 DSH WebUI:在完整上下滑动、页面切换、Provider 卡片、弹窗、按钮状态变化和 Agent 答案上都保留了更清晰的停留,并包含一次真正完成的只读 Agent 查询。可能改变数据的确认按钮都没有提交。

dsh-mnemon v0.2.0 完整 WebUI:上下滚动与按钮交互

观看 1600×900 MP4 · 按页面查看交互指南

5 分钟开始使用

1. 安装 Mnemon Native

Mnemon 是默认引擎,也是最简单的本地优先起点:

# macOS
brew install --cask mnemon-dev/tap/mnemon

# macOS / Linux,也可以通过 Go 安装
go install github.com/mnemon-dev/mnemon@latest

mnemon --version

Windows 推荐安装 v0.2.3 或更高版本的官方 ZIP;标准安装目录与 checksum 步骤见快速开始

2. 安装 DSH 与插件

本版本已验证 DSH 0.1.1-rc.2;其完整 profile 需要 Node.js ^22.19.0 || >=24.0.0,Node 20 缺少 rc.2 使用的宿主原语。dsh-mnemon 包本身仍为较旧且兼容的 DSH Host 保留 Node.js 20 支持。DSH rc.2 已发布到 npm 的 latestnext 标签;为了可复现安装,下面显式指定版本:

npm install -g @deepseek-ai/[email protected]
dsh --version
dsh plugin --profile web add dsh-mnemon
dsh --profile web

DSH 各 profile 的插件清单彼此独立。一次性 Headless 任务需要单独安装:

dsh plugin --profile headless add dsh-mnemon
dsh --profile headless "回答前先检查持久化的项目上下文。"

本地开发检出使用绝对路径:

dsh plugin --profile web add "link:/absolute/path/to/dsh-mnemon"
dsh plugin --profile headless add "link:/absolute/path/to/dsh-mnemon"

3. 完成第一次验证

  1. 打开记忆系统 → 状态,确认 dsh-mnemon、Mnemon Native、运行时、档案和已启用 Provider 正常;
  2. 打开记忆体 → 概览 → 创建记忆体,人工选择一个已启用 Provider;
  3. 通过沉淀记忆提交一条稳定、未来仍有用的候选;
  4. 检索先执行直接检索,再对同一个问题执行Agent 查询
  5. 回到对话,展开本回合记忆并点击一个具体工具条目。

一级页顺序刻意保持稳定:状态、运行时、档案、记忆体

沿用熟悉心智,扩展底层能力

Agent 驱动的记忆操作

受监督沉淀 有界 Agent 查询
编辑候选内容后再调度独立任务 Agent 基于多 Provider 有界证据完成只读 Agent 查询

工作台会在调度前明确展示任务边界,并把返回答案与本次证据范围放在一起。对话内的“本回合记忆”和“存入记忆”仍默认开启,可在设置 → 记忆系统 → 对话界面分别关闭。

人工创建与策略选路

明确选择底层 智能路由后续沉淀
创建记忆体时明确选择 Provider 在人工指定与智能选择之间配置沉淀策略

手动创建记忆体始终由用户明确选择。智能选择属于“沉淀策略”:硬规则定义候选范围,策略 Prompt 只在多个候选都合格时帮助任务 Agent 决策。

全局、工作区与自定义

范围 行为
global 使用 ~/.mnemon,适合多个工作区和本机 Agent 共享控制面
workspace 使用 <workspace>/.mnemon;支持工作区跟随的本地 Provider 会随有效工作区切换
custom 显式路径的全局语义,适合团队约定或隔离环境

远程 Provider 的 workspace、user、bank、project、container 与 URI 保留自己的命名空间;切换 DSH 工作区不会暗中改写。工作区模式下,工作台可以查看一个选定工作区,而当前会话继续使用自己的 cwd;从工作台启动的独立任务 Agent 使用查看工作区,即使没有选中主会话也能正确执行。

Web、对话与 Headless 使用同一套系统

表面 可用能力
Sidebar WebUI 状态、运行时、档案、记忆体、Provider 服务、可视化与确认入口
对话内 UI 本回合记忆、存入记忆、精确跳转对应页面
Headless 没有 WebUI,但保留运行时注入、档案检索、记忆体工具、工作区路由与受监督写入
命令 /mnemon statusrecallrelatedrememberforget

数据与安全边界

  • 运行时和档案是本地确定性存储;Mnemon Native 默认本地,三方 Provider 必须显式启用。
  • Provider 凭据以 mode 0600 保存在 <storageRoot>/state/memory-providers.json,不会返回浏览器、智能选择 Agent 或 Mnemon Pack。
  • Host 调用使用参数数组并禁用 shell,同时约束输出、超时、取消、schema、路径、锁与 revision。
  • 关闭 Provider 只清理本地目录元数据,不删除远程数据;重连时从 Provider 重建,无法映射的字段才使用本地默认值。
  • 切换范围不会自动迁移、合并或删除旧根目录。
  • 当前没有确定性 secret scanner;任何层级都不应保存 key、token、私钥或原始敏感日志。
  • 卸载插件不会删除本地或远程记忆数据。

备份、恢复与故障诊断见运维、安全与故障处理

文档地图

我想要…… 从这里开始
看清完整产品边界 能力地图
安装并验证第一次工作流 快速开始
跟随所有可见点击与 Agent 行为 Sidebar 与对话交互指南
比较或部署九种 Provider 长期记忆 Provider
理解分层与生命周期 存储模型 · 工作流
配置范围、路由与模型 配置参考
备份、更新或排障 运维指南
接入工具、命令或 RPC 接口参考
开发 Layer、Adapter、Strategy、Guard 或 MemorySource 扩展 扩展开发指南
查看本次升级 v0.3.2 发布说明

完整目录见文档中心

开发

pnpm install
pnpm run verify

verify 会执行 TypeScript 检查、Vitest、可复现双构建、隔离的真实 Headless profile 激活检查与发布包验证。lib/ 是生成产物,故意不进入版本库。

提交 Issue 或 Pull Request 前请阅读贡献规范English)并使用双语仓库模板;缺少必填信息的报告和 PR 描述会被双语自动化规则拒绝。

许可证

MIT。安全问题请通过 SECURITY.md 私下报告,不要公开提交 issue。