Agent Touch Layer

📱 iOS 模拟器自动化,零视觉成本精准操控

iOS 模拟器自动化框架,支持 Safari 浏览器与原生 App 双模 HTTP 控制,无需视觉模型即可通过标记系统实现坐标级精准交互。

收藏
7.3k
安装
2.5k
版本
0.1.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

ATL (Agent Touch Layer) 是专为 iOS Simulator 设计的 HTTP 自动化层,通过双端口架构实现对移动端浏览器(Safari)与原生应用的双模控制:

  • Browser Server (9222):面向移动网页自动化,支持 goto 导航、markElements 标记交互元素、clickMark 按标记点击、JavaScript 注入等标准浏览器操作
  • Native Server (9223):面向任意 iOS 原生应用,基于 XCTest 的 accessibility tree 实现 openApp 启动应用、snapshot 获取可交互元素树、find/tapRef 精准定位点击

典型工作流:启动 Simulator → 部署 AtlBrowser 应用 → HTTP API 控制页面导航/应用启动 → markElementssnapshot 获取元素坐标 → 精准点击/输入/截图 → 验证状态。

显著优点

1. Vision-Free 自动化:独创 markElements + captureForVision 组合,为页面元素自动添加数字标记并返回带文本层的 PDF,AI 无需调用视觉模型即可获知"元素在哪里"与"页面上写了什么",显著降低 token 成本与延迟
2. 双模统一架构:同一套 HTTP API 同时覆盖浏览器与原生应用,无需切换工具链

3. 坐标级确定性:基于标记系统的像素级坐标(x,y)点击,避免视觉模型对按钮边界的误判,同一页面结果可复现

4. 零侵入测试:基于 iOS accessibility tree,无需修改被测应用源码即可自动化任意 App

潜在缺点与局限性

  • macOS/Xcode 强依赖:仅能在 macOS 环境运行,需完整 Xcode 工具链与 iOS Simulator,Windows/Linux 用户无法直接使用
  • 部署门槛较高:首次使用需克隆仓库、编译 Swift 项目、配置模拟器 UDID,对非 iOS 开发者不够友好
  • 稳定性风险goto 导航存在已知问题(文档明确标注需用 JS 注入替代),Simulator 状态异常时需手动重启应用
  • 模拟器局限:无法操作真机,部分依赖硬件传感器的场景(相机、GPS 精确定位)无法完整还原

适合人群

  • iOS/macOS 开发者进行移动端自动化测试
  • AI Agent 研究者需要低成本、高确定性的移动端交互环境
  • 需要同时验证 Web 与原生 App 行为的跨平台测试场景

常规风险

1. 网络端口暴露:9222/9223 端口监听本地,多用户共享 macOS 环境时需防范端口冲突与未授权访问
2. Simulator 状态漂移:长期运行后可能出现内存泄漏或应用无响应,建议工作流中加入健康检查与自动重启机制

3. API 变动风险:项目处于活跃开发期(GitHub 仓库),HTTP API schema 可能随版本迭代调整

Agent Touch Layer 内容

scripts文件夹
手动下载zip · 10.9 kB
setup.shtext/x-shellscript
请选择文件