Most terminal git tools try to replace your entire git workflow — staging, committing, branching, stashing — inside one interface. hawkshaw does the opposite: it does exactly one thing, walking you through your uncommitted changes hunk by hunk so you make a deliberate yes-or-no call on each piece before it gets staged, instead of a blind git add .. That narrow focus matters more than it sounds like now that a growing share of the code landing in your working tree was written by an AI agent, not typed by hand. GitUI, by contrast, is a fast, full-featured terminal git client — the point-and-click convenience of a GUI without leaving the command line. They're not really competing for the same job.
The short version
| hawkshaw | GitUI | |
|---|---|---|
| Scope | Hunk-by-hunk diff review only | Full git client — stage, commit, branch, stash, submodules |
| Interface | Terminal, vim/bat-style keys | Terminal, async and fast on large repos |
| Best for | Reviewing AI-generated edits before commit | Day-to-day git operations without leaving the terminal |
| Notable feature | Intra-line word highlighting, virtualized viewport for huge diffs | Async ops stay responsive on big repos; GPG signing and submodule support |
| Community | Small, niche | 22.4k GitHub stars, actively developed |
| Price | Free, open source (MIT) | Free, open source (MIT), no paid tier |
hawkshaw — a deliberate yes/no on every hunk, built for the AI-generated-code era
hawkshaw walks you through your uncommitted git changes one hunk at a time in the terminal, with intra-line highlighting showing exactly which words changed, familiar vim/bat-style keyboard navigation, and viewport virtualization so it stays fast even on large diffs.
Who it's for: developers who review code frequently — especially output from AI coding agents — and want a terminal-native way to catch a bad hunk before it's staged.
Pricing: Free and open source (MIT license).
Honest limits: it only covers hunk review, not a full git client, so you'll still need something else (or the plain git CLI) for commits, branches and stashes; it's terminal-only with no GUI; and its community is still small.
GitUI — a full git client without leaving the terminal
GitUI is a fast, keyboard-driven git interface that runs entirely in the terminal, giving you most of the convenience of a git GUI — staging and unstaging by hunk, full stash management, GPG signature support, submodules — without ever leaving the command line. Its operations run asynchronously, so it stays responsive even on large repositories.
Who it's for: developers who want a fast, keyboard-driven replacement for a git GUI, especially on large repositories where async operations actually matter.
Pricing: Free and open source (MIT license), no paid tier.
Honest limits: it's still officially in beta, has no Git LFS or sparse checkout support, and doesn't fully replace the git shell for every operation.
Pick hawkshaw if…
…you already have a git workflow you're happy with and just want a more deliberate way to review a pile of hunks — particularly AI-generated ones — before they get staged.
Pick GitUI if…
…you want to run most of your day-to-day git work — staging, committing, branching, stashing, even GPG-signed commits — without leaving the terminal or reaching for a GUI.
They're not mutually exclusive: plenty of developers run GitUI as their daily git driver and drop into hawkshaw specifically for AI-edit review, since the two tools stay out of each other's way.