OpenClaw Gateway 与 Chrome 扩展故障排除实录
问题背景
最近在配置 OpenClaw 的 Chrome 扩展 “Browser Relay” 时,不少朋友都遇到了一个典型问题:扩展图标上那个恼人的叹号一直不消失,提示信息也很明确——Gateway token rejected. Check token and save again.
没错,这通常就是 Gateway 令牌不匹配惹的祸。下面,我们就来完整走一遍排查和解决的流程,把这个问题彻底搞定。
环境信息
为了便于对照,先明确一下本次操作的环境:
- 操作系统:Windows 10
- OpenClaw 版本:2026.2.22-2
- Chrome 扩展:OpenClaw Browser Relay
问题诊断
遇到问题先别慌,按步骤来检查,很快就能定位到根源。
1. 检查 Gateway 状态
首先,我们得看看 Gateway 服务本身的状态。打开命令行工具,输入:
openclaw gateway status
如果看到类似下面的输出,问题就基本明朗了:
Runtime: running
RPC probe: failed
gateway closed (1008): unauthorized: gateway token mismatch
Port 18789 is already in use.
这里有两个关键信息:一是“gateway token mismatch”(网关令牌不匹配),二是端口18789已被占用。后者有时是前者的伴随现象,也可能独立引发问题。
2. 检查端口占用
既然提示端口被占,我们就确认一下。在命令行执行:
netstat -ano | findstr “18789”
这个命令会列出占用18789端口的进程ID,记下来,后续可能需要用到。
3. 检查配置文件
令牌信息保存在 OpenClaw 的配置文件中。它的默认路径在这里:%OPENCLAW_HOME%\.openclaw\openclaw.json。我们需要核对其中的 gateway.auth.token 字段。
解决方案
诊断完毕,接下来就是一步步修复。核心思路很简单:生成一个新令牌,确保服务和扩展配置完全一致。
步骤 1:生成新的 Token
在 PowerShell 中,运行以下命令来生成一个足够安全的新令牌:
$bytes = New-Object byte[] 24
[Security.Cryptography.RandomNumberGenerator]::Create().GetBytes($bytes)
$newToken = [BitConverter]::ToString($bytes).Replace(‘-’,’’).ToLower()
执行后,变量 $newToken 里就是你的新令牌字符串,把它复制下来。
步骤 2:更新配置文件
用文本编辑器打开前面提到的 openclaw.json 文件,找到 gateway.auth.token 字段,将其值替换为上一步生成的新令牌,然后保存文件。
步骤 3:重启 Gateway 服务
这是关键一步,必须确保服务完全重启以加载新配置。依次执行:
openclaw gateway stop
# 如果上述命令未能停止进程,可以使用强制结束(PID来自第二步的检查)
taskkill /F /PID <进程ID>
openclaw gateway start
再次运行 openclaw gateway status,确认服务状态正常且不再提示 token mismatch。
步骤 4:配置 Chrome 扩展
最后,打开 Chrome 浏览器中 OpenClaw Browser Relay 扩展的设置页面,确保两项配置准确无误:
- Gateway URL:
http://127.0.0.1:18789 - Token: 填入刚刚更新到配置文件里的那个新令牌。
保存配置后,扩展图标上的叹号应该就会消失,连接状态恢复正常。
常用命令速查
为了方便日后维护,这里把几个常用的 Gateway 管理命令整理一下:
openclaw gateway status # 查看状态
openclaw gateway start # 启动服务
openclaw gateway stop # 停止服务
openclaw gateway restart # 重启服务
总结
总的来说,OpenClaw Chrome 扩展连接失败,十有八九是 Gateway 令牌在“作怪”。解决问题的黄金法则就一条:确保配置文件、服务运行时以及扩展设置三处的令牌完全一致。
操作时记得,更新令牌后务必完全重启 Gateway 服务,让新配置生效。按照这个流程走下来,问题通常都能迎刃而解。
如果希望深入了解,可以参考官方文档获取更多信息。