Peekaboo Bridge (macOS UI 自动化)

OpenClaw 可以托管 PeekabooBridge,作为一个本地的、权限感知的 UI 自动化代理。这样 peekaboo CLI 就能驱动 UI 自动化,同时复用 macOS 应用的 TCC 权限。

这是什么(以及不是什么)

  • Host:OpenClaw.app 可以作为 PeekabooBridge 的宿主。
  • Client:使用 peekaboo CLI(没有单独的 openclaw ui ... 命令)。
  • UI:可视化界面保留在 Peekaboo.app 中;OpenClaw 只是一个轻量级的代理宿主。

启用 bridge

在 macOS 应用中:

  • Settings → Enable Peekaboo Bridge

启用后,OpenClaw 会启动一个本地 UNIX socket 服务器。如果禁用,宿主会停止,peekaboo 会回退到其他可用的宿主。

客户端发现顺序

Peekaboo 客户端通常按以下顺序尝试宿主:

  1. Peekaboo.app(完整用户体验)
  2. Claude.app(如果已安装)
  3. OpenClaw.app(轻量级代理)

使用 peekaboo bridge status --verbose 可以查看哪个宿主处于活动状态,以及正在使用哪个 socket 路径。你可以通过以下方式覆盖:

export PEEKABOO_BRIDGE_SOCKET=/path/to/bridge.sock

安全与权限

  • bridge 会验证调用者代码签名;会强制执行 TeamID 白名单(Peekaboo 宿主 TeamID + OpenClaw 应用 TeamID)。
  • 请求会在约 10 秒后超时。
  • 如果缺少必需的权限,bridge 会返回清晰的错误消息,而不是启动系统设置。

快照行为(自动化)

快照存储在内存中,会在短时间后自动过期。如果你需要更长的保留时间,可以从客户端重新捕获。

故障排除

  • 如果 peekaboo 报告”bridge client is not authorized”,请确保客户端已正确签名,或者在调试模式下使用 PEEKABOO_ALLOW_UNSIGNED_SOCKET_CLIENTS=1 运行宿主。
  • 如果找不到宿主,请打开其中一个宿主应用(Peekaboo.app 或 OpenClaw.app)并确认已授予权限。