atrislabs/agent-sdk-demo/imessage
Claude Code and agent skill by atrislabs/agent-sdk-demo
- community
Checking that the SKILL.md file is still in the repository.
Use when an agent needs to inspect or send local macOS iMessage through Atris CLI. Triggers on iMessage, Messages.app, local text messages, chat.db, or texting someone from the user's Mac.
Install
npx vskill@latest install atrislabs/agent-sdk-demo/imessageSKILL.md
The same SKILL.md was published earlier as atrislabs/atris-plugins/imessage.
iMessage
Local iMessage is a Mac capability, not a cloud OAuth integration.
Use Atris CLI as the control surface.
- Check availability first.
- If the doctor says permissions are missing, ask the user to grant Full Disk Access to the terminal or Atris Desktop.
- Read context only when needed.
- Resolve named contacts through the cached local lookup command. Use
--refreshonly when the cache is stale or the result looks wrong.
If lookup returns unique: true, use primary.handle for the send. If lookup returns ambiguous: true, ask one concise clarification with the candidate names. If it returns no matches, ask for a phone number or exact contact name. Do not scan Contacts manually or loop over AppleScript; the CLI caches lookup results in ~/.atris/cache/imessage-contacts.json.
- Never send a message unless the user approved the exact recipient and exact text.
- For sending, use the fast local send command only after explicit approval.
The command normalizes US 10-digit phone numbers to +1..., checks doctor, sends through the local Messages AppleScript path using service type = iMessage, and returns JSON proof after the latest-outgoing Messages DB row settles. Use --receipt inside an Atris workspace when the action needs a durable atris/runs/imessage-send-*.md receipt.
If the recipient name is ambiguous, ask one concise clarification before sending. If the user gave a phone number or exact resolved handle, do not search the repo first.
Status Meaning
connected: truemeans this Mac can access the local Messages database and local scripting tools.connected: falsemeans the user needs macOS permissions, Messages setup, or local tooling.
Boundaries
- Do not route iMessage setup through Google OAuth.
- Do not treat iMessage as a cloud credential.
- Do not upload message contents unless the user explicitly asks.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingatris/skills/imessage/SKILL.md
Popularity
- 7-day trend score
- 5
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/atrislabs/agent-sdk-demo/imessage)