Erase Simulator (Factory Reset)
simctl-eraseReset an iOS simulator to factory settings by removing all apps and data while keeping the device for immediate reuse, enabling clean-state testing and fresh app install workflows.
Instructions
simctl-erase
Reset iOS simulator devices to factory settings.
Overview
Resets a simulator to clean factory state without deleting the device itself. All apps and data are removed, but the simulator persists and can be immediately reused. Useful for clean state testing and fresh app installation workflows.
Parameters
Required
deviceId (string): Device UDID to erase (from simctl-list)
Optional
force (boolean, default: false): Force erase even if device is booted
Returns
Erase status with device information, confirmation that device persists, wasBooted flag indicating if device was running during erase, success indicator, and guidance for next steps.
Examples
Erase simulator to clean state
await simctlEraseTool({ deviceId: 'ABC-123-DEF' });Force erase booted device
await simctlEraseTool({
deviceId: 'ABC-123-DEF',
force: true
});Related Tools
simctl-list: Find device UDID to erase
simctl-shutdown: Shutdown device before erase (if not using force)
simctl-boot: Boot device after erase to continue testing
Notes
Device persists after erase - only data is removed
All apps, preferences, and user data are deleted
Device returns to factory settings
Use force: true to erase booted device (otherwise must shutdown first)
Perfect for repeatable clean state testing
Faster than delete + create for reset workflows
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| force | No | ||
| deviceId | Yes |