Interact with Messages app - read conversations, send messages, and check for new messages using AppleScript and SQLite database access
Manages iMessage conversations by reading messages, sending texts, and checking for new messages via database and AppleScript.
/plugin marketplace add dvdsgl/claude-imessage/plugin install dvdsgl-imessage@dvdsgl/claude-imessageThis skill inherits all available tools. When active, it can use any tool Claude has access to.
check-new-messages-db.shcheck-new-messages.shdaemon/README.mddaemon/imessage-auto-reply-daemon.shget-message-attachments.shlist-conversations.shread-messages-db.shread-messages.shsend-file.shsend-message.shsend-to-chat.shThis skill provides comprehensive Messages app interaction capabilities through command-line tools.
All tools are located in .claude/skills/imessage/ and use either AppleScript or direct SQLite database access to interact with the Messages app.
*-db.sh): Read messages directly from the Messages SQLite database (~/Library/Messages/chat.db). More reliable and faster, supports full message history including sent messages with proper text extraction.Recommended: Use database tools for reading (read-messages-db.sh, check-new-messages-db.sh) and AppleScript for sending (send-message.sh, send-to-chat.sh).
read-messages-db.sh) ⭐ RECOMMENDEDRead messages directly from the Messages SQLite database. This is the most reliable method for reading message history.
Usage:
# Read recent messages by phone number
.claude/skills/imessage/read-messages-db.sh "1234567890" --limit 10
# Read recent messages (all conversations)
.claude/skills/imessage/read-messages-db.sh --limit 20
Features:
check-new-messages-db.sh) ⭐ RECOMMENDEDCheck for recent incoming messages from the database. Used by the iMessage auto-reply daemon.
Usage:
# Check recent messages from specific number
.claude/skills/imessage/check-new-messages-db.sh "1234567890"
# Check all recent incoming messages
.claude/skills/imessage/check-new-messages-db.sh
Output Format:
MSG_ID: <unique_hash>
ROWID: <message_id>
DATE: <readable_timestamp>
TEXT: <message_text>
FROM: <phone_number>
CHAT: <chat_identifier>
---
send-message.sh) ⭐ RECOMMENDEDSend a message to a contact or phone number via AppleScript.
Usage:
# Send to contact name
.claude/skills/imessage/send-message.sh "John Doe" "Hey, how are you?"
# Send to phone number
.claude/skills/imessage/send-message.sh "+1234567890" "Message text here"
# Send with content from stdin
echo "Message content" | .claude/skills/imessage/send-message.sh "John Doe"
send-to-chat.sh)Send a message to a specific chat by chat identifier (useful for group chats).
Usage:
# Send to group chat
echo "Message text" | .claude/skills/imessage/send-to-chat.sh "chat123456789"
# Send directly
.claude/skills/imessage/send-to-chat.sh "chat123456789" "Message text"
send-file.sh)Send images, documents, or other files via iMessage using AppleScript.
Usage:
# Send file to phone number
.claude/skills/imessage/send-file.sh "+1234567890" "/path/to/file.jpg"
# Send file to contact name
.claude/skills/imessage/send-file.sh "John Doe" "/Users/user/Desktop/image.png"
Supported file types:
list-conversations.sh)List recent conversations with contact names and message counts.
Usage:
# List all conversations
.claude/skills/imessage/list-conversations.sh
# List first N conversations
.claude/skills/imessage/list-conversations.sh --limit 10
get-message-attachments.sh)Retrieve and process attachments from received messages.
Usage:
# Get attachments from a specific message (use ROWID from check-new-messages-db.sh)
.claude/skills/imessage/get-message-attachments.sh <message_rowid>
Output format:
IMAGE|/path/to/output.jpg|image/jpeg|original.jpg|1024x768|125K
FILE|/path/to/file.pdf|application/pdf|document.pdf||2.3M
Features:
~/tmp/Reading Messages (Database Approach - Recommended)
read-messages-db.sh with phone number to see conversation historySending Messages
send-message.sh for direct messagessend-to-chat.sh for group chatsChecking New Messages (Database Approach - Recommended)
check-new-messages-db.sh to check for recent incoming messagesFor Automated Daemons
check-new-messages-db.sh to poll for new messagesread-messages-db.sh to get conversation contextsend-message.sh or send-to-chat.sh to send repliesApplies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.