Claude Code Plugins

Community-maintained marketplace

Feedback
8
0

Switch between git worktrees for parallel development. Use when working on multiple issues simultaneously.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name worktree-switch
description Switch between git worktrees for parallel development. Use when working on multiple issues simultaneously.
mcp_fallback none
category worktree

Worktree Switch

Navigate between isolated worktree directories quickly.

When to Use

  • Working on multiple issues
  • Need to context switch without stashing
  • Testing different branches side-by-side
  • Comparing implementations

Quick Reference

# List all worktrees
git worktree list

# Switch worktree (simple cd)
cd ../ProjectOdyssey-42-feature

# Verify current worktree
git worktree list | grep "*"

# Switch by issue number (script)
./scripts/switch_worktree.sh 42

Workflow

  1. List worktrees - See all available worktrees and their paths
  2. Navigate - cd to desired worktree directory
  3. Verify - Check git branch to confirm you're on right branch
  4. Work - Make changes, commit normally
  5. Switch - Move to different worktree with simple cd

Common Patterns

Terminal Aliases

# Add to ~/.bashrc or ~/.zshrc
alias wt='git worktree list'
alias wtcd='cd $(git worktree list | fzf | awk "{print \$1}")'

Tmux Sessions

# Create persistent session per worktree
tmux new -s issue-42 -c ../ProjectOdyssey-42-feature

# Switch sessions
tmux attach -t issue-42

# List sessions
tmux list-sessions

Best Practices

  • One worktree per issue (don't share branches)
  • Use clear naming: <issue-number>-<description>
  • Keep worktrees organized in parent directory
  • Use terminal multiplexer (tmux/screen) for persistent sessions
  • Clean up completed worktrees (see worktree-cleanup skill)

Limitations

  • Each branch can only be checked out in ONE worktree
  • Cannot be in worktree while removing it
  • All worktrees share the same .git directory (some operations affect all)

References

  • See worktree-create skill for creating worktrees
  • See worktree-cleanup skill for removing worktrees
  • worktree-strategy.md