The process wing

Nobody
works alone
here.

One prompt becomes five folders. Five agents work in parallel on a canvas, each in its own terminal, each with a gate it has to pass. Luc picks the winner by eye.

P1 / The canvas

Six agents, one screen

Every worker is a visible terminal node on a macOS canvas, not a hidden subprocess. A hook blocks the invisible built in subagent tool so nothing can run where Luc cannot watch it or stop it.

  • CNVS
  • cnvsctl
  • subagent-cnvs-redirect hook
  • cnvs-browser-redirect hook
The fleet diagram: one prompt splits into lane folders

P2 / The split

One prompt, five folders

The orchestrator never edits a file. It writes the rubric first, splits the work into folders that cannot overlap, and spawns one fresh agent per folder. No worker is ever reused for a second task.

  • Claude Fable 5
  • fleet skill
  • result.json contract
  • RUBRIC.md

P3 / The gate

Red before green

Done means a shell command exited zero, not that an agent said so. Every gate is broken on purpose first to prove it can fail. A suite that has never gone red has proved nothing.

$ check-lane.py .../empty
FAIL: REPORT.md missing or under 800 bytes
exit 1

$ check-lane.py .../em-dash
FAIL: deliverable contains an em dash
exit 1

$ check-lane.py .../tooling
PASS: TOOLING.md 37870 bytes
exit 0
  • check-lane.py
  • check-assets.py
  • check-hub.py
  • vhs
The workbench board: one row per worker, with model, state and verify command

P4 / The board

The board is live, not a diary

One HTML page from the first spawn onward. Every worker, its task, its model, its state, its verify command and what it cost. The header colour is the state of the whole fleet.

  • workbench.html
  • board.py
  • CNVS task ledger
  • Claude Opus 5
Nine landing page lanes built from one brief, shown as a contact sheet

P5 / The contest

Nine lanes, one brief

The largest contest so far: nine agents on the same landing page brief, four model families, one winner. The losing eight are still on disk, untouched, because a rejected look is evidence too.

  • Claude Opus 5
  • Codex
  • Grok 4.6
  • Kimi K3
  • Qwen
The board as built by the claude lane The board as built by the kimi lane

Left: Claude Opus 5. Right: Kimi K3.

P6 / Two models, one brief

9.25 against 8.42

Same brief, same gate, two model families, scored side by side. Neither lane knew what the other was building. The margin was small and the reason was layout density, not taste.

  • Claude Opus 5
  • Kimi K3
  • SCORES.md
  • evaluate-ui skill
The landing page lane that won and shipped

P7 / The winner ships

One lane goes live

The winning lane is deployed, then proved on the live URL before anyone says it is done: fetch the served file, hash it, match it against local. A deploy that was not verified is not a deploy.

  • verify-live skill
  • wrangler
  • Cloudflare Pages
  • Codex
Five candidate looks for sigouin.net, four of which were archived

P8 / The archive

Losers are kept, not deleted

Four of these five were archived intact with a row explaining why, so any of them can be revived with one move command. This page is the round that replaced the one that shipped.

  • archive/README.md
  • DECISIONS.md
  • Claude Fable 5
  • Higgsfield

Everything that touched this work

Claude Fable 5Orchestrator. Never edits a file.
Claude Opus 5Builder and reviewer
CodexReviews, audits, tooling
Grok 4.6Research sweeps
Kimi K3UI build and polish
QwenExtra lane in build offs
gpt-image-2Stills and crest art
CNVSThe canvas. Every worker is a node.
HiggsfieldVideo, images, brand kits
TripoImage to 3D and text to 3D
kie.aiScrollcraft asset generation
MotionSitesMotion reference library
21st.devComponent library over MCP

Seedance, used through Higgsfield, made the three loops on this site. Playwright screenshots every page before anyone calls it finished. Nothing here was hand drawn.