It nearly did: the people who built OpenSubs wrote their engineer down (the codebase map, the traps, the fixes, the house rules) as plain files that ship inside the platform and run on the frontier model of the day. Setup, migration, the daily patrol, code in the house style: it does the work, and production waits for your yes.
In the box: one agent brieften skill playbookssix house style rulestwo subagents (a patroller and an adversarial reviewer)four official wires (Supabase, Vercel, Sentry, Shopify Dev). Plain files, written by the team that ran a $50M Shopify subscription platform. Nothing to install from OpenSubs, nothing extra to pay.
“Self-hosted” sounds like a lost weekend of DNS and dread, so it runs the Launchpad beside you instead, explaining every stop, verifying every resume, doing everything except the few things that must stay yours: your accounts, your approvals. The finish line isn’t a feeling; it’s a verify run that comes back green and a test subscription that sends its own welcome.
Three gates, strict order: a dry run over your exported CSVs that touches nothing, a read-only preflight that proves every customer, variant, and card exists before anything moves, then an execute only your hand can fire: twice confirmed, ledgered per contract, resumable mid-crash without repeating a row. Cards never leave Shopify’s vault. It reads Skio, Recharge, and Stay AI exports in their own dialects, and the one irreversible step, uninstalling the old platform, stays gated until you confirm your new contracts are live and billing.
Say “patrol” and it walks the whole machine read-only (crons, webhook deliveries, the billing queue, dunning, the notification outbox, Sentry), then hands back one page: green, yellow, red, every verdict wearing the number that earned it, and at the bottom, the one thing to fix first and which playbook owns the fix. Its brief hard-codes the doctrine: “orders-webhook failed 3 of 40 since Tuesday,” never “webhooks look flaky,” because you can act on a number; you can only worry about an adjective.
Ask in English; it answers in OpenSubs-shaped code: it carries the builders’ map (real files, real function names, the domain vocabulary) plus house rules that attach themselves by file path, rule zero being “read the closest sibling and mirror it.” Then every diff faces an adversarial reviewer and a full verify (tests, typechecks, build, green) before it ever asks for your eyes.
Its first run is a handshake: it names every account it can reach and every scope it holds. The leash is enforced, not promised: in the default runtime (Claude Code) a deterministic guard hard-blocks the money verbs (string-matched, not model-judged), and billing, deploys, and schema changes run only as commands you type yourself. Your customers’ cards never enter the picture: vaulted in Shopify Payments, out of its reach by architecture. (Another runner? The same brief reads natively in Codex, Hermes: anything that runs on plain files.)
Rental platforms promise you’ll never need a developer; of course they do. The codebase is theirs, and it’s off-limits anyway. Ownership runs the other way: the code is yours, and the people who wrote it shipped their engineer inside, a folder you own, not a seat you rent. If you ever want it gone, revoke four wires and delete the folder. You’ll keep talking instead.