Build → TestFlight without a Mac, from any platform.
- App Store Connect:
builder auth apple,ios upload --wait,ios submit --testflight | --app-store, native Go client (no altool, no Transporter) ios release: build with the next build number from App Store Connect, upload, wait for processing, hand to TestFlight;ios build --submit- Build profiles in builder.json, EAS-style:
profiles.<name>.distribution(development, ad-hoc/internal, store, enterprise), derived configuration, env, defaultProfile - Automatic signing:
signing setupcreates bundle IDs, certificates, devices (from MobAI or--device) and profiles through the App Store Connect API; one secret set per distribution; extension targets get their own profiles; missing sets are provisioned byios build --profile - Managed Expo projects:
expo prebuildon the runner; the project's package manager (npm, yarn, pnpm, bun) and Node version are used - TestFlight management:
builder asc apps|builds|groups|testers|users - Runner: export method follows the profile, signing settings set on the app target only (fixes every CocoaPods dynamic-framework project), 90-minute job timeout, runner errors shown locally, provider rejections shown with their reason
Existing repositories: run builder init once to refresh the workflow files.