2026-10-17 · Codex 教程 ③ · 记忆

记忆
放在哪里

让 AI 记住事情,难点从来不是「写进去」——而是每次开工时,它该读多少、 以及那些东西放在哪。这一篇是我们跑了一整天之后的结论。

先说一个很多人会撞上的场面:AI 干完一件复杂的事,你满意;第二天开新对话, 它对昨天的事一无所知。于是你把背景又讲一遍——讲了三次之后,你开始怀疑这套东西到底能不能长期用。

解决办法看起来很简单:把重要的事写下来,让它每次开工先读。但真正难的是后半句。

第一个坑:读得越多,越糊涂

最直觉的做法是把所有记录都塞给它读。结果有两个:一是成本——每次开工都在烧一遍全部历史; 二是质量——大量无关信息混进来,它的判断反而会变差。这一点我们在自己身上验证过: 同一件事,给它看三条相关记录时判断很准,给它看三十条混杂记录时开始跑偏。

所以要把一条禁令写死在规则里
「先读索引和摘要,按需再读原文,禁止一次性加载整个知识库。」 这不是省钱的小技巧,是保证判断质量的前提。

第二个坑:载体选错,等于白写

写在哪儿比写什么更影响命运。我们的结论很干脆:纯文本文件,配合一个索引。

载体问题
藏在某个应用的内置「记忆库」里 换机器、升级、重装都可能一起没掉;你也没法用普通编辑器翻看
靠长对话的历史 一换线程就断;越聊越贵,而且夹着大量废话
一堆 Markdown 文件 + 一个入口索引 任何编辑器可读、可直接 diff、换机器只要拷目录、成本为零

我们这台机器上,那次「应用状态库整个重建」的事故正好证明了这一点: 同一个晚上,应用自己的数据库被清掉重建,而放在纯文本里的记忆毫发无损。

我们的三层结构

索引只写「去哪找」,不写内容;内容按「什么时候会用到」分三层:

层放什么读的时机
L1长期规则、偏好、正在进行的项目(就是那个索引)每次开工必读,几秒钟
L2项目摘要、重要决策、复盘结论先读摘要,确认相关再去翻细节
L3历史原文、旧版本、已结束的项目平时不读,要追溯时才打开

这套结构还有个副作用是好的:整理变成了定期动作——把 L2 里过期的内容压成一句结论、 把结束的项目挪进 L3,知识库就能一直用下去而不会越长越乱。

第三个坑:写完就不管,比不写更危险

这点我们是用自己的脸撞出来的。某天要查一个环境配置,翻开记录—— 整份说明还是上一台机器的内容:旧的路径、旧的工具版本、旧的限制条件。 而新机器的实情散在另外几处。载体是对的,内容在慢慢烂。

一份过期的说明书比没有说明书更危险,因为它会被相信。所以我们给自己加了一条: 凡是要照着做的记录,写的时候顺便写清「什么时候核过的」; 核对的时候以现场为准——程序报的版本、文件系统里的路径、命令的真实返回值,而不是文档里那句旧话。

可以直接抄走的四条

规则为什么
纯文本 + 一个索引文件可读、可迁移、零成本;换工具不丢
按「什么时候用」分三层先读小的,需要再往下翻
把「禁止一次性加载整个知识库」写进规则既省钱,也保证判断不被噪音干扰
每条结论标上核对时间让「旧」这件事看得见

最后一句心得:记忆这件事,写的成本很低,校对的成本才是主要的。 写下一个结论一分钟,确认它今天还成立可能要十分钟——但只有后者能救明天的你。

《Codex 教程》连载:① 总纲 · ② 把红线写成代码 · ③ 记忆放在哪里 —— 下一篇:④ 守收件箱,不碰发送键。 回到笔记