Two-Phase Build: Architect Then Builder

Separate design from implementation by running an architect agent first to produce a complete specification, then a builder agent to implement it — never conflate the two roles in one pass.

What it is

Design and implementation are cognitively distinct activities. A model that is simultaneously figuring out what to build and building it tends to make local decisions that look reasonable in isolation but are globally inconsistent — the early modules are designed differently from the late ones, the interfaces are discovered rather than specified, and refactoring is needed immediately because the design evolved as the code was written. The two-phase pattern separates these activities into distinct agent roles. The architect agent receives the goal and produces a specification: the module boundaries, the data models, the interface contracts, the sequencing of implementation tasks. The spec is the output — not code. Only when the spec is complete and reviewed does the builder agent begin. The builder implements exactly the spec. It does not redesign; it does not improve interfaces it considers suboptimal; it does not add features the spec did not include. If the builder discovers that the spec is incomplete or inconsistent, it surfaces that as a finding rather than silently resolving it through implementation choices. The architect and builder are cleanly separated, and the separation enforces a discipline that a single-agent approach cannot maintain: you cannot implement a design you have not finished making.

When to reach for it

When NOT to

Exemplars

Related