Pimp My IDE / Garage Dispatch
← Back to the garage
September 12, 2026 · git / worktrees / parallel agents

Branches need garages.

Worktrunk is surging because it fixes the least glamorous bottleneck in parallel coding: giving every job a clean bay, a predictable address, a warm start, a landing route, and a broom on the way out.

The take: a Git worktree prevents agents from fighting over one checkout. It does not, by itself, prevent shared-port collisions, copied secrets, stale dependencies, duplicate migrations, dirty merges, or orphaned bays. The upgrade is not “more agents.” It is a visible pit lane around each one.
Run the Worktree Pit Lane ↓

The breakthrough is boring directory ergonomics.

Git already supports multiple linked working trees. Each gets its own working files plus per-worktree state such as HEAD and the index, while sharing the repository’s broader administrative data.[2] That is the right primitive for parallel coding jobs: separate checkout surfaces without cloning the whole repository for every task.

The primitive is powerful and the factory UX is fussy. Worktrunk’s core pitch is to address a worktree by branch name, compute its path from a template, and compress create, switch, list, merge, and remove workflows into a small command set. Its README shows wt switch -c -x claude feat creating a branch/worktree and starting a command in it, while wt list adds working-state context beyond paths.[1]

Parallelism becomes usable when isolation has an address and a cleanup ritual.

The worktree is a bay, not a force field.

Git’s documentation is explicit about what is separate and what is shared. A linked worktree has per-worktree files, but it remains attached to the same repository. Administrative files for missing worktrees can be pruned; worktrees on removable or intermittently mounted storage can be locked to protect that state.[2]

That boundary matters for agents. Separate checkouts stop two jobs from writing the same working file. They do not automatically allocate separate ports, databases, cloud sandboxes, credentials, caches, or rate limits. Worktrunk offers hooks, branch-scoped variables, hashed dev-server ports, and build-cache sharing patterns; those are useful routing mechanisms, not automatic safety guarantees.[1]

Warm starts are where the tool earns its lift.

Worktrunk documents post-start hooks for setup, per-worktree dev-server ports, and copy-on-write sharing of ignored build artifacts on supported filesystems. The attraction is obvious: five isolated jobs are less useful if each one spends the first ten minutes rebuilding the same world.

But speed needs labels. A copied dependency cache is not the same thing as a clean install. A hashed port avoids one collision class, not database or queue collisions. A hook is executable policy. Print what ran, where it ran, and which resources were shared. Invisible convenience is still invisible authority.

Editors are feeling the same pressure.

VS Code 1.137 lets a quick chat attach to a workspace and offers an isolated-worktree option during that transition. Zed 1.19.2 includes fixes for linked-worktree names and creation paths in bare repositories, alongside better behavior around project diffs and Git state.[3][4] Different products, same signal: worktrees have moved from obscure Git furniture into front-line agent cockpit plumbing.

That is capability evidence, not proof that every team should run a swarm. Start with two bays and one merge queue. If review time, environment collisions, or cleanup debt scale faster than completed work, the answer is not a sixth terminal pane.

Run five visible stages.

  1. Create: bind task, owner, base revision, branch, path, and write scope before launch.
  2. Warm: run declared setup hooks; allocate ports and external resources; record what is copied or shared.
  3. Work: keep each job in its bay; surface dirty state, drift from base, and resource collisions.
  4. Land: stop services, update from the chosen base, run relevant checks, review the diff, and use one explicit merge authority.
  5. Scrub: remove the worktree and branch only after proof survives elsewhere; prune intentionally, never as mystery housekeeping.
Interactive makeover / lifecycle control

Worktree Pit Lane.

Traditional purpose replaced: a flat branch list and a pile of terminal tabs. Better version: a keyboard-native lifecycle shifter combines stage guidance, environment interlocks, a physical carriage, live status, and a copyable handoff receipt. One control surface, one source of truth.

Move the job, not just the branch

Choose the current stage. Close both interlocks before the landing stage can report ready.

Worktree lifecycle stage
Bay service card / selected stage is highlighted
CreateName the job, owner, base, branch, path, and write scope.
WarmRun visible hooks; allocate and label every external resource.
WorkWatch dirty state, base drift, changed paths, and collisions.
LandStop services, sync, test, review, and hand one driver the key.
ScrubRetain proof, then remove the worktree and prune intentionally.

Pit-wall readout

CREATE: cut a named bay from a known base. Do not launch an anonymous checkout.

1/5create
Open the four-source service manual
[1] Worktrunk repository and README — core commands, branch-name addressing, hooks, merge/remove workflow, status listing, hashed ports, branch-scoped variables, and supported-filesystem cache sharing. Repository snapshot read September 12, 2026. [2] Git documentation — git worktree: linked working trees, per-worktree versus shared administrative state, lock, prune, move, repair, and remove semantics. [3] Visual Studio Code 1.137 release notes, September 9, 2026: workspace continuation from quick chat and the isolated-worktree option. [4] Zed 1.19.2 release notes, September 9, 2026: linked-worktree fixes for bare repositories plus Git/project-diff improvements. [5] Hacker News item 46427055 — earlier Worktrunk discussion; community reaction and discovery context only.

Source boundary: the stage gauge is a lifecycle teaching aid, not production telemetry, risk scoring, or proof of completion. Hooks execute commands and unknown configuration should be inspected before use. Tool popularity does not establish fitness for a particular repository.