iOS Simulator Skill

📱 iOS 模拟器自动化与 UI 探针

development榜 #5

基于 simctl 与 idb 的 Node.js CLI 封装,支持 iOS 模拟器生命周期管理、应用安装启动、UI 无障碍自动化及截图录屏。专为 AI 代理设计,输出结构化 JSON,需 macOS + Xcode 环境。

收藏
11.5k
安装
3.8k
版本
0.1.2
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

iOS Simulator Automation 是面向 AI 代理的 Node.js CLI 工具,封装 Apple 原生 simctl 与 Facebook 开源 idb,提供完整的 iOS 模拟器自动化能力。

基础流程health 环境检测 → list/select 设备管理 → app install/launch 应用部署 → ui * 无障碍交互 → screenshot 取证归档。支持通过 .ios-sim-state.json 维持会话状态,避免重复指定 UDID。

UI 自动化(需 idb):基于 Accessibility Tree 实现语义化操作,支持 ui tap --query "Login"ui type --text "input"ui button HOME 等指令,相比坐标点击更具鲁棒性。ui tree 输出完整可访问性树,但默认限流以控制 token 消耗。

关键特性

  • 三级安全分层:SAFE(查询/截图)、CAUTION(隐私/推送)、DANGEROUS(抹除/删除需 --yes
  • Token 优化设计:默认单行 JSON, --pretty/--text 按需展开,大输出命令显式 opt-in
  • 远程 macOS 节点支持:非 Darwin 网关可通过 ClawdBot 节点执行透传

显著优点

1. AI 原生设计:结构化输出、状态持久化、错误归一化,降低 LLM 解析成本
2. 语义化 UI 自动化:idb 驱动的无障碍树操作,比传统坐标点击更适配动态布局

3. 完整生命周期覆盖:从设备创建、系统镜像管理到应用调试、隐私授权、推送模拟一站式解决

4. 安全可控:命令分级 + 强制确认机制,降低误操作风险

潜在局限

  • 平台锁定:必须 macOS + Xcode,Windows/Linux 仅能通过远程节点间接使用
  • idb 依赖较重:Python/pip 安装链,版本兼容性偶发问题;无 idb 时 UI 自动化完全不可用
  • 企业级功能缺失:无性能压测(如 FPS/CPU 细粒度监控)、无多设备并行编排、无 CI 原生报告格式
  • 状态文件局限.ios-sim-state.json 按工作目录隔离,跨目录会话不共享

适合人群

  • iOS 开发/测试工程师构建自动化验收流程
  • QA 团队快速复现用户上报的特定系统版本问题
  • AI Agent 开发者需程序化操控 iOS 模拟器进行应用探针或数据采集

常规风险

| 风险点 | 说明 |
|--------|------|
| 数据丢失 | `erase`/`delete` 不可逆,虽有 `--yes` 强制确认,但脚本逻辑错误仍可能导致误删 |
| 隐私泄露 | `clipboard get` 可读取模拟器剪贴板,含敏感信息时输出日志可能外泄 |
| 环境漂移 | Xcode 版本升级后 simctl 行为变化,idb 与 iOS 版本不匹配导致 UI 树解析失败 |
| 远程执行 | 跨节点调用时路径映射、文件同步易出错,大体积 .app 传输带宽敏感 |

iOS Simulator Skill 内容

暂无文件树

手动下载zip · 13.9 kB
contentapplication/octet-stream
请选择文件