From session-flow
Verify a session's working assumptions are still true before building on them — referenced PRs/issues/branches still in the state a handoff or plan claims, base-branch drift, cited skills/plugins that were renamed or version-drifted, and memory-tier files whose subjects have since landed. Reports what drifted and re-anchors; does not resume the work. Use when: 'reanchor', 're-anchor', 'is this still current', 'verify my assumptions', 'has main moved since', 'are these premises still valid', 'is the handoff stale', 'resuming an old plan', 'check freshness'. Not for resuming work (use /session-flow:keep-going), the cross-worktree staleness inventory, PR feedback triage, or re-anchoring a standing behavioral rule (this re-anchors factual premises, not rules).
How this skill is triggered — by the user, by Claude, or both
Slash command
/session-flow:reanchorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Long-lived and resumed sessions act on stale premises: main has moved, a
Long-lived and resumed sessions act on stale premises: main has moved, a referenced PR merged or changed shape, a cited skill was renamed, an installed plugin shipped a new version, a locked plan references work that has since landed. Nothing re-verifies those assumptions against live reality before the session builds on them. This skill re-anchors a session's working assumptions — checks each premise its inputs depend on against the current state, reports what drifted, and hands back a corrected picture to plan from.
It verifies premises; it does not resume the work. Run it before continuing on
old inputs, then hand to /session-flow:keep-going to actually pick the work
back up.
main — and mark the check
unverifiable if the base cannot be resolved. Fetch that resolved base ref
explicitly and count against the just-fetched tip: git fetch <remote> <base-branch>, then measure against FETCH_HEAD
(e.g. git rev-list --count HEAD..FETCH_HEAD). A bare git fetch, or a count
against a local origin/<base> tracking ref, can read falsely clean in a
single-branch or shallow checkout where that ref was never updated —
FETCH_HEAD always holds what this fetch actually retrieved. If the fetch
cannot run, report the check as unverifiable rather than assuming none. Unless the inputs record a base-tip
or merge-base baseline, report the current divergence rather than claiming
it all accrued since the inputs were written — the branch may already have
been behind. This is reanchor's own check. /source-control:worktree, when
installed, is a related but distinct capability — a cross-worktree inventory
by path / branch / PR / commit-age staleness — that does not report
behind-base or dirty-tree signal; cite it for that inventory, not for the
drift evidence here.git fetch the base, query gh, read installed vs repo-source manifests).
When a check cannot reach what it needs (no network, no gh, no fetch),
report that premise as unverifiable rather than assuming it is unchanged;
a silent "no drift" from stale local state is the exact failure this skill
exists to prevent./session-flow:keep-going./source-control:worktree
status's job when that plugin is installed; reanchor does its own base-drift
check (a git behind-count on the working branch) and never reimplements that
cross-worktree inventory./source-control:babysit-prs's job when
it is installed; reanchor never performs them — it only checks whether a
referenced PR is still in its claimed state.keep-going (same plugin) to resume; and, when they are installed,
/source-control:worktree status for the worktree inventory and
/source-control:babysit-prs for PR work.npx claudepluginhub melodic-software/claude-code-plugins --plugin session-flowCreates, edits, and verifies skills using a test-driven development approach with pressure scenarios and subagents.