为你的 OpenClaw 配置浏览器
OpenClaw 等 Agent 需要调用浏览器来操作网页,OpenClaw 官方推荐的方式是通过在你现有在用的 Chrome 浏览器里安装 chrome-relay 插件,来让 Agent 能够控制浏览器并复用登录状态。但这种方式很不方便,也不适用于无人值守让 OpenClaw 完全自动操作的场景。
所以,一般推荐使用 Playwright,让 OpenClaw 直接控制 Playwright 启动 Playwright 的浏览器实例(也是另外一个 Chrome,但跟你电脑里的 Chrome 隔离的)。
两种方式使用 Playwright
根据你的使用场景,选择以下两种方式之一:
方式一:Playwright MCP
不推荐,token 消耗大
配置方式:请参阅 配置 Playwright MCP
方式二:Playwright CLI(推荐)
直接使用 Playwright CLI 工具,通过命令行与浏览器交互。
安装 Playwright CLI
首先确保已安装 Playwright CLI 工具:
npm install -g @playwright/cli安装完成后,可以通过以下命令验证:
playwright-cli --version配置 Playwright CLI,让他更适合被 OpenClaw 使用
默认情况下,Agent 使用的浏览器以无头(headless)模式启动,这意味着每次它打开浏览器你也看不到,你也无法在第一次帮它登录,也更无法做到下次使用已经自动登录了。
接下来,我们通过配置 2 配置项,来解决这个问题:
- 持久化登录状态:让浏览器记住 Cookie 和登录信息
- 显示浏览器窗口:以有头(headed)模式运行,便于观察和手动干预
方式一:环境变量(推荐,所有 Agent 通用)
通过环境变量配置,对所有基于 Playwright 的 Agent 均有效(包括 OpenClaw、Claude Code 等)。
设置以下两个环境变量:
| 变量名 | 作用 | 示例值 |
|---|---|---|
PLAYWRIGHT_MCP_USER_DATA_DIR | 浏览器 profile 存储路径,用于持久化登录状态 | $HOME/.browser-profile |
PLAYWRIGHT_MCP_HEADLESS | 是否使用无头模式 | false(显示窗口) |
在 ~/.bashrc 或 ~/.zshrc 中添加:
export PLAYWRIGHT_MCP_USER_DATA_DIR="$HOME/.browser-profile"export PLAYWRIGHT_MCP_HEADLESS=false保存后就能在新打开的 Playwright-cli 里生效了。
[Environment]::SetEnvironmentVariable("PLAYWRIGHT_MCP_USER_DATA_DIR", "$env:USERPROFILE\.browser-profile", "User")[Environment]::SetEnvironmentVariable("PLAYWRIGHT_MCP_HEADLESS", "false", "User")也可以通过「系统属性 → 高级 → 环境变量」图形界面添加。
方式二、OpenClaw 专属配置方式(环境变量)
如果你只使用 OpenClaw,可以直接在 ~/.openclaw/openclaw.json 的 env 字段中配置,无需修改系统环境变量:
{ env: { PLAYWRIGHT_MCP_USER_DATA_DIR: "/home/tony/.browser-profile", PLAYWRIGHT_MCP_HEADLESS: "false" }}修改后重启 OpenClaw Gateway 生效。这种方式只对 OpenClaw 生效,不影响系统其他 Agent (比如 Claude Cowork)。
方式三:OpenClaw 里针对不同的 WorkSpace 单独配置
在你需要的 OpenClaw workspace 目录下创建 .playwright/cli.config.json,内容如下:
{ "browser": { "userDataDir": "/home/tony/.browser-profile", "launchOptions": { "headless": false } }}OpenClaw 默认 workspace 目录是 ~/.openclaw/workspace,所以配置文件应放在,所以,如果配置这个 workspace,文件路径应该是这样:
~/.openclaw/workspace/.playwright/cli.config.json