Agent skill

Spectre Handoff

by joenandez in joenandez/spectre

Save a quiet, branch-keyed session snapshot with continuity, active work, and optional task/todo state for automatic resume.

MITAuto-check passed

Install Spectre Handoff

skills CLI
$ npx skills add joenandez/spectre --skill spectre-handoff -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install joenandez/spectre spectre-handoff --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/joenandez/spectre.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/spectre/skills/spectre-handoff .claude/skills/spectre-handoff && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
spectre-handoff
GitHub stars
164
Token cost
~1.3k tokens
SKILL.md length
474 words
Files
1
Skills in repo
26
Repo updated
First seen
Licence
MIT

At a glance

Save a quiet, branch-keyed session snapshot with continuity, active work, and optional task/todo state for automatic resume.

  • Works in 4 steps: Gather repository/history/task state in… → Compose the current snapshot from… → If selected session_count = 0, write the… → …
  • Pausing a coding session
  • SKILL.md covers Purpose, Inputs, Working Set and Outputs + DONE, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Spectre Handoff is an agent skill from joenandez/spectre. Save a quiet, branch-keyed session snapshot with continuity, active work, and optional task/todo state for automatic resume. Use when ending or pausing a coding session; do not use for project documentation or workflow routing.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Spectre is a battle-tested 6 stage agentic engineering workflow for building complex, production-ready features. You stay in the loop for the decisions that matter. Your agents…. The licence is MIT.

When your agent uses it

  • Pausing a coding session
  • Do not use for project documentation
  • Workflow routing

Example prompts

  • “/spectre-handoff”

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Gather repository/history/task state in one shell call: resolve raw branch (fallback unknown), short HEAD, worktree count, canonical and…
  2. Compose the current snapshot from session memory. Preserve the outer workflow’s already-selected Next (recommended) skill and observed…
  3. If selected session_count = 0, write the handoff directly. Otherwise dispatch exactly one @spectre:sync with the full current JSON inside…
  4. Treat canonical artifacts as shared state; write no intermediate documents. Verify the final JSON and any todo-history retention before…

What it can do on your machine

Read from SKILL.md and the folder at commit 931c9e8. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are json).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Spectre Handoff loads about 1.3k tokens when it runs. Until then it costs about 61 tokens; SKILL.md has 474 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~61
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from joenandez/spectre at commit 931c9e8, republished under its MIT licence (© joenandez). 474 words, ~1,253 tokens.

Download SKILL.mdSave it as .claude/skills/spectre-handoff/SKILL.md (or your agent's skills folder).
name
spectre-handoff
description
Save a quiet, branch-keyed session snapshot with continuity, active work, and optional task/todo state for automatic resume. Use when ending or pausing a coding session; do not use for project documentation or workflow routing.
user-invocable
true
disable-model-invocation
true

handoff

Purpose

Persist the smallest complete state needed to resume the current branch. Finish in 2–3 tool calls and emit only the final confirmation.

Inputs

  • $ARGUMENTS: task name; default to the raw current branch.
  • Current conversation/session memory: goal, completed and active work, decisions, constraints, blockers, risks, open questions, next steps, active files/IDs, recent verification commands, outer workflow routing, and any nonempty agent-native todo list.
  • Late-bound repository state: raw branch, HEAD, worktree status, canonical/legacy handoff history, and optional healthy bd tasks labeled with the branch.

Working Set

  • CANONICAL_DIR=.spectre/handoffs/{raw-branch}; slash-containing branches intentionally create nested directories.
  • LEGACY_DIR=docs/tasks/{raw-branch}/session_logs is read-only fallback history.
  • Canonical *_handoff.json history wins. Use matching legacy history only when canonical history is empty; count that selected history so the first canonical handoff continues its numbering.
  • New handoffs and todo snapshots write only under CANONICAL_DIR. Resolve timestamp, selected history directory, and output path once and pass them literally; never reconstruct branch identity from paths.

Outputs + DONE

Write {timestamp}_handoff.json as valid JSON with this exact v1.1 shape:

json
{
  "version": "1.1",
  "timestamp": "YYYY-MM-DD-HHMMSS",
  "branch_name": "raw branch",
  "task_name": "argument or raw branch",
  "session_number": 1,
  "progress_update": {
    "summary": "string",
    "goal": "string",
    "accomplished": [],
    "now": "string",
    "next_steps": [],
    "confidence": "high|medium|low",
    "constraints": [],
    "decisions": [],
    "blockers": [],
    "open_questions": [],
    "risks": []
  },
  "working_set": {
    "key_files": [],
    "active_ids": [],
    "recent_commands": []
  },
  "beads": {
    "available": true,
    "workspace_label": "raw branch",
    "task_count": 1,
    "epic_id": null,
    "epic_title": null,
    "tasks": [{"id":"", "title":"", "status":"", "type":"", "parent":null, "children":[], "labels":[]}]
  },
  "context": {
    "wip_state": "uncommitted|clean",
    "last_commit": "short SHA"
  }
}

Use “we” voice and empty arrays when optional content is absent. now identifies the exact interrupted work. Omit beads unless bd doctor succeeds and matching open|in_progress|blocked tasks exist. On continuations, @spectre:sync may add continuity while preserving current-session priority and schema.

When a nonempty agent-native todo list exists, also write its exact statuses to {timestamp}_todos.json and update todos_history.json to retain the five newest snapshots. Otherwise create neither file.

DONE when paths/numbering follow the selected-history rule; current summary, now, accomplished, next_steps, confidence, working set, and session number are preserved; optional beads is omitted when unavailable/empty; JSON reparses; and only the applicable canonical files changed.

Show full SKILL.md (208 more words)Show less

Method / guardrails

  1. Gather repository/history/task state in one shell call: resolve raw branch (fallback unknown), short HEAD, worktree count, canonical and legacy counts, selected history, next session number, timestamp/output path, and healthy branch-labeled bd tasks. Create only CANONICAL_DIR.
  2. Compose the current snapshot from session memory. Preserve the outer workflow’s already-selected Next (recommended) skill and observed reason verbatim as the first next step; include its canonical artifacts in key_files. Do not independently reroute or invent todo state.
  3. If selected session_count = 0, write the handoff directly. Otherwise dispatch exactly one @spectre:sync with the full current JSON inside <current_session>, plus the literal selected history directory and canonical output file inside <session_history_path> and <handoff_output_path>. It reads at most the three newest prior handoffs and writes the final file.
  4. Treat canonical artifacts as shared state; write no intermediate documents. Verify the final JSON and any todo-history retention before claiming success.

Handoff

HandoffDetails
🧭 Current phaseDone
📦 What was just doneResult
▶️ Proposed next stepRender resolved action.

First: path/first-session notice; continuation: path/session/continuity counts. Output only applicable table.

Escalate-If

  • The canonical file, continuation synthesis, JSON validation, or required todo writes fail: surface the concrete failure and do not claim the handoff was saved.

Next step: resume from the saved canonical handoff.

© joenandez, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/spectre/skills/spectre-handoff of joenandez/spectre.

Open the folder on GitHubat commit 931c9e8

Compare with similar skills

Spectre Handoff next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Spectre Handoff compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Spectre Handoff this skilljoenandez/spectre164—~1.3kAutomated safety check: PassMIT
Session Handoff Documentthedotmack/claude-mem99k—~1.4kAutomated safety check: PassApache-2.0
Handoffnexu-io/open-design100k—~547Automated safety check: PassApache-2.0
Handoffalirezarezvani/claude-skills28k—~2.5kAutomated safety check: NotesMIT
Handoffalirezarezvani/claude-skills28k—~532Automated safety check: PassMIT
Session Handoff Writercodewhale-hq/Codewhale41k—~1.2kAutomated safety check: PassMIT

Similar skills

  • Session Handoff Document

    thedotmack/claude-mem

    Writes a HANDOFF.md capturing goal, state, files, failed attempts and next steps so a fresh agent session can continue exactly where this one stopped.

    99k GitHub stars~1.4k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Handoff

    nexu-io/open-design

    Push the run's accepted artifact to a downstream collaboration surface (cli, other code agents, cloud, desktop) and stamp the artifact manifest with the export target.

    100k GitHub stars~547 tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Handoff

    alirezarezvani/claude-skills

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

    28k GitHub stars~2.5k tokensUpdated 1 mo ago
    Agent WorkflowsAuto-check: notes
  • Handoff

    alirezarezvani/claude-skills

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

    28k GitHub stars~532 tokensUpdated 1 mo ago
    Product & Project ManagementAuto-check passed
  • Session Handoff Writer

    codewhale-hq/Codewhale

    Writes a compact handoff note from real git and CI state so the next session or a teammate can pick up the work without rebuilding the context.

    41k GitHub stars~1.2k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Quiet

    kunchenguid/firstmate

    Enter quiet supervision mode when the captain invokes /quiet or asks for quiet mode, quiet-while-present, or fewer routine wake turns while they stay in the session.

    7.8k GitHub stars~1.4k tokensUpdated today
    Auto-check passed

More from joenandez/spectre

All 26 skills in this repo
  • Verify Spectre

    joenandez/spectre

    A skill your agent uses when validating that the Spectre plugin itself still works after ANY change to this repo — skills, prompts, agents, hooks, the CLI, the Codex mirror, or a release.

    164 GitHub stars~1.5k tokensUpdated 8 days ago
    Auto-check passed
  • A skill your agent uses when modifying the Codex SPECTRE install flow, SessionStart continuity, project skill syncing, registry injection, or Codex-specific runtime files.

    164 GitHub stars~2.2k tokensUpdated 8 days ago
    Auto-check passed
  • Spectre Learn

    joenandez/spectre

    User-invoked front door for durable capture. An agent skill from joenandez/spectre.

    164 GitHub stars~1k tokensUpdated 8 days ago
    Auto-check passed
  • Spectre Rewrite Skill

    joenandez/spectre

    Rewrite a verbose SPECTRE skill into a compact, contract-form Spectre skill proposal — clear on WHAT, silent on HOW — grounded in the spectre-light distillation and freedom-tier budget.

    164 GitHub stars~3k tokensUpdated 8 days ago
    Auto-check passed
  • Spectre Rewrite Subagent

    joenandez/spectre

    Rewrite Spectre subagent definitions into compact, contract-driven agents with clear routing, least-privilege tools, output schemas, and an auditable rewrite trail.

    164 GitHub stars~1.8k tokensUpdated 8 days ago
    Auto-check passed
  • Spectre Capture

    joenandez/spectre

    Capture durable project decisions, accepted corrections, verified reusable patterns or gotchas, disproved guidance, and changed persistent blockers as soon as they matter.

    164 GitHub stars~1.2k tokensUpdated 8 days ago
    Auto-check passed

Questions about Spectre Handoff

What does Spectre Handoff do?

Save a quiet, branch-keyed session snapshot with continuity, active work, and optional task/todo state for automatic resume. Spectre Handoff is an agent skill from joenandez/spectre. Save a quiet, branch-keyed session snapshot with continuity, active work, and optional task/todo state for automatic resume.

When should I use Spectre Handoff?

Spectre Handoff fits situations like: pausing a coding session; do not use for project documentation; workflow routing.

How do I install Spectre Handoff in Claude Code?

Run `npx skills add joenandez/spectre --skill spectre-handoff -a claude-code`. Or copy the skill folder (plugins/spectre/skills/spectre-handoff in joenandez/spectre) into .claude/skills/spectre-handoff in your project. Claude Code loads it when a task matches its description.

How do I install Spectre Handoff in Codex?

Run `npx skills add joenandez/spectre --skill spectre-handoff -a codex`. Or copy the skill folder (plugins/spectre/skills/spectre-handoff in joenandez/spectre) into .agents/skills/spectre-handoff in your project. Codex loads it when a task matches its description.

Can I use Spectre Handoff in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add joenandez/spectre --skill spectre-handoff -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/spectre-handoff, .gemini/skills/spectre-handoff, .github/skills/spectre-handoff and .opencode/skills/spectre-handoff in your project.

What does Spectre Handoff need to run?

SKILL.md names no scripts, command-line tools or credentials: Spectre Handoff is instructions for the agent only.

Does Spectre Handoff access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Spectre Handoff safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Spectre Handoff use?

Spectre Handoff is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Spectre Handoff use?

About 1.3k tokens (SKILL.md is roughly 5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Spectre Handoff?

Skills that share tags, products or a category with Spectre Handoff: Session Handoff Document (thedotmack/claude-mem, 99k stars), Handoff (nexu-io/open-design, 100k stars), Handoff (alirezarezvani/claude-skills, 28k stars) and Handoff (alirezarezvani/claude-skills, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Spectre Handoff?

joenandez (a GitHub user) maintains it in joenandez/spectre, which has 164 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 2, 2026.

Source: joenandez/spectre on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.