iMessage(传统:imsg?
imsg 集成是传统版本,可能会在 future release.
状态:传统外部 CLI 集成。Gateway 生成 imsg rpc 并通过 stdio 上的 JSON-RPC 通信(没有单独的守护进程/端口)?
快速设?
brew install steipete/tap/imsg
imsg rpc --help
</Step>
<Step title="配置 OpenClaw">
{
channels: {
imessage: {
enabled: true,
cliPath: "/usr/local/bin/imsg",
dbPath: "/Users/<you>/Library/Messages/chat.db",
},
},
}
</Step>
<Step title="启动 gateway">
openclaw gateway
</Step>
<Step title="批准第一?DM 配对(默?dmPolicy?>
openclaw pairing list imessage
openclaw pairing approve imessage <CODE>
配对请求 1 小时后过期?
#!/usr/bin/env bash
exec ssh -T gateway-host imsg "$@"
启用附件时的推荐配置?
{
channels: {
imessage: {
enabled: true,
cliPath: "~/.openclaw/scripts/imsg-ssh",
remoteHost: "user@gateway-host", // 用于 SCP 附件获取
includeAttachments: true,
// 可选:覆盖允许的附件根目录?
// mediaLocalRoots: ["/Users/remote-user/MobileSync"]
},
},
}
工作原理
- Gateway 使用
imsg rpc命令?imsgCLI 通信? - 消息通过 JSON-RPC 协议发?接收?
- 附件作为入站媒体下载并通过媒体管道处理?
- 发送者需要配对或允许列表?
访问控制
直接消息
- 默认:
dmPolicy: "pairing"(未知用户获得配对代码) - 批准配对?
openclaw pairing list imessage
openclaw pairing approve imessage <CODE>
- 允许列表模式:设?
channels.imessage.allowFrom
群组
iMessage 群组使用 groupPolicy 控制?
"open"= 允许所有人"allowlist"= 仅允?groupAllowFrom"disabled"= 禁用
配置参?
请参?Gateway 配置参考 了解完整的字段列表?
排查
消息未发?
- 检?
imsg rpc是否可用?
imsg rpc --help
- 检?Gateway 日志?
openclaw logs --follow | grep imessage
附件未下?
- 确保
includeAttachments: true已设? - 检?
mediaLocalRoots配置