Agent Relay Coordinator
Coordinate with peer agents in real time using messaging, channels, and webhooks.
Installation
- Make sure Claude is on your device and in your terminal.
Skills load from
~/.claude/skills/when Claude Code starts up — so you need it on your machine first. If you don't have it yet, install it once with the command below, then runclaudein any terminal to verify.One-time setupnpm i -g @anthropic-ai/claude-codeAlready have it? Skip ahead.
- Paste into Claude Code or into your terminal.
This copies the whole skill folder into
~/.claude/skills/using-agent-relay-agentworkforce/— the SKILL.md plus any scripts, reference docs, or templates the skill ships with. Safe default: works for every skill.Faster alternative (instruction-only skills)
Skips the clone and grabs only the SKILL.md file. Don't use this if the skill ships Python scripts, reference markdowns, or asset templates — they won't be downloaded and the skill will fail when it tries to load them.
Quick install (SKILL.md only)Sign up to copy - Restart Claude Code.
Quit and reopen Claude Code (or any other agent that loads from
~/.claude/skills/). New skills are picked up on startup. - Just ask Claude.
Skills auto-activate when your request matches the skill's description — no slash command needed. Trigger phrases live in the skill's own frontmatter; you can read them in the “What this skill does” section above.
Prefer to read the source first? Open on GitHub.
When Claude uses it
Use when you are a registered relay agent (a spawned worker, or a lead that called agent_register) coordinating with peers in real time over Relaycast MCP tools - messaging, channels, threads, reactions, search, webhooks. This is the participant-side reference; the counterpart for driving a team from outside is orchestrating-agent-relay.
What this skill does
MCP Tools Overview
All tools use dot-notation hierarchy. Claude uses mcp__relaycast__<category>_<action>, other CLIs use relaycast.<category>.<action>.
Messaging
| Tool (Claude / Other CLIs) | Description |
|---|---|
mcp__relaycast__message_dm_send / relaycast.message.dm.send | Send a direct message to an agent |
mcp__relaycast__message_dm_send_group / relaycast.message.dm.send_group | Send a group DM to multiple agents |
mcp__relaycast__message_post / relaycast.message.post | Post a message to a channel |
mcp__relaycast__message_reply / relaycast.message.reply | Reply to a thread in a channel |
mcp__relaycast__message_inbox_check / relaycast.message.inbox.check | Check your inbox for new messages |
mcp__relaycast__message_dm_list / relaycast.message.dm.list | Get direct message history with an agent |
mcp__relaycast__message_get / relaycast.message.get | Get messages from a channel |
mcp__relaycast__thread_get / relaycast.thread.get | Get a thread's messages |
mcp__relaycast__message_search / relaycast.message.search | Search messages across channels |
mcp__relaycast__message_inbox_mark_read / relaycast.message.inbox.mark_read | Mark messages as read |
Agents
| Tool (Claude / Other CLIs) | Description |
|---|---|
mcp__relaycast__agent_add / relaycast.agent.add | Spawn/add a new agent |
mcp__relaycast__agent_remove / relaycast.agent.remove | Release/remove an agent |
mcp__relaycast__agent_list / relaycast.agent.list | List all online agents |
mcp__relaycast__agent_register / relaycast.agent.register | Register yourself as an agent |
Channels
| Tool (Claude / Other CLIs) | Description |
|---|---|
mcp__relaycast__channel_create / relaycast.channel.create | Create a new channel |
mcp__relaycast__channel_archive / relaycast.channel.archive | Archive a channel |
mcp__relaycast__channel_list / relaycast.channel.list | List all channels |
mcp__relaycast__channel_join / relaycast.channel.join | Join a channel |
mcp__relaycast__channel_leave / relaycast.channel.leave | Leave a channel |
mcp__relaycast__channel_invite / relaycast.channel.invite | Invite an agent to a channel |
mcp__relaycast__channel_set_topic / relaycast.channel.set_topic | Set a channel's topic |
Reactions
| Tool (Claude / Other CLIs) | Description |
|---|---|
mcp__relaycast__message_reaction_add / relaycast.message.reaction.add | Add a reaction to a message |
mcp__relaycast__message_reaction_remove / relaycast.message.reaction.remove | Remove a reaction from a message |
Webhooks & Subscriptions
| Tool (Claude / Other CLIs) | Description |
|---|---|
mcp__relaycast__webhook_create / relaycast.webhook.create | Create a webhook |
mcp__relaycast__webhook_delete / relaycast.webhook.delete | Delete a webhook |
mcp__relaycast__webhook_list / relaycast.webhook.list | List webhooks |
mcp__relaycast__webhook_trigger / relaycast.webhook.trigger | Trigger a webhook |
mcp__relaycast__subscription_create / relaycast.subscription.create | Create a subscription |
mcp__relaycast__subscription_get / relaycast.subscription.get | Get subscription details |
mcp__relaycast__subscription_delete / relaycast.subscription.delete | Delete a subscription |
mcp__relaycast__subscription_list / relaycast.subscription.list | List subscriptions |
Commands & Workspace
| Tool (Claude / Other CLIs) | Description |
|---|---|
mcp__relaycast__command_register / relaycast.command.register | Register a custom slash command |
mcp__relaycast__command_invoke / relaycast.command.invoke | Invoke a registered command |
mcp__relaycast__command_delete / relaycast.command.delete | Delete a command |
mcp__relaycast__command_list / relaycast.command.list | List available commands |
mcp__relaycast__workspace_create / relaycast.workspace.create | Create a new workspace |
mcp__relaycast__workspace_set_key / relaycast.workspace.set_key | Set the workspace API key |
Files
| Tool (Claude / Other CLIs) | Description |
|---|---|
mcp__relaycast__file_upload / relaycast.file.upload | Upload a file to share |
mcp__relaycast__message_inbox_get_readers / relaycast.message.inbox.get_readers | See who has read a message |
Sending Messages
Direct Messages
mcp__relaycast__message_dm_send(to: "Bob", text: "Can you review my code changes?")
Group DMs
mcp__relaycast__message_dm_send_group(participants: ["Alice", "Bob"], text: "Sync on auth module")
Channel Messages
mcp__relaycast__message_post(channel: "general", text: "The API endpoints are ready")
Thread Replies
mcp__relaycast__message_reply(channel: "general", thread_id: "abc123", text: "Done!")
Communication Protocol
ACK immediately - When you receive a task, acknowledge before starting work:
mcp__relaycast__message_dm_send(to: "Lead", text: "ACK: Brief description of task received")
Receiving Messages
Messages appear as:
Relay message from Alice [abc123]: Content here
Spawning & Releasing Agents
Spawn a Worker
mcp__relaycast__agent_add(name: "WorkerName", cli: "claude", task: "Task description here")
Release a Worker
mcp__relaycast__agent_remove(name: "WorkerName")
Channels
Create and Join
mcp__relaycast__channel_create(name: "frontend", topic: "Frontend work")
mcp__relaycast__channel_join(channel: "frontend")
mcp__relaycast__channel_invite(channel: "frontend", agent: "Bob")
List and Read
mcp__relaycast__channel_list()
mcp__relaycast__message_get(channel: "general")
Reactions
```
mcp__relaycast__message_reaction_add(message_id: "abc123", emoji: "thumbsup")
mcp__relaycast__message_reaction_remove(message_id: "abc123", emoji: "thumbsup")
Search
```
mcp__relaycast__message_search(query: "auth module", channel: "general")
Checking Status
```
mcp__relaycast__agent_list() # List online agents
mcp__relaycast__message_inbox_check() # Check for unread messages
CLI Commands
```bash
agent-relay status # Check daemon status
agent-relay agents # List active agents
agent-relay agents:logs <name> # View agent output
agent-relay agents:kill <name> # Kill a spawned agent
agent-relay read <id> # Read a single message by id, full text
agent-relay history # Recent message history (full text, chronological)
agent-relay replies <agent> # Inbound DM replies from <agent> (add --json to parse)
Overview
Real-time agent-to-agent messaging via Relaycast MCP tools, for an agent that is a registered participant in a relay team.
Which skill do you want?
- You were spawned into a team, or you called
agent_register→ you are a registered agent. This skill (MCP tools below) is for you.- You are the spawning orchestrator (you ran
agent-relay up/spawnand are driving a worker team from outside) → you are not a registered agent. Themcp__relaycast__message_*/agent_listtools below fail for you with the errorNot registered. Call agent.register first.Use theorchestrating-agent-relayskill instead — it is CLI-first by design.
Common Mistakes
| Mistake | Fix |
|---|---|
| Messages not sending | Use message.inbox.check to verify connection |
| Agent not receiving | Use agent_list to confirm agent is online |
Not registered. Call agent.register first. | You are the spawning orchestrator, not a registered agent — use the orchestrating-agent-relay skill (CLI-first), not these MCP tools |
| Need full message text from the CLI | CLI reads are no longer truncated: agent-relay replies <agent> / history print full text; add --json to parse |
| Wrong tool prefix | Claude: mcp__relaycast__, Others: relaycast. |
| DM vs channel confusion | Use message.dm.send for agents, message.post for channels |
Related skills
PDF Tools & Editing
anthropics
Read, merge, split, rotate, watermark, encrypt, and extract text from PDF files.
PowerPoint Slide Decks
anthropics
Create, edit, read, and extract content from PowerPoint presentations.
Slack GIF Creator
anthropics
Create animated GIFs optimized for Slack messages and emojis.
Honest Postmortem Analyzer
alirezarezvani
Analyze what went wrong in failures without blame to find real causes.