The /Handoff Skill Matt Pocock's /handoff skill for coding agents compacts a conversation into a markdown file written to the OS temporary directory, enabling portability across harnesses, directories, or colleagues. The skill is triggered by typing /handoff and is intended for four situations, including swapping harnesses and branching parallel work, while /compact remains the default for same-session resumption. Secrets are redacted, and specs, plans, and diffs are referenced by path or URL rather than copied. The /handoff Skill Write up a long session so another agent can continue it. Install this skill npx skills@latest add mattpocock/skills --skill=handoff Then type /handoff in your coding agent. - Source mattpocock/skills https://github.com/mattpocock/skills On this page What it does what-it-does handoff compacts the conversation you are in into a handoff document — one markdown file, written to your OS's temporary directory rather than into the workspace, that a fresh agent /ai-coding-dictionary/agent can read to pick the work up. What it buys is portability , not compression. That makes the skill narrower than it sounds. You need a file only when the work has to travel — to a new harness /ai-coding-dictionary/harness , a new directory, a colleague, or a side task you want to fork off. If nothing is travelling, you do not need a handoff: staying in the session /ai-coding-dictionary/session , /clear , a subagent /ai-coding-dictionary/subagent and /compact cover the ordinary end-of-phase case, and /compact covers it more often than this skill does. When to reach for it when-to-reach-for-it You invoke this by typing /handoff — the agent won't reach for it on its own. Pass a note about what the next session is for, and the document is written for it. Four situations are the whole trigger: | Situation | Why a file | |---|---| | Swapping harness — Claude → Codex | The new harness cannot see the old | For anything else — same harness, same directory, you are done grilling /ai-coding-dictionary/grilling and moving to implementation — /compact is the move. ask-matt /skills-ask-matt carries the ordered tree over all five options at a phase boundary. Branching is the use people skip branching-is-the-use-people-skip The skill's description reads like session resumption: write a summary, end here, resume there. Read that way it looks like a worse /compact , so it gets skimmed past. The fork case is the one worth knowing. You stay in your session and hand a copy of the accumulated context to a second agent working in parallel. That is what the detour through prototype /skills-prototype uses. You are deep in a design conversation, you hit a question that only running code will settle, and you do not want to spend the thread you built on finding out. Hand off to a prototype session, get the answer, hand the answer back, and reference it from the original thread. Two crossings, one live conversation, nothing re-explained. Three of the five options at a phase boundary preserve different things: /compact preserves your intent, /clear preserves nothing, /handoff preserves the work's ability to move. What travels, and what doesn't what-travels-and-what-doesnt The document carries the live thread — what's in flight, why, and what's next — plus a suggested skills section naming what the next agent should reach for. Secrets are redacted before it's written. What it deliberately does not carry is anything already written down. Specs, plans, ADRs, issues, commits and diffs are referenced by path or URL, never copied. That keeps the file small, and it keeps the settled detail in one place instead of two that drift. Common questions common-questions Handoff or compact? /compact unless something is travelling. Staying on the same task is a compact, not a handoff — same harness, same directory, and you need to stay in the loop is where the phase-boundary tree lands most days. /handoff 's advantage is not that it summarises better; it's that the result is a file you can carry somewhere /compact can't reach. So what's the actual difference between compact, clear and handoff? Three different things being preserved. /compact compresses this context and keeps you going in a fresh window — intent survives. /clear empties the window and starts from nothing — correct when everything behind you is disposable, and one-way if it isn't. /handoff writes a portable file — the work survives the move to somewhere else. Note that all three turn a primary source the conversation as it happened into a a summary of it . Continuing is the only move that doesn't, which is why it's the first one to rule out. secondary source /ai-coding-dictionary/secondary-source Where did my handoff file go? The temp directory, which is the most-reported friction with the skill: the paths are long, they differ per OS, and on Windows agents sometimes take several attempts to find the right one. Ask for the path back and keep it before you move on. Temp is deliberate: a handoff is a transit document, not an artifact you maintain. It is not a durable one either — see the next question. My handoff vanished between sessions. Some environments clear temp between sessions — Codex is the reported case — and /private/tmp goes on reboot. If the next session isn't starting within the hour, or is starting under a different harness, copy the file somewhere durable yourself as soon as it's written. The same applies to anything the document points at : a dispatch that references other files in temp is a dispatch the next agent can't follow. How do I actually hand it to the next agent? Open the fresh session and point it at the path: read this file, then continue. Point at the file rather than pasting the summary into a shell command — a summary containing backticks or $ ... gets mangled when it's interpolated into claude "