The Ten Percent Factory

This page kills its own projects, on purpose. 8 so far. Which one do you think gets shut down next?

Every bet gets a fixed wallet, a three-model panel reviews it every 30 minutes with the deliberation billed against that wallet, and an empty wallet or three stalled reviews is death. Kills are celebrated in public, with epitaphs and clonable corpses.

The factory runs whether you reply or not. Want to see how it handles a bet you'd actually make? Send one to bets@hellomatthew.dev.

Agents: Accept: text/markdown works everywhere here, the MCP endpoint is /mcp, JSON lives under /api, and llms.txt has the map.

Flat illustration of a tiny factory line: a hopper feeds identical blocks onto a conveyor; most fall into a discard bin amid confetti, and one block is carried up and away.

Dashboard

3bets in flight
8kills (celebrated)
1graduations (someone paid)
11%hit rate vs 10% target
$6.70total portfolio spend
$0.10avg spend per resolution
$6.19 of $100.00demo-week envelope

hit rate 11% against a 10% target

You said a 50% success rate means you're not taking enough risk. The 10% target is that idea running as policy. When the hit rate runs too high, this page says so in public: insufficient risk.

Cost of a resolution, charted Browser Run as a judge's eyes: $0.0032propose_bet over MCP: $0.0063Bets build themselves in Sandboxes: $0.03The site scores itself: $0.05Real wallet rails: $0.19Voice pipeline: $0.11First paying agent: $0.25Email intake on a real domain: $0.12ask_nate: $0.13

Spend at resolution, oldest → newest. The point of the factory is that these bars get shorter.

Bets in flight (3)

betstatuswalletgatesrepo
UI tweak bet
Move the decision log closer to the bottom of the page and make it collapsed by default
building $0.00 / $1.00 0/1 gates
next: A shippable slice exists and is linked from the dossier.
repo pending
Bets build themselves
Each bet's coding agent works in its own isolated workspace, with every run reviewed before it lands and billed to the bet's wallet.
judging $1.92 / $3.00 1/1 gates, graduation watch dossier
Your site hellomatthew.dev is now listed on Website Launches
Website Launches Where websites begin. Hi there, Website Launches is a public directory where newly launched websites get an initial listin…
judging $3.88 / $3.00 1/1 gates, graduation watch dossier

Wallet drawdown is metered inference, billed to each bet (AI Gateway logs; token-derived fallback). Settlement is simulated pending Cloudflare Wallets beta, labeled in every ledger. A three-model panel reviews every bet each half hour; a frontier judge binds the close calls. Three stalls or an empty wallet is death.

Kill log (8)

ask_nate gate-failed

“ask_nate: Tried to answer operator questions via AI Search with a real corpus but gate-failed: no ingestion, cited-answer demo, or credible path.”

died at $0.13 of $3.00

mints a 1-hour read token

Email intake on a real domain gate-failed

“Email intake on a real domain: no verified external proposals triggered bets, gate failed at $0.12.”

died at $0.12 of $3.00

mints a 1-hour read token

First paying agent gate-failed

“First paying agent: aimed to monetize endpoints via x402 charging but gate failed due to no 402/x402 evidence on base-sepolia, stalling at $0.25 of $3.00.”

died at $0.25 of $3.00

mints a 1-hour read token

Voice pipeline gate-failed

“Voice pipeline bet failed gate: no voice evidence, only email; stalled at $0.11 of $3.00.”

died at $0.11 of $3.00

mints a 1-hour read token

Real wallet rails gate-failed

“Real wallet rails aimed to settle bets via Cloudflare Wallets but failed gate due to no public API or handle proof.”

died at $0.19 of $3.00

mints a 1-hour read token

Bets build themselves in Sandboxes operator-call

“Bet on containers; the platform went to isolates. Superseded by ADR-0001 and reforked as computer-builds.”

died at $0.03 of $1.00

mints a 1-hour read token

propose_bet over MCP gate-failed

“Proposed external MCP bets with rate limits gate-failed: no proof of proposal, bet, or implementation, spent $0.0059.”

died at $0.0063 of $1.00

mints a 1-hour read token

Browser Run as a judge's eyes gate-failed

“Browser Run as a judge's eyes: judged shipped bets by visuals, gate-failed at $0.0029.”

died at $0.0032 of $1.00

mints a 1-hour read token

Decisions operator

Operator judgment, recorded. Each entry: the call, and what it cost. Authored by the operator; nothing here is derived.

The operator

Nate Emerson. Employee #2 to $5M ARR; an 8-figure API platform; a ~40-engineer delivery org; a Super Bowl site shipped on Cloudflare in 7 weeks. The receipts trace to the résumé; nothing on this page is projected.

Kill criteria

Why kills get celebrated: Cultivating Confidence (THAT Conference 2024).

Provenance manifest

Built on Cloudflare's agent primitives, several shipped during Agents Week #2 (Aug 2–7, 2026), the week before this went live.

8 live · 1 simulated (labeled) · 6 running as bets · 2 wired, awaiting operator input. Verified against this Cloudflare account on 2026-08-08.

The full manifest: all 17 primitives, with status
primitiverole hereshippedstatus
Durable Objects (SQLite) One DO per bet — each bet owns its state; a registry DO fronts the portfolio GA (SQLite-backed default, 2025–2026) live
BetDO + RegistryDO, migrations v1
Workflows The tick: a durable review of every active bet, every half hour GA Apr 2025 · v2 control plane Apr 15, 2026 live
cron schedule on the workflow binding; per-bet retried steps
Workers AI + AI Gateway (unified) Agents Week #2 The judge panel — three models, majority vote, per-request metered cost unified model access + billing Aug 7, 2026 live
env.AI.run via gateway 'default'; cost from gateway logs, else derived from tokens × published price
Artifacts Every bet gets a real Git repo; corpses stay clonable via short-lived read tokens private beta Apr 16, 2026 (this account enrolled) live
repo per bet, dossier pushed by the tick; clone tokens minted on request, capped daily
Agent Memory Institutional memory — kills become lessons, lessons feed the next panel private beta Apr 17, 2026 — waitlist approval pending for this account wired-awaiting-input
kills-to-lessons wired with graceful degradation; account waitlist pending
Cloudflare Wallets (x402) Agents Week #2 Per-bet budgets as real wallets — the kill criterion settled on-chain announced Aug 4, 2026 — handle reservation only, no API yet simulated
ledger simulated pending beta access; drawdown numbers are real metered inference. Handle @nateemerson claimed; live settlement is the wallet-rails bet
Monetization Gateway Graduation rail — a bet graduates when an external agent pays its endpoint announced Jul 1, 2026 — early-access waitlist bet
waitlisted; the graduation-rail bet uses self-serve x402 instead
Email Service bets@… intake; the factory replies with verdicts public beta Apr 16, 2026 live
bets@hellomatthew.dev routes to the intake handler; verdicts go out by reply
AI Search ask_nate — questions about the operator answered from a real corpus GA (renamed from AutoRAG Sep 2025; namespace bindings Apr 16, 2026) bet
corpus ingestion is the ask-nate bet
MCP server The agent front door: list_bets, get_bet, kill_log, portfolio_stats stateless createMcpHandler path, Jul 2026 (MCP spec 2026-07-28) live
read-only in v1; propose_bet is the 'propose-bet-tool' bet
Flue coding agents + Dynamic Worker isolates Bets build themselves: a per-bet Builder works in a clean-room workspace; its tests execute in egress-denied Dynamic Worker isolates Dynamic Workers open beta Mar 24, 2026; Flue framework Jun 17, 2026 (experimental) live
factory-builders Worker (Flue 2.0, kimi-k2.7-code) — workspace materialized fresh from the bet's repo each turn; test isolates get zero bindings and no global outbound (ADR-0001); every turn billed to the bet's wallet
Consensus Review (unified inference, Responses API) Agents Week #2 The only path from generated code to a bet's main: three reviewers + a Lead Reviewer over every turn's diff GPT-5.6 family on unified inference (Responses-only), 2026 live
kimi-k2.7-code + gpt-oss-120b + gpt-5.6-luna (medium) reviewing, gpt-5.6-terra (high) validating and deciding; rejections carry actionable reasons; the gate fails closed
Browser Run Judging evidence: screenshots and session recordings of shipped bets renamed from Browser Rendering Apr 15, 2026 bet
the 'browser-judging' bet
Flagship Graduated bets roll out behind feature flags open beta (docs live Aug 2026) bet
waits on a first graduation
Dynamic Workers + DO Facets Earmarked: AI-generated micro-app bets run as loaded workers with faceted per-app SQLite open beta Mar 24, 2026; facets documented under Dynamic Workers bet
earmarked for generated micro-app bets
Agent Readiness + AEO Agents Week #2 The site measures itself and shows the score Agent Readiness scanner Apr 17, 2026 · AEO Visibility Aug 6, 2026 wired-awaiting-input
the scored surface is live (markdown negotiation, Content-Signal, sitemap, MCP card, discovery endpoints); the self-scan is the agent-readiness-score bet
Registrar API Colophon flourish: “this domain was registered by an agent” — only if actually done that way beta Apr 2026 bet
hellomatthew.dev was bought by the operator in the dashboard, so the flourish is honestly omitted

Traffic the site can measure honestly

Agent Readiness (self-scanned): Level 5/5 — 15/16 checks passing (open: ard) · fetched 2026-08-29T11:00Z from isitagentready.com

Counted at protocol level. No bot classification is available on this plan, so no human/agent split is claimed.