macOS

OpenClaw macOS 配套应用(菜单栏 + Gateway 代理)

macOS 应用是 OpenClaw 的菜单栏配套应用。它拥有权限,在本地管理/附加到 Gateway(launchd 或手动),并将 macOS 能力作为节点暴露给 Agent。

功能

本地 vs 远程模式

Launchd 控制

应用管理标记为 bot.molt.gateway 的每用户 LaunchAgent
(或使用 --profile/OPENCLAW_PROFILE 时为 bot.molt.<profile>;遗留 com.openclaw.* 仍然卸载)。

launchctl kickstart -k gui/$UID/bot.molt.gateway
launchctl bootout gui/$UID/bot.molt.gateway

使用命名配置文件时将标签替换为 bot.molt.<profile>

如果 LaunchAgent 未安装,从应用启用它或运行
openclaw gateway install

节点能力(mac)

macOS 应用将自己展示为节点。常见命令:

节点报告一个 permissions 映射,以便 Agent 决定什么是允许的。

节点服务 + 应用 IPC:

图表(SCI):

Gateway -> 节点服务 (WS)
                 |  IPC (UDS + token + HMAC + TTL)
                 v
             Mac 应用 (UI + TCC + system.run)

Exec 批准(system.run)

system.run 由 macOS 应用中的 Exec 批准控制(设置 → Exec 批准)。
安全 + 询问 + 允许列表存储在 Mac 本地:

~/.openclaw/exec-approvals.json

示例:

{
  "version": 1,
  "defaults": {
    "security": "deny",
    "ask": "on-miss"
  },
  "agents": {
    "main": {
      "security": "allowlist",
      "ask": "on-miss",
      "allowlist": [
        { "pattern": "/opt/homebrew/bin/rg" }
      ]
    }
  }
}

说明:

深度链接

应用注册 openclaw:// URL scheme 用于本地操作。

openclaw://agent

触发 Gateway agent 请求。

open 'openclaw://agent?message=Hello%20from%20deep%20link'

查询参数:

安全:

引导流程(典型)

  1. 安装并启动 OpenClaw.app
  2. 完成权限检查表(TCC 提示)。
  3. 确保 本地 模式激活且 Gateway 正在运行。
  4. 如果你想要终端访问,安装 CLI。

构建和开发工作流(原生)

调试 Gateway 连接(macOS CLI)

使用调试 CLI 练习与 macOS 应用相同的 Gateway WebSocket 握手和发现逻辑,而不启动应用。

cd apps/macos
swift run openclaw-mac connect --json
swift run openclaw-mac discover --timeout 3000 --json

连接选项:

发现选项:

提示:与 openclaw gateway discover --json 比较,查看 macOS 应用的发现管道(NWBrowser + tailnet DNS-SD 回退)与 Node CLI 的 dns-sd 基础发现有何不同。

远程连接管道(SSH 隧道)

当 macOS 应用在 远程 模式下运行时,它打开 SSH 隧道以便本地 UI 组件可以像与 localhost 通信一样与远程 Gateway 通信。

控制隧道(Gateway WebSocket 端口)

设置步骤,参见 [macOS 远程访问(../platforms/mac/remote.html)。协议详情,参见 [Gateway 协议(../gateway/protocol.html)。

相关文档