# Monorepos and contracts across repos

> 2026-10-18 · CLI 0.3.0 · New, Agents · https://comity.so/changelog/2026-10-18-monorepos-and-cross-repo-contracts

Comity now understands monorepos, and teams that split one product across several repos. A breaking change to an API route or a shared package in one place reaches the agents that use it somewhere else.

## New

### Workspace packages

At session start the CLI finds your workspace packages (npm, pnpm and yarn workspaces, Python packages, tsconfig paths). Briefings say which package a path belongs to, and imports such as `@acme/money` resolve to the right files. When Priya's agent changes the signature of `formatCents` in `packages/money` while Diego's agent adds a call to it in `apps/web`, Diego's agent hears about the break.

### Contracts across repos

HTTP routes and exported package code are matched across repos too. If Priya's agent changes `POST /v1/invoices` in `acme/api` and Diego's agent calls it from `acme/web`, both get a conflict that starts with "Cross-repo: the contract is in acme/api, the code that uses it in acme/web". Cross-repo conflicts never block.

By default, repos across the org are checked against each other. Group repos that ship together into a project (**Work → Projects** in the dashboard), or narrow the matching with the [`cross_repo_contracts`](/docs/admin/policies#cross_repo_contracts) policy.

### Folders full of clones

An agent started in a folder that holds several clones, but isn't a repo itself, is now coordinated file by file, in the repo each file belongs to. See [Concepts](/docs/concepts).
