cua
Cua Driver —— macOS 后台计算机操作
在后台驱动任意 macOS 原生应用 —— Agent 可以点击、输入、校验,而不会抢占鼠标、焦点或桌面空间(Space),甚至支持非 AX(Accessibility)表面,例如:
- Chromium Web 内容
- Canvas 工具(Blender、Figma、DAW、游戏引擎等)
可通过 CLI 或 MCP Server 与 Claude Code、Cursor 或自定义客户端集成。
每次会话都会记录为可回放轨迹(trajectory)。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/cua-driver/scripts/install.sh)"
完整工具说明、架构说明以及 Claude Code skill 已随包提供。
Cua —— 面向 Agent 的跨系统沙箱
构建能够:
- 读取屏幕
- 点击按钮
- 自主完成任务
的 Agent。提供统一 API,适用于任意 VM 或容器(云端或本地)。
pip install cua
# 需要 Python 3.11+
from cua import Sandbox, Image
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))
支持环境:
| 环境 | Linux 容器 | Linux VM | macOS | Windows | Android | 自定义镜像 |
|---|---|---|---|---|---|---|
| 云端 | ✅ | ✅ | ✅ | ✅ | ✅ | 🔜 |
| 本地 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
CuaBot —— 任意 Agent 的协作式计算机操作
cuabot 为任意编码 Agent 提供无缝的计算机操作沙箱:
- 窗口原生显示
- H.265 视频流
- 剪贴板共享
- 音频支持
npx cuabot
示例:
cuabot claude
cuabot openclaw
cuabot chromium
cuabot --screenshot
cuabot --type "hello"
cuabot --click <x> <y>
内置支持:
- agent-browser
- agent-device(iOS / Android)
Cua-Bench —— Benchmark 与强化学习环境
用于评估 computer-use Agent:
- OSWorld
- ScreenSpot
- Windows Arena
- 自定义任务
支持导出轨迹用于训练。
cd cua-bench
uv tool install -e . && cb image create linux-docker
cb run dataset datasets/cua-bench-basic --agent cua-agent --max-parallel 4
Lume —— macOS 虚拟化
基于 Apple Virtualization.Framework,在 Apple Silicon 上实现接近原生性能的虚拟机管理:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/lume/scripts/install.sh)"
lume run macos-sequoia-vanilla:latest
包(Packages)
| 包名 | 说明 |
|---|---|
| cuabot | 多 Agent 计算机操作沙箱 CLI |
| cua-agent | 面向计算机操作任务的 AI Agent 框架 |
| cua-sandbox | 沙箱创建与控制 SDK |
| cua-computer-server | UI 操作与代码执行驱动 |
| cua-bench | Benchmark 与强化学习环境 |
| lume | macOS/Linux VM 管理 |
| lumier | Docker 兼容接口 |
资源(Resources)
- 文档:指南、示例、API
- 博客:教程、更新、研究
- Discord:社区支持
- GitHub Issues:Bug 与需求
贡献(Contributing)
欢迎贡献代码,详见贡献指南。
许可证(License)
MIT License
第三方组件:
- Kasm(MIT)
- OmniParser(CC-BY-4.0)
- ultralytics(AGPL-3.0,可选)
商标(Trademarks)
Apple、macOS、Ubuntu、Microsoft 等为其各自公司的商标,本项目与这些公司无关联。
总结(隐含语义,非原文扩展)
这套体系本质上提供了三层能力:
-
Execution Layer(执行层) → Sandbox / VM / Device 控制
-
Perception Layer(感知层) → Screenshot / UI parsing / input
-
Evaluation Layer(评估层) → Bench / RL / trajectory
