
Open Computer Use 点击原理深潜auto、accessibility、app_post、sky_click、global 五种点击模式怎么选【免费下载链接】open-codex-computer-use Open Computer Use – Open-Source Alternative to Codex Computer Use项目地址: https://gitcode.com/gh_mirrors/op/open-codex-computer-useOpen Computer Use 是一个开源的 Computer Use电脑操作工具让 AI 助手能像人一样点击、输入、滚动屏幕。它的click工具内置了 auto、accessibility、app_post、sky_click、global 五种点击模式理解它们的原理和适用场景能帮你在自动化任务中避开点了没反应的坑。这篇文章用通俗语言讲清每种模式的底层实现并给出一份快速选择指南。先搞懂一次点击是怎么送达应用的对 AI 自动化来说点击并不只有一种实现方式。macOS 提供了多条把输入事件送达应用的通道每条通道在是否移动真实鼠标、是否需要无障碍权限、能否穿透遮挡等方面各有取舍。Open Computer Use 把这五条通道封装成了click_method参数让你可以按需选择。核心路由逻辑在 ComputerUseService.swift五种模式的枚举定义也在这里模式底层通道移动真实鼠标平台支持auto智能选择默认视情况macOS / Windows / Linuxaccessibility无障碍 API 直接触发元素动作否macOS / Windows / Linuxapp_post进程定向事件投递否macOS / Windowssky_clickSkyLight 私有后台窗口通道否仅 macOSglobal系统级全局指针是macOS / Linux五种点击模式逐个拆解1. auto默认的智能路由不传click_method时就是auto。它的策略是语义优先优先走无障碍树找到目标元素并触发其动作如果无障碍树里找不到目标比如纯画布区域、Canvas 控件再根据坐标回退到鼠标事件。适合绝大多数场景——保持默认即可不必纠结。2. accessibility无障碍树直连最语义化这种模式要求你提供element_index来自get_app_state快照的元素编号通过系统无障碍接口直接调用该元素自身的动作相当于请按钮自己按下自己。✅ 优点不经过坐标元素稍微位移也不会点偏天然不移动鼠标。⚠️ 限制必须有元素索引某些应用会把点击重定向到它认为合理的子元素上。参数校验见 ComputerUseService.swift 中的validateClickMethod缺少element_index会直接报错不会静默降级。3. app_post进程定向投递绕过无障碍app_post把鼠标事件直接投递给目标应用进程macOS 上对应CGEvent.postToPidWindows 上对应窗口消息PostMessage不经过系统级指针因此真实鼠标纹丝不动。它的价值在于当无障碍模式会把你的点击改道给别的元素或者你要点的只是一个空白区域 / 覆盖层时app_post能精确命中指定坐标。实现细节见 InputSimulation.swift 的clickTargeted方法。局限事件不经过窗口服务器所以被其他窗口完全遮挡的应用可能收不到有效点击——这正是sky_click出场的地方。4. sky_clickSkyLight 私有通道专治遮挡这是 macOS 独有的黑科技模式通过 macOS 的 SkyLight 私有接口把点击投递给目标进程和目标窗口本身即使该窗口被别的窗口完全盖住也能生效。它模拟了 Chromium 浏览器接受的后台点击序列含窗口内坐标、窗口字段、primer 预备点击等。安全边界做得非常克制不移动系统指针、不改变前台应用、不提升目标窗口层级只支持左键单击 / 双击且目标窗口必须来自当前快照且仍在同一桌面空间内私有符号缺失、窗口 ID 过期、投递失败时一律直接报错绝不悄悄回退到其他模式。相关设计背景可阅读 20260722-add-sky-click.md 和 SkyClickSimulation.swift。5. global全局指针能力最强也最危险global模式走系统的 HID 全局事件通道也就是真的移动鼠标并点击。它能驱动那些只认全局 HID 输入的场景如部分 Canvas / 游戏 / 3D 应用因此是最后的兜底手段。代价是明显的真实指针会移动、前台焦点可能改变、坐标处的其他窗口可能被误点。所以 Open Computer Use 给它加了双重保险——必须显式传click_method: global并且进程环境里设置OPEN_COMPUTER_USE_ALLOW_GLOBAL_POINTER_FALLBACKS1两者缺一都会在执行前拒绝。安全设计说明见 SECURITY.md。一张图讲清选择逻辑 按下面的顺序尝试基本覆盖所有场景默认先用auto——90% 的任务到这里就成功了无障碍改道或需要点空白区域 → 切app_post目标窗口被遮挡、浏览器不响应app_post→ 切sky_click仅 macOS先重新get_app_state刷新窗口以上都不行特殊画布 / 3D 应用→ 开启环境变量后使用global用完后记得收窄作用范围。一个关键原则显式指定的模式永远不会静默回退。你选了app_post却点失败它会明确报错而不是偷偷改用global帮你圆场——这样你的安全边界始终成立。完整的使用示例见 usage.md。常见疑问速答 ❓普通用户需要关心这些吗不用。保持auto即可只有当自动化任务反复点了没反应时才需要按上文顺序排查。Windows 和 Linux 能用什么Windows 支持auto、accessibility、app_postLinux 支持auto、accessibility、globalsky_click是 macOS 专属。不支持的模式会返回稳定的 unsupported 错误而不是假装成功。sky_click会不会打断我在用的软件不会。它只让目标应用短暂进入合成激活状态点击完成后立即恢复前台应用、窗口层级和你的真实鼠标位置都保持不变。延伸阅读点击模式设计决策20260722-configurable-click-method.md焦点保持优化20260723-preserve-sky-click-focus.md输入模拟实现InputSimulation.swiftSkyLight SPI 封装SkyLightSPI.swift工具参数定义ToolDefinitions.swift【免费下载链接】open-codex-computer-use Open Computer Use – Open-Source Alternative to Codex Computer Use项目地址: https://gitcode.com/gh_mirrors/op/open-codex-computer-use创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考