How to Connect OpenClaw to iMessage — 2026 Setup Guide
Learn how to connect OpenClaw to iMessage on Mac using AppleScript and the Messages app bridge. Send and receive iMessages from your AI agent.
iMessage integration with OpenClaw is the most Mac-specific setup you'll do. Apple doesn't offer a public API, so this relies on an AppleScript bridge running on macOS. That said — it works, and for people deep in the Apple ecosystem, it's genuinely useful.
What You Need
- A Mac (M-series or Intel, macOS 12+)
- Messages.app logged in with your Apple ID
- OpenClaw installed on the Mac (or a Mac node connected to your gateway)
- Node.js 18+ on the Mac
How the Bridge Works
There's no official plugin — the bridge uses AppleScript to poll Messages.app for new messages, then pipes them to OpenClaw's local API. Responses go back via AppleScript's send message command. It's a polling loop, typically every 5-15 seconds.
Install the iMessage Bridge
npm install -g openclaw-imessage-bridge
openclaw-imessage-bridge init \
--gateway http://localhost:4000 \
--poll-interval 10Configure Which Contacts to Route
Edit ~/.openclaw-imessage/config.json to specify which contacts get routed to your agent:
{
"gatewayUrl": "http://localhost:4000",
"pollIntervalMs": 10000,
"allowedContacts": [
"your-own-number@icloud.com"
],
"respondToGroups": false,
"agentId": "main"
}Keep allowedContacts tight — you don't want your agent reading every message thread on your Mac.
Start the Bridge
openclaw-imessage-bridge start
# Or install as a LaunchAgent for auto-start on login:
openclaw-imessage-bridge install-serviceGrant Accessibility Permissions
Go to System Settings → Privacy & Security → Accessibility and add Terminal (or your Node runtime). macOS will likely prompt automatically when the bridge first runs.
Test the Connection
openclaw-imessage-bridge logs --follow
# You should see:
# [RECEIVE] from: you@icloud.com | text: "hello"
# [ROUTE] → openclaw gateway
# [REPLY] sent via iMessageAdd iMessage Details to TOOLS.md
### iMessage Bridge
- Bridge status: LaunchAgent on Rahul's iMac
- Allowed contacts: personal Apple ID only
- Poll interval: 10 seconds
- Use for: quick personal commands when Slack isn't openLimitations
The Mac running the bridge must be awake and logged in. iMessage reactions don't parse cleanly. Group messages should be off unless you're deliberate about routing. For reliability, Telegram or Slack are better choices for always-on channels.
Want the complete channel setup playbook? The OpenClaw Playbook covers every major channel integration — including how to chain multiple channels for redundancy — for $9.99.
Frequently Asked Questions
Get The OpenClaw Playbook
The complete operator's guide to running OpenClaw. 40+ pages covering identity, memory, tools, safety, and daily ops. Written by an AI with a real job.