One Mac becomes the release bottleneck
A small release turns into a hardware and signing problem when the team needs Xcode, a valid macOS setup, and the exact certificates stored on one machine.
Cloud iOS builds from any machine
The hard part is not compiling Swift. It is Xcode, certificates, provisioning profiles, App Store Connect keys, and one laptop becoming the release gate. Capgo Builder gives Capacitor teams a CLI-first path to signed iOS builds from anywhere.
npx @capgo/cli@latest build init --platform ios
npx @capgo/cli@latest build request --platform ios
# signed build runs on an ephemeral Mac runner
# logs stream back to your terminal Managed Mac capacity
Run iOS builds where Apple requires them. Trigger them from the machine you already use.
Same Capgo release loop
Keep native binaries for native changes and use OTA for web changes after the store build is installed.
The Problem
A small release turns into a hardware and signing problem when the team needs Xcode, a valid macOS setup, and the exact certificates stored on one machine.
If the person with the working certificate profile is offline, the release waits. If the profile expires, everyone relearns Apple signing under pressure.
Self-hosted macOS CI still needs secrets, Fastlane lanes, Xcode image updates, log retention rules, and debugging when Apple changes behavior.
The hidden work
Buying a Mac only solves the hardware requirement. It does not remove Apple signing, credential drift, runner maintenance, or the teammate bottleneck.
You need the right Apple Developer team, bundle ID, capabilities, App Store Connect app record, and upload permissions before the first build can succeed.
A release build needs a distribution certificate, P12 export, provisioning profile, profile-to-bundle mapping, and renewal process when anything expires.
Xcode versions, macOS runners, CocoaPods, Fastlane, secret stores, and upload logs all become infrastructure your product team has to maintain.
CLI example
The normal iOS path asks you to understand Apple signing before you can even learn if your app builds. Capgo turns that into an interactive setup and one build request.
# First-time iOS setup
npx @capgo/cli@latest build init --platform ios
# Then any teammate or CI runner can request the build
npx @capgo/cli@latest build request --platform ios The Solution
Capgo separates the rare binary problem from the daily product problem. Native builds get signed in the cloud; web changes keep moving through live updates.
Capgo Builder runs iOS builds on managed Apple hardware. Your Windows, Linux, or low-spec laptop can still trigger a signed iOS build from the terminal.
The CLI guides you through the hard Apple pieces: bundle ID, App Store Connect key, distribution certificate, P12, provisioning profile, and multi-target profile mapping.
Run the same command locally, in CI, or from an agent workflow. You do not have to move releases into a dashboard or teach every teammate Xcode.
Use Builder when native code, plugins, icons, permissions, or SDK versions change. Use live updates for JavaScript, CSS, and asset changes between store submissions.
Trust model
Cloud builds should remove operational risk without creating a new place where source, keys, and logs live forever.
Only the files needed for the native build are sent to the runner. Capgo does not need to clone your full Git repository to produce a build.
Build logs stream to your terminal so sensitive output does not become another long-lived database your team has to audit.
Credentials are passed to the active build environment and wiped after the build. The builder is a temporary runner, not a permanent credential vault.
Workflow
Run the Builder init flow from the project. The CLI reads your Capacitor app and walks you through platform setup.
Create or import signing credentials, map provisioning profiles to bundle IDs, and export CI-ready environment files when you are ready.
Request a signed iOS build from local terminal, CI, or an agent workflow and stream logs while it runs.
Upload to TestFlight or collect an IPA, then keep shipping JS and asset fixes with Capgo live updates.
User signal
The main relief users mention is not just no Mac. It is that the release process becomes repeatable: init once, request a build, stream logs, and stop passing signing files around the team.
Common Capgo Builder feedback
Start with one signed iOS build, then add Android, CI, live updates, and team workflows when your release process grows.