用 mnemon 给 DeepSeek Harness 智能体补上图结构持久记忆

前言

DeepSeek Harness(简称 dsh)把模型、工具、技能、会话、沙箱、存储、循环、调度和 UI 都做成可替换插件,官方说法是「一切皆插件」。装好 Node.js 之后,可以用下面这条命令拉起网页界面:

npx @deepseek-ai/dsh web

Harness 解决的是「智能体怎么在真实环境里持续干活」。会话一结束、上下文一压缩,昨天刚拍板的技术决策、项目约定和「为什么不那么做」往往就没了。下一轮对话里,模型又会把同样的问题问一遍,或者给出一份和上周结论打架的方案。这不是模型不够聪明,而是记忆没有落到会话之外。

社区目录把这类能力归在「记忆」分类。mnemon 走的不是「再塞一个模型进记忆管线」,而是把宿主 LLM 当成监督者:二进制负责存储、图索引、检索和衰减,模型只判断记什么、怎么关联、何时忘掉。本文按社区目录详情页、GitHub 仓库 README / 中文说明 / docs/USAGE.md / package.json / cordis.patch.yml,以及 DeepSeek Harness 官方仓库 交叉核对后整理。

需要先说清楚来源:社区插件目录 deepseek-harness-plugin.com 是独立站点,与 DeepSeek / 幻方没有官方从属关系,不要把它当成官方应用商店。截至 2026-08-17,GitHub 仓库 mnemon-dev/mnemon 为 463 星;目录页标注 443 星、分类为「记忆」,并标为精选。仓库 LICENSE 与目录页均为 Apache-2.0;根目录用于 DSH 安装的 package.json 另外写了 MIT,安装前以仓库原文为准。GitHub 当前正式发行为 v0.2.3(2026-08-16)。

这是什么

一句话:mnemon 是由 mnemon-dev 维护的 LLM 监督式 智能体持久记忆——本地一份 SQLite 图存储,跨会话保存决策、事实和理由,再用图结构做召回,而不是靠关键词硬匹配。

它首先是一个 Go 写的本地二进制,数据默认落在 ~/.mnemon,不要求额外 API Key。记忆路径保持「一个可执行文件、一条安装命令」。同一份仓库也带了 DSH 安装入口:根目录 package.json 的包名是 @mnemon-dev/dsh-mnemon,依赖社区包 dsh-mnemon,再用 cordis.patch.yml 把插件挂进当前 profile。

目录里同时收录了另一个插件 dsh-mnemon(维护者 omdsh-dev)。仓库 README 写明:DSH 侧通过 dsh-mnemon 把运行时热记忆、受管项目文档和 Mnemon 长期记忆体叠成三层;mnemon-dev/mnemon 本身也可以作为 GitHub 安装源。本文写的是目录页上的 mnemon,安装命令以该详情页原文为准。

核心功能

按仓库 README 和 docs/USAGE.md,已经核实的能力可以分成下面几块。

1. LLM 监督,而不是再嵌一个模型

多数记忆工具会在管线里再跑一遍 LLM,用来抽取、打分或改写。Mnemon 把判断留给你正在用的宿主模型:二进制做确定性计算(存储、图索引、搜索、衰减),模型决定记什么、怎么连边、何时遗忘。仓库把它和另外三类做法并列:管线内嵌 LLM(如 Mem0、Letta)、会话开始时注入文件(如 Claude Code Memory)、以及通过 MCP 提供工具(如 claude-mem)。

协议面只有三个原语:rememberlinkrecall。命令名对应「记住 / 关联 / 回忆」,输出是带信号透明度的结构化 JSON,而不是原始数据库行。

2. 四图,而不是扁平清单

记忆不是一条越来越长、越来越容易被忽略的笔记列表。引擎按 MAGMA 的四图模型组织边:

  • 时序(temporal)
  • 实体(entity)
  • 因果(causal)
  • 语义(semantic)

召回默认走意图感知的图遍历,可选叠加向量搜索(RRF 融合)。没有 Ollama 时,核心的 remember / recall / link 和图遍历仍然可用;装上本地 Ollama(文档默认模型是 nomic-embed-text)后,召回锚点会变成关键词 + 向量 + 时效的混合。目录页把这一点概括成:智能体像翻自己的笔记那样顺着关联找事实,适合上下文是关系型而不是扁平型的项目。

3. 写入时去重,长期有衰减

remember 自带 diff:重复则跳过,冲突则自动替换。保留度会随重要性衰减、访问次数提升,并提供垃圾回收。默认所有会话共用名为 default 的 store;也可以按项目建命名 store,用 --store、环境变量 MNEMON_STORE~/.mnemon/active 切换。

4. 在 DSH 里怎么接

仓库 README 对 DeepSeek Harness 的说明是:宿主机先装好 mnemon 二进制,再把插件加进 Web profile。装好后到「设置 → 插件配置 → Mnemon」选存储范围,在会话的「记忆系统」Tab 里创建或激活记忆体。召回只读已激活的记忆体,持久写入经由受监督的子 Agent 执行。

仓库里的 cordis.patch.yml 默认挂载 id 为 mnemon、name 为 dsh-mnemon,并打开路由指引、生命周期、引导式召回/回写、记忆 Tab 和写入开关,默认召回条数是 10。

安装与启用

目录详情页给出的安装命令是:

dsh plugin add github:mnemon-dev/mnemon

在 DeepSeek Harness 终端里运行即可。dsh CLI 会从 GitHub 解析插件并装进当前配置。如需可复现安装,按目录页说明固定 commit 哈希:

dsh plugin add github:mnemon-dev/mnemon#<commit>

仓库 README 补充了 Web profile 写法,以及「先装二进制、再加重启」的顺序:

dsh plugin --profile web add github:mnemon-dev/mnemon
dsh --profile web

宿主机上的 mnemon 二进制需要单独安装。仓库给出的方式包括:

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

# macOS / Linux / Windows(需 Go 1.24+)
go install github.com/mnemon-dev/mnemon@latest

# 从源码(macOS / Linux)
git clone https://github.com/mnemon-dev/mnemon.git && cd mnemon
make install

装完可用 mnemon --version 确认。Windows 支持核心 Memory 命令;仓库另有一套名为 Agency 的 Preview 能力,目前在 Windows 上不可用,也和本文说的记忆路径分开,这里不展开。

目录页和仓库都提醒:插件以当前 dsh 进程的权限运行,安装时可能执行代码。安装前检查源代码仓库和许可证。

典型用法

仓库强调:日常使用时,你通常不亲手敲 mnemon 命令,而是由智能体在 guide 判断「这段记忆有用」时去调。docs/USAGE.md 把 CLI 标成理解、调试和高级手工操作的参考。下面几条都来自官方文档,可以用来核对智能体到底在写什么、读什么。

写入一条架构决策:

mnemon remember "Chose Qdrant over Milvus for vector search" \
  --cat decision --imp 5 --entities "Qdrant,Milvus" --tags "architecture,search" --source agent

--cat 可选 preferencedecisionfactinsightcontextgeneral,默认 general--imp 是 1–5 的重要性,默认 3。

按意图召回(默认紧凑 JSON,适合给模型看):

mnemon recall "vector database" --limit 10
mnemon recall "why did we choose Qdrant" --intent WHY
mnemon recall "auth" --cat decision --source agent

需要完整信号、元数据和时间戳时加 --verbose。只想做 SQL LIKE 匹配、不做图遍历时加 --basic

按项目隔离记忆:

mnemon store create work
mnemon store set work
MNEMON_STORE=work mnemon recall "query"

在 DSH 网页里,对应操作是:打开插件配置选存储范围,再在「记忆系统」Tab 激活记忆体。目录页的实用提示是:把它当记录系统而不是缓存——把决策和理由喂进去,图上的连接才有意义,召回质量才能维持。如果还想把对话历史蒸馏进同一份存储,目录页建议搭配 distill

可选地,本地装好 Ollama 并拉取 nomic-embed-text 后,可用 mnemon embed --status 看覆盖率,用 mnemon embed --all 给已有条目补向量。没有 Ollama 时,系统会在运行时探测(文档写明超时 2 秒),并把相似度权重重新分给关键词和图信号,不需要单独开「降级开关」。

适用场景与注意事项

目录页列出的场景和仓库定位一致,适合下面几类工作:

  • 同一个代码库上连续做几周的智能体:图里积累的是项目理解,而不是一条会被忽略的扁平备忘。
  • 上下文是关系型的复杂项目:召回要顺着实体、因果和语义走,而不是只做关键词命中。
  • 个人或小团队的知识层:项目、决策、理由——也就是会话结束或人员离开时最容易丢掉的那类东西。

使用时注意这几条已经能核对到的边界:

  1. 这是社区开源项目,不是 DeepSeek 官方插件。DeepSeek Harness 目前仍是开发者预览,官方 README 写明会有破坏性变更。
  2. 插件以当前 dsh 进程权限运行。安装前阅读源码和许可证;生产环境应固定 commit,而不是一直追 latest
  3. 仓库 LICENSE 为 Apache-2.0;根目录 package.json 标注 MIT。两者并存时,以你实际装到的文件为准,不要只看目录页一行摘要。
  4. DSH 侧召回只读已激活的记忆体;持久写入走受监督子 Agent。没有激活记忆体时,不要指望「装上就会自动记住一切」。
  5. 默认 store 会在会话之间共享。需要隔离时用命名 store 或 DSH 里的存储范围,避免把不同项目的决策写进同一张图。
  6. 向量增强依赖本机 Ollama,不是必装项。切换嵌入模型且输出维度不同时,仓库提醒现有向量会失效,需要回填。
  7. 目录里的 dsh-mnemon 是另一条安装源(github:omdsh-dev/dsh-mnemon)。两者相关,但维护者和许可证不同(后者目录页为 MIT)。按你要装的那条命令操作,不要混用名称去拼接。

小结

智能体要在同一个项目上连续工作,缺的往往不是更多提示词,而是一份能跨会话保存、并能按关系召回的记忆。mnemon 把这件事收成「宿主 LLM 做判断、本地二进制做存储」:四图索引、三个原语、零额外 API Key。在 DeepSeek Harness 里,目录页的入口就是把这个 GitHub 仓库加进当前配置,再在插件配置和记忆系统 Tab 里选范围、激活记忆体。

目录详情页:https://deepseek-harness-plugin.com/zh-CN/plugins/mnemon/

GitHub 仓库:https://github.com/mnemon-dev/mnemon

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜