智能体框架#设备操控

agent-desktop:Vercel 开源无障碍树驱动的桌面 computer use

Vercel Labs 开源 CLI:AI Agent 经无障碍树读写桌面应用,元素带 ref 可直接操作,无截图无像素匹配,三平台,Apache-2.0。

项目资料

GitHub Ecosystem
仓库地址github.com/vercel-labs/agent-desktop
许可证
Apache-2.0
主语言
Rust
星标
13,752
核查时间
2026-11-04

以上快照资料以核查当日为准,可能随版本或运营策略变化。

AI Agent 操作桌面应用的常见做法是截图加像素匹配——慢、脆、还看不清字。公众号「多次霸榜 GitHub」2026-11-04 推荐的 agent-desktop 是 Vercel Labs 的另一条路:读操作系统的无障碍树(accessibility tree),把桌面应用的结构返回成 JSON,每个可交互元素都带一个 ref,Agent 点 ref、再读一遍验证结果、循环往复。截至 2026-11-04 有 13,752 星(Apache-2.0),macOS、Windows、Linux 三端,npm/Homebrew 一条命令装,同时提供 CLI 和 C 库;引擎里没有模型——操作循环由你自己的 Agent 驱动。站内的 agent-browser-control 拆过浏览器侧的同一课题,agent-desktop 把它推到了整个桌面。

核心功能

  • 无障碍树快照:snapshot 返回整棵可交互元素树,每个元素带稳定 ref(如 @s8f3k2p9:e8),比截图省 token 也比坐标可靠。
  • ref 级操作:click、输入等命令直接作用在 ref 上,操作后重读快照验证——读、动、验的循环长在你的 Agent 里。
  • 引擎无模型:agent-desktop 不含任何 AI,只做看与动;接 Claude Code、Codex 等任意 Agent,判定全部留给模型。
  • 权限引导:permissions --guide 带你走完 macOS 辅助功能授权,status 一眼看清平台支持面。
  • CLI 加 C 库双形态:脚本走 CLI(JSON envelope 输出),集成走 C 库;npm、Bun、Yarn、pnpm、Homebrew 均可安装。

典型使用场景

  • 桌面应用自动化:让 Agent 在 Finder、Excel、自研客户端里完成批量整理、数据录入这类重复操作。
  • GUI 应用的端到端测试:无障碍树即测试断言源,比截图比对稳定得多。
  • 无障碍自查:你的应用在无障碍树里长什么样,Agent 读到的就是屏幕阅读器读到的。
  • 跨应用工作流:一条指令跨 Finder、终端、浏览器多个应用接力,ref 让「刚才那个窗口」在几分钟后仍能被准确点名。

快速上手

npm install -g agent-desktop
agent-desktop status                # 平台、权限、支持面
agent-desktop snapshot --app Finder -i   # 交互元素快照,每个带 ref
agent-desktop click @s8f3k2p9:e8         # 对 ref 操作
agent-desktop snapshot --app Finder -i   # 再读一次验证

macOS 需授予辅助功能权限,permissions --guide 分步引导;Linux 与 Windows 无此步骤。

小结

agent-desktop 适合要让 Agent 长期、稳定操作桌面 GUI 的开发者;游戏画面、自绘 UI 这类无障碍树覆盖不到的界面仍是截图方案的领地——它不替代 computer use 的视觉路线,而是补上「有树可读」的大多数场景。要点与边界:Apache-2.0、Rust 实现、三平台;隐私上 README 明说快照与剪贴板可能含敏感内容,别进公共日志;无障碍树的元素 ref 在应用重绘后会变,Agent 要靠重读而不是记忆。它和浏览器侧的 agent-browser-control 合起来,正好是「Agent 操作图形界面」的完整拼图:网页走浏览器自动化,桌面走无障碍树。