Case 01 · Agents in production
An agent pipeline that builds a different product demo for every company, overnight
For outreach to US small businesses I wanted each prospect to get something built for them, not a template with their logo on it. Codex reads the company's real website and invents a product for it, Claude builds it on a shared engine, and an audit script decides what ships.
- When
- Aug–Sep 2026 · 3 batches
- Stack
- Codex, Claude Code, Anthropic API, Next.js, Vercel, Playwright
- Role
- Solo: spec, orchestration, QA and deploy
- Status
- 89 demos live behind a private gallery
- bespoke demos live, across 12 US cities
- 89
- demos from one unattended batch
- ~20 in 3 h
- required artifacts audited per demo before deploy
- 20
- prospect emails verified on the official site (batches 2 and 3)
- 79 / 80
Problem
Generic cold outreach gets ignored. A demo built from a business's own website, services and brand gets read, but building 89 of them by hand isn't possible.
How it works
- 1.Wrote the contract the agents work against: what to research, which files to produce and hard rules. Brand colors are read from the site's CSS, never guessed. If text contrast falls below 4.5:1, the text color changes, never the brand.
- 2.Phase A, Codex: reads the site, downloads first-party assets, writes the data and design specs, invents a product for that business and renders a 1440 px mockup.
- 3.Phase B, Claude: builds the components from the mockup, one at a time, on a shared engine.
- 4.Every demo has a live assistant: streaming responses from Claude with the system prompt cached and a fallback model.
- 5.An audit script checks 20 required files, 4 QA screenshots, valid JSON, no hotlinked assets, that the email links the demo, the registry entries and the preview image. Then a typecheck, then deploy.
Research
Codex reads the real site, CSS and assets
Product spec + mockup
a different product for each business
Build
Claude, component by component
Auditgate
20 files, 4 QA shots, links, preview image
Typecheckgate
tsc --noEmit before every deploy
Deploy
Vercel, served at /<company> via a proxy allowlist
What broke, and what I did about it
- Codex never ran the type checker. One broken demo took down the build of all 40 in the first batch, so a typecheck became a gate before every deploy.
- Its "HTTP 200" checks ran against isolated per-demo dev servers, and it never looked at the render. Visual QA moved to screenshots that I review.
- The outreach emails came out as one template ×78: same opening, same disclaimers, same ask. I rewrote all 78 against a style guide written from that failure.
- One demo was written against a different data schema. Fixing it would have meant inventing facts about a real company, so it stayed out of the deploy.