会话快照与分支
Checkpoint(快照)功能让你可以在对话中创建保存点,随时回滚到之前的状态,或从某个节点 fork 出新的对话分支。
什么是 Checkpoint
Checkpoint 是会话在某个时间点的完整快照,包含:
- 当前的对话消息历史
- SessionState(认知结算产物)
- Plan 状态(如果有)
- 会话元数据
你可以把它理解为对话的"存档点"。
创建 Checkpoint
手动创建
在对话界面中,通过会话菜单选择"创建快照":
- 为快照起一个描述性名称(如"方案 A 讨论完成")
- 快照创建后不会打断当前对话
适合创建快照的时机
- 在尝试不同方案前
- 重要决策点之前
- 长对话的关键里程碑
- 准备让 AI 执行有风险操作前
回滚到快照
当你对当前对话方向不满意时,可以回滚:
- 打开会话的快照列表
- 选择目标快照
- 点击"回滚"
回滚的效果:
- 对话历史恢复到快照时的状态
- 快照之后的所有消息被丢弃
- SessionState 恢复到快照时的版本
- 回滚后可以继续对话,走向新的方向
分支(Fork)
分支让你从某个快照点创建一条全新的对话线:
- 选择目标快照
- 点击"分支"
- 新会话从快照状态开始,拥有独立的会话 ID
与回滚的区别:
| 操作 | 原会话 | 新状态 |
|---|---|---|
| 回滚 | 原地修改,丢弃后续消息 | 继续在同一会话中 |
| 分支 | 保持不变 | 创建全新会话 |
分支适合"我想同时探索两个方向"的场景。
快照管理
查看快照列表
每个会话的快照列表可以在会话详情中查看,显示:
- 快照名称
- 创建时间
- 消息数量
删除快照
不再需要的快照可以删除。删除快照:
- 跨会话幂等(已删的快照再次删除不报错)
- 不影响当前对话状态
- 不影响从该快照 fork 出的分支会话
分支管理
查看分支列表
在原会话中可以查看所有从它 fork 出的分支。
分支的独立性
- 分支会话完全独立,修改分支不影响原会话
- 分支拥有自己的快照列表,也可以继续创建新的快照和分支
- 分支的记忆写入归属当前 Actor,与原会话共享 Cell 级记忆
使用场景
| 场景 | 推荐操作 |
|---|---|
| 尝试不同解决方案 | 创建快照 → 尝试方案 A → 回滚 → 尝试方案 B |
| 并行探索 | 创建快照 → Fork 分支 A → 原会话走分支 B |
| 长对话安全网 | 每个重要节点创建快照 |
| 回退错误操作 | 回滚到操作前的快照 |
相关文档
- 对话功能 →
chat-features.md - 会话管理 →
conversations.md - 上下文管理 →
context-management.md