NIMOS / THE BUILD SYSTEM

DOCUMENT G-01 / 2026

Gantry

One door. Eleven engines. Six stages. Every stage closes on evidence.

Gantry is the orchestrator behind this studio's builds. It is not a page builder and not a dashboard you buy. It is the thing that routes the work, wakes the right engine, and refuses to call a stage done without a receipt.

THE RECORD / FLAGSHIP

OPEN

STAGE

build

UPDATED
2026-10-19

11

ENGINES

124

TOOL REFS

6

USED HERE

ScopingDONE
ResearchDONE
DesignDONE
BuildNOW
ReviewNEXT
LiveNEXT

2 / 3 CLIENT GATES

READ IT →

Published snapshot · the same state gantry status --json reads. Not a live feed.

THE HOUSE, COUNTED

7IN USE2PARTIAL3NOT IN USE

THE SYSTEM

A house over the engines.

Gantry is the orchestrator over the eleven engines. A build opens as a record, is routed to the engine cells that can do the work, and moves through six stages — scoping, research, design, build, review, live. Each stage closes only when it can name a call, a URL or a commit. Gantry is the only seat that speaks to Ben; the engines do not.

WHY

Because a registry is not an owner.

WITHOUT A HOUSE

WITH GANTRY

A registry with no owner.

One door and a routing table.

Wiring assumed to be live.

engctl doctor before any work.

Done as a status update.

A stage closes on a call, URL or commit.

The engines existed as a registry with no owner above them: nobody routed a task, nobody checked whether the wiring was still live, and nobody could answer 'is it actually done?' Gantry exists to make the answer a record, not a status update.

HOW

Six stages. One evidence rule.

  1. 1SCOPINGScope and price, in writing.
  2. 2RESEARCHA sourced market read.
  3. 3DESIGNA direction and a review link.
  4. 4BUILDA commit and a preview.
  5. 5REVIEWA corridor report.
  6. 6LIVEA domain and a handover.

`gantry open --brief` opens the record; `gantry stage start` and `stage done --evidence` move it; `engctl awaken <engine>` checks wiring and activates the cell; `gantry qa --dir` runs the review corridor; `gantry complete --live-url` closes it. The state lives on disk; the MCP surface exposes the same nine tools to agents.

THE COMMAND SURFACE

REAL
$ gantry open --brief brief.json$ gantry status --ref nw-20261018-flagship --json$ gantry stage start build --ref nw-20261018-flagship$ gantry stage done build --ref nw-20261018-flagship --evidence "tsc 0 · build 0 · screenshots 1440/390"$ gantry qa --dir . --audit$ gantry complete --ref nw-20261018-flagship --live-url https://nimoswebsites.com --evidence "corridor PASS"

Gantry is an internal system; the commands are shown because the process should be inspectable, not because this is a public CLI download.

THE CONTRACT

How the work reports back.

The app opens a job, the division does the work, and every stage reports to the same writer the ops console uses. A stage report is not a status sentence: it carries the evidence that closed it. The key is not published; the shape is.

CALLBACK / STAGE REPORT

KEY-GATED
POST /api/gantry/stage
X-Gantry-Key: ••••
content-type: application/json

{
  "brief_id": "…",
  "stage": "build",
  "state": "done",
  "detail": "C1–C8 live on the preview",
  "evidence": "tsc 0 · build 0 · screenshots at 1440 + 390"
}

The route writes through the same build-record writer as the ops console, so there is one row and one story. No stage is set by a claim.

THE RECORD

What actually happened.

nw-20261018-flagship

OPEN

corridor.pass

2026-10-19

The live corridor passes with no blocking findings.

audit exit 0 · 613 advisory only

night.close

2026-10-19

The night closes green: corridor PASS, reachability PASS, +34 routes live.

audit exit 0 · crawl full PASS · vitest 361/361 · 7aa3e710 PROD OK

day.close

2026-10-19

The day closes green: client area, case depth, local door, /studio, /accessibility, footer and menus rehauled.

audit exit 0 · crawl full PASS · vitest 369/369 · 0be3506a PROD OK

This is a published snapshot of the house build, not a live feed. It is generated from the same state file gantry status --json reads, with contact details and task IDs removed.

CLIENT GATES

G1 · Kickoff contentANSWERED
G2 · Direction pickANSWERED
G3 · Pre-launch reviewPENDING

The public record is deliberately not a live database view. Opening a signed read-only endpoint is the next step; this page does not pretend it already exists.

Read the build log →

THE ENGINES

Eleven cells, one standard.

Every engine answers the same five questions: what, why, how, when and who. The status on the right is the proof ledger for this build — not a brochure badge. Open any engine for the full manual, the tool list and the evidence.

WHAT IS OPEN

Open source is a licensing decision.

The engines

The engine layer is a mix of open-source packages and commercial services. Each registry row names its kind. The tools are the open part.

Gantry

The orchestrator is our own code and is private today. The protocol and the record are public. Publishing the source needs a licence and a secret scrub — not a rewrite.

This site

Every component behind this page is readable at /doc. The production repo is private, but the build code is not hidden behind a sales call.

Can Gantry share live data and build code?

Yes — the record and the proof ledger are already published from real state, and the site's component code is public. A signed read-only endpoint for the record, and a licensed Gantry repository, are the two moves that turn "we can" into "we do."

THE LIMITS

What this page is not.

  • Gantry is an internal system, not a product you can install today.
  • The record above is a published snapshot, not a live request.
  • Org cells are a spec until they are pushed to the live fleet.
  • The laptop and cloud boxes can differ; the cloud is the source of truth.
  • No client data or task IDs are published on this page.
  • Five client stations and six build-protocol stages are different views, not two counts of the same thing.

The system is the argument.

If you want the build, start with the brief. If you want the system, read the engine files.

Gantry — the build system | Nimos