Skip to content
Agent Orchestration
Skill

/imessage

Send and receive iMessages/SMS via the imsg CLI on macOS.

BOOST
From plugin
kheish
22178 skills
Install
$ npx -y skills add graniet/kheish --skill imessage --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/imessage

Context preview

The summary Claude sees to decide when to auto-load this skill.

Send and receive iMessages/SMS via the imsg CLI on macOS.

SKILL.md

imessage.SKILL.md
description: Send and receive iMessages/SMS via the imsg CLI on macOS.
version: 1.0.0
license: MIT
platforms:
- macos
metadata:
  catalog:
    tags:
    - iMessage
    - SMS
    - messaging
    - macOS
    - Apple
prerequisites:
  commands:
  - imsg

Kheish Compatibility

This skill is repo-local and stays inactive until explicitly activated.

When the original instructions refer to legacy tool names, use these Kheish mappings:

  • `terminal` => `bash`
  • `web_extract` => `web_fetch`, plus `web_search` when discovery is needed
  • `search_files` => `grep_search` and `glob_search`
  • `browser_*` tools require a browser-capable surfaced tool or MCP; if none is available, use the closest available surface and say so explicitly

When the instructions mention local helper files, resolve them from `${KHEISH_SKILL_DIR}`.

iMessage

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

Prerequisites

  • **macOS** with Messages.app signed in
  • Install: `brew install steipete/tap/imsg`
  • Grant Full Disk Access for terminal (System Settings → Privacy → Full Disk Access)
  • Grant Automation permission for Messages.app when prompted

When to Use

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

When NOT to Use

  • Telegram/Discord/Slack/WhatsApp messages → use the appropriate gateway channel
  • Group chat management (adding/removing members) → not supported
  • Bulk/mass messaging → always confirm with user first

Quick Reference

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

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

# Force iMessage or SMS
imsg send --to "+14155551212" --text "Hi" --service imessage
imsg send --to "+14155551212" --text "Hi" --service sms

Watch for New Messages

imsg watch --chat-id 1 --attachments

Service Options

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

Rules

1. **Always confirm recipient and message content** before sending 2. **Never send to unknown numbers** without explicit user approval 3. **Verify file paths** exist before attaching 4. **Don't spam** — rate-limit yourself

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"
Read more
Ships withkheish

Orchestration engine for long-running, tool-using AI agents

Get the whole plugin
Stats
221
Stars
19
Forks
Maintained
Maintenance
Rust
Language
Apache-2.0
License
2mo ago
Last commit
1y ago
Created
3h ago
Added

Repo: graniet/kheish

Other skills on kheish.