On this page
On this page
Mainstream messaging
iMessage troubleshooting
Symptom-first fixes for the iMessage channel, plus the configuration reference links.
Troubleshooting
imsg not found or RPC unsupported
Validate the binary and RPC support:
If the check reports RPC unsupported, update imsg. If private API actions are unavailable, run imsg launch in the logged-in macOS user session and check again. If the Gateway is not running on macOS, use the Remote Mac over SSH setup instead of the default local imsg path.
Replies fail after an app update, but channel status is healthy
A successful channels status --probe checks RPC/read access, not whether Messages can send. Automation failures can therefore coexist with a healthy probe and working inbound messages.
For structured AppleScript failures, OpenClaw includes launch-context guidance with the send error. Error -1743 means Messages Automation was denied. Error -1712 is an Apple event timeout: a missing grant is one possible cause, not a confirmed diagnosis.
Check System Settings → Privacy & Security → Automation on the Mac running Messages:
- For a local app-managed Gateway, check the Gateway/launcher process macOS identifies. An app update that switches Node to Bun, or first moves the service to the stable
~/.openclaw/runtime/service/bunpath, needs this grant approved once; later updates keep that path. The error includes the current local Gateway runtime path to help distinguish it from an old entry. - For SSH or custom wrappers, check that Mac's actual SSH/wrapper launch context, not the remote Gateway host's runtime.
- A grant to Terminal or OpenClaw.app does not by itself establish access for a background service.
Review the required grant in that user session, then verify delivery through the same Gateway and launch context using an explicitly requested test message to a consenting recipient. A Terminal-only test does not validate the background service. Pending replies may drain after recovery; do not resend them manually before checking their delivery outcome.
See iMessage permissions and Gateway hosting. Changing a runtime symlink is not a verified permission-continuity fix.
Messages send but inbound iMessages do not arrive
First prove whether the message reached the local Mac. If chat.db does not change, OpenClaw cannot receive the message even when imsg status --json reports a healthy bridge.
If phone-sent messages create no new rows, repair the macOS Messages and Apple Push layer before changing OpenClaw config. A one-shot service refresh is often enough:
Send a fresh iMessage from the phone and confirm a new chat.db row or imsg watch event before debugging OpenClaw sessions. Do not run this as a periodic bridge-relaunch loop; repeated imsg launch plus gateway restarts during active work can interrupt deliveries and strand in-flight channel runs.
Gateway is not running on macOS
The default cliPath: "imsg" must run on the Mac signed into Messages. On Linux or Windows, set channels.imessage.cliPath to a wrapper script that SSHes to that Mac and runs imsg "$@".
Then run:
DMs are ignored
Check:
channels.imessage.dmPolicychannels.imessage.allowFrom- pairing approvals (
openclaw pairing list imessage)
Group messages are ignored
Check:
channels.imessage.groupPolicychannels.imessage.groupAllowFromchannels.imessage.groupsallowlist behavior- mention gating: explicit patterns or the routed agent's identity name/emoji; set
requireMention: falsefor the chat in the effective root or accountgroupsmap to process all messages from allowed senders
Remote attachments fail
Check:
channels.imessage.remoteHostchannels.imessage.remoteAttachmentRoots- SSH/SCP key auth from the gateway host
- host key exists in
~/.ssh/known_hostson the gateway host - remote path readability on the Mac running Messages
Replies fail after an app update with AppleScript -1712 or -1743
A working inbound connection or successful read probe does not prove that Messages Automation is authorized. OpenClaw reports observed AppleScript Automation send failures in the account warning shown by openclaw channels status, including when inbound remains connected. During the current account run, the warning clears after a successful send, not a successful read probe. Restarting the Gateway resets this observed status; it does not transfer the grant.
On the Messages Mac, open System Settings → Privacy & Security → Automation and allow Messages for the process that runs imsg. For an app-managed background Gateway using bundled Bun, check the current bun entry. App updates use a new concrete runtime path, so a grant for an older node or bun runtime, Terminal, or OpenClaw.app may not cover the running service. Use openclaw gateway status --deep to inspect the service command.
AppleScript -1712 is a timeout, not proof of a denied grant: also check for a hidden permission prompt or an unresponsive Messages.app. After restoring access, retry a send through the Gateway in the same user session. A terminal-only test can use a different permission identity. Review queued replies before manually sending replacements.
This recovery does not preserve or transfer macOS grants between runtime builds. See macOS permissions.
macOS permission prompts were missed
Review Full Disk Access and Messages Automation in the logged-in Messages user’s macOS session for the process context that actually runs OpenClaw/imsg. See Requirements and permissions, including the SSH-wrapper edge case.
A successful command in Terminal only verifies Terminal’s context. It does not establish permissions for a LaunchAgent or SSH wrapper. Verify the configured Gateway’s send path with an explicitly requested test message, not an automatic health-check send.
Configuration reference pointers
Related
- Channels Overview — all supported channels
- BlueBubbles removal and the imsg iMessage path — announcement and migration summary
- Coming from BlueBubbles — config translation table and step-by-step cutover
- Pairing — DM authentication and pairing flow
- Groups — group chat behavior and mention gating
- Channel routing — session routing for messages
- Security — access model and hardening