agentleFS
robertgussrobertguss/claude-code-toolkit/skills/handoff/SKILL.md

handoff

Skill118 starsChanged 4 months agoMITView on GitHub

Create structured documents that enable seamless continuity across Claude sessions. 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) 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.)" Create a structured document: Write…

191 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use decision-mapping, setup-ts-deep-modules and 10 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.
  • FabienDehopreSkill

    decision-mapping

    Turn a loose idea into a sequenced map of investigation tickets, then drive them to resolution one at a time.

    Also in 8 projects that use this

  • liufeng1976Skill

    setup-ts-deep-modules

    Wire dependency-cruiser into a TypeScript repo so each package is a deep module — implementation hidden in subfolders, reachable only through its entry-point files. User-invoked.

    Also in 42 projects that use this

  • AWSSkill

    to-questionnaire

    Turn a decision you can't fully answer into a questionnaire for someone else to fill in.

    Also in 93 projects that use this

  • GoogleSkill

    ask-matt

    Ask which skill or flow fits your situation. A router over the skills in this repo.

    Also in 87 projects that use this

  • RoentekSkill

    loop-me

    Grill me about specs for the workflows I want to build, within this workspace.

    Also in 51 projects that use this

  • LesaniSkill

    writing-beats

    Shape an article as a journey of beats, choose-your-own-adventure style. The user picks a starting beat from the raw material, you write only that beat, then offer options for where to pivot next, beat by beat, until the article reaches a natural end. Use when the user has raw material and wants to assemble it as a narrative rather than an argument.

    Also in 54 projects that use this

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 7 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 172 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Create structured documents that enable seamless continuity across Claude sessions.

    line 12
  2. Distinctive:

    Before taking a break mid-task

    line 18
  3. Distinctive:

    When you want to capture state for a future session

    line 20
  4. Distinctive:

    Before a context reset you know is coming

    line 21
  5. Distinctive:

    Create a structured document:

    line 44
  6. Distinctive:

    When starting a new session, the user can:

    line 153
  7. Distinctive:

    Ask what matters to the user before generating

    line 226

“Common” is measured: kept by at least 6 in 10 of the 172 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

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:

# 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

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

# 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

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.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

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.