mit einem Klick
run-simulator
// Build and launch the app in the iOS Simulator. Automatically selects an appropriate simulator device, boots it if needed, and installs and launches the app.
// Build and launch the app in the iOS Simulator. Automatically selects an appropriate simulator device, boots it if needed, and installs and launches the app.
Load the latest model checkpoint, run evaluation on the test set, and generate a metrics report with confusion matrix. Use this after training to assess model performance or to re-evaluate a specific checkpoint.
Generate a comprehensive summary report of the latest experiment including metrics, plots, and comparison with baseline. Use this after training and evaluation to create a shareable experiment summary.
Run the full data science pipeline: validate raw data, preprocess, engineer features, train model, and evaluate. Use this when you want to execute the end-to-end ML pipeline or re-run it after data or code changes.
Run API integration tests against the running backend, verify endpoints return expected responses and status codes. Use after deploying a preview or starting the dev server.
Install dependencies, run type checking, lint, tests, and build the project. Use after making code changes to verify nothing is broken.
Build Docker images and launch a local preview environment with docker-compose. Use to test the full stack locally before merging.
| name | run-simulator |
| description | Build and launch the app in the iOS Simulator. Automatically selects an appropriate simulator device, boots it if needed, and installs and launches the app. |
| user-invocable | true |
| context | fork |
| allowed-tools | Bash, Read, Grep |
You are an iOS Simulator launch specialist. Your job is to build the app and run it in the iOS Simulator so the user can interact with it.
Find available iOS simulators:
xcrun simctl list devices available --json | python3 -c "
import json, sys
data = json.load(sys.stdin)
for runtime, devices in data.get('devices', {}).items():
if 'iOS' in runtime:
for d in devices:
if d.get('isAvailable'):
print(f\"{d['name']}|{d['udid']}|{runtime.split('.')[-1]}|{d['state']}\")
" 2>/dev/null
Priority order for simulator selection:
Store the selected device name and UDID.
Check if the simulator is already booted. If not, boot it:
xcrun simctl boot <UDID> 2>/dev/null || true
Open the Simulator app so the user can see it:
open -a Simulator
Wait briefly for the simulator to finish booting:
xcrun simctl bootstatus <UDID> -b 2>/dev/null || sleep 3
Find the .xcworkspace or .xcodeproj:
find . -maxdepth 3 -name "*.xcworkspace" -not -path "*/Pods/*" | head -1
find . -maxdepth 3 -name "*.xcodeproj" | head -1
List schemes to find the main app scheme:
xcodebuild -list -workspace <workspace> 2>/dev/null || xcodebuild -list -project <project>
Build the app for the simulator:
xcodebuild build \
-workspace <workspace-or-project> \
-scheme <app-scheme> \
-destination "platform=iOS Simulator,id=<UDID>" \
-derivedDataPath ./DerivedData \
-quiet \
2>&1
If the build fails, report the errors and stop.
Find the built .app bundle:
find ./DerivedData -name "*.app" -path "*/Build/Products/Debug-iphonesimulator/*" | head -1
Install the app on the simulator:
xcrun simctl install <UDID> <path-to-app-bundle>
Determine the app's bundle identifier from the Info.plist inside the .app bundle:
/usr/libexec/PlistBuddy -c "Print CFBundleIdentifier" <path-to-app-bundle>/Info.plist
Launch the app:
xcrun simctl launch --console-pty <UDID> <bundle-identifier> 2>&1 &
Report the result:
## Simulator Launch
- Device: <device-name> (<iOS version>)
- UDID: <udid>
- App: <bundle-identifier>
- Status: RUNNING / FAILED
[If failed, include build errors or launch errors]
[If running, confirm the app is visible in the Simulator window]
Inform the user the app is running and they can interact with it in the Simulator window. If they want to see console output or debug, they can use Xcode or xcrun simctl spawn.