Skip to content
Back to skills

Handoff

ASecurity

End-of-session summary written to .claude/memory/handoffs/<date>.md so the next session can pick up cleanly. Captures what was done, what's pending, what's blocked, what to verify, and any decisions awaiting the user.

  • 7 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added May 28, 2026
ai-agentsgogit

Security analysis

A100/100

Scanned May 28, 2026

npx -y skills add viknesh20-20/claude-code-tool-kit --skill handoff --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Handoff?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Handoff
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/viknesh20-20-handoff/badge)](https://www.skillsdirectory.com/skills/viknesh20-20-handoff)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: handoff
description: "End-of-session summary written to .claude/memory/handoffs/<date>.md so the next session can pick up cleanly. Captures what was done, what's pending, what's blocked, what to verify, and any decisions awaiting the user."
---

# /handoff

Write an end-of-session handoff summary so the next session — yours, your teammate's, or a future-you's — can resume work without losing context.

## When to use

- End of a working session, even a short one, if work is left unfinished.
- Before stepping away from a long-running task (deploy in progress, migration mid-flight, large refactor in progress).
- Before switching contexts to a different project.
- After a meaningful milestone (feature shipped, decision made, blocker hit).

## Operating method

Read the current session transcript and produce a structured summary. Save it to `.claude/memory/handoffs/<YYYY-MM-DD>.md`. If a handoff already exists for today, append to it (don't overwrite — sessions can resume mid-day).

### Sections to populate

```markdown
---
name: handoff-<YYYY-MM-DD>-<HH-MM>
type: handoff
description: <one-line: what was the focus today?>
created: <YYYY-MM-DD HH:MM TZ>
---

# Handoff — <date>

## Focus today
<2–3 sentences. The actual goal, not the title.>

## What we did
- <specific change, with file paths or commit refs>
- <…>

## What's left for next session
- [ ] <task 1, with enough detail to start cold>
- [ ] <task 2>

## Blocked / waiting
- <blocker, who/what we're waiting on, when expected>

## Decisions made
- <decision> — chosen because <reason>. Reversible if <condition>.

## Decisions awaiting the user
- <question> — needs answer before <next step>.

## To verify before continuing
- <test that should still pass>
- <metric that should still be in budget>
- <thing the user said they'd check>

## Surprises / things I learned
- <non-obvious fact about the codebase or domain>
  (if it'll matter beyond this week, also save as a project memory)

## Open files / branches
- Branch: <name>
- Uncommitted files: <list>
- Stash entries: <list>

## Next concrete action
<the single first thing to do next session — small enough to not need re-thinking>
```

### Update the index

Append to `.claude/memory/MEMORY.md`:

```
## Handoffs
- [<YYYY-MM-DD>](memory/handoffs/<YYYY-MM-DD>.md) — <focus from description>
```

Newest at the top of the section.

## Behavior rules

- **Don't summarize what's already in git.** A handoff is for state that *isn't* in code: ambiguity, awaiting decisions, surprises, things to verify.
- **Promote to long-term memory if appropriate.** Surprises that'll matter in a month should also be saved to `project/`. Handoffs decay; project memory is curated.
- **Be specific about the next action.** "Continue working on auth" is useless. "Open `src/auth/sign-in.ts:42`, replace the bcrypt call with `argon2.hash` and update the test" is useful.
- **Surface decisions awaiting the user prominently.** This is the highest-value section — questions the user needs to answer to unblock progress.
- **Don't include secrets** — same redaction rules as other memory.

## Output format

Show the handoff before writing. Confirm. Write. Print a one-line "Handoff saved" + the path.

```
## Handoff preview
[…full content…]

Save? [Y/n]
```

After save:

```
✓ Handoff saved: .claude/memory/handoffs/2026-05-02-15-45.md
✓ Indexed in .claude/memory/MEMORY.md

Next session start: read this handoff and pick up at "Next concrete action".
```

## Calibration

A good handoff is roughly the length of a Slack message, not a status report. Three to ten lines per section. If you're padding, drop the section.

If nothing is pending and the session was clean: skip the handoff. Don't write empty stubs.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…