Twenty-odd views, grouped the way the sidebar groups them. Each one is here because I needed it while working on something else and got tired of leaving. If you'd rather see how to use them than what they are, the guide is the other door.
Drawn on an HTML canvas rather than as DOM nodes, and only for the rows in the viewport, so a six-figure history scrolls at the same speed as a fresh repo. What the lines mean matters as much as the speed: a merge bends into the lane it opens, in that lane's colour, and a branch that rejoins an existing line bends back into it — so the shape on screen is the shape git recorded.
⌘F or / filters by author, message or ref, and the graph re-lays out around the matches.J / K walk commits without touching the mouse.
The changes view is where most of a working day goes, so it takes keyboard input seriously. Hunks collapse, a file can be expanded to its full contents when three lines of context aren't enough, and single lines can be staged, discarded or stashed from the selection.
Space stages the file under it, Enter opens its diff.⌘E opens whatever the diff pane is showing.commit.gpgsign — SSH, GPG or X.509 — and Settings has a Test signing button that shows the real error.
Branches arrive as a folder tree, because feat/ and
fix/ already are one. Star the ones you actually work on and they
rise to the top of their own level — a starred feat/thing goes to
the top of the feat folder rather than escaping it. A star belongs
to the branch, not the ref, so starring develop lights up
origin/develop too, and it lives in
.beardgit/favorites.json so it survives a relaunch.
[gone].
Both, properly, rather than one with the other bolted on. BeardGit talks to them through
gh and glab, and ships its own copies of
both inside every installer — the same versions for every user, whatever is on your
PATH. Your existing login carries over, because those CLIs keep
credentials in your own config and keyring, not in the binary.
[ and ] walk the files.gitlab.com and a corporate GitLab can be connected at the same time.
GitHub Actions runs and GitLab pipelines in the same view, with the job list underneath and its log in a pane you can keep open while you work. Wide build matrices are followed to the end rather than cut off at the first hundred jobs.
BeardGit doesn't have a model or an API key. It drives your install of Claude Code,
Codex or OpenCode, and it does it somewhere that can't ruin your afternoon: each background
run gets its own ai/<provider>/<slug> branch in an
isolated worktree, queued at a concurrency cap you set. Your checkout doesn't move while it
works.
The request that reproduces a bug belongs next to the code that has the bug, not in a
desktop app's private database. These are plain .http files under
.beardgit/requests/: commit them and
git pull hands them to the rest of the team.
_env/: variables in the file, secrets by name only, with the values encrypted on your machine.{{var}} autocomplete, JSON syntax highlighting, and a resolved preview before you send.
Not a replacement for your IDE — a place to fix the typo you just saw in the diff without changing windows. CodeMirror 6, with a gitignore-aware tree that lists one level at a time and keeps its open tabs, expanded folders and unsaved edits when you leave the view and come back.
package.json and tsconfig.json, and inline colour pickers in CSS.
Two commands worth having a face. Pick the good commit and the bad one and step through with buttons; or let auto-mode run your test command at every step and resolve it while you do something else. Bisect works inside a linked worktree or a submodule, which is where it used to silently do nothing.
Three original families — BeardGit, Fjord and Nebula — and the classics you already use in your editor: Rosé Pine, Everforest, Kanagawa, Ayu, Catppuccin, Dracula, Gruvbox, Nord, Tokyo Night, Solarized, Oxocarbon and more. The theme reaches the whole app, including the editor's syntax colours, the diff backgrounds and the graph lanes.
⌘⇧P lists every view and every registered shortcut, and running
one from the palette does exactly what the key does. It's the fastest way to learn the
keyboard: find the thing by name, and the palette shows you the shortcut next to it.
stash, unstage all — and pick the row.? opens the full cheat sheet, generated from the same registry, so it can't drift from what actually works.⌘ below reads as Ctrl.
No account, no telemetry, no analytics endpoint anywhere in the app. Two switches in Settings → General → Integrations decide how much of it is even awake: one for GitHub and GitLab, one for AI. With both off, BeardGit is a git-only client whose only outbound request of its own is the update check — and that has a switch too.
Installing, connecting a forge, writing a theme, the full keyboard table, where your data lives and what to do when something misbehaves — all in the guide.