恢复 Claude Code 会话:--continue、--resume,以及能恢复什么
Claude Code 会把每个会话实时写到磁盘。这让恢复很便宜,但值得弄清楚拿回来的到底是什么。
RoamAI 团队发布于 2026年9月9日
两条命令
- claude --continue(或 -c)恢复当前目录下最近的一个会话。
- claude --resume(或 -r)列出当前目录下的会话让你选。直接跟一个会话 id 可以跳过列表:claude --resume <id>。
两条在无交互模式下也能用。claude -p --resume <id> "下一条提示" 会在没有交互界面的情况下继续同一个会话,脚本就是这样接着人停下的地方往下走的。
会话记录在哪
每个会话是 ~/.claude/projects/ 下的一个 JSONL 文件,放在以工作目录命名的文件夹里。文件只追加不改写。恢复会话是在同一个 id 下往同一个文件追加,不会新建一个。想分叉的话加 --fork-session。
ls -t ~/.claude/projects/*/ | head哪些会恢复
- 完整的对话:你的消息、Claude 的回复、每一次工具调用和结果。模型会重新看到这一切,所以知道自己做过什么、为什么做。
- 经过自动压缩的长会话,从压缩后的摘要加上之后的内容恢复。
我们在 2.1.234 上测过:恢复后的会话保留了前面几轮的事实;把记录文件截断到更早的位置再恢复,它确实不再知道被删掉的那几轮。
哪些不会恢复
- 只存在于旧进程里的东西:还在跑的 shell 命令、在那个 shell 里设置的环境变量、后台任务。
- 文件。记录里写着改过什么,但恢复不会撤销或重做修改。工作目录现在是什么样就是什么样。
- 会话期间 Claude Code 写下的记忆文件。它们是磁盘上的普通文件,保持原样。
/rewind 有什么不同
在交互式会话里,/rewind 把对话退回到更早的一轮。它不会截断记录文件,文件仍然只追加,新的分支写在旧内容后面。它的「恢复代码」选项用的是 Claude Code 存在 ~/.claude/file-history/ 下的文件检查点,只覆盖用它自己的 Edit 和 Write 工具做的修改。这些检查点只在交互式会话里记录,-p 模式不记,通过 shell 命令做的改动也不记。
id 不对的时候
恢复一个不存在的会话会立刻报错「No conversation found」,不会悄悄新开一个。所以按 id 恢复的脚本可以依赖这个报错。
在 RoamAI 里
你不需要运行这些命令。会话留在服务器上,闲置的会被收起来,你发消息时再唤醒,客户端把所有会话显示在一个列表里。会话的用法。
不用自己维护服务器,会话也一直在
RoamAI 把 Claude Code 跑在托管机器或你接进来的服务器上,会话需要你时会通知你。注册免费,工作区 $9 / 月。
开始使用