up-to-datelisted
Install: claude install-skill alonbaron/claude-skills
# Up To Date
Get current before doing work. Goal: a short situational brief so you build on
the latest code with full context. **Read-only by default. Never mutate a dirty
tree, never force, never discard local work without explicit confirmation.**
## Proactive use
When work is about to start in a repo with a remote, invoke this without being
asked: announce in one line ("Running up-to-date on <repo>") and proceed.
Proactive runs stay strictly read-only — the sync decision (step 7) still
requires explicit OK.
## Steps
1. **Confirm it's a git repo with a remote.** If not, say so and stop — there's
nothing to sync.
2. **Local state:** `git status --short` and `git stash list`. Note uncommitted
changes, untracked files, stashes. This gates everything below.
3. **Fetch:** `git fetch --all --prune`. (Fetch is safe; it changes nothing
local.)
4. **Divergence:** current branch vs its upstream —
`git rev-list --left-right --count @{upstream}...HEAD`. Report ahead/behind.
No upstream (new local branch, or detached HEAD) → that command fails; say
so plainly, fall back to `origin/<default-branch>` for the comparison, and
note the branch is unpushed. Never report "in sync" from a failed command.
5. **Recent activity:** `git log --oneline -15` on the branch, and the same for
the default branch if you're not on it. Summarize what changed, not every
line.
6. **Open work (if `gh` is available and the remote is GitHub):** `gh pr list`
and `gh issue list`. Su