macOS Computer Use 的进化:从盲目的 AppleScript 到觉醒的 Peekaboo
你是否曾经尝试过让 AI 帮你操作 Mac?
在很长一段时间里,我们的选择非常有限:要么是编写晦涩难懂的 AppleScript 脚本,祈祷目标应用恰好支持 Scripting Bridge;要么是用 Python 模拟死板的坐标点击,一旦窗口移动,整个流程就会瞬间“翻车”。
随着开源项目Peekaboo的出现,macOS 的自动化终于迎来了它的“觉醒时刻”。
一个反直觉的类比:从“盲人摸象”到“眼明手快”
如果把传统的自动化比作“盲人摸象”,那么 Peekaboo 就是给 AI 戴上了一副高精度的眼镜。
传统的 AppleScript 依赖于应用开发者预定义的指令。如果一个应用(比如很多基于 Electron 的现代应用)没有提供完善的脚本接口,AI 就成了一个空有大脑却无手眼之力的废人。
Peekaboo 的核心逻辑是:既然人是用眼睛看屏幕、用手操作 UI 来使用电脑的,为什么 AI 不行?
它绕过了脆弱的应用原生接口,直接通过 macOS 的 Accessibility API(辅助功能接口)和屏幕截图,将整个操作系统变成了一个可感知的结构化世界。
拆开看:Peekaboo 是如何工作的?
Peekaboo 的强大源于其精妙的架构。它不仅仅是一个点击工具,更是一个标准化的“感知网关”。
它的三个核心组件构成了 AI 的“手”和“眼”:
- AXorcist: 这是 Peekaboo 的核心,它能够将杂乱无章的 Accessibility Tree 转化为 AI 易于理解的 JSON 快照。它知道哪个是按钮,哪个是输入框,甚至知道它们当前的数值。
- Visual Grounding: 通过高精度的屏幕截取,它将视觉坐标与 UI 元素 ID 进行匹配。这意味着 AI 可以直接说“点击那个‘发送’按钮”,而不是“点击坐标 (450, 890)”。
- MCP (Model Context Protocol) 集成: 这是 Peekaboo 现代性的体现。它作为一个标准化的 MCP 服务器,可以无缝接入 Claude Code、Cursor 等主流 AI 开发环境。
See-Decide-Act:闭环操作的艺术
对于 AI 而言,操作 Mac 不再是发送一段孤立的指令,而是一个持续的感知闭环。
如图所示,Peekaboo 构建了一个完整的 See-Decide-Act 循环:
- See: Agent 调用工具“观察”屏幕,Peekaboo 返回带有注释的截图和结构化的 UI 树。
- Decide: Agent 根据视觉和结构信息,决定下一步是点击、输入还是滚动。
- Act: Peekaboo 模拟真实的合成输入(Synthetic Input),像真人一样操作鼠标和键盘。
这种闭环确保了即使窗口在操作过程中发生了轻微位移,AI 依然能精准锁定目标。
它不解决什么:边界与未来
虽然 Peekaboo 极大地降低了 Mac 自动化的门槛,但它并非万能。
目前,对于完全自定义绘图、不遵循 Accessibility 规范的应用(如部分大型 3D 游戏),它依然需要回退到纯视觉的坐标计算。此外,频繁的屏幕截取和 UI 树解析对系统资源也有一定开销。
但 Peekaboo 的出现,标志着我们离“自动驾驶的 Mac”又近了一步。它不再是死板的代码调用,而是让 AI 真正像人类一样,理解、思考并掌控它面前的这台机器。
