← ClaudeAtlas

catchuplisted

Reads every comment, review, inline review thread, and state change on one GitHub repo's issues and PRs since the user last participated, then reports what is waiting on them, what is waiting on someone else, and what needs nothing. Read-only; never merges, comments, labels, or closes. Use when the user returns to a repo after time away, or before they resume work on an issue or PR — phrasings like "catch me up on <repo>", "did anything change", "is anyone waiting on me", "what did I miss", "any new comments", "sitrep on <repo>", "re-read the threads before I start". Accepts a bare repo name and resolves it against the local clone, so repos owned by a collaborator work.
ajbarea/techne · ★ 1 · Code & Development · score 70
Install: claude install-skill ajbarea/techne
# Catchup Catch up on one repo: read every comment, review, and state change since the user last participated, then say who is blocked on whom. Read-only. This skill never merges, comments, labels, assigns, closes, or edits. ## Why this exists The events that matter are frequently the ones nobody narrated. A teammate merges four PRs overnight and silently fixes five review items without replying. A blocking review lands ninety seconds before a merge. Catching that by hand means four separate API surfaces in the right order, every time. ## Workflow ``` - [ ] Step 1: Run the sweep script - [ ] Step 2: Verify each item's current state before bucketing it - [ ] Step 3: Report in the output format below ``` ### Step 1: Run the sweep ```bash python3 scripts/sweep.py <repo> [--since ISO8601] [--window-days N] [--prs N] [--issues N] ``` `<repo>` is a bare name (resolved against `workspace_root` in `~/.claude/techne.toml`) or an explicit `owner/name`. With no argument it uses the current directory's clone. The script emits JSON on stdout: the resolved repo, the anchor and how it was derived, an `events` list of everything after the anchor, and `open_prs` / `open_issues` carrying the standing state -- review counts, unresolved threads, CI, merge state, comment counts and who spoke last. One GraphQL call covers all four surfaces. Read the JSON. Do not re-fetch what it already returned. In particular it already carries `checks`, `mergeable`, and `mergeStateStatus` per open PR,