handoff SKILL.md skillA
handoff from xsxdot/handoff is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add xsxdot/handoff/handoff@git:20261023.6d9dccbPins git:20261023.6d9dccb in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- xsxdot/handoff
- Path
skills/handoff/SKILL.md- Versions recorded
- 22
- Latest version
- git:20261023.6d9dccb, committed Oct 23, 2026
- First version recorded
- Sep 3, 2026
- Size
- 102,178 bytes
- Repository stars
- 25
- License
- Apache-2.0
用 handoff CLI 以协调者身份把实现计划派发给独立 executor(opencode / claude / grok / codex / agy)执行并盯完全程。只要涉及「把这个 plan 交给远程开发机跑」「派发任务给 executor 执行」「盯 handoff 任务进度」「想写个轮询/sleep 循环等 handoff 任务」「任务卡在 running / waiting_review」「reply 返回 502 / continue 报 409 / done 报 404」「wait 返回了旧事件」「新会话接管一个已经在跑的 handoff 任务」「坐下」「叫机器人」「换绑」「card bind」「card coordinate」「card rebind」,哪怕用户一个字没提「handoff」,也必须先读这份 skill——handoff 的状态机对操作顺序有硬约束,凭印象敲命令会撞 404/409,并把任务卡成没人收的孤儿。.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
<!--
职责:
- 教会「协调者」角色如何用 handoff CLI 驱动一个派发任务的完整生命周期。
不叫审核者:用户把审核者理解成 code review,协调者才是派发与盯任务的那一端。
- 固化那些一旦搞错就会卡住任务的硬约束:ID 形态、状态机前置条件、事件分诊、失败出口。
边界:
- 不讲 agentd 的部署与配置(config.yaml 各段、approver 审批链、env 注入)——见仓库 README。
- 不讲各 executor 的内部差异与协议实现——见 README「各 executor 须知」与 docs/superpowers/specs/。
- 不替协调者做审批判断:批不批、改不改由协调者(必要时升级给人)决定。
-->
# handoff:以协调者身份驱动派发任务
## 心智模型
handoff 把「写计划的人」和「干活的人」拆成两个进程:
- **agentd** 跑在 executor 所在机器上,持有**全部**状态——任务、事件、工单、executor 生命周期,落 SQLite。
- **你(协调者)**只是一个客户端。你不持有任何状态,随时可以崩溃、断网、换一台机器接管。
- 你和 agentd 之间只有一条通道:`handoff` CLI。
这条架构直接决定了三件事,后面所有纪律都是它的推论:
1. **你的会话不是权威**。「我记得这个任务已经批过了」不作数,`handoff show` 说了算。
2. **断网不丢事件**。事件在 agentd 侧持久化并带 cursor,`wait` 重连后从断点续拉。所以你没必要一直挂着。
3. **绕过 CLI 就会失配**。ssh 到执行机去杀 executor 进程、手删任务目录、直接进工作区改代码——这些 agentd 全都不知道,它记的运行态和真实存活性会当场对不上,任务卡成孤儿。
### 铁律:一切经 CLI
需要看 executor 在干什么,用 `handoff attach`(经 agentd 的 render 流,远程也不需要 ssh)。需要看代码,用 `handoff diff` / `fetch` / `run`。需要回收,用 `handoff done` / `stop`;归档后残留的 managed worktree 用 `handoff reclaim` 清;终态任务的 tmp/gocache 叶子和残留 managed 树用 `handoff gc`(默认预览,`--yes` 才删)。
…Read the whole file at its exact version.
How to install
mdr add xsxdot/handoff/handoff@sha256:be4e3eb653e24ecaThe line at the top of this page pins the label git:20261023.6d9dccb, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_i5bhgta7giql3xem)
2 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 22 versions of this file, between Sep 3, 2026 and Oct 23, 2026, about one every 2 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20261023.6d9dccb latest | 2026-10-23 | 6d9dccb | 102,178 B | A | view · diff |
| git:20261022.b1bc6d0 | 2026-10-22 | b1bc6d0 | 102,091 B | A | view · diff |
| git:20261022.6849dcf | 2026-10-22 | 6849dcf | 100,057 B | A | view · diff |
| git:20261022.67436fe | 2026-10-22 | 67436fe | 98,372 B | A | view · diff |
| git:20261022.11dfde1 | 2026-10-22 | 11dfde1 | 94,752 B | A | view · diff |
| git:20261021.d2b7672 | 2026-10-21 | d2b7672 | 93,067 B | A | view · diff |
| git:20261021.d33978a | 2026-10-21 | d33978a | 92,661 B | A | view · diff |
| git:20261021.c79e9d4 | 2026-10-21 | c79e9d4 | 90,335 B | A | view · diff |
| git:20261021.d2c5d4b | 2026-10-21 | d2c5d4b | 90,121 B | A | view · diff |
| git:20261019.be614b3 | 2026-10-19 | be614b3 | 86,647 B | A | view · diff |
| git:20261016.df35505 | 2026-10-16 | df35505 | 79,926 B | A | view · diff |
| git:20261016.d0a7b63 | 2026-10-16 | d0a7b63 | 79,690 B | A | view · diff |
| git:20260927.97de7e9 | 2026-09-27 | 97de7e9 | 74,760 B | A | view · diff |
| git:20260927.077a1fc | 2026-09-27 | 077a1fc | 74,379 B | A | view · diff |
| git:20260924.52adea9 | 2026-09-24 | 52adea9 | 72,619 B | A | view · diff |
| git:20260923.814ef04 | 2026-09-23 | 814ef04 | 72,441 B | A | view · diff |
| git:20260923.0dfa9e7 | 2026-09-23 | 0dfa9e7 | 72,238 B | A | view · diff |
| git:20260911.41a2847 | 2026-09-11 | 41a2847 | 63,817 B | A | view · diff |
| git:20260904.8a8e935 | 2026-09-04 | 8a8e935 | 63,288 B | A | view · diff |
| git:20260904.c8a21c4 | 2026-09-04 | c8a21c4 | 63,227 B | A | view · diff |
| git:20260904.1996463 | 2026-09-04 | 1996463 | 62,826 B | A | view · diff |
| git:20260903.1b80af3 | 2026-09-03 | 1b80af3 | 62,143 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (102178 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
xsxdot/handoff · 25 stars · license Apache-2.0 · pushed 2026-10-30 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_i5bhgta7giql3xem GET https://markdownregistry.com/api/v1/resolve?ref=xsxdot/handoff/handoff GET https://markdownregistry.com/api/v1/blob/be4e3eb653e24ecae0a81962f103336e68ff32519dad5872a87c8d3038f973c0
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.