situate-refocuslisted
Install: claude install-skill tony/ai-workflow-plugins
# Refocus
Work wanders. This finds out how far, in which direction, and whether
the wandering was wrong.
Read `references/goal-derivation.md` first — it
defines the precedence for deriving the goal, why nothing is stored
between runs, the three-way classification, and the four correctives.
Read `references/situation-sweep.md` for how to
resolve trunk, the base commit, tickets, and the pull request, and for
the read-only contract both commands share.
User arguments: $ARGUMENTS
## Context
Current branch — run this command and read the output:
```bash
git branch --show-current 2>/dev/null || echo "(detached HEAD)"
```
Ahead / behind trunk — run this command and read the output:
```bash
git rev-list --left-right --count "$(git symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null || echo origin/main)"...HEAD 2>/dev/null || echo "(no comparison available)"
```
Working tree — run this command and read the output:
```bash
git status --short 2>/dev/null | head -20 || echo "(unavailable)"
```
The commit range is not precomputed here. Resolve the base through the
sweep reference in step 2 — a branch stacked on another branch takes its
parent as the base, and a trunk-measured range would hand this command
the parent's commits to classify as this branch's drift.
## Procedure
### 1. Derive the goal
`$ARGUMENTS`, when given, is the goal. It is a statement from the user
and outranks every artifact.
Otherwise work down the precedence in the goal-derivation reference:
what