Create a structured session handoff document for continuity across sessions.

MITAuto-check passedAgent Workflows

Install Handoff

skills CLI
$ npx skills add robertguss/claude-code-toolkit --skill handoff -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install robertguss/claude-code-toolkit handoff --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/robertguss/claude-code-toolkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/handoff .claude/skills/handoff && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
handoff
GitHub stars
123
Token cost
~1.6k tokens
SKILL.md length
440 words
Files
2
Skills in repo
14
Repo updated
First seen
Licence
MIT

At a glance

Create a structured session handoff document for continuity across sessions.

  • Works in 4 steps: Assess Session State → Ask What Matters → Generate Handoff Document → …
  • Ending a work session
  • SKILL.md covers When to Use, Handoff Process, What to Capture and Format Guidelines, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Handoff is an agent skill from robertguss/claude-code-toolkit. Create a structured session handoff document for continuity across sessions. Use when ending a work session, switching contexts, or before a break. Captures decisions, progress, code changes, and next steps so a future session can pick up where you left off without losing context.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `README.md`).

It sits in Agent Workflows, covering Session handoff. The repository describes itself as: A collection of custom skills that extend Claude's capabilities with specialized workflows, methods, and domain knowledge. The licence is MIT.

When your agent uses it

  • Ending a work session
  • Switching contexts

Example prompts

  • “/handoff”

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Assess Session State
  2. Ask What Matters
  3. Generate Handoff Document
  4. Write the File

What it can do on your machine

Read from SKILL.md and the folder at commit f7fd35e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Handoff loads about 1.6k tokens when it runs. Until then it costs about 72 tokens; SKILL.md has 440 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~72
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from robertguss/claude-code-toolkit at commit f7fd35e, republished under its MIT licence (© robertguss). 440 words, ~1,594 tokens.

Download SKILL.mdSave it as .claude/skills/handoff/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
handoff
description
Create a structured session handoff document for continuity across sessions. Use when ending a work session, switching contexts, or before a break. Captures decisions, progress, code changes, and next steps so a future session can pick up where you left off without losing context.

Session Handoff Skill

Create structured documents that enable seamless continuity across Claude sessions.

When to Use

  • Ending a work session for the day
  • Before taking a break mid-task
  • Switching to a different project temporarily
  • When you want to capture state for a future session
  • Before a context reset you know is coming

Handoff Process

Step 1: Assess Session State

Quickly assess:

  1. What phase are we in? (exploration, planning, implementation, debugging, review)
  2. What's the active task? (what we're trying to accomplish)
  3. How far along are we? (just started, mid-way, almost done)
Step 2: Ask What Matters

Ask the user:

"I'll create a handoff document. Is there anything specific you want to make sure I capture? (Key decisions, code snippets, context about the problem, things you'll forget, etc.)"

Step 3: Generate Handoff Document

Create a structured document:

markdown
# Session Handoff: [Brief Description]

**Date:** [YYYY-MM-DD] **Project:** [project name/path] **Session Duration:**
[approximate]

## Current State

**Task:** [What we're working on] **Phase:**
[exploration/planning/implementation/debugging/review] **Progress:** [where we
are - percentage or milestone]

## What We Did

[2-3 sentence summary of the session's work]

## Decisions Made

- **[Decision]** — [Rationale]
- **[Decision]** — [Rationale]

## Code Changes

**Files modified:**

- `path/to/file.ts` — [what and why]
- `path/to/other.ts` — [what and why]

**Key code context:** [Critical snippets or patterns to remember]

## Open Questions

- [ ] [Question needing resolution]
- [ ] [Question needing resolution]

## Blockers / Issues

- [Issue] — [current status]

## Context to Remember

[Important background, constraints, user preferences, domain knowledge - things
that would take time to re-establish]

## Next Steps

1. [ ] [First thing to do next session]
2. [ ] [Second thing]
3. [ ] [Third thing]

## Files to Review on Resume

- `path/to/key/file.ts` — [why it matters]
Step 4: Write the File

Write to: .claude/handoffs/[YYYY-MM-DD]-[brief-description].md

Confirm location with user:

"I'll save this to .claude/handoffs/[filename].md. Want a different location?"

What to Capture

Always Include
  1. Decisions with reasoning — The "why" is often more valuable than the "what"
  2. Code changes — File paths, what changed, the intent
  3. Current progress — Where in the task we stopped
  4. Next steps — Clear, actionable items to resume with
  5. User context — Constraints, preferences, domain knowledge they shared
Include When Relevant
  • Errors encountered — And how they were (or weren't) resolved
  • Dead ends — Approaches tried that didn't work (saves re-exploration)
  • Key files — Files to read to get back up to speed
  • External dependencies — APIs, services, tools involved
Skip
  • Verbose tool output (file listings, grep results)
  • Intermediate reasoning that reached conclusions
  • Repeated similar operations
  • Information that's obvious from the code
Show full SKILL.md (167 more words)Show less

Format Guidelines

  • Bullet points — Scannable over narrative
  • File paths — src/foo.ts:42 not "that function"
  • Checkboxes for actions — - [ ] for next steps and open questions
  • Specifics — "Added retry logic to fetchUser()" not "made improvements"

Quality Check

Before saving, verify:

  1. Could a fresh Claude pick up from this? — Enough context to continue?
  2. Are decisions traceable? — Clear why things were decided?
  3. Are next steps actionable? — Know exactly what to do first?
  4. Is code work clear? — Know which files matter?

Using a Handoff Document

When starting a new session, the user can:

  1. Share the handoff file at session start
  2. Say "Resume from this handoff: [paste or path]"
  3. Reference it with @ mention if supported

The handoff should let you hit the ground running without lengthy re-explanation.

Example Handoff

markdown
# Session Handoff: Auth System Implementation

**Date:** 2025-01-15 **Project:** /Users/robert/projects/my-api **Session
Duration:** ~2 hours

## Current State

**Task:** Implementing user authentication for the API **Phase:** Implementation
**Progress:** ~60% - basic flow works, need refresh tokens

## What We Did

Built the core JWT authentication flow including token generation, validation
middleware, and login/logout endpoints. Hit an issue with key rotation that we
resolved by moving to config-based key paths.

## Decisions Made

- **JWT with RS256** — Stateless auth, works with distributed setup
- **Redis for refresh tokens** — Need revocation capability
- **15-min access token expiry** — Balance security/UX for mobile app

## Code Changes

**Files modified:**

- `src/auth/jwt.ts` — Token generation and validation logic
- `src/middleware/auth.ts` — Request authentication middleware
- `src/routes/auth.ts` — Login/logout endpoints
- `config/keys/` — RSA key pair storage

**Key code context:** Token validation uses RS256. Keys loaded from
`config/keys/` based on NODE_ENV.

## Open Questions

- [ ] Automatic vs opt-in refresh token rotation?
- [ ] Rate limit for login attempts? (User mentioned 10k DAU)

## Context to Remember

- Client is a mobile app - tokens need offline capability
- User has 10k daily active users - scale matters
- Using PostgreSQL for user storage
- User prefers explicit error messages over generic ones

## Next Steps

1. [ ] Implement `/auth/refresh` endpoint
2. [ ] Add rate limiting to `/auth/login`
3. [ ] Write tests for token expiry edge cases
4. [ ] Update API docs with auth flow

## Files to Review on Resume

- `src/auth/jwt.ts` — Core token logic
- `src/routes/auth.ts` — Current endpoint implementation

Key Reminders

  • Ask what matters to the user before generating
  • Decisions need reasoning — capture the "why"
  • File paths anchor the work — always include them
  • Next steps should be immediately actionable
  • Better slightly longer and useful than short and vague

© robertguss, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/handoff of robertguss/claude-code-toolkit.

  • SKILL.md
  • README.md

Open the folder on GitHubat commit f7fd35e

Compare with similar skills

Handoff next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Handoff compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Handoff this skillrobertguss/claude-code-toolkit123—~1.6kAutomated safety check: PassMIT
Orca CLIstablyai/orca87k2 repos~593Automated safety check: PassMIT
Coding Agent Session Findercode-yeongyu/oh-my-openagent70k1 repos~2.8kAutomated safety check: PassCustom licence
Beads Task Memorygastownhall/beads28k—~1.2kAutomated safety check: PassMIT
Session History Searchslopus/happy24k—~3.1kAutomated safety check: PassMIT
Paseo Agent Handoffgetpaseo/paseo20k1 repos~606Automated safety check: PassCustom licence

Similar skills

  • Orca CLI

    stablyai/orca

    Operate Orca-managed worktrees, folder contexts, terminals, repos, automations, artifacts, skill sharing, worktree comments, and Orca's embedded browser…

    87k GitHub starsUsed in 2 repos~593 tokens
    Agent WorkflowsAuto-check passed
  • Coding Agent Session Finder

    code-yeongyu/oh-my-openagent

    Finds, reads and reconstructs past coding-agent sessions across Codex, Claude, OpenCode, Senpi and many other local agent logs.

    70k GitHub starsUsed in 1 repo~2.8k tokens
    Agent WorkflowsAuto-check passed
  • Beads Task Memory

    gastownhall/beads

    Tracks multi-session work with dependencies in the bd issue tracker so the agent can find ready tasks and recover its context after conversation compaction.

    28k GitHub stars~1.2k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Searches past Claude Code, Codex and Cursor sessions and summarizes what was worked on, tried or decided, using extraction scripts instead of reading raw logs.

    24k GitHub stars~3.1k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Paseo Agent Handoff

    getpaseo/paseo

    Hands off the current task, including context, decisions and failed attempts, to a fresh agent through Paseo by writing a self-contained briefing prompt and launching that agent.

    20k GitHub starsUsed in 1 repo~606 tokens
    Agent WorkflowsAuto-check passed
  • Memori Long-Term Memory

    MemoriLabs/Memori

    Connects Claude Code to Memori Cloud for long-term memory, recalling stored context before substantive replies and saving new context afterward.

    17k GitHub stars~2k tokensUpdated 5 days ago
    Agent WorkflowsAuto-check: notes

More from robertguss/claude-code-toolkit

All 14 skills in this repo
  • Brainstorm

    robertguss/claude-code-toolkit

    Collaborative brainstorming partner for multi-session ideation projects.

    123 GitHub stars~1.7k tokensUpdated 22 days ago
    Auto-check passed
  • Voice Capture

    robertguss/claude-code-toolkit

    This skill should be used when extracting voice profiles from sample text, creating voice documentation, or matching a specific writing style.

    123 GitHub stars~1.7k tokensUpdated 22 days ago
    Auto-check passed
  • Dhh Writing

    robertguss/claude-code-toolkit

    This skill should be used when writing in the distinctive style of David Heinemeier Hansson (DHH).

    123 GitHub stars~1.6k tokensUpdated 22 days ago
    Auto-check passed
  • Pragmatic Writing

    robertguss/claude-code-toolkit

    This skill should be used when writing technical content in the style of Hunt/Thomas (The Pragmatic Programmer) and Joel Spolsky (Joel on Software).

    123 GitHub stars~1.5k tokensUpdated 22 days ago
    Auto-check passed
  • Writing Orchestration

    robertguss/claude-code-toolkit

    This skill should be used when orchestrating complex writing workflows with multiple phases.

    123 GitHub stars~1.9k tokensUpdated 22 days ago
    Auto-check passed
  • App Store Opportunity Research

    robertguss/claude-code-toolkit

    Full-pipeline iOS App Store opportunity research. An agent skill from robertguss/claude-code-toolkit.

    123 GitHub stars~5.6k tokensUpdated 22 days ago
    Auto-check passed

Categories

Questions about Handoff

What does Handoff do?

Create a structured session handoff document for continuity across sessions. Handoff is an agent skill from robertguss/claude-code-toolkit. Create a structured session handoff document for continuity across sessions.

When should I use Handoff?

Handoff fits situations like: ending a work session; switching contexts.

How do I install Handoff in Claude Code?

Run `npx skills add robertguss/claude-code-toolkit --skill handoff -a claude-code`. Or copy the skill folder (skills/handoff in robertguss/claude-code-toolkit) into .claude/skills/handoff in your project. Claude Code loads it when a task matches its description.

How do I install Handoff in Codex?

Run `npx skills add robertguss/claude-code-toolkit --skill handoff -a codex`. Or copy the skill folder (skills/handoff in robertguss/claude-code-toolkit) into .agents/skills/handoff in your project. Codex loads it when a task matches its description.

Can I use Handoff in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add robertguss/claude-code-toolkit --skill handoff -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/handoff, .gemini/skills/handoff, .github/skills/handoff and .opencode/skills/handoff in your project.

What does Handoff need to run?

SKILL.md names no scripts, command-line tools or credentials: Handoff is instructions for the agent only.

Does Handoff access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Handoff safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Handoff use?

Handoff is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Handoff use?

About 1.6k tokens (SKILL.md is roughly 6.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Handoff?

Skills that share tags, products or a category with Handoff: Orca CLI (stablyai/orca, 87k stars), Coding Agent Session Finder (code-yeongyu/oh-my-openagent, 70k stars), Beads Task Memory (gastownhall/beads, 28k stars) and Session History Search (slopus/happy, 24k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Handoff?

robertguss (a GitHub user) maintains it in robertguss/claude-code-toolkit, which has 123 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on September 16, 2026.

Source: robertguss/claude-code-toolkit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.