Multiple Claude Code agents

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

  1. Install Nana. Download the .msi from the latest release, or run this in PowerShell. No administrator rights are needed.

    irm https://nana.areshk.dev/install.ps1 | iex
  2. Open your project. Run nana <folder> in any terminal, or use Add project (Ctrl+Shift+O).

  3. Turn on worktrees. In the project menu, choose Worktrees → Show Worktrees.

  4. 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.

  5. Start Claude Code in each worktree. Open a terminal in the worktree and run claude.

  6. Watch them side by side. Split the tab with Ctrl+Shift+D (right) or Ctrl+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.