Handoff
Enables your AI to pause work, ask you a question, and resume in a future conversation with your answer, regardless of which channel you respond through (SMS, email, new chat thread).
Setup
- Install this skill to
Skills/handoff/ - Add to your boot sequence (in rules or AGENTS.md): run
python3 Skills/handoff/scripts/handoff.py checkat the start of every conversation - Ensure
Data/directory exists in your workspace
State File
Single file: /home/workspace/Data/handoff.json
Only one handoff exists at a time. If a handoff file exists, there is unfinished business.
Boot Check (Every Conversation)
At the start of every conversation, after loading your persona/profile context:
python3 /home/workspace/Skills/handoff/scripts/handoff.py check
If no handoff exists: Output says "No pending handoff." Continue normally.
If a handoff exists: Output includes the full handoff context. Do the following:
- Read the handoff context carefully
- Tell the user: "I have a pending handoff from a previous session" and summarize what was in progress and what was asked
- If the current message appears to be a response to the handoff question, resume the work using their input, then clear the handoff
- If the current message is about something else entirely, mention the pending handoff briefly and ask if they want to address it or shelve it
- After the handoff is resolved, clear it:
python3 /home/workspace/Skills/handoff/scripts/handoff.py clear
Creating a Handoff (When Pausing)
When you need the user's input to continue and the current session needs to end:
python3 /home/workspace/Skills/handoff/scripts/handoff.py save \
--task "Brief description of what you're working on" \
--context "Detailed context: what's been done, where files are, what state things are in" \
--question "The specific question or decision you need from the user" \
--resume "Instructions for your future self on how to resume once you have the answer"
After saving, notify the user. Choose based on urgency:
- SMS (default, most likely to be seen quickly):
send_sms_to_user - Email (for longer context):
send_email_to_user - Both (urgent + detailed): send both
The notification should include:
- What you were working on (1 line)
- What you need from the user (the question)
- "Reply anywhere and I'll pick it up next conversation"
CLI Reference
python3 /home/workspace/Skills/handoff/scripts/handoff.py <command> [options]
| Command | Purpose |
|---|---|
| check | Check for pending handoff. Returns handoff context or "no pending handoff" |
| save | Create a new handoff (--task, --context, --question, --resume) |
| clear | Remove the pending handoff after it's been resolved |
| show | Display the full handoff file contents (same as check but always verbose) |
Rules
- Never create a handoff for something you can figure out yourself. Search first, check memory, read files.
- Never have more than one handoff at a time. If one exists and you need to create another, resolve or replace the existing one.
- Always notify the user after creating a handoff. Don't just silently save it.
- Always clear the handoff after resolving it. Don't leave stale handoffs.
- The handoff file is your continuity mechanism. Write it like you're briefing a colleague who has zero context.