imessage

Send and read iMessages and SMS via the imsg CLI on macOS.

Updated May 29, 2026
One-click install
npx skills add https://github.com/Reimonsk8/hermes-9router-model-balancing --skill imessage-reimonsk8
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: imessage
Source: https://github.com/Reimonsk8/hermes-9router-model-balancing/tree/main/scripts/skills/apple/imessage
Command: npx skills add https://github.com/Reimonsk8/hermes-9router-model-balancing --skill imessage-reimonsk8

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? It lets you send, read, and monitor iMessage and SMS conversations directly from the terminal on macOS without manually opening Messages.app. ## Core Features & Use Cases - Send Messages: Deliver text and file attachments to phone numbers or Apple IDs, with optional forcing of iMessage or SMS service. - Read History & Chats: List recent chats and view conversation history in JSON, including attachment metadata. - Watch for Incoming Messages: Monitor a chat in real time for new messages and attachments. - Use Case: A user asks to text a contact that they will be late; the assistant finds the contact's chat, confirms the recipient and message, then sends it via imsg send. ## Quick Start Ask the assistant to send an iMessage saying you will be late to a specific contact, and confirm the recipient and text before it is sent.

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, for example: 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 history --chat-id <id> --limit 20 --json to view a conversation, and imsg chats --limit 10 --json to list recent chats. Add --attachments to include attachment information in the output.

What permissions does imsg need on macOS?▼

The terminal needs Full Disk Access granted in System Settings under Privacy, plus Automation permission for Messages.app when prompted. Messages.app must also be signed in with an Apple ID.

Can I force SMS instead of iMessage when sending a text?▼

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 sending iMessages via CLI?▼

Group chat management such as adding or removing members is not supported, and bulk messaging should be avoided. It only works on macOS with Messages.app configured, not on other platforms.