跳到主要内容
返回时间线
vercel-labs/agent-desktop来源发表:

Vercel Labs 发布 agent-desktop:智能体改读桌面应用的无障碍树,按引用点击和输入

核心概要

Vercel Labs 发布 agent-desktop,让 AI 智能体在 macOS、Windows 和 Linux 上操作桌面应用时无需截图或像素匹配。它把应用的无障碍树读成 JSON,为每个可操作元素分配引用,智能体按引用点击或输入,再重新读取界面核对结果。工具以命令行和 C 库形式提供,本身不含模型,观察—动作—复核的循环留在智能体一侧。

AI-generated editorial illustration: vercel-labs / agent-desktop

深度剖析

AI 智能体操作桌面应用多了一条不依赖视觉的路径:agent-desktop 直接读取操作系统无障碍树,把界面元素连同可执行动作以 JSON 返回,智能体据此点击或输入。 agent-desktop 明确以不依赖截图和像素匹配的方式提供计算机使用能力,动作落在无障碍树给出的元素引用上。 工具在 macOS、Windows 和 Linux 上通过各平台的无障碍 API 工作,快照返回带引用编号的元素树,例如 Finder 的 Downloads 窗口快照列出 59 个引用。

智能体拿到的是带引用的界面快照,动作落在引用上,而不是屏幕坐标上。 引用绑定于生成它的那次快照,界面变化后旧引用会返回 STALE_REF 或 AMBIGUOUS_TARGET,需要重新快照。 默认以无头方式运行,引用动作走无障碍 API,不移动指针也不抢占焦点;全局 --headed 标志才启用物理输入。

观察、动作、再观察的循环由调用方实现,agent-desktop 自身不含模型。 命令行与 C 库共用同一核心,只通过 PlatformAdapter 接触操作系统,每个二进制对应一个平台的无障碍 API。 快照、剪贴板读取、截图、命令输出和调试产物可能包含私人桌面内容,需要避免进入公开日志和上传。

启示与展望

该工具面向需要在 macOS、Windows 和 Linux 上操作桌面应用的智能体开发者,以命令行和 C 库两种形式提供,并附带与二进制版本匹配的技能指南。材料只说明安装、快照、引用动作与错误处理方式,未给出任务完成率或与其他计算机使用方案的对比结果。

引用只在所属快照内有效,界面变化后动作会返回 STALE_REF 或 AMBIGUOUS_TARGET;多窗口场景需要从错误详情中选取窗口 id 并显式传入。快照、剪贴板、截图与调试产物可能含私人桌面内容,材料要求把它们排除在公开日志和上传之外。