Patrick Debois of Tessl describes how a team coordinates multiple coding agents on one codebase in this AI Engineer talk. He separates conflicts in code from the work of keeping people aligned.
Before the agents edit
- A rise in pull requests creates rebase, test and release queues; Debois describes roughly 10× more PRs as an illustrative pressure, not a measured comparison here.
- Partition tasks by component, file or function. Let an agent claim a ticket and announce intended files so other workers can plan around it.
- Give each worker a worktree or isolated environment, including API and database state where necessary. Colliding agents can wait, retry or renegotiate their assignments.
At the merge boundary
- A line-clean merge can still break intent: changing invoice totals to cents while another change reports those totals as dollars may pass separate tests.
- Proposed responses include checking combined intent and testing speculative combinations in a merge queue before landing them.
- A shared decision log records who approved what and why; small changes remain easier for people to review.
Keep the humans in the factory
- Bring an agent into a shared task discussion to collect requirements and ask clarifying questions. Debois describes non-engineers proposing changes through the same engineering pipeline.
- Route uncertain decisions to a person with options and the relevant context, instead of an open-ended interruption.
- Match review depth to impact. Documentation, authentication and data-loss risks need different approval and rollback plans.
- A team must maintain its shared skills, context and agent infrastructure, and translate the stream of code changes for everyone affected.
- Caveat: these are design patterns and observations from Tessl’s work, not a controlled throughput or safety study.
“Automate what you can, but make sure you are able to route to a human to make the right decision.” — Patrick Debois, 19:12