【cua】一套让 AI 代理真正“用电脑”的开源工具链
Cua 是一个面向 AI 代理(Agent)的计算机操作基础设施项目,它让大模型驱动的程序能像人类一样真实地看屏幕、点按钮、敲键盘、拖动窗口,甚至在后台操控 macOS 原生应用——不抢焦点、不干扰用户,还能全程录屏回放。它解决的是当前多数 AI 代理只能调 API 或模拟文本交互,却无法可靠、安全、跨平台执行真实 GUI 操作这一核心瓶颈。
项目包含五大核心组件,各司其职:
- Cua Driver:专为 macOS 设计的后台驱动,支持在 Chromium、Figma、Blender 等非标准可访问性(non-AX)界面上完成点击、输入和视觉验证,全程不抢占光标、不切换桌面空间。
- Cua(Agent-Ready Sandboxes):提供统一 API 的跨平台沙箱 SDK,支持 Linux 容器/VM、macOS、Windows、Android 及自定义镜像(.qcow2/.iso),本地或云端均可运行。
- CuaBot:开箱即用的 CLI 工具,可一键为 Claude Code、OpenClaw 等编码代理挂载带原生窗口、H.265 流、共享剪贴板与音频的沙箱环境。
- Cua-Bench:面向计算机使用能力的评测框架,内置 OSWorld、ScreenSpot、Windows Arena 等基准测试集,支持轨迹导出用于强化学习训练。
- Lume:基于 Apple Virtualization.Framework 构建的高性能 macOS/Linux 虚拟机管理工具,专为 Apple Silicon 优化,支持快速拉起 macOS Sequoia 等镜像。
安装与使用示例如下:
-
安装 Cua Driver(macOS):
sh
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/cua-driver/scripts/install.sh)" -
安装 Cua Python SDK:
sh
pip install cua -
快速启动一个 Linux 沙箱并执行操作(Python 3.11+):
python
from cua import Sandbox, Image
async with Sandbox.ephemeral(Image.linux()) as sb:
result = await sb.shell.run("echo hello")
screenshot = await sb.screenshot()
await sb.mouse.click(100, 200)
await sb.keyboard.type("Hello from Cua!") -
启动 CuaBot 并运行 Chromium 沙箱:
bash
npx cuabot
cuabot chromium -
安装并运行 Lume macOS 虚拟机:
bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/lume/scripts/install.sh)"
lume run macos-sequoia-vanilla:latest
该项目适合以下场景:
– AI 工程师与研究员:需要构建、测试或评估能执行真实 GUI 任务的智能体(如自动化客服、软件测试、RPA 增强);
– 开发者工具链建设者:希望为自家代码代理(如 Cursor、Claude Code 插件)集成安全沙箱与桌面级交互能力;
– 教育与实验场景:在本地快速搭建跨操作系统、支持截图/点击/手势的可控实验环境;
– Apple Silicon 用户:需高性能 macOS 虚拟化方案(Lume)或后台无感操控原生 App(Cua Driver)的高级 macOS 用户。
总结:Cua 不是一个单一工具,而是一套模块清晰、生产就绪的计算机使用基础设施,覆盖从底层驱动(macOS)、沙箱运行时(多平台)、交互 CLI(CuaBot)、到评测闭环(Cua-Bench)的完整链条。其设计兼顾实用性与扩展性,尤其在 macOS 后台操作和 Apple Silicon 虚拟化方面展现出独特优势。对于希望让 AI 代理真正“动手做事”而非仅“动嘴说话”的开发者而言,这是一个值得关注且值得深入探索的开源项目。
