wt
wt is a CLI + TUI for Git worktrees and the GitHub pull requests on them: create
a branch and its worktree in one step, jump between worktrees, check a PR out into
its own directory, and clean up once the work merges. Git stays the source of
truth — worktrees made or removed with plain git show up too.
Install
Needs git ≥ 2.20, plus an authenticated gh CLI for
wt pr and wt issue; everything else works offline.
Then add the shell integration, which lets wt change your directory and gives
completions of real worktree, branch, and PR names:
| # ~/.config/fish/config.fish
PowerShell and elvish are supported too (wt shell-init --help). Without it,
wt only prints the path to go to.
Usage
Run wt in a repository to open the TUI, and press ? for its keys.
wt --help lists everything. remove, drop, and prune won't delete
uncommitted or unpushed work without --force.
Configuration
wt config get|set|list|edit manages a per-repo .wt.toml (or the global config,
with --global). For example:
= "{repo_parent}/{repo}.worktrees/{repo}-{branch_slug}" # the default
= [".env"] # ignored files to bring into new worktrees
[]
= "npm install" # runs inside each new worktree
As a library
The worktree engine is the kono-wt crate
(imported as wt); default-features = false drops the CLI and TUI. See the
API docs.
Development
mise tasks lists the rest; mise run svg regenerates the screenshot above. Releases are cut by release-plz;
see RELEASING.md.
License
MIT — see LICENSE.