Yesterday we released version 0.16 of the GitButler client. We've had 20 releases and over 1200 commits land since 0.15 first went out in July, so let's dig into the highlights.
AI Tools and Integrations
A lot of this cycle has concentrated on integrating better with AI tooling that is being used more in development workflows.
Agents Tab

The new GitButler agent tab
The biggest change is the new Agents tab that introduces an integrated user interface for managing Claude Code sessions. You can read all about it in our docs or blog post.
Claude Code Hooks
If you don't want to run Claude Code directly in GitButler for some reason, you can still get most of the cool integrations (auto-committing, branch assignment, etc) via Claude's hooks system. To get this installed, check out the docs. To learn more about it, read our blog post.
MCP server
Finally, if you're not using Claude Code and prefer other agent tools, you can use our MCP server endpoint in whatever agent you prefer.
Rules
Another new feature is Workspace Rules, which allows you to set up simple rules to automatically assign new work into specific branches. This is similar to filters in email clients.

Workspace rules in GitButler
Mostly this is used to auto-assign work to a specific branch so you can treat it like an "active" branch, but you also can use it for something like splitting work in different subfolders of a monorepo into independent branches automatically.
Under the hood, we are using this engine to automatically assign work from an agent into specific branches and for our upcoming "marking" feature, so we'll see more of this in the near future.
Upstream Integration
When you push a branch to a Git server and then keep working on that branch, meanwhile someone else fetches it and pushes to it, you get into a diverged state. When you try to push, you are told that you need to pull first or force push to overwrite what is on the server.
When this state happens, GitButler will now give you some powerful tooling to deal with commits that are upstream - reordering, skipping, squashing and more.

Our new upstream integration helper
For more information on our upstream integration tool, check out the docs.
Splitting Off
We've also added some more nice commit editing features. If you have changes in a branch and decide that you want to take the changes in some of the files and split them off into a new branch, you can select the files and choose "Split off changes" in the context menu to create a new branch from just those changes.

We've also added support for splitting a branch at any commit, in case you decide that you would prefer to have stacked branches rather than a single branch.

Split a branch into two stacked branches at any commit
Git Stuff
There's also a lot of smaller changes that improve the experience. We have a number of improvements to how we do Git stuff:
- Pre-commit hooks are now also executed on commit amend operations
- Improved detection of squash merged branches
- Executing commit-msg hooks and pre-push hooks
- Force push protection (can run
--force-with-lease
and--force-if-includes
by default)

Force push protection
Other small stuff
Finally, some bits and bobs.
- We changed the settings (project and global) to be modals rather than completely different views
- Added MR templates for GitLab
- Collapsable unassigned area
- colorblind friendly colors

Colorblind friendly colors option
Go ahead and try it today and let us know what you think!