Claude Code 的 /compact 命令
在日常使用 Claude Code 进行项目开发时,很多开发者都会遇到一个痛点:随着对话的不断深入,上下文(Context)变得越来越臃肿。这不仅会导致 API Token 消耗急剧增加,还会让 Claude 响应变慢,甚至因为历史信息过多而开始“胡言乱语”。
为了解决这个问题,Anthropic 在 Claude Code 中引入了一个非常实用但容易被忽视的命令——/compact。
什么是 /compact 命令?
简单来说,/compact 是 Claude Code CLI 中的一个内置指令,用于压缩当前的对话历史。
当你在终端中输入并执行 /compact 时,Claude Code 并不会简单粗暴地清空所有聊天记录(那是 /clear 的工作)。相反,它会在后台执行一个“智能总结”的操作:
- 它会回顾你们之前的对话、你提供的代码片段以及当前的任务状态。
- 提取出核心的上下文、已解决的问题、待办事项和重要的环境信息。
- 将这些精华浓缩成一段精简的 Prompt 注入到新的对话轮次中。
- 丢弃那些冗长的、逐字逐句的历史对话记录。
为什么要使用 /compact?
在长时间的结对编程(Pair Programming)会话中,定期使用 /compact 会带来以下几个显著的好处:
1. 显著降低 Token 成本
历史对话越长,每次提问携带的输入 Token 就越多。一个原本只需要几美分的简单问题,如果在冗长的上下文中提问,可能会消耗几十美分。/compact 能帮你瞬间将庞大的上下文“瘦身”,为你省钱。
2. 提升响应速度
大模型处理大量输入文本需要耗费计算资源。上下文越短,首字响应时间就越快。压缩历史记录后,你会明显感觉到 Claude 的回复速度变快了。
3. 减少 AI 的“幻觉”和干扰
如果在之前的对话中,你们经历过多次试错、报错和方向调整,这些“废弃”的思路会残留在上下文中,很容易干扰模型后续的判断。/compact 能够“洗掉”这些噪音,只保留最终的正确结论,让 Claude 保持专注。
最佳使用场景:什么时候该敲下 /compact?
掌握正确的时机,能让这个命令发挥最大效用:
- 完成一个独立的功能模块后: 当你刚刚和 Claude 一起搞定了一个复杂的 Bug,或者写完了一个完整的函数,准备进入下一个完全不相关的任务时,这就是使用
/compact的完美时机。 - 遇到连续报错,陷入死胡同时: 如果发现 Claude 一直在原地打转,重复之前的错误代码,说明上下文已经被污染了。此时执行
/compact可以强制它跳出之前的思维定势,重新审视当前的代码状态。 - 收到 Token 限制警告时: 虽然现在的模型上下文窗口很大(比如 200k),但一旦接近上限,性能就会下降。主动压缩是保持顺畅体验的关键。
总结
在 AI 辅助编程时代,管理上下文就是管理 AI 的注意力。Claude Code 的 /compact 命令为我们提供了一种优雅的方式,在保留核心记忆和节省资源之间找到了完美的平衡。下次当你的终端对话超过 10 轮时,不妨试着敲下 /compact。
更多推荐


所有评论(0)