agentleFS
poshan0126poshan0126/dotclaude/skills/catchup/SKILL.md

catchup

Skill871 starsChanged 5 months agoMITView on GitHub

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.

26 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use wrapup, plan and 1 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • Skeln-ioSkill

    wrapup

    End-of-session closeout — commit, push, and optionally post a Slack summary. Use when you say "wrap up", "done for now", "save everything", or similar.

    Also in 3 projects that use this

  • BlockSkill

    plan

    Draft a TDD, PRD, or lightweight plan in the conversation without committing it.

    Also in 3 projects that use this

  • MicrosoftSkill

    handoff

    Compact the current conversation into a handoff document for another agent to pick up.

    Also in 4 projects that use this

The file

We split this skill into the rules it gives an agent

4 rules. 0 are common, 1 is distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 21 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Handoff note: if .claude/HANDOFF.md exists, read it first — it's the previous session's intent and beats anything inferable from git.

    line 21
  2. Distinctive:

    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 …

    line 48
  3. Very specific:

    Write .claude/HANDOFF.md capturing THIS session for the next one.

    line 52
  4. Very specific:

    Never paste large diffs into the summary — reference file:line and characterize.

    line 77

“Common” is measured: kept by at least 6 in 10 of the 21 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

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:

# 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.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.