OpenClaw

Cómo conectar Discord como canal en OpenClaw

Tutorial paso a paso para integrar Discord con OpenClaw: crear el bot, configurar permisos, guardar el token de forma segura y empezar a chatear con tu agente de IA directamente en tu servidor de Discord.
En: OpenClaw, Discord, Tutorial, AI

Si ya tienes OpenClaw funcionando y querés llevar tu asistente de IA a donde ya está tu equipo o comunidad, Discord es una de las integraciones más naturales. En este tutorial te mostramos paso a paso cómo conectar Discord como canal en OpenClaw para que tu agente responda directamente en canales de texto y por mensajes directos (DMs).

Requisitos previos

  • OpenClaw instalado y corriendo en tu servidor
  • Una cuenta de Discord
  • Un servidor de Discord donde seas administrador
💡
Si no tienes un servidor de Discord, creá uno desde la app: Create My Own > For me and my friends. Toma 30 segundos.

Paso 1 — Crear la aplicación y el bot

Andá al Discord Developer Portal y hacé click en New Application. Ponele el nombre que quieras (por ejemplo, "OpenClaw" o "MiBot"). Después, en el sidebar izquierdo, hacé click en Bot y configurá el username — este es el nombre que va a aparecer en Discord.

Paso 2 — Habilitar los Privileged Gateway Intents

Seguí en la página Bot, bajá hasta Privileged Gateway Intents y activá estos tres toggles:

  • Message Content Intent (obligatorio) — sin esto, el bot NO puede leer el contenido de los mensajes
  • Server Members Intent (recomendado) — para resolución de nombres y allowlists por rol
  • Presence Intent (opcional) — solo si querés que el bot muestre estado de presencia
⚠️
Sin el Message Content Intent habilitado, el bot va a recibir los mensajes pero con el contenido vacío. Es el error más común y el más frustrante de debuggear.

Paso 3 — Copiar el Bot Token

Volvé arriba en la página Bot y hacé click en Reset Token. No te asustes por el nombre — la primera vez simplemente genera el token, no está reseteando nada.

Copiá el token y guardalo en un lugar seguro. Es como una contraseña: nunca lo compartas públicamente.

Paso 4 — Invitar el bot al servidor

En el sidebar, andá a OAuth2 y bajá a OAuth2 URL Generator. Habilitá estos scopes:

  • bot
  • applications.commands

Aparece una sección Bot Permissions. Habilitá como mínimo:

  • General: View Channels
  • Text: Send Messages, Read Message History, Embed Links, Attach Files
📝
Si tu bot va a postear en hilos de foros o canales de media, también habilitá Send Messages in Threads.

Copiá la URL generada abajo, pegala en el navegador, seleccioná tu servidor y hacé click en Continue. El bot debería aparecer en la lista de miembros.

Paso 5 — Obtener los IDs de Discord

Para la configuración de OpenClaw necesitás dos IDs internos. Primero, activá el modo developer:

  1. En Discord: User Settings (engranaje) → Advanced → activá Developer Mode
  2. Click derecho en el icono de tu servidorCopy Server ID
  3. Click derecho en tu propio avatarCopy User ID

Guardá ambos IDs — los vas a necesitar en el siguiente paso.

Paso 6 — Habilitar DMs desde miembros del servidor

Para que el bot pueda enviarte mensajes directos:

  1. Click derecho en el icono de tu servidorPrivacy Settings
  2. Activá Direct Messages

Esto permite que miembros del servidor (incluidos bots) te manden DMs. Después del pairing inicial puedes desactivarlo si solo vas a usar canales del servidor.

Paso 7 — Configurar el token de forma segura

El token del bot es un secreto. La forma correcta de configurarlo es como variable de entorno, no en texto plano en el JSON:

# Agregar el token al archivo .env de OpenClaw
echo 'DISCORD_BOT_TOKEN=<TU_TOKEN>' >> ~/.openclaw/.env
🔒
Nunca pongas el token directamente en openclaw.json. Si el archivo se sube a un repo o se comparte, tu bot queda expuesto. La variable de entorno es la forma segura.

Paso 8 — Configurar el canal en openclaw.json

Editá ~/.openclaw/openclaw.json y agregá la sección channels.discord:

{
  "channels": {
    "discord": {
      "enabled": true,
      "token": {
        "source": "env",
        "provider": "default",
        "id": "DISCORD_BOT_TOKEN"
      },
      "guilds": {
        "<TU_SERVER_ID>": {
          "requireMention": false,
          "users": ["<TU_USER_ID>"]
        }
      },
      "dmPolicy": "pairing",
      "allowFrom": ["<TU_USER_ID>"]
    }
  }
}

Reemplazá <TU_SERVER_ID> y <TU_USER_ID> con los IDs del Paso 5.

Algunas notas sobre la configuración:

  • requireMention: false — el bot responde a todos los mensajes sin necesidad de @. Si es un servidor compartido, cambialo a true
  • dmPolicy: "pairing" — los DMs requieren emparejamiento (seguro por defecto)
  • allowFrom — tu User ID se salta el pairing y tiene acceso directo

Antes de continuar, validá la config:

openclaw config validate

Si ves Config valid, todo bien. Si hay errores, openclaw doctor te dice exactamente qué campo falla.

Paso 9 — Instalar el plugin de Discord

Discord no viene incluido en OpenClaw por defecto — es un plugin externo:

openclaw plugins install @openclaw/discord
💡
Si tienes problemas de versión entre el CLI y el gateway, verificá con openclaw --version y openclaw gateway status. El plugin debe instalarse con la misma versión que el gateway.

Paso 10 — Reiniciar y verificar

# Reiniciar el gateway
openclaw gateway restart

# Verificar que Discord esté conectado
openclaw status

Deberías ver algo como:

│ Discord  │ ON      │ OK     │ ...

Paso 11 — Probar la conexión

Andá a Discord y mandale un mensaje directo al bot (click en su nombre en la lista de miembros → "Mensaje"). Si configuraste allowFrom con tu User ID, el bot te va a responder directamente.

Si usas dmPolicy: "pairing" sin allowFrom, el bot te da un código de emparejamiento. Aprobalo con:

openclaw pairing approve discord <CODIGO>

Resumen de la configuración

Campo Valor Qué hace
token.source: "env" Variable de entorno El token se lee de DISCORD_BOT_TOKEN, no queda en texto plano
requireMention false El bot responde sin necesidad de @
guilds.{id}.users ["user_id"] Solo este usuario puede interactuar en canales
dmPolicy "pairing" Los DMs requieren emparejamiento
allowFrom ["user_id"] Este usuario se salta el pairing

Troubleshooting

Problema Solución
Config invalid: must NOT have additional properties Verificá que el guild use users (array de IDs), no allow u otras keys
plugin not installed Ejecutá openclaw plugins install @openclaw/discord
Version mismatch entre CLI y gateway Verificá con which openclaw y openclaw --version
Bot no responde en canales Verificá que requireMention esté en false
Bot no responde a DMs Verificá que allowFrom tenga tu User ID o aprobá el pairing

Siguiente paso

Con Discord conectado, tu agente de OpenClaw puede responder en tiempo real en los canales de tu servidor. Si también querés conectar Telegram, consultá nuestro tutorial "Cómo conectar Telegram como canal en OpenClaw". Y si necesitás que el agente tenga acceso a herramientas HTTPS dentro del sandbox, tenemos otra guía sobre cómo construir una imagen Docker personalizada para el sandbox.

Más de Damos forma a la tecnología

En Orvium Labs, estamos listos para ayudarte a convertir tus ideas en realidad ¡Contáctanos hoy!

Contacto
¡Genial! Te has inscrito con éxito.
Bienvenido de nuevo! Has iniciado sesión correctamente.
Te has suscrito correctamente a Damos forma a la tecnología.
Su enlace ha caducado.
¡Éxito! Comprueba en tu correo electrónico el enlace mágico para iniciar sesión.
Éxito! Su información de facturación ha sido actualizada.
Su facturación no se actualizó.