Skip to content
cccskills
FreePublished on GitHub

handoff

Analyze the current session and write a self-contained handoff document so a fresh agent can resume the work with full context — outputs a single "Read XXX.md and do YYY." sentence

The English summary is being prepared. Showing the original description.

Works withGitHub
See how to install

Files included (1)

  • SKILL.md8.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Handoff Skill

Capture everything a fresh agent with zero prior context needs to resume the current work, write it to a single self-contained markdown document, and hand it off with one unambiguous sentence:

Read docs/handoffs/<file>.md and do <the next concrete action>.

Use this when a session is ending, when context is about to be compacted, when you are switching machines or sessions, or when the user explicitly asks for a handoff. The goal is zero context loss: the receiving agent should be able to act correctly after reading exactly one file.


Output Contract

This skill produces exactly two things:

  1. A handoff document at docs/handoffs/handoff-<YYYY-MM-DD-HHmm>.md (created if the directory does not exist). It is comprehensive, self-contained, and links to — or quotes — every artifact the next agent must read.

  2. A single closing sentence, and nothing else after the document is written, of the exact form:

    Read docs/handoffs/handoff-2026-06-17-1432.md and do <YYY>.
    

    Where <YYY> is one concrete, actionable next step (an imperative, not a vague theme). Good: "implement the parseConfig validation in src/config.ts:84 and make tests/config.test.ts pass". Bad: "continue the work" / "look into the config stuff".

The sentence is the deliverable the user hands to the next agent. The document is what makes that sentence safe to follow.


Method

Step 1 — Reconstruct what we are working on

Review the session to date and answer, concretely:

  • Objective: What is the user actually trying to accomplish? State it in one or two sentences.
  • Definition of Done: What does "finished" look like? Enumerate verifiable acceptance criteria if any exist.
  • Why: The motivation/problem behind the task, so the next agent does not re-litigate settled decisions.

Pull from: the user's original request, any GitHub Issue (gh issue view <n>), the design/plan docs, and the arc of the conversation.

Step 2 — Load any persisted metaswarm state

If this project uses metaswarm's context persistence, read and fold in whatever exists — do not duplicate it blindly, summarize and link:

ls .beads/plans/active-plan.md            # the approved plan (if mid-execution)
ls .beads/context/project-context.md      # completed work units, patterns, tooling
ls .beads/context/execution-state.md      # current work unit, phase, retry count
bd prime --work-type recovery 2>/dev/null # reload plan + state + knowledge, if beads present

If an active plan exists, the handoff must point to it explicitly and state which work unit/phase is in progress.

Step 3 — Establish current status

Be honest and specific about state. Distinguish clearly between:

  • Done & verified — with evidence (tests passing, build green, commit SHAs).
  • Done but unverified — written but not yet tested/run.
  • In progress — the exact thing being worked on right now, and where it stopped.
  • Not started — remaining work.

Capture the working tree reality so the next agent is not surprised:

git branch --show-current
git status --short
git log --oneline -10
git diff --stat

Note uncommitted changes, stashes, and whether the branch is pushed.

Step 4 — Identify required reading

List every artifact the next agent must read before acting, and for each one say why and what to look for. Categories to sweep:

  • Specs / Issues — the requirements source of truth (GitHub Issue, spec section, DoD).
  • Design docs — docs/plans/*-design.md and any approved design.
  • Plans — .beads/plans/active-plan.md, docs/plans/*-plan.md.
  • Code — the specific files and file:line anchors that are the focus of the work, plus any pattern files to imitate.
  • Tests — the tests that define correctness (failing tests are the spec under TDD).
  • Config / gates — .coverage-thresholds.json, CLAUDE.md rules, CI config that the change must satisfy.

Prefer precise pointers (src/foo.ts:120-145) over whole-file references. If something is short and load-bearing, quote it directly into the handoff so the next agent does not have to hunt.

Step 5 — Decide the single next action (YYY)

Pick the one most important, concrete next step. It must be:

  • Actionable — an imperative the agent can start immediately.
  • Specific — names files, functions, or DoD items.
  • Bounded — the immediate next move, not the entire remaining roadmap (the rest goes in the document's "Remaining work" section).

Step 6 — Write the document

Create docs/handoffs/handoff-<YYYY-MM-DD-HHmm>.md using the template below. Fill every section; write "None" where a section genuinely does not apply rather than deleting it.

Step 7 — Emit the handoff sentence

After writing the file, verify it (Step 8), then output the single sentence — exactly one line, the literal file path, and the concrete action. Do not add commentary after it.

Step 8 — Self-check before handing off

Confirm, as if you were the receiving agent who knows nothing:

  • Could I start work from this document alone, without the prior conversation?
  • Are all referenced files/paths/issues real and correct (spot-check with ls/git)?
  • Is the next action unambiguous and immediately startable?
  • Are decisions and their rationale captured so I won't undo them?
  • Are the quality gates (tests, coverage, lint, build commands) stated?
  • Does the closing sentence name the exact file and a concrete action?

Handoff Document Template

# Handoff: <short title of the work>

**Date**: <YYYY-MM-DD HH:mm> · **Branch**: `<branch>` · **Author session**: <model/agent>

## 1. Objective
<1–2 sentences: what we are trying to accomplish and why.>

## 2. Definition of Done
- [ ] <verifiable acceptance criterion>
- [ ] <…>

## 3. Current Status
**Done & verified:**
- <item> (evidence: <tests/commit>)

**Done, not yet verified:**
- <item>

**In progress (stopped here):**
- <the exact thing being worked on, and where/why it paused>

**Not started:**
- <remaining item>

### Working tree
- Branch `<branch>`, <pushed/not pushed>
- Uncommitted changes: <git status --short summary, or "clean">
- Recent commits:
  - `<sha>` <subject>

## 4. Required Reading (read these before acting)
| # | Path / reference | Why it matters | What to look for |
|---|---|---|---|
| 1 | `<path-or-issue>` | <reason> | <specific thing> |
| 2 | `<path:line>` | <reason> | <specific thing> |

## 5. Key Decisions & Rationale
- **<decision>** — <why; what alternatives were rejected and why>. Do not undo without reason.

## 6. Code Map
- `<file:line>` — <what lives here / its role in this task>
- Pattern to imitate: `<file>` — <why>

## 7. How to Verify
```bash
<test command>           # e.g., npm test
<coverage command>       # reads .coverage-thresholds.json
<lint/build command>
```
Expected: <what green looks like>.

## 8. Open Questions / Blockers
- <question needing the user, or external dependency>  — or "None"

## 9. Next Action
<The single concrete next step — the YYY — expanded with any detail the one-liner can't hold.>

## 10. Remaining Work (after the next action)
1. <subsequent step>
2. <…>

Anti-Patterns

  1. Vague next action — "continue where we left off" is useless. Name the file and the change.
  2. Assuming shared memory — the next agent has none. If it matters and isn't in the doc, it's lost.
  3. Dumping the transcript — synthesize. A 40-line oriented summary beats a 4,000-line paste.
  4. Stale pointers — verify paths and line numbers exist before citing them; code may have moved.
  5. Hiding uncommitted state — always disclose dirty working tree, stashes, and unpushed commits.
  6. Multiple "final" sentences — emit exactly one Read <file> and do <action>. line.
  7. Silent decision loss — if a choice was made and settled, record it with rationale so it isn't reopened.

Relationship to Other Metaswarm Pieces

  • Complements /prime (which loads knowledge into a session) by serializing context out of a session for the next one.
  • For mid-execution work, this skill should reference .beads/plans/active-plan.md and .beads/context/execution-state.md rather than restating them, so the next agent can bd prime --work-type recovery and then read the handoff for the human-readable narrative.
  • Run /self-reflect separately to capture durable learnings into the knowledge base; /handoff captures this task's transient state to resume it.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Enforces design review gate after brainstorming — bridges superpowers:brainstorming into the metaswarm quality pipeline

The English summary is being prepared. Showing the original description.

dsifry/metaswarm422Updated Jun 20, 2026

Create comprehensive GitHub issues with TDD plans, acceptance criteria, and agent instructions for autonomous PR lifecycle management

The English summary is being prepared. Showing the original description.

dsifry/metaswarm422Updated Jun 20, 2026

Automatic review gate that runs after brainstorming completes - spawns PM, Architect, Designer, Security, and CTO agents in parallel, iterates until all approve

The English summary is being prepared. Showing the original description.

dsifry/metaswarm422Updated Jun 20, 2026

Delegate implementation and review tasks to external AI CLI tools (Codex, Gemini) with cross-model adversarial review

The English summary is being prepared. Showing the original description.

dsifry/metaswarm422Updated Jun 20, 2026

Address PR review feedback systematically — fetch inline comments, review bodies, handle outside-diff-range comments, resolve threads with proper attribution

The English summary is being prepared. Showing the original description.

dsifry/metaswarm422Updated Jun 20, 2026

Migrate from npm-installed metaswarm to the marketplace plugin — removes redundant files with safety checks

The English summary is being prepared. Showing the original description.

dsifry/metaswarm422Updated Jun 20, 2026

See all skills by dsifry

Report a problem with this skill