AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Handoff

skill-thatcatfromspace-claude-handoff-skill-handoff · by thatcatfromspace

Generate a HANDOFF.md capturing current session state — goal, progress, changed files (via git), decisions made, failed attempts, and the next step. Run at session end so the next session starts with full context.

No reviews yet
0 installs
39 views
0.0% view→install

Install

$ agentstack add skill-thatcatfromspace-claude-handoff-skill-handoff

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-thatcatfromspace-claude-handoff-skill-handoff)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
4mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Handoff? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Handoff

You are invoked via /handoff. Your job is to capture the current session state into HANDOFF.md so the next session can pick up without losing any context.

Pass --team to produce a richer handoff suitable for sharing with teammates.

Step 1 — Gather Git Context

Run the following to understand the actual state of the working tree:

# Current branch and latest commit
git branch --show-current 2>/dev/null || echo "(not a git repo)"
git log -1 --format="%h %s" 2>/dev/null || true

# What changed since the last commit (staged + unstaged)
git diff --name-only HEAD 2>/dev/null || true
git status --short 2>/dev/null || true

# Untracked files
git ls-files --others --exclude-standard 2>/dev/null || true

Use the output to build the Files Changed section. Do not rely on conversation memory alone — git is the source of truth.

Step 2 — Extract Session Context from Conversation

From the conversation history, extract:

  • Goal — what the user set out to accomplish (first message / stated intent)
  • Current State — where things stand now (what's done, what's in progress, blockers)
  • Progress — rough percentage if inferable
  • Key Decisions — any architectural, design, or approach decisions made this session (even if not reflected in code yet)
  • Failed Attempts — approaches tried and abandoned, with reasons
  • Open Questions — unresolved choices or unknowns the next session should be aware of
  • Next Step — the single most important thing to do next, specific enough to act on immediately

Step 3 — Check for an Existing Handoff

ls -la HANDOFF.md 2>/dev/null || echo "none"
ls -la handoff-archive/ 2>/dev/null | head -5 || echo "no archive"

Step 4 — Archive the Previous Handoff (if it exists)

if [ -f HANDOFF.md ]; then
  mkdir -p handoff-archive
  ts=$(date +"%Y%m%dT%H%M%S")
  cp HANDOFF.md "handoff-archive/HANDOFF-${ts}.md"
fi

Step 5 — Write HANDOFF.md

Create HANDOFF.md in the project root using this template:

# Handoff — [Date Time]

## Goal
[One or two sentences. What are we building or fixing, and why does it matter?]

## Current State

**Status**: [In Progress | Blocked | Ready for Review | Complete]
**Progress**: [X% — brief explanation]

[Two to four sentences describing where the work stands. What's done, what's half-done, what's untouched.]

## Branch & Commits

**Branch**: `[branch name]`
**Latest commit**: `[short hash] [subject]`

## Files in Flight

Files that are modified but not yet in a committed, stable state:

| File | Status | Notes |
|------|--------|-------|
| `path/to/file.ts` | modified | [what's incomplete or needs attention] |
| `path/to/new-file.py` | new | [purpose, current state] |

## Changed This Session

All files touched (from `git diff --name-only HEAD` + `git status`):

- `path/to/file.ts` — [one-line description of what changed]
- `path/to/file.py` — [one-line description]

New dependencies or config changes:
- [package/config change, or "None"]

## Key Decisions

Decisions made this session that affect future work:

- **[Decision area]**: [What was decided and why. Include tradeoffs if relevant.]
- [Or "No significant decisions this session"]

## Failed Attempts

Approaches tried that didn't work — read these before trying a new approach:

### [Approach Name]
**What we tried**: [Brief description]
**Why it failed**: [Root cause or error]
**Lesson**: [What to avoid or do differently]

[Or "None this session"]

## Open Questions

Unresolved choices the next session needs to address:

- [ ] [Question or decision that needs input]
- [ ] [Dependency or prerequisite that must be resolved first]

[Or "None — clear to proceed"]

## Next Step

**Do this first**: [Specific, actionable instruction. One thing, not a list.]

**Context**:
- [Any background needed to start]
- [Relevant file to read first]
- [Command to run]

**Done when**: [What success looks like for this next step]

---
*Generated: [ISO 8601 timestamp]*
*Session duration: [Approximate — e.g. "~45 min"]*

Step 6 — .gitignore Check

if [ -f .gitignore ]; then
  grep -q "HANDOFF.md" .gitignore && echo "already ignored" || echo "not ignored"
fi

If HANDOFF.md is not in .gitignore, ask the user:

> HANDOFF.md contains personal session notes. Add it to .gitignore? (yes / no / team — "team" keeps it tracked for shared handoffs)

If they say yes, append:

# Session handoff (personal notes — not for commit)
HANDOFF.md
handoff-archive/

If they say team, append only:

# Archive old handoffs but keep the current one tracked
handoff-archive/

If no, do nothing.

Step 7 — Confirm

Show a summary to the user:

Handoff saved: HANDOFF.md

  Goal:     [Brief goal]
  Status:   [Status]
  Branch:   [branch name]
  Next:     [Next step, one line]

Start your next session and I'll pick this up automatically.

Handling Edge Cases

No git repo: Skip git steps entirely. Note (no git) in the Branch section.

Nothing done this session: Write the handoff with current state as-is. Note "No changes made this session." in Current State.

Blocked: Lead the Current State with BLOCKED: and make the Next Step "Unblock by: [specific action]".

Passing --team: Expand the Key Decisions and Open Questions sections. Add a For Reviewers section with context about the approach chosen and what review is needed.


Important Notes

  • Do not hallucinate file paths — only list files that appear in git status or that you created/edited in this conversation.
  • Keep Next Step singular. A list of next steps is a todo list, not a handoff — it creates decision fatigue at session start.
  • Be honest about failed attempts. This section saves the next session from repeating wasted work.
  • Timestamps in ISO 8601 format: 2024-01-15T14:30:00+05:30 (include local offset).

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.