Synthetic Monorepos

Sometimes migrating to a single monorepo isn’t feasible. You already have multiple repos per team or domain. Synthetic monorepos give you monorepo-level intelligence across existing repositories without moving code.

For AI agents, that changes everything. Every repository boundary is a wall they can’t see past. Synthetic monorepos tear down those walls.

The Polyrepo Reality

What a Synthetic Monorepo Provides

AI Agent Enablement

Where Synthetic Monorepos Fit

# The Polyrepo Reality

Most organizations don’t have one giant monorepo. They have a handful of monorepos per team, plus dozens of standalone repos. Each one is an island.

For humans, collaboration, visibility, and enforcing common standards across an organization becomes much harder. A platform engineer who needs to ensure multiple systems work together cohesively has to manually catalog, inspect, and cross-reference dozens of repos to make sure things align.

For AI agents, repository boundaries are walls they cannot see across. Each agent session only sees one repo. To implement a cross-cutting feature, you need separate AI sessions per repo. You become the “human context bridge,” manually transferring knowledge between sessions.

# What a Synthetic Monorepo Provides

A synthetic monorepo connects separate repositories into a unified dependency graph without moving any code. The isolated islands from before become a connected system that both humans and AI agents can reason about.

Cross-repo dependency graph

The backbone of a synthetic monorepo. Automatically maps how repositories connect: which repo depends on which, what a change affects downstream, and how projects relate across teams.

Governance across boundaries

With the graph in place, platform teams can assess the state of any repo in context: run impact analysis before a change and enforce conformance rules across boundaries.

# AI Agent Enablement

The graph exposes metadata that lets agents see beyond individual repo boundaries. Instead of operating at a local maximum within a single repo, agents read cross-repo relationships and perform coordinated changes.

Local Optimizations Make Global Throughput Worse

This is a well-known principle from manufacturing. When one part of the pipeline runs fast, work piles up at the boundaries. The same applies to AI agents working across polyrepos.

Each agent speeds up work inside its own repo, but has zero visibility into what exists beyond its boundary. In between these fast, isolated agents sit humans carrying context. That breaks agent autonomy.

AI Agents Without Walls

With a synthetic monorepo, a coordinator agent reads the cross-repo graph, spawns per-repo agents, and funnels context between them automatically. It walks the upstream and downstream dependencies to figure out which repos are actually affected by a change and spawns agents only where they need to operate.

This unlocks the full PR lifecycle across repos: submitting changes as coordinated PRs, monitoring CI in each repo, and running with full autonomy until everything is green. It is as close as you can get to the atomic commits of a true monorepo, without moving any code.

# Where Synthetic Monorepos Fit

Most organizations will not collapse all their code into a single monorepo, and they should not have to. Whenever you cannot or do not want to merge repositories, but still need a unified view across them, a synthetic monorepo is the right fit.

Gradual migration path

Start synthetic across all your repos, then cluster the ones that belong together into actual monorepos over time. Move at your own pace instead of planning a big-bang migration.

External vendors and third parties

When parts of your system are built by external teams or vendors that cannot be inside your monorepo for visibility or legal reasons, a synthetic monorepo still gives you the graph and coordination across the boundary.

Open source alongside closed source

Keep your open source projects as public repos and your internal code private, while still reasoning about dependencies, impact, and cross-repo changes through a single graph.