Claude Code 的 Checkpoint 是怎么实现的

概述

Checkpoint 是 Claude Code 提供的会话快照功能,可以保存当前对话的完整状态(消息、文件变更、上下文),并在需要时回退到指定时间点继续工作。


自动创建机制 : 每次用户输入都自动创建 Checkpoint ,无需手动创建

与 Git 的类比

Git 概念 Checkpoint 对应 说明
git commit /checkpoint 保存当前状态快照
git branch 并行任务线 支持多个独立工作流
git checkout /rewind 切换到指定快照
git stash 暂停任务 临时保存当前工作
git reset --hard /rewind --all 完全回退
git log /checkpoints list 查看历史

本质区别:Checkpoint 是会话级的版本控制,不仅包含文件变更,还包含对话历史和 AI 上下文状态。


使用场景

场景 示例
错误恢复 误删代码后回退到上一个正确状态
分支探索 尝试新方案前创建 Checkpoint,不满意则回退
长任务保护 复杂任务中途自动创建 Checkpoint,防止丢失
上下文压缩 Checkpoint 作为压缩点,释放上下文窗口

checkpoint 管理

命令 说明
/checkpoint list 列出所有 checkpoints
/checkpoint show <id> 查看 checkpoint 详情
/checkpoint delete <id> 删除指定 checkpoint
/checkpoint prune 清理过期 checkpoints

如何调用不同的回退模式

回退命令
按两侧 Esc 或者 输入

/rewind

即可打开回退菜单,一个可滚动列表会把你的每条提示显示为检查点。选择某条消息后,你会看到四个选项:

───────────────────────────────────────────────────────────────────────────────────────────────────
  Rewind

  Confirm you want to restore to the point before you sent this message: (回退前请确认你要保留到该点的内容)

  │ ckeckpoint 是怎么实现的
  │ (22h ago)

  The conversation will be forked.
  The code will be restored -368 in Claude Code的CheckPoint是怎么实现的.md.

  ❯ 1. Restore code and conversation (代码和对话都回到那一刻)
    2. Restore conversation  (只回退对话,保留当前文件/代码变更)
    3. Restore code (只回退文件/代码变更,保留对话)
    5. Summarize from here ( 在此处总结-将选定位置之后的所有内容压缩成摘要,保留该点之前对话的完整细)
    6. Never mind (取消操作)

什么时候用:Claude 自作主张改多了、改错方向了、或者你自己话说错了想重来

回退后,AI 会重新加载 Checkpoint 时的上下文

注意事项

注意事项 说明
操作不可逆 回退后,checkpoint 之后的变更会丢失
文件冲突 如果文件被外部修改,回退可能失败
回退会清除之后的 checkpoints 一旦回退到某个点,该点之后的 checkpoints 会被删除

/rewind 能回退几步?
能回到本次会话中任意一个 Claude 做出更改的节点,不限步数。但前提是这次会话还没关——关了会话再开回来,rewind 历史就丢了(但代码修改在磁盘上还在)

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐