Cua 是一套让 AI 代理真正操作电脑的开源工具集。核心是 macOS 桌面应用 Cua Spaces,把本地或云端账号里的 macOS、Linux 虚拟机变成代理的独立桌面;配套的 Cua Driver 在 macOS、Windows、Linux 上提供截图、点击、输入和文件读写等能力,并尽量在后台投递操作,不抢占你的鼠标与焦点。项目还包括基于 Apple 虚拟化框架的本地虚拟机工具 Lume、统一管理沙箱的 SDK 与命令行,以及面向界面决策的小模型 CUA-S1 和评测基准 Cua Bench。你可以自带代理和模型,也可用官方组件拼出训练与评测流程。
pip install cuaGive AI agents computers they can use. Cua Spaces gives your agents full desktops on your Mac and on machines you own. This repository also holds Cua Driver for desktop automation, Lume for local VMs, CUA-S1 decision models and Cua Bench for evaluating computer-use agents.
[](https://cua.ai)
[](https://discord.gg/mVnXXpdE85)
[](https://x.com/trycua)
[](https://cua.ai/docs)
[](#cua-spaces)
[](#cua-driver)
[](#lume)
[](#cua-bench)
cua and create a local sandbox.Bring your own agent and model, or explore CUA-S1 for specialized decisions. Cua provides the computer and automation tools. Computer-Use 2.0 describes an agent moving between code, APIs, and graphical interfaces within the same task.
Cua Spaces is a desktop app that gives your agents full desktops. Each desktop is a Space: a macOS VM built locally on your Mac, or a Linux or Omarchy image. Spaces run on your Mac, on other machines you own, and in your own cloud account (AWS, Google Cloud or Modal), and the app keeps them in your menu bar and notch.
Install on macOS 26 or later
curl -fsSL https://cua.ai/install.sh | sh
On macOS the installer selects the Cua Spaces app by default and adds the cua CLI. You can also download the signed .dmg, or get the .pkg from the Cua Spaces 0.9.4 release.
Spaces is free for individuals. Pro is $18 a month and Teams is $30 per seat a month, available now from 1 seat. See pricing. The app is source-available under FSL-1.1-MIT.
Quickstart | Teleport an app | Share a Space | Host Spaces on a spare Mac (relay, Tailscale or SSH) | Your own cloud | App source
Give your agent tools to inspect and operate native desktop apps and browsers on macOS, Windows, and Linux. Connect through the CLI, MCP, or typed SDKs. Background delivery lets agents work without moving your pointer or taking focus when the app and platform support it; see platform support for the boundaries.
macOS / Linux
/bin/bash -c "$(curl -fsSL https://cua.ai/driver/install.sh)"
Windows (PowerShell)
irm https://cua.ai/driver/install.ps1 | iex
Your first result: connect your agent, ask it to compute 6 × 7 in Calculator, and have it verify that the app displays 42. The tutorial covers platform setup, permissions, and agent connection.
Using Claude Code, Codex, Cursor, OpenClaw, or another agent? Find your integration. Source documentation and architecture notes live in libs/cua-driver/README.md.
Two Cua Driver sessions select cells in LibreOffice Calc and objects in Inkscape on an Omarchy desktop while a terminal stays in the foreground. Watch the 50-second demo.
Create and manage local macOS and Linux VMs on Apple Silicon using Apple's Virtualization.Framework.
/bin/bash -c "$(curl -fsSL https://cua.ai/lume/install.sh)"
Your first result: create a vanilla macOS Tahoe VM from an Apple restore image, start it, and connect over SSH. The tutorial uses the Lume CLI directly and explains the unattended setup defaults.
One SDK and one cua command for local VMs and containers, and for any machine that runs cua-spacesd.
macOS / Linux
curl -fsSL https://cua.ai/install.sh | sh
Windows (PowerShell)
irm https://cua.ai/install.ps1 | iex
In a terminal the script first says what Cua Spaces is. The command-line tools (the cua program) are always installed; you choose whether to add the Cua Spaces app (on by default) and Cua Driver, which lets AI agents use your apps while you keep working (off by default). It then runs cua auth login, which signs you in and offers to set up your AI coding agents (Claude Code, Codex, Cursor, and others). The app asks on its first run whether your other devices may use this computer. Add Cua Driver with sh -s -- --select cua-driver, or skip the choice with --only cua-driver. See the installer options.
cua sb create ubuntu --name dev # a gVisor container, set up on first use
cua sb exec dev uname -a
cua sb screenshot dev
cua sb rm dev
The same sandbox from Python:
from cua_sandbox import Image, Sandbox
async with Sandbox.ephemeral(Image.linux(), local=True) as sb:
print((await sb.shell.run("uname -a")).stdout)
pip install cua), TypeScript (@trycua/cua), Swift (Cua) and Kotlin (generated bindings), running embedded in your process or through a shared cua daemon.cua host setup makes this machine reachable through the cua.ai relay with no port forwarding.CUA-S1 is our family of small, specialized System 1 models for computer use. We use "System 1" as an engineering analogy for fast, bounded decisions, such as choosing which value belongs in a field or whether to leave an element alone. It is not a strict classification of model architectures or a replacement for a general-purpose agent's planning and reasoning.
The first research profile focuses on forms: scoring decisions from structured interface elements and document values rather than generating a response token by token. Application code orders the actions, and the optional Cua Driver integration handles execution with explicit action boundaries.
The project includes Python model code, synthetic-data generation, training, and evaluation. The GitHub component is an early, source-only research release; model weights are hosted separately on Hugging Face. The source is MIT-licensed. Check each model and dataset card for its scope, limitations, and artifact-specific license.
CUA-S1-FORMS on Hugging Face: Model weights | Dataset
Build computer-use tasks, evaluate agents, and export trajectories for training. Start with a simulated task that requires no VM, Docker, or model API key.
With Python 3.12 or 3.13 and uv installed:
uv tool install 'cua-bench[browser]'
uv tool run --from 'cua-bench[browser]' playwright install chromium
Your first result: create a small task, run its reference solution, and verify that its evaluator reports a reward of 1.0. Then try the same task yourself.
| Package | Description |
|---|---|
| cua-driver | Background computer-use agent for macOS, Windows, and Linux |
| cua SDK and CLI | Rust core and the cua command: sandboxes, local runtimes, images, Spaces |
| cua (Python) | The cua SDK for Python (pip install cua) |
| @trycua/cua | The cua SDK for Node and the browser, plus @trycua/cua/spaces |
| Cua (Swift) | The cua SDK for Swift (SwiftPM, XCFramework) |
| cua-sandbox | High-level Python Sandbox/Image/Pool API, a thin wrapper over the cua SDK |
| cua-spacesd | In-sandbox daemon on port 3211: processes, files, desktop, streaming (gRPC) |
| Cua Spaces for macOS | The Spaces app on macOS: menu bar and notch, live streams, teleport, agent threads |
| Cua Spaces core | The shared Spaces app core, and the Tauri app for Linux and Windows |
| cua-bench | Benchmarks and RL environments for computer-use |
| lume | macOS/Linux VM management on Apple Silicon |
| lumier | Docker-compatible interface for Lume VMs |
Cua no longer maintains these. They will not receive updates or fixes, and existing releases stay on npm and PyPI. See Migrate from deprecated packages.
| Package | Registry | Use instead |
|---|---|---|
| cuabot | npm | Do not run it: it has known security issues. Stop it and uninstall it (how), then use Cua Driver or the cua CLI. |
cua-computer | PyPI | The cua SDK for sandboxes, Cua Driver for the machine you are on |
cua-computer-server | PyPI | Images that ship cua-spacesd, or Cua Driver |
| cua-agent | PyPI | A coding agent with the Cua Driver MCP, or sandbox.agents() in the cua SDK |
| cua-som | PyPI | Cua Driver |
If Cua supports your research, please cite the software:
@software{cua2025,
author = {{Cua AI, Inc.}},
title = {Cua},
year = {2025},
url = {https://github.com/trycua/cua},
license = {MIT}
}
For reproducibility, include the Cua release or commit used in your experiments. Citation metadata is also available in CITATION.cff.
We welcome contributions. See our Contributing Guidelines for details.
Everything outside Cua Spaces and Cua Driver Bench is MIT-licensed (LICENSE): the cua SDK and its Python, TypeScript, Swift and Kotlin packages, the cua command and cua daemon, Cua Driver, Lume and the rest of this repository unless a directory says otherwise.
Cua Spaces is source-available under FSL-1.1-MIT: the Spaces apps, cua-spacesd, the Cua Keyvault, teleport, Cua Volume (cua-volume) and the streaming client, codecs and viewers. The streaming wire protocol stays MIT. It is free to use, self-host and build on, with no competing hosted service, and each release becomes MIT two years after it ships.
Cua Driver Bench (libs/cua-driver-bench) is under the same FSL-1.1-MIT; versions published before 11 Oct 2026 (#4973, #4978) were MIT.
The MIT parts never depend on the FSL parts. Some subdirectories carry their own licence; LICENSING.md lists each one and how the two fit together.
Offering Spaces, or Cua Driver Bench, as a hosted or managed service? See COMMERCIAL.md. For use of our names and logo, see TRADEMARKS.md.
Third-party components have their own licenses:
cua-som is an optional package licensed under
AGPL-3.0-or-later. Its Ultralytics dependency retains its own license; inspect
the resolved dependency version and its notices before redistribution.cua-perception extension is installed separately from the MIT
Cua Driver, from the signed assets of a cua-perception-v GitHub
release. Each release combines an AGPL-3.0-only OmniParser model artifact,
Apache-2.0 PP-OCR model artifacts, and a separately packaged ONNX Runtime.
The extension is not MIT licensed. Redistributing it, or offering it
to users over a network, can trigger AGPL-3.0 source obligations. Cua does
not relicense the detector and cannot grant other terms for it. Read the
perception third-party notices and precautions
before you install, redistribute, or host an extension artifact.Apple, macOS, Ubuntu, Canonical, and Microsoft are trademarks of their respective owners. This project is not affiliated with or endorsed by these companies.
Thank you to all our GitHub Sponsors.
内容由编辑整理,部分信息来自 GitHub 与项目官网,版权归原作者所有。发现错误?报告问题