lazyjj
Terminal UI for Jujutsu version control system, providing interactive log browsing, file management, and bookmark operations
lazyjj is a terminal-based user interface for the Jujutsu version control system, built in Rust using Ratatui. It provides an interactive way to browse revision history, manage changes, and perform common jj operations without repeatedly typing CLI commands.
The tool centers around three main tabs: Log for browsing the revision graph and performing operations like creating new changes, editing, describing, and abandoning changes; Files for viewing current change files and conflicts with diff display; and Bookmarks for managing local and remote bookmarks with operations like create, rename, delete, and track/untrack. All tabs support switching between color-words and git diff formats, and include detailed side panels for examining changes.
Developers using Jujutsu as their version control system would benefit from lazyjj's visual interface for complex operations like squashing changes, managing bookmarks across remotes, and navigating revision history. The tool integrates directly with the jj CLI, executing commands in the background while providing immediate visual feedback. Configuration options allow customization of colors, diff formats, layout orientation, and key bindings through jj's existing config system.
Installation
# via Cargo binstall
cargo binstall lazyjj
# via Cargo
cargo install lazyjj --locked
# via Arch Linux
pacman -S lazyjj
Alternatives & related tools
serie
Terminal UI for git commit graphs using image protocols to render rich visualizations in supported terminals
gitnr
Cross-platform CLI tool for creating .gitignore files from GitHub and TopTal template collections
ftdv
Terminal-based diff viewer for Git with interactive file tree navigation and configurable external diff tool support.
gitu
Terminal user interface for Git inspired by Magit, providing visual staging, branching, and repository management
git absorb
Git subcommand that automatically creates fixup! commits from staged changes by finding the commit each hunk belongs to, with optional autosquash rebase.
add a badge to your README
Maintain lazyjj? Show that it's featured on trmn. The badge links back to this page.
[](https://www.trmn.sh/tools/lazyjj?utm_source=badge)<a href="https://www.trmn.sh/tools/lazyjj?utm_source=badge"><img src="https://www.trmn.sh/badge/lazyjj.svg" alt="Featured on trmn" height="20"></a>