Skip to content
BartInTheFieldPublic

About

A better terminal UI for GitButler, built with Bubble Tea

Resources

Stars

4 stars

Watchers

0 watching

Forks

Latest commit

 

History

85 Commits

Folders and files

Repository files navigation

buti

Parallel agentic workflow
Code review your agent can act on
On top of GitButler

Install · Usage · Keys · Issues

buti is a terminal workspace for running several coding agents in parallel, one branch each. Every branch is a lane with its commits, the Unstaged tree on the left holds what the agents changed, and the details pane shows the diff. Commit, squash, move and stack with a key or a drag. Leave review comments on any diff, and the agent reads them, fixes each one and marks it resolved. It runs on top of GitButler, which does the branching.

buti: uncommitted files on the left, a lane per stack, and a diff; a file is being committed to a stacked branch

Why buti

  • One lane per agent. Each agent works its own branch. Lanes, branch cards and commits show what is pushed, what is local and what sits on top of what, for all of them at once.
  • Review your agent acts on. Press C on a diff line, write the comment, run /buti-resolve, and the agent fixes it and resolves it in place. Or have it review your changes into buti with /buti-review (buti skill install --agent claude).
  • Every operation is a key or a drag. Select a file, commit or branch, press a verb, pick a target. Or drag it where it should go. ? lists every key and ctrl+p opens the command palette.
  • On top of GitButler. Every change is a but command; buti never touches git itself. Free and MIT.

Install

On Linux or macOS:

curl -fsSL https://raw.githubusercontent.com/BartInTheField/buti/main/install.sh | sh

You can also download a binary from the latest release, or build from source:

go install github.com/bartinthefield/buti/cmd/buti@latest

buti needs the GitButler CLI (but) on PATH, in a repository set up with but setup. It checks for a new release on start and offers to update itself; set BUTI_NO_UPDATE_CHECK=1 to turn that off.

Usage

buti [-C dir] [--diff] [--remember-selection] [--version] [target]

Select something, press a verb (c commit, r squash/amend, m move, p cherry-pick), pick a target and press enter. Or drag a file, commit or branch onto where it should go.

Docs

  • Usage: flags, the select → verb → target flow, drag and drop, the mouse, review comments, /buti-resolve and /buti-review
  • Resolving conflicts: fixing a conflicted commit in edit mode
  • Zed: buti in a Zed tab, diffs in Zed, and review comments as diagnostics
  • Keys: every key binding
  • Development: building, the code layout, releases
  • Testing: unit tests, the test repository, end-to-end tests and screenshots, CI

Found a bug or have an idea? Open an issue.

License

MIT

About

A better terminal UI for GitButler, built with Bubble Tea

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages