imessage

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

1|Updated Mar 12, 2026
One-click install
npx skills add https://github.com/kaminocorp/hermes-alpha-hunter --skill imessage-kaminocorp
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: imessage
Source: https://github.com/kaminocorp/hermes-alpha-hunter/tree/main/skills/apple/imessage
Command: npx skills add https://github.com/kaminocorp/hermes-alpha-hunter --skill imessage-kaminocorp

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? It lets you send, read, and monitor iMessage and SMS conversations on macOS directly from the terminal, without manually opening Messages.app. ## Core Features & Use Cases - Send Messages: Deliver text and file attachments to phone numbers or Apple IDs, with control over iMessage versus SMS delivery. - Read History: List recent chats and retrieve conversation history with optional attachment details in JSON format. - Watch for Replies: Monitor a specific chat for incoming messages in real time. - Use Case: A user asks to text a family member; the assistant finds the contact's chat, confirms the recipient and message, then sends it via the imsg CLI. ## Quick Start Ask the assistant to send an iMessage saying you'll be late to a specific contact, 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 macOS terminal?▼

Use the imsg CLI with the send command, specifying the recipient phone number or Apple ID and the message text. You can attach files with the file flag and force iMessage or SMS delivery with the service flag.

How do I read iMessage history from the command line?▼

Run imsg chats to list recent conversations, then use imsg history with a chat ID to retrieve messages. Adding the json flag returns structured output, and the attachments flag includes file details.

What permissions does imsg need on macOS?▼

The terminal needs Full Disk Access, granted in System Settings under Privacy, to read the Messages database. macOS will also prompt for Automation permission for Messages.app the first time a message is sent.

Can I force SMS instead of iMessage when texting?▼

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

Does imsg work on Linux or Windows?▼

No, imsg only works on macOS because it relies on Messages.app and the local Messages database. On other platforms you would need a different messaging gateway or service.