RepoBar
RepoBar: A Native macOS Menu Bar Companion for GitHub Work
In a world where developers routinely juggle dozens of repositories, browser tabs quickly become a productivity sink. RepoBar enters the scene as a native macOS menu bar app designed to keep GitHub work visible and actionable without forcing you to live in a browser. It distills the essentials—what changed recently, open issues and PRs, CI status, releases, local checkout health, and rate-limit health—into a compact, at-a-glance dashboard right from the menu bar. The goal is simple: give fast answers to the most pressing questions so you can stay focused on code rather than navigation.

RepoBar is built for people who move between many repositories and need quick, reliable answers. Whether you’re sense-checking activity before a standup, triaging issues, or reviewing CI signals, RepoBar puts the information you care about front and center.
Quick Start: Install and Access
Getting RepoBar up and running is straightforward. The project provides a couple of practical installation paths and a direct download option for those who prefer not to use a package manager.
- Install via Homebrew (the recommended path):
- brew install --cask repobar
- Direct download:
- Access the latest GitHub release to grab a prebuilt package.
With the app installed, you’re ready to dive into the repository dashboard and explore the deep set of features designed to streamline GitHub workflows.
What RepoBar Shows: A Repository Dashboard in the Menu
The core experience is the main menu, which acts as a repository dashboard. It’s designed to surface the most relevant signals for fast decision-making without leaving the macOS desktop.
- Repository cards
- Each card presents key metrics: issue counts, PR counts, stars, forks, latest activity, and optional heatmaps to visualize recent momentum.
- Contribution header
- A header that reflects the signed-in GitHub account, grounding the view in your identity and permissions.
- Filters
- Flex filters for all repositories, pinned repositories, local repositories, and work-focused views to tailor what you see.
- Profile submenu
- Access to recent GitHub activity, providing a quick glance at recent contributions and activity.
- GitHub rate-limit submenu
- Live REST/GraphQL rate-limit status and persisted REST resource headers, so you know when you’re approaching limits.
- Quick access
- Direct routes to Preferences, About, and Quit for quick management and information.
Every repository card also expands into a rich submenu with a wealth of actions and views:
- Open the repository on GitHub
- Open or checkout the local repository when configured
- View local state: current branch, upstream branch, ahead/behind counts, dirty files, and worktrees
- Browse recent issues, pull requests, releases, CI runs, discussions, tags, branches, contributors, commits, and activity
- Preview changelog entries from a local CHANGELOG.md when available
- Pin, unpin, or hide the repository from the dashboard
This design ensures you can move from high-level signals to precise details in a few taps, all from the comfort of the menu bar.
Repository Browser: Managing Visibility and Access
RepoBar includes a dedicated Repository Browser section, offering a flexible way to curate what appears in the menu while ensuring you can access what you need most.
- Visibility controls
- Visible: keeps the repository accessible through normal sorting and filtering.
- Pinned: keeps the repository near the top for quick access.
- Hidden: removes it from the menu.
- Robust rules for visibility
- Manual rules remain visible even if a token or GitHub App installation no longer returns the repository, helping diagnose access problems quickly.
- Access scope
- RepoBar can see public repositories, user repositories, collaborator repositories, and organization repositories that the current authentication method is allowed to access.
This design empowers you to tailor the menu to your workflow, ensuring the dashboard remains focused and free of stale or inaccessible items.
Authentication and Private Repos: Secure Access Across Environments
RepoBar supports both GitHub.com and GitHub Enterprise, with a careful approach to authentication and security.
- GitHub.com
- Uses a GitHub App user token, avoiding broad classic OAuth repository scopes.
- Access is bounded by the signed-in user’s GitHub permissions and the installations associated with the RepoBar GitHub App.
- Private organization repositories require the RepoBar GitHub App to be installed on that organization or on the selected repositories.
- If an organization requires SAML SSO, or access outside the GitHub App installation boundary is necessary, use a Personal Access Token with repo and read:org scopes.
- Tokens are stored securely in the macOS Keychain for release builds.
- Debug builds and SwiftPM CLI/test runs default to file-backed auth storage to avoid Keychain prompts during local development.
- GitHub Enterprise
- Uses the configured enterprise host and OAuth settings, with TLS required to secure communications.
- Security posture
- The design ensures that authentication is scoped, minimizes exposure, and keeps sensitive tokens away from unnecessary surfaces.
Documentation around authentication and token storage is maintained, including guidance on local development storage vs. keychain usage, to make onboarding and debugging straightforward.
Local Projects: Local State in the Menu
RepoBar isn’t only about remote GitHub data; it also brings your local project state into the menu, giving immediate visibility into how your work aligns with remote repositories.
- Local projects scanning
- RepoBar can scan a local projects folder (for example, ~/Projects) and match local checkouts to GitHub repositories.
- Local state visibility
- The menu surfaces vital local information: current branch, upstream branch, ahead/behind counts, dirty file summaries, worktree state, and fast-forward sync status.
- Auto-sync options
- Optional auto-sync fetches and fast-forwards clean repositories on a configurable cadence.
- Safety guardrails
- RepoBar does not perform destructive actions such as force-pushes, hard-resets, or discarding local changes, ensuring local work remains safe while staying aligned with remote state.
This integration reduces the friction of crossing between the local development environment and the remote repository ecosystem, streamlining day-to-day workflows.
Caching, Archives, and Rate Limits: Responsiveness with Respect for GitHub
A core design principle of RepoBar is to be responsive while minimizing network pressure and respecting GitHub’s rate limits. The app emphasizes local-first behavior and careful caching.
- Local-first data
- RepoBar opens from local data first and then spends GitHub requests sparingly, ensuring fast initial presentation even when the network is slow.
- Persistent storage
- REST ETags, response bodies, GraphQL responses, recent lists, repository detail data, and rate-limit state are stored in RepoBar-owned storage.
- Seeding and background refresh
- First-open menu rows can be seeded from the persistent cache and are refreshed in the background to stay up-to-date with minimal impact on the user.
- Archive support
- RepoBar provides archive configuration for Discrawl-compatible snapshot databases. This helps in scenarios where historical data needs to be accessed without hitting live APIs.
- Note: RepoBar does not read gitcrawl configs or modify gitcrawl databases but maintains its own caching and archival strategy.
- CLI visibility into state
- The CLI provides commands to inspect cache and archive state, helping diagnose issues and understand how the app is storing and reloading data.
Examples of cache/archives inspection (CLI) include:
- repobar cache status --plain
- repobar cache status --json
- repobar archives list
- repobar archives status
These tools are valuable for debugging, performance tuning, and ensuring a predictable experience.
Command-Line Interface (CLI): Automation, Debugging, and Diagnostics
RepoBar ships with a CLI that mirrors the app’s GitHub and cache paths, enabling automation, scripting, and debugging scenarios.
- Common commands
- repobar login
- repobar repos --plain
- repobar repos --owner openclaw --sort prs --plain
- repobar repo openclaw/openclaw --plain
- repobar issues openclaw/openclaw --limit 20 --plain
- repobar pulls openclaw/openclaw --limit 20 --plain
- repobar activity steipete --include-repos --limit 10 --plain
- repobar rate-limits --plain
- repobar cache status --plain
- Output formats
- --json for machine-readable output
- --plain for plain output without colors, links, or terminal decoration
- Documentation
- Full CLI reference is documented in docs/cli.md, providing deeper explanations, options, and usage patterns.
The CLI is a powerful companion for automation tasks, batch operations, and quick diagnostics, helping developers integrate RepoBar into their larger toolchains.
Development and Project Infrastructure: How It’s Built
RepoBar is engineered as a SwiftPM-based macOS app, with a modern development workflow that hinges on pnpm scripts for build and packaging tasks. This combination emphasizes the modularity and cross-tooling that many macOS developers appreciate.
- Core stack
- SwiftPM is used for the macOS app, ensuring a clean build and dependency management within the Apple ecosystem.
- Build tooling
- pnpm is used to orchestrate build, test, package, signing, and launch workflows, streamlining development in a multi-language environment.
- Requirements
- macOS operating system
- Xcode 26 / Swift 6.2 (toolchain)
- pnpm 10+ (for the development workflow)
- Local development workflow
- Install dependencies once: pnpm install
- Common commands include:
- pnpm check (swiftformat, swiftlint, swift test)
- pnpm test (Swift Testing suite)
- pnpm build (debug Swift build)
- pnpm start (build, package, sign, and launch the app)
- pnpm restart (relaunch the app from this checkout)
- pnpm stop (quit RepoBar)
- For ensuring you’re debugging the correct binary, you can verify the process:
- pgrep -af "RepoBar.app/Contents/MacOS/RepoBar"
This development model reflects the project’s emphasis on rapid iteration, robust testing, and a streamlined path from code changes to a running macOS app.
Project Layout: Where Everything Lives
Understanding the repository structure helps navigate the project and its documentation.
- Sources/RepoBar/
- macOS app, menu, settings, authentication coordination, local project UI
- Sources/RepoBarCore/
- GitHub client, cache/archive readers, models, settings, local Git services
- Sources/repobarcli/
- Command-line interface
- Tests/RepoBarTests/
- Swift testing coverage
- docs/
- Design notes and operational documentation
- Scripts/
- Build, packaging, signing, testing, and launch wrappers
Useful documentation areas include:
- docs/spec.md (product and technical spec)
- docs/cache.md (persistent cache and archive design)
- docs/cli.md (CLI command reference)
- docs/auth-storage.md (Keychain vs. debug file-backed token storage)
- docs/reposync.md (local project scanning and sync behavior)
- docs/release.md (release checklist)
This layout reflects a disciplined approach to feature development, testing, and operational maintainability, with documentation woven throughout to guide developers and users alike.
Status and Licensing
RepoBar is in an active development phase, evolving quickly with new capabilities and refinements. The latest released version, as noted in the repository, is 0.4.0, which introduces smarter persistent caching, archive-backed fallback paths, rate-limit visibility, and more robust menu behavior. The project is released under the MIT license, making it accessible for personal and commercial use with a permissive license.
- Status: Early, active development with rapid iteration
- Latest release: 0.4.0
- License: MIT
Practical Tips and Use Scenarios
To help you imagine how RepoBar fits into daily workflows, consider a few practical scenarios:
- Standup triage
- Quickly scan the repository cards to identify which repos had recent activity, which have open issues or PRs, and which CI runs might need attention.
- Use per-repo quick actions to jump directly to GitHub or open a local checkout for quick inspection.
- Local vs remote alignment
- The local projects integration makes it easy to see when a local branch is ahead or behind its upstream, and whether the local workspace is dirty, which helps prevent surprises before committing.
- Rate-limit awareness
- The rate-limit submenu provides live signals about REST/GraphQL usage, enabling proactive pacing of API requests and avoiding interruptions during critical workflows.
- Debugging and support
- The CLI provides a transparent, machine-readable view of the app’s state, which is invaluable for diagnosing issues or demonstrating behavior to teammates or maintainers.
The combination of visual cues, local state, and carefully managed network usage makes RepoBar a practical addition to a developer’s toolbox, especially for those who must balance many repositories and complex workflows.
Final Thoughts
RepoBar stands out as a thoughtful tool for macOS developers who live in GitHub and navigate multiple projects every day. By blending a compact, informative menu with both local and remote insights, it reduces the cognitive load of repository management. The design emphasizes safety (no destructive local actions), security (token storage and access scoping), performance (local-first caching and background refresh), and extensibility (CLI and structured documentation).
If you’re looking for a way to reclaim browser-free productivity for GitHub work, RepoBar offers a compelling approach: a native, efficient, and purpose-built solution that keeps your important repositories visible, actionable, and under control from the menu bar. As development progresses, expect even richer signals, more robust caching strategies, and deeper integration with both local projects and enterprise GitHub environments—all aimed at helping you work smarter, not harder.
Enjoying this project?
Discover more amazing open-source projects on TechLogHub. We curate the best developer tools and projects.
Repository:https://github.com/steipete/RepoBar
GitHub - steipete/RepoBar: RepoBar
RepoBar is an open-source macOS menu bar app for GitHub work visibility....
github - steipete/repobar