Run Multiple Claude Code Agents in Parallel on Windows
To run several Claude Code sessions at once without them changing the same files, give each session its own git worktree and its own terminal. Nana is a free Windows terminal that does both, and shows which session is working, waiting for you, or done.
Why one folder is not enough
Two agents in the same folder share one checkout. They edit the same files, work on the same branch, and run tests against each other’s half-finished changes. A git worktree is a second checkout of the same repository on its own branch, so each agent works alone.
Steps
-
Install Nana. Download the
.msifrom the latest release, or run this in PowerShell. No administrator rights are needed.irm https://nana.areshk.dev/install.ps1 | iex -
Open your project. Run
nana <folder>in any terminal, or use Add project (Ctrl+Shift+O). -
Turn on worktrees. In the project menu, choose Worktrees → Show Worktrees.
-
Create one worktree per task. Choose New Worktree…, give it a name, and create a new branch from your base branch. Nana puts it in
~/.nana/worktrees/<project>/<name>by default. -
Start Claude Code in each worktree. Open a terminal in the worktree and run
claude. -
Watch them side by side. Split the tab with
Ctrl+Shift+D(right) orCtrl+Shift+Alt+D(down).
Know which session needs you
Nana recognizes Claude Code in a terminal and shows its state on the tab, the worktree, and the project:
| State | Meaning |
|---|---|
| Working | The agent is busy. |
| Waiting | The agent needs your input. |
| Idle | The agent is done or not doing anything. |
It needs no hooks or setup. When a session needs you or finishes, Nana sends a Windows notification; click it to jump to that pane. Choose Agents Focused in the sidebar to list only the tabs that run an agent. See AI agents.
Send one prompt to every session
Open the composer with Ctrl+Shift+I, write the prompt, and choose Send to
All Split Panes in its … menu. See Composer.
Review and merge each branch
- The Review tab shows each worktree’s diffs and history.
- Commit asks an AI tool you already have, such as Claude Code, to write the commit message.
- Create PR pushes the branch and opens a pull request. After merging, Nana can remove the worktree.
See Git.
Close the window, keep the agents
Terminals run in nana-server, not in the window. Quit the app and your Claude
Code sessions keep running; open it again to find them where you left them.
See Server.
Other agents
The same steps work for Codex, OpenCode, Copilot, Cursor, Droid, Grok, Kiro, Pi, Oh My Pi, Antigravity, and Xal. You can mix them: one worktree with Claude Code, another with Codex.
Without Nana
You can do the same with plain git and any terminal. Create a worktree per task, then start Claude Code in each folder in its own tab:
git worktree add ../myapp-auth -b feat/auth
git worktree add ../myapp-search -b feat/search
You then have to check each tab yourself to see which session is waiting, and the sessions stop when you close the terminal.