Profile
Back to NewsBack
GitHub Trending 2 min
Reader Mode
chmouel/lazyworktree: Easy Git worktree management CLI and TUI for the terminal.

chmouel/lazyworktree: Easy Git worktree management CLI and TUI for the terminal.

13 hours ago

!Go !Coverage

LazyWorktree

logo LazyWorktree is a keyboard-driven terminal UI for managing Git worktrees.

Manage multiple Git worktrees from one interface: create, remove, and switch between them without navigating between directories.

Built with Bubble Tea, LazyWorktree shows worktree state and supports tmux, Zellij, Docker, and Podman.

Screenshot

!lazyworktree screenshot

_More screenshots_

Main Features

  • Worktree management: Create worktrees from branches, PRs/MRs, or issues; clean up merged worktrees without discarding uncommitted changes; list and switch between worktrees.
  • CI and PR/MR status: View GitHub Actions and GitLab CI results, PR/MR details, and logs.
  • Agent sessions pane: View confirmed active Claude, Codex, Copilot, and pi sessions attached to the selected worktree.
  • Command palette: Press ? to open the palette for actions and custom commands.
  • Tmux and Zellij support: Open worktrees in tmux windows or panes, or Zellij tabs.
  • Docker/Podman support: Run commands in containers for a worktree.
  • Custom commands: Configure shell commands, bind them to keys, and list them in the palette.
  • Notes: Keep Markdown notes for each worktree.
  • Hooks: Automate worktree setup and cleanup with .wt files.
  • Customise worktree metadata: Press e in the worktree pane to edit the selected worktree's description, colour, notes, icon, and tags.
  • Shell helpers: Jump to a worktree with cd "$(lazyworktree)". Completions are available for Bash, Zsh, and Fish.
  • LLM-friendly CLI: Use doctor, describe, worktrees ..., and notes get to help LLM agents inspect and manage worktrees.

Documentation

Primary documentation lives on the docs site:

Useful entry points:
  • Introduction:
  • Getting started:
  • Core workflows:
  • Navigation and keybindings:
  • Configuration overview:
  • Configuration reference:
  • Full configuration example: config.example.yaml
  • CLI overview:
  • CLI flags reference:
  • CLI commands reference:
  • Troubleshooting:

Installation

Homebrew (macOS)

brew tap chmouel/lazyworktree https://github.com/chmouel/lazyworktree
brew install lazyworktree --cask

Arch Linux

yay -S lazyworktree-bin

From source

go install github.com/chmouel/lazyworktree/cmd/lazyworktree@latest

Quick Start

cd /path/to/your/repository
lazyworktree

Shell Integration

To jump to the selected worktree from your shell:

cd "$(lazyworktree)"

For shell integration helpers, see:

Requirements

  • Git 2.31+
  • Forge CLI (gh or glab) for PR/MR status
Optional tools are documented here:

Author

Sponsor</a>

Chmouel Boudjnah

Licence

Apache-2.0

Chat with me