Overview

This guide shows you how to connect OpenRouter to Discord using OpenClaw. You'll configure the messaging channel, set up AI provider authentication, and deploy your assistant.

Discord Capabilities

  • Direct messages
  • Group chats
  • Media support
  • Reactions
  • Thread support
  • Native commands

OpenRouter Features

  • Access to 100+ models
  • Unified billing
  • Model comparison
  • Automatic fallbacks

Step 1: Configure Discord

  1. Create a Discord application at discord.com/developers
  2. Create a bot user and copy the token
  3. Set DISCORD_BOT_TOKEN environment variable
  4. Configure OAuth2 and add bot to your server
  5. Add discord configuration to openclaw.json

Step 2: Configure OpenRouter

OpenRouter API key

  1. Create account at openrouter.ai
  2. Generate API key
  3. Set OPENROUTER_API_KEY environment variable

Environment variable: OPENROUTER_API_KEY

Step 3: Combined Configuration

Add both configurations to your openclaw.json:

{
  "agents": {
    "defaults": {
      "model": {
        "primary": "openrouter/anthropic/claude-sonnet-4"
      }
    }
  },
  "models": {
    "providers": {
      "openrouter": {
  "models": {
    "providers": {
      "openrouter": {
        "apiKey": "${OPENROUTER_API_KEY}
    }
  },
  "channels": {
    "discord": {
      "token": "${DISCORD_BOT_TOKEN}",
      "applicationId": "your-app-id",
      "dmPolicy": "allowlist",
      "allowFrom": ["user123"]
    }
  }
}
}

Step 4: Start and Test

# Start the gateway
openclaw gateway start

# Check connection status
openclaw status

# View real-time logs
openclaw logs --follow

Access Control

Discord supports the following access control policies:

DM Policies

Policy Description
allowlist Only senders in allowFrom list are processed
pairing Unknown senders receive a pairing code; admin must approve
open All DMs are processed (requires allowFrom: ["*"])

Group Policies

Policy Description
allowlist Only groups in groupAllowFrom are processed
open All groups are processed

Deploy Options

Choose how to deploy your Discord + OpenRouter setup: