bluebubbles
steipete/clawdis
Send and manage iMessages via BlueBubbles with attachments, reactions, edits, and group controls.
What is bluebubbles?
BlueBubbles integration for OpenClaw agents to send and manage iMessage conversations. Use this skill to send texts, react with tapbacks, edit or unsend messages, reply in threads, and manage group participants—all via the BlueBubbles gateway.
- Send text messages and attachments to individual or group chats
- React to messages with emoji tapbacks and remove reactions
- Edit previously sent messages or unsend them entirely
- Reply to specific messages in-thread
- Send messages with iMessage effects (balloons, etc.)
- Manage group chat participants, names, and icons
How to install bluebubbles
npx skills add https://github.com/steipete/clawdis --skill bluebubbles- BlueBubbles gateway installed and running
- Gateway config with channels.bluebubbles (serverUrl, password, webhookPath)
- Target recipient handle (phone number, email, or chat_guid)
How to use bluebubbles
- 1.Install the skill via npx skills add
- 2.Configure your BlueBubbles gateway connection in channels.bluebubbles
- 3.Identify the target recipient (phone number in E.164 format, email, or chat_guid)
- 4.Call the message tool with channel: 'bluebubbles' and the desired action (send, react, edit, unsend, reply, sendAttachment, or sendWithEffect)
- 5.Provide required parameters: target, message text, messageId for reactions/edits, or path/buffer for attachments
Use cases
- Acknowledge requests by reacting with a tapback to a message
- Send a file or photo with a caption to a contact
- Reply in-thread to a specific message in a group chat
- Edit a message you sent moments ago to correct a typo
- Unsend a message that was sent by mistake
- OpenClaw agent developers
- Users automating iMessage workflows
- Teams coordinating via group chats
bluebubbles FAQ
Prefer chat_guid (especially for groups), but also accepts phone numbers in E.164 format (+15551234567) or email addresses (user@example.com).
Yes, both edit and unsend actions are supported, but some features like edit may be macOS-version dependent (e.g., broken on macOS 26 Tahoe).
Use the reply action with the replyTo parameter set to the message-guid of the message you want to reply to.
The skill supports effects like balloons; see the BlueBubbles plugin documentation for the full list of available effects.
Yes, you must have BlueBubbles gateway installed and configured with serverUrl, password, and webhookPath before using this skill.
Full instructions (SKILL.md)
Source of truth, from steipete/clawdis.
name: bluebubbles description: Send and manage iMessages via BlueBubbles, including attachments, tapbacks, edits, replies, and groups. metadata: { "openclaw": { "emoji": "🫧", "requires": { "config": ["channels.bluebubbles"] } } }
BlueBubbles Actions
Overview
BlueBubbles is OpenClaw’s recommended iMessage integration. Use the message tool with channel: "bluebubbles" to send messages and manage iMessage conversations: send texts and attachments, react (tapbacks), edit/unsend, reply in threads, and manage group participants/names/icons.
Inputs to collect
target(preferchat_guid:...; also+15551234567in E.164 oruser@example.com)messagetext for send/edit/replymessageIdfor react/edit/unsend/reply- Attachment
pathfor local files, orbuffer+filenamefor base64
If the user is vague ("text my mom"), ask for the recipient handle or chat guid and the exact message content.
Actions
Send a message
{
"action": "send",
"channel": "bluebubbles",
"target": "+15551234567",
"message": "hello from OpenClaw"
}
React (tapback)
{
"action": "react",
"channel": "bluebubbles",
"target": "+15551234567",
"messageId": "<message-guid>",
"emoji": "❤️"
}
Remove a reaction
{
"action": "react",
"channel": "bluebubbles",
"target": "+15551234567",
"messageId": "<message-guid>",
"emoji": "❤️",
"remove": true
}
Edit a previously sent message
{
"action": "edit",
"channel": "bluebubbles",
"target": "+15551234567",
"messageId": "<message-guid>",
"message": "updated text"
}
Unsend a message
{
"action": "unsend",
"channel": "bluebubbles",
"target": "+15551234567",
"messageId": "<message-guid>"
}
Reply to a specific message
{
"action": "reply",
"channel": "bluebubbles",
"target": "+15551234567",
"replyTo": "<message-guid>",
"message": "replying to that"
}
Send an attachment
{
"action": "sendAttachment",
"channel": "bluebubbles",
"target": "+15551234567",
"path": "/tmp/photo.jpg",
"caption": "here you go"
}
Send with an iMessage effect
{
"action": "sendWithEffect",
"channel": "bluebubbles",
"target": "+15551234567",
"message": "big news",
"effect": "balloons"
}
Notes
- Requires gateway config
channels.bluebubbles(serverUrl/password/webhookPath). - Prefer
chat_guidtargets when you have them (especially for group chats). - BlueBubbles supports rich actions, but some are macOS-version dependent (for example, edit may be broken on macOS 26 Tahoe).
- The gateway may expose both short and full message ids; full ids are more durable across restarts.
- Developer reference for the underlying plugin lives in the BlueBubbles plugin package README.
Ideas to try
- React with a tapback to acknowledge a request.
- Reply in-thread when a user references a specific message.
- Send a file attachment with a short caption.
Related skills
More from steipete/clawdis and the wider catalog.

camsnap
Capture frames and clips from RTSP/ONVIF cameras via command line.

clawhub
Search, install, and manage AI agent skills from ClawHub registry.

discord
Send, read, edit, delete, react, poll, pin, and search Discord messages with components and media support.

imsg
iMessage/SMS CLI for listing chats, history, and sending messages via Messages.app

skill-creator
Create, edit, audit, tidy, validate, or restructure AgentSkills and SKILL.md files.

slack
Send, read, edit, delete, and react to Slack messages with full channel and member management.