A preset decides how far a run goes and which accounts it needs. Pick the smallest one that does what you want. You can start small and run again later with more.
The Preset picker sits next to Build it on the home page and in the Idea Studio. With no choice, a run uses the default, the larger "Ship to testers" path. The console's Setup page has the same Prototype / Testers switch, so you can see what each needs before you start.
At a glance #
| Item | Prototype | Ship to testers |
|---|---|---|
| What you get | Your app's GitHub repo (quality checks on) and a live web preview on your domain, or free on workers.dev with no domain | The above, plus iPhone builds in TestFlight and Android builds in Play internal testing |
| Stages that run | spec, design, backend, build, security, verify, experience, web launch | All of those, plus Ship |
| Backend (database, sign-in) | On (Supabase) | On (Supabase) |
| Store build and submit | None. The Ship stage does not run. | Builds upload for testing. You tap Submit; Starwisp never submits for you. |
| Accounts you need | 5 (below) | 8 or more (below) |
| Slow vendor waits | None | Apple and Google review and verification: days to weeks |
| Your hands-on time | Under 90 minutes, if the accounts already exist | Longer, mostly waiting on vendors |
| Run time | Hours, unattended (estimate: 6 to 9 hours) | Hours, unattended (estimate: 6 to 9 hours) |
| How hard the agents work | Lighter: smaller Design and Build crews, Sonnet helper agents, lean prompts. Same Verify gates and Experience bar. | Full crews, every helper on Opus |
| Claude cost (estimate) | about $135 to $225, typical about $170 | about $265 to $310 |
| Total variable cost per app (estimate) | about $135 to $250 | about $270 to $380 |
One run has been measured: about $290 in Claude before Launch on the full-crew settings Ship to testers still uses. The Prototype figures are estimated from it; the per-stage math is in costs.
What each one needs #
Prototype #
| Account | Page | Vault field |
|---|---|---|
| GitHub organization with the Starwisp App | GitHub | App ID, Private key (done by the installer) |
| Anthropic | Anthropic | Anthropic API key |
| Expo | Expo | Expo access token |
| Supabase | Supabase | Personal access token |
| Cloudflare (a domain is optional) | Cloudflare | Cloudflare API token, Account ID (Zone ID only with a domain) |
Resend is needed only if your app sends email from an address of its own, and it needs a domain. The preflight on the run tells you.
A domain is optional #
Both presets run without a domain. Here is what changes:
| Item | No domain | With a domain on Cloudflare |
|---|---|---|
| Web address | https://<app>.<your-subdomain>.workers.dev (free) | https://<app>.acme.com |
| Landing, privacy, terms and support pages | On that address | On that address |
| Store listing support and privacy URLs (Ship to testers) | …workers.dev/support and …workers.dev/privacy | …acme.com/support and …acme.com/privacy |
| Support and privacy contact | Your own email (Identity: support email, else owner email) | <app>[email protected], forwarded to you |
| App email (its own address, replies, inbound mail) | Off | On, with Resend |
| Sign-in codes by email | Supabase's built-in sender with Supabase's default email text (new free projects can't change it without custom SMTP): only to members of your Supabase organization, a few an hour. Fine for trying it yourself. | Sent through Resend from your domain, to anyone |
| Cloudflare token | Account · Workers Scripts · Edit | Plus the zone permissions in Cloudflare |
Still needs a domain: email sign-in for outside testers, app email of its own, and anything a vendor asks a website on your own domain for (Apple asks organizations for one when they enroll; individual enrollment does not).
Set it up in Settings → Identity: leave House domain empty and save your workers.dev subdomain as the Free web address. You can add a domain later.
Ship to testers #
Everything in Prototype, plus:
| Account | Page | Vault field | Lead time |
|---|---|---|---|
| Resend (only with a domain) | Resend | API key, Sending domain | DNS: minutes to hours |
| Apple Developer | Apple | Key ID, Issuer ID, Private key (.p8), Apple Team ID | days to weeks |
| Google Play | Google Play | Service account JSON key | days to weeks; 14-day closed test for new personal accounts before production |
Optional: Twilio for SMS (2 to 4 weeks of registration), APNs push key, Firebase for Android push.
Start the slow accounts (Apple, Google) before your first run. A run can finish the code in a day, but you cannot upload to a store until those accounts are approved.
A first launch to both stores is realistically about 1 week with individual accounts and no SMS, and 4 to 8 weeks with organization accounts (an unverified estimate).
Other presets #
Two presets are built: Prototype and Ship to testers. A "Beta to my phone" preset (with an Android preview build) and a "Ship to the stores" preset are planned, with no date yet. Until then, use Ship to testers to get TestFlight and Play internal testing builds.
Supported and not supported #
| Supported | Not supported in v1.0 |
|---|---|
| Expo / React Native apps in TypeScript | Flutter, native Swift or Kotlin |
| iOS, Android and web | Expo Go |
| Supabase backend, Resend email, optional Twilio SMS | Other backends |
| English-language apps and store listings | Multi-language store listings |
| GitHub organizations | Personal GitHub accounts, running without GitHub |
| Your own accounts and keys at every vendor | Claude Pro/Max subscription tokens; any hosted tier |
Plain-text version of this page: /docs/presets.md. This page is copied from the product's own docs, so it matches the release you install.
Next: Costs