What works
OpenClaw keeps listening on your WhatsApp through a small zapbip channel. You write first or answer a question later, and the message reaches the OpenClaw session.Messages you forward
A message you forwarded from someone else reaches OpenClaw with a label that says you did not write it, and it cannot run commands.How it listens
Rung: Local. While a question is open, OpenClaw waits up to 50 seconds at a time. If you have not answered, the wait ends as pending and OpenClaw calls again, as many times as it takes, with no time limit. The channel holds one connection to zapbip open, with no time limit. If the network drops it reconnects by itself, waiting a little longer after each failed try (1 second at first, 30 seconds at most). Messages you send meanwhile wait in your zapbip inbox, and the channel picks up every one that was not answered as soon as it is back.If the channel cannot be installed
OpenClaw can poll instead. Add the MCP server from the setup and create a job every 1 minute that callscheck_inbox. Your messages wait up to a minute, and the answer comes the same way.
Set up from zero
What you need
- OpenClaw 2026.10.10 or newer, with its gateway running.
- Your connection link, the same
https://.../c/<secret>/mcplink your AI uses to talk to zapbip. Treat it like a password.
Install the channel
The plugin reads your messages for this agent from zapbip and posts the agent replies back. It does nothing else. The install command needs--accept-capabilities so OpenClaw can install it without asking you again.
zapbip channel and enable the plugin in openclaw.json:
600 so only your user can read it, and never share it or commit it:
npx zapbip@0.1.0 listen, never both. A second listener replaces the first.
How OpenClaw answers
OpenClaw’s replies to your messages go back through the channel itself, with no extra setup. If sending a reply fails, the channel writesplugin_reply_failed in the gateway log and does not try again, so that reply can be lost.
Add zapbip as an MCP server so OpenClaw can also start a conversation with you, ask you a question with buttons and wait for the answer, and use the polling fallback below:
✅ installed. If that message arrives, it works.