Running Multiple Claude Code Sessions in Parallel with Git Worktrees

A developer on r/ClaudeAI shares a practical pattern for running multiple Claude Code sessions in parallel using git worktree. The core pain point: losing context every time you git stash and switch branches to test an agent's suggestion.
The Setup
- Main worktree: where you review and commit
- 2-3 extra worktrees: each running its own Claude Code session on its own branch
- Workflow: when an agent finishes a task,
cdinto that worktree, review the diff, merge, and move on
No stashing, no context switching, no "wait what was I doing."
Git Worktree Quick Start
To create a new worktree on a branch named feature/agent-1:
git worktree add ../project-feature-agent-1 feature/agent-1This creates a separate directory (../project-feature-agent-1) where you can run Claude Code (or any other agent) independently. Each worktree is a full working copy of the repo, so you can have different branches checked out in each.
When the agent finishes, from the main worktree:
cd ../project-feature-agent-1
git diff main
# review, then merge
git checkout main
git merge feature/agent-1Then remove the worktree:
git worktree remove ../project-feature-agent-1Why It Works for AI Agents
Standard branching requires stashing uncommitted changes or committing in-progress work before switching branches — both of which break flow and lose context. Worktrees give you isolated filesystem directories, so each agent session lives in its own sandbox. You can have Claude Code in one worktree, Cursor in another, or different prompts running simultaneously.
Who It's For
Developers using AI coding agents (Claude Code, Cursor, etc.) who need to run multiple experiments or parallel tasks without the overhead of git stash and branch switching.
📖 Read the full source: r/ClaudeAI
👀 See Also

Introducing Aionic Anthology: A Framework for Structuring Claude's AI Tasks
The Aionic Anthology framework organizes Claude's AI tasks by separating context into categories and adding a risk evaluation system to improve task execution.

OmniRecall Beta: FAISS-Powered Memory Injection for Cloud LLM Chats
OmniRecall is a local mitmproxy bypass that intercepts traffic to cloud chat interfaces like DeepSeek, adding a permanent memory layer using FAISS indexing and sentence-transformers MiniLM-L6. It's currently in beta, requires CPU-only operation, and uses an aggressively restrictive source-available license.

Voxlert: Voice Notifications for Claude Code Sessions with Character Voices
Voxlert is a tool that hooks into Claude Code events and speaks notifications using distinct character voices like StarCraft Adjutant, SHODAN, GLaDOS, and HEV Suit. It uses an LLM via OpenRouter to generate in-character lines and runs locally with npm installation.

OpenIntel Iran: AI-Powered Conflict Dashboard Updates with Hourly Briefings
A developer's AI agent has overhauled the OpenIntel Iran dashboard, an auto-updating intelligence tool that scans Reuters, AP, BBC, and other major sources hourly to verify developments and publish structured briefings on the Iran-Israel-US conflict.