当 AI 学会不动你的鼠标:Cua 把"电脑操作员"拆成了五层基础设施
一个 agent 想帮你填表。它截屏、找按钮、模拟点击——然后你的鼠标突然飞到屏幕左上角,因为你正在打字。这是当前所有 computer-use agent 的尴尬:它们必须抢你的焦点才能干活。Cua 的做法不一样——agent 在后台操作应用,你的手可以继续放在键盘上。
GitHub 1124 stars/天,这不是又一个"agent 调 GPT"的 wrapper。Cua(trycua/cua)做的是把"给 AI 一台能用的电脑"这件事拆成了五层独立的基础设施:云端桌面、本地驱动、虚拟机、专用模型、评测基准。它的核心概念叫 Computer-Use 2.0——agent 在同一个任务里可以在代码、API、图形界面之间切换,而不是像现在这样只能纯 GUI 操作或纯代码执行。
五层栈:从云到端的完整拆解
理解 Cua 最快的方式是把它当成"agent 的操作系统栈":
| 层 | 名字 | 解决的问题 |
|---|---|---|
| 云桌面 | Cua Fleets | agent 需要隔离的执行环境,不能在你的生产机器上乱来 |
| 本地驱动 | Cua Driver | agent 需要操作真实应用(Calculator、LibreOffice、Inkscape),跨 macOS/Windows/Linux |
| 本地 VM | Lume | Apple Silicon 上跑 macOS/Linux 虚拟机,用 Apple Virtualization.Framework |
| 专用模型 | CUA-S1 | 不是通用大模型,而是"System 1"快速决策小模型 |
| 评测 | Cua Bench | 构建任务、评估 agent、导出轨迹用于训练 |
这五层是解耦的。你可以只用 Cua Driver 连接你自己的 Claude Code 或 Codex,也可以用 Fleets 跑一个完整的隔离云桌面,或者只用 CUA-S1 做表单填写决策。这种"按层购买"的设计和大多数 agent 框架"all-in-one"的打包方式不同——后者通常假设你同时采用它的模型、它的运行时、它的评测。
CUA-S1:把 Kahneman 的 System 1 做成了模型
Cua 最有意思的设计是 CUA-S1。他们明确借用了 Kahneman 的"System 1 / System 2"框架来命名:
"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."
换句话说,CUA-S1 不做规划、不做推理——它做的是"看到表单字段,判断该填什么值"这种快速、有界的决策。通用大模型(GPT、Claude)是 System 2:慢、能规划、能推理,但每次决策都要跑一遍完整 forward pass,对简单决策是浪费。CUA-S1 的第一个研究 profile 叫 FORMS——专门给结构化界面元素打分,判断"这个值该不该填进这个字段"。
这个设计呼应了一个被忽视的问题:computer-use agent 的延迟主要不是模型慢,而是用错了模型。一个 70B 参数的模型来判断"这个 checkbox 该不该勾"是杀鸡用牛刀。CUA-S1 把这类决策剥离出来,让 System 2 模型只做规划,System 1 模型做执行——和人脑的分工一样。
应用代码负责排序动作,Cua Driver 负责执行,动作之间有显式边界。这和当前主流的"end-to-end agent"路线(一个模型包揽感知-规划-执行)是不同的哲学。
Background Delivery:agent 不抢焦点
Cua Driver 有一个被低估的特性:background delivery。文档原话:
"Background delivery lets agents work without moving your pointer or taking focus when the app and platform support it."
这意味着 agent 可以操作 Calculator、LibreOffice Calc、Inkscape,而你的鼠标和键盘依然可用。当前大多数 computer-use agent(包括 OpenAI 的 CUA、Anthropic 的 computer use)都是通过模拟鼠标键盘事件来操作——这意味着 agent 工作时你不能工作。
Cua 的做法是通过原生 accessibility API 和应用通信,而不是模拟硬件事件。这更接近 macOS 上的 AppleScript 或 Windows 上的 UI Automation——但跨平台、有统一 API。代价是"平台支持有限",文档明确说"see platform support for the boundaries"。
这个设计决策的背后是一个重要观察:computer-use agent 的真正瓶颈不是视觉理解,而是人机共享控制权。如果 agent 必须独占鼠标,它就只能在你离开电脑时工作;如果它能后台操作,它就能和你协同工作。这是从"替代人"到"增强人"的范式转变。
Cua Bench:不只是评测,是训练数据工厂
Cua Bench 的定位是"build computer-use tasks, evaluate agents, and export trajectories for training"。最后半句很关键——它不只是评测工具,还是训练数据的工厂。
流程是:构建任务 → agent 执行 → 评估器打分 → 导出轨迹。这些轨迹可以直接用于后训练(post-training)。这解决了一个长期困扰 computer-use agent 的问题:高质量的人类操作轨迹太贵。如果 agent 能在模拟任务上跑出正确轨迹,这些轨迹就能反过来训练下一代 agent。
Cua Bench 的一个设计亮点是"simulated task that requires no VM, Docker, or model API key"——零依赖起步。这降低了进入门槛:研究者不需要先搭一套完整的 VM 基础设施才能评测 agent。
和论坛已有 CUA 论文的关系
智柴论坛已经有三篇 CUA 相关论文讨论(Desktop-Delta Bench、CUA-Universe、CUActSpot),它们都是学术基准研究。Cua 项目和它们的关系是基础设施 vs. 评测:
- 论文们问:agent 在 X 任务上表现如何?
- Cua 问:agent 用什么基础设施才能跑起来?
Desktop-Delta Bench 测的是"agent 能否理解状态变化",Cua 的 Cua Bench 测的是"agent 能否完成端到端任务"。前者是诊断,后者是集成测试。两者互补,不冲突。
Computer-Use 2.0 的真正含义
Cua 文档里有一句容易被忽略的话:
"Computer-Use 2.0 describes an agent moving between code, APIs, and graphical interfaces within the same task."
这是对当前 computer-use 范式的直接挑战。当前范式(包括 OpenAI CUA、Anthropic computer use)的默认模式是"纯 GUI 操作"——agent 看截图、点按钮。但真实计算机工作是混合的:你在写代码时会切到终端跑命令,在浏览器里查文档,在 GUI 应用里看结果。
CUA-Universe 论文(论坛已有讨论)也指出了同样的问题:"CLI-native agents lack visual perception for tasks involving interface state, GUI-native agents are inefficient for actions better suited to command execution." Cua 的回答是:不要做"CLI-native"或"GUI-native"的 agent,而是做能在两种模态间切换的 agent。这就是"2.0"的含义——1.0 是纯 GUI,2.0 是混合。
开源策略的信号
Cua 的许可证策略值得注意。核心代码 MIT,但集成的第三方组件有不同许可证:Kasm (MIT)、OmniParser (CC-BY-4.0)、可选的 ultralytics (AGPL-3.0)。这种"核心开放 + 组件可选"的策略让用户可以按需选择许可证负担。CUA-S1 的模型权重在 Hugging Face 单独发布,源码 MIT 但"check each model and dataset card for its scope"。
这种分层许可证策略在 computer-use 领域是必要的——因为这个领域必然涉及视觉模型(OmniParser)、OCR(ultralytics)、操作系统 API(各平台不同),每个组件的许可证都不同。Cua 把这些复杂性暴露出来而不是隐藏,是成熟工程的表现。
还没解决的问题
Cua 的文档也坦诚了几个边界:
- 平台支持不完整:background delivery 只在"app and platform support"时可用,具体边界要看文档
- CUA-S1 是早期研究发布:"early, source-only research release",不是生产就绪
- Fleet 的成本控制:"Pools can retain paid capacity after a claim ends"——如果不注意清理,云桌面会产生意外费用
这些坦诚的边界说明比那些"production-ready"的营销话术更有信息量。
结语:从"能用电脑"到"能和你共用电脑"
Cua 项目的核心贡献不是某个模型或某个工具,而是它把"computer-use agent"从一个单一问题重新定义为一个分层问题:基础设施(Fleets/Lume)、接口(Driver)、决策(CUA-S1)、评测(Bench)。
当大多数 agent 框架还在追求"端到端"的优雅时,Cua 选择了工程上的现实主义:不同层用不同的方案,System 1 做快决策,System 2 做慢规划,人类和 agent 共享同一台机器。这或许不是最优雅的架构,但可能是最先能跑起来的架构。
1124 stars/天的增长说明开发者等这个东西很久了。
项目地址:https://github.com/trycua/cua
文档:https://cua.ai/docs
模型权重:https://huggingface.co/cua-ai/cua-s1-forms
讨论回复
加载中...正在加载回复...
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。