name: sweetdeck description: Use SweetDeck as the primary CLI for Apple build/run/test/simulator/device workflows in this repository.
Skill: sweetdeck
Use sweetdeck first for Xcode-oriented development tasks in this project.
When to use
- Build, run, clean, and test app targets.
- Inspect project context (project, scheme, destination, derived data).
- Set up simulators and app lifecycle tasks (install, launch, logs, stop).
- Manage physical devices via
sweetdeck device. - Edit project schemes/configs/packages via
sweetdeck project.
Fast start
- Initialize config in the project root:
sweetdeck init --scheme <YourScheme>
- Make simulator setup deterministic:
sweetdeck simulator setup
- Verify and use:
sweetdeck context
sweetdeck build
sweetdeck run
sweetdeck test
Non-interactive behavior
- SweetDeck is non-interactive.
- Do not rely on interactive prompts.
- Prefer explicit
--scheme,--destination,--device, and--bundle-idwhen needed. - Avoid
--pick-scheme(deprecated).
Recommended command patterns
# Context + refresh discovered data
sweetdeck context --refresh
# Build with extra xcodebuild args
sweetdeck build --xcarg -quiet
# Build and run on simulator from config destination
sweetdeck run
# Run on a specific simulator or physical device
sweetdeck run --device "iPhone 16"
sweetdeck run --device "<device-udid>"
# Stream logs for configured bundle
sweetdeck logs
# Stop app (simulator or device)
sweetdeck stop
sweetdeck stop --device "<device-udid>" --pid <pid>
Simulator operations
# list
sweetdeck simulator list
# one-command setup (pick, boot, open, write destination)
sweetdeck simulator setup
# explicit lifecycle
sweetdeck simulator boot <udid-or-name>
sweetdeck simulator shutdown <udid-or-name>
sweetdeck simulator delete <udid-or-name>
sweetdeck simulator prune
JSON-first automation
Use --output json on top-level commands for machine-readable responses:
sweetdeck --output json context --refresh
sweetdeck --output json build
sweetdeck --output json test
Troubleshooting
No config found: runsweetdeck initin project root.Missing bundle identifier: pass--bundle-idor setappLaunch.bundleIdentifierin config.Simulator not found: runsweetdeck simulator listand usesweetdeck simulator setup --simulator ....- If destination drifts, run
sweetdeck simulator setupagain to re-pin destination.