If you use AI agents or do vibe coding, you know how fast repositories pile up across different accounts and providers. A personal GitHub, a work one, maybe even a home server running Forgejo… and suddenly you have dozens of repos cloned under the wrong identity, crossed credentials, and a monumental mess.
That’s exactly what happened to someone very close to me, a non-technical person who’s building lots of “projects” with agentic AI and, like anyone just starting out with Git for versioning and backups, is going crazy.
I built Gitbox, a desktop app to manage multiple accounts and clones in a simple way, without them stepping on each other. It’s designed for “non-developers”, but if you’re a developer it may be useful too; I use it every day on all my machines.

The problem
Anyone who works with Git across several contexts has run into this:
- You clone a work repo with your personal account and the commits go out with the wrong email.
- You have tokens and credentials from three different providers and can’t remember which is which.
- Every time you switch machines (or reinstall), you have to reconfigure everything from scratch.
- With the rise of vibe coding and AI agents, the number of repos you handle multiplies and the problem gets worse.
The root of the problem is that Git wasn’t designed for non-developers. Its global configuration model (~/.gitconfig) assumes you’re a single person, with a single email and a single authentication method. It can handle multiple accounts and users, but you need to be technical to avoid getting lost.
What is Gitbox
Gitbox is a cross-platform desktop app (Windows, macOS, and Linux) that orchestrates the lifecycle of your Git accounts and spares you their complexity. It works with GitHub, GitLab, Gitea, Forgejo, and Bitbucket. Everything is a click away: one card per account, sync rings, and guided forms.
It doesn’t reimplement Git; it drives the git, ssh, and Git Credential Manager you already have installed. Under the hood there’s a Go engine, the configuration lives in ~/.config/gitbox/gitbox.json, and secrets go to the operating system’s keyring.

Here’s what it does:
- Isolated accounts — each account has its own identity (name, email) and credential (GCM, SSH, or Token), completely separate from the others. Each account card tells you in green, orange, or red whether the credential works.
- Automatic discovery — once you add an account, it connects to the provider and lists all your repos so you can pick which ones to download (clone).
- Smart cloning — each repo is cloned with the right identity into an organized folder structure (by default
~/00.git/[account]/[org]/[repo]). Inside each clone, the.git/configfile is set up with its own credentials, so nothing gets crossed. - Fleet status — with 10 or 20 clones you never know which ones are up to date. Gitbox shows at a glance which are synced, behind, ahead, with local changes, or not cloned yet, plus their open pull requests and pending reviews.
- Safe sync — it fetches everything and pulls in fast-forward mode only, the safest one. If a repo has conflicts or local changes, it leaves it alone.
- Mirrors and moves — copies across providers for backups, and a guided flow to move a repo to another account or provider.
- Launchers — open any clone in your terminal, editor, file manager, or AI agent (Claude Code, Codex, …), and open existing VS Code workspaces.
- Clones anywhere — adopt clones that live outside the standard structure, even repos nested inside a multi-repo container.
- Self-healing setup — it checks that you have the tools it needs, offers one-click fixes for global git settings that cause cryptic failures, and keeps dated backups of the configuration.
- Hands-off management — Gitbox never runs
add,commit, orpushfor you. It only manages the infrastructure: which accounts you have and what you’ve cloned, each with its credentials in the right place.
Installation
An important warning first, taken from the project’s own README:
Warning
xattr -cr on macOS, Unblock-File on Windows) so they can run. By doing so you are explicitly trusting unsigned code. I recommend auditing the source code and the install script before running anything, or building it yourself. The project is open source under the MIT license.From the latest release page, download the installer for your platform:
| Platform | Download | How to install |
|---|---|---|
| Windows | gitbox-win-amd64-setup.exe | Run it. Installs GitboxApp.exe in Program Files with Start Menu shortcuts |
| macOS | gitbox-macos-arm64.dmg / gitbox-macos-amd64.dmg | Open the DMG and run bash "/Volumes/gitbox/Install Gitbox.command" from Terminal |
| Linux | gitbox-x86_64.AppImage | chmod +x and run it. It’s self-contained, bundling GTK 3 and WebKitGTK |
If you prefer the terminal, the install script downloads the latest release and installs it in one go (on Windows, from Git Bash). On Linux it also adds Gitbox to the applications menu:
bash <(curl -fsSL https://raw.githubusercontent.com/LuisPalacios/gitbox/main/scripts/bootstrap.sh)
The installer supports additional options; append
--helpto see them.
Once installed, the app checks once a day for a new version and shows a notice in its footer so you can update with one click.
Requirements:
- Git 2.39+ - Installer for Windows (includes Git Bash), macOS, and Linux.
- Git Credential Manager. Highly recommended for GCM-type credentials.
- On macOS it’s important to use a better version than the one bundled with the system. I recommend having Homebrew and installing Git and GCM (
brew install gitandbrew install --cask git-credential-manager).
If anything is missing, Settings → System check tells you, along with the exact command to install it on your operating system.
Getting started
The flow is very straightforward:
- Root folder — on first launch you choose where your projects will live, for example
~/00.gitorC:\repos. - Add accounts — the + card registers each account: provider, URL, username, name and email for commits, and credential type. For GCM the browser opens so you can sign in, for Token the app tells you which URL to visit and which scopes to tick, and for SSH it generates the key pair and gives you the link to register the public key.
- Find projects — on the account card it lists the provider’s repos; pick the ones you want and Add & Pull clones them with the right identity.
- Day to day — the Fetch All and Pull All buttons in the top bar check and update everything at once, and you can enable a periodic fetch every 5, 15, or 30 minutes from Settings.
Mirrors and backups
A feature I consider key is the ability to create mirrors between providers, both push and pull. I use it between my self-hosted server (Forgejo) and GitHub.
This creates automatic backups on the other provider. If tomorrow GitHub decides to change its terms, or I simply want redundancy, my repos are safe. Mirroring is fully automated on Gitea, Forgejo, and GitLab; for GitHub and Bitbucket Gitbox shows you the manual steps.
What about servers without a desktop?
Gitbox is a desktop app only. If you need something command-line for a headless server, version 1.x included a CLI and a TUI; it’s still available on the release/v1 branch, with critical fixes only. The install script with --cli-only installs it, and it reads the same gitbox.json.
Conclusion
If you work with multiple Git accounts — whether because you have personal and professional projects, or because the vibe coding explosion with AI agents has filled your machine with repos across different providers — Gitbox saves you hours of manual setup and identity mistakes. I use it every day, and it’s liberating not having to think about credentials every time I clone something.
Useful links
- GitHub repository
- Releases (downloads)
- App guide
- Credential setup
- Architecture
- Version 1.x with CLI and TUI (
release/v1branch)