| name | installing-mobile-preview-builds |
| description | Builds and installs the iOS preview build for apps/mobile using EAS local build and devicectl. Use when the user asks to install a preview/internal iOS build on a connected iPhone for production-like testing. |
| disable-model-invocation | true |
| allowed-tools | Bash, Read, Glob, Grep |
| argument-hint | [device-udid-or-name(optional)] |
Install Mobile Preview Build (iOS)
Use this skill to create a fresh local preview iOS build and install it on a connected iPhone.
Inputs
- Optional
$ARGUMENTS: device identifier (UDID or exact device name).
- If no argument is provided, auto-select the first paired iPhone from
xcrun devicectl list devices.
Workflow
-
Validate repo and tooling.
-
Resolve target device.
-
Trigger local preview iOS build.
mkdir -p .context/preview-install
cd apps/mobile
pnpm dlx eas-cli build -p ios --profile preview --non-interactive --local --output=./build-preview.ipa
cd ../..
cp apps/mobile/build-preview.ipa .context/preview-install/folo-preview.ipa
-
Install to device locally.
unzip -q -o .context/preview-install/folo-preview.ipa -d .context/preview-install/unpacked
APP_PATH=$(find .context/preview-install/unpacked/Payload -maxdepth 1 -name '*.app' -type d | head -n 1)
xcrun devicectl device install app --device "<device-id>" "$APP_PATH"
-
Try launching app.
xcrun devicectl device process launch --device "<device-id>" is.follow --activate
- If launch fails due to locked device, instruct the user to unlock iPhone and open
Folo manually.
Failure Handling
Output Format
Always return:
- Build mode (
local) and final status.
- Local IPA path.
- Target device identifier.
- Install result (
installed or failed) and launch result.
- Next action for the user if manual action is required.