Build, run, and debug iOS apps on a simulator. Use when asked to run an iOS app, interact with the simulator UI, capture logs, or diagnose runtime behavior.
From ios-swift-skillsnpx claudepluginhub patrickserrano/skillsThis skill uses the workspace's default tool permissions.
Build and run iOS projects on a booted simulator, interact with the UI, and capture logs for debugging.
xcrun simctl list devices).xcodeproj or .xcworkspacexcrun simctl list devices | grep -E "Booted"
If none are booted, ask the user to boot one:
xcrun simctl boot "iPhone 15 Pro"
For a workspace:
xcodebuild -workspace MyApp.xcworkspace -scheme MyApp -destination 'platform=iOS Simulator,name=iPhone 15 Pro' build
For a project:
xcodebuild -project MyApp.xcodeproj -scheme MyApp -destination 'platform=iOS Simulator,name=iPhone 15 Pro' build
Find the built app:
find ~/Library/Developer/Xcode/DerivedData -name "*.app" -path "*Debug-iphonesimulator*" | head -1
Install on simulator:
xcrun simctl install booted /path/to/MyApp.app
Launch the app:
xcrun simctl launch booted com.example.MyApp
Stream logs from the app:
xcrun simctl spawn booted log stream --predicate 'subsystem == "com.example.MyApp"' --level debug
Or capture all simulator logs:
xcrun simctl spawn booted log stream --level debug
xcrun simctl io booted screenshot screenshot.png
xcrun simctl io booted recordVideo video.mp4
# Press Ctrl+C to stop recording
xcrun simctl openurl booted "myapp://deeplink"
xcrun simctl push booted com.example.MyApp notification.apns
xcodebuild -listdefaults read /path/to/MyApp.app/Info.plist CFBundleIdentifierxcrun simctl list devices availablexcodebuild clean or delete DerivedData| Task | Command |
|---|---|
| List simulators | xcrun simctl list devices |
| Boot simulator | xcrun simctl boot "iPhone 15 Pro" |
| Shutdown simulator | xcrun simctl shutdown booted |
| Erase simulator | xcrun simctl erase booted |
| Install app | xcrun simctl install booted /path/to/App.app |
| Uninstall app | xcrun simctl uninstall booted com.example.app |
| Launch app | xcrun simctl launch booted com.example.app |
| Terminate app | xcrun simctl terminate booted com.example.app |
| Get app container | xcrun simctl get_app_container booted com.example.app |