Commands
Complete reference for all wt commands and options.
Basic Usage
wtInteractive menuOpens the main interactive menu with all worktrees and actions.
wt <name>Quick switchFuzzy-match and jump directly to a worktree.
wt feat # Matches "feature-auth", "feat-login", etc.
wt review # Matches "reviewing-fix-bug"wt -Previous worktreeSwitch to the previous worktree (like cd -).
wt .Main worktreeSwitch to the main (primary) worktree.
Options
| Option | Description |
|---|---|
--help, -h | Show help message |
--version, -v | Show version number |
--setup | Run the setup wizard (shell config, dependency check) |
--dev | Switch to dev mode (use wt.sh from current worktree) |
--release | Switch back to release mode (use wt-core from PATH) |
--wizard | Run the preferences wizard (editor, platform, settings) |
Main Menu
Running wt displays the interactive main menu:
Git Worktree Manager v1.8.0 +-------------------------------------------------------------------------+ | myapp | ^E: editor | ^N: new | ^P: PRs | ^G: issues | ^D: delete | +-------------------------------------------------------------------------+ | > ~/projects/myapp [main] | | ~/projects/myapp-feature-auth * [feature] | | ~/projects/myapp-reviewing-fix-bug [fix/bug] | | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- | | Create a worktree | | Manage stashes | | Delete worktree(s) | | ⚙ Settings | | Quit | +-------------------------------------------------------------------------+
The * indicator shows worktrees with uncommitted changes.
Creating Worktrees
Access the creation menu via Ctrl+N or select "Create a worktree" from the main menu.
| Option | Description |
|---|---|
| New branch | Enter a name and select base branch |
| From existing branch | Browse all local and remote branches |
| From current (quick copy) | Creates a copy of the current branch with timestamp |
| From an issue | Creates feature/{issue-num}-{title} branch |
| Review a PR | Creates worktree with reviewing- prefix |
Worktree Placement
Worktrees are always created next to your main repository:
~/projects/
myapp/ # Main repo
myapp-feature-auth/ # From branch
myapp-feature-7-add-dark-mode/ # From issue
myapp-reviewing-fix-bug/ # From PR
myapp-main-copy-20250116/ # From currentStash Management
Access "Manage stashes" from the main menu for a complete stash management experience with a completely redesigned interface.
Stash List View
Each stash displays: age, file count, origin branch, and message. Select any stash to see detailed info including modified files and diff stats.
| Shortcut | Action |
|---|---|
| Ctrl+A | Apply stash (keep it in the list) |
| Ctrl+P | Pop stash (apply + remove) |
| Ctrl+D | Drop stash(es) - supports multi-select |
| Ctrl+N | New stash (all changes) |
| Ctrl+E | Partial stash (select specific files) |
| Ctrl+W | Create worktree from stash |
| Ctrl+B | Create branch from stash |
| Ctrl+S | View full diff in pager |
| Ctrl+X | Export stash as .patch file |
| Ctrl+R | Apply + resolve conflicts (Claude) |
Advanced Features
- *Partial stash — select specific files to stash, leave others untouched
- *Worktree from stash — create a new worktree with the stash auto-applied
- *Claude conflict resolution — let AI resolve merge conflicts when applying stashes
- *Rename stash — change the stash message (via actions menu)
Deleting Worktrees
Access delete mode via Ctrl+D or select "Delete worktree(s)" from the main menu.
- *Use Space to toggle selection for multi-delete
- *Press Enter to confirm deletion
- *Extra confirmation is shown for worktrees with uncommitted changes
Editor Detection
Ctrl+E opens a worktree in your editor. The editor is resolved in this order:
WT_EDITORconfig value (set via⚙ Settings)- Cursor
- VS Code
$EDITORenvironment variable- vim (fallback)