DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

xthingillu-sketch /

xthingillu-sketch/dsh-mnemos-continuity

Verified

Cross-model continuity for DeepSeek Harness: memory, skills and rules in local files

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHubProject homepage
READMESource: main@4e8c758f

Mnemos

English | 中文

装进 DeepSeek Harness 的一个插件:不是给 AI 一个更大的记忆库,而是让记忆在换模型、换会话之后还能被高效用上。

最终目标:这类任务做过一次之后,下次不查记忆也能做对。

存多少不是重点。重点是:换个模型接着干时,它知道该取哪几条、按什么用、用完怎么留下新的判断 —— 记忆存在你能查的文件里,推理模型只是可以换掉的部件。

一句话:它想让"判断"能被人查、被人质疑、也能被推翻 —— 而不是看完就忘、错了也没处追。

DeepSeek Harness(下称 DSH)是什么:一个在你自己电脑上跑 AI 助手的环境 —— 负责会话、工具和插件, 有桌面客户端也有命令行两种用法。Mnemos 是装进它的一个插件,不是独立软件,也不能用在网页版或手机 App 上。

先确认自己有没有 DSH(30 秒):打开终端敲 dsh --version —— 出版本号就说明你已经有了; 没有的话,去 DeepSeek 官方渠道获取(本页只讲这个插件,不讲怎么装 DSH)。 已经装过 DSH 的,可以直接看 INSTALL.md。

名字说明:项目叫 Mnemos,npm 包名是 dsh-mnemos-continuity。 DSH 生态里另有一个也叫 dsh-mnemos 的项目(别人写的,思路不同、不是同一套东西)—— 我们这个名字里的 continuity 指的就是本项目的重点:换会话、换模型之后,判断还能接着用。

它到底能带给你什么

写给已经在用 DSH 的人。 六件事,都用人话说。为什么能做到、有哪些机制、代价是什么 → 见《简介》。

① 换个对话继续任务,前面的结论能直接接上

记忆不绑在某个对话窗口上。换一个会话、换一个目录都行:新开个对话说一句"继续之前的 X", 它会把之前的重要结论找回来,接着往下做 —— 不需要记任何编号。

想接得更准(任务做到一半、怕接错)时,回原来的对话里说一句"给我一个续接方案" —— 它会把这个任务的状态整理成一份记录、并给你一个任务号;下次直接拿它精确接上。

边界:没写下来的等于没发生;不同 profile(DSH 的配置分组,例如 desktop / web)默认不共享。

② 多 agent 协作:交接不靠"把对话贴过去",而是靠记忆精确交接

让几个助手同时干活时,常见做法是把前面的对话、背景整段贴给它们 —— 又长,又容易把过时的东西带过去。

这里的做法是:任务先写进记忆,子代理按任务编号去读它需要的那部分;做完把结论交回同一条任务记录上。 不需要一大段对话来"交接",交的是一份精确的任务与结果。

于是你能得到:

  • 交接是精确的:子代理拿到的就是任务本身,不是一段被剪切、可能已过时的对话;
  • 成果不散:几路的结果归到同一份任务记录上,事后按编号能一次取全;
  • 没做完的不会被当成做完:哪一路没交回结论,会如实标出来;忘了收尾的任务也不会一直挂着。

③ 任务图:跨会话也知道"做到哪、依据什么"

任务图不是多 agent 专用,也不只是待办清单;它是任务的档案/寻址空间。

它不是把原文存进去,而是存"地址":记忆 id、依赖 id、结论 id、前序图 id;正文留在原记忆,删了被引用的记忆,图里那条也随之消失。

  • 什么时候开:会跨会话、会被折叠后接着做、或会产出多条以后要找的记忆时;单步小事直接写记忆,别开;
  • 记什么:已完成里程碑(done)、依赖(uses)、前序图(links)、重要结论的 id(conclusion 标签);不复制正文;
  • 不记什么:未完成步骤仍用宿主 todo;图和任务清单不要互为镜像;
  • 跨会话:开新图,用 links 链接旧图并写清"为什么接上它",不改旧图;
  • 好处:换会话/换模型后,能说清"哪块做完了、用了什么、结论在哪";收尾时汇成一条任务结果,连同会话存档保留。

④ 外面来的东西留下出处,而不是被当真

外部来的内容进来时会永久留下来源。以后被查到时,它可以被质疑、可以被推翻 —— 但不会被当成事实。

⑤ 聊天太长被截断时,东西不会凭空消失

上下文被截掉一段时,插件把被遮蔽区域抽成一张事实卡,并在提醒里直接带最多 3 条负面结论/工具失败;原文仍在会话日志。 它保证"关键事实不被默默吞掉、事实卡可查",不保证模型一定去 open;事实卡 7 天后自动清理。

⑥ 关掉对话、换掉模型,它还是同一个它

"它是谁、做过哪些决定、为什么这么选"记在文件里,不在模型的权重里。 代价:能留下来的是判断与来由,不是说话的方式 —— 换了模型,风格会变。

也说清它不是什么

  • 不是以记忆库 / 召回质量为主卖点:记忆是底座;我们评价的是判断能否跨会话延续、能否被审计;
  • 不是事实引用层:把每条事实引回原始日志是另一类方案,我们不重复造;普通记忆没有逐条日志引用,这是已知边界;
  • 不是完整记忆栈 / 多 agent 共享层:那是另一类方案的地盘,可以组合,不是替代;
  • 不是会自己长大的 agent:技能要提议、要独立验证、可回滚;"不修改"也是有效结论;
  • 不是成熟产品:部件齐备、有会真的失败的回归检查,但只有一个人、一台机器的实证。

一次真实的崩溃:会话坏了,但结论没丢

有一次,它把对话弄坏了:那一轮所有工具调用都成功,但整轮请求被宿主拒掉 —— 那个会话再也接不下去,看起来像"全都坏了"。

价值恰恰在这里显出来了:

  1. 结论没丢:那轮已经写进记忆的判断都还在。直接开一个新会话,说一句"继续之前的 X",就能接着做 —— 不需要先把坏掉的会话修好,才能继续工作;
  2. 能查清怎么坏的:判断、来由、当时的错误都留了记录,所以能一路追到"是哪条消息、少了什么字段", 而不是只能重启、祈祷下次别再来;
  3. 修完让它不可能再犯:让写这类消息只剩一个入口,代码里再出现手写就测试失败; 坏掉的那几个会话也被就地修好(先备份),再用一个探针会话确认同一条路不再出错。

这就是它和"一个记性好的助手"的区别:会话是会坏的,但判断不该跟着坏。 这个 bug 已在 v1.5.0 修掉,并有回归检查盯着。

留下的判据:静默失败比报错更危险 —— 工具全成功,整轮却死了。

这也是它对待自己错误的方式:先承认是我们的提醒把用户的会话弄坏了,再让它不可能再这么坏。

代价与边界(用前必读)

  • 记忆是本地明文文件:自己备份;不要往里粘密码/密钥。要备份哪几个文件、怎么卸载/回滚 → INSTALL 第 3 / 11 节;
  • 每轮会固定注入一点东西:纪律提示约 3.5k 字符 + 自传体摘要(默认上限 2000 字符)—— 这部分算在你的输入里。 自传体的预算可调;纪律那段没有开关(诚实说:它和你在 profile 里的自定义提示会叠加,目前没有冲突检测);
  • 后台维护默认开(约 30 分钟一轮),其中两项会调用 AI → 有成本,且会把技能正文、相关记忆、你的原始反馈 发给你配置的那个评审模型服务商;可以整体关掉,也可以只关评审(见 INSTALL)。具体金额没有测量过(已知缺口); 想稳妥起步:装完第一件事就把它关掉(heartbeatEnabled: false,见 INSTALL 第 10 节),只留记忆, 确认有用了再开回来。关掉后哪些还能用、哪些会失效,INSTALL 开头有一张对照表;
  • 空闲学习默认关;开启后每轮都会调用一次模型(用你单独给它配的路由,需要外部 API key)→ 有成本;
  • 检索是关键词 + 标签匹配,不是语义检索:写了但召不回是可能的;
  • 技能的三种来源:失败→修好(要反例+正例)、记忆里反复出现的问题(≥3 个跨会话事件)、外部技能改写(自己搜到或你给的)。外部来源默认只进 skill-proposals/,保留要你确认;想让它自动落盘得显式开 externalSkillWriteBack;
  • 折叠快照只做 7 天短期兜底:记忆只存事实卡(不存 4K 原文),提醒直接带 top3 负面结论/工具失败;不保证模型会 open,提醒是唯一保证通道;
  • 会话存档默认不进检索:它是给人回看的快照(可能很大),错召回一次就会吃掉大量上下文; 要看时用 mnemos_open 打开存档 id,或显式传 includeArchives:true;
  • 一部分可靠性靠纪律而不是机制:结论有没有写进记忆、要不要召回到位 —— 所以偶尔自己提醒一句"这个记一下"更稳;
  • 尚未测量:召回质量、规模延迟、单位成本、学习闭环的长期效果、多机共用、经验可迁移性; 也没有记录"测过哪些 DSH 版本"(依赖宿主内部行为的部分,宿主升级后可能先坏)—— 这是已知缺口。

风险与责任

Mnemos 是通用认知架构:身份、记忆、技能、调度不预设用途。但要说清 —— 架构里写进了设计者的取舍 (外部信息先隔离、判断要留下来由、危险动作留痕),这些不是"中立"的,是有立场的。

必须诚实指出四类能力:善意使用是效率工具,恶意使用会放大后果。

  1. 身份可被持有者改写:宪法能用口令改。架构层的指令会与模型的原生对齐叠加 —— 既不能假定它压得住原生对齐,也不能假定原生对齐一定压得住它。
  2. 记忆跨会话积累:长期、跨会话、跨模型的记忆,会让错误或恶意经验变成"可复用的经验"。
  3. 可调度别的模型:主模型能派子代理干活,而任务的真实意图可以不写在 prompt 里(靠记忆传递),外部很难看出来。
  4. 可无人值守运行:心跳与空闲学习能定时醒、持续跑 —— 你不在场时它也在动。

还有一条常被低估的:联网抓来的内容可能自带指令。所以我们把它关进隔离间 —— 但那只降低风险,不消除风险。

责任:使用者决定它的用途,持有者作为监护人,对它的行为负最终责任。本项目不提供任何担保, 也不对滥用行为承担连带责任;能写进机制的限制我们写了(只读宪法、隔离验证、删除留痕、心跳可整体关), 做不到的是替使用者判断。

反对:反对任何违法、侵权、破坏网络安全的用法。

开始用

前提再确认一次:你得在用 DeepSeek Harness(DSH) —— 只在浏览器或手机上用 AI 助手的话,现在装不了。 装之前想知道"装完屏幕上会出现什么、怎么确认它找对了数据" —— INSTALL 第 6 节就是验证步骤。

一条命令装上(已发布到 npm,包名 dsh-mnemos-continuity):

dsh plugin --profile <你的 profile> add dsh-mnemos-continuity

装完完全重启 DSH 就生效(数据在 profile 自己的目录里,覆盖安装不碰记忆)。

安装细节、配置、工具清单、数据位置与备份 → 全部在 INSTALL.md(含验证步骤、续接任务的做法、排错表)。 npm 页面:https://www.npmjs.com/package/dsh-mnemos-continuity

同时用桌面版和网页版(可选)

默认每个 profile 各有一份数据(<profile>/mnemos/)。如果你希望桌面版和网页版共用同一份记忆:

# 1) 网页版也装一次
dsh plugin --profile web add dsh-mnemos-continuity
# 2) 在网页版的 cordis.patch.yml 里让数据指向桌面 profile
- id: dsh-mnemos
  name: dsh-mnemos-continuity
  config:
    dataFile: C:\Users\<你>\.dsh\profiles\desktop\mnemos\memory.json
    constitutionFile: C:\Users\<你>\.dsh\profiles\desktop\mnemos\constitution.json
    heartbeatEnabled: false   # 后台维护只留给桌面端
    learnerEnabled: false
    reviewEnabled: false

两条提醒(重要):

  1. 后台维护只在桌面端跑 —— 所以用网页版时,建议让桌面版挂在后台(窗口最小化即可), 归档 / 衰减 / 回收 / 技能评审才会继续;网页版关了后台,是因为双跑会重复归档、重复任务结论、 双倍 LLM 成本,而技能评审并发写技能文件没有跨进程锁,会损坏。
  2. 跨端可见有延迟 —— 一端写入后,另一端要等下一次写盘(或自己重启)才能看到。 这是"内存副本 + 重读合并"的设计,不是没写进去;想立刻看到就重启那一端。

网页版(dsh web)是独立进程,关掉桌面程序不影响它;但它的运行时文件来自桌面版的安装目录,所以桌面版要"装着"。

文档地图(对外的七份)

你想干什么 读哪份
判断该不该用 docs/简介-introduction.docx(未打包时读同名 .md)
先看它由什么组成、怎么跑起来 docs/架构总览.docx
装它 / 查配置 INSTALL.md
看它有哪些机制、各自保证什么、边界在哪 docs/architecture-机制清单.docx
知道为什么这样设计 docs/设计者视角.docx
想读代码 / 改代码:每个模块有哪些功能、具体怎么实现 docs/模块与功能实现.md(纯 Markdown,附录含宪法原文与系统提示原文)
确认这是哪一版 发行目录根部的 VERSION.md

docs/*.docx 由打包步骤从同名 .md 生成;发行包里开 docx,源码仓库里读 .md。 分不清哪份是当前版时:源码仓库看 对外文档-v1.5/ 下的 .md;发行目录看根部 VERSION.md 里写的版本号与文件清单。

License

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit 4e8c758f7c4f

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout