From apple-skills
Provides iOS Simulator bash commands for screenshots with auto-resize to API limits, device management, app operations, video recording, and xcodebuild. Use for simulator testing workflows.
How this skill is triggered — by the user, by Claude, or both
Slash command
/apple-skills:simulator-utilsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Quick reference for iOS Simulator commands. **Use these patterns whenever working with simulators.**
Quick reference for iOS Simulator commands. Use these patterns whenever working with simulators.
ALWAYS use this pattern when taking screenshots to avoid API errors:
# Single command: screenshot + resize
xcrun simctl io booted screenshot /path/to/screenshot.png && sips --resampleHeightWidthMax 1800 /path/to/screenshot.png
sips --resampleHeightWidthMax 1800 keeps images under limit# Single file
sips --resampleHeightWidthMax 1800 /path/to/screenshot.png
# Multiple files
sips --resampleHeightWidthMax 1800 /path/to/*.png
# Batch resize all PNGs in directory
for f in /path/to/dir/*.png; do sips --resampleHeightWidthMax 1800 "$f"; done
# List available simulators
xcrun simctl list devices available
# Boot specific device (prefer iPhone 17)
xcrun simctl boot "iPhone 17"
# Shutdown simulator
xcrun simctl shutdown booted
# Erase simulator (fresh state)
xcrun simctl erase "iPhone 17"
# Check booted device
xcrun simctl list devices | grep Booted
# Install app
xcrun simctl install booted /path/to/App.app
# Launch app
xcrun simctl launch booted com.bundle.identifier
# Terminate app
xcrun simctl terminate booted com.bundle.identifier
# Uninstall app
xcrun simctl uninstall booted com.bundle.identifier
# Basic screenshot (NOT recommended - use resize pattern above)
xcrun simctl io booted screenshot /path/to/screenshot.png
# Screenshot with resize (RECOMMENDED)
xcrun simctl io booted screenshot /path/to/screenshot.png && sips --resampleHeightWidthMax 1800 /path/to/screenshot.png
# Screenshot to clipboard
xcrun simctl io booted screenshot - | pbcopy
# Start recording
xcrun simctl io booted recordVideo /path/to/video.mov
# Stop recording: Ctrl+C
# Build for simulator
xcodebuild -scheme SCHEME -project /path/to/Project.xcodeproj -destination 'platform=iOS Simulator,name=iPhone 17' build
# Build with output filtering (cleaner)
xcodebuild -scheme SCHEME -project /path/to/Project.xcodeproj -destination 'platform=iOS Simulator,name=iPhone 17' build 2>&1 | grep -E "(error:|warning:|BUILD)"
# Find built .app path
find ~/Library/Developer/Xcode/DerivedData -name "*.app" -path "*/Debug-iphonesimulator/*" -type d 2>/dev/null | head -1
Complete pattern for build, install, launch, screenshot:
# 1. Build
xcodebuild -scheme SCHEME -project /path/to/Project.xcodeproj -destination 'platform=iOS Simulator,name=iPhone 17' build 2>&1 | grep -E "(error:|BUILD)"
# 2. Terminate existing instance (ignore errors)
xcrun simctl terminate booted com.bundle.identifier 2>/dev/null
# 3. Install
xcrun simctl install booted "/path/to/App.app"
# 4. Launch
xcrun simctl launch booted com.bundle.identifier
# 5. Wait for app to load
sleep 2
# 6. Screenshot with resize
xcrun simctl io booted screenshot /path/to/screenshot.png && sips --resampleHeightWidthMax 1800 /path/to/screenshot.png
sips (Scriptable Image Processing System) is macOS built-in:
# Resize to max dimension (maintains aspect ratio)
sips --resampleHeightWidthMax 1800 image.png
# Resize to specific width
sips --resampleWidth 1000 image.png
# Resize to specific height
sips --resampleHeight 1000 image.png
# Get image dimensions
sips -g pixelWidth -g pixelHeight image.png
# Convert format
sips -s format jpeg image.png --out image.jpg
# Batch resize
sips --resampleHeightWidthMax 1800 *.png
xcrun simctl boot "iPhone 17"
sips --resampleHeightWidthMax 1800 /path/to/screenshot.png
# Check bundle ID
xcrun simctl listapps booted | grep -A5 "CFBundleIdentifier"
# Reinstall
xcrun simctl uninstall booted com.bundle.identifier
xcrun simctl install booted /path/to/App.app
xcrun simctl shutdown all
xcrun simctl erase all
xcrun simctl boot "iPhone 17"
npx claudepluginhub vabole/apple-skills --plugin apple-skillsManages iOS Simulator devices (boot, create, delete) and apps (install, launch) via execute_simulator_command MCP tool for lifecycle, diagnostics, troubleshooting.
Manages iOS Simulator devices via xcrun simctl for app installation, push notifications, location simulation, screenshots, and log streaming.
Drives iOS simulators programmatically via the baguette CLI — taps, swipes, multi-finger gestures, hardware buttons, keyboard text, and frame capture without Xcode. Use for scripted UI flows, smoke tests, or verifying on-screen state after code changes.