Deploy to this phone
Your agent just built an iOS app. It is sitting on a Mac somewhere. You are not.
Deploy to this phone builds the project on the host and installs the result on the iPhone you are holding — over the network, with no cable, no TestFlight round trip and no App Store review.
Available on macOS hosts only.
Using it
Section titled “Using it”From the iPhone app, pick the Xcode project in the workspace and start a deploy. The host builds it, packages it, and your phone offers to install it.
The build runs on the host’s Xcode with the host’s signing setup. That is where the requirements come from.
What you need
Section titled “What you need”| An Apple developer account signed in to Xcode on the host | the build has to be signed |
| Your iPhone registered with that account | a provisioning profile has to include it |
| An Xcode project or workspace in the Offsite workspace | Offsite scans a few levels deep for it |
| Push notifications registered from this iPhone | the install link is delivered as a push; if the host reports no registration, reconnect or restart the app once |
A free personal team works, with Apple’s usual limits: apps expire after seven days and some capabilities are unavailable.
When it fails
Section titled “When it fails”Signing is where deploys fail, and the failure is reported as a specific kind rather than a wall of build log:
- No signing account — Xcode on the host has no Apple ID.
- Free team limitation — the project uses a capability a personal team cannot sign.
- Device not registered — this iPhone is not in the provisioning profile.
- Generic signing failure — everything else, with the tail of the log.
Details
Section titled “Details”- Deploy state lives in
~/.offsite/deploys/on the host. Builds use a private derived-data directory (~/.offsite/xcode-derived-data) rather than the shared Xcode one, both to avoid macOS App Management restrictions and to keep your own Xcode caches untouched. - Install path: the IPA is uploaded to a short-lived signed URL, a manifest is
published and verified, and the phone installs through
itms-services://?action=download-manifest. Apple’s own mechanism, no sideloading tricks. - Limits: IPA up to 500 MB, artefacts expire after 48 hours, the last 10 deploy jobs are retained.
- Project discovery scans up to 3 directory levels and skips
.git,node_modules,Pods,DerivedData,Carthage,.buildand.swiftpm. - Deploys preserve the installed app’s container — Offsite does not uninstall first, so your app’s data survives a redeploy.
- A failed deploy keeps its log and a retry control at the end of the card, so a second attempt is one tap once you have fixed the cause.