/simulator-utils
iOS Simulator utility commands for screenshots, resizing, and common operations. Use these commands when taking simulator screenshots, resizing images for API compatibility, or performing common simulator operations.
$ npx -y skills add Prisma-Labs-Dev/apple-skills --skill simulator-utils --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/simulator-utils
Context preview
The summary Claude sees to decide when to auto-load this skill.
iOS Simulator utility commands for screenshots, resizing, and common operations. Use these commands when taking simulator screenshots, resizing images for API compatibility, or performing common simulator operations.
SKILL.md
simulator-utils.SKILL.mdname: simulator-utils
user-invocable: true
description: iOS Simulator utility commands for screenshots, resizing, and common operations. Use these commands when taking simulator screenshots, resizing images for API compatibility, or performing common simulator operations.
Simulator Utilities
Quick reference for iOS Simulator commands. **Use these patterns whenever working with simulators.**
Screenshot with Auto-Resize (REQUIRED)
**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
Why Resize?
- iPhone 17 simulator screenshots exceed 2000px
- Claude API rejects images >2000px in multi-image requests
- `sips --resampleHeightWidthMax 1800` keeps images under limit
Resize Existing Screenshots
# 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
---
Common Simulator Commands
Device Management
# 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
App Operations
# 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
Screenshots
# 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
Video Recording
# Start recording
xcrun simctl io booted recordVideo /path/to/video.mov
# Stop recording: Ctrl+C
---
Build Commands
# 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
---
Full Test Workflow
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
---
Image Manipulation with sips
`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
---
Troubleshooting
"No devices are booted"
xcrun simctl boot "iPhone 17"
Screenshot too large for API
sips --resampleHeightWidthMax 1800 /path/to/screenshot.png
App won't launch
# 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
Simulator stuck
xcrun simctl shutdown all
xcrun simctl erase all
xcrun simctl boot "iPhone 17"
Read more
name: simulator-utils user-invocable: true description: iOS Simulator utility commands for screenshots, resizing, and common operations. Use these commands when taking simulator screenshots, resizing images for API compatibility, or performing common simulator operations.
Simulator Utilities
Quick reference for iOS Simulator commands. **Use these patterns whenever working with simulators.**
Screenshot with Auto-Resize (REQUIRED)
**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
Why Resize?
- iPhone 17 simulator screenshots exceed 2000px
- Claude API rejects images >2000px in multi-image requests
- `sips --resampleHeightWidthMax 1800` keeps images under limit
Resize Existing Screenshots
# 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
---
Common Simulator Commands
Device Management
# 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
App Operations
# 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
Screenshots
# 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
Video Recording
# Start recording xcrun simctl io booted recordVideo /path/to/video.mov # Stop recording: Ctrl+C
---
Build Commands
# 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
---
Full Test Workflow
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
---
Image Manipulation with sips
`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
---
Troubleshooting
"No devices are booted"
xcrun simctl boot "iPhone 17"
Screenshot too large for API
sips --resampleHeightWidthMax 1800 /path/to/screenshot.png
App won't launch
# 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
Simulator stuck
xcrun simctl shutdown all xcrun simctl erase all xcrun simctl boot "iPhone 17"
Apple development skills for Claude Code, Codex, and other coding agents — current iOS 26+ APIs, SwiftUI, UIKit, Liquid Glass, Human Interface Guidelines, and practical workflow guides.
Repo: Prisma-Labs-Dev/apple-skills
Other skills on prisma-labs-dev-apple-skills.
- /appintents
API reference: App Intents. Query for Siri, Shortcuts, Spotlight integration, exposing app functionality.
Open skill - /apple-aso
Optimize Apple App Store metadata in store.config.json for ASO (App Store Optimization). Use when working with store.config.json, App Store keywords, titles, subtitles, descriptions, or localizing app metadata. Helps maximize app visibility and downloads.
Open skill - /apple-docs-index
Index of Apple developer documentation for iOS, macOS, and related frameworks. Use when looking up what APIs exist in a framework, browsing available documentation, or deciding what docs to fetch. Covers SwiftUI, UIKit, Core Animation (QuartzCore), XCTest, HealthKit, Combine,
Open skill - /backgroundtasks
API reference: BackgroundTasks. Query for BGTaskScheduler, app refresh, background processing.
Open skill - /combine
API reference: Combine. Query for publishers, subscribers, operators, async data streams.
Open skill - /core-animation
API reference: Core Animation (QuartzCore). Query for CALayer, CAAnimation, CABasicAnimation, CAKeyframeAnimation, CASpringAnimation, CATransaction, CAShapeLayer, CAGradientLayer, CAEmitterLayer, CATransform3D, CADisplayLink.
Open skill

