An iMessage assistant
that lives on your Mac.
Sveds runs on a spare Mac (or your daily driver), watches your iMessage thread, and replies using your own Claude Max subscription. No cloud middleman. Taps Calendar, Reminders, Notes, Mail, Contacts directly.
One command. macOS only.
Installs bun if missing, fetches the latest release, wires the sveds CLI into ~/.local/bin.
curl -fsSL https://sveds.com/install | shThree steps after install
Grant Full Disk Access so Sveds can read chat.db, then install + start the launchd job. The bridge auto-restarts at login.
# 1. Grant Full Disk Access to your terminal
# System Settings → Privacy & Security → Full Disk Access
# Add your terminal app, then Cmd+Q and reopen.
# 2. Install + start the bridge
sveds daemon install
sveds daemon start
# 3. Watch it round-trip
sveds watchPick how Sveds appears in iMessage
Dedicated Apple ID
Sign into Messages.app with a fresh email-only Apple ID on the Mac mini. Sveds shows up on your iPhone as a normal contact card. Your other devices stay clean.
Reuse your Apple ID
Faster to set up, but Sveds's outbound shows in your own self-thread on your iPhone. Fine for testing.
Then text it like any contact
# Text the Mac mini's iMessage handle from your iPhone:
sveds: what's on my calendar today?The default trigger prefix is sveds: — anything else is ignored. Replies arrive within 5–15 seconds.
No magic, just a bridge
- chat.db poll — watches your local iMessage SQLite for new rows.
- headless claude -p — spawns the Claude Code CLI per inbound, with per-chat session resume.
- osascript send — replies via Messages.app's AppleScript bridge.
- launchd supervisor — survives reboots, heartbeats every 5 seconds, watchdog notifies on stalls.