AI Board

AI BOARD

AI Board

AI tools, policy moves, and public decisions are tracked in plain language.

All posts AI Briefs Tools Policy Education Industry

Mac and iPhone Users, Try This Right Now. The Era Has Opened Where You Can Assign Work to Claude by Text Message

Author
김 경진
Date
2026-03-26 23:53
Views
69

Mac and iPhone Users, Try This Right Now
The Era Has Opened Where You Can Assign Work to Claude by Text Message

Official Release of the Claude Code iMessage Plugin: Fully Local, No External Server, AI Works on Your Mac with One Text Message

March 26, 2026 · KIMKJ.COM

Thariq Shihipar, a member of Anthropic's Claude Code team, officially announced it on March 25, 2026. iMessage is now officially supported as a communication channel for Claude Code. Once you install the plugin on your Mac, you can open the Messages app from any Apple device, including an iPhone, iPad, or Apple Watch, and send Claude a message. Claude runs commands directly on the local Mac and sends the result back through iMessage.

This is the point. There is no external server. No token. It directly reads the macOS Messages database, chat.db, and sends messages with AppleScript. It runs 100% locally. You can use it alone, or invite family members or colleagues to use it together. It is currently in Research Preview and requires Claude Code v2.1.80 or later.


Prerequisites: What to Check Before You Start

Operating systemsupports macOS only. It does not work on Windows or Linux because iMessage itself is exclusive to the Apple ecosystem.

A paid Anthropic accountis required. Any of these will work: Claude Pro ($20/month), Claude Max ($100-$200/month), Teams, Enterprise, or a Console account with API credits. The free Claude.ai plan cannot use Claude Code.

Claude Code v2.1.80 or latermust be installed. In Terminal, claude --versionto check it. If the version is low, claude updateto update.

If Claude Code is not installed at all, install it first. The fastest path is the native installer.


curl -fsSL https://claude.ai/install.sh | bash

After installation, claudeopens the browser and asks you to authenticate with your Anthropic account. Log in, and setup is complete.


Step 1: Grant Full Disk Access

This plugin directly reads the macOS ~/Library/Messages/chat.db file. It is the SQLite database containing the full iMessage conversation history. macOS classifies this file as protected under TCC (Transparency, Consent, and Control). For a terminal app to access this file, it needs "Full Disk Access."

When the plugin first tries to read chat.db, macOS shows a popup asking whether to allow it. At this point, make sure to click Allow.

If the popup does not appear, or if you accidentally clicked "Don't Allow," you must set it manually.

Open System Settings

Go to Privacy & Security

Select Full Disk Access

Add the terminal app you use, such as Terminal.app, iTerm, or Ghostty, to the list and turn on the toggle

Without this permission, the plugin immediately exits with a authorization denied error.


Step 2: Install the iMessage Plugin

In Terminal, claudeto start a Claude Code session. Inside the session, enter the command below.


/plugin install imessage@claude-plugins-official

This is the iMessage plugin provided by Anthropic's official plugin repository, claude-plugins-official. No environment variable setup or separate token is required. One command finishes the installation.


Step 3: Relaunch Claude Code in Channel Mode

Installing the plugin does not make it work immediately. You need to close the current session and start a new one with the channel flag.


claude --channels plugin:imessage@claude-plugins-official

Once the session starts, /imessage:configuretry typing it. If tab completion works, the plugin loaded correctly.


Step 4: First Test, Text Yourself

From your iPhone or another Apple device, send an iMessage to yourself. A self-chat bypasses access control. It reaches Claude immediately without a separate allow setting.

When the first response is sent, macOS asks for one more permission. This is an Automation permission popup saying, "Terminal wants to control Messages." OKClick it.

Claude's response now arrives in the Messages app. The signature "Sent by Claude" is automatically added at the end of the response.


Step 5: Invite Others, Create a Family AI Chat Room

By default, all messages except your own are ignored. Claude does not auto-respond and silently drops them. To let another person use Claude, you must explicitly add them to the allowlist.


/imessage:access allow +821012345678

Specify a phone number, including country code, such as +821012345678, or an Apple ID email, such as family@icloud.com. When an allowed person sends an iMessage, Claude responds.

Group chats are supported too. In a group, you can set mention patterns so Claude does not respond to every message. It can respond only to messages containing a call phrase such as "Claude" or "@Claude." This lets you put Claude in a family group chat and call it only when needed.

The security design is sturdy. Access control changes, allow or block, are possible only by direct command in the terminal. Manipulating access control through incoming messages is blocked at the root. This design prevents prompt injection attacks. Pairing codes expire after one hour, and the settings directory path is blocked when files are transferred.


How It Works: What Happens Inside

Inbound - It polls chat.db once per second to check for new messages. Using a ROWID watermark method, it processes only messages that arrive after the maximum ROWID at startup. Even after restart, past messages are not replayed.

Outbound - It uses AppleScript's tell application "Messages" to send command. Text and chat GUIDs are passed through argv, avoiding escaping-related security issues.

History & Search - Direct SQLite queries against chat.db. It can access the full native iMessage history, not only messages after the server starts.

Attachments - Images and files can be sent and received through absolute filesystem paths stored in chat.db. The first image per message is passed to Claude as a local path.


Practical Use Scenarios

Messages sent to Claude Code through iMessage are not just chat. They are commands that access the full functionality of Claude Code. Claude can read files, run code, manage git, and use other skills and tools.

"Organize today's meeting notes" - reads the recording file saved on your Mac and creates an organized document

"Analyze this file" - if you attach an image or document, Claude reads and analyzes it

"Fix the bug in the project folder" - accesses the local codebase and edits it directly

"Schedule coffee with Jake next week" - checks the calendar and creates an event

"Collect and analyze YouTube comments" - automatically performs web scraping and data analysis


Optional Environment Variable Settings

IMESSAGE_APPEND_SIGNATURE - default value true. Adds "Sent by Claude" to the end of outgoing messages. falseremoves the signature when set

IMESSAGE_ACCESS_MODEstaticdisables runtime pairing and refers only to the access.json file when set. Suitable for unattended environments

IMESSAGE_STATE_DIR - changes the directory where access.json and pairing state are stored. The default is ~/.claude/channels/imessage


Keeping the Session Alive: How to Keep It Running After Closing Terminal

The iMessage plugin works only while the Claude Code session is active. If you close Terminal or the Mac goes to sleep, message receiving stops. If you want 24-hour operation, you need a way to keep the session alive.

Using tmux - Run Claude Code inside the terminal multiplexer tmux, and the session keeps running in the background even after you close the terminal window


tmux new -s claude-imessage
claude --channels plugin:imessage@claude-plugins-official
# Detach from the session with Ctrl+B, D (the session keeps running)
# Reconnect: tmux attach -t claude-imessage

Preventing sleep - Disable Mac sleep in System Settings, or caffeinate -sto prevent sleep with the command


Limitations to Know

AppleScript can send messages, but it does not support Tapback reactions, message editing, or threaded replies. These features require Apple's private APIs

If the Claude Code session ends, message receiving also stops. An active session is always required

It is currently in Research Preview. Features may change before official release


Overall Installation Flow Summary


Install Claude Code (confirm v2.1.80 or later)

System Settings -> Privacy & Security -> add your terminal app to Full Disk Access

claude Run -> /plugin install imessage@claude-plugins-official

After closing the session, claude --channels plugin:imessage@claude-plugins-official restart with

Send yourself an iMessage from iPhone -> confirm Claude's response

Invite family or colleagues: /imessage:access allow +전화번호



You no longer need to open a browser or switch apps to call an AI assistant. In the Messages app you already use every day, assign work to Claude the way you would text a friend. As long as your Mac is on, a single text from an iPhone, iPad, or Apple Watch becomes an AI work command.

📚 References (Sources) - Click to expand


KIMKJ.COM

#KimKyungJin #AttorneyKimKyungJin #KimKyungJinAI #AI #ArtificialIntelligence #AIExpert #AILaw #AIPolicy #AIRegulation #AIEthics #GenerativeAI #ChatGPT #Claude #GPT #LLM #DigitalTransformation #SmartCity #AutonomousDriving #DataRegulation #GDPR #PrivacyProtection #AIGovernance #AssemblymanKimKyungJin #LegalExpert #TechPolicy #AIEducation #AIAdministrativeRevolution #AIHegemonyWar #kimkj #kimkjcom


kimkj.com Home
Scroll to Top
kimkj.com Home