跳转到内容


为你的 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 工具:

Terminal window
npm install -g @playwright/cli

安装完成后,可以通过以下命令验证:

Terminal window
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 中添加:

Terminal window
export PLAYWRIGHT_MCP_USER_DATA_DIR="$HOME/.browser-profile"
export PLAYWRIGHT_MCP_HEADLESS=false

保存后就能在新打开的 Playwright-cli 里生效了。

方式二、OpenClaw 专属配置方式(环境变量)

如果你只使用 OpenClaw,可以直接在 ~/.openclaw/openclaw.jsonenv 字段中配置,无需修改系统环境变量:

{
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