From vergil
Capture or restore work state across sessions. Use when wrapping up and you want to preserve context for next time ("/handoff stop", "save my progress", "hand this off before I stop"), or when picking work back up ("/handoff start", "resume where I left off", "what was I working on"). Captures work state before stopping and restores it on resume.
How this skill is triggered — by the user, by Claude, or both
Slash command
/vergil:handoffThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Standardize session-to-session continuity when an agent must restart
Standardize session-to-session continuity when an agent must restart mid-work (plugin updates, context limits, crashes). Replaces ad-hoc memory files with a disciplined, template-driven handoff protocol.
Not the PR handoff. This is session-continuity state, distinct from the
.vergil/pr-template.ymlPR handoff used by theimplement/auditpair.
Two modes:
/handoff stop — Capture current work state before killing the session./handoff start — Resume from the last handoff file after restarting.Memory policy exemption. This skill writes to the memory directory
as part of its documented workflow. Because the human invokes /handoff
explicitly, the write has implicit approval and is exempt from the
global memory management policy's approval requirement.
Write a structured handoff file to the project memory directory:
<memory-dir>/handoff_active.md
The agent fills in the template from conversation context. The agent writes the content — this skill provides the structure.
---
name: active handoff
description: Session handoff — <one-line summary of in-progress work>
type: project
---
## In-progress task
<What the agent was doing when stop was called. Phase, step, branch name,
PR numbers — enough to resume without re-deriving.>
## Completed this session
<Bulleted list of completed items with PR/issue URLs.>
## Remaining work queue
<Numbered list in execution order. Each item is one sentence.>
## Key context
<Anything non-obvious that the next session needs to know: workarounds in
effect, known failures, blocked items, environment state.>
## Restart command
<The exact slash command or instruction to resume.>
<memory-dir>/handoff_active.md.MEMORY.md (or update the existing pointer):
- [Active handoff](handoff_active.md) — <one-line summary>.#N
references.When invoked (or when the agent sees handoff_active.md in memory at
session start):
<memory-dir>/handoff_active.md.handoff_active.md to handoff_<date>.md (archived, no
longer active). Update the MEMORY.md pointer accordingly.If the agent starts a session and finds handoff_active.md in the
memory directory, it should proactively mention it: "There is a
pending handoff from a previous session. Run /handoff start to
resume, or ignore it to start fresh."
/handoff stop
overwrites the active file. Old state is lost — this is intentional;
only the most recent stop matters.Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub vergil-project/vergil-claude-plugin --plugin vergil