使用 Browser-Use 作为 Subagent:在编排器中以「黑盒」方式委托完整网页任务 人工智能AI Agent浏览器控制GUI 自动化MCP 服务【免费下载链接】browser-useAgents that use the browser.项目地址https://gitcode.com/GitHub_Trending/br/browser-use点击查看免费下载把完整的网页任务搜索、填表、数据抽取、登录、点击整体委托给 browser-use是构建「编排器 浏览器代理」架构时最直接的一种集成模式任务进去、结果出来browser-use 自主完成全部浏览行为编排器全程不触碰浏览器。这篇指南以 skills/cloud/references/guides/subagent.md 为骨架结合当前仓库的 Cloud SDK、CLI、MCP 服务与测试源码完整讲解该模式的适用场景、五种主流集成方式CLI、Python SDK、TypeScript SDK、MCP、HTTP REST以及结构化输出、错误处理、成本控制与资源清理等横向工程问题。读完你将能够在 LangChain、CrewAI、Vercel AI SDK、Claude Desktop、n8n 等任意编排宿主中把 browser-use 接成可复用的「网页能力即服务」。何时使用 Subagent 模式你的系统里有一个编排器orchestrator——某个 Agent、流水线或工作流引擎负责协调多种能力。当它判断「我需要网页上的数据」或「我需要与某个网站交互」时把任务委托给 browser-use由后者自主完成导航、点击、抽取并返回结果。编排器不直接操作浏览器也看不到中间过程。适合使用 subagent 模式的情况你想要一个黑盒任务进去 → 结果出来网页任务自包含搜索、抽取、填表不需要对每一步动作进行干预你不需要 action-by-action 的细粒度控制。应改用 tools integration工具集成的情况你的 Agent 需要独立做出单个浏览器决策先点这个、再检查那个你希望 Agent 自己的推理循环来驱动浏览器而非整体移交。两种模式的分界线非常清晰subagent 模式把「怎么浏览」交给 browser-use工具集成模式把「怎么浏览」留给你自己的 Agent。仓库中的 skills/cloud/SKILL.md 也将这两种集成分别列为独立指南references/guides/subagent.md与references/guides/tools-integration.md二者是互补关系而非替代关系。选择你的集成方式先根据你的 Agent 形态选定最合适的接入路径这是本指南的核心决策表你的 Agent 类型推荐方案沙箱/VM 中的 CLI 编码 AgentClaude Code、Codex、OpenCode、Cline、Windsurf、Cursor bg、Hermes、OpenClawCLI 云透传Shell 命令Python 框架LangChain、CrewAI、AutoGen、PydanticAI 或自研Python Agent 封装Cloud SDKTypeScript/JSVercel AI SDK、LangChain.js 或自研Cloud SDKMCP 客户端Claude Desktop、启用 MCP 的 CursorMCP browser_task 工具工作流引擎n8n、Make、Zapier、Temporal或任意 HTTP 客户端Cloud REST API选择依据很简单有终端就选 CLI是 Python 框架就选 Python SDK是 TS 生态就选 TS SDK是 MCP 客户端就选 MCP其余一切走 REST。Cloud 版本统一使用X-Browser-Use-API-Key请求头认证见 skills/cloud/SKILL.md本地开源版本则无需 API Key。Shell Command AgentsCLI适用对象拥有终端访问权限的沙箱/VM 中的编码 Agent。CLI 方案让 Agent 通过命令行把完整任务委托给云端执行无需任何 Python 导入。文档给出的四步标准流程如下# 1. 设置 API Key一次性 browser-use cloud login $BROWSER_USE_API_KEY # 2. 提交一个任务 browser-use cloud v2 POST /tasks {task: Find the top HN post and return title and URL} # 返回: {id: task-id, sessionId: session-id} # 3. 轮询直到完成阻塞 browser-use cloud v2 poll task-id # 4. 获取结果 browser-use cloud v2 GET /tasks/task-id # 返回完整的 TaskViewoutput、steps、outputFiles其中BROWSER_USE_API_KEY应作为环境变量注入保持服务端持有绝不要写进提示词或客户端代码。Cloud API 的基址与认证约定为v2https://api.browser-use.com/api/v2/、v3https://api.browser-use.com/api/v3、v4https://api.browser-use.com/api/v4请求头统一为X-Browser-Use-API-Key: key见 skills/cloud/SKILL.md。需要结构化输出时直接传 JSON Schemabrowser-use cloud v2 POST /tasks { task: Find the CEO of OpenAI, structuredOutput: {\type\:\object\,\properties\:{\name\:{\type\:\string\},\company\:{\type\:\string\}},\required\:[\name\,\company\]} }补充说明仓库现状当前仓库的 CLIbrowser_use/cli.py采用「stdin 管道 Python」模型——把 Python 代码通过 heredoc 管道输入执行浏览器常驻后台 daemon。CLI 3.0 已移除旧的open/state/click/eval/--json/--headed/--profile等子命令旧cloud子命令的迁移提示是「用browser-use auth login认证再start_remote_daemon(name)启动命名云浏览器」见 browser_use/cli.py。若你的集成目标是最新 CLI 形态应以仓库 SKILL.md 的「CLI 管道 Python」用法为准。Python AgentsCloud SDK适用对象LangChain、CrewAI、AutoGen、PydanticAI、Semantic Kernel 或自研 Python Agent。使用 Cloud SDK无需本地浏览器。from browser_use_sdk import AsyncBrowserUse from pydantic import BaseModel client AsyncBrowserUse() # 简单用法 async def browse(task: str) - str: result await client.run(task) return result.output # 结构化输出 class SearchResult(BaseModel): title: str url: str async def browse_structured(task: str) - SearchResult: result await client.run(task, output_schemaSearchResult) return result.output # 返回 SearchResult 实例多步骤任务可通过keep_alive复用同一个云会话session从而保留登录态与页面上下文session await client.sessions.create(proxy_country_codeus) await client.run(Log into site, session_idstr(session.id), keep_aliveTrue) result await client.run(Extract data, session_idstr(session.id)) await client.sessions.stop(str(session.id))proxy_country_codeus指定住宅代理出口国家默认即美国住宅代理默认开启防指纹、验证码处理、广告/Cookie 拦截与 Cloudflare 绕过等 stealth 能力见 skills/cloud/references/features.md。关于 SDK 版本skills/cloud/SKILL.md 给出了清晰对照Python v2from browser_use_sdk import AsyncBrowserUsePython v3from browser_use_sdk.v3 import AsyncBrowserUsePython v4from browser_use_sdk.v4 import BrowserUse或AsyncBrowserUse安装uv pip install browser-use-sdk。若你的集成是新项目推荐直接使用 v4 的runs资源一个 run 即一次 Agent 回合session 是被多次 run 共享的会话workspace 是可跨会话复用的持久化文件系统参考 skills/cloud/references/api-v4.mdfrom browser_use_sdk.v4 import BrowserUse with BrowserUse() as client: created client.runs.create( Open https://example.com and return its title, max_cost_usd1.00 ) run client.runs.wait_for_completion(created.id) if run.status.value ! completed: raise RuntimeError(fRun {run.id}: {run.status}) print(run.result)TypeScript/JS Agents适用对象Vercel AI SDK、LangChain.js 或自研 TypeScript Agent。import { BrowserUse } from browser-use-sdk; import { z } from zod; const client new BrowserUse(); // 简单用法 async function browse(task: string): Promisestring { const result await client.run(task); return result.output; } // 结构化输出用 Zod schema 定义 const SearchResult z.object({ title: z.string(), url: z.string(), }); async function browseStructured(task: string) { const result await client.run(task, { schema: SearchResult }); return result.output; // { title: string, url: string } }多步骤 会话复用的写法对应 Python 的keep_aliveTS 侧为keepAliveconst session await client.sessions.create({ proxyCountryCode: us }); await client.run(Log into site, { sessionId: session.id, keepAlive: true }); const result await client.run(Extract data, { sessionId: session.id }); await client.sessions.stop(session.id);TypeScript 的 v2/v3/v4 导入路径分别为browser-use-sdk、browser-use-sdk/v3、browser-use-sdk/v4见 skills/cloud/SKILL.mdv4 示例见 skills/cloud/references/api-v4.mdimport { BrowserUse } from browser-use-sdk/v4; const client new BrowserUse(); const created await client.runs.create({ task: Open https://example.com and return its title, maxCostUsd: 1.00, }); const run await client.runs.waitForCompletion(created.id); if (run.status ! completed) { throw new Error(Run ${run.id}: ${run.status}); } console.log(run.result);MCP-Native Agents适用对象Claude Desktop、启用 MCP 的 Cursor以及任何通过协议发现工具的 MCP 客户端。MCP 方案分云端与本地两种。云端 MCP整体任务委托在 MCP 配置中加入 browser-use 服务器{ mcpServers: { browser-use: { url: https://api.browser-use.com/mcp, headers: { X-Browser-Use-API-Key: YOUR_KEY } } } }配置完成后Agent 会获得一个browser_task工具传入一段任务描述即可拿到结果。根据 skills/cloud/references/features.md 中的 MCP 工具清单云端 MCP 还提供execute_skill$0.02 执行技能、list_skills免费、get_cookies免费、list_browser_profiles免费、monitor_task免费检查任务进度等工具browser_task的计费为 $0.01 每步费用。本地 MCP开源、免费本地启动 MCP 服务器后Agent 会获得retry_with_browser_use_agent工具它把整个任务委托给本地 Agent 执行uvx --from browser-use[cli] browser-use --mcp该工具在当前仓库中的实现位于 browser_use/mcp/server.py它的描述明确写着「仅在多次与页面交互失败后作为最后手段使用」输入参数包括taskstring必填高层目标 详细的分步描述以及完成所需的数据与之前尝试的信息max_stepsinteger默认 100Agent 最大步数modelstring可选使用的 LLM 模型如gpt-4o、claude-3-opus-20240229默认取配置中的模型allowed_domainsarray可选允许访问的域名白名单安全特性省略时使用服务器配置的默认 profile空列表与省略等价不会关闭服务端配置的域名限制use_visionboolean默认 true是否启用视觉能力。其执行逻辑browser_use/mcp/server.py会先解析 LLM 配置支持 Bedrock 与 OpenAI 兼容通道再合并 profile 配置创建BrowserProfile最终构造Agent并运行agent.run(max_stepsmax_steps)返回包含步数、成功标志与最终结果的摘要。从源码结构看这个工具适合「主 Agent 兜底失败后把整个任务降级交给自研 Agent」的场景。另外CLI 中--mcp标志会直接调度到 MCP 的 stdio 服务browser_use/cli.py而--cli-mcp则启动 CLI 专用 MCP 服务browser_use/mcp/cli_mcp.py后者把 CLI 3.0 的浏览器助手以 MCP 工具形式暴露给客户端。HTTP / Workflow Engines适用对象n8n、Make、Zapier、Temporal、Serverless 函数以及任意 HTTP 客户端。此方案只依赖 REST API语言无关。创建任务 → 轮询 → 获取结果# 1. 创建任务 curl -X POST https://api.browser-use.com/api/v2/tasks \ -H X-Browser-Use-API-Key: $BROWSER_USE_API_KEY \ -H Content-Type: application/json \ -d {task: Find the top HN post and return titleURL} # → {id: task-uuid, sessionId: session-uuid} # 2. 轮询状态轻量接口 curl https://api.browser-use.com/api/v2/tasks/task-id/status \ -H X-Browser-Use-API-Key: $BROWSER_USE_API_KEY # → {status: finished} # 3. 获取结果 curl https://api.browser-use.com/api/v2/tasks/task-id \ -H X-Browser-Use-API-Key: $BROWSER_USE_API_KEY # → 完整 TaskViewoutput、steps、outputFiles建议的轮询节奏是先打轻量的/status接口仅在状态变为completed/failed/cancelled后再拉取完整结果避免反复轮询大对象v4 的 SDK wait 辅助方法即采用此策略见 skills/cloud/references/api-v4.md。v4 的 REST 流程与之对应curl -X POST https://api.browser-use.com/api/v4/runs \ -H X-Browser-Use-API-Key: $BROWSER_USE_API_KEY \ -H Content-Type: application/json \ -d {task:Find the top Hacker News story}事件驱动型工作流可改用Webhook详见 skills/cloud/references/features.md任务状态变化时云端会推送agent.task.status_update事件status 为 started/finished/stopped负载中包含task_id、session_id与statuswebhook 使用 HMAC-SHA256 签名请求头X-Browser-Use-Signature与X-Browser-Use-Timestamp验签需对{timestamp}.{body}body 为按键排序、无多余空白的 JSON计算 HMAC并拒绝超过 5 分钟的旧请求以防重放攻击。这样可以让 n8n / Temporal 的工作流完全事件驱动省去轮询。横向工程要点Cross-Cutting Concerns结构化输出三种接入方式的统一约定Cloud SDK Pythonoutput_schemaMyPydanticModel→result.output类型化对象Cloud SDK TypeScript{ schema: ZodSchema }→result.output类型化对象Cloud REST请求体传structuredOutput: json-schema-string→ 响应中的output字段注意 REST 的structuredOutput是字符串化的 JSON Schema需要先JSON.stringify(...)再放入请求体如本指南 CLI 一节所示。错误处理from browser_use_sdk import AsyncBrowserUse, BrowserUseError try: result await client.run(task, max_cost_usd0.10) except TimeoutError: pass # 轮询超时默认 5 分钟 except BrowserUseError as e: pass # API 错误需要特别留意的两个边界见 skills/cloud/references/api-v4.md轮询超时 ≠ 任务取消本地轮询超时不会取消远端 run若决定放弃应显式调用client.runs.cancel不要盲目重试模糊的创建请求对结果不确定的 create 请求直接重试可能启动多份付费任务轮询只打 status 轻量接口SDK 的 wait 辅助方法正是「status 轮询 最后拉取一次完整 run」。成本控制Cloud v2按步骤计费用max_steps限制最大步数Cloud v3/v4max_cost_usd0.10直接封顶花费事后可通过result.total_cost_usd核对实际支出。v4 还支持maxCostUsdTS 侧同名参数示例见上文 v4 代码块。此外会话与浏览器计费的边界也要注意SDK 3.11.3 的 v4 命名空间暴露了browsers.create/browsers.stop关闭 CDP 客户端并不会停止云浏览器及其计费必须显式停止浏览器参见 skills/cloud/references/api-v4.md 与 skills/cloud/SKILL.md。资源清理任务结束务必停止会话用try/finally保证异常路径也完成清理session await client.sessions.create(proxy_country_codeus) try: result await client.run(task, session_idstr(session.id)) finally: await client.sessions.stop(str(session.id))同样的原则适用于 v4 的浏览器资源client.browsers.stop(browser.id)应放入finally块与 CLI 的远程 daemonstop_remote_daemon(name)远程浏览器在停止或超时前持续计费。对于多步骤交互场景skills/cloud/references/features.md 还展示了keep_aliveTrue与liveUrl的组合用法——Agent 在敏感步骤如支付页暂停由真人通过liveUrl接管鼠标键盘随后 Agent 继续完成任务这是 subagent 模式在高风险流程中的实用变体。赞分享人工智能AI Agent浏览器控制GUI 自动化MCP 服务【免费下载链接】browser-useAgents that use the browser.项目地址https://gitcode.com/GitHub_Trending/br/browser-use点击查看免费下载相关推荐Browser-Use让AI成为你的网页操作智能助理Browser Use让AI成为你的网页操作智能助理 还在为每天重复的网页操作而烦恼吗填写表单、数据抓取、价格监控...这些枯燥的工作现在可以完全交给AI来人工智能AI Agent浏览器控制GUI 自动化MCP 服务Paseo Workspaces 完全指南以工作区为核心的任务编排模型Paseo Workspaces 完全指南以工作区为核心的任务编排模型 本指南深入讲解 Paseo 的核心组织概念 —— Workspace工作区。PasCamunda服务任务Java委托与表达式执行Camunda服务任务Java委托与表达式执行 引言 在企业级业务流程管理BPM中服务任务Service Task是实现自动化业务逻辑的核心组件。C后端工作流自动化流程编排上一篇Slim 项目依赖压缩库 klauspost/compress 的安全策略解析漏洞定义、内存防护选项与私有披露流程下一篇【亲测免费】 探索NModbus工业级通讯库的强大工具创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考