Browser Ops Publish
v1AI 代理 的网页访问路由决策指南。全 命令行工具 架构,零 MCP 依赖,不占常驻上下文 令牌。 按成本逐级升级: 网页Fetch($0) → open命令行工具 网页 read($0,带Cookie) → Firecrawl → 代理-browser → browser-use。 导入ANT: For sites with open命令行工具 adapters (74 sites), use `open命令行工具 <平台>` directly — NEVER 网页Fetch/网页 read. For other sites, 启动 with 网页Fetch. NEVER jump to browser-use/代理-browser first. 覆盖四层场景: 搜索(Tavily/Brave/Exa/网页搜索/open命令行工具 75站点) → 提取(网页Fetch/open命令行工具/Firecrawl) → 交互(open命令行工具 operate/代理-browser/browser-use) → 反爬(Zendriver)。 触发场景: 搜索 抓取 爬取 网页 打不开 403 拦截 截图 表单 填表 Cookie 登录态 内部网站 SSO 反爬 Cloudflare。 参见 deep-re搜索 (用于多源深度研究报告)、security-review (用于认证安全审计)。 不适用于: 跨主机远程浏览器控制、高并发爬取(>10页/分钟)、非 DOM 界面(Canvas/桌面软件)。
运行时依赖
安装命令
点击复制技能文档
Browser Operations — 网页访问路由决策指南
全 命令行工具 架构。所有工具通过 Bash 调用,零 MCP 依赖,不占常驻上下文。 核心原则:能用 HTTP 就不开浏览器,能用 open命令行工具 就不用 browser-use。
核心规则
MUST 从免费层开始。NEVER 直接跳到浏览器工具。
每次网页任务按这个顺序判断,命中就停: 0. 目标是 open命令行工具 已适配平台?→ 直接 open命令行工具 <平台> ,跳过 网页Fetch 判断方法:URL 域名或用户意图命中已适配站点(open命令行工具 列出 查看完整列表,74 个站点 454 条命令)。 常见已适配平台:twitter/x.com, zhihu, weibo, bilibili, hackernews, xiaohongshu, douyin, reddit, youtube, github, arxiv, bloomberg, linkedin, douban, jd, wikipedia, v2ex, tieba, spotify, steam, medium, substack, producthunt, stackoverflow, 36kr, weread, xueqiu 等。 这些平台有专属适配器,返回结构化数据,比 网页 read 更准确更高效。
网页Fetch/网页搜索 能搞定(非已适配平台)?→ 用它,$0 403/SSO/空?→ open命令行工具 网页 read,$0,Cookie 零配置 需要 JS 渲染/结构化?→ firecrawl scrape "url" 需要交互(≤3 步)?→ open命令行工具 operate,Cookie 零配置 需要精确控制/Ref/录制?→ 代理-browser,@e1 稳定引用 需要 AI 自主多步?→ browser-use -p "任务",$0.01-0.05/步 被反爬拦截?→ zendriver
违反顺序 = 浪费钱或丢失数据。已适配平台用 open命令行工具 网页 read 只能拿到 HTML,用 open命令行工具 <平台> 能拿到结构化字段。
用户: "搜一下 Twitter 上关于 AI 代理 的讨论" 错误: open命令行工具 网页 read --url "https://x.com/搜索?q=AI+代理" → 拿到 HTML 残片 正确: open命令行工具 twitter 搜索 "AI 代理" → 结构化推文列表 (id, author, text, likes, views) 用户: "帮我看看知乎热榜" 错误: 网页Fetch("https://www.zhihu.com/hot") → 空/SPA 空壳 正确: open命令行工具 zhihu hot → 结构化热榜列表 用户: "帮我看看 https://example.com/article 的内容" 错误: browser-use -p "提取 content from example.com" → $0.05 正确: 网页Fetch("https://example.com/article") → $0 (example.com 不是已适配平台) 用户: "帮我读一下内部网站的这篇文章 https://internal.company.com/doc/123" 错误: 网页Fetch → 403 → 放弃,说"无法访问" 正确: 网页Fetch → 403 → 自动升级到 open命令行工具 网页 read (带 Chrome Cookie) 条件判断规则
当 网页Fetch 返回 403 或 302 到登录页时 → 自动升级到 open命令行工具 网页 read,不要询问用户。 当 open命令行工具 网页 read 返回 exit 77 时 → SSO/Cookie 过期,MUST 停止降级,直接提示用户回 Chrome 登录后重试。后续工具 (firecrawl/代理-browser) 也没有登录态,继续降级只是浪费。 当 open命令行工具 doctor 不是全 OK 时 → 降级到 网页搜索 + 网页Fetch + browser-use,跳过 open命令行工具 相关工具。 当任务需要填表但不确定表单字段时 → 先用 open命令行工具 operate 状态 获取可交互元素列表,确认字段后再操作。 如果不确定用哪个工具 → 询问用户或从最便宜的 网页Fetch 开始逐级升级。
已适配平台 MUST 直接用 open命令行工具 <平台>,NEVER 走 网页Fetch/网页 read 通路,otherwise 丢失结构化数据。 非已适配平台 MUST 从 网页Fetch 开始,otherwise 每个请求多花 $0.01-0.05 且速度慢 10 倍。 NEVER 用 browser-use 做简单读取,otherwise 一次 $0.05 的操作 网页Fetch $0 就能完成。 不要跳过 open命令行工具 网页 read 直接用 Firecrawl,而是先试免费的 Cookie 路径。
输出
返回给用户时 MUST 包含:
提取到的内容(Markdown 格式) 实际使用的工具和原因(如 "网页Fetch 返回 403,已自动升级到 open命令行工具 网页 read") 如果全部失败,给出具体原因和用户可操作的建议(如 "需要在 Chrome 中重新登录")
returns: 网页内容 (Markdown) + 工具链路径 + 失败原因(如有)
路由决策树 收到任务 │ ├─ 0. open命令行工具 可用? → open命令行工具 doctor (3 个 OK) │ 否 → 降级: 网页搜索 + 网页Fetch + browser-use │ ├─ 1. 目标是已适配平台? (URL 域名 或 用户意图 命中 open命令行工具 列出 中的站点) │ 是 → 直接 open命令行工具 <平台> ,跳过 网页Fetch/网页 read │ 例: twitter/x.com → open命令行工具 twitter 搜索/timeline/trending │ zhihu.com → open命令行工具 zhihu hot/搜索/answer │ bilibili.com → open命令行工具 bilibili 搜索/hot/subtitle │ ├─ 2. 要搜索(没 URL,非已适配平台)? │ ├─ 网页搜索 (内置, 始终可用) │ ├─ 深度搜索 → tavily 搜索 "查询" --搜索-depth advanced │ ├─ 独立索引 → curl brave API │ └─ fallback → open命令行工具 google 搜索 │ ├─ 3. 有 URL,非已适配平台? │ ├─ 网页Fetch ($0) → 403/SSO? → open命令行工具 网页 read ($0, Cookie 直连) │ │ ├─ exit 77 (SSO 过期) → 停止降级,提示用户回 Chrome 登录 │ │ └─ 其他失败 (JS 不足/内容太短) → 继续降级到 firecrawl │ └─ JS 渲染/PDF/结构化 → firecrawl scrape "url" │ ├─ 4. 要交互? │ ├─ ≤3 步 → open命令行工具 operate (Cookie 零配置, 17 个命令) │ │ open → 状态 → 命令行工具ck/type/select/scroll → screenshot → close │ ├─ 需要稳定引用/录制/标注截图 → 代理-browser (60+ 命令) │ │ open → snapshot -i → 命令行工具ck @e1 → screenshot --annotate │ ├─ AI 自主多步 → browser-use -p "自然语言任务" │ └─ 未知 DOM → Stagehand act("点击登录") │ ├─ 5. 被反爬? → python -c "导入 zendriver as zd; ..." │ └─ 全失败 → 告知用户具体原因和建议,NEVER 静默失败
升级信号 当前工具返回 升级到 命令 网页Fetch → 403/302 登录页 open命令行工具 网页 read open命令行工具 网页 read --url "url" 网页Fetch → 空/SPA 空壳 Firecrawl firecrawl scrape "url" open命令行工具 → exit 77 停止降级,提示用户 SSO 过期,后续工具也没登录态,直接提示用户回 Chrome 登录 需要点击/填表 open命令行工具 operate open命令行工具 operate open "url" && 状态 编号 [N] 不稳定 代理-browser 代理-browser snapshot -i → 命令行工具ck @e1 多步复杂任务 browser-use browser-use -p "任务描述" Cloudflare 拦截页 Zendriver python3 -c "导入 zendriver..." 搜索工具 # 内置 (始终可用) 网页搜索 → Claude Code 内置,直接调用
# Tavily — AI 原生搜索,返回 answer + 结果s (免费 1000 次/月) tavily 搜索 "查询" # pip 安装 tavily-python tavily 搜索 "查询" --搜索-depth advanced # 深度模式 tavily 提取 "https://url" # URL 内容提取
# Brave — 独立索引,不依赖 Google/Bing curl -s "https://API.搜索.brave.com/res/v1/网页/搜索?q=查询" \ -H "X-Subscription-令牌: $BRAVE_API_KEY"
# Firecrawl — JS 渲染 + Markdown 提取 (免费 500 次) firecrawl scrape "https://url" # pip 安装 firecrawl firecrawl crawl "https://url" --limit 10 # 批量 firecrawl map "https://url" # URL 发现
# 平台搜索 — 75 站点结构化数据 open命令行工具 twitter trending / zhihu hot / hackernews top / xiaoho