长对话跑偏了,别在原线程里接着改。先自己写一份纠正过的摘要,把决定、约束和已排除的错路写清楚,再开新对话续聊。自动压缩可能把错误结论一起带走。

要点
- 网页端和桌面端的长对话会碰到上下文窗口上限。官方帮助中心写过:付费方案里,若已开启代码执行,Claude 会在接近上限时自动摘要先前消息,让对话继续;你偶尔会看到它在“整理思路”(organizing its thoughts),这表示自动上下文管理在工作。完整聊天记录仍会保留,摘要之后也还能引用。触发自动管理的长对话会消耗更多用量;接近用量上限时,官方建议开新对话。(用量与长度限制)
- 自动摘要不是纠偏。跑偏之后如果还在原线程里继续改,错误结论可能被写进摘要,后面会更难掰回来。更稳的做法是:你自己写一份纠正过的交接摘要,开新对话,只带上仍有效的决定和约束,以及已排除的错路、下一步。
- 新对话不会自动带上整段旧线程。付费方案上,若开了记忆或允许搜索旧对话,新聊天仍可能把旧结论检索回来。开场要写明哪些结论已经作废。(用聊天搜索和记忆接上旧上下文)
- 在 Claude Code 里,官方建议走错路时优先用
/rewind(或连按 Esc)回到出错之前,而不是在原处追加“那不行,改用另一套”。同一任务、上下文发胀时,可用/compact,并加上焦点说明;换一项新任务,用/clear,由你决定带哪些内容。(Session management and 1M context;Explore the context window) - 本篇只谈长对话跑偏后如何摘要交接、开新对话续聊。先提问再动手的澄清清单、Projects 知识库过期更新,见站内旧文,这里不展开。(先让它提问再动手;Projects 知识库过期了怎么更新)
正文
场景
你在同一条 Claude 对话里改稿,或推一件功能,已经来回十几轮。中途它认定了一个你早就更正过的产品名,或咬住一条你已经放弃的实现路径。你反复说“不对,我刚才改过了”,它道歉,下一句又用回旧版本。
更麻烦的是,对话变长之后,它开始“整理思路”。自动摘要若把那条错误结论写进去,后面每一轮都会先看见这份被压缩过的“事实”。
这是场景示意,不是某次逐字实测。
长了以后官方可以自动摘要,好让对话继续。它不会自动判断哪些结论已经被你否决。纠偏要靠你写进交接,并换一个干净的窗口。
可跟做步骤/可抄工作流
下面是用法建议。官方没有名为“摘要续聊”的单独按钮。
1. 先判断是跑偏,还是只是对话太长
如果只是窗口快满、任务方向仍对,网页端在已开启代码执行时,可能会自动摘要并继续;Claude Code 也可以 /compact,并写上焦点,例如“只保留登录改动的决定和未决问题,丢掉中间的排错过程”。
一旦出现这些信号,就按跑偏处理:它反复使用你已更正的事实或数字;把两个任务的约束混在一起;为一条已经放弃的方案辩护;你纠正了好几轮,它仍回到旧结论。这时不要在原线程里再加一长串“我说的是另一回事”。
在 Claude Code 里,如果出错之前那些读过的文件还要用,官方更建议 /rewind 回到分岔点,带着你刚刚学到的教训重新下指令,而不是把失败尝试留在上下文里继续补丁。网页端通常没法这样精确裁掉中间几轮,这时直接做摘要交接、开新对话更干净。
2. 摘要要你自己定稿,不要原文照贴
可以先让 Claude 根据当前对话起草一份交接。你必须改过再带走。重点留下仍有效的决定和约束,明确写出已经排除的错路、作废的数字或名称,以及下一步只做什么。需要继续用的文件,列成清单,新对话里重新附上,不要把整段失败尝试原样搬过去。
可抄提示,在旧对话里让它起草,再由你删改:
【任务】为开新对话写一份交接摘要,不要继续在本线程里改正文或改代码。
【必须写入】
- 目标:现在要做到哪一步
- 仍有效的决定和约束
- 已经排除的做法,以及为什么排除(各用一两句)
- 已更正、不得再使用的名称、数字或口径
- 下一步只做什么,不要做什么
- 新对话需要重新附上的文件清单
【禁止】
- 不要把已被否定的结论写成既定事实
- 不要写“我们倾向于”“可能也可以”这类含糊未决,却又写得像已拍板
- 不要复述失败过程的细节,只保留结论和教训
你改完后,开一条新对话,把这份摘要作为第一条消息。只重新附上下一步真正要用的文件。项目里已经放好的长期材料,不必整包再传一遍。
3. 新对话的第一句,写明哪些结论作废
新窗口不会自动读完整段旧线程。若你开了记忆,或允许搜索旧对话,它仍可能把旧结论检索回来。开场写清楚:上一线程里某某判断已作废,不要再采用;以本条摘要为准。需要它去旧对话里找某一份仍有效的材料时,再明确指出找哪一件,而不是笼统说“按我们上次说的继续”。
在 Claude Code,若这是一项新任务,用 /clear,再贴上你写好的简报。官方的经验是:换任务就换会话,旧讨论会挤占后面要用的文件,也更费用量。/compact 省事,但摘要由模型决定保留什么,跑偏之后不如你自己写的简报干净。
4. 交接之后,先核对它是否还带着错
新对话的第一轮回复,先看它有没有沿用已作废的名称、数字或方案。一旦再现,马上打断,补一句作废声明,必要时再开一条,不要重新陷入长线程里的拉锯。
真实用户诀窍/反例
- 诀窍:跑偏就换窗,不要靠多说几句把它掰回来。 错误结论在原线程里会反复出现,自动摘要还可能把它写死。
- 诀窍:摘要必须经过你的手。 模型起草可以,但被否定的路径和数字要由你划掉。
- 诀窍:在 Claude Code,走错路时先考虑 rewind。 官方把“回到分岔点再下指令”写得比“在原处追加纠正”更优先。
- 反例:看着它“整理思路”就继续往下做。 那只说明自动上下文管理在工作,不说明摘要里的结论是对的。
- 反例:新对话里说“按上次的继续”,却不写哪些已经作废。 记忆或旧对话搜索可能把错的那版找回来。
- 反例:把失败排错的全过程贴进新窗口。 交接要的是教训和约束,不是再喂一遍跑偏的上下文。
适用边界
- 本篇只谈:长对话方向跑偏,或错误结论已经卡住时,如何用纠正过的摘要开新对话续聊。不覆盖先提问再动手的澄清清单,也不展开 Projects 知识库过期后如何替换文件。
- 自动上下文管理需要开启代码执行,且常见于付费方案;记忆和搜索旧对话也因方案和现页而异。按钮文案、是否对你的账号开放,以登录后现页为准。
- 触及长度上限时,官方还建议开新对话,或把稳定材料放到项目里按需取用。那是窗口容量问题;本篇处理的是方向跑偏,两件事可以一起做,不要混成一次“继续聊”。
- 没有一份摘要能替代你对关键事实的复核。交接写得再清楚,名称和数字仍要回到原始材料上对。