用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/championswimmer/TwoFac --skill simulators-emulators命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | simulators-emulators |
| description | How to list, pick, and boot Android emulators and iOS simulators for local app runs. |
IMPORTANT: Preferred iOS Simulator Name:
iPhone 16 w Watch(local),iPhone 16CI Preferred Android Emulator Name:Pixel_9(local),pixel_6CI
Use this skill to discover local Android emulators and iOS simulators, pick a target interactively, and boot it before running the app.
It also supports clearing app data for a specific Android package or resetting an iOS Simulator app by uninstalling its bundle from a selected simulator.
.agents/skills/simulators-emulators/scripts/simulatorTools.mjs.agents/skills/simulators-emulators/scripts/android-emulator-picker.mjs.agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjsemulator -list-avdsadb devices -lxcrun simctl list --jsonnode .agents/skills/simulators-emulators/scripts/android-emulator-picker.mjs --listnode .agents/skills/simulators-emulators/scripts/android-emulator-picker.mjsnode .agents/skills/simulators-emulators/scripts/android-emulator-picker.mjs --bootnode .agents/skills/simulators-emulators/scripts/android-emulator-picker.mjs --avd Pixel_8_API_34 --bootnode .agents/skills/simulators-emulators/scripts/android-emulator-picker.mjs --boot --clear-app-data tech.arnav.twofac.appnode .agents/skills/simulators-emulators/scripts/android-emulator-picker.mjs --avd Pixel_8_API_34 --clear-app-data tech.arnav.twofac.appUse shell output to set ANDROID_SERIAL:
eval "$(node .agents/skills/simulators-emulators/scripts/android-emulator-picker.mjs --boot --shell)"
ANDROID_SERIAL="$ANDROID_SERIAL" ./gradlew :androidApp:installDebug
adb -s "$ANDROID_SERIAL" shell am start -n tech.arnav.twofac.app/.MainActivity
adb -s "$ANDROID_SERIAL" shell dumpsys activity activities | rg 'Resumed: ActivityRecord|mCurrentFocus|mFocusedApp'
When multiple emulators/devices are connected, always pass ANDROID_SERIAL (or adb -s <serial>) to avoid ambiguous target errors.
The Android script uses adb shell pm clear <package> against the selected emulator. This keeps the app installed but removes its local state:
node .agents/skills/simulators-emulators/scripts/android-emulator-picker.mjs \
--avd Pixel_8_API_34 \
--clear-app-data tech.arnav.twofac.app
Use --boot as well if you want the script to explicitly boot the emulator first; the script will also boot automatically when --clear-app-data targets a stopped emulator.
node .agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjs --listnode .agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjsnode .agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjs --bootnode .agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjs --udid <UDID> --bootnode .agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjs --clear-app-data tech.arnav.twofac.appnode .agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjs --udid <UDID> --clear-app-data tech.arnav.twofac.appUse shell output to set IOS_SIMULATOR_UDID:
eval "$(node .agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjs --boot --shell)"
xcodebuild \
-workspace iosApp/iosApp.xcworkspace \
-scheme iosApp \
-destination "platform=iOS Simulator,id=$IOS_SIMULATOR_UDID"
UDID is preferred over simulator name because names are often duplicated across runtimes.
For iOS Simulator, the script clears app data by uninstalling the selected app bundle with xcrun simctl uninstall <UDID> <bundleId>. This removes the app sandbox, so reinstall the app afterward before launching it again:
node .agents/skills/simulators-emulators/scripts/ios-simulator-picker.mjs \
--udid "$IOS_SIMULATOR_UDID" \
--clear-app-data tech.arnav.twofac.app
sys.boot_completed before returning.adb shell pm clear <package> on the selected emulator.xcrun simctl bootstatus <UDID> -b to wait for full readiness.xcrun simctl uninstall <UDID> <bundleId> to reset the app sandbox.avdmanager list avd and running serials from adb devices -l.xcrun simctl list --json and filters to available iOS runtimes/devices.基于 SOC 职业分类