1
0
Fork 0
claude-code-complete-agent/messaging/imessage-setup.md
Kjell Tore Guttormsen b47fcdfc14 feat: add iMessage channel, channels setup guide, 3-way distinction
- messaging/channels-setup.md: comprehensive guide covering all 3
  channels (Telegram, Discord, iMessage), bun install, plugin setup,
  session persistence workarounds, and enterprise admin settings
- messaging/imessage-setup.md: macOS-specific iMessage setup with
  Full Disk Access, /imessage access allow, and known quirks
- messaging/README.md: rewritten with 3-way distinction table
  (Channels=event-based, Dispatch=message-based, RC=direct control)
- examples/12: expanded from 2 options to 3 with clear trigger model
- feature-map.md: row 9 updated to include iMessage
- README.md: session persistence warning added as top-level section

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 10:16:53 +01:00

94 lines
2.3 KiB
Markdown

# iMessage Channel Setup
Send a text to your Claude Code session from iMessage. Claude
reads it, executes with all your skills and tools, and texts
back the result. Works with iMessage (blue bubbles) and SMS
(green bubbles).
**macOS only.** iMessage requires the Messages app on macOS.
## Setup (5 minutes)
### 1. Grant Full Disk Access
System Settings > Privacy & Security > Full Disk Access >
Add your terminal (Terminal.app, VS Code, iTerm2, etc.)
This lets the plugin read the iMessage database.
### 2. Install Bun
```bash
curl -fsSL https://bun.sh/install | bash
```
### 3. Install the iMessage plugin
In a Claude Code session:
```
/install @anthropic-ai/claude-code-imessage
```
Verify: `/plugins` should show the iMessage plugin as connected.
### 4. Launch with channels
```bash
claude --channels
```
You should see: `Listening for channel messages from plugin iMessage`
### 5. Test it
Send yourself an iMessage: "Hey, can you hear me?"
Claude Code should receive the message and respond through
iMessage.
## Allow other phone numbers
By default, only your own number/Apple ID is allowed. To let
others text your Claude Code:
```
/imessage access allow +1234567890
```
Or allow by Apple ID:
```
/imessage access allow someone@icloud.com
```
The first time a new number texts, Claude Code will ask you
to confirm before allowing access.
## Known quirk: double messages
If you text yourself, every message appears twice (once as
sender, once as receiver). Fix: text from a different number
or Apple ID, or use the `/imessage access allow` command to
set up a separate contact.
## Tips
- **Bypass permissions for unattended use:**
`claude --channels --dangerously-skip-permissions`
(Only in trusted environments. Prefer Auto Mode instead.)
- **Auto Mode for safer autonomy:**
`claude --channels --enable-auto-mode`
- **Keep session alive:** Use `tmux` or `screen` so the session
survives if your terminal closes.
- **Skills via iMessage:** Any skill you have configured works.
Text "Run /daily-briefing" and your agent executes it.
## Limitations
- macOS only (iMessage database is a macOS feature)
- Session must be running (no daemon mode)
- No end-to-end encryption awareness (messages are plain text
to the plugin)
- Rate limiting: Claude Code processes one message at a time