Add iMessage Channel (NanoClaw)
Installs and wires an iMessage channel into NanoClaw using either a local Mac chat.db backend or a hosted photon.codes line.
AutomationAdvanced★ 30,471⑂ 12,865AI score 7/10Last updated: Aug 9, 2026
What it does
Walks (or automatically executes) the full process of adding the imessage channel to a NanoClaw install:
- Backend choice:
local(reads this Mac's signed-in iMessagechat.dbvia the Chat SDK bridge — macOS only) orhosted(a managed line through photon.codes'spectrum-tsgRPC stream — any OS, no Mac relay or public URL). - Copies the unified iMessage adapter plus its tests from the
channelsbranch intosrc/channels/and appends the single self-registration import to the channel barrel. - Installs only the chosen backend's dependency at an exact pinned version (
chat-adapter-imessage@0.1.1orspectrum-ts@11.0.0), respecting the repo's supply-chain policy. - Runs
pnpm run buildand a registration test that proves the channel really landed in the registry. - Handles the human steps: granting Full Disk Access to the correct Node binary (local) or the device-login wizard, E.164 number registration and first-text opt-in (hosted).
Every command is expressed as an idempotent nc: directive, so the skill is safe to re-run after a failure.
Who it's for
- NanoClaw users who want to talk to their personal agent over iMessage
- People without a spare Mac who still need an iMessage line (hosted path)
- Developers comfortable with pnpm, tsx and vitest who want the adapter install automated
Caveat: it is meaningless outside the NanoClaw repo, and the hosted path depends on an external photon.codes account.
Examples
- Local on a MacBook: say "add imessage" → pick
local→ grant Full Disk Access to Node → enter+14155551234→ restart and get a welcome message in your own iMessage thread. - Hosted on a Linux box: pick
hosted→ approve the device-login URL and code → text the assigned iMessage number once to opt in → chat with the agent from anywhere. - Debugging a silent adapter: run
pnpm exec vitest run src/channels/imessage-registration.test.ts; if green, checkgrep "Photon channel connected" logs/nanoclaw.logandlogs/nanoclaw.error.log.
· · · Install guide · · ·
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the .claude/skills/add-imessage folder from the GitHub repo nanocoai/nanoclaw into my ~/.claude/skills/add-imessage/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/nanocoai/nanoclaw.git && mkdir -p ~/.claude/skills && cp -r nanoclaw/.claude/skills/add-imessage ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Open a terminal and change into your working directory.
- Clone the repository:
git clone https://github.com/nanocoai/nanoclaw.git - Copy the skill into your Claude Code skills folder:
mkdir -p ~/.claude/skills && cp -r nanoclaw/.claude/skills/add-imessage ~/.claude/skills/ - Enter the project (
cd nanoclaw), runpnpm install, thenpnpm run buildto confirm the repo compiles. - Start Claude Code from inside the
nanoclawdirectory withclaude. - Type "add imessage" or "connect imessage" to trigger the skill.
- Answer
local(macOS only) orhosted, then follow the prompts for Full Disk Access or the photon.codes device login. - After the service restarts (
bash setup/lib/restart.sh), send one text from your phone to the agent's iMessage number to complete the handshake.
View source on GitHub ↗License: MIT