Relay is a native Git desktop client built around switching accounts. Work, personal and school GitHub, GitLab or Gitea — each repository knows who it pushes as. Written in C++ and Qt, so it idles at a fraction of an Electron app’s memory.
Relay 0.5 was an Electron app. Chromium was most of its size and most of its memory, for a tool that barely needed it. 0.6 is the same app, every feature intact, on Qt 6.
Sign in with several GitHub accounts and pick which one each repository uses. Clone, fetch and push go out as the right person, every time.
Save a key per host and choose it from the account menu. No sign-in needed, and your SSH agent and ~/.ssh/config stay one click away.
Add GitLab.com or a self-hosted server with a read-only token and browse its repositories next to your GitHub ones.
Merge, rebase, cherry-pick, stash, tags, branch compare and conflict resolution. Squash and reorder unpushed commits by dragging them.
Relay refuses to overwrite origin if someone pushed since your last fetch. Deleting a remote branch shows its last commit, so it can come back.
Opens repositories in VS Code, Cursor, Zed, Sublime Text or JetBrains IDEs. Light, dark, mono and Catppuccin themes, or load your own palette.
Free and MIT-licensed. Upgrading from 0.5? Relay uses the same data folder, so your accounts, repositories and settings carry over without signing in again.