跳转到内容

macOS 开发设置

从源代码构建并运行 OpenClaw macOS 应用程序。

在构建应用之前,请确保已安装以下内容:

  1. Xcode 26.2+:Swift 开发所必需。
  2. Node.js 24 & pnpm:推荐用于网关、CLI 和打包脚本。目前为 22.19+ 的 Node 22 LTS 出于兼容性考虑仍受支持。

安装项目范围内的依赖项:

Terminal window
pnpm install

要构建 macOS 应用并将其打包为 dist/OpenClaw.app,请运行:

Terminal window
./scripts/package-mac-app.sh

如果您没有 Apple Developer ID 证书,脚本将自动使用 临时签名 (-)。

有关开发运行模式、签名标志和 Team ID 故障排除,请参阅 macOS 应用自述文件: https://github.com/openclaw/openclaw/blob/main/apps/macos/README.md

注意:临时签名的应用程序可能会触发安全提示。如果应用程序立即崩溃并显示 “Abort trap 6”,请参阅 故障排除 部分。

macOS 应用期望安装全局 openclaw CLI 来管理后台任务。

安装(推荐):

  1. 打开 OpenClaw 应用。
  2. 转到 通用 设置选项卡。
  3. 点击 “Install CLI”

或者,手动安装:

Terminal window
npm install -g openclaw@<version>

pnpm add -g openclaw@<version>bun add -g openclaw@<version> 也可以使用。 对于 Gateway(网关) 运行时,Node 仍然是推荐的方式。

macOS 应用程序构建需要最新的 macOS SDK 和 Swift 6.2 工具链。

系统依赖项(必需):

  • 软件更新中可用的最新 macOS 版本(Xcode 26.2 SDK 所需)
  • Xcode 26.2(Swift 6.2 工具链)

检查:

Terminal window
xcodebuild -version
xcrun swift --version

如果版本不匹配,请更新 macOS/Xcode 并重新运行构建。

如果您在尝试允许 语音识别麦克风 访问时应用程序崩溃,可能是由于 TCC 缓存损坏或签名不匹配。

修复:

  1. 重置 TCC 权限:

    Terminal window
    tccutil reset All ai.openclaw.mac.debug
  2. 如果失败,请暂时更改 scripts/package-mac-app.sh 中的 BUNDLE_ID,以强制 macOS 恢复“全新状态”。

Gateway(网关) 一直处于“正在启动…”状态

Section titled “Gateway(网关) 一直处于“正在启动…”状态”

如果网关状态停留在“正在启动…”,请检查是否有僵尸进程占用了端口:

Terminal window
openclaw gateway status
openclaw gateway stop
# If you're not using a LaunchAgent (dev mode / manual runs), find the listener:
lsof -nP -iTCP:18789 -sTCP:LISTEN

如果是手动运行占用了端口,请停止该进程 (Ctrl+C)。作为最后的手段,请终止您在上面找到的 PID。