imsg
macOS CLI tool for reading, monitoring, and sending iMessage and SMS messages via the native Messages.app.
Introduction
The imsg skill provides a powerful command-line interface for interacting with the macOS Messages.app ecosystem. Designed for power users and developers, this tool bridges the gap between terminal-based automation and standard Apple messaging services. It enables seamless integration of messaging workflows directly into your shell environment, allowing you to list chat histories, monitor incoming messages in real-time, and programmatically send text or media attachments. It is the primary tool for managing personal SMS and iMessage interactions within an OpenClaw AI assistant framework.
-
Full integration with macOS Messages.app for native iMessage and SMS sending.
-
Real-time chat history retrieval with JSON output support for easy parsing and data manipulation.
-
Watch command allows live monitoring of specific chat IDs, useful for triggering automations or notifications.
-
Advanced attachment handling for sending files directly from the command line.
-
Intelligent routing supports service selection between iMessage, SMS, or auto-detection based on recipient capability.
-
Secure interaction model requires explicit Full Disk Access and Automation permissions on macOS to ensure user privacy and system integrity.
-
Always confirm recipient details and message content before triggering the send command to prevent accidental communication errors.
-
The tool is designed for individual messaging and does not currently support bulk or mass messaging operations.
-
Requires macOS with a signed-in Messages.app account to function properly.
-
Does not support group chat management such as adding or removing participants.
-
Use jq or similar tools to filter and format JSON outputs when listing chats or history to maintain clarity in high-volume environments.
-
Respect system rate limits to avoid being flagged or causing issues with the underlying messaging database.
Repository Stats
- Stars
- 365,661
- Forks
- 74,940
- Open Issues
- 6,977
- Language
- TypeScript
- Default Branch
- main
- Sync Status
- Idle
- Last Synced
- Apr 28, 2026, 12:33 PM