Browser and Computer Use Agents
当 AI Agent 开始离开纯文本环境,直接进入网页、桌面应用和图形界面时,系统会进入一类明显不同的工程问题。
这类问题不再只是:
- 要不要调用工具
- 该怎么维护状态
- 什么时候该停止
而会进一步变成:
- 该不该把浏览器当成执行环境
- 该不该让系统直接操作图 形界面
- 哪些动作可以自动执行,哪些动作必须拦住
- 当页面结构、视觉状态和环境噪声一起变化时,系统怎么保持稳定
这篇文档主要讨论两类系统:
Browser AgentComputer Use Agent
重点包括:
- 它们分别是什么
- 它们和普通
Tool Use的关系 - 适用场景在哪里
- 风险边界在哪里
- 工程上该怎么设计
1. 两个概念先分开
1.1 Browser Agent
Browser Agent 指的是:
Agent 通过浏览器环境完成任务,例如打开网页、读取页面内容、填写表单、点击元素、提交请求、在多页面之间跳转。
它通常面对的是:
- 网站
- Web 应用
- 登录流程
- 在线后台
- 搜索结果页
- 表单与列表页
从执行方式看,Browser Agent 一般有两种实现路径:
- 基于
DOM、可访问性树或页面结构操作 - 基于视觉观察再配合点击、输入、滚动等动作操作
1.2 Computer Use Agent
Computer Use Agent 指的是:
Agent 直接面对图形界面,在更一般的操作系统环境里观察屏幕并执行操作。
它操作的不只是浏览器,也可能包括:
- 桌面应用
- 文件管理器
- 系统弹窗
- 设置面板
- 多窗口界面
- 混合型工作台
它通常要处理:
- 鼠标移动
- 点击
- 输入
- 快捷键
- 窗口切换
- 屏幕区域识别
1.3 两者的关系
两者有交集,但不是同一件事。
Browser Agent的作用域通常限定在 Web 环境Computer Use Agent的作用域更大,浏览器只是其中一种界面
可以把它们理解成:
Browser Agent:面向网页和 Web 工作流的界面代理Computer Use Agent:面向整个图形操作环境的界面代理
2. 它们和 Tool Use 的关系
这一点最好单独分清。
2.1 Tool Use 解决什么
Tool Use 解决的是:
- 模型如何调用外部能力
- 工具的输入输出怎样结构化
- 系统如何以稳定接口访问外部世界
典型形式包括:
- 调 API
- 查数据库
- 调搜索接口
- 执行代码
- 调内部服务
这类能力的共同点是:
接口清晰,输入结构明确,返回结果通常可解析。
2.2 Browser / Computer Use 解决什么
Browser Agent 和 Computer Use Agent 解决的是另一类问题:
- 没有现成 API
- 有 API 但权限或接入成本很高
- 任务天然发生在图形界面中
- 页面结构和系统界面本身就是工作对象
它们本质上仍然属于“工具能力”的扩展,但和普通 Tool Use 相比,抽象层更高,不确定性也更强。
普通工具调用通常是:
明确调用 -> 结构化返回
Browser / Computer Use 更常见的是:
观察界面 -> 判断下一步 -> 执行动作 -> 再观察界面
所以它们更接近:
感知 + 决策 + 动作 的闭环
2.3 一个实用判断
如果一个任务可以稳定地改写成:
- 调一个内部 API
- 查一条数据库记录
- 用结构化参数调用外部服务
那通常优先选择普通 Tool Use,而不是直接上浏览器或桌面代理。
原因很简单:
- 更稳
- 更快
- 更便宜
- 更容易观测
- 更容易回归测试
界面代理更适合放在这些场景:
- 只有界面,没有接口
- 接口不可得,但业务流程必须走界面
- 任务本身就在“读界面、改界面、穿过多步界面流程”
3. 什么时候适合用 Browser Agent
Browser Agent 更适合下面几类任务。
3.1 面向网站的只读研究任务
例如:
- 打开官网
- 搜索某个产品页面
- 读取文档页
- 在控制台后台里查看状态
- 按页面结构采集公开信息
这类任务通常以:
- 搜索
- 浏览
- 抽取
- 比对
为主,风险相对可控。
3.2 多步网页流程
例如:
- 登录后台
- 切换租户
- 打开某个页面
- 读取状态
- 导出结果
它的重点不是“某一个动作”,而是:
整条网页工作流需要跨多个页面完成。
3.3 表单驱动型任务
例如:
- 填写工单
- 提交申请
- 更新后台配置草稿
- 创建某种记录但先停在确认页
这类场景常常适合做成:
- 前面自动填
- 最后人工确认
4. 什么时候适合用 Computer Use Agent
Computer Use Agent 更适合下面几类任务。
4.1 浏览器以外的桌面流程
例如:
- 同时操作本地文件和网页
- 在桌面应用里读取信息
- 在多窗口之间搬运内容
- 处理带系统弹窗的流程
4.2 环境高度依赖图形界面
例如:
- 只有图形界面,没有脚本接口
- 页面结构不稳定,但界面模式相对固定
- 任务高度依赖视觉确认
4.3 临时性自动化和人机协同流程
例如:
- 操作一套很少使用的内部工具
- 处理低频但步骤繁琐的后台任务
- 由系统执行前半程,人负责最终确认
这类流程不一定值得单独建设 API 集成,但又确实需要自动化支持。
5. 哪些场景不适合
这部分比“适合什么”更重要。
5.1 高价值写操作
例如:
- 直接转账
- 直接删数据
- 直接发正式通知
- 直接改生产配置
如果必须走界面,通常也应当加入:
- 多重确认
- 权限隔离
- 人工审批
- 操作回放
5.2 高吞吐、强稳定、强一致任务
例如:
- 每秒大批量处理
- 精确数据同步
- 大规模重复任务
- 严格 SLA 的后台作业
这类任务更适合:
- API
- Workflow
- 批处理系统
而不是图形界面代理。
5.3 页面变化频繁、选择器不稳定、流程常改的环境
如果一个系统界面本身变化很快,Browser Agent 的维护成本会持续上升。
这时更适合先判断:
- 是否能拿到内部接口
- 是否能和业务系统协商更稳定的集成方式