GitMaster
GitMaster is a Git client joined to the tools an engineer needs to work with code. It is built so that people who are accountable for their source code can use AI agents safely: an agent proposes a change, you approve it in the app, and the app records what was actually done.
The three pillars#
A complete and fast Git client#
GitMaster covers the work you do every day in a repository. The Working Copy shows your changes, with staging per file, per chunk and per line, and a commit composer. History shows the commit graph with the files and diff of each commit. Branches and worktrees are managed from the sidebar, and the remote operations Fetch, Pull and Push with lease are available in the top bar. Every action can be reached from the command palette (Ctrl+K, ⌘K on macOS), the menus and the keyboard.
Resolving conflicts by hand is a preview feature. See Resolving conflicts.
A workspace for working with code#
You can move around a repository without leaving the app. Quick Open (Ctrl+P, ⌘P on macOS) finds a file by name in the active worktree. The Code page shows the folder tree and a read-only file viewer. The Search page runs a text search with case, whole word and regular expression options, and groups the matches by file.
Agents under human accountability#
An agent can read your review comments and earlier threads through GitMaster, and record that it handled a comment. It can also attach labels to threads and link related threads. These records are kept in GitMaster's own store, never in the repository. GitMaster gives the agent no way to change the repository, and a comment the agent marks as handled stays open to you until you resolve it. What the agent did is measured from the repository, not taken from its own account.
Workflows are Lua scripts that run in a sandbox and act only through GitMaster's own actions. You run them from the command palette or with a keyboard shortcut. The agent integration is exposed through an MCP server and a local review loop. Branch stacks with restack are a preview feature. See Stacks.
A session with an agent is kept as a thread: what you asked, what the agent answered, the tools it ran and the files it edited. Secrets are removed before anything is stored, and you can search, read and delete threads in the app.
Who it is for#
GitMaster is for engineers who work in large repositories with many contributors, and who review the changes that AI agents make to their code in volume. It is built for one engineer on one machine. It has no account and no server mode.
What you need#
GitMaster needs one external program: git. The app does not require anything else to be installed.
GitMaster runs on Linux and macOS. Each release has prebuilt Linux binaries for amd64 and arm64; on macOS you build it from source. To install it, see Installation.
Windows#
Where to go next#
| Area | Start with | Covers |
|---|---|---|
| Getting started | Installation | Installing GitMaster on macOS or Linux. |
| Getting started | First steps | Opening a repository and getting around the window. |
| Concepts | Principles | The rules every feature follows. |
| Concepts | Trust and safety | Who may change a repository, and what the app records. |
| Guide | Working Copy | Changes, staging and commits. |
| Guide | Diff and staging | Reading diffs, and staging chunks and lines. |
| Guide | History | The commit graph and commit details. |
| Guide | Branches | Switching, creating and deleting branches. |
| Guide | Stacks | Branch stacks and restack. Preview feature. |
| Guide | Resolving conflicts | Resolving a file's conflicts by hand. Preview feature. |
| Guide | Command palette | Finding and running any action. |
| Guide | Threads | Reading and searching your agent sessions. |
| Workflows | Overview | Automating GitMaster with workflow scripts. |
| Agents | Agent integration | Capturing agent sessions as threads. |
| Agents | MCP server | Connecting an agent to the app. |
| Agents | Local review | Commenting on code for an agent to resolve. |
| Reference | Keyboard shortcuts | Every shortcut in one table. |
| Reference | Configuration | Settings and where they are stored. |
How to read the status markers#
Each page has a status in its front matter:
| Status | Meaning |
|---|---|
implemented | Everything on the page works in the app. |
partial | Some of the page works. Each part that does not is marked. |
planned | Nothing on the page works yet. |
A part that the app does not provide yet is marked with a Planned label. The label is a blockquote that starts with the bold text Planned., followed by one sentence that says what is missing. It sits directly under the heading of the part it applies to. In a table, a row that the app does not provide has Planned in its status column.