
agent-desktop 是 Vercel Labs 出品的开源桌面操作工具,以 Apache-2.0 协议发布,让 AI Agent 通过操作系统的无障碍树读取并操作 macOS、Windows、Linux 上的原生应用。它不截图、不做像素匹配,而是把界面元素解析成带引用标识的 JSON,让调用方 Agent 对这些引用做点击、输入、滚动,再读一次界面复核。项目以 npm 包全局安装,同时提供 CLI、C library 和 MCP server,循环逻辑留在调用方 Agent 一侧,工具本身不内置模型。这套做法把”看屏幕、做动作、再确认”标准化成一组可脚本化命令,也让跨平台应用的桌面自动化不再依赖截图识别,作为开源软件项目它的许可证与平台适配都对调用方完全开放。
场景痛点
让本地 AI Agent 操作桌面软件,过去大多走”截屏—视觉模型认图—点坐标”的路线。这条路在高分屏、缩放和多窗口之间容易认错按钮,模型还要为每一步截图消耗大量 token。无障碍树本来就是操作系统给读屏软件准备的结构化接口,但很少有 Agent 工具直接把它当成一等输入。agent-desktop 把无障碍树原样暴露成 JSON,让 Agent 对着稳定的元素引用下指令,而不是对着像素猜,对AI应用类桌面自动化是一条更省 token 的路径。

主要功能特点
读无障碍树,不做像素匹配
snapshot 命令把目标应用的交互元素连同角色、状态吐成 JSON,每个可操作元素带一个形如 @s8f3k2p9:e8 的 ref,ref 嵌着本次快照 id。Agent 直接引用节点,不需要描述按钮长相。它对高分屏和主题切换天然不敏感,读的是元素身份而非画面位置,开源项目README 把这套循环讲清楚了。
ref 引用与动作循环
拿到 ref 后,click 对该元素执行点击,输入、滚动、右键都走同一种引用方式,每个命令返回 JSON envelope。界面变了会返回 STALE_REF,重新 snapshot 即可;裸写短 ref 会报参数错误。PowerShell 下 ref 要加单引号,Agent 只在错误码标注安全重试时才重发,这套机制写在GitHub仓库的 skills 指引里。
headless 默认不抢焦点
动作默认 headless 执行:不移动鼠标指针、不改变窗口焦点,直接通过无障碍接口下指令。Agent 后台操作时用户还能继续用电脑,窗口不会突然跳到前台抢键盘。需要模拟真实键鼠的旧软件场景,加 –headed 切到物理输入路径即可。status 命令列出平台与权限,这套默认值对效率工具日常使用很友好。
CLI、C library 与 MCP server
mcp 子命令通过 stdio 把每个命令暴露成 MCP 工具,命名如 desktop_snapshot 等,全局 flag 对每次调用生效。每个 release 附带 C ABI 动态库,Python 可用 ctypes 进程内调用。CLI 与动态库共用同一个 core,MCP host 装完即用,区别于同类开发者工具、归在AI工具目录下。
跨三平台原生适配
core 按平台分发:macOS 走 AX API,Windows 走 UI Automation,Linux 走 AT-SPI。二进制按编译期 OS 构建,覆盖 macOS 13+ 至 Ubuntu 24.04+。平台页列清哪些动作能 headless,对桌面软件自动化三端语义对齐,差异以实用软件官方页为准。
权限、隐私与已知边界
README 提醒:snapshot、剪贴板、截图、命令输出可能含私人桌面内容,不要放进公开日志。四个长按命令在 daemon 完善前暂拒。工具不内置模型,循环由调用方 Agent 决定。可装现成 skill 或在 AGENTS.md 里让 Agent 首用前跑指引,适合稳定桌面自动化的工具推荐场景,归入酷软趣站目录。
项目地址
官网 访问
GitHub 访问
下载地址
https://pan.quark.cn/s/dcd1b122e4e1
https://www.guangyapan.com/s/1965247400328351836_aeWhI5wocgzRgCO6 (光鸭新用户注册福利:永久免费空间:所有新用户注册即可解锁 2TB 永久免费存储空间,无需额外任务或付费)
相关推荐







