
给 AI Agent 接上“手眼”这件事,Vercel Labs 给了一个很直接的答案:agent-desktop,一个让 AI Agent 读懂并操作桌面应用的开源命令行工具。它登上了今天的 GitHub Trending 日榜第一,约 9,944 星,Apache-2.0 协议开源。

不靠截图识像素,靠系统无障碍树
市面上多数电脑操作方案是让模型看截图、猜坐标点。agent-desktop 换了一条路:通过操作系统自带的无障碍树(accessibility tree)读取桌面应用,返回一份带编号的 JSON 快照,Agent 对编号下指令,再抓一次快照验证结果,整个循环由 Agent 自己的流程驱动。
好处很实在:不用像素匹配,定位更稳;操作不依赖鼠标指针位置,默认无头执行,不抢焦点、不移动鼠标;每一步都有结构化的验证,Agent 能知道自己到底点中了没有。
三步上手
在 macOS、Windows 或 Linux 上用 npm 安装:
npm install -g agent-desktop
agent-desktop version
也可以从 GitHub Releases 下载对应平台的原生包直接运行。装好后先看权限要求:macOS 需要授予辅助功能权限(agent-desktop permissions --guide 会给出指引),Windows 在与终端相同的完整性级别下无需额外授权,Linux 需要图形会话与 at-spi2-core。
基本用法是“看一眼、动一下、再看一眼”。以 Finder 为例:
agent-desktop snapshot --app Finder -i # 列出可交互元素,每个带一个 ref
agent-desktop click @s8f3k2p9:e8 # 对快照里的 ref 操作
agent-desktop snapshot --app Finder -i # 再抓一次快照验证
需要注意两点:ref 只属于它所在的那次快照,界面变了就要重新抓,过期操作会返回 STALE_REF;应用界面元素太多时,先用 snapshot --skeleton 画个骨架,再钻进某个区域细看。
一个工具,60 条命令
agent-desktop 一共提供 60 条命令,分成几组:观察(snapshot、find、get、screenshot 等)、按 ref 操作(click、type、scroll、select 等)、键盘鼠标、应用与窗口管理、通知、剪贴板、等待、会话与系统。覆盖了日常桌面操作的绝大多数动作。
它还自带给 Agent 用的技能文档,工具里直接能取:
agent-desktop skills get desktop # 操作循环、ref 规则与重试方法
agent-desktop skills get platform # 当前系统的能力差异
也可以用 npx skills add 把技能装进 Claude Code 这类 Agent 工具里,或在 AGENTS.md 里写一行说明让 Agent 主动调用。每个 Release 还附带 C 语言库 libagent_desktop_ffi,程序可以在进程内直接调用,不必每次拉起 CLI。
适合谁用
最直接的用法是给编程 Agent 补上操作电脑的能力:跑测试要反复点应用、在多个软件之间搬数据、做跨应用的自动化流程,都可以交给 Agent 在桌面上直接做。搭配 能记住上个会话的 claude-mem 这类记忆插件,或者 把 Claude Code 变成游戏工作室的 49 个 Agent 模板,Agent 在桌面上的自主程度又高了一截。之前介绍过的 Magpie 是让 Agent 换模型跑,这次是给 Agent 一双能操作电脑的手,两件事正好互补。
提醒一句:快照、剪贴板读取、截图和命令输出里可能包含私人桌面内容,别放进公开日志和上传文件里。工具自带的可选屏幕描述助手会把画面描述发给配置好的模型服务,是独立于原生 CLI 的组件,用之前先看清它的数据处理说明。
转自 GitHub 作者 Vercel Labs 的文章《agent-desktop》,原文链接:https://github.com/vercel-labs/agent-desktop










暂无评论内容