📌 项目地址trycua/cua | ⭐ 18,088 颗星 | 🔧 HTML | 📜 未标注

两个核心模块,一个共同目标

cua 项目为“计算机使用智能体”(Computer-Use Agent)提供完整的基础设施。它由两个层次构成:

  • Cua Drivers:在 macOS 和 Windows 的后台驱动原生桌面应用,AI 可以点击、输入、截图,但不抢夺鼠标光标和窗口焦点。Linux 作为预发布版本支持。
  • Cua:跨操作系统的沙箱 SDK,为每个智能体创建隔离的虚拟机或容器环境,支持 Linux、macOS、Windows、Android,并允许导入自定义镜像。

这两个模块既可以独立使用,也可以组合使用。

Cua Drivers:让现有 AI 工具直接操作桌面

如果你已经在使用 Claude Code、Cursor、Codex 或 OpenClaw 这类编码助手,可以通过安装 Cua Drivers 让它们直接操控你的桌面系统。

macOS / Linux 安装:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/cua-driver/scripts/install.sh)"

Windows(PowerShell)安装:

irm https://raw.githubusercontent.com/trycua/cua/main/libs/cua-driver/scripts/install.ps1 | iex

安装后,将其注册为 MCP 服务器(以 Claude Code 为例):

claude mcp add --transport stdio cua-driver -- cua-driver mcp

注册完成后,AI 助手就可以在后台操作你的桌面应用:打开浏览器、填写表单、操作设计软件、验证 UI 效果,整个过程不干扰你的正常操作。

Cua 沙箱:为训练和测试提供隔离环境

如果你需要批量训练或评估智能体,而不是在本人电脑上操作,cua 提供了统一的沙箱 API。

安装:

pip install cua

创建并操控沙箱(Python 3.11+):

from cua import Sandbox, Image

# 同一套 API 支持多种操作系统
async with Sandbox.ephemeral(Image.linux()) as sb:   
    # 或者 .macos() .windows() .android()
    result = await sb.shell.run("echo hello")
    screenshot = await sb.screenshot()
    await sb.mouse.click(100, 200)
    await sb.keyboard.type("Hello from Cua!")
    await sb.mobile.gesture((100, 500), (100, 200))  # 触控手势

支持的运行环境如下:

操作系统 云端(cua.ai) 本地(QEMU)
Linux 容器
Linux VM
macOS
Windows
Android
自定义镜像 (.qcow2, .iso) 🔜 即将支持

这种沙箱机制适合用作文本生成基准测试(如 OSWorld、ScreenSpot、Windows Arena)的数据采集环境,或作为强化学习的交互环境。

和同类工具的区别

目前业内已有一些让 AI 操作桌面的尝试,例如 Anthropic 的 computer use demo 和微软的 OmniParser。cua 的不同之处在于:

  1. 后台运行: Cua Drivers 不抢夺鼠标和窗口焦点,开发者可以在正常使用电脑的同时观察 AI 操作。
  2. 跨平台统一 API: 一套 Python SDK 覆盖五种操作系统,同一个 Sandbox 接口可以接本地 QEMU 或云端 cua.ai。
  3. 成熟度较高: 提供了一个可直接使用的 MCP 服务器,与主流 AI 编码助手直接对接,开箱即用。

需要注意的事项

  • Python 版本需 3.11 或更高。
  • Cua Drivers 通过系统 API 模拟输入,部分安全软件可能将其视为自动化操作工具。
  • macOS 和 Windows 的驱动安装需要管理员/root 权限。
  • Linux 作为 Cua Drivers 的后端尚处于预发布阶段,官方表示“平台测试仍在进行中”。
  • 沙箱的云端执行需要 cua.ai 账户,本地运行需要 QEMU 环境。

最快速的启动方式是:安装 Cua Drivers 并接入你已有的 AI 编码助手,让它在后台替你操作桌面应用。如果你需要大规模测试智能体,则可以进一步使用沙箱 API。

这篇文章对你有帮助吗?

发表回复