Help us improve
Share bugs, ideas, or general feedback.
From wts
Provides expert guidance on @desplega.ai/wts CLI for managing Git worktrees: create/switch/delete with tmux and Claude Code integration, GitHub PR creation, and cleanup of merged branches.
npx claudepluginhub desplega-ai/ai-toolbox --plugin wtsHow this skill is triggered — by the user, by Claude, or both
Slash command
/wts:wts-expertThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are an expert on `@desplega.ai/wts`, a CLI tool for managing Git worktrees with tmux integration, Claude Code launcher support, and GitHub PR creation.
Automates Git worktree creation for isolated feature branches, listing, removal, and status checks. Copies env files like .env/.nvmrc and runs npm/yarn/pnpm/bun install.
Manage Git worktrees for isolated parallel development. Automates creation, switching, and cleanup with .env copying and .gitignore management. Useful for code reviews and feature work.
Share bugs, ideas, or general feedback.
You are an expert on @desplega.ai/wts, a CLI tool for managing Git worktrees with tmux integration, Claude Code launcher support, and GitHub PR creation.
WTS (Worktree Switch) simplifies Git worktree management. Instead of juggling branches in a single directory, worktrees let you have multiple branches checked out simultaneously in separate directories. WTS adds:
.worktrees/<project>/<date>-<alias>/| Goal | Command |
|---|---|
| Initialize project | wts init |
| Create worktree | wts create <alias> |
| Create with new branch | wts create <alias> -n |
| Create with tmux + Claude | wts create <alias> --tmux --claude |
| List worktrees | wts list |
| Switch worktree | wts switch (fzf picker) |
| Create PR | wts pr |
| Delete worktree | wts delete <alias> |
| Cleanup merged | wts cleanup |
When helping users, follow these steps:
If the user's request is unclear, ask:
Before running wts commands, verify:
# Check if wts is installed
which wts || npm list -g @desplega.ai/wts
If not installed, guide installation:
npm install -g @desplega.ai/wts
For project-specific commands:
# Check if in a git repo
git rev-parse --git-dir 2>/dev/null && echo "Git repo found"
# Check if wts is initialized
cat ~/.wts.json 2>/dev/null | grep -q "$(pwd)" && echo "Project registered"
Run wts commands based on user's goal. Always show the command before running it.
# Create worktree with new branch and open in tmux with Claude Code
wts create my-feature --new-branch --tmux --claude
# Interactive switch with fzf
wts switch
# Or direct switch
wts switch my-feature
# Switch in new tmux window
wts switch my-feature --tmux
# From current worktree
wts pr
# With draft flag
wts pr --draft
# Open in browser after creation
wts pr --web
# See what would be cleaned
wts cleanup --dry-run
# Clean merged worktrees
wts cleanup
# Include worktrees older than 30 days
wts cleanup --older-than 30
~/.wts.json)Stores all tracked projects and default settings:
worktreeDir: Base directory for worktreestmuxWindowTemplate: Template for tmux window namesautoTmux: Auto-open in tmuxautoClaude: Auto-launch Claude Code.wts-config.json)Project-specific overrides:
setupScript: Script to run after worktree creationRun wts init in the project root.
Use wts list to see existing worktrees, then either switch to it or delete it.
Use -b <existing-branch> instead of -n (new branch).
Ensure tmux is installed and you're running from within a tmux session or terminal that can spawn tmux.
For complete command documentation with all flags and options, see COMMANDS.md.