← The garden

Dedicated machines over git worktrees

Why parallel agents got their own machines instead of shared worktrees.

🌿 Budding Planted 2026-06-05 Last tended 2026-06-16

Git worktrees looked like the clean way to run many coding agents in parallel from one repo. In practice, concurrent agents sharing a tree fought over the git index and stepped on each other’s in-progress edits — “worktrees ate my edits.”

The move that fixed it: give each parallel agent genuine isolation — a dedicated machine (or at minimum a fully isolated worktree on its own branch), never a shared working directory. Index contention and test interference both vanish when nothing is shared.

Longer write-up: Git Worktrees Ate My Edits — Why We Switched to Dedicated Machines.

Still chewing on

  • Where the crossover is: how many parallel agents justify a dedicated box vs. an isolated worktree.
  • Whether merge-time conflict handling should re-dispatch the losing unit rather than hand-resolve.