你有没有过这种想砸键盘的时刻?用AI智能体(AI Agent)写代码做项目,聊到一半它突然失忆——之前定死的逻辑全推翻,连需求是什么都要再问你一遍。
我前阵子用Codex搞个有点复杂的数据处理项目,实打实把这个坑踩了个遍。官方说什么「自动压缩上下文」能解决,我兴冲冲试了,结果差点没气笑——关键参数、中间结论全给我压没了,它倒是没忘,但记的全是错的。
后来我被逼得自己瞎琢磨,搞出一套土办法,就三份普通的markdown文档,硬生生给AI装了个外部大脑,跨窗口干活连个磕巴都不打。说真的,这玩意儿比什么花里胡哨的提示词工程靠谱10倍。

很多人不知道,AI的对话窗口是有天花板的。就像你微信聊天记录堆多了手机会卡,AI也一样,token数一满,最前面的内容直接被“挤没”——你以为它记着全程,其实它只记得你上一句说啥。
更坑的是现在各大平台吹的「自动压缩上下文」,我前前后后试了不下十次,每次都能给我整出幺蛾子。它会把那些看似不重要、实则牵一发动全身的参数、中间结论全给你删了,自己编一套逻辑往下走,最气人的是它编得特别自信,你要是一眼没看出来,后面几百行代码全得重写。
我当时差点就去给官方提需求了,后来一想,等他们修好,我项目都黄了,不如自己动手。所以我后来直接把这功能关了,逻辑很简单:一旦感觉AI开始变笨,或者窗口token快满了,立刻手动存档,开新窗口。但怎么让新窗口的AI无缝接上之前的活?这才是真手艺——我攒了三个硬核文档,说它们是AI的记忆外挂一点不夸张。

第一个文档叫handoff.md,说白了就是我给AI写的「工作交接条」——开新窗口前,把当前的状态说清楚,让它接手就能干。
最开始我写得特别啰嗦,把前因后果、整个项目的来龙去脉全写上,结果AI还是经常跑偏。后来才摸明白:AI根本不需要听你讲完整故事线,它要的就是干巴巴的关键信息——现在到哪了,下一步要干啥,有啥不能碰的雷。
每次我感觉窗口快撑不住了,就先停手,让AI给我捋一遍:已经做完哪些、正在碰哪块、下一步的目标是什么、还有哪些没解决的问题、哪些关键变量或路径不能动。我把这些整理成handoff.md,开新窗口直接贴进去,告诉它先看这个再干活。
上次我做数据清洗脚本,窗口快满了,就让AI给我出了份handoff.md,拢共就三行:
-
当前脚本
clean_v2.py已经处理完30%数据,中间结果存在temp/clean_part1.csv -
下一步处理剩下70%,最后合并两个CSV
-
注意:日期格式是
YYYY-MM-DD,别瞎改
我贴到新窗口里,AI唰的一下就读完,直接开始写合并代码,全程没掉链子。比啥完整对话记录都好使——毕竟它只留了最核心的决策点,没用的废话全筛掉了。

但handoff.md只能解决「这一次」的交接问题,下次开新项目,或者隔半个月再碰这个项目,你又得从头跟AI掰扯你的习惯,烦都烦死。
所以我又搞了个更底层的文档:agent.md,相当于这个项目的「AI工作宪法」——所有规矩全写在里面,它照着来就行。里面要写清楚你这个项目的代码规范、文件结构、常用命令、测试要求,甚至是你跟AI的沟通规则,都可以写进去。
我自己的agent.md里,写得全是最容易踩坑的硬要求:
-
所有生成的Python函数必须带类型注解
-
改任何文件前,先输出修改计划,等我确认再动
-
优先使用
pathlib,别整os.path那套老掉牙的 -
遇到拿不准的逻辑直接问,不要自己瞎编
最绝的是我在里面埋了个「自动激活」指令:每次开新窗口碰这个项目,AI必须先自己读一遍agent.md,再开始干活。说白了就是不用我每次提醒,它自己会先翻规矩。
这个文档千万别写长,越长AI越容易忽略。我自己的版本才不到30行,全是干货。用了之后,AI跨窗口犯的低级错误直接少了80%,省心太多。

前两个文档搞定了「当前状态」和「通用规矩」,但还有个事差点给我整破防:之前踩过的坑,换个窗口AI就全忘了,下次还得再踩一遍,纯纯的记吃不记打。
上次我调一个外部API,AI一开始用错了超时参数,连续报错,我们折腾了三轮才找对配置。我当时就想,我自己记性都不好,哪能指望AI记这些?要是下次开新窗口它再犯,我不得疯?
所以我在项目根目录加了个lessons_learned.md,专门记「血泪教训」。我给AI定了个简单模板,每次干完活自动填:
-
场景:什么情况下出的问题
-
现象:当时看到啥异常,一开始怀疑是啥原因
-
根因与解决:最后找到的真正原因和修复办法
-
后续规则:以后再碰到类似情况该咋做
就那个API的事,AI自己总结的那条我现在都记得:调用fetch_data的时候要是传timeout=5,内网环境必频繁超时,得改成30秒再加重试机制。以后所有外部API调用默认用timeout=30。
我还把这条规则也加进了agent.md里:每次任务结束,要是有新的坑,AI必须自动更新这个教训本;下次开新窗口,也得先读一遍。这下可好,AI不仅不会忘之前踩过的坑,有时候我自己都记不清的雷,它还能主动提醒我。说真的,这玩意儿比我自己写的项目文档靠谱多了——毕竟全是实打实从错误里抠出来的干货。

可能有人会说,不就是三个markdown文件吗,能有多大用?我之前也不信,但就是这么简单的土办法,让我彻底跟「AI窗口失忆」的破事说再见了。
整个逻辑特别顺:
窗口快满的时候,先让AI出份handoff.md,开新窗口直接贴进去,无缝衔接;
新项目启动第一件事,写好agent.md,AI自动读,按你的规矩来;
每次干完活,AI自动更新教训本,踩过的坑再也不踩第二遍。
全程不用你费劲写啥复杂提示词,也不用装任何第三方工具。这三份文档就像给AI建了个外部大脑,对话窗口就是个临时干活的桌子,重要的东西全存在抽屉里,永远丢不了。
说句实在话,现在官方吹的什么长上下文、智能压缩,一个比一个天花乱坠,实际用起来全是花架子。与其等他们把功能磨好,不如自己动手,用最土最原始的办法把问题解决了。毕竟AI现在说白了就是个金鱼记忆的实习生,你不给它配个靠谱的笔记本,指望它自己长记性?门都没有。
📌 本文为个人观点,仅供参考
夜雨聆风