Computer Use 与 Browser Use:让助手操作界面
你让 AI 助手打开报名页面,填写姓名和参加方式,检查后停下。要做好这件事,助手需要看清页面、找到输入框、执行填写,再查看填写后的内容。
Computer Use 指通过电脑界面完成任务,可以涉及浏览器和桌面应用。Browser Use 主要处理浏览器里的任务。另外还有一个名为 browser-use 的开源项目,后面的源码导读介绍的是这个项目。
图中的过程是:看当前界面 → 选择动作 → 程序执行 → 再看结果。模型给出点击或输入请求,应用负责调用工具执行。Anthropic 的 Computer Use 文档说明了这一循环。
助手怎样看见界面
可以用截图,也可以读取控件的结构。几种办法提供的信息不同,还可以配合使用。
截图与坐标。 工具把界面截成图片,模型判断按钮的位置,执行程序按坐标点击。这适合很多视觉界面,包括部分没有完整文字结构的区域。点击前需要确认窗口和图片仍然对应;如果截图被缩小,坐标还要换算到工具使用的尺寸。Anthropic 的一个固定版本示例用 scale_coordinates() 做这一步转换。坐标转换示例
网页结构与辅助功能快照。 DOM 是网页的对象结构;辅助功能树通常提供控件的角色、名称和状态,例如“姓名输入框”和“已选中”。工具可以据此定位目标,再填写内容。Playwright MCP 主要提供结构化辅助功能快照,也支持截图。目标引用和选择器的用法,按实际工具版本使用。Playwright MCP 工具说明
浏览器协议。 Chrome DevTools Protocol,简称 CDP,可以查看网页结构、网络请求和调试信息。它帮助开发者追踪“点击后页面为什么没有更新”。Chrome DevTools MCP 将其中一些能力提供给 Agent,也支持浏览器自动化和性能检查。CDP 规范 · Chrome DevTools MCP 功能
操作系统辅助功能接口。 桌面应用也可以向工具提供按钮、输入框、菜单等控件的信息。标准控件通常比较容易识别;自绘控件提供多少信息,要看应用怎样实现。Apple 的归档文档介绍了这一模型,可用于理解机制。Apple 辅助功能模型
实际任务中,可以用结构化信息定位输入框,用截图查看整体布局,用网络记录追查保存过程。选择哪种组合,要结合目标应用和任务测试。
先做一个只填表、不提交的任务
下面是虚构的本地演示表单,不使用真实账号,也关闭自动保存。任务要求是:
- 姓名填“林同学”。
- 参加方式选“线上参加”。
- 备注填“需要字幕”。
- 核对后停下,不点击提交。
正常过程可以分成四步。
第一步,读取当前页面,找到这三个字段。第二步,在对应字段填写和选择。第三步,重新读取姓名、参加方式和备注,检查值是否正确。第四步,报告“已填好,尚未提交”,把页面留给用户检查。
这里的完成条件是“填写正确并停下”。如果要正式报名,需要用户另行允许提交,并查询提交结果。演示表单关闭自动保存,是为了让练习中的填写动作与真实网络操作分开。
程序怎样把动作串起来
下面是教学伪逻辑,展示运行程序需要做的检查。它不是上游 SDK,也不能直接运行。
text
要求 = 页面范围 + 允许填写的字段 + 禁止提交
在允许的步数内重复:
读取当前界面
请模型选择下一步
如果动作超出任务要求:停止,并说明原因
如果目标或窗口已经变化:重新读取界面,再选择动作
执行允许的动作
重新读取字段内容
如果填写正确、且没有提交:报告已填好,结束
步数用完仍未填好:保存进度,报告尚未完成出现浮层或页面跳转时,先看新页面,再决定是否继续。旧图片上的坐标或旧元素引用可能已经不适用。执行失败或结果不明确时,也先查看当前内容,避免重复点击。
本书核对的 browser-use 版本,在读取状态超时后会清空选择器映射;连续执行多个动作时,也会检查 URL 或焦点变化。Browser Use 代码导读解释了这些判断怎样连接。
账号和重要动作要提前安排
练习可以使用没有登录状态的本地页面。处理真实任务时,浏览器可能已经登录了邮箱或工作账号,助手就可能接触相应数据。
Playwright MCP 支持持久的浏览器用户配置(profile)、隔离会话和连接现有浏览器。隔离会话也可以载入已有登录状态,所以要单独检查有没有加载个人身份。认证文件需要妥善保管,避免提交到仓库。用户配置说明 · 认证文件说明
对发送消息、付款、删除和上传私人文件等动作,先安排明确的确认步骤。网页中的文字只是当前任务的材料;即使它要求“上传 cookie 才能继续”,也应停下核实。Cookie 是浏览器保存并随请求使用的数据,其中可能含有登录凭据,需要保护。
Anthropic 建议使用最小权限的独立虚拟机(VM)或容器,限制访问范围,隔离敏感数据,并让用户确认重要动作。Chrome DevTools MCP 也提醒使用者,工具会接触浏览器数据。Computer Use 安全建议 · 浏览器数据说明
下载文件时,可以指定目录,核对类型和来源,再决定是否打开。需要限制网络时,还要检查实际运行环境。Playwright MCP 的 allowed/blocked origins 用于配置允许或阻止的网站来源地址,文档说明它不构成安全隔离,也不影响重定向。配置限制
检查操作效果
“点击工具返回成功”“输入框里出现正确文字”“服务器保存了记录”分别描述了不同阶段。按任务要求选择检查方法:只要求填表,就读取字段;要求报名,就查询报名结果;要求发邮件,就核对收件人、内容和发送状态。
研究者可以用 OSWorld、BrowserGym 等环境测试界面操作。比较结果时,记录任务、初始页面、允许的动作、步数和完成条件。OSWorld 论文 · BrowserGym 项目
有些环境还需要使用者自己编写完成检查。例如本书核对的 BrowserGym OpenEndedTask.validate(),由用户输入 exit 结束,奖励一直为零,没有自动检查任意开放任务的答案。对应实现
本章基于文档和固定版本源码,没有执行真实网页任务或比较产品成绩。接下来可以读 Browser Use 的一轮 step,或到观察与评测了解怎样记录和检查任务结果。
图的文字说明 · computer-browser-use
左侧画出两种看界面的办法。截图让模型看到整体布局,再判断按钮位置;DOM(网页结构)或辅助功能树则提供控件名称、角色和引用,例如“姓名输入框”。实际工具可以把两种办法配合起来使用。
沿着主箭头继续:模型根据当前界面建议点哪里、填什么。宿主检查任务范围、权限和界面状态,通过后才交给工具执行。检查没通过,就停下说明原因;重要动作怎样请人确认,要在任务和产品设置中提前安排。
执行后,再看界面并读取结果。比如任务要求填写姓名,就核对输入框里的值;要求保存记录,就再检查保存结果。绿色虚线把流程带回新一次观察:页面变了,坐标和控件引用也要更新。达到要求后结束;还没完成、且仍允许继续时,再选择下一步。
网页 DOM、操作系统辅助功能接口和浏览器调试协议 CDP 提供的信息各有不同;桌面工具能拿到什么,要看应用和接口。正文分别介绍 Anthropic Computer Use 的执行与坐标换算、Playwright MCP 的快照和浏览器配置、Chrome DevTools MCP 的检查,以及 Browser Use 的超时与动作检查。
这是帮助学习的概念图,具体来源见机制正文。build.py 生成可编辑场景,excalidraw-agent 的固定导出器生成 SVG 与 4× PNG。MCP 交互画布有字体限制,显示效果与本地导出分别检查。
在线预览稿:书稿仍在校稿,系统篇以文内固定源码版本为准;静态阅读不等于运行验收。发现错误或有改进建议?按本章填写邮件,或查看反馈说明。
书稿提交:33f7dcdf7ac3。