简报

开源项目17,246Apache-2.0

agent-desktop

生成
2026-11-06 14:08
首次公开
2026-11-06 13:40
本版公开
2026-11-06 14:17 · v2
来源
开源技术雷达

访问项目仓库

自动排版

Vercel Labs 维护的桌面 computer-use 命令行工具:不截图、不做像素匹配,读操作系统无障碍树,把当前界面变成带稳定 ref 的 JSON 树;agent 对 ref 点击/输入后再快照确认,循环推进任务。解决的是截图式 GUI 自动化的两个硬伤——分辨率与主题变化下的脆弱匹配,以及每步传整屏图像的 token 成本。

目录 · 11 节
  1. 项目介绍
  2. 主要应用领域
  3. 关键技术
  4. 实用价值
  5. 局限
  6. 开源协议
  7. 推荐理由
  8. 观测
  9. 专业社区口碑
  10. 类似项目推荐
  11. 原始阅读依据

项目介绍

agent-desktop 是 Vercel Labs 于 2026 年 2 月开源的桌面自动化工具,给 AI agent 提供「电脑操作」能力,但刻意绕开主流截图方案:读取目标应用的无障碍树,把窗口、控件、菜单、通知转为 JSON,每个可操作元素带 ref(如 @s8f3k2p9:e8),agent 用 click/type/set-value/toggle 等命令作用于 ref,再取快照确认结果。 安装有三条:npm 全局安装(含 x64/ARM64 原生二进制与平台助手)、GitHub Releases 下载原生归档、macOS/Linux 用 brew。装好先跑 status 看平台与权限,再用 permissions --guide 授辅助功能权限;授权对象是「启动它的那个 App」(终端、iTerm2、VS Code 或 agent 宿主),换启动器要重新授权。 能力分八组:观察(snapshot/find/get/is/screenshot/list-surfaces)、ref 动作(click/type/select/scroll 等)、物理键鼠、应用与窗口管理、通知、剪贴板、等待、会话与追踪;共 60 个命令名、56 个可直接运行,key-down/key-up/mouse-down/mouse-up 需守护进程支持。另有 MCP stdio 模式(agent-desktop mcp)把命令映射为 MCP 工具,以及 C 库 libagent_desktop_ffi 供非 Node 程序进程内调用。 默认 headless:ref 动作经辅助功能接口完成,不移动鼠标不切焦点,可在后台推进;需要物理输入时加 --headed。自带 agent 指南(skills get desktop/platform),可用 npx skills add 装入 harness。 边界清楚:要求无障碍接口能暴露元素;只做看与操作,不管登录态、业务规则与第三方平台条款。README 也提示快照、剪贴板、截图与调试产物可能含私密桌面内容,不应进公开日志。

主要应用领域

使用者多为构建自动化 agent 的开发团队与内部效率团队:在 macOS/Windows/Linux 驱动原生应用完成表单填报、批量导出、跨应用数据搬运、通知与剪贴板处理、窗口与启动管理;也可经 MCP stdio 或 C 库嵌入既有 agent 框架充当「手」。适合元素结构清晰、界面相对稳定的企业软件与自研客户端。

关键技术

Rust,按平台拆 crate(core/macos/windows/linux/ffi),edition 2024、rust-version 1.89、version 1.2.0;适配层对接 macOS AX、Windows UI Automation、Linux AT-SPI,上层共用一套核心与 PlatformAdapter 抽象。交互模型为快照—ref—动作—复核:ref 形如 @s8f3k2p9:e8,与快照 id 绑定,跨快照报 INVALID_ARGS,界面变化报 STALE_REF/AMBIGUOUS_TARGET;多窗口需 --window-id;密集界面用 --skeleton 摸底再 --root 钻取。默认 headless 走辅助功能 API,不移动指针不抢焦点,--headed 才走物理键鼠;动作后等待只观察 ref 所属进程与被钉住窗口。另有敏感输入 --stdin、错误带 disposition.retry、每命令单一 JSON envelope、内置 skills get desktop/platform 供 agent 读取当版规则。以上来自 README、Cargo 与官方文档,未安装运行,属文档与代码阅读层级。

实用价值

把 GUI 自动化从图像空间搬到结构空间:token 成本与稳定性优于整屏截图匹配;动作后强制复核使状态漂移可被发现而非静默失败;统一 JSON envelope 与 ref 语义免去按平台写不同逻辑。对自研或内部系统,它是少见的「按元素语义、而非按像素坐标」操作的开源实现,Apache-2.0、npm 与 brew 双渠道、并提供 C 库供非 Node 语言集成。

局限

一,能力全部建立在无障碍树能暴露元素之上:Canvas、WebGL、自绘控件、部分 Electron/Qt 定制渲染可能只有粗节点,且项目不提供截图或坐标兜底。二,ref 绑快照带来时间一致性成本,动态界面下快照次数与延迟上升。三,macOS 权限归属启动它的宿主 App,换终端或 IDE 需重新授权,截图路径另需屏幕录制权限,无人值守部署是运维负担。四,只解决「看得见、点得到」,不解决业务语义、风控与合规;headless 用 AXPress 意味着目标应用收到控件级动作而非物理输入,需留痕审计的系统须先评估。五,本次未实机验证,版本迭代快(10/30、11/03、11/05 连发三版)。

开源协议

Apache-2.0

仓库、Cargo 清单与 npm 包三方一致标注 Apache-2.0(SPDX),属宽松型许可:允许商用、修改、分发与私有部署,需保留版权与许可声明、标注修改,含专利授权条款;修改后对外提供服务不要求开源修改(区别于 GPL 类)。两点提醒:许可只覆盖代码,不覆盖官方素材、图标与商标,产品化时须自行确认品牌边界;npm 包内含各平台原生二进制与 platform helpers,随产品再分发时同样需满足声明与 NOTICE 保留要求。本报告未做法律审查,上述为条款阅读层面说明。

协议解读供选型参考,不构成法律意见。

推荐理由

适合作为自研或内部桌面应用的自动化基座,尤其当目标是稳定、可审计、低 token 的元素级操作;若要用于第三方成熟消费级客户端(微信、个人社交软件),先过规则审查——条款上就可能被禁止,技术评估没有意义。上手建议:先在非关键的自建应用做 snapshot 覆盖率测试,再决定投入。

观测

Star17246;观测时间:2026-11-06T06:08:35Z

可比变化46(2026-11-06T05:31:20Z — 2026-11-06T06:08:35Z)

开源代码

专业社区口碑

已核对社区来源

Hacker News 一次 2026-05-02 的 Show HN 讨论(99 points、45 条评论),已读要点三点:发布者可信度争议——作者承认帖文措辞为人机混合生成,有评论者据此质疑其余表述;平台覆盖——当时只有 macOS 可用,作者确认 Windows/Linux 在 roadmap,有评论者判断 Linux 无障碍(尤 Wayland)不足以支撑同类工具;对方向本身的正面评价,认为「如果能真跑起来是件大事」。样本单一、时间为 5 月,不代表当前 1.2.0 三平台状态下的整体口碑。

只有一条 HN 讨论串,未检索 Reddit、Lobsters 或中文社区;评论者多为旁观、未实际使用;无法量化正负比例;讨论早于 v1.0.2/v1.1.0/v1.2.0 三个版本。

正面反馈

有评论者认为该方向值得关注,评价为「如果能真正跑起来就是件大事」。

问题与争议

多名评论者指出当时只有 macOS 可用;作者回复 Mac 为 GA、Windows 与 Linux 在 roadmap;另有评论者认为 Linux 无障碍层(尤 Wayland)尚不完整。

问题与争议

有评论者怀疑 Show HN 帖文与部分评论由 LLM 生成,据此降低对描述的可信度评价;作者称内容为人机混合、AI 仅帮助措辞。

类似项目推荐

模型知识参考,未在线核验;名称、维护状态和许可证需另行核实。

Playwright / Puppeteer

同为自动化驱动,元素定位与等待机制是 ref 模型的近亲参照。

只覆盖浏览器 DOM,无法驱动原生应用;未在线核验,细节以官方仓库为准。

Microsoft UI Automation / macOS AX 客户端库

是它在 Windows 与 macOS 依赖的底层接口,也可直接调用。

需自写遍历、等待、重试与寻址逻辑,无 ref 快照与 agent 指南;门槛更高但可定制度更大。

截图驱动的商业 computer-use 产品

同一目标市场的另一条技术路线:视觉模型看截图 + 坐标点击。

对自绘界面更宽容,但 token 成本高、坐标漂移敏感、验证依赖模型判断;具体产品未核验,仅作路线对照。

原始阅读依据

  1. 1vercel-labs/agent-desktop 仓库页
  2. 2GitHub API 仓库元数据
  3. 3agent-desktop README
  4. 4agent-desktop Cargo workspace 清单
  5. 5npm registry:agent-desktop
  6. 6官方文档:agent-desktop on macOS
  7. 7Show HN: Agent-desktop(讨论串)
  8. 8agent-desktop 发布记录
  9. 9OSV 漏洞库查询(npm/agent-desktop)