Files
openclaw/docs/zh-CN/tools/chrome-extension.md
Josh Palmer 5676a6b38d Docs: normalize zh-CN terminology + tone
What: switch to 你/你的 tone; standardize Skills/Gateway网关/local loopback/私信 wording
Why: align zh-CN docs with issue 6995 feedback + idiomatic tech style
Tests: pnpm docs:build
2026-02-02 16:38:25 +01:00

6.8 KiB
Raw Blame History

read_when, summary, title, x-i18n
read_when summary title x-i18n
你想让智能体控制现有的 Chrome 标签页(工具栏按钮)
你需要通过 Tailscale 实现远程 Gateway网关 + 本地浏览器自动化
你想了解浏览器接管的安全影响
Chrome 扩展:让 OpenClaw 控制你现有的 Chrome 标签页 Chrome 扩展
generated_at model provider source_hash source_path workflow
2026-02-01T21:40:11Z claude-opus-4-5 pi 3b77bdad7d3dab6adb76ff25b144412d6b54b915993b1c1f057f36dea149938b tools/chrome-extension.md 15

Chrome 扩展(浏览器中继)

OpenClaw Chrome 扩展让智能体控制你现有的 Chrome 标签页(你日常使用的 Chrome 窗口),而不是启动一个单独的 OpenClaw 托管 Chrome 配置文件。

附加/分离通过单个 Chrome 工具栏按钮完成。

概念说明

包含三个部分:

  • 浏览器控制服务Gateway网关或节点智能体/工具调用的 API通过 Gateway网关
  • 本地中继服务器local loopback CDP在控制服务和扩展之间建立桥接默认 http://127.0.0.1:18792
  • Chrome MV3 扩展:使用 chrome.debugger 附加到活动标签页,并将 CDP 消息传递给中继

OpenClaw 随后通过常规的 browser 工具界面(选择正确的配置文件)控制附加的标签页。

安装/加载(未打包)

  1. 将扩展安装到稳定的本地路径:
openclaw browser extension install
  1. 打印已安装扩展的目录路径:
openclaw browser extension path
  1. Chrome → chrome://extensions
  • 启用"开发者模式"
  • "加载已解压的扩展程序" → 选择上面打印的目录
  1. 固定该扩展。

更新(无需构建步骤)

扩展作为静态文件包含在 OpenClaw 发行版npm 包)中。没有单独的"构建"步骤。

升级 OpenClaw 后:

  • 重新运行 openclaw browser extension install 以刷新 OpenClaw 状态目录下的已安装文件。
  • Chrome → chrome://extensions → 点击扩展上的"重新加载"。

使用方法(无需额外配置)

OpenClaw 内置了一个名为 chrome 的浏览器配置文件,指向默认端口上的扩展中继。

使用方式:

  • CLIopenclaw browser --browser-profile chrome tabs
  • 智能体工具:browser,设置 profile="chrome"

如果你需要不同的名称或不同的中继端口,可以创建自己的配置文件:

openclaw browser create-profile \
  --name my-chrome \
  --driver extension \
  --cdp-url http://127.0.0.1:18792 \
  --color "#00AA00"

附加/分离(工具栏按钮)

  • 打开你想让 OpenClaw 控制的标签页。
  • 点击扩展图标。
    • 徽章显示 ON 表示已附加。
  • 再次点击即可分离。

它控制哪个标签页?

  • 不会自动控制"你当前正在查看的标签页"。
  • 只控制你通过点击工具栏按钮明确附加的标签页
  • 要切换:打开另一个标签页并在那里点击扩展图标。

徽章 + 常见错误

  • ON已附加OpenClaw 可以控制该标签页。
  • :正在连接本地中继。
  • !:中继不可达(最常见原因:浏览器中继服务器未在本机运行)。

如果你看到 !

  • 确保 Gateway网关在本地运行默认设置或者如果 Gateway网关在其他地方运行请在本机运行一个节点主机。
  • 打开扩展选项页面;它会显示中继是否可达。

远程 Gateway网关使用节点主机

本地 Gateway网关与 Chrome 在同一台机器上)——通常无需额外步骤

如果 Gateway网关与 Chrome 在同一台机器上运行,它会在 local loopback 上启动浏览器控制服务 并自动启动中继服务器。扩展与本地中继通信CLI/工具调用发送到 Gateway网关。

远程 Gateway网关Gateway网关在其他机器上运行——运行一个节点主机

如果你的 Gateway网关在另一台机器上运行请在运行 Chrome 的机器上启动一个节点主机。 Gateway网关会将浏览器操作代理到该节点扩展 + 中继保持在浏览器所在机器的本地。

如果连接了多个节点,使用 gateway.nodes.browser.node 固定一个节点,或设置 gateway.nodes.browser.mode

沙箱隔离(工具容器)

如果你的智能体会话是沙箱隔离的(agents.defaults.sandbox.mode != "off"browser 工具可能会受到限制:

  • 默认情况下,沙箱隔离会话通常指向沙箱浏览器target="sandbox"),而非你的宿主机 Chrome。
  • Chrome 扩展中继接管需要控制宿主机的浏览器控制服务。

选项:

  • 最简单:从非沙箱隔离的会话/智能体使用扩展。
  • 或允许沙箱隔离会话控制宿主机浏览器:
{
  agents: {
    defaults: {
      sandbox: {
        browser: {
          allowHostControl: true,
        },
      },
    },
  },
}

然后确保工具未被工具策略拒绝,并(如有需要)使用 target="host" 调用 browser

调试:openclaw sandbox explain

远程访问提示

  • 将 Gateway网关和节点主机保持在同一个 tailnet 上;避免将中继端口暴露到局域网或公网。
  • 有意识地配对节点;如果你不需要远程控制,请禁用浏览器代理路由(gateway.nodes.browser.mode="off")。

"extension path" 的工作原理

openclaw browser extension path 打印包含扩展文件的已安装磁盘目录。

CLI 故意不会打印 node_modules 路径。请始终先运行 openclaw browser extension install,将扩展复制到 OpenClaw 状态目录下的稳定位置。

如果你移动或删除了安装目录Chrome 会将扩展标记为损坏,直到你从有效路径重新加载。

安全影响(请务必阅读)

这是一个强大且有风险的功能。请将其视为给予模型"操控你浏览器的双手"。

  • 扩展使用 Chrome 的调试器 APIchrome.debugger)。附加后,模型可以:
    • 在该标签页中点击/输入/导航
    • 读取页面内容
    • 访问该标签页已登录会话能访问的任何内容
  • 这不像专用的 OpenClaw 托管配置文件那样是隔离的。
    • 如果你附加到日常使用的配置文件/标签页,就等于授予了对该账户状态的访问权限。

建议:

  • 优先使用专用的 Chrome 配置文件(与个人浏览分开)进行扩展中继使用。
  • 将 Gateway网关和所有节点主机保持在仅限 tailnet 的环境中;依赖 Gateway网关认证 + 节点配对。
  • 避免在局域网(0.0.0.0)上暴露中继端口,也避免使用 Funnel公网
  • 中继会阻止非扩展来源,并要求 CDP 客户端提供内部认证令牌。

相关内容: