Agent skill

Session Catchup and Handoff

by poshan0126 in poshan0126/dotclaude

Rebuilds working context after /clear by reading a handoff note and the branch's git state, or writes that handoff note before a session ends.

MITAuto-check passedAgent Workflows

Install Session Catchup and Handoff

skills CLI
$ npx skills add poshan0126/dotclaude --skill catchup -a claude-code

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

GitHub CLI
$ gh skill install poshan0126/dotclaude catchup --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/poshan0126/dotclaude.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/catchup .claude/skills/catchup && 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
catchup
GitHub stars
871
Token cost
~811 tokens
SKILL.md length
258 words
Files
1
Skills in repo
14
Repo updated
First seen
Licence
MIT

At a glance

Rebuilds working context after /clear by reading a handoff note and the branch's git state, or writes that handoff note before a session ends.

  • Works in 4 steps: Handoff note: if .claude/HANDOFF.md… → Branch state — live snapshot injected… → Read the changed files — the diff hunks,… → …
  • Resuming work on a branch after /clear or starting a fresh session
  • SKILL.md covers Catch up (default), Handoff (when $ARGUMENTS… and Rules
  • Calls git

What it does

In catch-up mode the skill reads .claude/HANDOFF.md first when it exists, since a previous session's stated intent beats anything inferred from git, and flags the note as stale if it predates the latest commit. It then checks a live git status, log and diff snapshot from the session's start, reads diff hunks rather than whole files, and for more than about fifteen changed files reads only the five with the most churn plus anything matching a focus area, listing the rest by name. It closes with a terse summary of the branch's state, or says so and asks what to work on if there is no handoff note and no divergence from the remote.

In handoff mode, triggered by the word handoff in the arguments, it writes a new .claude/HANDOFF.md under thirty lines capturing the session's goal, decisions and dead ends, shows the note and confirms before writing, overwrites any older note, and suggests adding the file to .gitignore as personal session state. Catch-up mode is strictly read-only, large diffs are never pasted into the summary, and the handoff is written as decisions and dead ends rather than a transcript.

When your agent uses it

  • Resuming work on a branch after /clear or starting a fresh session
  • Picking up a branch someone else left mid-task
  • Writing a handoff note before ending a session for the day
  • Checking whether a saved handoff note still matches the latest commit

Example prompts

  • “Catch me up on this branch before I start working.”
  • “Catch up, but focus on the auth refactor specifically.”
  • “Write a handoff note before we stop for today.”

Requirements

  • A git repository with commit history
  • Pre-approved tools (allowed-tools): Read, Bash(git status), Bash(git log *), Bash(git diff *), Bash(git branch *), Bash(git merge-base *)

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Handoff note: if .claude/HANDOFF.md exists, read it first — it's the previous session's intent and beats anything inferable from git. Note…
  2. Branch state — live snapshot injected below (git output as of this session's start; no need to re-run these three)
  3. Read the changed files — the diff hunks, not whole files. If more than ~15 files changed, read the 5 with the most churn plus anything…
  4. Summarize in this shape, terse

What it can do on your machine

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

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Bash(git status)
    • Bash(git log *)
    • Bash(git diff *)
    • Bash(git branch *)
    • Bash(git merge-base *)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

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

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    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

Session Catchup and Handoff loads about 811 tokens when it runs. Until then it costs about 51 tokens; SKILL.md has 258 words of instructions outside code blocks.

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

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 poshan0126/dotclaude at commit 94b84b9, republished under its MIT licence (© poshan0126). 258 words, ~811 tokens.

Download SKILL.mdSave it as .claude/skills/catchup/SKILL.md (or your agent's skills folder).
name
catchup
description
Rebuild working context fast after /clear or a fresh session — reads the handoff note and the branch's changes, then summarizes where work stands. Add `handoff` to write the note before stopping.
allowed-tools
Read, Bash(git status), Bash(git log *), Bash(git diff *), Bash(git branch *), Bash(git merge-base *)
argument-hint
[handoff | focus area]
disable-model-invocation
true

Two modes. $ARGUMENTS containing handoff → write the handoff note (end of session). Anything else → catch up (start of session), treating any remaining arguments as a focus area.

Catch up (default)

Rebuild context in four steps, cheapest first. Read; never modify anything.

  1. Handoff note: if .claude/HANDOFF.md exists, read it first — it's the previous session's intent and beats anything inferable from git. Note its date; flag if it predates the latest commit (it may be stale).
  2. Branch state — live snapshot injected below (git output as of this session's start; no need to re-run these three):
BASE=$(git merge-base HEAD origin/HEAD 2>/dev/null || echo HEAD~10)
echo "### git status (uncommitted/staged work in flight)"
git status --short 2>/dev/null || echo "(not a git repo)"
echo
echo "### git log --oneline ${BASE}..HEAD (what this branch did)"
git log --oneline "${BASE}..HEAD" 2>/dev/null || echo "(no divergence from base)"
echo
echo "### git diff --stat ${BASE}..HEAD (where the change mass is)"
git diff --stat "${BASE}..HEAD" 2>/dev/null || echo "(no diff vs base)"
  1. Read the changed files — the diff hunks, not whole files. If more than ~15 files changed, read the 5 with the most churn plus anything matching the focus area, and list the rest by name.
  2. Summarize in this shape, terse:
## Catchup: <branch>

**Goal** (from handoff or inferred): <one line>
**Done**: <commits/changes, 2-4 bullets>
**In flight**: <uncommitted work, or "clean">
**Next** (from handoff, or inferred): <one line>
**Watch out**: <gotchas from the handoff, if any>

If there's no handoff note and no branch divergence (fresh clone, main at origin), say so and ask what to work on instead of inventing a summary.

Handoff (when $ARGUMENTS contains handoff)

Write .claude/HANDOFF.md capturing THIS session for the next one. Keep it under 30 lines — it's a note, not a transcript:

markdown
# Handoff — <date> — <branch>

## Goal
<what this work is trying to achieve, one line>

## State
- Done: <completed + verified>
- In flight: <started, not finished — exact file/function>
- Untouched: <known remaining scope>

## Gotchas
- <what failed and why, dead ends not to repeat, surprising constraints>

## Next step
<the single concrete action to take first>

Show the note and confirm before writing. Overwrite any existing note (it described an older state). Suggest adding .claude/HANDOFF.md to .gitignore if it isn't there — it's personal session state, like CLAUDE.local.md.

Rules

  • Catchup mode is strictly read-only.
  • Never paste large diffs into the summary — reference file:line and characterize.
  • The handoff captures decisions and dead ends, not narrative. "Tried X, broke Y, use Z instead" is the gold standard line.

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

Files

Just SKILL.md in skills/catchup of poshan0126/dotclaude.

Open the folder on GitHubat commit 94b84b9

Compare with similar skills

Session Catchup and 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.

Session Catchup and Handoff compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Session Catchup and Handoff this skillposhan0126/dotclaude871—~811Automated safety check: PassMIT
CatchupDeL-TaiseiOzaki/claude-code-orchestra199—~1.8kAutomated safety check: PassMIT
Map Memory Nowazalio/map-framework156—~1.6kAutomated safety check: PassMIT
Map Memory Nowazalio/map-framework156—~1.7kAutomated safety check: PassMIT
Gccdavila7/claude-code-templates32k—~1.6kAutomated safety check: PassMIT
Elite Longterm MemoryaAAaqwq/AGI-Super-Team1052 repos~2.9kAutomated safety check: PassMIT

Similar skills

  • Catchup

    DeL-TaiseiOzaki/claude-code-orchestra

    Comprehensive onboarding for new or returning contributors. An agent skill from DeL-TaiseiOzaki/claude-code-orchestra.

    199 GitHub stars~1.8k tokensUpdated 19 days ago
    Agent WorkflowsAuto-check passed
  • Map Memory Now

    azalio/map-framework

    Finalize cross-session memory on demand; --finalize-all sweeps every dirty scratch.

    156 GitHub stars~1.6k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Map Memory Now

    azalio/map-framework

    Finalize cross-session memory on demand; --finalize-all sweeps every dirty scratch.

    156 GitHub stars~1.7k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Gcc

    davila7/claude-code-templates

    Git Context Controller (GCC) - Manages agent memory as a versioned file system under .GCC/.

    32k GitHub stars~1.6k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Elite Longterm Memory

    aAAaqwq/AGI-Super-Team

    Ultimate AI agent memory system for Cursor, Claude, ChatGPT & Copilot.

    105 GitHub starsUsed in 2 repos~2.9k tokens
    Agent WorkflowsAuto-check passed
  • Project Session Management

    Microck/ordinary-claude-skills

    Track progress across work sessions using SESSION.md with git checkpoints and concrete next actions.

    404 GitHub stars~1.9k tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed

More from poshan0126/dotclaude

All 14 skills in this repo
  • Context Budget Check

    poshan0126/dotclaude

    Estimates the per-turn token cost of a project's .claude folder and CLAUDE.md, split into always-loaded, path-scoped and invoked-only files, and flags what runs over budget.

    871 GitHub stars~1.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Codebase Onboarding Tour

    poshan0126/dotclaude

    Builds a quick mental model of an unfamiliar codebase by dispatching read-only Explore subagents and merging their findings into one brief.

    871 GitHub stars~858 tokensUpdated 1 mo ago
    Auto-check passed
  • Parallel Specialist PR Review

    poshan0126/dotclaude

    Reviews a pull request, staged changes or a file by sending the diff to specialist reviewer agents in parallel, then merges their findings into one compact report.

    871 GitHub stars~1.7k tokensUpdated 1 mo ago
    Auto-check passed
  • dotclaude Project Setup

    poshan0126/dotclaude

    Scans a codebase, interviews you, and installs only the justified Claude Code rules, hooks, agents and skills, tailored to the project's stack.

    871 GitHub stars~3.6k tokensUpdated 1 mo ago
    Auto-check passed
  • Ship Changes

    poshan0126/dotclaude

    Walks through commit, push and pull request creation for the current changes, asking you to confirm the files, message, push and PR text at each step.

    871 GitHub stars~953 tokensUpdated 1 mo ago
    Auto-check: notes
  • Interview-Driven Spec Writer

    poshan0126/dotclaude

    Interviews you about scope, behavior, edge cases and verification, then writes a self-contained SPEC.md that a fresh session can implement without this conversation.

    871 GitHub stars~804 tokensUpdated 1 mo ago
    Auto-check passed

Works with

Questions about Session Catchup and Handoff

What does Session Catchup and Handoff do?

Rebuilds working context after /clear by reading a handoff note and the branch's git state, or writes that handoff note before a session ends. md first when it exists, since a previous session's stated intent beats anything inferred from git, and flags the note as stale if it predates the latest commit. It then checks a live git status, log and diff snapshot from the session's start, reads diff hunks rather than whole files, and for more than about fifteen changed files reads only the five with the most churn plus anything matching a focus area, listing the rest by name.

When should I use Session Catchup and Handoff?

Session Catchup and Handoff fits situations like: resuming work on a branch after /clear or starting a fresh session; picking up a branch someone else left mid-task; writing a handoff note before ending a session for the day; checking whether a saved handoff note still matches the latest commit.

How do I install Session Catchup and Handoff in Claude Code?

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

How do I install Session Catchup and Handoff in Codex?

Run `npx skills add poshan0126/dotclaude --skill catchup -a codex`. Or copy the skill folder (skills/catchup in poshan0126/dotclaude) into .agents/skills/catchup in your project. Codex loads it when a task matches its description.

Can I use Session Catchup and 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 poshan0126/dotclaude --skill catchup -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/catchup, .gemini/skills/catchup, .github/skills/catchup and .opencode/skills/catchup in your project.

What does Session Catchup and Handoff need to run?

Going by SKILL.md and its folder, Session Catchup and Handoff needs the command-line tools its instructions call (git). Our summary lists: A git repository with commit history. Its frontmatter pre-approves these tools: Read, Bash(git status), Bash(git log *), Bash(git diff *), Bash(git branch *), Bash(git merge-base *).

Does Session Catchup and Handoff access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Session Catchup and 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 Session Catchup and Handoff use?

Session Catchup and 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 Session Catchup and Handoff use?

About 811 tokens (SKILL.md is roughly 3.2k 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 Session Catchup and Handoff?

Skills that share tags, products or a category with Session Catchup and Handoff: Catchup (DeL-TaiseiOzaki/claude-code-orchestra, 199 stars), Map Memory Now (azalio/map-framework, 156 stars), Map Memory Now (azalio/map-framework, 156 stars) and Gcc (davila7/claude-code-templates, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Session Catchup and Handoff?

poshan0126 (a GitHub user) maintains it in poshan0126/dotclaude, which has 871 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on August 27, 2026.

Source: poshan0126/dotclaude on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.