mcpField
J
jww-handoff

jww-handoff

github.com/justinAgent 工作流0176 次安装6 天前更新
代码仓库

关于 jww-handoff

jww-handoff 是用于 Codex、Claude 和 Xcode 工作会话交接的 Agent 技能,面向需要跨会话延续任务的人。它通过单个持久文件记录已验证事实与后续工作,而非依赖对话摘要。

主要功能

  1. 01写入或恢复任务交接
  2. 02复用仓库内现有交接文件
  3. 03记录事实与提议并区分
  4. 04核对分支、工作区和文件状态

适用场景

  1. 01中断前保存任务进度
  2. 02在新会话中恢复工作
  3. 03多个交接候选间确认目标

安装

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

$npx skills add https://github.com/justin/jww-skills --skill jww-handoff

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

INSTALL.md
agents/
openai.yaml
hooks/
pre-compact.sh
session-start.sh
prompts/codex/
handoff.md
prompts/copilot/
handoff.prompt.md

详细介绍

工作交接

将上下文保存在一个持久文件中,以保持连续性,而不是依赖对话历史。 自动压缩上下文并不等于交接:它总结的是说过什么,而不是已验证的内容, 并且无法延续到新会话。

Xcode 可用性

直接提出请求时,Xcode 可以使用 Write 和 Resume 流程,但不会运行此技能的 Codex 或 Claude 提示词包装器和钩子。在 Xcode 对话中调用此技能,并在请求中 注明 write 或 resume,以及可选的任务 slug;中断前仍需手动记录。

选择模式

如果运行环境提供 $ARGUMENTS,请读取它。

  • resume,或调用时指定了现有交接:按照 Resume 执行。
  • write,或工作进行中但未提供参数:按照 Write 执行。
  • 未提供参数且没有正在进行的工作:如果此仓库存在交接,则按照 Resume 执行; 否则说明没有交接。

第二个参数用于指定任务 slug。若未提供,则根据分支或已说明的目标推断。如果 有多个交接可能适用,且分支和请求都无法确定要使用哪一个,请列出候选项并询问 要恢复哪项工作。

定位规范文件

  1. 如果仓库记录了交接或规划文档的位置,请遵循该位置。
  2. 否则,使用仓库根目录下的 .handoffs/<task-slug>.md。写入前确认该路径已被 版本控制忽略。如果未被忽略,则使用 ~/.handoffs/<repository-name>/<task-slug>.md, 以便交接在会话结束后仍然保留;不要使用 /tmp 或会话临时目录。必要时限定 仓库名称,以区分名称相同的仓库。提供后续恢复时使用的备用路径。说明需要添加 .handoffs/ 忽略规则,但不要因此阻止记录;更改仓库或全局忽略配置前,请先 询问。提交交接前请先询问。
  3. 对于同一任务,更新现有文件。不要创建并行版本,也不要将同一项工作拆分到多个 文件。通过路径关联相关任务,不要重复其内容。
  4. 写入或更新交接时,回复中须注明文件路径。

写入

在稳定的决策点、执行有风险或耗时较长的操作之前,以及预期会中断之前进行写入。 如仓库定义了交接格式,请遵循;否则包含以下章节:

# <Task title>

Updated: <YYYY-MM-DD>
Branch: <branch name, when the work is in Git>

## Objective
<The outcome, and the constraints that cannot be traded away.>

## Decisions
<Each decision with the evidence that settled it, cited by file and line.>

## Touched
<Files inspected, files changed, and why each matters.>

## Validation
<Each check run, its exact command, result, and when it was observed.>

## Open
<Unresolved risks, checks not run and why, and decisions needing Justin.>

## Next
<The exact next command or edit, precise enough to run without rereading this
whole file.>

将已观察到的事实与计划开展的工作分开记录。只有在本会话中读取了检查结果,才能将 该检查记录为本会话证据。保留早期交接中有用的验证记录,并注明观察日期,但不要 说成是本次重新运行的结果。记录失败时,只保留能说明问题的最小摘录。

如果调查期间维护了证据清单,其内容应直接填入「决策」和「涉及内容」章节。 不要根据对话重新推导。

更新现有交接时,根据当前状态修订每个章节。不要重复添加章节,也不要保留已被 取代的说法。

恢复

  1. 先阅读交接,再阅读源文件。
  2. 验证当前状态是否与交接一致:检查分支、工作区,以及交接声称已更改的任何文件。
  3. 只有在交接已过时、与当前状态冲突,或缺少下一步决策所需的证据时,才重新检查源文件。
  4. 执行交接内容之前,先报告交接与仓库之间的任何差异。

评论

支持 Markdown