bonsai wraps Git with an interactive terminal interface. After every action it shows what happened in plain language and the exact command that ran.
Switch modes at any time. bonsai adapts to where you are in your Git journey — never ahead of you, never behind.
Full explanation after every action. Plain language, contextual tips, and why it matters. Nothing is assumed.
l inside bonsai to see your commit historyShows the command that ran after every action. Keeps you connected to Git without slowing you down.
Clean interface, no feedback panel. All the TUI power, none of the commentary. Pure signal.
Stage or unstage individual hunks within a file. Commit exactly what you mean to, nothing more.
Browse commits, search and filter, cherry-pick, copy hashes, view full diffs per commit.
Create, switch, merge, rebase, rename, and delete branches. Tracks remotes, shows upstream relationships.
Adapts to trunk, gitflow, githubflow, or forking. The branch picker changes to match your team's conventions.
Reorder, squash, reword, or drop commits in a guided panel. See what's about to happen before it does.
Health check your Git config, SSH keys, and remote connectivity before something breaks. Fixes are shown inline.
Run bonsai doctor --verbose to check your global config, local repo, and SSH setup. Every problem comes with an exact fix command.
One binary, no runtime dependencies. Requires Git 2.28 or later.
Binary lands in ~/.local/bin (macOS/Linux) or %LOCALAPPDATA%\Programs\bonsai (Windows)