Appearance
Kiro Checkpoints 会在每次发送 prompt 后创建检查点,让你可以把代码库和 Kiro 上下文一起回到某个历史点。它适合探索多种方案、试不同模型、恢复 agent 误解带来的修改,但不会追踪 Kiro 之外的文件改动。
Kiro Checkpoints:回滚代码和上下文的安全网
每次你向 Kiro 发送 prompt,Kiro 都会创建一个 checkpoint。它会显示在 chat history 中,像一个可回到的时间点。
当你点击 checkpoint 上的 Restore,Kiro 会把代码库和上下文恢复到当时状态:checkpoint 之后由 Kiro 修改的文件会被回滚,checkpoint 之后的对话上下文也会被丢弃。
Checkpoints 适合解决什么问题
Checkpoints 的价值在于给 agentic coding 加安全网。你可以更放心地:
- 尝试不同实现方案。
- 让 Kiro 用不同模型处理同一任务。
- 在 agent 误解需求后回到之前状态。
- 对复杂任务分阶段探索,而不是一次押注到底。
这对 Kiro 这类 AI IDE 很关键。Autopilot 能提高速度,但也可能一次做很多改动;checkpoints 让你可以快速回退。
Checkpoints 如何工作
当 Kiro agent 使用内置文件修改工具改动文件时,它会对文件内容做 snapshot。之后你恢复到某个 checkpoint 时,Kiro 会用当时的 snapshot 还原文件。
但有一个重要限制:Kiro 不会追踪 Kiro agent 之外的文件变化。
也就是说,如果 Kiro snapshot 了某个文件,之后你手动编辑同一个文件,或者运行格式化工具改了它,再恢复 checkpoint,你的手动改动也可能丢失。Kiro 也不会追踪 MCP tools 或 bash commands 造成的文件变化。
Checkpoints 和 Revert 的区别
Kiro 还有一个 Revert 操作。每当 agent 修改一个或多个文件并完成当前回合后,chat input 上方会出现回滚本回合变更的选项。
两者区别主要有两点:
| 功能 | 能回滚范围 | 是否回滚上下文 |
|---|---|---|
| Revert | 最新一轮 agent 的文件改动 | 不回滚上下文 |
| Checkpoint | 多轮之后的文件改动 | 会丢弃 checkpoint 之后的上下文 |
简单说,Revert 是撤销刚才那一步;Checkpoint 是回到较早的任务状态。
使用时要注意什么
不要把 checkpoint 当作 Git 的替代品。它适合 Kiro 内部探索,但不应该替代 commit、branch 或 worktree。
建议做法是:
- 小范围探索可以依赖 checkpoint。
- 大任务开始前先确保 Git 工作区干净。
- 重要任务使用独立分支或 worktree。
- Kiro 之外的手动修改,不要假设 checkpoint 一定能安全保留。
常见问题
Q: Kiro Checkpoint 会回滚手动修改吗?
A: 可能会。如果手动修改发生在 Kiro snapshot 过的文件上,恢复 checkpoint 时这些手动改动可能丢失。
Q: Checkpoint 和 Git commit 一样吗?
A: 不一样。Checkpoint 是 Kiro 会话里的回退点,Git commit 是版本控制记录。重要代码仍应使用 Git 管理。
Q: Revert 和 Checkpoint 该用哪个?
A: 只撤销最新一轮用 Revert;想回到更早的任务状态并丢弃后续上下文,用 Checkpoint。