Claude Agent Skill · by Steipete

Imsg

Install Imsg skill for Claude Code from steipete/clawdis.

Works with Paperclip

How Imsg fits into a Paperclip company.

Imsg drops into any Paperclip agent that handles this kind of work. Assign it to a specialist inside a pre-configured PaperclipOrg company and the skill becomes available on every heartbeat — no prompt engineering, no tool wiring.

S
SaaS FactoryPaired

Pre-configured AI company — 18 agents, 18 skills, one-time purchase.

$27$59
Explore pack
Source file
SKILL.md122 lines
Expand
---name: imsgdescription: iMessage/SMS CLI for listing chats, history, and sending messages via Messages.app.homepage: https://imsg.tometadata:  {    "openclaw":      {        "emoji": "📨",        "os": ["darwin"],        "requires": { "bins": ["imsg"] },        "install":          [            {              "id": "brew",              "kind": "brew",              "formula": "steipete/tap/imsg",              "bins": ["imsg"],              "label": "Install imsg (brew)",            },          ],      },  }--- # imsg Use `imsg` to read and send iMessage/SMS via macOS Messages.app. ## When to Use ✅ **USE this skill 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 ❌ **DON'T use this skill 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 ```bashimsg chats --limit 10 --json``` ### View History ```bash# By chat IDimsg history --chat-id 1 --limit 20 --json # With attachments infoimsg history --chat-id 1 --limit 20 --attachments --json``` ### Watch for New Messages ```bashimsg watch --chat-id 1 --attachments``` ### Send Messages ```bash# Text onlyimsg send --to "+14155551212" --text "Hello!" # With attachmentimsg send --to "+14155551212" --text "Check this out" --file /path/to/image.jpg # Specify serviceimsg send --to "+14155551212" --text "Hi" --service imessageimsg 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 sending2. **Never send to unknown numbers** without explicit user approval3. **Be careful with attachments** — confirm file path exists4. **Rate limit yourself** — don't spam ## Example Workflow User: "Text mom that I'll be late" ```bash# 1. Find mom's chatimsg 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 confirmationimsg send --to "+1555123456" --text "I'll be late"```