Restart the iOS app on connected iPhone without rebuilding. Terminates and relaunches the app remotely. Use when testing changes that don't require rebuild, or refreshing app state.
Scanned 2/12/2026
Install via CLI
openskills install majiayu000/claude-skill-registry---
name: ios-restart-app
description: Restart the iOS app on connected iPhone without rebuilding. Terminates and relaunches the app remotely. Use when testing changes that don't require rebuild, or refreshing app state.
---
# iOS Restart App
## Overview
Restarts the iOS app on a connected iPhone by terminating the existing instance and launching it again. This is useful for testing configuration changes, clearing app state, or refreshing the app without rebuilding.
## When to Use
Invoke this skill when the user:
- Asks to "restart the app"
- Wants to "reload the app"
- Says "relaunch on device"
- Mentions refreshing or resetting the app
- Wants to test without rebuilding
## Prerequisites
- iPhone connected via USB
- App must be installed on the device (use ios-deploy-usb first if not)
- Device trusted
- The project must be in an iOS app directory
## Instructions
1. Navigate to the iOS app directory:
```bash
cd path/to/ios/app
```
2. Run the restart script:
```bash
./restart-app.sh
```
3. The script will:
- Auto-detect the connected iPhone
- Terminate any running instance of the app
- Launch the app again
- Activate it (bring to foreground)
4. Inform the user:
- The app has been restarted on the device
- This does NOT rebuild - only restarts the existing installation
- Use ios-deploy-usb if code changes need to be deployed first
## Expected Output
```
🔄 Restarting NoobTest on device...
✅ App restarted
```
## How It Works
The script uses:
- `xcodebuild -showdestinations` to find the device ID
- `xcrun devicectl device process launch` with `--terminate-existing` to kill and restart
- `--activate` flag to bring the app to the foreground
## When to Use vs Deploy
**Use restart-app when**:
- Testing configuration files or assets that don't require rebuild
- Clearing app state (memory, caches)
- You just want to refresh the running app
- Changes are external (server-side, network config, etc.)
**Use ios-deploy-usb when**:
- You changed Swift code
- You added/modified UI
- You updated dependencies
- Any code that needs recompilation
## Common Issues
**No device detected**:
- Check USB connection
- Ensure device is trusted
- Try disconnecting and reconnecting
**App not installed**:
- Run ios-deploy-usb first to build and install
- Verify app appears on iPhone home screen
**Device busy**:
- Wait a moment and try again
- Stop any other Xcode operations
## Speed
This is very fast (< 2 seconds) since there's no build step. It's ideal for rapid iteration when testing non-code changes.
## Bundle ID
The script is configured for the specific app's bundle ID. For Firefly/NoobTest, this is `com.miso.noobtest`. Different apps will have different bundle IDs configured in the script.

No comments yet. Be the first to comment!