Git worktree managers for macOS: what to look for
What the category actually covers, and the tools in it today.
A git worktree manager is a tool whose whole job is the set of working directories attached to
your repositories. Once you run more than two or three worktrees at a time, usually because
each AI coding agent session gets its own, keeping track of them with
git worktree list stops being practical. This page covers what a manager is
supposed to do, why a standalone one fits agent work better than an IDE, and the macOS tools
that exist right now.
What a worktree manager does
There are two halves to the job. The first is the lifecycle: list every worktree across every repo you care about, create one on a new or existing branch, remove one when the work lands, and prune the metadata git leaves behind when a directory disappears. Doing this by hand is not hard, it is just repetitive, and the repetition is where mistakes happen, usually deleting the wrong directory or leaving a branch checked out somewhere you forgot about. The cheat sheet has the raw commands if you prefer to stay in the terminal.
The second half is status, and it is the part that decides whether a manager is useful. For each worktree you want to know whether it has uncommitted changes, whether it has commits you have not pushed, and whether its branch has already been merged into the trunk. Those three answers are what tell you which worktrees are still live work and which are safe to delete. Most managers add a way to open a worktree in your editor, terminal, or Finder, because that is the action you take right after reading the status.
Why a standalone tool, not the IDE
IDE worktree support is built around the assumption that you are the one editing. It opens one worktree as a project window and treats the others as somewhere to switch to. With agents the shape of the problem is different: four or five worktrees are being written to at once, by processes you are not driving keystroke by keystroke, and what you need is a view across all of them rather than a deep view into one. Opening five IDE windows to watch five agents is a lot of memory and a lot of window management for something that is really a monitoring task. A standalone manager sits beside the terminal where the agents run and answers the across-all question, which is the one you keep asking.
The macOS tools available today
All of these are open source. They split roughly into menu bar apps, full windows, and launcher or pool style tools.
| Tool | Shape | One honest line |
|---|---|---|
| gitacre | Menu bar | Groups worktrees under their repo and folds in a GitHub pull request rollup via the gh CLI session you already have. |
| WorkTreeBuddy | Menu bar | Small and focused: status dots per worktree and a jump into your editor, not much beyond that. |
| Trees | Menu bar | Lightweight worktree list and create/remove, from the menu bar rather than a window. |
| GitMenuBar | Menu bar | Everyday git operations in the menu bar generally, with worktrees as one part rather than the point. |
| Grovr | Launcher | Tauri app built around quickly spinning up a worktree and launching an agent in it; less about ongoing status. |
| Worktree Manager (Brechard) | Window, cross platform | Audits worktrees across all your repos against five safety checks and reports the disk they are holding. |
| worktree-tool | Window, cross platform | Rust and GPUI, and growing into a fuller git client with staging, history, and conflict handling. |
| Worktree Manager (nino) | Window | Repos and worktrees as a tree, with per-worktree push, pull, merge trunk in, and a branch switcher. |
| forest | Window | A straightforward macOS worktree list and create/remove app, young and small in scope. |
| Treepool | CLI plus menu bar | Different idea: keeps a warm pool of reusable worktree slots so you assign a branch instead of creating a directory each time. |
| teebe | Window | Worktree list plus a live file view inside the selected worktree, with inline diffs. |
Where teebe sits
Most of the tools above stop at the worktree row. teebe treats that row as the way in: select a worktree and you get its full file tree in the same window, badging live as files change on disk, so you can watch an agent work rather than refresh a status list. Press Space on any file for an inline diff. Worktrees are grouped by state, merged versus uncommitted, and the merged group can be cleaned up in one click, which is the action that piles up when every session created its own. There is also an @-ref copy for pasting a file path back into an agent prompt.
What it does not do: there is no built-in terminal, and no pull request list. Agents run in your own terminal and teebe watches the result. If a PR rollup in the menu bar is what you want, gitacre is the closer fit. For the wider field including full git clients, see every git worktree GUI for Mac compared.
How to try teebe
One line in your terminal. Free, open source, macOS 14 and later, Apple Silicon and Intel.
curl -fsSL https://teebe.io/install.sh | bash
Free · open source · macOS 14+. Back to teebe.io →