Detect handoff state. Check for
.planning/HANDOFF.jsonvia Read tool. If missing, the session has no handoff — announce "No handoff found" and proceed to normal/gsd:progressrouting.Load STATE.md. Read
.planning/STATE.mdto restore the big-picture project position. If missing, reconstruct from.planning/ROADMAP.mdand the latest phase directory's SUMMARY.md files; if reconstruction fails, surface the error and stop.Read the handoff. Parse
.planning/HANDOFF.json. Extract phase, plan, task, status, source, uncommitted_files, decisions, context_notes, next_action. Per HANDOFF schema, all fields are always present (empty arrays / null for unset).Present project status. Emit a compact status block covering:
- Milestone + percent complete (from STATE.md frontmatter
progress.percent). - Current phase name and number.
- Plan / task position from the handoff.
- Handoff source (manual-pause vs auto-compact) and timestamp.
- Top 3 decisions and any blockers from the handoff.
- Uncommitted files summary.
- The
next_actionstring verbatim — it's the resumption hint.
- Milestone + percent complete (from STATE.md frontmatter
Route to the next action. Offer 1-3 concrete options based on handoff state. Common patterns:
- If task was mid-execute: offer
/gsd:execute-phasewith the current phase. - If phase is at plan boundary: offer
/gsd:plan-phaseor/gsd:execute-phasefor the next phase. - If there are uncommitted files that look in-progress: call attention to them before offering continuation.
- If task was mid-execute: offer
Clean up the handoff (LIFE-01). After routing — once steps 1-5 have completed without error — remove the handoff file:
node "${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/plugins/cache/gsd-plugin/current}/bin/gsd-tools.cjs" checkpoint --clearIf the command is unavailable for any reason, fall back to direct removal:
rm -f .planning/HANDOFF.jsonDo not abort the resume if cleanup fails — it's hygiene, not correctness. The next session's SessionStart will overwrite a stale handoff anyway (per D-05 from Phase 4: latest snapshot wins).
Generaldavepoon
gsd:resume-work
Resume work from previous session with full context restoration
- Stars
- 2,987
- Source
- davepoon/buildwithclaude
- Updated
- 2026-05-26
- Slug
- davepoon--buildwithclaude--resume-work
// install — copy + paste into any project
mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/davepoon/buildwithclaude/HEAD/plugins/gsd/skills/resume-work/SKILL.md -o .claude/skills/resume-work.mdDrops the SKILL.md into .claude/skills/resume-work.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.