ios-simulator21 production-ready scripts for iOS app testing, building, and automation. Provides semantic UI navigation, build automation, accessibility testing, and simulator lifecycle management. Optimized for AI agents with minimal token output.
Install via ClawdBot CLI:
clawdbot install tristanmanchester/ios-simulator:
Requires:
This skill provides a Node-only CLI wrapper around:
xcrun simctl for simulator/device/app managementidb for accessibility-tree inspection + synthesised UI input (tap/text/button)It is designed for AI agents: minimal, structured output by default, with opt-in detail.
idb is optional, but required for UI tree / semantic tapping. (Install steps below.)# 1) Sanity check
node {baseDir}/scripts/ios-sim.mjs health
# 2) List simulators (compact)
node {baseDir}/scripts/ios-sim.mjs list
# 3) Select a default simulator (writes .ios-sim-state.json in the current dir)
node {baseDir}/scripts/ios-sim.mjs select --name "iPhone" --runtime "iOS" --boot
# 4) Install + launch an .app
node {baseDir}/scripts/ios-sim.mjs app install --app path/to/MyApp.app
node {baseDir}/scripts/ios-sim.mjs app launch --bundle-id com.example.MyApp
# 5) Inspect current UI (requires idb)
node {baseDir}/scripts/ios-sim.mjs ui summary
node {baseDir}/scripts/ios-sim.mjs ui tap --query "Log in"
node {baseDir}/scripts/ios-sim.mjs ui type --text "hello world"
# 6) Screenshot
node {baseDir}/scripts/ios-sim.mjs screenshot --out artifacts/screen.png
If you are not on macOS, run the same commands on the macOS node using ClawdBot’s node execution (e.g. exec with host: node / node tools). Ensure the skill folder exists on that node, or copy it there.
--pretty to pretty-print JSON.--text for a short human-readable summary (when provided by the command).ui tree, list --full) are opt-in.select writes a state file (default: ./.ios-sim-state.json) that stores the chosen UDID.
All commands accept --udid and otherwise fall back to the state file.
Override location with:
IOS_SIM_STATE_FILE=/path/to/state.jsonIf xcrun cannot find simctl, ensure Xcode CLI tools are selected (via Xcode settings or xcode-select) and run the first-launch setup:
xcodebuild -runFirstLaunchInstall idb_companion and the idb CLI:
brew tap facebook/fb
brew install idb-companion
python3 -m pip install --upgrade fb-idb
| Tier | Commands | Notes |
|------|----------|------|
| SAFE | list, health, boot, shutdown, screenshot, ui * | No data loss |
| CAUTION | privacy , push, clipboard , openurl | Alters simulator/app state |
| DANGEROUS | erase, delete | Requires --yes |
All commands live under:
node {baseDir}/scripts/ios-sim.mjs <command> [subcommand] [flags]
list [--full]select --name [--runtime ] [--boot] boot [--udid ] [--wait] shutdown [--udid |--all] erase --yes [--udid |--all] delete --yes [--udid ] create --name --device-type --runtime app install --app [--udid ...] app uninstall --bundle-id [--udid ...] app launch --bundle-id [--udid ...] [-- ] app terminate --bundle-id [--udid ...] app container --bundle-id [--type data|app] [--udid ...] screenshot --out [--udid ...] record-video --out [--udid ...] (runs until Ctrl+C)clipboard get [--udid ...]clipboard set --text [--udid ...] openurl --url [--udid ...] privacy grant --bundle-id --service [--udid ...] privacy revoke --bundle-id --service [--udid ...] privacy reset --bundle-id --service [--udid ...] push --bundle-id --payload [--udid ...] logs show [--last 5m] [--predicate ] [--udid ...] ui summary [--limit 12]ui tree (full UI JSON array)ui find --query [--limit 20] ui tap --query (find + tap best match)ui tap --x --y (raw coordinate tap)ui type --text ui button --name HOME|LOCK|SIRI|SIDE_BUTTON|APPLE_PAYSee: references/TROUBLESHOOTING.md
Generated Mar 1, 2026
Automate end-to-end testing for iOS apps by creating simulators, installing builds, and performing UI interactions like tapping buttons and typing text. This reduces manual testing effort and ensures consistent regression testing across different iOS versions and device types.
Use the skill to inspect UI accessibility trees and simulate user interactions for testing app accessibility features. This helps developers ensure compliance with standards like WCAG and improve usability for users with disabilities.
Integrate the skill into continuous integration workflows to automatically boot simulators, install app builds, run automated UI tests, and capture screenshots for reporting. This accelerates release cycles and provides visual verification of app functionality.
Simulate push notifications on iOS simulators to test delivery, handling, and user interface responses without needing physical devices. This is useful for validating notification payloads and app behavior in development environments.
Automate the granting and revoking of privacy permissions (e.g., camera, location) for iOS apps during testing. This streamlines the process of testing app functionality under different permission states and ensures robust handling of user consent.
Offer automated iOS testing services to clients by leveraging this skill to run comprehensive UI and functional tests on simulators. Charge based on test execution frequency, complexity, or subscription plans, providing cost savings compared to manual testing.
Develop and sell proprietary tools or plugins that enhance this skill, such as advanced reporting dashboards, integration with popular CI/CD platforms, or custom automation scripts. License these tools to development teams or enterprises.
Provide consulting services to help companies integrate this skill into their development workflows, optimize testing strategies, and train teams on iOS automation best practices. Offer workshops, documentation, and ongoing support contracts.
💬 Integration Tip
Ensure Xcode Command Line Tools are installed and idb is set up for UI automation; use remote macOS nodes if running from non-macOS environments via ClawdBot.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
Expert frontend design guidelines for creating beautiful, modern UIs. Use when building landing pages, dashboards, or any user interface.
Use when building UI with shadcn/ui components, Tailwind CSS layouts, form patterns with react-hook-form and zod, theming, dark mode, sidebar layouts, mobile navigation, or any shadcn component question.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when building web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
Create distinctive, production-grade static sites with React, Tailwind CSS, and shadcn/ui — no mockups needed. Generates bold, memorable designs from plain text requirements with anti-AI-slop aesthetics, mobile-first responsive patterns, and single-file bundling. Use when building landing pages, marketing sites, portfolios, dashboards, or any static web UI. Supports both Vite (pure static) and Next.js (Vercel deploy) workflows.
AI skill for automated UI audits. Evaluate interfaces against proven UX principles for visual hierarchy, accessibility, cognitive load, navigation, and more. Based on Making UX Decisions by Tommy Geoco.