mcpField
H
handover

handover

github.com/yahyabedirhanAgent 工作流260 次安装1 周前更新
代码仓库

关于 handover

用于将工作交给另一个 Agent 会话的技能,通常会准备工作树、交接文档和单行起始提示词。它引导当前会话记录决策、提交并推送工作,然后确认新会话已启动。

主要功能

  1. 01准备专用工作树和分支
  2. 02收集仅维护者掌握的决策与输入
  3. 03编写交接文档和后续步骤
  4. 04提交并推送工作树中的更改
  5. 05用单行提示词启动新会话

适用场景

  1. 01将已完成工作交给编排 Agent
  2. 02在新的 Agent 会话中继续工作
  3. 03为非大型工作明确后续步骤并交接

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/yahyabedirhan/skills --skill handover

安装后在 Claude Code 中输入/handover确认已加载。

附带文件agents/openai.yaml

详细介绍

交接

交接会启动另一个会话(通常不在当前会话中),以继续这项工作:可以是负责推进工作的编排器,也可以是接着思考的新会话。你可以在任何时候、从任何会话进行交接。新会话只能了解仓库中已有的内容,并会将其启动提示视为维护者的许可,因此应在交接时敲定当前会话能够做出的所有决定。新会话启动后,不要再去查看进展:它的交付成果(例如编排器的拉取请求)就是维护者收到的反馈。

掌握上下文的会话应在交接前加以利用。思考会话应先用 /to-spec 和 /to-tickets 编写规格说明和工单,再进行交接,否则只交接未经整理的思考内容,会让下一个会话不得不从头整理。只有维护者提出要求时,才将活动会话的工作交给一个新会话。

参数

  • <worktree-tool>:用于创建和释放工作树的工具,例如 treehouse,或普通的 git 工作树。
  • <session-host>:Agent 会话运行的位置,例如 herdr、Claude Code Desktop、Codex Desktop。
  • <agent>:启动新 Agent 会话的命令,例如 claude 或 codex,以及其标志。

步骤

  1. **为这项工作创建专属的工作树和分支,**并将默认分支上属于这项工作的未提交更改移入其中,其余更改留在原处。在新会话启动之前,让本会话继续使用自己的检出和分支,以免维护者的检出在其不知情时被切换。使用绝对路径写入工作树,并在工作树中通过 git -C <worktree> 运行 git。

    • **如果尚未创建:**使用 <worktree-tool> 创建。基于远程默认分支创建分支;如果这项工作依赖尚未推送的本地默认分支提交,则基于本地默认分支创建。
  2. **趁维护者还在时,收集交接所需的所有只有维护者掌握的信息:**答案、账号、选择。不要在聊天或文件中泄露密钥,并在交接说明中注明密钥的存放位置。

  3. **使用 /handoff 编写交接说明,**并在其中写明工作树和分支、规格说明和工单,以及新会话能否联系本会话。

    • **如果这项工作不属于一项工作计划,因此没有规格说明或工单:**让交接说明写明下一步该做什么。
    • **如果新会话无法联系本会话:**当本会话在桌面应用中运行,或在 <session-host> 无法向其发送提示的任何其他环境中运行时,本会话都无法接收消息。让交接说明告知新会话自行决定未解决的问题,并在拉取请求中列出这些问题。
  4. **确保问题跟踪系统中包含交接说明提到的规格说明和工单:**托管问题跟踪系统中的问题,或本地问题跟踪系统中工作计划文件夹里的文件。如果这项工作不属于工作计划,则跳过此步骤。

  5. **提交并推送工作树中的所有内容,**直到工作树干净且分支与远程分支一致。每次提交和每次推送都要分别调用,因为如果命令链中的其他内容触发拒绝规则,整条命令链都会被阻止。

    • **如果调用中断或被拒绝:**重试前先检查日志,因为提交或推送可能已经成功。
  6. **将启动提示写成一行,**让新会话从交接说明开始。多行提示会作为粘贴文本而非命令传入,因此不会启动其技能;其余所有内容都写入交接说明。

    新会话启动提示
    工作计划的编排者/orchestrate-with-handoff <交接说明路径>
    继续处理工作计划从 <交接说明路径> 处的交接说明继续。
    不属于工作计划的工作从 <交接说明路径> 处的交接说明继续:<一句话说明要做什么>。 这句话要为新会话提供一个起始任务。
    • **当 <agent> 是 Codex 时:**写成 $orchestrate-with-handoff,因为 Codex 使用 $ 启动技能。
  7. **在 <session-host> 中启动 <agent>,**并传入工作树、主题、新会话的角色和启动提示。

  8. 确认它正在处理提示中的任务:<session-host> 报告它正在工作、维护者确认它已启动,或本会话在此处运行该任务。告知维护者它的运行位置,然后停止。

评论

支持 Markdown