cw — Copilot Worktree Launcher
A TUI launcher that manages git worktrees and starts GitHub Copilot CLI sessions in them. Run parallel Copilot sessions on different branches without cloning the repo multiple times.
Install
go install github.com/vhvb1989/cw@latest
Or build from source:
git clone https://github.com/vhvb1989/cw.git
cd cw
go install .
Usage
Run cw from any git repository:
$ cw
⚡ Copilot Worktree Launcher (azure-dev)
▸ azure-dev (main) ← current
azure-dev-issue-789 (fix/issue-789)
azure-dev-feat-api (feat/new-api)
+ New worktree
✕ Quit
↑↓/jk navigate • enter select • n new • r remove • q quit
Keys
| Key |
Action |
↑/↓ or j/k |
Navigate (scrolls with large lists) |
Enter |
Select worktree → launches copilot in it |
n |
Create new worktree (prompts for name + base branch) |
r |
Remove selected worktree (with confirmation) |
q / Esc |
Quit |
Why?
When working on multiple issues/PRs in the same repo, you need isolated workspaces.
git worktree gives you that without full clones, and cw makes it seamless:
- Run
cw → pick or create a worktree
- Copilot CLI launches in that directory
- Work on your issue, push, iterate
- Exit Copilot → run
cw again for the next task
Each worktree gets its own branch, files, and Copilot session — fully isolated.
How It Works
- Lists all git worktrees for the current repo
- Lets you create new ones (
../<repo-name>-<feature> with a new branch)
- Launches
copilot in the selected worktree directory
- When
copilot exits, cw exits too
License
MIT