为什么几个命令能改变工作方式
用 Claude Code 的人快速增多,但用法差距极大。有人并行跑好几个智能体;也有人一旦提示词给错、代码乱了,就从头再来。
多数情况其实不必从头再来。回退功能本来就有,只是不知道。原因之一是更新节奏:Claude Code 发布很频繁,一天里升好几个版本也有,所以每个人得知新功能的途径都很偶然。
下面五个都是内置的斜杠命令。无需安装,在对话框敲一个斜杠再写名字即可。敲错也不会发生任何事,所以在当前打开的会话里直接试就行。
此处描述的行为以 2026 年 9 月 5 日的官方文档核对为准。版本升级后细节可能变化,觉得不对就先看文档。
1. /rewind — 把搞砸的活儿回退到检查点

先说检查点。每当你发送一条提示词,Claude Code 都会自动保存此前的文件状态,就像游戏每回合自动生成存档。这些保存点叫检查点,一个会话最多保留最近 100 个。
检查点与对话一起保存,所以退出后重开会话依然在。但不是永久保存:会话最后写入快照约 30 天后会被清理(可用 `cleanupPeriodDays` 延长)。
打开方式有两种:敲 `/rewind`,或者在输入框为空时连按两次 Esc。输入框里有字时,连按两次 Esc 是清空文字。被清掉的文字会进入输入历史,按上箭头可以找回。
菜单打开后会列出本次会话发过的每条提示词。先选要回到的位置,再选对它做什么。
Restore code and conversation 代码和对话一起回到那个时点
Restore conversation 只回退对话,代码保持现状
Restore code 只回退代码,保留对话
Summarize from here 把该点之后的对话压缩成摘要
Summarize up to here 把该点之前的对话压缩成摘要
Never mind 什么都不做,返回列表为什么只回退代码这一项最有用
上面六项里的第三项——只回退代码——在做实验时尤其有用。
让 Claude 试一种新做法,结果不好就只回退代码。文件回到尝试前的状态,而「那个做法行不通」这段对话仍在。Claude 保留着这份上下文,直接换个方向,你不必从头复述需求。
反过来也有:结果满意但对话又长又乱,那就只回退对话。代码保住,只整理上下文。
第四、第五项不是回退而是摘要。以所选位置为界,把之前或之后的对话压缩,腾出上下文空间。文件不动,原始消息也仍留在记录里。用方向键高亮摘要选项,在写着 `add context (optional)` 的位置输入指示,可以指定摘要侧重什么。
两个代码回退选项只在所选检查点之后确有被追踪的文件改动时才出现。若之后没有捕获到编辑,菜单只给出与对话相关的选项。
回退救不回来的东西——不知道会吃亏

检查点只追踪 Claude 通过文件编辑工具改动的文件。有四类在范围之外,不知道就会在以为已经回退、实则没有的状态上继续干活。
第一,被 shell 命令改动的文件不被追踪。用 `rm`、`mv`、`cp` 删掉或移走的文件,回退救不回来。
第二,子智能体做的编辑通常不会被还原。后台运行的智能体属于此类,那要用 git 回退。
第三,软链接或硬链接的路径会被跳过,此时会出现 `Restored the code, but skipped N files` 警告。
第四,你在 Claude Code 之外手动改的文件,以及其他并发会话改的文件,都不会被捕获。
所以官方文档明确写着:检查点不是版本控制的替代品。它用于会话级的快速恢复,永久历史和协作交给 git。
2. /btw — 不打断主线,在旁边问
`btw` 是 by the way 的缩写。Claude 正干活时你忽然想问别的,就用它。
此前只有两个都不好的选择:直接问会打断流程、把对话记录弄乱;开新会话则那边没有你的上下文。
`/btw 你的问题` 把这个问题挪到旁路。主线工作照常继续,答案单独显示;因为它看得到整段对话,所以不用重新解释上下文。看完关掉,这个问题不会留在对话记录里。
不带问题只敲 `/btw`,会显示你最近一次的旁路提问,方便回看之前的答案。若还没问过,会打印一行用法。
成本上也划算。会话越长,每个问题越贵,因为整段对话要被重新读一遍;而这条路径复用已缓存的对话。会话越长,这点越重要。
3、4. /rename 与 /resume — 会话不会消失
如果你以为关掉终端对话就没了,并不是。文档开篇就给了定义:会话是绑定到项目目录的、已保存的对话。
也就是说所有对话都以会话为单位持续保存在本地。关掉终端、执行 `/clear`,都仍可从中断处接着来。
但没有名字以后就不好找,所以这两个命令是一对。工作中执行 `/rename <名字>`,这个名字也会显示在提示栏上。下次用 `/resume <名字>` 直接回去。
记不住名字也没关系。只敲 `/resume` 会打开会话选择器,用方向键移动、按空格可以预览该会话做过什么。在新开的终端里,`claude --resume` 打开同一个列表。
回来的不只是对话:包含工具调用与结果的完整记录、会话当时用的模型,以及尚未过期的预定任务都会一起恢复。
/rename auth-refactor ← 给当前会话起名
(关掉终端,再打开)
claude --resume auth-refactor ← 直接回到那个会话
claude --resume ← 忘了名字?从列表里选
claude --continue ← 接着此目录最近的一个会话
(在会话内部切换到别的对话)
/resume auth-refactor5. /insights — 拿一份关于自己怎么干活的报告
文档里只有一行,很容易略过,但这个命令会分析你在这台机器上最近的会话,生成一份 HTML 报告。
报告装三样东西:你在哪些项目里干活、你怎么用 Claude Code、以及哪里出岔子。最后一项才是重点。
具体包括:创建了多少会话、用了多少天这类活动统计;哪个项目占用时间最多;你派活的方式是先做计划,还是先丢过去再改。它还会以数据指出你在哪里反复卡住、什么事总是重来。最后给出建议——值得做成的自定义命令或技能。
运行只需 `/insights`。报告生成在 `~/.claude/usage-data/`,为 HTML,默认英文。云端会话不可用。
建议每月跑一次。当数据显示你在重复同一类请求时,那份重复正是该做成技能或自定义命令的东西。
6. /doctor — 安装状态体检
如果说 `/insights` 看的是使用习惯,`/doctor` 看的就是安装与配置状态。它的别名是 `/checkup`。
检查面很广:是否有重复或残留的安装、`PATH` 是否混乱、有没有无法解析的设置文件。它还会找出你不用却在吃上下文的技能、MCP 服务器和插件并给出代价,标出慢的钩子,并检查你所在发布通道是否有新版本。
`CLAUDE.md` 也会动:把本地文件与已提交文件去重,删掉 Claude 能从代码库自行推断的内容以精简已提交文件,并把其余始终加载的指引迁移到按需加载的技能和嵌套 `CLAUDE.md` 里。
它不会擅自改动。先给出结论,改之前必定征求确认,你可以全接受也可以挑着来。
只想看安装诊断而不开会话,就在终端敲 `claude doctor`,它以只读方式打印结果。
今天可以试的事
五个都没有需要撤销的东西。在当前打开的会话里各敲一次即可。
先清空输入框,连按两次 Esc。只确认本次会话的检查点列表会出现,然后用 `Never mind` 退出。知不知道这个列表存在,决定了下次代码乱掉时你是回退还是重写。
接着用 `/rename` 给现在做的事起个名字。关掉终端,再用 `claude --resume <名字>` 回来。
然后跑 `/doctor`。通常最先跳出来的,是有多少不用却在吃上下文的技能和 MCP。之后用 `/insights` 看一个月的自己。
最后把官方命令列表通读一遍。一百多个不必全记,但知道哪类事已经有命令,下次卡住时就有了搜索词。发布很频繁,变更记录也要偶尔看看。
