GitButler Logo
Features

Agents Tab

GitButler can also orchestrate your coding agents and help automatically manage, checkpoint and commit the work that they do for you.

Currently the only supported agent is Claude Code, but we are working on more agent support.

You can access our agent management in the Agents Tab:

GitButler Agents Tab
GitButler Agents Tab

The agents tab can run multiple Claude Code agents at the same time and will automatically try to assign file edits done by each to a specific branch. So each branch is essentially a context that an agent can directly work on.

Setup

There is some basic setup that may need to be done the first time, if you've never used Claude Code before.

Installing Claude Code

Before you can use the agents tab, you need to have Claude Code installed as we wrap the SDK that it provides. If we can't find the binary, you should see something like this:

Wherefor art thou, Claudius?
Wherefor art thou, Claudius?

To install Claude Code, you can read through the docs here, but the simple version is to have Node 18+ installed and run this:

npm install -g @anthropic-ai/claude-code

You will then need to setup and login to Claude Code, which will require an Anthropic account. You can either connect it to an API key for direct billing or use one of the plans. You can learn more on the Claude Code page.

GitButler does not charge you for agent use, but Anthropic does. This goes directly through Claude Code usage, we simply help manage the agent.

Configuring the Agents Tab

Once Claude Code is installed, we can run it for you and provide both a branch-specific execution environment and a nice UI. There are some settings you can configure before using the tab, which you can access with the settings button:

Agent settings modal
Agent settings modal

The first is the path for where we find the claude executable. You can also test to see if we can find it.

Then you can set some desktop notifications when Claude needs permission to do something or when a task is completed.

You can also auto-commit after a task is done, which will also generate a commit message from the prompt that you used and the diff that was introduced. If you prefer to do this yourself, we'll simply assign any modifications to the branch and let you commit it when you prefer.

Finally, if you don't want Claude to bug you every time it needs permissions for a bash command or something, you can put it in YOLO mode but dangerously allowing all permissions. This is not set by default, but if you're feeling adventurous, it's there for you.

Generating Code in the Agents Tab

Once your agent is setup, you can select a branch to work on, type in a prompt and we will run that though Claude Code, same as if you ran it in the terminal.

We will do some cool things as it runs, however.

One Branch Per Session

In GitButler, each branch is also an agent session with it's own context. You can see each branch in the Agents Tab sidebar. If you add a new session, it will create a new branch to store the output of that. If you want to continue work on a branch, you can simply click on it to switch contexts.

You can have multiple agents working on branches at the same time - you can see which branches have active tasks running at a glance with the running indicator:

Multiple branches, one has a running agent
Multiple branches, one has a running agent

This won't always work. If two agents modify lines in a file right next to each other, the hunk can only be assigned to one lane. In the future, we will be able to automatically stack these dependencies, but for now you just need to be aware that some post-commit moving things around may be needed on occasion.

ToDo Breakout

Claude code typically will come up with a ToDo list, breaking down the steps it thinks it needs to do in order to get your task completed. It will update you on this as it goes, but it's easy for this to get lost in the conversation, so we intercept these updates and keep them in the sidebar for you:

Simple TODOs example, with one item done, one running and three to go
Simple TODOs example, with one item done, one running and three to go

Folding Tool Calls

As the agent is running tool calls (read files, write files, run bash commands, etc), we fold the execution and results so it doesn't clutter up

Folding and unfolding the agent tool calls
Folding and unfolding the agent tool calls

Token and Cost Monitoring

Running agents costs money, so we try to keep you reminded of how much you're spending running these models.

Usage overview for the branch - tokens and estimated cost
Usage overview for the branch - tokens and estimated cost

These costs are estimates, it may differ if you're running on a plan versus using a metered API token.

Model Selection

There are a few different models that you can choose from for running your task. You can change your active model in the model selection dialog of the chat box.

You can choose from any of the active Anthropic models
You can choose from any of the active Anthropic models

Thinking Modes

Claude Code also allows for selection of a "thinking mode". The lower modes are faster, the higher modes tend to take longer and be more expensive, but can produce better results.

CleanShot 2025-09-05 at 11.53.51@2x.png
CleanShot 2025-09-05 at 11.53.51@2x.png

Prompt Templates

If you find that you're using similar prompts over and over, you can easily setup several prompt templates. Selecting one will seed the prompt with the contents of that template.

Prompt templates
Prompt templates

You can also edit your available templates by selecting the "Edit templates" option, which opens up our JSON file in your editor of choice. The templates look something like this:

{
  "templates": [
    {
      "label": "Bug Fix",
      "template": "Please fix the bug in this code:\n\n```\n// Your code here\n```\n\nExpected behavior:\nActual behavior:\nSteps to reproduce:"
    },
    {
      "label": "Code Review",
      "template": "Please review this code for:\n- Performance issues\n- Security vulnerabilities\n- Best practices\n- Code style\n\n```\n// Your code here\n```"
    },
    {
      "label": "Refactor",
      "template": "Please refactor this code to improve:\n- Readability\n- Performance\n- Maintainability\n\n```\n// Your code here\n```\n\nRequirements:"
    },
    {
      "label": "Add Tests",
      "template": "Please write comprehensive tests for this code:\n\n```\n// Your code here\n```\n\nTest cases should cover:\n- Happy path\n- Edge cases\n- Error conditions"
    }
  ]
}

Context Clearing

After a while, your context in a single branch can get long. If you no longer need all the context but want to keep your agent working on the same branch, you can clear it with the "Clear Context" button at the top of the screen.

Modified Files Listing

As files are assigned and committed to your branch, you can see an overview of the changes made in the sidebar. You can also alt-click on them to open them directly in your editor if you want to make manual changes.

A list of your modified files for this session in the sidebar
A list of your modified files for this session in the sidebar

Last updated on

On this page

Edit on GitHubGive us feedback