用途:用无障碍优先的方式在 iOS 模拟器上做 UI 自动化,通过 xclaude-plugin 提供的 execute_idb_command MCP 工具完成元素查找、点击、输入、手势和状态校验。核心原则是先查无障碍树,截图仅作兜底,官方给出的对比是约3-4倍更快、约80%更省 token,且不受主题变化影响。
主要能力:check-accessibility 检查无障碍支持质量;describe 获取无障碍树(返回元素的 label、type、value、frame、centerX/centerY、enabled、visible),用 centerX/centerY 作为点击坐标;find-element 按查询搜索元素;tap 点击;input 输入文本或按键(return、home、delete、space、escape、tab、方向键等);gesture 执行滑动(up/down/left/right,可设 duration)与按键(HOME、LOCK、SIRI、SIDE_BUTTON、APPLE_PAY、SCREENSHOT、APP_SWITCH)。
使用方式:所有操作都通过 execute_idb_command 调用,如 {"operation":"describe","target":"booted","parameters":{"operation":"all"}};点击用 {"operation":"tap","target":"booted","parameters":{"x":187,"y":425}}。标准流程为:describe 找元素→tap 聚焦→input 输入→describe 验证。常见模式包括登录流、导航点击、逐字段填表、先滑动再查找。
适用场景:模拟器上的表单填写、登录、导航、滚动查找与状态校验等常规 UI 交互。
限制:不能回退到 bash 的 idb 命令,若 MCP 工具失败应调整参数重试。无障碍质量差、需要视觉校验、元素不在无障碍树中(自绘 UI、Canvas/游戏元素、部分第三方组件)时才使用截图。截图配合 idb-ui-tap 时可能需要坐标缩放,用 applyScreenshotScale 与 screenshotScaleX/Y,但无障碍优先下很少需要。