Claude Skill
openclaw/imsg
imsg 是一个基于 Swift 的命令行工具,为苹果 Messages 应用提供接口,让 AI 代理和脚本能够发送和接收短信/iMessage。开源、轻量,适合自动化场景。
概览
仓库信息
安装这个 Skill
git clone https://github.com/openclaw/imsg.gitRegistry 信息
项目简介
imsg 是一个基于 Swift 的命令行工具,为苹果 Messages 应用提供命令行接口,让 AI 代理和脚本能够直接从终端发送和接收短信及 iMessage。
CLI for Apple's Messages.app so your agent can send and receive text messages/iMessages.
要点
- 苹果 Messages 应用的命令行接口
- 发送和接收短信及 iMessage
- 基于 Swift,轻量且快速
- 可与 AI 代理和自动化集成
- 开源且社区活跃
使用场景
- 通过脚本自动回复 iMessage
- 让 AI 代理发送文本提醒
- 将消息集成到 CI/CD 流水线
- 构建自定义通知系统
- 记录和归档 iMessage 对话
README 摘要
# 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