Skip to content

/compact 不再吞掉未回答的消息:2.1.323 修复压缩与恢复会话两处坑 ​

/compact 是长会话里最常用的命令之一:上下文快满了,压一压再继续。不过在 2.1.323 之前,有两种情况会让你「说过的话」莫名其妙地消失或变形。

坑一:连续压缩时,最后一条消息被总结掉 ​

触发条件有两种:

  • 刚执行过一次 /compact,又再执行一次;
  • 先跑了 /context 这类命令,接着执行 /compact。

在这两种情况下,如果你最后发的那条消息 Claude 还没来得及回答,压缩会把它一起「总结」进摘要里。结果是:你以为 Claude 接下来会处理这条请求,实际上它只在摘要里看到一句概括,原始的细节和要求都没了,回答自然会走样。

2.1.323 修复后,尚未回答的消息会原样保留,压缩只处理已经完成的对话部分。

坑二:恢复会话时,新消息和旧中断消息拼在一起 ​

另一种情况出现在恢复会话时:上一次你发了一条消息后中断了,并且这次恢复时没有选择继续那条消息。以前,你接下来发的新消息会被拼接到那条旧的中断消息后面,Claude 看到的是两段不相干内容混在一起的请求。

修复后,没有被恢复的中断消息不会再跟新消息合并,新消息就是新消息。

同版本里另外几个值得一提的修复 ​

  • Claude 改动超大文件之后,下一次输入时内存会突然飙高,这个问题已修复;
  • 会话运行中保存某项设置时,不会再覆盖你刚刚手动改过的 settings.json;会话期间删掉的设置文件也会保持删除状态。

使用建议 ​

  • 升级到 2.1.323 或更新版本:claude update;
  • 习惯先 /context 看占用再 /compact 的用户,这次修复正好对你有用;
  • 如果在旧版本里遇到过「压缩后 Claude 好像忘了我刚才说的话」,现在可以放心了;仍有疑问时,压缩后把关键需求再简短重述一遍,是最稳的做法。

Claude-cn.org,专注于 Claude Code 中文教程