imessage

Send and receive iMessage and SMS messages via macOS Messages.app using imsg.

Updated Apr 11, 2026
One-click install
npx skills add https://github.com/musical-basics/hermes-build-2 --skill imessage-musical-basics
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: imessage
Source: https://github.com/musical-basics/hermes-build-2/tree/main/skills/apple/imessage
Command: npx skills add https://github.com/musical-basics/hermes-build-2 --skill imessage-musical-basics

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides a reliable way to send, receive, and inspect iMessage and SMS conversations from macOS using a command-line interface, removing the need to manually open Messages.app for routine messaging and history checks.

Core Features & Use Cases

  • Read recent chats and conversation history to retrieve context or confirm prior messages.
  • Send single messages or attachments to phone numbers or Apple IDs and optionally force service type (iMessage or SMS).
  • Watch a chat for new incoming messages and use the tool in automated workflows with user confirmation safeguards.

Quick Start

Ask the assistant to send "I'll be late" to Mom at +1555123456 via iMessage after you confirm the recipient and message.

Frequently Asked Questions about imessage

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

FAQPage Schema
How do I send iMessages from the macOS terminal?

Send iMessages from the macOS terminal using the imsg command-line tool to dispatch messages or attachments to phone numbers and Apple IDs without opening Messages.app.

Can I read iMessage chat history from the command line?

Read iMessage chat history from the command line by using the imsg CLI to view recent conversations and retrieve context from prior messages on your macOS system.

Do I need Homebrew to install the imsg CLI for sending SMS?

You need Homebrew to install the imsg CLI for sending SMS, and macOS Messages.app must be signed in with appropriate privacy and automation permissions granted.

How does watching for new iMessage events work in automated workflows?

Watching for new iMessage events works by monitoring incoming messages through the imsg CLI, allowing integration into automated workflows with user confirmation safeguards.

Can I force SMS instead of iMessage when sending messages from macOS terminal?

Force SMS instead of iMessage when sending messages from the macOS terminal by specifying the service type in the imsg CLI command to control message routing.

What are the limitations of sending iMessages via a command-line interface?

Limitations of sending iMessages via a command-line interface include strict macOS requirements, needing Messages.app signed in, and mandatory privacy and automation permissions for operation.