src/claude/skills/session-resume/SKILL.md
Full session startup for worktree agents — shells to session-pickup --from fresh (sync master + preflight), reports state (handoff mode, dispatch drift, monitor health), relaunches dead monitors, hands back next-action.
npx skillsauth add the-agency-ai/the-agency session-resumeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Worktree sessions don't start on a clean slate — master has moved, dispatches have accumulated, the handoff holds carry-over context, monitors need to be live. Without a disciplined startup, agents miss overnight dispatches, work on stale master, forget the last session's next-action, or run without the ISCP monitor so new dispatches arrive silently.
This skill shells to agency/tools/session-pickup --from fresh for the mechanics (sync, preflight, state report) and acts on the output — re-launches dead monitors, surfaces drifted dispatches, hands the agent a clean re-orient point.
PICKUP-for-fresh surface. Paired with /session-end on the other side. Contrast /compact-resume (post-compact, trimmed — no sync, no full preflight).
agency/REFERENCE/REFERENCE-HANDOFF-SPEC.md — handoff frontmatter, mode: resumption enum value.agency/REFERENCE/REFERENCE-ISCP-PROTOCOL.md — dispatch lifecycle + drift semantics.agency/REFERENCE/REFERENCE-WORKTREE-DISCIPLINE.md — why worktree sync matters.agency/REFERENCE/REFERENCE-SKILL-CONVENTIONS.md — primitive-composition pattern./session-resume
No arguments. Self-contained. Works from any branch; on master, the sync step silently no-ops (but the rest still runs — it's the mid-session resync path too).
agency/tools/session-pickup, session-preflight, worktree-sync, dispatch, handoff)./session-end). First-session-in-worktree is tolerated — pickup reports aborted or an empty next_action in that case../agency/tools/session-pickup --from fresh
--from fresh runs worktree-sync --auto and session-preflight in addition to the common PICKUP steps (read handoff, check tree, count dispatch drift, probe monitor health). Preflight failure → status=blocked.
Parse key=value output. Key fields: handoff_mode, pause_commit_sha, next_action, tree_state, dispatches_unread, dispatches_drift_since_pause, monitor_health_{dispatch,ci,issue}, status, error_reason.
status=ok — proceed to Step 3.status=blocked — surface error_reason (dirty tree? preflight fail?). Fix, re-invoke.status=aborted — fatal early bail (missing handoff, lock contention, bad identity). Surface error, stop.For each monitor_health_* = dead, invoke the corresponding skill (NOT monitor-register directly):
monitor_health_dispatch = dead → invoke /monitor-dispatches.monitor_health_ci = dead → invoke /monitor-ci.monitor_health_issue = dead → invoke /changelog-watch (or issue-monitor owner in your fleet).unknown types aren't registered — probably weren't running. Leave alone unless the agent wants them.
If dispatches_unread > 0, list via ./agency/tools/dispatch list --status unread. An unread dispatch is a blocked person — read before starting new work (standing priority). dispatches_drift_since_pause is the subset that arrived after the prior PAUSE commit — usually what to focus on first.
Report to the user:
./agency/tools/git-safe branch --show-current./agency/tools/git-safe log --oneline -1handoff_mode (should be resumption for fresh; continuation is tolerable; legacy means pre-refactor migration tolerated)next_actionAgent resumes from next_action.
status=blocked — preflight failed: checklist tells you what's missing (monitor not started, dispatch unprocessed, sync stale). Fix each failure, re-run.status=blocked — tree dirty: worktree-sync may have produced conflicts. Inspect git status, resolve, commit or stash, re-run.status=aborted — handoff missing: first-session-in-worktree is tolerated — proceed with no carry-over context and write a fresh handoff at end-of-session./iteration-complete), not per-session.next_action comes from the handoff, not this skill./captain-sync-all + handoff read — different authority scope.active (v2 refactored in session-lifecycle-refactor Phase 3 Iteration 3.4 — body collapsed from ~125 lines to ~90, now shells to session-pickup). Paired with /session-end, /compact-resume.
/session-end — PAUSE counterpart at session close./compact-resume — post-compact PICKUP (same process, trimmed)./captain-sync-all — captain-side fleet startup on master./monitor-dispatches, /monitor-ci, /changelog-watch — re-launch paths for dead monitors.agency/tools/session-pickup — primitive this skill shells to.OFFENDERS WILL BE FED TO THE — CUTE — ATTACK KITTENS!
business
Sync worktree with master — merge, copy settings, run sandbox-sync, report changes
tools
List all git worktrees with status info (branch, clean/dirty, deps)
tools
Remove a git worktree and optionally delete its branch
development
Create a new git worktree with dedicated branch and bootstrapped dev environment