Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
steipete avatar

Imsg

  • 2.5k installs
  • 385k repo stars
  • Updated August 3, 2026
  • steipete/clawdis

imsg is an OpenClaw skill that uses the imsg CLI to list, read, watch, and send iMessage or SMS via macOS Messages.app.

About

The imsg skill wraps the imsg CLI for listing chats, reading history, watching new messages, and sending iMessage or SMS through macOS Messages.app. It applies only when the user explicitly asks for iMessage or SMS, not for Telegram, Signal, WhatsApp, Discord, or Slack channels that have dedicated tools. Requirements include macOS, Messages.app signed in, Full Disk Access for the terminal, and Automation permission for sending. Common commands cover imsg chats with JSON output, history by chat id with optional attachments, watch mode, and send with text, file attachments, and service flags for imessage, sms, or auto. Safety rules require confirming recipient and message content before send, avoiding unknown numbers without approval, verifying attachment paths, and self rate limiting to prevent spam. Bulk messaging always needs user confirmation first. The example workflow finds a contact chat, confirms the destination, then sends after approval.

  • macOS-only imsg CLI for chats, history, watch, and send commands.
  • Explicit channel routing: iMessage or SMS only, not Telegram or Slack.
  • Service flags for imessage, sms, or auto bubble selection.
  • Safety rules for recipient confirmation and attachment verification.
  • Example workflow to find a contact chat before sending text.

Imsg by the numbers

  • 2,486 all-time installs (skills.sh)
  • Ranked #167 of 2,719 Automation & Workflows skills by installs in the Skillselion catalog
  • Security screen: MEDIUM risk (skills.sh audit)
  • Data as of Aug 3, 2026 (Skillselion catalog sync)
At a glance

imsg capabilities & compatibility

Capabilities
chat listing with json output and limits · history and watch modes with attachment metadata · send text and file attachments with service sele · channel guardrails against wrong messaging tools · recipient and content confirmation safety workfl · brew install metadata for imsg binary
Use cases
orchestration · email
Platforms
macOS
Runs
Runs locally
Pricing
Free
From the docs

What imsg says it does

Bulk/mass messaging -> always confirm with user first
SKILL.md
npx skills add https://github.com/steipete/clawdis --skill imsg

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs2.5k
repo stars385k
Security audit1 / 3 scanners passed
Last updatedAugust 3, 2026
Repositorysteipete/clawdis

How can an agent safely read or send iMessage and SMS on macOS without using the wrong chat channel tool?

Read and send iMessage or SMS on macOS through the imsg CLI backed by Messages.app.

Who is it for?

macOS agent setups with imsg installed that need Messages.app read or send automation.

Skip if: Skip for Telegram, WhatsApp, Discord, Slack, group management, or bulk messaging without explicit approval.

When should I use this skill?

User asks to text someone, read iMessage history, list recent chats, or send SMS on macOS.

What you get

Confirmed chat lookup, sent message or retrieved history JSON, with explicit user approval before outbound sends.

  • chat listings
  • message history output
  • sent iMessage or SMS

By the numbers

  • Requires imsg binary installable via steipete/tap/imsg Homebrew formula
  • Supports darwin only per skill metadata

Files

SKILL.mdMarkdownGitHub ↗

imsg

Use imsg to read and send iMessage/SMS via macOS Messages.app.

When to Use

Use when:

  • User explicitly asks to send iMessage or SMS
  • Reading iMessage conversation history
  • Checking recent Messages.app chats
  • Sending to phone numbers or Apple IDs

When NOT to Use

Do not use when:

  • Telegram messages -> use message tool with channel:telegram
  • Signal messages -> use Signal channel if configured
  • WhatsApp messages -> use WhatsApp channel if configured
  • Discord messages -> use message tool with channel:discord
  • Slack messages -> use slack skill
  • Group chat management (adding/removing members) -> not supported
  • Bulk/mass messaging -> always confirm with user first
  • Replying in current conversation -> just reply normally (OpenClaw routes automatically)

Requirements

  • macOS with Messages.app signed in
  • Full Disk Access for terminal
  • Automation permission for Messages.app (for sending)

Common Commands

List Chats

imsg chats --limit 10 --json

View History

# By chat ID
imsg history --chat-id 1 --limit 20 --json

# With attachments info
imsg history --chat-id 1 --limit 20 --attachments --json

Watch for New Messages

imsg watch --chat-id 1 --attachments

Send Messages

# Text only
imsg send --to "+14155551212" --text "Hello!"

# With attachment
imsg send --to "+14155551212" --text "Check this out" --file /path/to/image.jpg

# Specify service
imsg send --to "+14155551212" --text "Hi" --service imessage
imsg send --to "+14155551212" --text "Hi" --service sms

Service Options

  • --service imessage - Force iMessage (requires recipient has iMessage)
  • --service sms - Force SMS (green bubble)
  • --service auto - Let Messages.app decide (default)

Safety Rules

1. Always confirm recipient and message content before sending 2. Never send to unknown numbers without explicit user approval 3. Be careful with attachments - confirm file path exists 4. Rate limit yourself - don't spam

Example Workflow

User: "Text mom that I'll be late"

# 1. Find mom's chat
imsg chats --limit 20 --json | jq '.[] | select(.displayName | contains("Mom"))'

# 2. Confirm with user
# "Found Mom at +1555123456. Send 'I'll be late' via iMessage?"

# 3. Send after confirmation
imsg send --to "+1555123456" --text "I'll be late"

Related skills

Forks & variants (1)

Imsg has 1 known copy in the catalog totaling 16 installs. They canonicalize to this original listing.

How it compares

Pick imsg when you need native Messages.app access on macOS rather than a third-party SMS API or web-only chat integration.

FAQ

Which platforms does imsg support?

iMessage and SMS through macOS Messages.app only; use other channel tools for Telegram, Signal, WhatsApp, or Discord.

What permissions are required?

Full Disk Access for the terminal and Automation permission for Messages.app when sending.

Must sends be confirmed first?

Yes. Always confirm recipient and message content before imsg send, and get approval for bulk messaging.

Is Imsg safe to install?

skills.sh reports 1 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.