← All posts

How to Run Multiple Claude Code Sessions at Once (2026)

Running Claude Code in parallel: tabs vs tmux vs worktrees, how many sessions your machine and your brain can handle, and how to know which one needs you.

Claude Code spends most of its life waiting. You give it a task, it works for ninety seconds, then it stops and looks at you. You read the diff, you say yes, it goes again. The agent is fast. The gap between turns is where your day leaks away.

That gap is the entire argument for running more than one session. While session A is compiling, session B can be writing tests. I run three most days. I have run eight. Here is what works, what breaks, and where the ceiling actually sits.

Why parallelize at all

The honest reason is not 3x output. You do not get that. The reason is that one session leaves you idle in ten to sixty second chunks, dozens of times an hour, and those chunks are too short to do anything with. So you check Slack. Then you are gone for four minutes.

Two sessions kill most of that dead air. Three is where I stop feeling like I am waiting on anything.

Good candidates:

  • A long refactor in one repo, a small bug fix in another.
  • One session writing code, another writing tests against a finished feature.
  • The same migration across three separate services.

Bad candidate: two sessions editing the same files. They will overwrite each other and neither will tell you.

The isolation problem nobody warns you about

Two Claude Code sessions in the same directory on the same branch will ruin your afternoon. Both agents read files, build a mental model, then write. Agent B's write lands on top of agent A's, and agent A has no idea its earlier read is now stale.

The fix is git worktrees. One checkout per session, all sharing one .git:

git worktree add ../myapp-auth   feature/auth
git worktree add ../myapp-docs   feature/docs
git worktree add ../myapp-hotfix hotfix/login-500

Each session gets its own directory and branch. They cannot step on each other. Merge at the end like any other branch, then git worktree remove ../myapp-auth when you are done.

This is the highest-value thing on this page. Do it before you touch any of the terminal stuff.

Tabs, tmux, or separate windows

Once your sessions are isolated, they need somewhere to live.

Plain terminal tabs

Cmd+T, cd to the worktree, run claude. Repeat. Zero setup, works everywhere, and it is what most people do.

The limits arrive fast. Native tabs shrink as you add them, so by tab six the titles are unreadable slivers. Worse, nothing tells you which tab needs you. You cycle through all six every couple of minutes hunting for the one sitting on a permission prompt. That polling is the real cost, and it stays invisible until you measure it.

tmux

tmux is the power-user answer and it is a good one. Sessions survive a closed terminal, panes let you watch two agents side by side, and you can script the whole layout:

tmux new-session -d -s agents -c ~/code/myapp-auth
tmux send-keys   -t agents 'claude' Enter
tmux new-window  -t agents -c ~/code/myapp-docs
tmux send-keys   -t agents 'claude' Enter
tmux attach      -t agents

Save that as a script and your whole setup is one command.

The catch: Claude Code is a TUI, and TUIs inside tmux inside a terminal emulator get fussy about mouse reporting and true color. Put set -g default-terminal "tmux-256color" and set -ga terminal-overrides ",*256col*:Tc" in your .tmux.conf and most of it goes away. tmux still does not solve notifications. A background window shows an activity flag, and activity is not the same as "blocked on you."

Separate windows

Underrated on a big monitor. Two or three tiled windows means you can see everything at once, and seeing beats any notification scheme. Falls apart past three, and on a laptop it never starts.

What your machine can take

The Claude Code process is cheap. A few hundred megabytes of Node, mostly idle. The expensive part is what the agent runs: test suites, dev servers, type checkers. Three agents running npm test at once on an 8-core machine makes all three slow, and you will blame the agent.

From my own use on a 16GB Mac: one to three sessions, no contention. Four to six, fine as long as only one or two are building at any moment. Seven and up, you are queueing on CPU and you stopped reading the diffs carefully anyway.

Watch your plan limits too. Parallel sessions burn tokens in parallel, and Anthropic changes limits often enough that you should check their current pricing rather than a number in a blog post.

The real ceiling is attention

Here is what took me too long to admit. My laptop can run ten agents. I cannot supervise ten agents.

The failure mode is not a crash. It is that session five asked permission to delete a directory eleven minutes ago and has been sitting there while you were heads-down in session two. You did not lose work. You lost eleven minutes and never noticed.

So the question that matters is not "how many can I launch." It is "how do I know which one needs me without looking."

How MOLTamp handles it

This is the problem MOLTamp was built around, so apply the appropriate salt.

Version 3.2.0 shipped a tab system holding up to 50 concurrent sessions, each with its own PTY and working directory. The strip scrolls horizontally instead of squashing tabs to nothing, and Cmd+P opens a searchable session list once it gets long.

The part that changed my workflow is the per-tab attention badges. MOLTamp registers itself with Claude Code's hook system and colors each tab by what that agent is doing. Amber means blocked on you: a permission prompt, or idle waiting for input. Green means it finished its turn while you were looking elsewhere. No badge means it is working, leave it alone. The badge clears the moment that session runs a tool again.

The effect is that you stop polling. You work in one tab, an amber dot appears three tabs over, you deal with it. Skins set which colors the badges use, but they cannot disable the pulse, which is deliberate: a theme should never make "this session needs you" invisible. Details in the skinning docs, and the community gallery has tab bar treatments worth stealing.

Habits that survived real work

Stagger your starts. Four sessions launched at once means four agents reading the codebase and four test runs colliding.

Keep one session sacred. I treat tab one as the thing I care about and everything else as background. When all four are priorities you context-switch on every badge and finish nothing.

Review before merging, not as you go. Code-reviewing three agents in real time is how mistakes ship.

FAQ
How many Claude Code sessions can I run at once?

As many as you have memory for, technically. Practically two or three is where most people land, and six is about the limit of what one person can supervise. The constraint is attention, not CPU.

Can two Claude Code sessions work on the same repo?

Only with a separate git worktree each. Two sessions in one directory will overwrite each other's edits silently.

What is the difference between parallel sessions and subagents?

Parallel sessions are separate top-level agents you supervise individually. Subagents run inside one session and report back to it. See Claude Code subagents, explained simply.


Start with worktrees, which fixes correctness. Then pick whatever session layer stops you polling: tmux if you like scripting layouts, MOLTamp if you want tabs that say which agent is stuck. For dedicated orchestration tools see Conductor alternatives, for the wider multi-agent picture see running multiple AI agents in one terminal, and for the tmux flavor of this setup, the MOLTamp tmux power user setup.