How it's developed and shipped — mostly by coding agents.
One more twist: the system that is run by agents was also largely written by them. Coding agents open the pull requests; automated checks gate them; a merge deploys exactly the services that changed; and the infrastructure itself is code, so the cloud account always matches the repo. The human's job is the same on both sides of the fence — review the thinking, hold the merge button.
The circuit.
Top row, left to right, is the path code takes: repo → checks → deploy → the live staging system. The middle row is what the running system talks to (the model gateway, the prompt/trace store, the console). The bottom row is where the work comes from: coding agents, their tools, and a fully local copy of the system to develop against.
The loop, in words.
1 · Branch → PR → green → squash-merge
Conventional commits; small single-purpose PRs; CI = typecheck every workspace, unit tests, a secret-scan that fails the build if any secret-bearing file is tracked, JSON validation. main is protected by convention (free plan) and by a prepared ruleset.
2 · Deploy exactly what changed
Path-scoped workflows: deploy-console, deploy-<agent>, deploy-showcase… each runs migrations before code, deploys with wrangler, and smoke-checks the result (the console's checks every JS chunk; this site's checks every referenced asset).
3 · Infra as code, account-pinned
Alchemy provisions D1 · KV · R2 · Queues · Vectorize · AI Gateway · Secrets Store per environment, hard-pinned to the canonical account and stage (a near-miss taught us). Bindings are declared per env — never inherited.
4 · One gateway, one observability stream
Every model call → AI Gateway (BYOK per provider, per-env tokens); every prompt → Langfuse by name@label; every run → events the console can show. A model swap is a KV edit; a prompt change is a new version with a label, never auto-promoted to production.
5 · Agents build it, the founder steers
AGENTS.md is the front door for coding agents (repo map, stack, conventions, the MCP servers to prefer). Claude Code opened most PRs on this repo; the founder reviews strategy, design decisions and merges. Memory notes carry gotchas between sessions.
6 · Runs without the cloud
docker compose brings up console-api + console + the agents with mock identity; a native llama.cpp serves a local LLM; the Lab works Vectorize-free (raw-embedding copy in D1). Cloud providers are reachable locally through the Gateway (pause WARP first — a real gotcha).