CI status
Green/red/yellow indicator per repository with click-through to Checks or the Actions run.
RepoBar is a native macOS menu bar app for keeping GitHub work visible without living in tabs. CI status, open issues and pull requests, releases, traffic, local Git state, and rate-limit health — for every repository you care about, one click away.
One menu, multiple repositories, every signal that drives day-to-day work — without jumping between tabs, dashboards, or the GitHub CLI.
Green/red/yellow indicator per repository with click-through to Checks or the Actions run.
Open counts, recent lists, draft state, labels, and authors — corrected so PRs never leak into issue counts.
Latest release name, date, and click-through. Inline preview of a local CHANGELOG.md when present.
Per-repo blocky commit heatmap plus a header showing your overall GitHub contribution graph.
Branch, upstream, ahead/behind, dirty files, worktrees. Optional auto fast-forward on a cadence — never destructive.
Live REST + GraphQL bucket meter in the menu bar, with grouped resources, progress bars, and reset times.
RepoBar can scan a projects folder such as ~/Projects and match local
checkouts to GitHub. Local state appears next to remote state — no second tool, no
IDE switch.
Preferences › Repositories searches every repository RepoBar can access and lets you tag each one as Visible, Pinned, or Hidden. Manual rules survive even when a token rotation drops a repo from view, so access problems become legible.
Authentication uses the RepoBar GitHub App for GitHub.com, with PAT fallback for SAML SSO and Enterprise. Tokens land in the macOS Keychain on release builds.
RepoBar opens from local data first and spends GitHub requests carefully. It keeps a persistent SQLite cache for ETags, response bodies, GraphQL responses, recent lists, and rate-limit state — and it can read GitHub backups in the same Git-backed snapshot format that gitcrawl.sh publishes.
gitcrawl is a local-first
GitHub crawler that publishes a portable SQLite database via Git. RepoBar reads
the same Discrawl-style snapshot shape — manifest.json
plus per-table tables/<table>/*.jsonl(.gz)
files — and imports them into its own SQLite cache.
When GitHub is rate-limited, offline, or temporarily unavailable, RepoBar falls back to the imported archive automatically. Issue and PR lists keep answering; CI status keeps loading from cache; the menu does not go blank.
RepoBar owns its own cache and archive configuration. It does not modify gitcrawl databases or read gitcrawl config — point it at any compatible snapshot Git repository and it imports cleanly.
manifest.json into ~/Library/Application Support/RepoBar.
repobar archives update pulls the snapshot Git repo and re-imports on demand.
RepoBar ships repobar alongside the app — same auth, same cache, same
archive paths. Use it for scripts, agents, diagnostics, or just because you live in
the terminal.
$ repobar repos --owner openclaw --sort prs --plainopenclaw/openclaw issues 12 prs 4 ★ 412 pushed 24m agoopenclaw/gitcrawl issues 3 prs 1 ★ 68 pushed 3h ago$ repobar rate-limits --plaincore 4983 / 5000 resets in 53mgraphql 984 / 5000 resets in 47msearch 24 / 30 resets in 1m$ repobar archives add openclaw \ --repo ~/Backups/github-openclaw \ --db ~/Library/Application Support/RepoBar/Archives/openclaw.sqliteadded source 'openclaw' (format: discrawlSnapshot)$ repobar archives update openclaw --json{"source":"openclaw","manifestVersion":1,"importedTables":7,"totalRows":48211}
RepoBar is free and open source under the MIT license. Sparkle handles updates on release builds. macOS Sonoma or later, Apple Silicon and Intel.
The fastest path. Updates with the rest of your Brew apps.
brew install --cask repobar
Signed and notarised .dmg on every release. Pinned to GitHub.
SwiftPM with pnpm wrapper scripts. Xcode 26 / Swift 6.2.
git clone https://github.com/steipete/RepoBar && cd RepoBar && pnpm start
repo and read:org.
manifest.json and
tables/<table>/*.jsonl(.gz). When GitHub is rate-limited or
offline, archive reads keep the menu answering. RepoBar never writes to gitcrawl
databases or reads gitcrawl config.