I now talk to AI the same way I talk to my wife and my parents—in iMessage. I text it when I'm taking the kids for a walk and get an idea, or when I remember someone I should follow up with. It knows who I am and can dig through 20 years of my email if I ask nicely.

I wanted an agent that could pull up Stripe customer info and draft personalized emails. Nothing worked cleanly—Zapier, ChatGPT, Claude's web interface all required too much hand-holding. So I built what I wanted with Claude Code.

Claude Code in iMessage

The result is claude-imessage—a plugin that watches your Mac's iMessage database and spawns autonomous Claude Code sessions to respond to texts.

The 20-Year Memory

One of my first tasks for it: go through two decades of email and write a journal entry for every month of my life. From this, I had it build a database of everyone I know—birthdays, kids' names, where we met, what we last talked about.

Now I use it to be a better friend. Before a call with someone I haven't spoken to in months, I ask for a refresher. It knows what's going on in their life because it has access to our email threads and my notes.

Why iMessage?

Before this, I was using a terminal emulator on my phone to SSH into a virtual machine running Claude Code. It worked, but the friction was too high—I wasn't using it nearly as much as I wanted to. That's when I got the idea to text it instead.

Other services let you text AI, but I wanted full control over what the agent can access and do.

I've tried dozens of AI interfaces. What I actually use is the thing I never close: my messages. iMessage is on my phone, my watch, my laptop. By putting Claude there, the AI becomes ambient.

I text it half-formed thoughts I'd never bother opening an app for. "What's that restaurant we liked in Portland?" "Draft a snarky reply to this email." Less like using a tool, more like having a friend who never gets tired of my nonsense.

How It Works

The plugin polls macOS's Messages database. When a message arrives from your configured contact, it spawns a Claude Code session with access to your full conversation history—both the iMessage thread and a persistent server-side context.

My agent has access to email, calendar, notes, and that database of everyone I know. When I text "schedule coffee with Jake next week," Claude finds a slot, creates the event, and confirms. That sentence took longer to write than the actual interaction.

Setup

/plugin marketplace add dvdsgl/claude-imessage
/plugin install imessage@dvdsgl

Configure your contact in ~/.claude-imessage.env and start the daemon:

/imessage-daemon start

A warning: this gives Claude significant access to your Mac. I have a dedicated Mac Mini for this, which feels paranoid until you remember what's at stake.


ChatGPT and Claude should have native iMessage integrations. The conversational interface is too natural to be an afterthought. Until then, claude-imessage scratches the itch.

That said, I'd happily switch to a managed service as they improve. Maintaining your own authentication to third-party services is tedious.