Dev & Engineering

serve-sim — iOS Simulator Remote Control from the Terminal

Boot, install, stream, and control a Capacitor iOS app in the Apple Simulator from your terminal — no Xcode needed.

52/ 100
Use with care

Useful, but reliability, evidence or controls still have material gaps.

See how it was scored ↓
Works as-is in
Codex · Claude Code
Stars
★ 12k
Last updated
11d ago
License
MIT
ios-simulatorxcodecapacitormobile-testing
+3browser-streamaccessibility-inspectionbun

What does this skill do, and when should you use it?

serve-sim is one of 18 Agent Skills bundled in the openchamber/openchamber repository (a desktop/web interface for the OpenCode AI agent, MIT-licensed), located at .agents/skills/serve-sim/. It targets mobile developers who want simulator workflows that normally require the Xcode GUI to run entirely from the terminal: building the simulator app, booting/installing/launching it, starting a live browser stream, and running CLI controls for taps, typing, gestures, rotation, hardware buttons, permissions, and accessibility inspection. Work runs through discrete Bun scripts with observable completion boundaries, and JSON output is authoritative.

Following the SKILL.md instructions, the skill: builds the simulator app with bun run mobile:build:ios:simulator; boots, installs, and launches it with bun run mobile:sim:run; starts a detached browser stream with bun run mobile:sim:serve and surfaces the JSON url (the only authoritative stream address); runs manual controls via bunx serve-sim (tap/type/button home/rotate/--list) using normalized 0..1 coordinates; fetches the accessibility tree via curl http://localhost:3100/ax; and stops helpers with bun run mobile:sim:kill when finished.

Good fit
  • A mobile developer building a Capacitor iOS app who wants the agent to handle build/install/launch without opening Xcode.
  • A QA engineer automating UI smoke tests by scripting taps, typing, and gestures via CLI and verifying results.
  • A developer on a remote collaboration session who wants a live simulator view in the browser to demo to teammates.
  • An accessibility auditor checking an app's accessibility tree at http://localhost:3100/ax.
  • An agent-driven end-to-end acceptance flow: launch the app, perform interactions, verify completion, then clean up helpers.

How do you install this skill?

Before you use it
  • This is a static source review; no scripts were executed and runtime behavior is independently unverified.
  • The skill targets a macOS-only flow requiring Xcode and bun and is unusable elsewhere; the publisher is unverified and identity unknown.
  • Security boundaries for the browser stream and camera injection (auth, isolation, rollback) are not fully documented — confirm local exposure before use.
  • The skill has no independent version or changelog; when updating, re-verify commands against repository scripts.
Before you start
Your agent needs
  • Shell / CLI
  • Local filesystem
Install first
  • macOS host
  • Xcode
  • Node.js 18+
  • Bun
  • xcrun simctl

The skill ships inside the openchamber/openchamber repository at .agents/skills/serve-sim/. The README does not document a standalone install for this one skill; the collection's overall install options are Desktop releases, the VS Code extension, and the openchamber CLI (Node.js 22+). How to copy this specific skill folder into an Agent Skills client directory is not documented in the source.

Generic route: install into Claude Code manually (macOS / Linux)
tmp="$(mktemp -d)"
git clone --depth 1 https://github.com/openchamber/openchamber.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/.agents/skills/serve-sim" ~/.claude/skills/
rm -rf "$tmp"

Generated from the source repository and skill path; it copies only this skill's folder. If the author's install steps above differ, follow those first. To scope it to one project, replace ~/.claude/skills with that project's .claude/skills.

How do you use this skill?

On macOS, ensure Xcode and Node 18+ are installed (set DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer if xcode-select points at CommandLineTools). From the repository root run, in order: bun run mobile:build:ios:simulator (build); bun run mobile:sim:run (boot/install/launch); bun run mobile:sim:serve (start stream; surface the returned JSON url); then controls like bunx serve-sim tap 0.5 0.5, type "hello", button home, rotate portrait as needed; curl http://localhost:3100/ax for the accessibility tree; finish with bun run mobile:sim:kill. Caveats: direct CLI commands must run from packages/mobile (elsewhere they fail with command not found), and do not emulate taps with separate gesture begin/end commands — that can register as long press.

What are this skill's strengths and limitations?

Pros
  • Full build/install/launch simulator workflow without ever opening Xcode.
  • Live browser streaming makes remote viewing and demos easy.
  • Fine-grained CLI controls: taps, typing, gestures, rotation, hardware buttons, permissions, camera injection, accessibility inspection.
  • Scripted, step-by-step execution with observable completion boundaries and authoritative JSON output.
  • Normalized coordinates (0..1) reduce dependence on exact screen resolution.
Limitations
  • macOS host only, with Xcode and a bootable simulator required.
  • Depends on Bun and the openchamber repo's mobile build environment (a Capacitor project); not for arbitrary iOS projects.
  • If accessibility lookup cannot identify a target, the correct behavior is to report the missing target — there is no automatic fallback.
  • Direct CLI commands only work from packages/mobile, a path constraint that is easy to trip over.
  • No test suite or usage evidence outside this repository is provided in the source.

How does this skill compare with similar options?

Side by side with related skills; every score comes from the same FSRS standard.

Skill FS score Stars Last updated License
serve-sim — iOS Simulator Remote Control from the Terminal this page 52 · Use with care ★ 12k 11d ago MIT
EAS Cloud Simulator 60 · Recommended ★ 2.9k 20d ago MIT
Expo Skill Eval 48 · Use with care ★ 2.9k 20d ago MIT
Mobile App Dogfood Tester 46 · Use with care ★ 1.7k 17d ago MIT
e2e Verify — End-to-End Change Verification Skill 64 · Recommended ★ 10k 11d ago Apache-2.0

How did FollowSkills review this skill?

FollowSkills review · FSRS-2.0
Use with care
52/ 100 5-point scale 2.6 / 5
The upstream repository has new commits since this review. The score still applies to the reviewed revision shown and may not cover the latest changes.
1Trust15 / 25 · 3.0/5

Skill controls only the local simulator, stream bound to localhost, no sign of credential access or data exfiltration; instructs stopping helpers and reporting missing targets rather than guessing coordinates — reasonable transparency. Deducted: no documented confirmation, isolation, or rollback for sensitive operations such as framebuffer streaming, camera injection, and permission modification.

2Reliability9 / 20 · 2.3/5

SKILL.md is self-consistent with mobile:build:ios:simulator, sim:run, sim:serve, and sim:kill in package.; documents DEVELOPER_DIR, Node version, package-path constraints, and failure-feedback expectations. Deducted: no committed tests covering the skill's key paths, no diagnosable failure examples for abnormal input; static review cannot verify runnability.

3Adaptability9 / 15 · 3.0/5

Trigger conditions in the description are specific (driving the iOS simulator without Xcode, tap/type/gesture, accessibility inspection), and preconditions clearly bound macOS + Xcode + Node 18+. Deducted: non-fit ranges (e.g., Android emulator, CI) undeclared, no Chinese-language support, and availability of the bun/Apple toolchain in target environments unevaluated.

4Convention9 / 15 · 3.0/5

Well-structured docs: scripted workflow, manual controls, normalized-coordinate notes, complete preconditions; MIT license, repo versioning, changelog scripts, and security policy. Deducted: no per-skill version, changelog, or known-limitations list; maintenance responsibility only indirectly inferable; publisher unverified by registry.

5Effectiveness6 / 15 · 2.0/5

Claimed core value (build/launch/stream/control the simulator from terminal) matches the repo's script system, offers real marginal value over opening Xcode, and JSON output consumption improves direct usability. Deducted: static review cannot verify output usability, the multi-step build flow is costly, and no representative output evidence exists.

6Verifiability4 / 10 · 2.0/5

Key claims trace to in-repo scripts and docs, which is auditable primary material; the repo has test/CI infrastructure overall, but no committed tests or third-party execution evidence cover serve-sim's key paths. Deducted: no independent reproduction, single evidence type, thin coverage.

1 2 3 4 5 6

Open a dimension to read why it scored that way

Reviewed Sep 09, 2026 Reviewed revision f8b929edf989 Review evidence[1][2][3][4][5][6][7][8][9]

Evidence confidence:Low — Mostly static review, author material or a limited demo; useful for discovery, not high-risk decisions.

See the full review method →

More skills from this repository

All from openchamber/openchamber

Design & Frontend

OpenChamber Theme System Skill

Enforces semantic theme tokens, shared button/icon contracts, and keyboard-navigation rules when modifying OpenChamber UI — no hardcoded colors or reinvented components.

★ 12k FS 57 Use with care 11d ago
Dev & Engineering

OpenChamber Change Discipline

Enforces "smallest complete change, narrowest sufficient validation" discipline when modifying the OpenChamber codebase, preventing local fixes from ballooning into speculative rewrites.

★ 12k FS 52 Use with care 11d ago
Dev & Engineering

OpenChamber Performance Engineering Skill

Eliminate structural waste before micro-optimizing: a measurement-driven methodology for interaction, render, polling, cache, and high-volume data paths.

★ 12k FS 62 Recommended 11d ago
Dev & Engineering

Locale UI Patterns — OpenChamber UI Localization Rules

Enforces that every user-facing OpenChamber string gets a real translation in every language dictionary immediately — no English placeholders, ever.

★ 12k FS 61 Recommended 11d ago
Design & Frontend

OpenChamber Drag-to-Reorder Skill

A battle-tested @dnd-kit playbook that fixes the hardest drag-to-reorder bugs: variable-width items, wrapping layouts, and touch/mobile gesture conflicts.

★ 12k FS 59 Recommended 11d ago
Dev & Engineering

OpenChamber Relay Transport Skill

Build WebSocket, SSE, and streaming endpoints that actually work over OpenChamber's end-to-end encrypted relay tunnel, where desktop-only testing silently hides failures.

★ 12k FS 58 Recommended 11d ago
Dev & Engineering

OpenChamber UI/API Decoupling Skill

Enforces correct layering between SDK calls, RuntimeAPIs, and browser asset access when modifying OpenChamber's shared UI data layer — preventing hardcoding and cross-runtime state leaks.

★ 12k FS 58 Recommended 11d ago
Dev & Engineering

Clack CLI Patterns

Defines consistent interactive prompt, --quiet, and -- output contracts for OpenChamber terminal commands, so policy validation always precedes presentation in every run mode.

★ 12k FS 57 Use with care 11d ago
Dev & Engineering

OpenChamber Desktop Shell Skill

Gives AI agents the correct architecture boundaries and security rules when changing OpenChamber's Electron main/preload code, IPC, or packaging.

★ 12k FS 54 Use with care 11d ago
Design & Frontend

OpenChamber Settings UI Patterns

A skill that makes AI agents build OpenChamber Settings pages from shared primitives, with localization and search-registry rules enforced instead of hand-rolled markup.

★ 12k FS 54 Use with care 11d ago
Dev & Engineering

OpenChamber Sync State Invariants

A rulebook that enforces state ownership and failure semantics when agents change session sync, event reducers, polling, and caches — preventing destructive data loss and state corruption.

★ 12k FS 49 Use with care 11d ago

Related skills