我踩过的四个记忆坑,从预算到换机

1 阅读1分钟

我踩过的四个记忆坑,从预算到换机

我给自己的 agent 装持久记忆,动机很朴素:同一个项目反复讲背景太费劲。装上 dsh-auto-memory 之后,前三周我踩了四个坑,每一个都不是「装不上」,而是「装了但没按我以为的方式工作」。下面按我踩到的顺序写,不讲教科书分类。

先说它现在长什么样

我实测的版本是 1.3.0(npm 2026-10-29 发布),仓库 122 星(GitHub API,2026-11-05 现查),站内给的是已验证 · L5 运行时冒烟。装完的记忆存在 $DSH_HOME/memory/:一条记忆一个 Markdown 文件,加一个 MEMORY.md 索引,写进系统提示词的是索引而不是全文。

我最开始以为这是「装完就自动记住」的东西。不是。

坑一:以为它会自己记

第一周我聊了三个晚上,第二天开新会话问它「我上次说过什么」,它一脸茫然。翻 README 才看到 autoSummarize 默认 false——不开这个开关,它只在两种情况下写盘:我明确说「记住」,或者模型主动调 memory_write。

我试过把它打开:根会话结束时后台 LLM 归档,单次上限 5 条、输出上限 2048 token。好用,但意味着每轮多一次模型调用。我最后的做法是关掉自动、改成显式指令,因为我更在意「记什么由我定」。

坑二:以为记得越多越好

第二周我把项目里所有约定都往里塞,塞到七十多条。然后发现早期那条「这个项目不要用 npm,用 pnpm」不进提示词了。

原因写在它的评测里:注入预算 maxBytes 默认 4096 字节,实测 10 条约 2.3 KB、20 条约 3.2 KB,从 50 条起就钉在 4.0 KB。超出的按索引位置截断,不是按相关度——这是它自己标为已知限制的一条,半预算压力下探针保留率会从约 38% 掉到 10%。

我的处理是把必须长期生效的几条 pin 住(pin 后保留率能维持 80% 以上),其余按项目分 scope,别让所有东西挤一个预算。

坑三:以为模型写完就能用

第三周我在面板里看到一条记忆,语气特别笃定,内容却和当时的对话对不上。查了才知道信任分四态:合并产物生来是 candidate,自带原文引证(引证对不上会被丢弃),verified 只能由人在面板里给,disputed 和 superseded 永不注入。

也就是说 candidate 会照常注入。它只是「模型认为值得记」,不是「已经核实」。我现在的习惯是每周花五分钟过一遍健康看板,把确认过的升为 verified,矛盾的标 disputed。这五分钟省不掉。

坑四:以为它是通用记忆

我一度想拿它做「长文档问答的记忆层」,结果很糟。后来看到作者主动公布的 LongMemEval-S 分数:23.3%。那是 122k token 聊天 haystack 的针检索任务,跟「编码场景下记住项目约定」根本不是一类问题。

它自己场景内的端到端数字是另一回事:30 个探针、盲评下 95.8%(有记忆)对 16.7%(无记忆)。我实测的感受也一致——记住「我们用 pnpm」「接口字段叫 x」这类事实它很稳,让它从几百页聊天里捞出某一句就不行。

顺带两个我确认过的细节

  • 名字会被归一成 [a-z0-9-],而 memory 是保留名:在大小写不敏感的文件系统上它会和 MEMORY.md 撞车,写入看着成功、实际毁掉记录,作者为此加了守卫。我第一次起名 Memory 就被拒了。
  • 从 Claude Code 导入是同名跳过、不覆盖;带 origin 块的条目才能撤销,改过内容的会被标「已修改」并保留。这条我试过一次,行为与文档一致。

我现在怎么用它

  1. 只让它记三类东西:项目约定、接口字段、我的偏好;
  2. 每周过一遍健康看板,把该升 verified 的升掉;
  3. 关键条目 pin 住,其余接受被截断;
  4. 换机器前先备份 $DSH_HOME/memory/——它没有同步,这是我还没解决的问题。

如果你的用法是「跨机器共享记忆」或「长文档检索」,我现在会直接劝你别装:前者它不做,后者分数摆在那里。它擅长的是单机、可读、可 diff 的项目级记忆。

适合与不适合

适合:愿意每周花几分钟维护记忆状态的人;把记忆当项目约定而不是聊天归档的人;单机长期跑同一个项目的人。 不适合:需要多机共享记忆的团队,它只是本地文件;想拿它做长文档检索的人,官方公布的 LongMemEval-S 只有 23.3%;期待零维护全自动的人,autoSummarize 默认关闭。

标签:dsh-auto-memory、DeepSeek Harness、踩坑复盘、持久记忆

本文依据我 2026-11-05 的实测记录整理,数据来自插件详情页与 npm registry。