npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dsh-mnemon

v0.4.1

Published

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.

Downloads

22,621

Readme

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 工作流不变。参见可组合架构扩展开发指南

v0.4.0 将 Sidebar 设为记忆系统的唯一工作台入口,移除 builtin 展示模式及其设置。旧展示偏好会被忽略,不改变记忆数据;完整的 view-based 升级计划放在 v0.5,不包含在本版中。更新前请阅读升级与兼容性说明

v0.4.1 修复记忆系统和存入记忆在依赖 this 的 DSH settings store 上的渲染崩溃,以及 ZIP 导出失败和跨时区归档差异;保留 v0.4.0 工作流与既有记忆格式。详见补丁发布说明

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 与插件

Registry 安装仍以 DSH 0.1.1-rc.2 验证;其完整 profile 需要 Node.js ^22.19.0 || >=24.0.0,Node 20 缺少 rc.2 使用的宿主原语。源码兼容性也已针对仅提供源码的 DSH 0.1.2-alpha.1 预览版验证;它不是 npm 安装目标。dsh-mnemon 包本身仍为较旧且兼容的 DSH Host 保留 Node.js 20 支持。下面显式指定已发布版本以保证可复现安装;插件作者可参照 alpha 源码验证流程

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 | 显式路径的全局语义,适合团队约定或隔离环境 |

同时设置 storageScope: workspaceruntimeUserScope: global,即可让全局 USER.md 用户档案和工作区 MEMORY.md 同时进入投影。用户档案写入保持全局,项目 Runtime、Documents、Memory Spaces 与 Provider state 继续隔离;切换时不会复制或删除已有条目。

远程 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.4.1 发布说明 |

完整目录见文档中心

开发

pnpm install
pnpm run verify

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

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

许可证

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