用途:在 Claude 执行工作流时跨会话保存与恢复状态,避免上下文丢失后重新开始。触发条件包括令牌用量达到约 75% 时建议交接,用户说出 handoff/save 执行保存,说出 resume 加名称或 ID 执行加载。交接文件按会话保存,路径为 .claude/handoffs/<name>.json 或 .md,名称取自会话标题 slug,冲突时追加会话 ID 后八位,同项目两个会话不会互相覆盖。保存流程:运行 node "${CLAUDE_PLUGIN_ROOT}/hooks/compact-handoff.cjs" --save --note "<done · next steps · decisions · blockers>",会话 ID 来自 SessionStart 导出的 AF_CLAUDE_SESSION_ID。交接会记录计划树锚点 .claude/plans/active.json 及项目自身计划文档,应更新既有计划而非另建一份。带开放 /run 的代码项目还需维护 run-state.json 的 current_phase 与 next_action;无 .git 或清单的非代码项目不创建运行日志,交接文件即唯一状态。保存后输出脚本打印的名称与恢复命令,如 /run resume <name> 或 claude --resume "<title>"。恢复流程:运行 compact-handoff.cjs 的 --show <name> 查看,--list 列出全部,然后重读计划文档与运行状态,核对文件状态,从笔记或下一步继续,不重做已完成工作。自动保存与恢复由钩子完成:PreCompact 总是保存;Stop 在上下文达到 AF_HANDOFF_THRESHOLD(默认 70%)时保存,无状态行数据时仅在运行开放时保存;同一会话的 SessionStart 会注入其交接内容,自动快照随后删除,手动保留;新会话只得到具名交接列表,不会拿到其他会话上下文;clear 不注入。超过 14 天的交接会被清理,可用 AF_COMPACT_HANDOFF_DISABLED=true 禁用。TOON 状态格式约 160 tokens,JSON 约 600。错误处理:未找到则显示可用项并建议 /run;损坏则从 .backup.json 恢复。清理策略:已完成保留 30 天,已取消 7 天,已暂停不限。限制与更多架构说明见 docs/architecture/HIERARCHICAL_PLANNING.md 及 docs/getting-started/;其余细节暂未提供。
session-continuation
智能体与模型
更新于 10-16 06:51