wt select

Interactive worktree selector. Browse and switch worktrees with live preview.

wt select demo

Examples

Open the selector:

wt select

Preview tabs

Toggle between views with number keys:

  1. HEAD± — Diff of uncommitted changes
  2. log — Recent commits; commits already on the default branch have dimmed hashes
  3. main…± — Diff of changes since the merge-base with the default branch
  4. remote⇅ — Diff vs upstream tracking branch (ahead/behind)

Keybindings

KeyAction
/Navigate worktree list
EnterSwitch to selected worktree
EscCancel
(type)Filter worktrees
1/2/3/4Switch preview tab
Alt-pToggle preview panel
Ctrl-u/Ctrl-dScroll preview up/down

With --branches, branches without worktrees are included — selecting one creates a worktree. This matches wt list --branches.

Configuration

Pager

The preview panel pipes diff output through git's pager (typically less or delta). Override pager behavior in user config:

[select]
pager = "delta --paging=never"

This is useful when the default pager doesn't render correctly in the embedded preview panel.

See also

Available on Unix only (macOS, Linux). On Windows, use wt list or wt switch directly.

Command reference

wt select - Interactive worktree selector

Browse and switch worktrees with live preview.

Usage: wt select [OPTIONS]

Options:
      --branches
          Include branches without worktrees

      --remotes
          Include remote branches

  -h, --help
          Print help (see a summary with '-h')

Global Options:
  -C <path>
          Working directory for this command

      --config <path>
          User config file path

  -v, --verbose...
          Show debug info and write diagnostic report (-vv)