Skip to content

Notification

The Notification skill handles non-Slack notification channels. It supports generic webhooks, Discord, and Microsoft Teams — configure whichever channels your team uses. For Slack, use the dedicated Slack skill instead.

FieldValue
IDnotification
Categorynotification
Required env varsAt least one of: NOTIFICATION_WEBHOOK_URL, DISCORD_WEBHOOK_URL, TEAMS_WEBHOOK_URL (skill also declares SMTP_URL for future email support)

All config fields are optional. Set the ones for the channels you want to use.

Env varDescription
NOTIFICATION_WEBHOOK_URLGeneric webhook URL — receives a JSON POST
NOTIFICATION_WEBHOOK_ALLOWED_HOSTSComma-separated host allowlist (host[:port]) for the notify_webhook url override
DISCORD_WEBHOOK_URLDiscord webhook URL
TEAMS_WEBHOOK_URLMicrosoft Teams webhook URL
The skill activates when at least one of the above is set. If none are set, the skill will not appear in the available tool set.
ToolDescription
notify_webhookSend a JSON payload to a webhook URL
notify_discordSend a message to Discord with optional rich embeds
notify_teamsSend a MessageCard to Microsoft Teams

Posts a JSON payload to NOTIFICATION_WEBHOOK_URL. Useful for integrating with custom automation, PagerDuty, Opsgenie, or any service that accepts webhook POSTs.

The destination is locked to operator-configured values. The model can pass a url, but it is only honored when its host matches NOTIFICATION_WEBHOOK_URL or an entry in NOTIFICATION_WEBHOOK_ALLOWED_HOSTS; any other host is rejected with a clear error. This keeps a prompt-injected run from POSTing context to an arbitrary host.

Posts to your Discord channel via webhook. Supports Discord’s embed format for rich messages with titles, descriptions, colored sidebars, and inline fields.

Sends a MessageCard to Microsoft Teams via an incoming webhook. Supports a title, markdown body text, and a theme color for the card accent.

  1. In your Discord server, go to Channel Settings > Integrations > Webhooks.
  2. Create a new webhook and copy the URL.
  3. Set the environment variable:
Terminal window
export DISCORD_WEBHOOK_URL="https://discord.com/api/webhooks/..."
  1. In your Teams channel, go to Connectors > Incoming Webhook.
  2. Create a webhook and copy the URL.
  3. Set the environment variable:
Terminal window
export TEAMS_WEBHOOK_URL="https://outlook.office.com/webhook/..."

Set the URL of any service that accepts JSON POST requests:

Terminal window
export NOTIFICATION_WEBHOOK_URL="https://your-service.example.com/webhook"

To let notify_webhook target additional hosts, add them to an allowlist:

Terminal window
export NOTIFICATION_WEBHOOK_ALLOWED_HOSTS="hooks.slack.com,events.pagerduty.com"

The tool’s url argument is only honored when its host matches NOTIFICATION_WEBHOOK_URL or an allowlisted host. Arbitrary, model-chosen hosts are rejected, so the destination stays under operator control.

Triage workflow:

  • notify — Send the triage summary to Discord, Teams, or a webhook.

Implement workflow:

  • notify — Send the implementation result with issue and PR links.

The Notification skill is interchangeable with the Slack skill at notification nodes. You can configure both — Claude will use all available notification tools at the node.