SuperAPI AI 工具集

handoff

办公与效率

查看项目

更新于 10-16 04:36

技能介绍

用途

Handoff 是一个用于 Claude Code 的会话交接技能,主要解决“一次会话结束、需要让下一次会话或另一个人无缝接续”的问题。它通过生成或恢复一份结构化交接文档,把足够的上下文保存下来,使后续会话能够从上次中断的地方继续。

主要能力

该技能围绕一个固定文件 docs/HANDOFF.md 工作,包含两种模式:

  • 生成模式(Generate):在会话中途或结束时,收集并整理当前工作状态,输出一份交接文档。
  • 恢复模式(Resume):读取已有的交接文档,校验环境后帮助新会话快速进入状态。

模式检测规则如下:

调用方式 模式
/handoff mid-session 生成
/handoff resume 恢复
全新会话(无参数) 若 docs/HANDOFF.md 存在则恢复,否则生成
自然语言:“resume”“pick up where we left off”“continue from handoff” 恢复
自然语言:“handoff”“wrap up”“pass the baton” 生成

该技能没有路径参数,文件始终是 docs/HANDOFF.md。

使用方式

生成模式

生成前会先收集上下文:

  • 自动检测(不询问用户):Git 分支(git branch --show-current)、工作区是否脏(git status --porcelain)、最近提交(git log --oneline -5)。
  • 从对话推断:角色(如 developer、content writer、EOS facilitator、researcher,默认 developer)、当前工作、状态(in_progress | blocked | paused | ready_for_review | complete)、关键参考(2-3 个最重要的文档)、近期改动(含 file:line-range 引用)、经验教训、产物清单、下一步、备注。
  • 仅在无法推断时询问用户:如果角色、当前工作或下一步不明确,会提出一个澄清问题,而不是猜测。

输出格式为围栏 markdown 块,包含 YAML frontmatter(handoff_date、git_branch、git_dirty、status、role)以及 Current State、Critical References、Recent Changes、Learnings、Artifacts、Next Steps、Notes 等章节。草稿会先直接打印到对话中,经用户批准或修改后,才写入 docs/HANDOFF.md。若 docs/ 目录不存在,会在用户批准后创建。

恢复模式

恢复模式分三个阶段:

  1. 查找与读取:读取 docs/HANDOFF.md;若不存在则告知用户并切换到生成模式。解析 YAML frontmatter 和所有 markdown 章节,并读取 Artifacts 中列出的每个本地文本文件。对缺失文件、二进制/不可读文件、超大文件(>500KB 采样首尾各 200 行)、URL(跳过读取,仅作参考)分别记录。
  2. 校验环境:并行运行 git branch --show-current、git status --porcelain、git log --oneline -5,并与 frontmatter 对比;检查 CLAUDE.md 是否存在并读取。构建不匹配列表。
  3. 定位与询问:按优先级评估场景——
    • Complete(状态为 complete):告知用户工作已完成,并询问接下来想做什么。
    • Stale(handoff_date 距今超过 7 个日历日):提示可能已过期,询问是信任该交接继续,还是先重新探索代码库。
    • Diverged(当前分支或脏状态与 frontmatter 不符):逐项展示不匹配,询问如何处理。
    • Incomplete(状态为 in_progress、blocked、paused 或 ready_for_review):确认状态,展示阻塞项,聚焦完成第一个未完成步骤,开始前请用户确认。
    • Clean(以上均不适用):给出简要摘要,列出下一步,并询问是否开始第一步。

适用场景

  • 工作会话结束时
  • 对话中途切换角色或上下文
  • 关闭有未完成工作的长时间会话前
  • 用户说“handoff”“wrap up”“pass the baton”等
  • 从之前的交接文档开始新会话
  • 用户说“resume”“pick up where we left off”“continue from handoff”等

限制与规则

  • 交接文档应保持简洁,目标是快速上手,而非完整会话记录。
  • 无内容的章节应省略(如没有关键参考则跳过该节)。
  • 下一步必须具体可执行,例如“continue implementing X”,而非“keep going”。
  • 不得包含敏感信息(API 密钥、令牌、密码)。
  • 优先使用 path/to/file.ext:line-range 引用,而非内联代码块。
  • 生成模式:始终先打印草稿并获用户批准后再写入文件;仅在批准后创建 docs/ 目录。
  • 恢复模式:绝不自动执行下一步,始终先通过 AskUserQuestion 确认;在展示分析前读取所有本地文本产物文件;将下一步视为建议而非命令;若找不到 docs/HANDOFF.md,不要猜测,应告知用户并提供生成选项。