ios-simulator-preview

ios-simulator-preview is a skill for Claude Code, Codex from kirodotdev/KiroCrew. It costs 78 tokens per session (1,913 once invoked), scanned B, original, Apache-2.0.

A live view of an iOS app running in Apple’s Simulator, shown in a dashboard panel. iOS Simulator is Apple’s desktop tool for testing iPhone and iPad apps.

In plain words
What is it for?
Use it to preview or test an iOS or SwiftUI app on macOS with Xcode and an installed iOS platform.
Why use it?
It lets you watch the app and its interactions while building or testing, without switching away from the coding workspace.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions Codex.

Good fit Use it to preview or test an iOS or SwiftUI app on macOS with Xcode and an installed iOS platform.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/kirodotdev/kirocrew/ios-simulator-preview
About the project

Kiro Crew is a persistent development workspace where agents continue multi-step software work across sessions, schedules, and connected interfaces. Developers use it locally or remotely through a desktop app, web dashboard, CLI, Slack, or Discord, with unattended tasks and recurring jobs. The catalogue contains skills and instructions for working with this workspace.

kirodotdev/KiroCrew · 4,607 stars · on GitHub · kiro.dev

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add kirodotdev/KiroCrew --skill ios-simulator-preview
Clone the repo
git clone --depth 1 https://github.com/kirodotdev/KiroCrew

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ios-simulator-preview

README.md
[![agentmods](https://agentmods.dev/badge/skills/kirodotdev/kirocrew/ios-simulator-preview/github.svg)](https://agentmods.dev/skills/kirodotdev/kirocrew/ios-simulator-preview)
Your own site
<a href="https://agentmods.dev/skills/kirodotdev/kirocrew/ios-simulator-preview"><img src="https://agentmods.dev/badge/skills/kirodotdev/kirocrew/ios-simulator-preview/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ios-simulator-preview

Your own site · 80×15
<a href="https://agentmods.dev/skills/kirodotdev/kirocrew/ios-simulator-preview"><img src="https://agentmods.dev/badge/skills/kirodotdev/kirocrew/ios-simulator-preview.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 78 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,913 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 2 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 5 findings, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Excessive Agency · line 29
    Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
    Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
  • medium MCP Rug Pull · line 30
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium MCP Rug Pull · line 56
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium Privilege Escalation · line 124
    Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
    Fix: Avoid sudo/root unless strictly required. Prefer least-privilege patterns. If elevation is needed, document the justification and scope.
  • medium MCP Rug Pull · line 139
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00078 $0.01913
Opus 5.5 $0.00031 $0.00765
Sonnet 5.5 $0.00016 $0.00383
Haiku 4.5 $0.00008 $0.00191

Measured 20d ago against content hash ab361f1ff85f, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade B, and why

ios-simulator-preview scanned grade B with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 20d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/sim_mirror.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Asks for rootmediumPrivilege escalation

A mod that escalates privileges can change anything on the machine, not only the project.

`sudo xcodebuild -license accept` themselves (needs `sudo` + an interactive

Runs shell commandslowCapability

Expected in a hook, worth knowing in a rule or an instructions file.

**Bound every `simctl` call with a timeout** (e.g. `subprocess.run(...,
src/kiro_crew/builtin_skills/ios-simulator-preview/SKILL.md · 158 lines

How it starts

The opening of the file, as written. The whole thing — 158 lines — stays where its author put it; the contents beside it link to each section on GitHub.

iOS Simulator Preview (Browser-tab mirror)

Mirror a running iOS Simulator into KiroCrew's Browser side panel so the user watches the app — and you driving it — live next to the chat.

Architecture, end to end, all local: simulator → serve-sim (loopback HTTP) → the kirocrew:preview marker → Browser panel iframe. Nothing leaves the machine. This mirrors OpenAI Codex's ios-simulator-browser approach (same serve-sim mirror) with one substitution: Codex opens the URL in its in-app browser via a browser tool, while KiroCrew's panel is driven by the hidden preview marker (see the web-preview skill).

Requirements

  • macOS only. Apple's simulator runs nowhere else. On Linux/Windows say so and stop — do not attempt a fallback.
  • Xcode with an iOS platform installed, and the license accepted. xcrun simctl list devices must work.
  • Node/npx. The launcher pins --registry=https://registry.npmjs.org because a local npm config may default to an authenticated internal registry (which 401s on a public package). The serve-sim version is pinned in the launcher (SERVE_SIM_VERSION) rather than floated, so a start never auto-executes an unreviewed release; bumping it is a deliberate change.
  • First start takes a couple of minutes (npx download + device boot); the launcher gives up after 240s with a JSON error naming the log. Later starts are fast.

Resolve the launcher path once

SKILL_DIR="${KIROCREW_HOME:-$HOME/.kiro/crew}/skills/ios-simulator-preview"
SKILL_DIR="${SKILL_DIR/#\~/$HOME}"   # a literal ~ in KIROCREW_HOME is not expanded inside quotes

Call the script by path; do not cd into the skill folder.

KIROCREW_HOME, when set, must be an ABSOLUTE path (a leading ~ is fine — the launcher expands it, and the second line above expands it for SKILL_DIR, which the shell would otherwise leave literal). The launcher is invoked by path from whatever directory the session is in, so a relative home would resolve differently per caller and a start from one project directory would not be visible to a stop from another. The launcher refuses a relative value with a JSON error rather than splitting state.

Read the full file on GitHub · 158 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 20d ago Changed · +2 lines ab361f1ff85f
  2. 1mo ago Changed · +6 lines 5e7d00e34e1e
  3. 1mo ago First seen · 150 lines · 78 tokens per session scan B 5c5c91887d36

Subscribe to this mod's changes

ios-simulator-preview is a skill published in the GitHub repository kirodotdev/KiroCrew (4,607 stars, last pushed today), licensed Apache-2.0. It adds 78 tokens to every session and 1,913 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it B with 2 findings (asks for root, runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

rn-device-control

This skill should be used when the user asks to "control the simulator", "take a screenshot", "boot the emulator", "install the app", "read UI hierarchy", "manage device state", "open a deep link", "grant permissions", "stream native logs", "disable animations", "change device locale", or needs guidance on xcrun…

Lykhoyda/rn-dev-agent · 98 tokens

rn-feature-development

This skill should be used when building any new feature in a React Native or Expo app, or when the $rn-dev-agent:rn-feature-dev command runs. Triggers on "build a feature", "add X to the app", "implement Y", "create a new screen", "rn-feature-dev", "feature development", "build me X", "add a screen", "wire up this…

Lykhoyda/rn-dev-agent · 86 tokens

using-rn-dev-agent

Entry point for the rn-dev-agent plugin. Maps user intent to the right command, agent, or skill. Use at the START of any React Native development conversation. Triggers on "I want to build", "build a feature", "add a feature to the app", "test this", "something is broken", "fix the crash", "help with my React Native…

Lykhoyda/rn-dev-agent · 92 tokens

rn-testing

This skill should be used when the user asks to "write a Maestro test", "create E2E flows", "add testIDs", "run UI tests", "run E2E tests", "verify a feature works", "test my screen", "set up maestro-runner", "mock network requests", "inspect store state", "write test assertions", or needs guidance on test timing…

Lykhoyda/rn-dev-agent · 106 tokens

rn-workflow

Validate and establish the proven rn-dev-agent operating sequence before a real React Native journey — read project instructions and the declared package manager, inventory sessions/Metro/devices read-only, establish one exclusive simulator/emulator via typed session actions, apply and verify package integration and…

Lykhoyda/rn-dev-agent · 91 tokens

capturing-proof

This skill should be used when the user asks to "capture proof", "record a demo of this feature", "make a video showing it works", "record the flow for the PR", "generate a PR body", "capture screenshots for the PR", "proof-capture", or when a verified feature needs PR-ready proof artifacts (video + numbered…

Lykhoyda/rn-dev-agent · 105 tokens