Letta logo

Skill

imsg

send and manage iMessage conversations

Published by Letta Updated Jul 13
Covers iMessage CLI Messaging

Description

iMessage/SMS CLI for listing chats, history, and sending messages via Messages.app.

SKILL.md

imsg

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

Limitations

  • Group chat management (adding/removing members) is not supported
  • macOS only

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

# Filter by date
imsg history --chat-id 1 --start 2026-01-01T00:00:00Z --json

Watch for New Messages

imsg watch --chat-id 1 --attachments
imsg watch --chat-id 1 --debounce 250ms

Send Messages

# Send to phone number
imsg send --to "+14155551212" --text "Hello!"

# Send to existing chat by ID (useful for replies)
imsg send --chat-id 86 --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"

© 2026 YourAI.tools. Every skill from an identity-verified publisher.

Independent catalog. Not affiliated with, endorsed by, or sponsored by Anthropic or any listed publisher. All trademarks belong to their respective owners.