Skip to content
Back to skills

Relay

ASecurity

Build, run and debug agents on Relay, the messenger where people text and call AI agents. Use when creating a Relay agent, texting or calling its owner, setting its profile picture, answering or placing voice and video calls, or working with the Relay SDK, CLI, WebSocket, Webhooks or API.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentstypescriptpythonapi

Works with

  • cli
  • api
  • mcp

Security analysis

A100/100

Pro scans all 10 files and shows the line behind each finding

Scanned October 3, 2026

npx -y skills add RelayMessenger/Relay-SDK --skill relay --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Relay?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Relay
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/relaymessenger-relay/badge)](https://www.skillsdirectory.com/skills/relaymessenger-relay)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: relay
description: Build, run and debug agents on Relay, the messenger where people text and call AI agents. Use when creating a Relay agent, texting or calling its owner, setting its profile picture, answering or placing voice and video calls, or working with the Relay SDK, CLI, WebSocket, Webhooks or API.
---

# Relay

Relay carries Messages and Calls between people and agents. Your process is
the agent's brain: it reads events, decides, and answers through the Relay API.

## Build an agent people text and call

Do these in order. Each link has the canonical code; copy it, do not explore
the SDK source or the iOS app.

1. Create the agent and save its token: [build an agent](references/build-an-agent.md#create-the-agent).
2. Set its profile picture on its Contact Card: [profile picture](references/build-an-agent.md#set-the-profile-picture).
3. Run one process that reads its events over the WebSocket and texts back:
   [texting agent](references/build-an-agent.md#text-over-the-websocket).
4. When it runs, text its owner hello, once: [text the owner](references/build-an-agent.md#text-the-owner).
5. Answer calls in that same process and bridge the audio to any voice
   provider: [answer calls](references/calls.md#answer-a-call).
6. Send its own video on every call, from any frame source:
   [the agent's camera](references/calls.md#the-agents-camera).
7. When calls are set up, call its owner so they can try it: [call a person](references/calls.md#call-a-person).

Finish each step by running it against Relay, not only by compiling.

## Route

- Contract, routes, fields, events: [the locked reference](references/relay-v1-lock.json)
  and `contracts/relay-v1-openapi.yaml`. Report hash or source drift.
- Messages, buttons, list pickers, rich cards, carousels, forms, payments,
  places, threads, voice memos: [messaging](references/messaging.md).
- Chats, contacts, sharing a card, person fields, chat activity:
  [chats and contacts](references/chats-and-contacts.md).
- Calls, call events, video, Rive, voice frameworks: [calls](references/calls.md).
- `GET /v1/me`, who can message the agent, Log in with Relay, hosted MCP:
  [agent settings](references/agent-settings.md).
- Public agent directory: [directory](references/directory.md).
- Webhooks, WebSocket, ACK, replay, sync: [agent events](references/agent-events.md).
- Tokens, environments, retries, errors, TypeScript and Python SDKs:
  [SDK and auth](references/sdk-and-auth.md).
- CLI commands and profiles, skill installation: [CLI and skills](references/cli-and-skills.md).
- Asking a person for a rating: [ratings](references/ratings.md).

Docs: https://docs.relayapp.im/llms.txt lists every page.

## Rules

- Never invent a route, field, event, package, or product rule. Mark behavior
  the contract does not prove as `unknown`.
- Prefer `@relaymessenger/sdk` for TypeScript and `relaymessenger` for Python.
- Keep tokens and API keys in `.env` or a secret store; never print them,
  commit them, or put them in command arguments.
- Use one API origin and token from the same environment for every request.
- Every person-visible string comes from the model; never send canned text.

Files in this skill

  • SKILL.md1.5 KB
  • SOURCE.json184 B
  • agents/openai.yaml466 B
  • references/agent-events.md4.5 KB
  • references/chats-and-contacts.md3.2 KB
  • references/cli-and-skills.md9.3 KB
  • references/communities.md1.7 KB
  • references/messaging.md7.4 KB
  • references/relay-v1-lock.json1.5 KB
  • references/sdk-and-auth.md4.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…