BrowserSkill 浏览器自动化完整指南:三步让 AI Agent 安全复用你的已登录浏览器
【免费下载链接】BrowserSkillLet AI agents use your real, logged-in browser without interrupting your work. CLI + extension for browser automation across any shell-capable AI agent.项目地址: https://gitcode.com/GitHub_Trending/br/BrowserSkill
想让 AI Agent 直接帮你点网站、填表单,却又担心它抢了你的浏览器窗口?BrowserSkill 就是为此设计的:它在 shell 型 Agent 与你已登录的真实浏览器之间架起一座本地桥梁,自动化任务在独立的 Agent Window 里执行,你的日常浏览完全不受干扰。读完本文,你能独立完成安装、连接扩展、跑通第一个浏览器任务,并搞懂沙箱环境和各类开关的正确用法。
为什么需要 BrowserSkill:三个真实痛点
先说三个你大概率踩过的坑:
- 登录态拿不到。给 Agent 配一个无头浏览器,它面对的是空白未登录状态;导出 Cookie 给脚本用,又等于把账号钥匙拱手交出。
- Agent 抢窗口。让 Agent 直接操控你正在用的那个浏览器,它一开页面,你的工作流就断了。
- 验证、登录卡死。遇到验证码或确认框,Agent 只能干等,没法喊你出手。
BrowserSkill 的化解思路很直接:登录态留在你自己的浏览器 profile 里,Agent 通过本地命令行工具bsk发号施令,真正的点击和填表发生在扩展为你单独开的Agent Window(一个可见的、专用于自动化的浏览器窗口)中。需要碰你已打开的标签页时,它必须先"借用"、用完"归还"——这套显式的借还模型是整个产品的安全底线。
BrowserSkill 核心机制速览:前台与调度台的类比
理解工作方式只需要一个类比:它像一家公司的前台 + 调度台 + 外勤三段式。
Agent(Cursor、Claude Code、Codex、OpenClaw 等任何会跑 shell 命令的 harness)只跟前台对话,也就是bskCLI;CLI 通过本地 IPC 把工单递给调度台bsk daemon(同一二进制,回环 WebSocket 默认端口52800);daemon 再把tool.*请求转发给浏览器里的扩展,由扩展在 Agent Window 中实际执行 CDP 操作。响应沿原路返回,CLI 打印结果后退出。
几个关键约束值得记住:
- 会话要显式收尾。任务用
bsk session start启动,结束后必须bsk session stop;空闲 5 分钟自动超时只是安全网,不是常规手段。 - 沙箱边界。写操作只允许发生在 Agent Window 内,或者你显式借出的标签页上;页面自己弹出的窗口不会自动获得控制权。
- 同会话串行。daemon 对同一会话的工具调用排队执行,不同会话之间并行互不干扰。
- DeepSeek Harness 走插件。dsh 用户安装
@wxg-prc-cpg/browser-skill-dsh-plugin后获得原生browser_*工具,插件自带 skill,无需再跑bsk install-skill。
源码级分工见 docs/architecture.md,这里不展开。
三步完成 BrowserSkill 安装:CLI、扩展与 skill
第 1 步:装 CLI 和浏览器扩展
两个部件缺一不可:CLI 管命令解析与本地通信,扩展管浏览器内的实际操作。
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/Tencent/BrowserSkill/main/install.sh | sh export PATH="${BSK_INSTALL_DIR:-$HOME/.local/bin}:$PATH"Windows PowerShell:
irm https://raw.githubusercontent.com/Tencent/BrowserSkill/main/install.ps1 | iex成功标志:bsk --version能打印版本号。装完在 Chrome Web Store 或 Edge Add-ons 搜索 BrowserSkill 安装扩展即可(其他 Chromium 系浏览器装 Chrome 版)。
第 2 步:装 skill 并连接扩展
skill 是一份教 Agent 如何正确使用bsk的说明书,一条命令装好:
bsk install-skill按Space选 harness、Enter确认;非交互场景用bsk install-skill --harness cursor --json。然后打开扩展弹窗开启连接,运行bsk doctor并处理它报出的每一项fail(每项都带hint,照着做一次再重跑)。
成功标志:弹窗显示已连接(READY),bsk doctor无失败项。
第 3 步:跑通第一个任务
开一个新的Agent 会话,直接下命令:
/browser-skill open example.com and summarize what is on the page.成功标志:Agent 读到了页面内容,并主动停掉了它创建的 BrowserSkill 会话。如果 skill 没被发现,回到第 2 步检查安装路径;bsk doctor在 skill 缺失时只会报N/A,不会替你发现它,别被绿灯骗了。
进阶配置:沙箱环境与两个自动化开关
沙箱化 Agent 环境的特殊接法
如果你的 Agent 沙箱在每条命令结束后收割子进程(Linux 上 WorkBuddy 的 bubblewrap 沙箱、部分 Windows shell 任务如此),daemon 必须放在持久的宿主环境里,沙箱内只通过共享本地 IPC 发命令:
BSK_HOME=/absolute/shared/bsk BSK_AUTO_START=0 bsk status --json三种返回的处理方式:
| 结果 | 含义与动作 |
|---|---|
| status 成功 | 复用该 daemon;browsers为空只表示扩展还没连上,不必另起 |
| daemon 缺失 | 确认没有宿主任务在启动它,然后在沙箱外的持久任务里跑bsk daemon start --foreground |
| 权限错误 / 超时 | 不能据此断定 daemon 不存在,先查报告路径与 IPC 权限 |
注意:沙箱内每条命令都要带上相同的BSK_HOME和BSK_AUTO_START=0,因为环境变量不会跨 shell 调用保留。完整步骤与 PowerShell 示例见 docs/sandboxed-agents.md。
扩展里的两个独立开关
扩展弹窗的 Automation settings 有两个默认都开的开关,用户保存的浏览器设置是每个会话的权威配置:
| 借用标签页前确认 | 允许请求人工帮助 | 实际行为 |
|---|---|---|
| 开 | 开 | 借用需你批准;求助请求弹出 UI 等你接管 |
| 开 | 关 | 借用仍需批准;request-help直接返回disabled |
| 关 | 开 | 借用跳过确认;求助请求弹出 UI |
| 关 | 关 | 借用跳过确认;求助请求返回disabled |
几点行为细节:关闭确认会释放挂起的借用,关闭帮助会让挂起的求助以disabled收尾;已完成的借用不撤销,已结束的求助不重开;帮助只控制request-help的可用性,不意味着每个动作都要请示。版本上,request-help需要 daemon 协议 1.3,自定义借用等待(tab borrow --timeout,默认 60s 只是确认等待时长,不决定是否要求确认)需要 daemon 与扩展均为协议 1.2+,建议 CLI、daemon、扩展三端一起更新,用bsk --version、bsk status核对版本再跑bsk doctor。
BrowserSkill 常见问题:废弃项、PATH 与升级
Q:装完bsk还是找不到命令?export PATH只对当前 shell 生效,Agent 的每次 shell 调用可能都要重复设置,或直接用绝对路径(默认~/.local/bin/bsk,Windows 为bsk.exe)。装好后记得重启 Agent,否则它可能一直抱着旧 PATH。
Q:--unattended、tab borrow --no-confirm、BSK_REQUEST_HELP=off还能用吗?0.3.0 起这三个输入不再绕过确认或禁用求助,仅为兼容保留且已弃用,daemon 用到时会记录提示。脚本若想无人值守等待,请改用扩展里的开关;旧会话(包括当年用--unattended建的)在重新开启设置后行为恢复。session start --json/session list --json会报告实际生效的interaction策略。
Q:帮助被禁用后,Agent 遇到验证码就死了吗?request-help返回disabled,不代表任务完成也不授予额外权限。skill 会引导 Agent 重新观察,利用现有登录态和已授权输入继续推进;能看图理解验证码的模型可以尝试,但仅手机可用的 QR 扫码、人脸验证、短信验证码、纯文本模型面对图片验证码等场景仍可能受阻。偏好读取失败时运行时会保留已知值(无有效值则默认两个开关都开),不会阻塞会话创建。
Q:怎么升级?本地安装直接bsk update --yes,它默认会按原启动设置重启 daemon;Windows 提示 "staged update" 时等替换完成再查版本。托管、自定义端口或远程场景则在宿主里停 daemon,用bsk update --yes --no-restart-daemon升级后再按原参数启动,期间 Agent 命令设BSK_AUTO_START=0。扩展走商店更新;托管的 CLI skill 会在 daemon 启动、session start、doctor时按"内容基线"策略同步,你的本地编辑和自定义 skill 会被保留。
Q:Agent 服务器和浏览器不在一台机器上?支持服务器模式:daemon 以认证 WSS 暴露给远程扩展,凭据存在扩展的 IndexedDB 里,网站 Cookie 始终留在你的浏览器。配置细节见 docs/remote-extension-connection.md。
Q:想要整页长截图?扩展弹窗 Quick actions 或bsk screenshot --session <id> --full-page --out page.png都能出图,行为契约见 docs/long-screenshot.md。
延伸资料与总结
一句话收束:BrowserSkill 让"Agent 干浏览器脏活、人继续干正事"成为默认工作方式,代价只是三条命令和一次扩展连接。
想深入时按图索骥:
- 完整架构与组件分工:docs/architecture.md
- 沙箱化 Agent 部署细节:docs/sandboxed-agents.md
- 操作审计(30 天保留、导出与删除):docs/operation-audit.md
scroll-to原语参考:docs/scroll-to.md- DeepSeek Harness 插件:packages/dsh-plugin-browserskill/README.md
- 浏览器能力评估集:evals/browser/README.md
【免费下载链接】BrowserSkillLet AI agents use your real, logged-in browser without interrupting your work. CLI + extension for browser automation across any shell-capable AI agent.项目地址: https://gitcode.com/GitHub_Trending/br/BrowserSkill
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考