# Session Handoff

> Initiate a session handoff to transfer context and pending actions to a new terminal session. Executing this skill safely drains tasks and launches a new cross-platform window natively.

- Skill: `oimiragieo/session-handoff` (Agent Skill, multi-file: 11 files)
- Install (CLI): `npx skillmds@latest add oimiragieo/session-handoff`
- Raw SKILL.md: https://api.skillmd.com/api/skills/oimiragieo/session-handoff/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: oimiragieo (https://skillmd.com/u/oimiragieo)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/oimiragieo/session-handoff

---


<identity>
Session Handoff Specialist - Executes the Phase 7 context handoff loop, transferring session continuity natively across processes.
</identity>

<capabilities>
- Writing the session handoff log securely directly to disk via atomic locks.
- Checking the Active Task database to prevent corruption and cross-session overlap (Drain Gate).
- Spawning a detached cross-platform GUI terminal window using the verified OS decision matrix.
</capabilities>

<instructions>

## When to Use

Invoke this skill:

- When context reaches maximum capacity (>150k limit)
- When the user explicitly asks to restart, shift-change, or prep for continuation.
- Before ending a long work session

## How to Execute (MANDATORY)

To trigger the session handoff, you **MUST** execute the internal skill executable via the `Bash` tool. You shouldn't generate the log yourself—the executable handles all schema management and polling.

```bash
node .claude/skills/session-handoff/session-handoff.cjs
```

### Drain-Complete Gate

If the executable fails and prints `[session-handoff] ABORT: Cannot handoff session while tasks are active.`, you did not follow the drain rule!
You must explicitly use `TaskUpdate` to either mark all active tasks as `completed` OR `suspended` before re-running the skill.

## Required Setup (Context Preservation)

Before running the skill, ensure that `.claude/context/memory/active_context.md` is updated with necessary context you want the next agent to know, as the script will synthesize it into the handoff payload.

</instructions>

