Learn · Parallel Claude Code

How to run multiple Claude Code sessions at the same time

Updated September 29, 2026 · 5 min read

Short answer

To run multiple Claude Code sessions at the same time, give each session its own git worktree: a separate folder and branch of the same repository. Manually, you run git worktree add per task and start claude in each folder from its own terminal tab. Tallos automates this: every new workspace is a worktree with its own Claude Code session, side by side, with a diff review for each.

  • One session per worktree: no shared files, no shared branch
  • Manual: git worktree add + one terminal tab per session
  • Tallos: one click per workspace, split panes, per-workspace diff
  • All sessions share your Claude plan's usage limits

Can you run multiple Claude Code sessions at the same time?

Yes. Claude Code is a CLI, so you can start as many claude processes as your machine and your plan allow. The catch is the folder. Two sessions in the same working directory edit the same files on the same branch, and they overwrite each other. The fix is to give every session its own working directory, and the clean way to do that is a git worktree.

  • Same files: session A rewrites auth.ts while session B is halfway through editing it.
  • Same branch and index: one session's git add or git stash sweeps up the other's changes.
  • Same build output: tests, dev servers and lockfiles collide.
  • Unreadable history: you cannot tell which change came from which prompt when you review.

How do I run multiple Claude Code sessions manually with git worktrees?

Create one worktree per task, then open one terminal tab per worktree and start Claude Code in each. Each worktree is a full checkout on its own branch, sharing the same .git history.

# from the root of your repo
git worktree add ../myapp-auth -b feat/auth-flow
git worktree add ../myapp-tests -b test/checkout

# terminal tab 1
cd ../myapp-auth && npm install && claude

# terminal tab 2
cd ../myapp-tests && npm install && claude

# see what you have
git worktree list
  1. Copy the gitignored files each session needs (.env, local config) into every worktree, and install dependencies there.
  2. Give each session a different port if it runs a dev server.
  3. Review each branch with git diff main...feat/auth-flow before merging.
  4. Clean up with git worktree remove ../myapp-auth and git branch -d feat/auth-flow when you are done.

This works, and it is exactly what happens under the hood in Tallos. The git worktrees guide covers every command and pitfall in detail.

What goes wrong when you manage parallel sessions by hand?

The manual setup is fine for two sessions and painful at five. The work is not the agents; it is everything around them.

  • Tracking state: which tab finished, which is waiting for a permission prompt, which one crashed.
  • Setup per worktree: dependencies, .env files and ports, every time.
  • Reviewing: switching folders and running git diff per branch, with no place to leave line comments for the agent.
  • Cleanup: stale worktrees and forgotten branches pile up, and a folder deleted by hand leaves metadata that needs git worktree prune.

Skip the setup. Tallos gives every Claude Code session its own worktree in one click.

Get Tallos →

How do I run multiple Claude Code sessions in Tallos?

  1. 1

    Connect Claude Code

    Open Settings → Connections and make sure the Claude Code card says Connected. If not, click Install, then Sign in (runs claude auth login) or Use API key. Guide: connect your agents.

  2. 2

    Open your project

    Add the repository once. Tallos uses its default branch as the base every workspace starts from.

  3. 3

    Create one workspace per task

    Click New workspace, pick the project, name the task and choose Claude Code as the agent. Tallos creates a real git worktree and branch in the background. Repeat for each task; you can keep working while they are created.

  4. 4

    Give each session its task

    Claude Code opens in a chat inside each workspace. Describe the task there, or switch to View terminal for the raw CLI. Each session runs with its workspace as the working directory.

  5. 5

    Watch them side by side

    Drag a tab to the right or bottom edge of a pane to split, so you can watch several sessions at once. The sidebar shows which workspaces are working and which need you, and the status bar shows your Claude usage against the plan's limits.

  6. 6

    Review each diff

    Open each workspace's diff against its starting branch. Leave notes on lines and send them back to that session in one batch with Send notes to.

  7. 7

    Ship the winners, delete the rest

    Commit, push and Create PR from the workspaces you keep. Delete the others; Tallos removes the worktree folder and branch after you confirm.

To stop copying .env files by hand, list them in a .worktreeinclude file at the repo root. Tallos copies those gitignored files into every new workspace. More in parallel workspaces.

Manual worktrees vs Tallos: what is the difference?

TaskManual (git + terminal tabs)Tallos
Create an isolated sessiongit worktree add ../dir -b branch, cd, claudeNew workspace → Claude Code
Copy .env and local configBy hand, per worktree.worktreeinclude, applied to every new workspace
See which session needs youCheck each tabStatus in the sidebar
Watch several sessionsTerminal splits or tmuxDrag tabs into split panes
Review a sessiongit diff main...branchDiff view with line notes sent back to the agent
Clean upgit worktree remove + git branch -dDelete the workspace (with confirmation)
Running parallel Claude Code sessions, two ways

Both approaches use the same git feature, so nothing is locked in: every Tallos workspace is a normal worktree you can open in any terminal, and worktrees you create yourself can be shown in the Tallos sidebar.

How many Claude Code sessions should I run in parallel?

Run as many as you can review. Tallos does not set a fixed cap, but three limits apply. Your plan: every session draws on the same Claude account's usage limits, so parallel sessions reach them faster. Your machine: each workspace keeps file watchers, dependencies and processes alive. Your attention: each diff still needs a human review before it ships.

Start with two or three independent tasks, such as a feature, a test suite and a bug fix. If you want several attempts at the same task, use the best-of-three squad: set the attempt member to Claude Code and a leader starts three copies in separate worktrees, compares the results and recommends one. For the wider picture, read running AI agents in parallel.

Troubleshooting parallel Claude Code sessions

  • `fatal: 'branch' is already checked out`. Git allows a branch in only one worktree at a time. Create a new branch per session.
  • Tests fail only in the new worktree. Gitignored files are missing. Install dependencies and copy .env, or add them to .worktreeinclude.
  • Port already in use. Two sessions started the same dev server. Give each workspace its own port.
  • Sessions stall at the same time. You probably hit your plan's usage limit. Check the usage readout in the status bar.
  • A session waits with no output. It is asking for permission. Open the chat and answer.

Try it on your own repo.

Get Tallos →

Frequently asked questions

Can two Claude Code sessions work in the same folder?

They can, but they will edit the same files on the same branch and overwrite each other. Give each session its own git worktree instead.

Do parallel Claude Code sessions share usage limits?

Yes. Every session on the same account draws on that account's limits. Tallos shows your Claude usage in the status bar so you can see how close you are.

Does Tallos use git worktrees for Claude Code sessions?

Yes. Every Tallos workspace is a real git worktree with its own branch, and Claude Code runs with that worktree as its working directory.

Can I run Claude Code and Codex on the same task in parallel?

Yes. Create two workspaces from the same starting branch, one with each agent, give them the same prompt and compare the diffs.

How do I stop copying .env into every worktree?

List the gitignored files in a .worktreeinclude file at the repo root. Tallos copies them into each new workspace.

What happens to the branch when I delete a workspace?

Tallos removes the worktree folder and its branch after confirmation. If git keeps a branch because it may have unmerged commits, Tallos lets you review it before deleting.

Run Claude Code in parallel, without the setup

One workspace per session, side-by-side panes and a diff review for each. Get Tallos.

macOS 13+ · Windows 10+