openclaw - 💡(How to fix) Fix [Bug] iMessage inbound messages not received - watch stream not working [1 comments, 1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#54264Fetched 2026-04-08 01:29:53
View on GitHub
Comments
1
Participants
1
Timeline
3
Reactions
0
Author
Participants
Timeline (top)
closed ×1commented ×1reopened ×1

Fix Action

Workaround

None found yet. The imsg watch command works independently:

imsg watch --json --debounce 250ms

This outputs messages correctly, but the gateway is not subscribing to this stream.

Code Example

2026-03-25T11:26:18.429+08:00 [imessage] [default] starting provider (/opt/homebrew/bin/imsg)

---

user  61323  0.0  0.1 ... /opt/homebrew/Cellar/imsg/0.5.0/libexec/imsg rpc

---

imsg watch --json --debounce 250ms

---

{
  "imessage": {
    "enabled": true,
    "cliPath": "/opt/homebrew/bin/imsg",
    "dmPolicy": "pairing",
    "allowFrom": ["+86xxxxxxxxxxx", "+86xxxxxxxxxxx"],
    "groupAllowFrom": ["+86xxxxxxxxxxx", "+86xxxxxxxxxxx"],
    "groupPolicy": "allowlist"
  }
}
RAW_BUFFERClick to expand / collapse

Bug Description

iMessage messages are not being received in real-time by the agent. Messages arrive at Messages.app and are stored in chat.db, but the agent does not receive any notification or event.

Environment

  • OpenClaw version: 2026.3.23-2 (7ffe7e4)
  • macOS: 26.3.1 (arm64) - Mac mini
  • Node version: v25.8.1
  • imsg version: 0.5.0

Steps to reproduce

  1. Configure iMessage channel with dmPolicy: "pairing" and allowFrom set to phone number
  2. Start gateway: openclaw gateway
  3. Send an iMessage to the configured number
  4. Message is stored in ~/Library/Messages/chat.db (verified via imsg history)
  5. Gateway logs show no incoming message event
  6. Agent does not respond unless message is sent from another channel (e.g., Discord)

Expected Behavior

When an iMessage is received, the gateway should detect it via imsg watch and trigger the agent to respond.

Actual Behavior

The imessage plugin starts but never receives inbound messages:

2026-03-25T11:26:18.429+08:00 [imessage] [default] starting provider (/opt/homebrew/bin/imsg)

No further logs about incoming messages. The imsg rpc process is running:

user  61323  0.0  0.1 ... /opt/homebrew/Cellar/imsg/0.5.0/libexec/imsg rpc

But messages sent to iMessage are never delivered to the agent.

Evidence

  1. imsg history shows the message exists in the database
  2. Gateway logs show NO incoming or receive events for iMessage
  3. openclaw doctor reports iMessage as OK
  4. The plugin can SEND messages (cron reminders work), but cannot RECEIVE

Workaround

None found yet. The imsg watch command works independently:

imsg watch --json --debounce 250ms

This outputs messages correctly, but the gateway is not subscribing to this stream.

Related Issues

  • #6775 - Similar issue described but marked as stale
  • #8461 - iMessage regression after idle periods
  • #52605 - BlueBubbles webhook issue (different provider but related)

Configuration

{
  "imessage": {
    "enabled": true,
    "cliPath": "/opt/homebrew/bin/imsg",
    "dmPolicy": "pairing",
    "allowFrom": ["+86xxxxxxxxxxx", "+86xxxxxxxxxxx"],
    "groupAllowFrom": ["+86xxxxxxxxxxx", "+86xxxxxxxxxxx"],
    "groupPolicy": "allowlist"
  }
}

extent analysis

Fix Plan

To resolve the issue of iMessage messages not being received in real-time by the agent, we need to ensure that the imsg watch command is properly integrated with the OpenClaw gateway.

Here are the steps to fix the issue:

  • Modify the imessage configuration to include a watch command that subscribes to the imsg message stream.
  • Implement a script that runs the imsg watch command and pipes the output to the OpenClaw gateway.
  • Ensure the gateway is configured to receive messages from the imsg plugin.

Example configuration changes:

{
  "imessage": {
    "enabled": true,
    "cliPath": "/opt/homebrew/bin/imsg",
    "dmPolicy": "pairing",
    "allowFrom": ["+86xxxxxxxxxxx", "+86xxxxxxxxxxx"],
    "groupAllowFrom": ["+86xxxxxxxxxxx", "+86xxxxxxxxxxx"],
    "groupPolicy": "allowlist",
    "watchCommand": "imsg watch --json --debounce 250ms"
  }
}

Example script to run the imsg watch command and pipe output to the gateway:

#!/bin/bash

# Run imsg watch command and pipe output to gateway
imsg watch --json --debounce 250ms | openclaw gateway --imsg-input

Verification

To verify that the fix worked, send an iMessage to the configured number and check the gateway logs for incoming message events. The agent should now receive notifications and respond to iMessage messages in real-time.

Extra Tips

  • Ensure the imsg plugin is properly installed and configured.
  • Check the imsg version and update to the latest version if necessary.
  • Verify that the openclaw gateway command is running and configured to receive messages from the imsg plugin.
  • Refer to the OpenClaw documentation for more information on configuring the imessage plugin and integrating with the imsg command.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING