release/0.19.7

agno-agi/agnorelease/0.19.7Apr 2, 2026by krlvi

AI Summary

Introduces a new Terminal User Interface (TUI) alongside improvements to CLI agent support and submodule handling.

Key Highlights

  • New Terminal UI (TUI) available via but tui
  • Improved submodule support for GitButler projects
  • Significant improvements to CLI agent use
  • New but clean command to remove empty branches

Breaking Changes

  • Renamed `but branch tear-off <branch>` to `but branch move --unstack <branch>`

New Features

  • but move unifies moving commits and branches
  • but uncommit supports --discard flag
  • Improved diff rendering performance for large files
  • Fixed oplog revert for branches with no commits

Full Release Notes

## TUI
GitButler now has a terminal UI (in addition to the CLI)!
If you love keybindings, try it out with the `but tui` command and feel free to share any feedback in `#tui` on Discord.

<img width="2946" height="1932" alt="image" src="https://github.com/user-attachments/assets/49668e0c-4f05-4b09-8f83-a5e688ba6367" />

## Changes
- Improved performance when exiting edit mode
- Assigning / staging changes to branches is no longer constrained by commit dependencies
- Improved file selection behavior with when using the tree view
- Improved submodule support: it is now possible to add submodules as GitButler projects
- Improved diff rendering performance with large files
- Fixes a bug where in some cases the app could stop updating state from file changes
- Fixes an issue where oplog revert did not handle branches with no commits
- Fixes an issue where moving a branch to another stack was erroneously changing the stack order
- Fixes an issue with the absorb functionality where some changes were not being committed

## CLI
- Significant improvements to Agentic use (update your SKILL file with `but skill install`)
- Fixes an issue where concurrent commits would cause a "Database locked" error
- Fixes an issue where `but amend` and `but absorb` were breaking pre-push hooks
- Renamed `but branch tear-off <branch>` to `but branch move --unstack <branch>`
- Added `but clean` which removes empty branches in the workspace
- `but move` now unifies moving of commits and branches (including stacking/unstacking)
- `but uncommit` now has a `--discard` flag which drops the content in addition to uncommitting

## New Contributors
* @DanielEScherzer made their first contribution in https://github.com/gitbutlerapp/gitbutler/pull/12891
* @ichoosetoaccept made their first contribution in https://github.com/gitbutlerapp/gitbutler/pull/12886

**Full Changelog**: https://github.com/gitbutlerapp/gitbutler/compare/release/0.19.6...release/0.19.7

## Downloads
Download bins from https://gitbutler.com/