Compare
Locking vs branching vs per-agent isolation — what’s the difference?
Locking lets one person write at a time, so work serializes and waits. Branching gives everyone a copy but leaves you to merge by hand. Per-agent isolation gives each actor its own line of work and merges and negotiates for you.
The three approaches differ in what they're built for: keeping people out of each other's way, letting them work apart, or letting many actors build in parallel and reconciling the results automatically. The difference matters most when the actors are AI agents moving fast.
What each one is for
- Locking is for preventing collisions by serializing access — one writer holds the file, everyone else waits their turn. Safe, but it turns parallel work into a queue.
- Branching is for working apart — everyone gets a copy and writes freely, then someone reconciles the divergence by hand at merge time. The work parallelizes; the merging doesn't.
- Per-agent isolation is for parallel actors who shouldn't have to coordinate manually. Each agent (and every sub-agent it spawns) gets its own line of work the instant it starts, the shared trunk is never written directly, and the system does the merging and negotiating for you.
Where the difference bites
With locks, two agents touching the same area take turns. With branches, they both write and someone untangles it later. With per-agent isolation, incompatible choices are surfaced and negotiated before any code exists, and at merge time an AI reads the actual code, combines what's compatible, and asks the responsible agent to rework what isn't — blocking until clean. Two agents editing different parts of the same file never block each other, and work is never silently overwritten.
At AI speed, conflicts are constant, not an edge case — which is why manual merging and turn-taking break down and automatic reconciliation becomes the point.
“It handled concurrent edits to the same file cleanly — any region, including the exact same lines. CatWrangler is built for parallel agents on the same file.”
Related questions
Do agents still need to merge branches by hand?
No. Each agent gets its own line of work, and on submit the system combines compatible changes automatically. When it can't safely resolve something, it asks the responsible agent to rework it and blocks the merge until clean — no human untangling diffs.
Don't two agents editing the same file still collide?
Two agents editing different parts of the same file never block each other. Conflicts on shared resources like env vars, endpoints, and tables are caught too — not just the same lines — and nothing is ever silently overwritten.
Keep reading
Vibe-Engineering
Many agents. One codebase. Zero collisions.
Point your agents at CatWrangler and build — the discipline runs underneath.