run-device
Build, install, and launch an iOS app on a physical iPhone or iPad entirely from the command line (no Xcode GUI), using xcodebuild + devicectl. Use when the user wants to run, test, or screenshot their app on a real device without opening Xcode.
npx skills add rshankras/claude-code-apple-skills --skill run-device --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Run on a Physical Device (CLI) Builds, signs, installs, and launches an app on a **connected physical device** straight from the terminal — no Xcode Run button. The companion `run-simulator` skill covers the Simulator; this is the hardware path, which uses a different toolchain: `devicectl` (not `simctl`), real code signing, and an external tool for screenshots. Building proves the code typechecks and signs; launching proves it installs and runs on real hardware. A crash on launch or a failed install is a failure. ## When This Skill Activates Use when the user wants to: - Run / test their app on a real iPhone or iPad from the CLI - Install a build on a device without opening Xcode - Reproduce a device-only bug (camera, sensors, performance, push) - Screenshot the app running on hardware Not for the Simulator (use `run-simulator`) and not for `xcodebuild test`. ## Prerequisites (one-time, partly interactive — cannot be scripted) 1. **Device connected** by USB (or paired over Wi-Fi). 2. **Developer Mode ON** (iOS 16+): Settings → Privacy & Security → Developer Mode → on → restart. There is no CLI to enable this. 3. **Device trusted/paired**: the first connection shows "Trust This C
- When This Skill Activates
- Prerequisites (one-time, partly interactive — cannot be scripted)
- Process
- 1. Pick the device identifier
- 2. Build + sign for a device
- 3. Resolve the built .app (device build → Debug-iphoneos)
- 4. Install
- 5. Launch
- 6. Screenshot (optional — needs an extra tool)
- Output Format
- Reliability Notes
xcrun devicectl list devices xcrun devicectl list devices # grab the Identifier (CoreDevice UUID) of the paired device xcodebuild build \ eval $(xcodebuild -project MyApp.xcodeproj -scheme MyApp \ xcrun devicectl device install app --device "$DEV" "$APP" xcrun devicectl device process launch --device "$DEV" "$BID" xcrun devicectl device info processes --device "$DEV" | grep -i MyApp.app brew install libimobiledevice # one-time idevicescreenshot /tmp/device-shot.png # captures the foreground screen
What does the run-device skill do?
Build, install, and launch an iOS app on a physical iPhone or iPad entirely from the command line (no Xcode GUI), using xcodebuild + devicectl. Use when the user wants to run, test, or screenshot their app on a real device without opening Xcode.
How do I install it?
Run `npx skills add rshankras/claude-code-apple-skills --skill run-device --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From rshankras/claude-code-apple-skills, a repository with 589 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
