← 学习路线

工作台装不下的时候:交接与记忆

AI 的工作台装不下、会话会结束、活会交给别的 AI。要让下一个接手的知道什么?写在哪里?怎么知道写够了?

课型:流程·约 25 分钟·4 个术语

先看出事的那一刻

2026 年 7 月 28 日,E2E Review 的一次工作会话里,后端要连数据库,可这台电脑上的数据库没起来。AI 先起了一个只读内容的模拟接口顶上,用 nohup 放进了后台。

当天,它在发给站长的优先级清单里写了一条:

现在 8787 端口跑的是我 scratchpad 里的临时 bun 脚本——会话目录被清或机器重启它就没了……要么回归正式的 server/index.mjs,要么把 mock 脚本正式入库并写进 launch.json。发布前必须二选一。

这条待办只说在了聊天里。两天后,这个会话第一次被压缩成摘要,摘要里没有它;同一天,接手的 Codex 写下了项目的第一份状态文档,里面也没有它。再往后的每一版状态文档,直到两个月后出事,都没有它。

两个月后:

第 2 课从"本地和线上"讲过这个进程是怎么骗过检查的。这节课看另一件事:那条待办,从来没有离开过聊天窗口。会话被压缩、活换给了另一个 AI,它就没了;机器上的那个进程,却一直都在。

这节课要回答的是:AI 的工作台装不下、会话会结束、活会交给别的 AI。要让下一个接手的知道什么?写在哪里?

装备几个词

为什么要懂

AI 替你做了

AI 在一个会话里能连续干好几个小时:读代码、改文件、记住你一路说过的要求。

留给你的

会话会被压缩、会结束、会换成另一个 AI。哪些要写进文件、写进哪一份、交接时交代什么,要你来定。

不懂的代价

聊天里说过的事,换个会话就不存在了。最危险的不是忘了需求,而是忘了机器上还留着什么。

工作台为什么会装不下

AI 一次能摆在面前的内容是有限的:整段对话、读过的文件、你给的要求,都挤在同一个上下文窗口里。对话长到快装不下时,工具会把前面的部分压缩成一页摘要,接着往下做。

摘要留下的是大方向,丢掉的是细节。写这门课的这个会话,从 7 月一直用到现在,到写这节课时被压缩过 4 次。7 月 30 日的第一次压缩,就把"后台还跑着一个模拟接口"丢了。

摘要里留下什么,你决定不了;但你可以决定,什么不靠摘要。

按"谁会读"放进不同的文件

放在哪写什么谁会读本站的例子
规则文件长期有效的约定、禁区、常用命令每个新会话开工时自动读.claude/CLAUDE.md:每个文件夹一份三行以内的说明,每个文件开头三行注释
方案与交接文档这件事的目标、已确认的决定和理由、进度、没做完的接手这件事的会话或人,开工先读docs/vibecoding-plan.md;自动驾驶的活交给新会话时,交代里的头一件事,就是"先完整读 docs/e2e-plan.md"
提交记录每一步改了什么、为什么、依据在哪以后追查的人第 7 篇的每个提交说明里,都写了事实的出处

方案文档写好之后,还要一直往里写。自动驾驶那个会话做着做着,在方案里加了一节"执行记录与写法约定",连"素材笔记里已知的几处误读"都记了进去;后面任何一个会话接手,都不用再踩一遍。这门课也一样:每次压缩之后,都是照着方案文档接着做。

写已确认的决定时,最好连理由一起写,再加一句"勿重新讨论"。知识库 Agent 的开发计划就是这么写的:下一个会话看到理由,就不会把定好的事又翻出来商量一遍。

交接要交代的五件事

  1. 做到哪了:完成了什么,验证过什么。
  2. 定下了什么,为什么:已确认的决定和理由。
  3. 还没做完的:下一步具体是什么。
  4. 机器上还留着什么:后台进程、临时服务、开着的端口、改过的本地配置。这一条最容易漏,开场的事故漏的就是它。
  5. 接手的人怎么验证:跑哪个命令、看哪个页面,确认现在是好的。
深潜为什么不直接把聊天记录交给下一个+

最省事的交接,是把整段聊天导出来丢给下一个会话。不这么做,有三个原因:

  • 结论埋在过程里:几十轮来回里,哪些是试过又放弃的、哪些是最后定下的,接手的人分不清;
  • 它本来就装不下:长到需要交接的对话,往往正是工作台装不下的那种,整段塞回去,又会被压缩一次;
  • 里面可能有不该传下去的东西:比如你曾经贴进对话的密钥(第 11 课)。

该交接的是结论和现场,不是过程。

交接文档会说谎

7 月 21 日,知识库 Agent 要交给别人维护。交接之前做了一件事:从仓库重新克隆一份,照着 README 从头走一遍。

走下来,修掉了接手的人一定会撞上的几个坑,也发现 README 里有几句已经不是真的了。提交说明里有一句话:"交接文档说谎比没文档更糟。"没有文档,接手的人会去问;文档说错了,接手的人会照着做。

紧接着还有一个小改动,标题是"启动前置条件一次报全,不让接手人来回修两趟":原来缺了配置和资料,启动时只报第一个,补好再启动,才被告知还缺第二个。

检验一份交接文档,办法只有一个:找一个没参与过的人,或者开一个新会话,只照着文档从头做一遍。让写文档的 AI 自己通读,是读不出缺了什么的:它脑子里有前情,会自动把缺口补上。

找茬

下面是知识库 Agent 交接之前的 README(节选)。从仓库重新克隆一份、照着它走一遍时,这几处都出了问题。找出接手的人会被它误导或者卡住的地方。

这段 Markdown 里埋了 4 处问题。点击你觉得有问题的行,至少找出 3 处再揭晓。

查看代码与答案(4 处问题)
 1  # 知识库 Agent 的 README(交接之前,7 月 21 日,节选,略有简化)
 2  视觉方向「学术印刷」:暖纸底 + 陶土重音 + 衬线西文;三栏阅读器(会话 / 问答 / 常驻原文对照)。
 3  
 4  ## 快速开始
 5  npm install                      # 根:后端 + SDK;再 npm --prefix web install 装前端
 6  cp .env.example .env             # 填入模型端点与 key
 7  npm run sync-corpus              # 从 kb.config.yaml 的 corpus_source 同步 md/txt 到 corpus/
 8  npm run dev                      # 同时起后端(3100) + 前端(5173)
 9  
10  ## 测试
11  评测 eval/cases.yaml 25 条(正 15 / 负 10)。当前达标:正样本 15/15,负样本 10/10。换模型后必跑回归。
  • 第 2 行 · 低危 · 写的是几个小时前就改掉了的样子:衬线字体几个小时前就删了,"常驻原文对照"也早改成了点出处才出现。界面改了,README 没跟着改。接手的人照着它找东西、改样式,会以为自己看错了。 该问的话:README 里描述的界面和功能,和现在的代码对得上吗?最近几次改动之后更新过吗?
  • 第 5 行 · 中危 · 装前端依赖,藏在一行注释里:前端要另装一次依赖,可这一步只在 npm install 那行的注释里提了一句,实测很容易漏。交接时改成了装完后端自动装前端,不再靠人看注释。 该问的话:照着快速开始一条条执行,能不能把整个项目跑起来?有没有哪一步只写在注释里?
  • 第 7 行 · 高危 · 同步资料要去作者的电脑上拿:资料的来源路径写在配置里,指向作者本机的一个目录,换一台电脑就不存在。更糟的是,这个同步脚本是"镜像"式的:会把直接放进资料目录、来源里没有的文件删掉。交接时删掉了这个脚本,改成文档直接放进资料目录。 该问的话:这个命令依赖哪些只有你的电脑上才有的东西?它会不会删掉接手的人自己放进去的文件?
  • 第 11 行 · 中危 · "10/10"已经不是真的:最近一次实测,负样本是 9/10;而且审计发现 10 道负样本里有 6 道的主题其实在资料里,测的根本不是"会不会拒答",结果会来回跳(第 25 课)。交接时改成写明:这批题换了资料就作废,要重写。 该问的话:文档里的这些数字,是哪一次、在什么条件下测的?现在再跑一遍还是这样吗?

快测

1. 你和 AI 聊了一下午,定下了好几条规矩。明天要开新会话接着做。最稳的做法是?

查看选项与答案
  • A. 把今天的聊天记录整段导出来,明天贴给新会话——结论埋在来回的讨论里,而且一整段又长又杂,塞回去还会再被压缩一次。该交的是结论。
  • B. 明天接着用今天这个会话,前面说过的它都记得——会话越长越会被压缩,压缩时丢的正是细节。开场那条待办,就丢在第一次压缩里。
  • C. 让它把规矩和进度写进项目里的文件,明天先读(正确)——文件不会被压缩。长期的约定进规则文件,这件事的进度进方案文档,新会话开工先读。

要留下来的,写进文件;不靠摘要,也不靠聊天记录。

2. 交接时,最容易漏掉、又最容易出事的是哪一类?

查看选项与答案
  • A. 项目的目标、背景和用户是谁之类的介绍——这些通常写得最全,接手的人也最先问。
  • B. 代码里每个函数是做什么的、参数怎么用——这些写在代码和注释里,接手的人自己读得到。
  • C. 机器上还留着的东西:后台进程、端口、本地配置(正确)——它们不在代码里,也不在聊天之外的任何地方。开场那个模拟接口,就这样在后台跑了两个月。

交接不只交代码,还要交现场。

3. 怎么检验一份交接文档写得够不够?

查看选项与答案
  • A. 看文档够不够详细,章节有没有齐全——写得再长,说错了也没用:README 里那句"10/10",就写在一份很完整的文档里。
  • B. 开一个新会话,只给它这份文档,从头做一遍(正确)——知识库 Agent 交接前就是这么做的:重新克隆一份,照着 README 走一遍,才发现了那几处坑和不实的地方。
  • C. 让写文档的 AI 自己通读一遍,确认没有遗漏——它脑子里有前情,读的时候会自动把缺口补上,读不出缺了什么。

没参与过的人照着做一遍,是检验交接文档的唯一办法。

判断时刻

一个功能做了一半,你要换一个 AI 工具接着做,比如从 Codex 换到 Claude Code。

你会怎么交接?

三个选项各自的代价
  • A. 直接让新工具读代码,自己看懂再接着做——考察最省事,丢得最多:代码里有做了什么,没有为什么、不要什么、还差什么。它会按自己的理解补全,正是第 21 课里配图变黑块的那种接力。
  • B. 让旧工具写交接:做到哪、定了什么、没做完的、机器上还跑着什么、怎么验证;新工具开工先读——考察多花十分钟,最稳:五件事都交代了,新工具不用猜。代价是要花时间写,还要核对它写的是不是真的:交接文档说谎,比没有更糟。
  • C. 把两边的聊天记录都导出来,交给新工具——考察看起来最全:信息都在,可结论埋在过程里,新工具分不清哪些是试过又放弃的;记录里还可能有你贴过的密钥。

交接的不是聊天记录,而是结论和现场:定了什么、做到哪、机器上还留着什么。写进文件,再开一个新会话照着走一遍。

带走

下次让 AI 做这件事时,问它

  1. 这次对话里定下的决定和理由,整理进方案文档;长期有效的约定,写进规则文件。
  2. 收工前写一份交接:做到哪了、定了什么、还没做完的、机器上还留着什么、接手的人怎么验证。
  3. 你在这台机器上启动过哪些后台进程、临时服务,改过哪些本地配置?全部列出来,说明要不要保留。
  4. 交接文档里的每一句,现在还是真的吗?和代码、和最近一次的测试结果对一遍。

自己验证

  • 开一个新会话,只给它交接文档,看它能不能不问你就接着干。
  • 在一个干净的目录里重新克隆一份,只照着说明文档从头走一遍。
  • 收工前看一眼本机开着的端口和后台进程,确认每一个都有着落。

聊天里说过的,换个会话就没了。要留下来的,写进文件。