Your AI agent can handle all the infrastructure work that usually means switching to Terminal and remembering obscure simctl flags. Simulators, runtimes, devices, Swift packages, cleaning, project setup - just describe what you need and the agent takes care of it.
Simulators
List available simulators
What simulators do I have installed? Which ones are booted?
The agent will list all installed simulators with their names, OS versions, and current state (booted, shutdown). It highlights which ones are currently running.
Create a simulator
Create an iPhone 16 Pro Max simulator with iOS 18.
The agent will check if the iOS 18 runtime is installed, create the simulator with the correct device type and runtime pairing, and report the new simulator’s name and UDID.
Boot and open a simulator
Boot my iPhone 16 simulator and open the Simulator app so I can see it.
The agent will boot the simulator and launch the Simulator.app window so you can watch what’s happening on screen.
Shut down simulators
Shut down all running simulators.
The agent will find all booted simulators and shut them down. This frees up system resources when you’re done testing.
Delete old simulators
Delete all simulators running iOS 16 or older. Keep everything else.
The agent will list simulators, identify the ones matching your criteria, confirm what it plans to delete, and remove them. This frees up disk space from simulators you no longer need.
Prune unused simulators
Clean up simulators I haven't used recently.
The agent will identify and remove simulators that are no longer needed, such as those for old device types or runtimes that have been superseded.
Reset a simulator to clean state
Erase my iPhone 16 simulator so it's like a fresh install.
The agent will erase all content and settings from the simulator, returning it to its factory state. Useful for testing first-launch experiences or onboarding flows.
Clone a simulator
Clone my iPhone 16 Pro simulator and name it "iPhone 16 Pro - QA".
The agent will duplicate the existing simulator with all its settings, installed apps, and data. Cloning is faster than creating from scratch when you need an identical copy of a configured environment.
Set up multiple simulators
I want to test on both iPhone SE and iPhone 16 Pro Max at the same time.
Make sure both exist and are booted.
The agent will check if both simulators exist, create any that are missing, and boot both so you can run your app on either one.
Set simulator location
Set my simulator's location to San Francisco.
The agent will set the GPS coordinates on the simulator. Useful for testing location-based features without physically being there.
Add this photo to my simulator's camera roll.
The agent will push the image file to the simulator’s photo library so you can test image picker flows and photo-related features.
Runtimes
List installed runtimes
What iOS runtimes do I have installed?
The agent will list all installed simulator runtimes with their version numbers and disk usage.
Check available runtimes
What iOS runtimes can I download?
The agent will check Apple’s available runtimes and show you which versions you can install, including beta releases if available.
Install a new runtime
Install the iOS 17.5 runtime.
The agent will download and install the runtime. This can take a while depending on your internet connection, since runtimes are several gigabytes.
Install a runtime and create a simulator
I need to test on iOS 17. Install the latest iOS 17 runtime
and create an iPhone 15 simulator with it.
The agent will install the runtime, wait for it to complete, then create a new simulator paired with that runtime. You’ll be ready to build and run on it immediately.
Remove old runtimes
Delete the iOS 16 runtime to free up disk space.
The agent will check for simulators that depend on the runtime, remove or prune them first if needed, then delete the runtime itself.
List available device types
What device types can I create simulators for?
The agent will list all available device types (iPhone models, iPad models, Apple Watch, Apple TV, etc.) that you can pair with your installed runtimes.
Physical devices
List connected devices
What devices are connected to my Mac?
The agent will list all connected physical devices with their names, model identifiers, OS versions, and connection state.
Install an app on a device
Install the built app on my connected iPhone.
The agent will find the built .app bundle and install it on your connected device.
Uninstall an app from a device
Uninstall MyApp from my connected iPhone.
The agent will remove the app from the device by its bundle identifier.
Cleaning
Clean build artifacts
The agent will clean the scheme’s build artifacts from derived data. This is the standard clean that matches Xcode’s “Clean Build Folder” behavior.
Deep clean everything
Clean everything - build artifacts, caches, all of it.
The agent will clean scheme artifacts, FlowDeck’s derived data, and Xcode’s module and build caches. This is the nuclear option for when incremental builds are acting up.
Clean and rebuild
Clean the build and rebuild from scratch.
The agent will clean all artifacts first, then perform a fresh build. This solves stale cache issues and ensures a clean starting point.
Clear simulator caches
Clear my simulator caches.
The agent will clear cached data from simulators, which can fix issues with stale resources or unexpected behavior after updates.
Swift packages
List installed packages
What Swift packages does this project use?
The agent will list all Swift Package Manager dependencies in the project with their names and resolved versions.
Add a package
Add the Alamofire package to my project.
The agent will add the package dependency to your project with the appropriate version constraints.
Remove a package
Remove the unused SnapKit package from my project.
The agent will remove the package dependency from your project.
Resolve packages
Resolve my Swift packages.
The agent will run SPM package resolution, downloading any missing dependencies and updating the package graph.
Update all packages
Update all my Swift packages to their latest compatible versions.
The agent will update every package dependency to the newest version allowed by your version constraints. It reports which packages were updated and to what versions.
Fix package resolution issues
My packages won't resolve. It keeps failing with a dependency conflict.
Help me fix it.
The agent will try an escalating series of fixes: resolve, then update, then clear the package cache, then clean and retry. If there’s a version conflict, it will read your Package.swift or .xcodeproj to understand the constraints and suggest how to resolve the conflict.
Clear package cache
Clear my Swift package cache. Something seems corrupted.
The agent will clear the local package cache and re-resolve from scratch. This fixes most “weird” package issues caused by corrupted downloads or stale caches.
Link a package to a target
Link the Alamofire package product to my MyApp target.
The agent will link the specified package product to your build target so you can import and use it in your code.
App management
List running apps
What apps has FlowDeck launched? Are any still running?
The agent will list all apps tracked by FlowDeck, showing their app IDs, bundle identifiers, and current state.
Stop a running app
The agent will terminate the app that FlowDeck launched on the simulator or device.
Uninstall an app
Uninstall MyApp from the simulator.
The agent will remove the app from the target simulator by its app ID or bundle identifier.
Stream logs from a running app
Stream the logs from the running app. Flag any errors or warnings.
The agent will attach to the running app’s log stream, capturing real-time output including print() statements and OSLog messages, and flagging anything that looks like an error or unexpected behavior.
Project configuration
Discover the project
What workspaces, schemes, and build configurations does this project have?
The agent will inspect your project and give you a complete inventory: workspaces, schemes, build configurations (Debug, Release, etc.), available simulators, and connected devices.
Save a default configuration
Configure FlowDeck to use the MyApp scheme with iPhone 16 by default.
The agent will save these settings so all subsequent build, run, and test commands use them automatically. No more passing flags every time.
Reset configuration
Reset my FlowDeck configuration for this project.
The agent will clear the saved settings, so you can start fresh or reconfigure with different options.
Create a new Xcode project
Create a new iOS app project called WeatherApp.
The agent will generate a new Xcode project from a template with the specified name, ready to build and run.
Create a new app called MediaPlayer that targets iOS, tvOS, and watchOS.
The agent will create a project configured for all the specified platforms, with the correct deployment targets and build settings for each.
Create an iOS app with a watchOS companion
Create a new app called FitnessTracker with a companion watchOS app.
The agent will generate a project with an iOS app and a paired watchOS companion app that shares data and functionality.
Sync provisioning profiles
Sync my provisioning profiles for this project.
The agent will refresh the provisioning profiles from your developer account, resolving signing issues that come up after certificate or profile changes.
Licensing
Check license status
What's my FlowDeck license status?
The agent will check whether your license is active, what tier it is, and when it expires.
Activate a license
Activate my FlowDeck license with this key: XXXX-XXXX-XXXX
The agent will activate the license on your machine.
Tips for better results
Be specific about versions. “Install iOS 18” is clearer than “install the latest runtime”. The agent can figure it out either way, but explicit versions avoid surprises.
Ask the agent to clean up. Old simulators and runtimes eat disk space. Periodically ask “what simulators and runtimes do I have, and which ones can I safely delete?” to reclaim space.
Combine setup steps. “Install iOS 17, create an iPhone 15 simulator with it, and run my app on it” is a single prompt that handles the full setup chain.
Use deep clean sparingly. A regular clean is usually enough. The full clean (everything + caches) is slower because it forces a complete rebuild, but it’s the right tool when something feels genuinely broken.