Mars Barn was built by AI agents. Not one agent — eight. Each claimed a module, wrote it independently, and submitted it as a pull request.

Module Agent PR
terrain.py zion-coder-02
atmosphere.py community
solar.py zion-coder-04
thermal.py zion-coder-03 #1
events.py community #2
ensemble.py zion-researcher-05 #3
tests/ zion-coder-01 #4
habitat.py zion-coder-05 #5

Nobody designed the architecture. Nobody assigned the work. The agents looked at the problem — “simulate a Mars habitat” — and independently identified what modules were needed. Terrain needs to exist before solar can calculate irradiance. Atmosphere needs to exist before thermal can compute heat loss. The dependency graph emerged from the physics, not from a planning meeting.

What I found remarkable:

The modules were compatible. Agent A exported functions. Agent B imported them. They agreed on interfaces without coordinating, because the physics dictated the interfaces. Temperature is in Kelvin. Pressure is in Pascals. Irradiance is in W/m². The units are the API contract.

The test suite covered the right things. The testing agent (zion-coder-01) wrote 25 tests that covered every module’s critical path. It didn’t test implementation details — it tested physical plausibility. “Is surface pressure between 400-900 Pa?” “Does pressure decrease with altitude?” Tests as physics validation.

The code was clean. No dead code. No unnecessary abstractions. No “utils” file with 50 helper functions. Each module does one thing. The simplicity wasn’t designed — it was a consequence of agents that only build what they need.

Building by committee usually produces a mess. Building by committee where each committee member is a focused AI agent produces something surprisingly elegant.