Overview
Agent Messaging Skill is the agent-messaging skill used by AI Maestro, 23blocks' MIT-licensed dashboard for running teams of coding agents. It implements the Agent Messaging Protocol (AMP), which gives agents email-like communication: send, check an inbox, read, reply, and download attachments, with Ed25519 signatures on messages. The skill's source repository is agentmessaging/claude-plugin (Apache-2.0), and it works with any AI agent that can execute shell commands. It is for agent-to-agent communication, not for messaging humans.
Key Features
- Identity per agent.
amp-init.sh --autocreates an identity with its own keys and message store;amp-identity.shshould be run first after a context reset so the agent rediscovers who it is. - Local and external addresses.
aliceexpands toalice@<your-org>.aimaestro.local; external addresses such asalice@acme.crabmail.aiwork after registering with a provider throughamp-register.sh. - Rich messages. Priorities (for example
urgent), message types (for examplerequest), JSON context, and file attachments. - Multi-agent aware. Commands accept
--id <uuid>, resolved fromAMP_DIR,CLAUDE_AGENT_ID,CLAUDE_AGENT_NAME, or the tmux session.
Quick Start
# Claude Code plugin
git clone https://github.com/agentmessaging/claude-plugin.git ~/.claude/plugins/agent-messaging
# or any agent via skills.sh
npx skills add agentmessaging/claude-plugin
amp-init.sh --auto
amp-send.sh alice "Hello" "How are you?"
amp-send.sh backend "Build log" "See attached" --attach build.log --priority urgent
amp-inbox.sh
amp-read.sh <message-id>
amp-reply.sh <message-id> "Done, deployed to staging"
It requires curl, jq, openssl, and base64 and runs on macOS and Linux.
Setup Note for Unattended Agents
Claude Code asks for approval before running Bash commands that are not allow-listed, so an agent processing its inbox in the background will stall at a prompt nobody sees. The skill documents the permissions.allow entries to add for amp-inbox.sh, amp-read.sh, amp-reply.sh, amp-send.sh, and similar commands, and deliberately leaves identity changes and amp-delete.sh requiring approval.
Use Cases
- A frontend agent asking a backend agent about an API change.
- Handing off a task, with context and files, between agents on different machines.
- Routing messages from Slack, Discord, email, or WhatsApp gateways into an agent's inbox in AI Maestro.
Limitations
- Useful only when you run more than one agent; external federation requires a provider account.
- Unattended use needs the permission allow-list configured per machine.
FAQ
Is it tied to Claude?
No. It is a set of POSIX bash scripts that any agent able to run shell commands can use.
Alternatives
- A2A Protocol, an open agent-to-agent protocol.
- CrewAI for coordinating several agents inside one framework instead of across separate sessions.
Related
Other AI Maestro skills: Memory Search, Docs Search, and Graph Query. More in Skills and the AI agent tag.
Comments
No comments yet. Be the first to comment!
Related Tools
Related Insights

Anthropic Subagent: The Multi-Agent Architecture Revolution
Deep dive into Anthropic multi-agent architecture design. Learn how Subagents break through context window limitations, achieve 90% performance improvements, and real-world applications in Claude Code.
Skills + Hooks + Plugins: How Anthropic Redefined AI Coding Tool Extensibility
An in-depth analysis of Claude Code's trinity architecture of Skills, Hooks, and Plugins. Explore why this design is more advanced than GitHub Copilot and Cursor, and how it redefines AI coding tool extensibility through open standards.
Stop Cramming AI Assistants into Chat Boxes: Clawdbot Picked the Wrong Battlefield
Clawdbot is convenient, but putting it inside Slack or Discord was the wrong design choice from day one. Chat tools are not for operating tasks, and AI isn't for chatting.