---
name: apple-messages
description: Use when the user wants to inspect Apple Messages services/chats or send iMessage/SMS from this Mac.
---

# Apple Messages

Use this skill for Apple Messages on this Mac only. The plugin runs the bundled Rust
`apple` binary from Sankalpcreat/Apple-CLI, which controls Messages.app through macOS
Automation and the user's configured message services.

## Paved Road

1. Do not run multiple messages commands in parallel.
2. Start with `services`, `buddies`, `chats`, or `chat-participants`.
3. Confirm recipient, chat, and message body before sending unless the user explicitly provided all details.
4. Prefer chat ids over chat names when sending to an existing chat.
5. Use `raw` for Apple-CLI commands not wrapped by the helper.

## Primary Commands

```bash
../../scripts/apple_messages services
../../scripts/apple_messages buddies --type imessage
../../scripts/apple_messages chats
../../scripts/apple_messages chat-participants --name "Family"
../../scripts/apple_messages send --to "+15555550123" --text "Running late" --type imessage
../../scripts/apple_messages send-chat --id CHAT_ID --text "Running late"
```

## Safety

- Treat `send` and `send-chat` as writes.
- Do not invent recipients, chat names, phone numbers, emails, or service names.
- Prefer a chat id over a chat name when sending to a chat.
- Avoid logging sensitive message content beyond what is needed to complete the task.

Full lifecycle examples live in `../../README.md`.
