乐于分享
好东西不私藏

CUA:给每个AI Agent一个云桌面,计算机使用代理的Docker时代来了

CUA:给每个AI Agent一个云桌面,计算机使用代理的Docker时代来了

大家好,我是左手,今天我们来聊一聊一个名为CUA的开源项目。它被称为”计算机使用代理的Docker”,但很多人对它有一个误解——以为CUA本身就是一个Agent。

💡 核心观点:实际上,CUA根本不是Agent,而是Agent的运行环境。今天,我们就来深度拆解这个项目,看看它到底解决了什么问题,以及为什么它比那些”全能Agent框架”更值得关注。

01CUA到底是什么?

核心定位:不是Agent,是Agent的基础设施

CUA(发音”koo-ah”)的官方标语很直白:“Give every agent a cloud desktop”(给每个Agent一个云桌面)。

这句话道出了CUA的本质——它是一个为AI Agent提供安全运行环境的平台,而不是Agent本身。

🚗 打个比方:

Agent是”司机”:负责思考、决策、执行任务

CUA是”汽车+道路”:提供安全的运行环境、操作系统、交互接口

CUA的核心理念是BYOA(Bring Your Own Agent)——你带来自己喜欢的Agent,CUA提供运行环境。

CUA的三层架构

🏗️ 第一层:虚拟化层(Lume)

基于Apple Virtualization.Framework的高性能虚拟化技术,在轻量级VM中运行完整的桌面操作系统。这是CUA的”地基”。

📦 第二层:沙箱管理层(Sandbox)

提供多操作系统支持(macOS、Windows、Linux、Android),负责环境隔离、快照管理、快速分叉。这是CUA的”核心”。

🔌 第三层:Agent SDK层

提供Python/TypeScript SDK,让任何Agent都能通过统一API控制沙箱内的计算机。这是CUA的”接口”。

CUA支持哪些Agent?

CUA的设计哲学是”不绑定任何Agent”,目前已支持的Agent包括:

  • Claude Code
    :Anthropic的代码助手
  • Codex
    :OpenAI的代码生成工具
  • OpenClaw
    :多渠道AI网关
  • Cursor
    :AI代码编辑器
  • Gemini CLI
    :Google的命令行工具
  • 自定义Agent
    :任何能通过MCP协议或HTTP API交互的Agent

💡 一句话总结:CUA不是来抢Agent的饭碗的,而是来给Agent们”盖房子”的。

02CUA能做什么?

📍 多平台沙箱支持

支持macOS、Windows、Linux、Android四种操作系统沙箱,可在云端运行,也可本地通过Docker快速启动。

async with Sandbox.ephemeral(Image.macos()) as sb;   # 云端macOS虚拟机

async with Sandbox.ephemeral(Image.windows()) as sb; # 云端Windows虚拟机

async with Sandbox.ephemeral(Image.android()) as sb;   # 云端Android虚拟机

async with Sandbox.ephemeral(Image.linux(), local=True) as sb;   # 本地Docker

🔒 安全的隔离环境

Agent在沙箱内自由操作,出错或遇到安全漏洞时,所有影响都被限制在沙箱内,不会波及主机系统和数据。

📸 环境配置与快照

自定义依赖、保存环境快照、快速分叉创建多个并行实例、热启动(快照恢复可在1秒内完成)。配置好一个完美环境,一键复制给多个Agent同时使用。

🎯 应用级控制(App-Use)

创建轻量级虚拟桌面,限制Agent只能访问特定应用,提高精确度,支持并行工作流。

🤝 复合代理(Composite Agents)

多个Agent协作完成复杂任务,通过字符串指定模型,无需为每个模型编写适配代码。

🌐 VLM路由器

一个API密钥即可访问Anthropic、OpenAI、Google、Microsoft、Alibaba等视觉语言模型。

🚀 实际应用场景

自动化测试、数据处理、网页操作、代码开发、并行任务、CI/CD集成

03为什么说CUA不是Agent?

这是理解CUA价值的关键。

CUA vs 传统Agent框架

维度
CUA
传统Agent框架
核心定位
运行环境/基础设施
智能体本身
是否包含AI模型
否,BYOA理念
是,内置或绑定模型
是否做决策
否,由Agent决策
是,Agent负责决策
提供什么
操作系统、沙箱、驱动
推理、规划、执行逻辑
类比
汽车+道路
司机

CUA的”不做什么”哲学

CUA团队很清楚自己的边界:

  • ❌ 不做Agent的推理逻辑
  • ❌ 不做Agent的记忆管理
  • ❌ 不做Agent的技能进化
  • ❌ 不做Agent的任务规划

CUA只做一件事:提供安全、可控、可复制的计算机操作环境。这种”有所不为”的克制,反而让CUA在垂直领域做到了极致。

04与OpenClaw、Hermes-Agent的对比

现在市面上有不少Agent框架,比如OpenClaw和Hermes-Agent。但需要明确的是:它们和CUA不是同类产品,而是互补关系

与OpenClaw对比

OpenClaw的定位:多渠道个人助理操作系统,以网关为核心,强调连接广度和人在中心的设计哲学。它是一个Agent运行时

维度
CUA
OpenClaw
产品定位
Agent运行环境
Agent运行时
核心能力
提供沙箱和计算机操作能力
多渠道消息集成和Agent管理
安全隔离
完整VM级沙箱
依赖手动配置
平台支持
macOS/Windows/Linux/Android
主要面向消息平台
部署方式
云端+本地Docker
本地部署为主
关系 可以为OpenClaw提供运行环境 可以运行在CUA沙箱中

✅ CUA的优势:

• 提供真正的操作系统级隔离,安全性更高

• 专为计算机使用场景优化,GUI操作能力更强

• 支持快照和分叉,环境管理更灵活

• 云端部署能力更成熟

💡 有趣的事实:CUA官方首页明确写着”Built for Claude Code, Codex, OpenClaw, and computer-use agents”——OpenClaw正是CUA的目标用户之一。

与Hermes-Agent对比

Hermes-Agent的定位:自进化Agent运行时,核心是内置学习循环,能自动创建和优化技能,越用越智能。它是一个Agent本身

维度
CUA
Hermes-Agent
产品定位
Agent运行环境
自进化Agent
核心能力
提供沙箱和计算机操作能力
自动学习与技能进化
技术栈
Python + 虚拟化
Python + FastAPI
安全设计
默认沙箱隔离
需手动配置
目标用户
需要GUI自动化的开发者
追求长期智能进化的用户
部署门槛
需要虚拟化环境
轻量化,低成本服务器即可
关系 可以为Hermes提供运行环境 可以运行在CUA沙箱中

✅ CUA的优势:

• 专注于计算机使用这一垂直场景,做得更深

• 安全沙箱是默认配置,开箱即用

• 环境可复制、可快照,适合生产部署

• 与Claude Code、Codex等开发工具集成更好

CUA的独特价值

1️⃣ 垂直深耕

不做万能Agent,专注做好”计算机操作环境”这一件事

2️⃣ 安全第一

VM级隔离是核心设计,不是事后补充

3️⃣ 生产就绪

快照、分叉、并行等特性面向真实生产场景

4️⃣ 模型无关

通过liteLLM支持多种AI模型,不被单一模型绑定

5️⃣ 生态兼容

与Claude Code、Codex、OpenClaw、Hermes等工具无缝配合

6️⃣ BYOA理念

Bring Your Own Agent,不锁定任何特定Agent

05快速开始:5分钟跑起来

前置条件:Python 3.12 或 3.13,免费的Cua账号(在 https://cua.ai 注册)

具体操作步骤:

第一步:安装CUA CLI和SDK

# 方式1:通过pip安装(推荐)

pip install cua-cli cua-computer “cua-agent[all]”

# 方式2:通过npm安装CLI

npm install -g @trycua/cli

第二步:认证登录

# 交互式浏览器登录(推荐)

cua auth login

# 或直接提供API密钥

cua auth login –api-key sk-your-api-key-here

# 导出API密钥到.env文件(用于SDK集成)

cd my-project

cua auth env

第三步:创建沙箱

# 创建Linux沙箱

cua sb create –os linux –size small –region north-america

# 创建Windows沙箱

cua sb create –os windows –size medium –region asia-pacific

# 查看所有沙箱

cua sb list

# 打开远程桌面(VNC)

cua sb vnc my-sandbox-abc123

沙箱规格选择

  • small
    :2核CPU,8GB内存,128GB SSD
  • medium
    :4核CPU,16GB内存,128GB SSD
  • large
    :8核CPU,32GB内存,256GB SSD

可用区域:北美、欧洲、亚太、南美

第四步:使用Computer SDK控制沙箱

from computer import Computer

# 连接到云端沙箱

computer = Computer(

    os_type=”linux”,

    provider_type=”cloud”,

    name=”my-sandbox-abc123″,

    api_key=”your-api-key”

)

# 启动计算机

await computer.run()

第五步:使用Agent SDK运行自动化任务

import asyncio

from cua_agent import Agent, Sandbox, Image

async def run_task():

    # 创建沙箱

    async with Sandbox.ephemeral(Image.linux()) as sb:

        # 创建Agent

        agent = Agent(

            model=”anthropic/claude-3-5-sonnet-20241022″,

            sandbox=sb

        )

        # 定义任务

        task = “打开浏览器,搜索Python教程”

        # 执行任务

        result = await agent.run(task)

        print(result)

asyncio.run(run_task())

第六步:本地Docker快速体验

# 使用Docker运行Linux沙箱

docker run -d –name cua-sandbox trycua/cua-xfce

# 连接到本地沙箱

python -c “

from computer import Computer

computer = Computer(os_type=’linux’, provider_type=’local’)

computer.run()

完整工作流示例

# 1. 登录

cua auth login

# 2. 创建沙箱

cua sb create --os linux --size small --region north-america

# 3. 导出环境变量

cua auth env

# 4. 运行你的Agent

python my_agent.py

# 5. 完成后删除沙箱

cua sb delete my-sandbox-abc123

CI/CD集成示例

# 在CI/CD管道中使用export CUA_API_KEY="sk-your-api-key"cua auth login --api-key "$CUA_API_KEY"cua sb create --os linux --size large --region north-americapython run_tests.pycua sb delete my-test-sandbox

总结

CUA代表了AI Agent发展的一个重要方向:Agent不需要自己”开车”,它们需要的是”好路”和”好车”

与OpenClaw的”连接一切”和Hermes-Agent的”自我进化”不同,CUA选择了一条更专注的路——把计算机运行环境这一场景做到极致。通过VM级沙箱隔离、多平台支持、快照分叉等特性,它为AI Agent提供了一个安全、可控、可复制的操作环境。

CUA不是来替代Agent的,而是来赋能Agent的。它让任何Agent都能安全地操作真实计算机,而不必担心环境配置、安全隔离、跨平台兼容等问题。

如果你需要AI帮你操作GUI应用、自动化桌面任务、或者在隔离环境中测试Agent行为,CUA绝对值得尝试。

AI Agent的Docker时代,也许就从CUA开始。

🔗 相关资源:

官方网站:https://www.trycua.com/

GitHub仓库:https://github.com/trycua/cua

文档中心:https://cua.ai/docs/