OpenClaw puede conectarse a Telegram mediante un bot. Esto te permite hablar con tu asistente de IA directamente desde Telegram — por DM o en grupos. Si ya usas Telegram en tu día a día, es una integración muy cómoda y rápida de configurar.
En esta guía vas a aprender a conectar Telegram como canal en OpenClaw, paso a paso.
Requisitos previos
- OpenClaw instalado y funcionando en tu máquina o VPS
- Una cuenta de Telegram
- Acceso al archivo de configuración de OpenClaw (
~/.openclaw/openclaw.json)
Paso 1 — Crear el bot en BotFather
- Abre Telegram y busca @BotFather (el oficial, con la marca de verificación azul).
- Envíale el comando
/newbot. - Te pedirá un nombre para el bot (puede tener espacios, ej: "Mi Asistente OpenClaw").
- Te pedirá un username (debe acabar en
bot, ej:mi_asistente_openclaw_bot). - BotFather te dará un token con un formato similar a:
123456789:ABCDefgh-IJKLmnop_QRSTuvwxyzPaso 2 — Añadir la configuración en OpenClaw
Edita tu archivo de configuración (~/.openclaw/openclaw.json). Dentro de la sección channels, añade el bloque de Telegram:
{
"channels": {
"telegram": {
"enabled": true,
"botToken": "<TU_TOKEN_DE_BOTFATHER>",
"dmPolicy": "pairing",
"groups": {
"*": { "requireMention": true }
}
}
}
}¿Qué significa cada campo?
enabled— Activa el canal de Telegram.botToken— El token que te ha dado BotFather.dmPolicy— Política de mensajes directos."pairing"significa que el primer mensaje genera un código que debes aprobar.groups.*— Configuración para grupos.requireMention: truehace que el bot solo responda cuando lo mencionas.
telegram al mismo nivel dentro de channels.Alternativa: usar variable de entorno
Si prefieres no poner el token directamente en el JSON, puedes usar la variable de entorno TELEGRAM_BOT_TOKEN:
export TELEGRAM_BOT_TOKEN="<TU_TOKEN_DE_BOTFATHER>"Y omitir el campo botToken en la configuración. El token en el archivo de configuración siempre tiene prioridad sobre la variable de entorno.
Paso 3 — Reiniciar el gateway
Para que OpenClaw cargue la nueva configuración, reinicia el gateway:
openclaw gateway restartPaso 4 — Verificar la conexión
Comprueba que Telegram está conectado:
openclaw channels statusDeberías ver algo como:
- Telegram default: enabled, configured, running, connected, transport:just now, mode:polling, token:configconnected y mode:polling, todo está bien. El bot ya está escuchando.Paso 5 — Vincular tu usuario (pairing)
Como hemos configurado dmPolicy: "pairing", el primer mensaje que envíes al bot generará un código de verificación:
- Abre Telegram y envía cualquier mensaje a tu bot (búscalo por el username que elegiste).
- El bot te responderá con un código de pairing.
- Aprueba el código desde la terminal:
openclaw pairing list telegram
openclaw pairing approve telegram <CÓDIGO>A partir de ese momento ya puedes hablar con tu asistente desde Telegram.
Paso 6 — Verificar en la Control UI
Si vas a Ajustes → Canales en la Control UI (http://localhost:18789), deberías ver Telegram listado junto a tus otros canales, con su estado de conexión.
Configuración adicional
Usar allowlist en vez de pairing
Si prefieres no usar el sistema de pairing y autorizar directamente por ID numérico:
{
"channels": {
"telegram": {
"enabled": true,
"botToken": "<TU_TOKEN>",
"dmPolicy": "allowlist",
"allowFrom": ["<TU_ID_NUMERICO_DE_TELEGRAM>"]
}
}
}Para obtener tu ID numérico de Telegram:
- Envía un mensaje al bot y revisa los logs:
openclaw logs --follow(busca el campofrom.id) - O usa un bot externo como
@userinfobot
Añadir el bot a un grupo
- Añade el bot al grupo desde Telegram.
- Obtén el chat ID del grupo (es un número negativo que empieza con
-100). Puedes verlo en los logs conopenclaw logs --follow. - Configúralo en la sección
groups:
{
"channels": {
"telegram": {
"groups": {
"-1001234567890": {
"requireMention": true
}
}
}
}
}Habilitar streaming de respuestas
Para ver las respuestas del bot mientras se generan (en vez de esperar al final):
{
"channels": {
"telegram": {
"streaming": "partial"
}
}
}Privacidad en grupos
Por defecto, los bots de Telegram tienen el modo privacidad activado, lo que limita qué mensajes del grupo pueden ver. Si quieres que el bot vea todos los mensajes:
- En BotFather:
/setprivacy→ selecciona tu bot → Disable - Importante: después de cambiar esto, elimina y vuelve a agregar el bot al grupo para que el cambio surta efecto.
Troubleshooting
groups, que requireMention es false o que lo estás mencionando, y que el modo privacidad está desactivado en BotFather.getMe returned 401 — El token es incorrecto o ha sido regenerado. Cópialo de nuevo desde BotFather.openclaw logs --follow para ver el error específico.dmPolicy es "pairing" y que el gateway está en funcionamiento.Resumen
- Crear bot en @BotFather y copiar token
- Añadir bloque
telegramenopenclaw.json - Reiniciar gateway con
openclaw gateway restart - Verificar conexión con
openclaw channels status - Enviar mensaje al bot y aprobar pairing
- Verificar en la Control UI
Con estos 6 pasos ya tienes tu asistente de IA accesible desde Telegram. A partir de aquí puedes configurar grupos, streaming, y ajustar las políticas de acceso según tus necesidades.