Skip to main content
RStack notifies your team where they already are. One event fans out to every channel you configure; a webhook failure never fails a run.

What gets notified

  • Run started (sdlc_start)
  • Task validated — pass/fail with summary and attempt count
  • A rich task execution report — tool calls, guardrail hits, memory actions, checks
  • Human approval recorded (sdlc_approve)
  • A gate blocking — the moment work is blocked on an approval, every channel is paged

Configure — environment variables

Configure — .rstack/notifications.json

Environment variables win over the file for the same channel.

Verify in seconds

Per-channel results are printed; exit code is non-zero if any channel fails.

Channel notes

  • Slack — incoming webhook; native Block Kit payloads.
  • Teams — incoming webhook (connector); converted to MessageCard.
  • Discord — webhook; converted to embeds.
  • Telegram — create a bot with @BotFather, add it to your chat/group, use the bot token + chat id. Rendered as plain text.
  • WhatsApp — Meta WhatsApp Business Cloud API: a Meta app with the WhatsApp product, a system-user token, the sender phone-number id, and the recipient number in international format (no +).

For adapter authors

notifyAll never throws — it returns [{ channel, ok, detail }].