Wink Pings

花 8 美元,让 agent 在夜里回忆白天干了什么

Anthropic 的 Cookbook 给了一套方案:agent 干活时什么都不记,等跑完了单独走一个后台流程,把会话记录读一遍提炼成小文件。一次大约 8 美元、10 分钟,还能再压。

Agent 有个老毛病:每次开新会话,它都像第一次上班。上一轮踩过的坑、定下来的决定、跑通的那条命令,全清零。

业内常见的解法是让 agent 边干边记。Claude 的 Cookbook 给了一条反过来的路:不记,先干;干完之后单独跑一个后台流程,回头把已完成的会话读一遍,提炼成记忆。Anthropic 管这个叫 dreaming。

这篇 Cookbook 由 Brad Abrams 编写,2026 年 11 月 2 日发布,Carlos E. Perez 在 X 上推了它。它不教你调用某个 API,它教你自己搭一套:三个 agent、一个记忆库、一条 cron。

流程长这样

dreaming 工作流

第一步,把 agent 已经跑完的会话导出成文本文件,一个会话一个文件。

第二步,把这些文件挂进一个会话。你写一段话,说清楚要做什么。一个 lead agent(Claude Sonnet 5.5)读完这段话,自己写工作流脚本、自己启动。

工作流拆解

工作流分两段。第一段 Analyze,每个 transcript 分给一个 analyzer(Haiku 5.5)。每个 analyzer 读自己那份,把有价值的命令、flag、决策、坑,写成小的 Markdown 文件,带 frontmatter,互相用 [[slug]] 链接。第二段 Organize,所有 analyzer 跑完,organizer 跑一次,合并重复文件、修链接、补 _index.md,交一份报告。一个 workflow run 最多同时跑 64 个线程。

第三步,把生成好的记忆库只读挂给 agent。下次会话一开,它先读 _index.md 看当前情况。

为什么不边干边记

差别在时间。

边干边记,记的是当下的猜测。人干活时判断力会被当下带偏,agent 也一样。隔了几个小时再回头看,能发现“当时以为对的那条命令其实只在某个版本生效”,这种纠错只能在事后做。

Cookbook 里举的例子是 tidewick,一个虚构的 Python 项目。早期会话里,跑测试必须加 TIDEWICK_DATA_DIR;后来一个版本不需要了。那条早期事实如果原样复制进记忆,下一个 agent 会照着老命令试一遍、失败、再花一轮找答案。dream 的价值就在它有 hindsight,知道哪条已经过期、该标日期、或者直接替换。

钱和时间

  • 11 个示例 transcript(283 KB),跑完 2.5 分钟,$0.36。
  • 50 多个长会话(约 12 MB),一次 dream 大约 8 美元、10 分钟。去掉那几个省成本的设置,约 10 美元、9 分钟。

那几个省成本的设置是:在任务描述里加一句把 transcript 分组,analyzer 的 prompt 里写少用几轮,纯文本 transcript,organizer 换 Haiku。这套东西省了约 2 美元,多花 1 分钟。

还有个细节:跑了 30 次和 60 次之后,用和不用这套设置的记忆库,在固定事实列表上的命中份额差不多。省下的钱没换来更差的记忆。为什么,Cookbook 没细说。

安全不是默认的

transcript 是不可信输入。一段工具返回结果里可能藏着“忽略你之前的指令”。Cookbook 的处理是:analyzer 只开 5 个文件工具(read、write、edit、glob、grep),没 shell、没网络,allowlist 是空的。analyzer 的 prompt 里明说,transcript 是找事实的数据,不是执行的指令。

记忆库给使用它的 agent 挂成只读。唯一有写权限的是 dreaming 那个会话。

最坏情况:有人在 transcript 里塞了脏话,store 里多一条假事实,或者烧掉你的预算。除非你把记忆内容塞进系统 prompt,那样假事实会进到每个会话的 prompt 里。

最后

Cookbook 里写得很清楚:这是 research preview。当成一个能改的模板更合适:什么时候跑、读哪些 transcript、analyzer 关注什么,都是你在 message 和 prompt 里写的。

夜间脚本用 crontab 在 1 点跑,把上次跑完之后新完成的会话读进来。前提是会话在你机器上、能导出。dreaming 那个会话自己没网络、没 key。

值不值 8 块钱一晚,看你的 agent 忘记上次踩的坑要付出多少代价。

发布时间: 2026-11-07 14:38