在 OpenClaw 支持的所有通讯平台中,iMessage 是最特别的一个。它没有官方 Bot API,苹果公司没有为开发者开放任何接口,这意味着接入 iMessage 必须走”桥接”路线。
好消息是:OpenClaw 官方推荐的 BlueBubbles 方案已经相当成熟,配置完成后体验非常流畅——你可以在 iPhone 或 Mac 的”信息”App 里直接和 AI 对话,看起来就像和普通联系人聊天一样。
先搞清楚:iMessage 接入的两种方案
OpenClaw 支持两种 iMessage 接入方式:
| 方式 | 推荐程度 | 说明 |
|---|---|---|
| BlueBubbles(本文重点) | ✅ 官方推荐,新部署首选 | 开源桥接应用,API 丰富,支持消息编辑、表情回应、群组管理等高级功能 |
| imsg CLI(旧方案) | ⚠️ 遗留方案,不推荐新用户 | 直接读取 chat.db,官方文档已标注”可能在未来版本中移除” |
OpenClaw 官方文档明确指出:新部署请使用 BlueBubbles,imsg CLI 是遗留方案。 本文聚焦 BlueBubbles 方案。
核心前提:你必须有一台 Mac
这是 iMessage 接入最重要的硬性条件,没有任何绕过方式:
iMessage 是苹果专有协议,只能在 macOS 上运行。BlueBubbles 必须安装在一台实体 Mac 上,该 Mac 需要保持长期开机并登录 Apple ID。
没有 Mac 怎么办?可以考虑:
- 购买一台二手 Mac Mini(用于专门运行 BlueBubbles 服务端,可以不配显示器)
- 使用租用苹果云服务器(部分服务商如 MacStadium 提供租用 Mac 服务)
- 付费使用第三方托管 iMessage 桥接服务(会话经过第三方服务器,需评估隐私风险)
如果你有 Mac,继续以下步骤。
第一步:下载并安装 BlueBubbles 服务端
- 在 Mac 上打开浏览器,访问 bluebubbles.app
- 下载最新版 BlueBubbles Server(macOS 应用)
- 将 BlueBubbles.app 拖入”应用程序”文件夹并打开
- 首次启动时,BlueBubbles 会引导你完成基础配置
系统要求:macOS 12(Monterey)或以上。推荐 macOS Sequoia(15);macOS Tahoe(26)功能上可用,但消息编辑功能目前存在已知问题。
第二步:配置 BlueBubbles 服务端
启用 Web API
打开 BlueBubbles Settings(偏好设置):
- 找到 Server(服务器)设置区域
- 开启 Enable Web API 开关
- 记录显示的本地服务器 URL,格式类似
http://192.168.x.x:1234(IP 地址和端口号后面会用到)
设置 API 密码(必须)
在 Settings 中找到 Server Password 字段,设置一个强密码。
⚠️ 这一步不能跳过。BlueBubbles Web API 默认没有任何身份验证,设置密码是防止局域网内其他设备随意访问你的 iMessage 账号的唯一保护措施。把这个密码当作 SSH 密钥一样保管。
配置 Webhook(用于接收消息通知)
在 BlueBubbles Settings 中找到 Webhooks 或 Event Webhooks 设置,添加一个新的 Webhook URL:
http://你的OpenClaw服务器IP:18789/bluebubbles-webhook
如果 OpenClaw 和 BlueBubbles 在同一台 Mac 上运行,地址为:
http://127.0.0.1:18789/bluebubbles-webhook
如果 OpenClaw 运行在其他机器(如 VPS),替换为那台机器的 IP 地址。
Webhook 保存后,BlueBubbles 会发送一个测试 ping。如果测试成功,说明 OpenClaw Gateway 能够正常接收 BlueBubbles 推来的消息通知。
第三步:授予 macOS 系统权限(关键步骤)
这是配置中最容易遗漏却极其重要的一步。BlueBubbles 需要两项 macOS 系统权限才能正常工作:
权限一:全磁盘访问权限(Full Disk Access)
BlueBubbles 需要读取 Messages 数据库(~/Library/Messages/chat.db)。
前往:系统设置 → 隐私与安全性 → 全磁盘访问权限
在列表中找到 BlueBubbles,开启开关(如不在列表中,点击 + 号手动添加)。
权限二:自动化权限(Automation)
BlueBubbles 需要通过 Messages.app 发送消息。
前往:系统设置 → 隐私与安全性 → 自动化
确认 BlueBubbles 对”信息”(Messages)的访问权限已开启。
授权完成后,重启 BlueBubbles,验证以下功能正常:
- 打开浏览器访问
http://localhost:1234(替换为你的端口),应该看到 JSON 格式的服务器状态响应 - 在 BlueBubbles 应用界面中,能正常看到你的 iMessage 对话列表
第四步:防止 Mac 休眠
BlueBubbles 服务端需要持续运行,Mac 休眠会导致 iMessage 连接中断。
# 禁用所有休眠模式(在 Mac 终端中运行)
sudo pmset -a sleep 0 displaysleep 0 disksleep 0
sudo pmset -a autorestart 1
或者在图形界面设置:系统设置 → 节能,将所有睡眠选项设为”从不”。
同时确保 Messages.app 保持登录状态——BlueBubbles 通过它收发消息,Messages.app 退出登录会导致 iMessage 连接断开。
第五步:在 OpenClaw 中配置 BlueBubbles 频道
现在将 BlueBubbles 的连接信息配置到 OpenClaw 中。
安装 BlueBubbles 插件:
openclaw plugins install @openclaw/bluebubbles
编辑 ~/.openclaw/openclaw.json,添加 BlueBubbles 配置:
{
"channels": {
"bluebubbles": {
"enabled": true,
"serverUrl": "http://192.168.x.x:1234",
"password": "你在BlueBubbles中设置的API密码",
"webhookPath": "/bluebubbles-webhook",
"dmPolicy": "pairing",
"sendReadReceipts": true
}
}
}
将 serverUrl 替换为 BlueBubbles 服务端显示的实际地址。
重启 Gateway:
openclaw gateway restart
第六步:发送第一条消息并完成配对
在 iPhone 或 Mac 的”信息”App 中,给你登录 BlueBubbles 的 Apple ID 发一条消息(即给”自己”发消息,或者用另一个 Apple ID 账号发消息)。
第一条消息会触发配对流程。在 OpenClaw 终端中查看配对码:
openclaw pairing list bluebubbles
然后批准配对:
openclaw pairing approve bluebubbles 配对码
配对完成后,OpenClaw 会通过 iMessage 回复确认消息。再发一条”你好”测试,收到 AI 回复说明配置全部成功。
进阶:开启 Private API 模式(可选)
BlueBubbles 有一个”Private API”模式,可以解锁更多 iMessage 功能:
- 发送 Tapback 表情回应(❤️👍😂等)
- 消息编辑与撤回(macOS Ventura 及以上原生支持的功能)
- 发送消息特效(如”烟花”、”庆祝”)
- 群组管理(修改群名、添加/移除成员)
Private API 模式需要安装 macOS 系统插件(SIP 部分禁用),配置较复杂,新手可以先跳过,正常模式已能满足日常使用需求。
完整配置示例(含群组配置)
{
"channels": {
"bluebubbles": {
"enabled": true,
"serverUrl": "http://192.168.1.100:1234",
"password": "你的API密码",
"webhookPath": "/bluebubbles-webhook",
"dmPolicy": "pairing",
"allowFrom": ["+8613800138000"],
"sendReadReceipts": true,
"groupPolicy": "allowlist",
"groupAllowFrom": ["+8613800138000"],
"groups": {
"*": {
"requireMention": true
}
}
}
}
}
常见问题排查
Q:Webhook 测试 ping 失败,显示连接超时怎么办?
检查 OpenClaw Gateway 是否正在运行(openclaw gateway status),以及防火墙是否允许 BlueBubbles 访问端口 18789。如果 OpenClaw 在 VPS 上,确认 VPS 的安全组也开放了该端口(但只向 Mac 的 IP 开放,不要对全网开放)。
Q:收到消息但 OpenClaw 没有回复?
查看实时日志:
openclaw logs --follow
发一条消息观察日志中是否有接收记录。最常见的原因是权限模式限制(dmPolicy: "pairing" 下需要先完成配对)。
Q:Mac 休眠后 iMessage 连接断了怎么办?
在 Mac 终端运行 sudo pmset -a sleep 0 禁用休眠,然后重启 BlueBubbles 应用重新建立连接。
Q:Messages.app 提示”无法发送”怎么办?
确认 Mac 的 Apple ID 处于登录状态,iMessage 功能已开启(系统设置 → Apple ID → iMessage),并且 Mac 能正常连接互联网。
Q:BlueBubbles 服务器 URL 中的 IP 是内网地址,OpenClaw 在 VPS 上能访问吗?
不能直接访问。你需要使用 Cloudflare Tunnel、Tailscale 或 Ngrok 等工具将 BlueBubbles 服务端的本地地址安全地暴露给 VPS 访问。Tailscale 是这个场景的最常见选择。
iMessage vs 其他平台:什么时候值得这么麻烦?
iMessage 的配置复杂度远高于 Telegram 和 Slack,值得自问:这样做值吗?
以下情况下,iMessage 接入有独特价值:
- 你是 iPhone 用户,日常主力通讯工具就是 iMessage,希望在最熟悉的 App 里用 AI
- 你的主要联系人(家人、朋友)都在苹果生态,通过 iMessage 比 Telegram 更自然
- 你已经有一台 Mac 长期开机(如 Mac Mini 家庭服务器),额外部署 BlueBubbles 成本很低
- 你需要通过 iPhone 短信/iMessage 接收真实业务消息并让 AI 处理
如果以上都不符合,Telegram 或 WhatsApp 是更低成本的选择。
更多 BlueBubbles 配置细节,访问 OpenClaw官网中文版(通过浏览器翻译访问 openclaw.ai)或官方 BlueBubbles 频道文档 docs.openclaw.ai/channels/bluebubbles。
本文内容基于 OpenClaw 官方文档、stack-junkie.com、lumadock.com 等公开资料整理,信息截至2026年3月28日。