repo-statuslisted
Install: claude install-skill DavoDC/claude-playbook
# /repo-status - Multi-Repo Status Overview
Check the state of all repos in your workspace before a container rebuild, session end, or switching between repos.
## What it checks
For each repo in the configured directory:
1. Current branch
2. Uncommitted changes (dirty file count)
3. Unpushed commits (commits ahead of upstream)
Output as a compact markdown table:
| Repo | Branch | Dirty | Ahead |
|------|--------|-------|-------|
Flags:
- Any repo with dirty files
- Any repo with unpushed commits
- Any repo on an unexpected branch (e.g. not `main`)
Never fetches - no network requirement. Read-only.
## Implementation
```bash
# For each repo dir in your workspace root:
REPOS=$(ls -d /path/to/workspace/*/ 2>/dev/null)
echo "| Repo | Branch | Dirty | Ahead |"
echo "|------|--------|-------|-------|"
for REPO in $REPOS; do
[ -d "$REPO/.git" ] || continue
NAME=$(basename "$REPO")
BRANCH=$(git -C "$REPO" rev-parse --abbrev-ref HEAD 2>/dev/null || echo "?")
DIRTY=$(git -C "$REPO" status --short 2>/dev/null | wc -l | tr -d ' ')
AHEAD=$(git -C "$REPO" rev-list --count "@{upstream}..HEAD" 2>/dev/null || echo "?")
echo "| $NAME | $BRANCH | $DIRTY | $AHEAD |"
done
```
## Rules
- Report, never fix. This skill surfaces state only.
- If any repo has dirty=N or ahead>0, say so explicitly after the table.
- If a repo shows `?` for ahead (no upstream configured), note that as a gap.
## When to run
- Before destroying the development environment (pre-rebuil