Claude Code no tiene que vivir solo en la terminal: los Canales permiten conectarlo a Telegram o Discord y controlarlo desde el celular, en equipo, sin abrir una laptop. Esta guía cubre el setup completo de ambas plataformas, las diferencias clave entre ellas, y cómo configurar la seguridad para no exponer tu agente al mundo.
La terminal es el entorno natural de Claude Code, pero no siempre es el entorno más práctico. Si lanzás un agente de larga duración —un scraper, un proceso de generación masiva, un workflow de deployment— quedarte pegado a la terminal esperando es un cuello de botella innecesario. Los Canales resuelven eso: son plugins oficiales de Anthropic que conectan Claude Code a Telegram o Discord y permiten comunicarte con él como si fuera un colaborador más.
El caso de uso más directo: lanzás Claude Code en tu servidor, te vas a hacer otra cosa, y cuando el agente necesita input o termina su tarea, te manda un mensaje al celular. También funciona para equipos donde más de una persona necesita interactuar con el mismo proceso.
Ambos plugins requieren Bun como runtime. Si no lo tenés instalado:
curl -fsSL https://bun.sh/install | bash
Verificá con bun --version antes de continuar.
Telegram es la opción más rápida de configurar. El bot llega en minutos y la limitación principal —que no puede leer mensajes anteriores— raramente importa para el uso típico.
Abrí Telegram y buscá @BotFather. Ejecutá /newbot, elegí un nombre para el bot y un username que termine en bot (por ejemplo mi_claude_bot). BotFather te devuelve un token: copialo y guardalo como si fuera una contraseña, porque lo es.
Dentro de Claude Code:
/plugin install telegram@claude-plugins-official
/telegram:configure TU_TOKEN_AQUI
Reemplazá TU_TOKEN_AQUI con el token que te dio BotFather.
claude --channels plugin:telegram@claude-plugins-official
Mandá cualquier mensaje al bot desde Telegram. El bot responde con un código de 6 caracteres. Usalo en Claude Code:
/telegram:access pair CODIGO
/telegram:access policy allowlist
Esto es crítico: sin allowlist, cualquier persona que encuentre tu bot podría mandarle comandos a tu Claude Code.
Limitación importante: Telegram no tiene historial de mensajes. El bot solo puede interactuar con mensajes que recibe en tiempo real desde que Claude Code está corriendo. Si Claude Code se cae y se reinicia, los mensajes anteriores no son accesibles.
Discord tiene más pasos de configuración, pero a cambio ofrece historial de mensajes, lo que lo hace mejor candidato para workflows donde el contexto de conversación importa o para equipos que trabajan en horarios distintos.
curl -fsSL https://bun.sh/install | bash
Entrá a discord.com/developers/applications, hacé click en New Application, dale un nombre y confirmá.
En la sección Bot del portal, buscá Privileged Gateway Intents y activá Message Content Intent. Sin esto, el bot puede existir en el servidor pero no puede leer lo que escriben los usuarios.
En la misma sección Bot, hacé click en Reset Token. El token se muestra una sola vez —copialo ahora. Si cerrás esa pantalla sin copiarlo, tenés que resetearlo de nuevo.
Navegá a OAuth2 > URL Generator. Marcá el scope bot y seleccioná estos permisos:
Generá la URL, abrila en el browser, y autorizá el bot en tu servidor de Discord.
/plugin install discord@claude-plugins-official
/discord:configure
El comando te va a pedir el token que copiaste en el paso 4.
claude --channels plugin:discord@claude-plugins-official
Mandá un DM directo al bot en Discord. Seguí las instrucciones para confirmar el código de pairing.
Discord usa IDs numéricas únicas (llamadas Snowflakes) para identificar usuarios. Para encontrar tu Snowflake: activá el modo desarrollador en Discord (Ajustes > Avanzado > Modo desarrollador), hacé click derecho en tu nombre de usuario y copiá el ID.
Agregá esos IDs a la allowlist para que solo las personas autorizadas puedan interactuar con el bot.
| Criterio | Telegram | Discord |
|---|---|---|
| Velocidad de setup | Más rápido (6 pasos) | Más lento (10 pasos) |
| Historial de mensajes | No | Sí |
| Uso en equipo | Funciona, más simple | Mejor para equipos con roles y canales |
| Uso personal / celular | Ideal | También funciona |
| Archivos | Hasta 50MB | Límites del servidor |
La regla práctica: si sos el único que va a usar el bot y lo querés en el celular de forma rápida, Telegram. Si hay un equipo involucrado o necesitás que el agente recuerde la conversación entre sesiones, Discord.
Activar la allowlist siempre. Tanto en Telegram como en Discord, el paso de security no es opcional. Un bot sin allowlist acepta comandos de cualquier persona que lo encuentre. Eso significa que alguien podría ejecutar código en tu máquina o servidor simplemente mandándole un mensaje.
Tratá los tokens como contraseñas. No los pongas en archivos que vas a commitear a git. No los compartas por Slack o email. Si un token se filtra, resetéalo inmediatamente desde el portal del bot.
Un bot por proyecto. Si manejás varios proyectos o clientes con Claude Code, creá bots separados. Mezclar proyectos en un solo bot complica la trazabilidad y expande la superficie de ataque: si ese bot se compromete, afecta a todos los proyectos.
Diferencia de modelo de acceso: En Telegram, la allowlist controla por ID de usuario de Telegram. En Discord, controla por Snowflake ID. Ambos funcionan bien, pero en Discord es más granular si tenés un servidor compartido con gente que no debería tener acceso.
Una vez configurado, el loop de trabajo es simple:
--channelsPara workflows de larga duración —generar cientos de páginas, procesar datasets grandes, hacer deploys que toman tiempo— este modelo cambia bastante la dinámica. Claude Code pasa de ser algo que requiere tu atención constante a algo que trabaja en background y te avisa cuando necesita que intervengas.