Feature · Parallel workspaces

Parallel workspaces: one isolated git worktree per task

Updated September 29, 2026 · 4 min read

Short answer

Parallel workspaces in Tallos give every task its own git worktree: a separate folder, a separate branch and its own agent terminals. That lets Claude Code, Codex, Gemini CLI or any other agent work on the same repository at the same time without overwriting each other. You review each workspace's diff, then commit, push and open a pull request from it.

  • Every workspace is a real git worktree with its own branch
  • Start from the base branch, another branch, a commit or a remote branch
  • Link a GitHub, GitLab, Linear or Jira item on create
  • Diff, commit, push and PR per workspace
  • Runs locally or on an SSH host

What is a parallel workspace?

A parallel workspace is an isolated copy of your repository, created with git worktree, that belongs to a single task. It has its own branch, its own files on disk and its own agent terminals, editor tabs and browser tabs. Tallos is built around this model: instead of branching and stashing on one checkout, each feature or bug gets a workspace.

This is what makes it safe to run AI agents in parallel. Two agents in the same folder will edit the same files and break each other's work. Two agents in two worktrees cannot. If worktrees are new to you, the guide on git worktrees for AI agents covers the git side.

One checkout

  • One branch at a time
  • Stash, switch, restore to change tasks
  • Two agents collide on the same files
  • Review is mixed across tasks

A workspace per task

  • One branch per task, all open at once
  • Switch tasks from the sidebar
  • Each agent edits only its own worktree
  • Each workspace has its own diff

How do I create a workspace for a task?

Click New workspace in the sidebar, name the task and submit. The dialog closes right away; git fetch and git worktree add keep running in the background while the new workspace shows its setup progress. You can cancel it, or retry if it fails.

  • Project: the repository the workspace belongs to.
  • Start from: the repo's base branch (the fast path), another local branch to stack on, a specific commit, or an existing remote branch that Tallos fetches.
  • Run on: this computer or an SSH host, see remote workspaces.
  • Agent: which agent to launch, with Set as default for next time.
  • Task link: paste a GitHub PR, GitLab MR, Linear issue or Jira issue. The link shows on the workspace card and names the branch; for Linear, Tallos uses Linear's own suggested branch name.
  • Advanced: set an explicit branch name or a parent workspace for sidebar nesting.

Agents can create workspaces too: the tallos worktree create command does the same thing from any terminal, which is how a squad leader gives each member its own child worktree.

How do I run several agents on the same repo?

Create one workspace per agent and start a different agent in each. The classic pattern is to race three agents on the same task:

  1. 1

    Create three workspaces

    Start all three from the same branch, for example fix-bug, fix-bug-2 and fix-bug-3.

  2. 2

    Launch a different agent in each

    Claude Code in one, Codex in another, Gemini CLI or OpenCode in the third.

  3. 3

    Give them the same prompt

    Split the panes so you can watch all three work side by side.

  4. 4

    Review each diff

    When they finish, compare the results and annotate the winner.

  5. 5

    Ship the winner, delete the rest

    Commit, push and open a PR from the winning workspace. Deleting the others removes their folders and branches.

Different agents make different mistakes. Where they agree, the answer is probably right; where they split, you found the hard part. The same setup works for one agent many times over, see running multiple Claude Code sessions.

Download Tallos and give every agent its own workspace.

Get Tallos →

What is the lifecycle of a workspace?

Every workspace follows the same five stages, and all of them happen inside Tallos:

StageWhat happens
CreateName the task, pick where it starts from, optionally link a GitHub, GitLab, Linear or Jira item.
WorkAgent terminals, editor tabs, browser tabs and splits, all scoped to this worktree.
ReviewA diff against the branch it started from, with line notes you can send back to the agent.
ShipCommit, push, open a pull request and watch its checks, from the Source Control panel.
Archive or deleteArchive it, put it to sleep, or delete it. Delete removes the folder and the branch after a confirmation.
The lifecycle of a Tallos workspace

The sidebar groups workspaces by project and shows which agents are working and which need you. You can pin long-running work, filter the list, and select several workspaces to act on them at once.

What about .env files and node_modules in a new worktree?

A new worktree is a clean checkout, so gitignored files like .env or node_modules are missing at first. Tallos fills the gap two ways:

  • Worktree Shared Paths in the repository settings: paths from your main checkout that appear in each new worktree, cloned on macOS when possible, otherwise linked.
  • `.worktreeinclude` at the repo root: a list of gitignored files or folders to copy into each new worktree, so each one owns its copy of .env or local editor config.

How do I merge a workspace back into main?

You merge a workspace the same way you merge any branch: through a pull request, or with plain git. Tallos keeps the whole path in one place.

  1. 1

    Review the diff

    Open the workspace's diff, read every change and send notes back to the agent until it is clean. See diff review.

  2. 2

    Commit

    Stage files and write a message in Source Control, or use Generate with AI to draft one.

  3. 3

    Push

    Push sets the upstream the first time. Tallos never force-pushes silently; force push with lease is a separate, explicit action.

  4. 4

    Open the pull request

    Create the PR or MR with base branch, title, description and draft state. GitHub, GitLab and Bitbucket Cloud are supported.

  5. 5

    Merge

    Merge from the PR view when checks pass, or turn on GitHub auto-merge. Then delete the workspace.

Frequently asked questions

Are Tallos workspaces real git worktrees?

Yes. Each workspace is created with git worktree, has its own branch and folder, and works with any git command you run in its terminal.

Can two AI agents work on the same repository at the same time?

Yes, if each one has its own workspace. Each agent edits only the files in its own worktree, so they cannot overwrite each other's changes.

Does deleting a workspace delete my branch?

Deleting a workspace removes its folder and its branch after a confirmation. If git keeps a branch because it may have unmerged commits, Tallos lists it so you can decide what to delete.

How do I get my .env file into a new worktree?

List it in a .worktreeinclude file at the repo root and Tallos copies it into each new worktree. For large folders like node_modules, use Worktree Shared Paths in the repository settings.

Can I create a workspace from a Linear or Jira issue?

Yes. Paste the issue link, or a GitHub PR or GitLab MR, when you create the workspace. Tallos names the workspace, links the item and shows it on the workspace card.

Can workspaces run on another machine?

Yes. Pick an SSH host under Run on when you create the workspace, and agents run on that machine with the same interface.

One task, one workspace, as many agents as you need.

Tallos runs on macOS and Windows and works with the agent subscriptions you already have. Create a workspace per task and let your agents work in parallel.

macOS 13+ · Windows 10+