imessage

Send and read iMessage and SMS conversations via the imsg CLI on macOS.

1|Updated Jun 24, 2026
One-click install
npx skills add https://github.com/maopujie10-sys/Bailongma --skill imessage-maopujie10-sys
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: imessage
Source: https://github.com/maopujie10-sys/Bailongma/tree/main/skills/hermes-skills/apple/imessage
Command: npx skills add https://github.com/maopujie10-sys/Bailongma --skill imessage-maopujie10-sys

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? It lets an AI agent read and send iMessage/SMS messages on macOS through the Messages.app, without manual interaction with the Messages interface. ## Core Features & Use Cases - List and inspect chats: Enumerate recent conversations with imsg chats and view message history by chat ID, including attachment info. - Send messages with attachments: Deliver text and files to phone numbers or Apple IDs, with control over iMessage vs SMS delivery via the --service flag. - Watch for incoming messages: Stream new messages in real time using imsg watch for reactive workflows. - Use Case: A user says "Text mom that I'll be late" — the agent finds Mom's chat, confirms the recipient and content, then sends the message via imsg send. ## Quick Start Ask the agent to send an iMessage to a specific contact or phone number with your message text, and confirm the recipient before it sends.

Frequently Asked Questions about imessage

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I send an iMessage from the command line on macOS?▼

Use the imsg CLI with the send command: imsg send --to "+14155551212" --text "Hello!". You can attach files with --file and force iMessage or SMS delivery with the --service flag.

How do I read iMessage history from the terminal?▼

Run imsg chats --limit 10 --json to list recent conversations, then imsg history --chat-id <id> --limit 20 --json to view messages. Add --attachments to include attachment information.

What permissions does imsg need on macOS?▼

imsg requires Full Disk Access for the terminal (System Settings → Privacy → Full Disk Access) and Automation permission for Messages.app, granted when prompted. Messages.app must also be signed in.

Can I force SMS instead of iMessage when sending?▼

Yes, pass --service sms to force SMS delivery or --service imessage to require iMessage. The default --service auto lets Messages.app decide based on the recipient.

What are the limitations of the imsg CLI?▼

imsg only works on macOS with Messages.app signed in and cannot manage group chat membership. Bulk messaging is discouraged, and sending to unknown numbers requires explicit user approval.