Wink Pings

Engineers trash-talk monorepos, but Shopify uses one to feed its AI agents

Tobi Lutke says moving to a monorepo was a decision that “every engineer hates, but once they use it, they can’t go back.” Burke added a sharper point: it’s a blessing for Shopify’s agents. The comments ranged from Google’s codebase to PR reviews.

Shopify’s Tobi Lutke recalled on X that when he told MParakhin the company was preparing to move to a monorepo, MParakhin gave him this judgment: every engineer will hate the idea of moving to a monorepo, but once they use one, no one wants to go to another company that doesn’t use a monorepo. Tobi’s conclusion was direct: “We’re definitely doing it.”

Under that tweet, Burke added something more specific: moving to a monorepo is a blessing for Shopify’s agents. It takes thoughtful tooling, and there are drawbacks that take effort to mitigate, but he wouldn’t go back.

Background: a monorepo puts multiple projects, services, and packages in the same code repository. A polyrepo splits them into many repositories by business or service. The two sides have argued for more than a decade, and now that AI agents have entered the fray, the debate has a new variable.

Opposition exists too. Darren Shepherd said he hates the claim that “monorepos are good for agents,” still hates monorepos, and thinks the best way to scale is to avoid scaling. Someone later added: soon there’ll be an inspirational post about how to move off a monorepo.

But supporters’ reasons are concrete. Steven Bower said agents can work across repositories, but what a monorepo really solves is the PR review bottleneck. When a change spans multiple repositories, you have to open multiple interdependent PRs, each with its own review delay, and later PRs get stuck in dependency and version deadlocks. To make agents go fast, you need to remove speed constraints and duplicate work; a monorepo removes both.

Giorgi Dogadze put it more briefly: for agents, what wins is atomic changes. One PR updates the API and all its callers at the same time, and CI checks them together. Split across multiple repositories, the agent opens three PRs, and in the end a human still has to sequence the deployments.

Lloyd Jose Fernandez’s observation is search. When an agent starts work, it spends time figuring out which repository has the answer. With only one repository, that question disappears.

Someone posted a screenshot of a Google paper: most of Google’s code is stored in a single unified source code repository, open to all software engineers. A few projects, such as Chrome and Android, are exceptions.

Google论文截图:大部分代码存储在单一统一源代码仓库

The comments also had a few metaphors. Someone said a monorepo is like a standing desk: everyone curses while switching, and shuts up after switching. Someone said the legal profession has used a monorepo for centuries—it’s called case law; everyone hates it, but no one can do the work without it. An engineer also reminded people that a monorepo needs supporting tooling; it isn’t just dumping code into one folder. Tooling, CI, permissions, build caching—miss any one and it becomes a new tax.

Back to Shopify. Neither Tobi nor Burke said a monorepo has no cost. Burke’s exact words were “it needs some thoughtful tooling, and there are some drawbacks that take a lot of effort to mitigate.” But their judgment is that after agents participate in development, the cost of cross-repository coordination gets amplified—to the point where it’s worth putting the code into one repository.

This is probably the awkward thing about monorepos: before migrating, engineers hate it; after migrating, engineers can’t live without it. AI agents just accelerate both the hatred and the inability to live without it at the same time.

发布时间: 2026-11-02 01:29