c-messaging — Claude Code skill: what it does, how to install
Sends and reads iMessage, SMS, and WhatsApp chats directly from your agent session. Useful when you need to inspect unread threads or dispatch updates.
npx skills add daxaur/openpaw --skill c-messaging -a claude-codeWhat c-messaging does
This skill connects the assistant to two local command-line tools: imsg for iMessage and SMS, and wacli for WhatsApp. Through them, the agent can check unread messages, fetch recent conversation history, and dispatch text to individual contacts or group chats.
Because imsg relies on macOS and an active iMessage account, it will not function on Linux or Windows setups. For WhatsApp, you run wacli auth once to scan the setup QR code. Both utilities run locally on your system, so no external cloud API keys are required.
What it helps with
- check unread messages across iMessage and WhatsApp
- send direct messages using phone numbers or contact names
- dispatch updates into existing group chats
- review recent chat logs before sending a follow-up
Example prompts for the agent
- Check unread messages in WhatsApp with wacli unread
- Send "Meeting starts in 10 minutes" to +14155551234 using imsg
- List the last 10 conversations from iMessage with imsg list --limit 10
How to install c-messaging
1Skills CLI (Vercel)
npx skills add daxaur/openpaw --skill c-messaging -a claude-code2Manually: put the files in place
~/.claude/skills/c-messaging/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/c-messaging/
1Skills CLI (Vercel)
npx skills add daxaur/openpaw --skill c-messaging -a codex2Manually: put the files in place
.agents/skills/c-messaging/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add daxaur/openpaw --skill c-messaging -a cursor2Manually: put the files in place
.cursor/skills/c-messaging/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install daxaur/openpaw c-messaging2Manually: put the files in place
.github/skills/c-messaging/SKILL.md1Skills CLI (Vercel)
npx skills add daxaur/openpaw --skill c-messaging -a gemini-cli2Platform CLI
gemini skills install https://github.com/daxaur/openpaw --path skills/c-messagingManually: put the files in place
.devin/skills/c-messaging/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add daxaur/openpaw --skill c-messaging -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about c-messaging
How to install c-messaging in Claude Code?
Run npx skills add daxaur/openpaw --skill c-messaging -a claude-code. Alternatively, you can add the file directly at ~/.claude/skills/c-messaging/SKILL.md.
What does c-messaging do?
It enables the assistant to interact with iMessage, SMS, and WhatsApp using local CLI tools imsg and wacli.
What requirements are needed to run c-messaging?
You need macOS with a configured iMessage account for imsg, and a linked WhatsApp account authorized via wacli auth for WhatsApp messaging.
Source text
SKILL.md · MIT
--- name: c-messaging description: Send and read messages via imsg (iMessage) and wacli (WhatsApp). Supports sending to individuals or groups, reading recent conversations, and checking unread messages across both platforms. tags: [messaging, imessage, whatsapp, imsg, wacli, sms] --- This skill manages messaging via `imsg` (iMessage/SMS) and `wacli` (WhatsApp). Check availability with `which imsg wacli`. ## iMessage & SMS — `imsg` ```bash imsg send "Phone or Email" "Message text" # Send a message imsg send "+14155551234" "Hello!" imsg send "[email protected]" "Hey there" imsg list # List recent conversations imsg list --limit 10 # Last 10 conversations imsg read "+14155551234" # Read conversation with contact imsg read "+14155551234" --limit 20 # Read last 20 messages imsg unread # Show unread messages imsg group send "Group Name" "Message" # Send to a group chat imsg group list # List group chats imsg contacts # List contacts ``` ## WhatsApp — `wacli` ```bash wacli send "+14155551234" "Message text" # Send a message wacli send "Contact Name" "Hello!" # Send by name (if in contacts) wacli list # List recent chats wacli read "+14155551234" # Read conversation wacli read "+14155551234" --limit 20 wacli unread # Show unread messages wacli group list # List WhatsApp groups wacli group send "Group Name" "Message" wacli status "Your status text" # Set WhatsApp status ``` ## Usage Guidelines - Use `imsg` for iMessage/SMS to Apple devices or phone numbers. - Use `wacli` for WhatsApp contacts. - Phone numbers should include country code (e.g., +1 for US). - Check `imsg unread` or `wacli unread` before sending follow-ups. - If a contact name is ambiguous, prefer using the phone number directly. ## Notes - `imsg` requires macOS and an active iMessage account. - `wacli` requires WhatsApp to be linked — run `wacli auth` to scan QR code on first use. - Both tools operate locally; no cloud API credentials required after initial auth.
© daxaur · MIT · daxaur/openpaw