Cua 计算机使用代理指南把 AI 关进沙箱桌面里快速上手【免费下载链接】cuaScale computer-use 2.0 with open-source drivers, cross-OS fleets, and benchmarks for training, evaluation, and data generation.项目地址: https://gitcode.com/GitHub_Trending/cua/cua让 AI 替你点鼠标最容易被低估的坑不是点不准而是点完你的机器就乱了。Cua 把代理的桌面操作放进一次性沙箱用完即弃的隔离虚拟机也支持后台驱动你真机一套接口打通截图、点击、输入和 Shell覆盖 Linux、Windows、macOS 和 Android。它到底在解决什么问题先想三个没有它会怎样的场景。没有视觉理解大量老应用、设计软件、签了名的业务系统根本不给 APIGUI 就是唯一入口。你只能写死坐标或控件选择器界面一改版脚本全崩维护成本远超人工。没有安全隔离代理一定会犯错。它没有沙箱的话一次误点删除或误输命令就落进你的真机CI 里更糟——每个测试都依赖同一台机器的状态跑一遍结果就漂一次没法复现。没有跨平台一致性同样的截图→点击在 Docker 容器、QEMU 虚拟机、macOS 虚拟机里各有各的底层。没有统一接口你每换一个操作系统就得重写一遍输入注入和画面采集。说白了Cua 干的事就是给代理一个看得见、点得动、删得掉的计算机并且这个计算机在 Linux、Windows、macOS、Android 上长得一样。一条工作流跑通从截图到验证我们挑一个典型任务走一遍时间线让代理在 Linux 桌面里打开应用、填一个表单、点提交然后确认结果。整个过程是一圈循环每一圈大约耗时从百毫秒到几秒不等取决于 VLM会看图的 AI 模型的推理速度截图screenshot()从沙箱桌面抓当前画面容器环境里走远程显示栈虚拟机里走虚拟显卡。理解截图连同任务描述交给 VLM。模型看到的不是 DOM而是屏幕上有什么、按钮在哪。决策代理循环OpenAI / Anthropic / Omni 等 100 模型可插输出下一步动作——点 (100, 200)、输入文本或干脆跑一段 Shell 绕过 GUI。执行mouse.click()、keyboard.type()把动作注入沙箱。这里有个设计细节代码半区和 GUI 半区是同一台机器——代理可以先shell.run造一个文件再用鼠标去应用里打开它两者共享同一份文件系统。验证再截一张图让模型确认状态变了没变就重试或换路径。每圈的截图、动作、结果都会被录成轨迹操作回放录像方便事后回放和做训练数据。from cua import Sandbox, Image async with Sandbox.ephemeral(Image.linux()) as sb: # 换 .macos()/.windows() 即换系统 result await sb.shell.run(echo hello) shot await sb.screenshot() await sb.mouse.click(100, 200) await sb.keyboard.type(Hello from Cua!)环境选型藏在这一行里Linux 容器启动最快共享宿主内核全虚拟机QEMU、Hyper-V、Apple Virtualization启动慢一点但操作系统保真度高。macOS 虚拟机由 libs/lume/ 下的 LumemacOS 虚拟化器负责在 Apple Silicon 上接近原生性能。5 分钟上手怎么跑起来先装 SDK再开一个临时沙箱全程不超过三条命令。pip install cuaPython 3.11装完直接开沙箱试手python -c import cua; print(cua.__version__)import asyncio from cua import Sandbox, Image async def main(): async with Sandbox.ephemeral(Image.linux()) as sb: print(await sb.shell.run(uname -a)) print(await sb.screenshot()) asyncio.run(main())先做pip install再做Sandbox.ephemeral——用完async with自动销毁不留任何状态。想跑基准测试的话另装cua-benchCLI用cb task create搭一个模拟桌面任务无需 Docker 和 API key 就能验证全流程步骤见 docs/content/docs/tutorials/your-first-cua-bench-task.mdx。和 Selenium、Playwright、传统 RPA 差在哪维度CuaSelenium / Playwright传统 RPA界面理解VLM 读截图 无障碍树解析 DOM固定选择器/坐标覆盖范围桌面 GUI、浏览器、移动端基本只有 Web 页面单一桌面环境运行隔离一次性沙箱整机浏览器进程宿主进程界面变化后自适应重新决策选择器失效即崩脚本需人工修主要跑 Web 页面的话Playwright 更轻更成熟要碰原生桌面应用、老系统或者没有 API 的 UICua 这类计算机使用代理才真正派上用场。两者也不互斥——代理循环里完全可以让它浏览器部分走 DOM、桌面部分走截图。目前的边界与下一步坦白讲现在确实还有几处不太行Linux Wayland 原生应用收不到合成的键盘输入原始按键注入受限得走 XWayland 或前台兜底。全虚拟机启动明显慢于容器macOS 沙箱还绑死在 Apple Silicon 硬件上。复杂 UI 的语义理解精度很大程度取决于底层 VLM 本身框架不兜底。后台驱动是尽力而为少数应用只认真正的前台输入得逐动作升级回前台。接下来值得盯的本地模型接入的持续打磨上下文预算和推理吞吐对轨迹长度影响很大、多代理并行跑一个桌面任务、以及 BYOI 自定义镜像上云的路径。拆一个最有辨识度的点不打扰你的后台驱动有意思的是Cua Driver 驱动你真机时默认不抢你的鼠标。它在屏幕上层画一个假光标展示代理动作你的真光标和当前窗口原封不动。底层路径按平台挑最后台的方案macOS 走无障碍 API 窗口级画面采集Windows 走 UI Automation 按窗口句柄操作控件Linux 走 AT-SPI 语义动作。协议层用 MCP模型上下文协议over stdio所以 Claude Code、Cursor 这类编码代理可以当工具直接挂载。# 驱动本地应用的调用形态示意 tool(screenshot, {window: notepad}) # 只采目标窗口 tool(click, {element: 保存按钮}) # 经无障碍树直达控件 # 需要前台的动作会显式上报由调用方决定是否升级沙箱与真机驱动共用同一套动作语义这是它把可复现的评估环境和日常可用的自动化缝在一起的关键更多细节在 docs/content/docs/concepts/how-sandboxes-work.mdx。回到开头那个坑AI 点鼠标怕的不是点错是点错没地方兜底。如果你的任务要碰桌面 GUI——测试、数据搬运、老系统自动化——Cua 是目前少数能把隔离和跨平台同时交给你的选择。【免费下载链接】cuaScale computer-use 2.0 with open-source drivers, cross-OS fleets, and benchmarks for training, evaluation, and data generation.项目地址: https://gitcode.com/GitHub_Trending/cua/cua创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考