---
title: "Agent Skills | WebhookRelay"
meta:
  "og:description": "Install the open-source Webhook Relay Agent Skills so Claude and other skill-aware agents can forward, transform, debug, tunnel, and schedule webhooks — and receive, parse and transform inbound email — with the relay CLI."
  "og:title": "Agent Skills"
  description: "Install the open-source Webhook Relay Agent Skills so Claude and other skill-aware agents can forward, transform, debug, tunnel, and schedule webhooks — and receive, parse and transform inbound email — with the relay CLI."
---

![Stripes](https://webhookrelay.com/docs/skills/images/stripes.svg)

Documentation

**Fundamentals**

# **Agent Skills**

Install the open-source Webhook Relay Agent Skills so Claude and other skill-aware agents can forward, transform, debug, tunnel, and schedule webhooks — and receive, parse and transform inbound email — with the relay CLI.

## [Overview](#overview)

[Agent Skills](https://agentskills.io/specification) are small, self-contained instruction packs that teach Claude (and other skill-aware agents) how to perform a specific task. Webhook Relay publishes an open-source set of Skills that show agents how to drive the platform with the `relay` CLI and API — forwarding webhooks, transforming them, debugging incoming requests, exposing services over tunnels, scheduling recurring webhooks, and receiving, parsing and transforming inbound email.

The Skills are maintained on GitHub:

- [github.com/webhookrelay/skills](https://github.com/webhookrelay/skills)

Use that repository to browse the source, open issues, or contribute new skills.

## [Quick start](#quick-start)

Install every skill with the [skills.sh CLI](https://webhookrelay.com/docs/skills/docs/skills-cli/):

```
npx skills add webhookrelay/skills
```

That drops the skills into your agent's skills directory. From then on you can ask your agent in plain language — it picks the right skill and runs the `relay` commands for you:

| Ask your agent | Skill it uses |
| --- | --- |
| _"Give me a webhook URL to test my Stripe integration"_ | `webhook-debug` |
| _"Forward my GitHub webhooks to localhost:3000"_ | `webhook-forwarding-internal` |
| _"Relay this webhook to Slack without running anything locally"_ | `webhook-forwarding-public` |
| _"Reshape this payload into a Slack message before delivering it"_ | `webhook-transformations` |
| _"Expose my local dev server on a public HTTPS URL"_ | `relay-tunnels` |
| _"Send a health-check webhook every 5 minutes"_ | `recurring-webhooks` |
| _"Give me a throwaway email address and read what it receives"_ | `temporary-email` |
| _"Turn incoming emails into JSON and POST them to my API"_ | `transform-email-to-api-call` |

See [all the ways to install](#installation) — single skill, Claude Code plugin, ClawHub, or manual — below.

## [Skills vs. MCP](#skills-vs-mcp)

Skills and the [MCP server](https://webhookrelay.com/docs/skills/docs/mcp/) solve related but different problems, and they work well together:

- **Skills** are instructions. They teach an agent _how_ to use the `relay` CLI/API correctly — the right commands, payload shapes, and workflows. They run wherever your agent has a shell.
- **[MCP](https://webhookrelay.com/docs/skills/docs/mcp/)** is a live connection. It gives an agent typed tools to manage buckets, inspect webhook logs, and work with transform functions directly against your account.

Install the Skills for guided, command-line workflows; connect MCP when you want the agent to call Webhook Relay tools directly.

## [Available skills](#available-skills)

| Skill | What it does |
| --- | --- |
| `webhook-debug` | Capture and inspect webhooks with a free, no-signup bin at [bin.webhookrelay.com](https://bin.webhookrelay.com) — a public URL that records any HTTP request so you can see the exact method, headers, query and body a provider sends, stream requests live, mock the response, and verify HMAC signatures. No CLI or account required. |
| `webhook-forwarding-internal` | Receive webhooks from providers (Stripe, GitHub, Shopify, CI, etc.) and forward them to a destination with no public IP — `localhost`, a private LAN host, or a Kubernetes service. The `relay` agent performs the final hop, so no inbound firewall ports are needed. Best for local development. |
| `webhook-forwarding-public` | Forward webhooks server-side from a public Webhook Relay endpoint to another internet-reachable URL — no local agent required. Relay between cloud services, put a stable URL in front of an API, fan one webhook out to many destinations, or transform payloads in transit. |
| `webhook-transformations` | Write, test, and attach JavaScript (or Lua) functions that modify webhooks in flight — reshape the JSON body, rename fields, add/remove headers, change the method or path, set the response, drop requests conditionally, or call other HTTP APIs. |
| `relay-tunnels` | Expose a local or internal HTTP/TCP service on a stable public hostname (an ngrok-style reverse proxy) without opening firewall ports — share a dev server, demo a local app, expose an internal API, or tunnel TCP (SSH, databases). |
| `recurring-webhooks` | Schedule cron-driven webhooks that fire automatically — send a recurring HTTP request (method, body, headers) to one or more destinations on an interval or at specific times. Use for health checks, heartbeats, scheduled reports, or triggering a function on a timer. |
| `temporary-email` | Create a disposable / temporary inbound email address from the terminal and read the mail it receives as JSON — no mailbox, SMTP server, or per-address signup. Grab a throwaway inbox for a signup / OTP / confirmation link, receive one-off mail in a script, or watch an address for incoming messages. |
| `email-parsing-api` | Turn inbound email into structured JSON — create an inbound address and every message is parsed into a stable payload (from, to/cc, subject, text, html, headers, spf/dkim/dmarc, attachments), delivered to your endpoint or pulled from the events API. An "email → JSON" API with no SMTP/IMAP server. |
| `transform-email-to-api-call` | Turn inbound emails into calls to your own API — a bucket with an email address, a public output pointing at your API, and a JavaScript function that reshapes the parsed email into the exact request your endpoint expects. Email-driven automation, e.g. create a ticket/lead/record from an email. |

## [Installation](#installation)

The fastest way to install is with the [skills.sh CLI](https://webhookrelay.com/docs/skills/docs/skills-cli/):

```
npx skills add webhookrelay/skills
```

Add `-g` to install globally for all your agents:

```
npx skills add webhookrelay/skills -g
```

### [Install a single skill](#install-a-single-skill)

Pass `--skill <name>` to install just one:

```
npx skills add webhookrelay/skills --skill webhook-debug
```

### [Claude Code plugin marketplace](#claude-code-plugin-marketplace)

The repository doubles as a Claude Code plugin marketplace. Add it, then install the plugin:

```
/plugin marketplace add webhookrelay/skills
/plugin install webhookrelay-skills
```

### [ClawHub](#clawhub)

The skills are also published on [ClawHub](https://clawhub.ai), the open registry for AI agent skills. Install the bundled [Webhook Relay skill](https://clawhub.ai/rusenask/webhook-relay) with the `openclaw` CLI:

```
openclaw skills install webhook-relay
```

See [Webhook Relay on ClawHub](https://webhookrelay.com/docs/skills/docs/clawhub/) for what the registry does and how the skill fits.

### [Manual install](#manual-install)

You can also copy any `skills/<name>/` folder from the [repository](https://github.com/webhookrelay/skills) into your agent's skills directory.

## [Prerequisites](#prerequisites)

The `webhook-debug` skill works against the public bin API with nothing but `curl` — no account or key needed.

Every other skill uses the `relay` CLI:

1. Install it — see [CLI installation](https://webhookrelay.com/docs/skills/docs/installation/cli/).
2. Log in: `relay login` (or set the `RELAY_KEY` / `RELAY_SECRET` environment variables).
3. Verify: `relay bucket ls`.

## [Concepts at a glance](#concepts-at-a-glance)

- **Bucket** — groups inputs and outputs.
- **Input** — a public HTTPS endpoint that receives webhooks.
- **Output** — a destination requests are relayed to; `internal` (delivered by a running agent, e.g. localhost) or `public` (delivered server-side).
- **Function** — server-side JavaScript/Lua that transforms requests/responses.
- **Tunnel** — a public hostname that proxies inbound HTTP/TCP to a local or internal service.
- **Cron** — a scheduled, recurring webhook.

See [Getting Started](https://webhookrelay.com/docs/skills/docs/) for the full model.

## [Issues and contributions](#issues-and-contributions)

The Skills are open source. To report a problem, request a new skill, or read the code, use the GitHub repository:

- [github.com/webhookrelay/skills](https://github.com/webhookrelay/skills) — browse the code and [open an issue](https://github.com/webhookrelay/skills/issues).

## [Links](#links)

- [Webhook Relay Skills on GitHub](https://github.com/webhookrelay/skills)
- [skills.sh CLI](https://webhookrelay.com/docs/skills/docs/skills-cli/) — what it is and how to install with it
- [Webhook Relay on ClawHub](https://webhookrelay.com/docs/skills/docs/clawhub/)
- [MCP server](https://webhookrelay.com/docs/skills/docs/mcp/)
- [Functions reference](https://webhookrelay.com/docs/skills/docs/webhooks/functions/)
- [CLI installation](https://webhookrelay.com/docs/skills/docs/installation/cli/)
- [Dashboard](https://my.webhookrelay.com)
- LLM-friendly docs index — append `.md` to any docs URL for plain markdown, or see [llms.txt](https://webhookrelay.com/llms.txt)

Did this page help you?