← ClaudeAtlas

github-statuslisted

List your GitHub-owned local clones under PROJECTS_ROOT that have pending work (uncommitted changes, unpushed commits, or inbound remote commits), with branch, counts, age of oldest pending work, and a per-repo summary. Each run fetches every repo's origin in parallel so the counts reflect the current remote. TRIGGER when: user asks "/github-status", wants a cross-project overview of their repos, "which repos have unpushed commits", "what's new on remotes", or "what have I been working on". DO NOT TRIGGER when: user is asking about a single specific repo (use `git status` / `git log` directly).
AnotherSava/claude-code-common · ★ 0 · Code & Development · score 72
Install: claude install-skill AnotherSava/claude-code-common
## Context - Config file: !`test -f ~/.claude/skills/github-status/config/config.env && echo PRESENT || echo MISSING` - GitHub user (script default): AnotherSava — override via `GITHUB_USER` env var ## 1. Ensure PROJECTS_ROOT is configured If **Config file** above is `MISSING`: 1. Ask the user (via `AskUserQuestion`) for the absolute path to the directory that contains all their local git clones. Suggest `$HOME/Projects` as the default if the user is on macOS, or `$HOME/code` on Linux. 2. Write `~/.claude/skills/github-status/config/config.env` with this exact content (substituting `<absolute path>`): ``` # github-status skill config — gitignored, user-specific PROJECTS_ROOT="<absolute path>" ``` If **Config file** is `PRESENT`, proceed directly to step 2. ## 2. Run the report Run `python3 ~/.claude/skills/github-status/scripts/repos-status.py`. The script output has up to three parts: 1. **Table**, fixed-width. Only repos with pending work appear — anything with no uncommitted changes, no unpushed commits, and no inbound remote commits (after the auto-pull pass) is filtered out. Rows are sorted by AGE ascending (freshest pending work first; oldest at the bottom). Columns: - **PROJECT** is always present. - **BRANCH** appears only if any repo is on a branch other than `main` or `master`. - **UNPUSHED** appears only if any repo has unpushed commits (`@{upstream}..HEAD` > 0). - **REMOTE** appears only if any repo is behind its upstream (`HEAD..@{