release/0.20.4
Vanilagy/mediabunnyrelease/0.20.4Jun 26, 2026by krlvi
AI Summary
This release focuses on streamlining AI agent workflows through an interactive setup wizard and significantly enhances the CLI and TUI for better commit and branch management.
Key Highlights
- New `but agent setup` command provides an interactive wizard for tuning AI agent behavior.
- TUI enhancements include stack reordering, multiple commit selection, and improved scroll keybindings.
- CLI updates add new options to `but amend`, `but commit`, and `but status` commands.
- Performance improvements for multi-committing, amending, and PR stacking workflows.
Breaking Changes
- Removed the `but mark` and `but unmark` commands.
New Features
- Interactive agent setup wizard
- CLI option `--changes` for `but amend`
- Message support when creating empty commits with `but commit`
- Diff output option for `but uncommit`
- Display of stacked branches merged upstream in `but status`
- Stable Hunk IDs across commits
- TUI stack reordering and branch application
- Copy details (shift+y) in TUI
- Font size setting for diff views
Full Release Notes
## Agentic Use There is now a new command `but agent setup` which makes the overall setup easier. It is an interactive wizard for tuning version control behavior (similar to https://docs.gitbutler.com/ai-agents/tuning-agent-behavior but easier to setup). Running this is a good idea for best performance. - Multi-committing, amending and splitting of commits now complete quicker and use less tokens - Improved PR stacking workflows ## Changes - There is now a "Font size" setting for the diff views (Settings → Appearance) ## CLI - `but amend` now accepts `--changes` to amend specific changes into a commit - You can now provide a message when creating an empty commit with `but commit` - `but uncommit` now supports a diff output option to print the resulting changes - `but status` now shows stacked branches that have been merged upstream - Hunk IDs are now stable across commits and discards - `but completions` now appears in the help output, making it discoverable when you grab the `but` binary without an installer - `but` output now labels "unassigned changes" as "uncommitted" - Fixes a bug where `but apply` could report success while leaving a branch unapplied when workspace metadata was stale - Removed the `but mark` and `but unmark` commands - Improved error messages when `stdin` isn't a terminal ## TUI - You can now reorder stacks in the TUI - You can now apply branches from the TUI - You can now move multiple commits at once in the TUI - You can now commit above or below the selected commit in the TUI - You can now copy more things in the TUI — commit details, diff hunks, branch names and more — with `shift+y` - Improved scroll keybindings: `j`/`k`/arrows move by line, `ctrl+d`/`ctrl+u` jump by 10 lines, and `shift+j`/`shift+k` jump by section - Unapplying a branch and undoing no longer prompt for confirmation in the TUI, since both can be undone ## Fixes - Fixes a bug where moving empty branches did not work correctly - Fixes a bug where commit-message and branch-name generation failed for non-OpenAI providers (Anthropic, Ollama, and others) - Fixes an issue where commit signing failed when `gpg.ssh.program` pointed at a path containing a tilde (`~`) - Fixes an issue where being offline produced repeated error toasts from background pull-request polling - Fixes an issue where updating the workspace was not handling squash-merge integrated branches properly ## New Contributors * @ameyypawar made their first contribution in https://github.com/gitbutlerapp/gitbutler/pull/14245 * @tobeycodes made their first contribution in https://github.com/gitbutlerapp/gitbutler/pull/14348 **Full Changelog**: https://github.com/gitbutlerapp/gitbutler/compare/release/0.20.3...release/0.20.4 ## Downloads Download bins from https://gitbutler.com/