Browser Harness 中文教程:先在测试 Chrome 里验证权限
Browser Harness 让编码代理通过 CDP 操作真实 Chrome。它能沿用浏览器里的登录状态,也因此能看到页面数据并执行真实操作。首次验证应使用单独的 Chrome 配置、测试账号和无敏感信息的页面。
1. 先划定浏览器权限
新建一个 Chrome 配置,不要登录邮箱、支付、云控制台或主社交账号。关闭自动填充,测试任务只允许打开公开页面。这样即使代理误点,也不会直接触碰日常会话。
2. 用 Python 3.12 安装 v0.1.13
uv tool install --python 3.12 --upgrade --force "browser-harness==0.1.13" browser-harness --version
如果项目后来发布新版本,先阅读 Release 再升级。不要把网页里的安装指令直接交给有生产权限的代理执行。
3. 导出官方技能文件
mkdir -p "${CODEX_HOME:-$HOME/.codex}/skills/browser-harness"
browser-harness skill > "${CODEX_HOME:-$HOME/.codex}/skills/browser-harness/SKILL.md"
这个步骤让宿主读到当前版本的调用方式。MCP 用户可另行配置 browser-harness-mcp;它走 stdio,并复用同一套 helper 与 CDP 连接。
4. 人工允许远程调试
打开 chrome://inspect/#remote-debugging,勾选允许本次浏览器实例远程调试。macOS 可能再要求辅助功能权限或显示逐次连接的允许窗口。这里需要用户参与,不要尝试自动绕过。
browser-harness <<'PY' print(page_info()) PY
先核对输出的标题、URL 和视口,再让它打开一个无登录的测试页。验证结束后关闭测试浏览器,检查配置目录里是否生成了不需要的截图或日志。
5. 什么时候才用 Cloud 或 MCP
本地 Chrome 不需要 Browser Use API key。需要远程、并发、代理或无头浏览器时才评估官方 Cloud。已有 MCP 客户端可以通过 uvx --from 'browser-harness[mcp]' browser-harness-mcp 暴露导航、点击、截图、标签页和 CDP 工具;客户端权限仍要单独限制。
与 Playwright 对比
Playwright 官方支持 Chromium、Firefox 和 WebKit,并提供浏览器上下文隔离、自动等待、断言、追踪和并行测试。Browser Harness 聚焦真实 Chrome 与代理临时操作,能够沿用现有登录态并积累 helper。跨浏览器回归测试优先考虑 Playwright;需要代理操作测试用的真实 Chrome 时,再评估 Browser Harness。
install.md、pyproject.toml、MCP 文档与 v0.1.13 Release;没有安装 Browser Harness,没有打开 Chrome 远程调试,也没有操作网站或云浏览器。这里仅补原教程没有展开的事实和边界。安装命令与操作步骤仍以前文为准。
先判断这个项目是否适合你
适合谁用
适合让编码代理操作已经登录的本机网页、调试一次性浏览器流程,或通过 MCP 给现有客户端增加 Chrome 控制。涉及生产后台、支付、删除、发帖或个人账号时,应改用低权限测试账号并保留人工确认。
采用建议
Browser Harness 适合需要真实 Chrome 登录态的代理实验,但权限范围很大。先用单独浏览器配置和无敏感数据的测试站点验证 page_info、导航与停止行为;确认录制设置、日志目录和人工批准点后,再决定是否接入日常账号。
原教程未展开的系统信息
核心功能
连接真实 Chrome
通过本机 CDP 端点控制现有 Chrome 会话,适合需要现有登录状态的任务。
可编辑 helper 工作区
受保护的核心包负责连接与调度,代理把可复用辅助函数放进本地工作区。
本地录制由用户选择
安装文档要求默认关闭录制;启用前要说明截图和轨迹可能包含敏感页面内容。
架构与数据流
命令行进程把 Python 片段交给常驻 daemon,daemon 连接 Chrome 的 CDP 端点。src/browser_harness 保存核心逻辑,本地配置目录保存认证、运行时 socket、日志、截图和代理工作区;MCP 入口继续调用同一套 helper,不另建 CDP 实现。
常见问题
Browser Harness v0.1.13 需要哪个 Python 版本?
包元数据要求 Python 3.11 及以上;官方快速安装命令指定 Python 3.12,避免 uv 选到兼容旧 Python 的旧版本。
本地使用 Browser Harness 必须购买 Browser Use Cloud 吗?
不需要。官方安装文档明确写明 Cloud 是可选项,本地 Chrome 不需要 Browser Use API key。
为什么第一次连接 Chrome 需要人工操作?
Chrome 要求用户在 chrome://inspect/#remote-debugging 允许远程调试;macOS 还可能弹出每次连接的授权窗口。这是浏览器权限边界,教程不建议绕过。
Browser Harness 录制会保存什么?
本地录制会保存截图和操作轨迹,可能含有敏感页面内容。官方安装流程要求默认关闭,只有用户明确同意后才启用。