Claude Skill
openclaw/imsg
imsg is a Swift CLI for Apple's Messages.app, allowing AI agents and scripts to send and receive SMS/iMessages. Open source, lightweight, and perfect for automation.
Overview
Repository
Install this Skill
git clone https://github.com/openclaw/imsg.gitRegistry
Summary
imsg is a Swift-based CLI tool that provides a command-line interface for Apple's Messages.app, enabling AI agents and scripts to send and receive SMS and iMessages directly from the terminal.
苹果Messages应用的命令行接口,让您的代理能够发送和接收短信/iMessages。
Key features
- CLI for Apple Messages.app
- Send and receive SMS/iMessages
- Swift-based, lightweight and fast
- Integrates with AI agents and automation
- Open source with active community
Use cases
- Automate iMessage replies with scripts
- Enable AI agents to send text alerts
- Integrate messaging into CI/CD pipelines
- Build custom notification systems
- Log and archive iMessage conversations
README excerpt
# imsg  Read, watch, and send iMessage / SMS from the macOS terminal — with stable JSON and JSON-RPC surfaces designed for agents, scripts, and long-running integrations. `imsg` reads `~/Library/Messages/chat.db` directly, streams new rows over filesystem events (with a polling fallback), and drives Messages.app through its public AppleScript automation surface. Advanced IMCore controls (read receipts, typing indicators, edit/unsend, group management, rich sends) are opt-in behind a SIP-disabled dylib injection. Linux builds are a read-only preview against a `chat.db` copied from macOS. Full docs: **[imsg.sh](https://imsg.sh)**. [Quickstart](https://imsg.sh/quickstart) · [JSON schema](https://imsg.sh/json) · [JSON-RPC](https://imsg.sh/rpc) · [Changelog](CHANGELOG.md) ## Highlights - **Local-first reads.** Chats, history, attachments, and search query `chat.db` directly — no daemon, no network round-trip. - **Live streams.** `imsg watch` follows filesystem events on `chat.db` and falls back to a lightweight poll when macOS drops events or rotates SQLite WAL sidecars. - **Send through Messages.app.** Text, files, and standard tapbacks ride the public AppleScript surface — no private send APIs required. - **Group-aware.** Direct chats, group threads, participants, GUIDs, and per-chat account routing hints all show up in JSON. - **Built for agents.** Stable JSON-RPC over stdio, deterministic JSON schemas, and `imsg completions llm` for in-context CLI help. - **Contacts integration.** Resolves names from Address Book when permission is granted, while keeping raw handles in the output. - **Attachment-aware.** Filenames, UTIs, byte counts, resolved paths, and optional CAF→M4A / GIF→PNG conversion for model cons