项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
技术标签
使用教程
—
环境要求
- Python 3.12+(桌面任务必需)
- 需能访问配置后端的模型 API Key(如 OPENAI_API_KEY 或 ANTHROPIC_API_KEY)
- 桌面任务需要 Docker,并已获得 OSWorld-V2 任务与资产快照的 Hugging Face 授权访问
- 需要本地克隆 CUAWright 源码仓库以便 pip install -e . 安装
安装与启动步骤
-
1克隆源码仓库
从 GitHub 拉取 CUAWright 源码并进入项目根目录,后续所有 install 命令都在这个目录里执行。
git clone https://github.com/microsoft/CUAWright cd CUAWright -
2安装浏览器版依赖
以可编辑模式安装项目本体,README 的 Browser Quick Start 中给出的命令就是这一条。
pip install -e . -
3安装 Chromium 浏览器
用 Playwright 安装 Chromium,供浏览器自动化运行时启动真实浏览器。
playwright install chromium -
4导出模型密钥
为所选后端导出密钥:model_openai.yaml 配 OPENAI_API_KEY,model_claude.yaml 配 ANTHROPIC_API_KEY。
export OPENAI_API_KEY=sk-xxxxxxxx -
5跑浏览器脚本任务
用 -c 分别加载基础配置与模型配置,指定任务描述和起始网址,结果写入 outputs/default。
python -m cuawright.webwright.run.cli main -c base.yaml -c model_openai.yaml -t "Report the page title and the destination of its main link." --start-url https://example.com --task-id demo_openai -o outputs/default -
6安装桌面版依赖
如需在 Ubuntu VM 中执行桌面任务,先安装 desktop 可选依赖组,需 Python 3.12+ 与 Docker。
pip install -e ".[desktop]" -
7准备 OSWorld 环境
先在 Hugging Face 接受 tasks 与 assets 数据集访问,登录后下载固定版本源码、任务与 VM。
pip install huggingface_hub hf auth login cuawright setup osworld --root ~/.cache/cuawright/osworld-v2-2026.08.08 cuawright verify osworld --setup ~/.cache/cuawright/osworld-v2-2026.08.08/setup.json -
8运行桌面任务
用 --setup 指向 setup.json,--credentials 指向权限 0600 的密钥文件,results 用父目录已存在的新目录。
cuawright desktop run --setup /absolute/path/to/setup.json --credentials /absolute/path/to/api-key --results /absolute/path/to/results/custom --model YOUR_MODEL --instruction ""
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
OPENAI_API_KEY | 是 | 使用 model_openai.yaml 时的后端凭据,脚本式运行前需导出 | sk-xxxxxxxx |
ANTHROPIC_API_KEY | 否 | 使用 model_claude.yaml 时的后端凭据,二选一导出 | sk-ant-xxxxxxxx |
base.yaml | 是 | 基础运行配置,通过 -c 传入,可与其他配置叠加 | base.yaml |
model_openai.yaml | 是 | 模型配置,通过 -c 传入并与 base.yaml 组合使用 | model_openai.yaml |
--setup | 是 | 桌面任务指向 setup.json 的绝对路径 | /absolute/path/to/setup.json |
--responses-url | 否 | 接入其他 Responses 兼容提供商时传入其完整 API 地址 | https://api.example.com/v1/responses |
如何确认成功
浏览器运行后在 outputs/default 下生成可复用脚本与运行记录;桌面运行在 results 目录生成 manifest.json、trace.jsonl 与 result.json。
常见问题
Q:原来的 webwright 命令还能用吗?
A:可以。README 说明既有的 webwright 命令和 Python 导入仍然有效;浏览器任务用 cuawright web,桌面任务用 cuawright desktop。
Q:桌面任务额外需要什么条件?
A:需要 Python 3.12+、Responses 兼容的模型 API Key、Docker,以及在 Hugging Face 上接受 tasks 与 assets 的 gated 数据集访问授权。
Q:单独运行 image_qa、self_reflection 工具怎么配模型?
A:这两个工具默认用当前运行的模型;单独运行时要通过 --model-config 传入含 model: 设置的私有 YAML 绝对路径。
Q:官方评分任务怎么跑?
A:使用 cuawright desktop reproduce osworld,指定 --setup、--credentials、--results、--task-id 001、--model 与 --reasoning xhigh。
Q:模型密钥文件放哪里?
A:放在用户自有、权限 0600 的文件中,且位于源码、任务、资产和结果目录之外,避免随仓库或结果泄露。
注意事项
- 桌面运行不会导出单独的截图文件,Agent 查看的图片内嵌在 trace 中。
- 在 VM 内创建的文件不会自动复制回宿主机,需要自行处理产物导出。
- 结果目录要选一个新的、且其父目录已存在的路径。
- 除 OpenAI 外,可通过 --responses-url 接入其他 Responses 兼容提供商;官方任务 ID 与代理配置见 REPRODUCE.md。
核心亮点
- 在长周期 Web 任务基准上达到 SOTA,验证了框架在复杂多步场景下的有效性
- 同时覆盖浏览器与桌面两类环境,比纯浏览器自动化框架适用面更广
- 采用 SWE 风格工程化设计,任务拆解、状态与工具抽象清晰,便于二次开发和接入自定义模型
不足之处
- 项目较新、星标仍处成长阶段,长期维护与版本稳定性有待观察
- 桌面环境控制通常依赖特定操作系统与权限配置,跨平台开箱即用程度可能有限
适用场景
- 自动完成需要跨多个网站、多步骤填表与信息核对的业务流程
- 在桌面软件与浏览器之间来回切换的重复性办公操作自动化
- 作为研究平台评测和对比长周期 Web Agent 的规划与执行能力
替代项目
browser-use、OpenHands
下一篇:agentic-qe
同类项目推荐
n8n
开源
拖拽搭建自动化流程,轻松接入 AI 与 400+ 应用,搞定重复工作。
Fair-code workflow automation platform with native AI capabilities. Combine visual b···
EasyCLIProxyAPI
开源
图形界面一键配好 AI 代理,省去手写配置文件
A desktop GUI for CLIProxyAPI and a tool for automatically configuring popular AI ag···
feishu-docx
开源
让 AI 代理轻松读写飞书文档,双向转换 Markdown
Feishu/Lark Docs、Sheet、Bitable <-> Markdown | AI Agent-friendly knowledge base exp···
puppeteer
开源
用 JavaScript 轻松操控无头浏览器,搞定自动化测试与网页抓取。
JavaScript API for Chrome and Firefox
