Channels do Claude Code
Liga o Claude Code ao Telegram, Discord ou iMessage com plugins MCP. Walkthroughs de configuração e os fluxos de trabalho assíncronos e mobile-first que tornam a ligação válida.
Pare de configurar. Comece a construir.
Templates SaaS com orquestração de IA.
Problema: Estás no comboio. O teu portátil está em casa a rodar um build de 40 minutos. Ocorre-te que a suite de testes precisava de uma flag que nunca definiste. Escolhe o teu veneno: esperas até chegares a casa, ou entras por SSH no telemóvel e tatas um terminal num ecrã de 6 polegadas.
Não és developer? Mesmo problema, forma diferente. Estás a gerir um negócio com o Claude Code configurado como assistente generalista: calendário, rascunhos de marketing, triagem de tarefas, atualizações de folhas de cálculo, relatórios rápidos. Cada pedido ainda começa por sentar no terminal. Não há forma de enviar uma mensagem ao teu assistente pelo telemóvel entre reuniões como farias com uma EA de verdade.
Solução rápida: Liga a tua sessão do Claude Code ao Telegram (ou iMessage se estiveres no macOS) e envia-lhe mensagens pelo telemóvel como envias para um colega:
claude --channels plugin:telegram@claude-plugins-official
Envia "add the --coverage flag to the test script in package.json" pelo Telegram. A mensagem chega ao Claude, a edição acontece e a resposta volta ao mesmo chat. A tua sessão continua a trabalhar localmente com acesso total a ficheiros, servidores MCP e configuração do projeto.
O Que o Channels Realmente É
O Channels é uma funcionalidade baseada em plugins do Claude Code que encaminha mensagens do Telegram, Discord ou iMessage diretamente para uma sessão live do Claude Code a correr na tua própria máquina. A sessão trata de cada pedido contra o teu sistema de ficheiros local, ferramentas MCP e git, e responde pela mesma app de mensagens. A Anthropic anunciou-o a 20 de março de 2026 como research preview. Telegram e Discord chegaram primeiro. O suporte ao iMessage chegou uma semana depois. A arquitetura de plugins significa que mais plataformas podem juntar-se sem necessidade de nova infraestrutura.
Por baixo do capô a ideia é simples. Um servidor MCP faz a ponte entre a tua sessão do Claude Code e a plataforma de mensagens. Uma mensagem para o teu bot no Telegram ou Discord é encaminhada para o Claude. O Claude executa o pedido contra o teu ambiente local (ficheiros, ferramentas, git, tudo), e responde pelo mesmo canal.
Nada aqui corre na cloud. A sessão vive na tua máquina. A app de mensagens é a janela para ela, tal como o Remote Control usa o claude.ai e a app móvel como janela para a tua sessão local. Mesmo princípio, superfície diferente.
O anúncio original no X teve grande tração, e a leitura da comunidade foi clara: isto empurra os fluxos de trabalho de dev para o assíncrono e mobile-first. O pedido mais alto no lançamento foi o iMessage, e a Anthropic lançou-o em menos de uma semana.
Channels vs Remote Control vs Web Sessions
Existem agora três formas de aceder a uma sessão a partir de um lugar que não seja o teu terminal. Cada uma resolve um problema diferente.
| Aspeto | Channels | Remote Control | Web Sessions |
|---|---|---|---|
| Interface | Telegram, Discord, iMessage (apps de mensagens) | claude.ai/code, app iOS, app Android | Browser em claude.ai/code |
| Localização da sessão | A tua máquina (local) | A tua máquina (local) | Cloud da Anthropic |
| Configuração | Instalar plugin, criar bot, emparelhar | claude remote-control (um comando) | Abrir claude.ai/code |
| Melhor para | Mensagens assíncronas, mobile-first, canais de equipa | Continuar sessões do terminal pelo telemóvel | Tarefas rápidas sem setup local |
| Ferramentas locais | Acesso total (filesystem, MCP, git) | Acesso total (filesystem, MCP, git) | Apenas sandbox cloud |
| Hackabilidade | Alta (arquitetura de plugins, cria o teu próprio) | Baixa (interface fixa) | Nenhuma |
| Estilo de notificações | Notificações nativas da app (Telegram/Discord/iMessage) | Tens de abrir claude.ai ou a app | Tens de abrir claude.ai |
| Colaboração em equipa | Canais de guild do Discord para acesso partilhado | Apenas um utilizador | Apenas um utilizador |
Usa Channels quando: as notificações móveis nativas importam, o trabalho é assíncrono (envia um pedido, verifica mais tarde) ou precisas de acesso em equipa através de canais de guild do Discord. Usa também o Channels quando queres um sistema hackável e extensível que podes moldar ao teu fluxo de trabalho.
Usa Remote Control quando: queres a interface completa do claude.ai, formatação rica, pré-visualizações de ficheiros e uma UI de chat que já te é familiar. A configuração é um comando em vez de criação de bot, e funciona com a app móvel do Claude desde o primeiro minuto.
Thariq da equipa do Claude Code disse claramente no thread de anúncio: "Queremos dar-te muitas opções diferentes de falar com o Claude remotamente. O Channels é mais focado em devs que querem algo hackável."
A Arquitetura Por Baixo do Channels
O fluxo segue o padrão MCP que o Claude Code já usa para extensões de ferramentas:
- Instala um plugin de canal (Telegram, Discord ou iMessage). Cada um corre como servidor MCP.
- Lança o Claude Code com a flag
--channels. Isso ativa o plugin. - O servidor MCP liga-se à plataforma de mensagens (polling para o Telegram, WebSocket para o Discord).
- Chega uma mensagem, o servidor encapsula-a como evento
<channel>e envia-a para a tua sessão do Claude Code. - O Claude executa o pedido contra o teu ambiente local completo.
- O Claude responde via ferramentas que o servidor MCP expõe (
reply,react,edit_message).
A segurança tem duas camadas. Cada plugin de canal mantém uma allowlist de remetentes. Só os IDs de utilizador que emparelhaste e aprovaste podem enviar mensagens. Tudo o resto é descartado silenciosamente. E --channels decide quais os servidores que estão ativos para uma determinada sessão. Uma entrada de configuração em .mcp.json não chega para um servidor enviar mensagens. Tem também de estar nomeado em --channels.
Os planos Team e Enterprise adicionam outra camada. Os administradores da organização controlam a disponibilidade dos canais através de uma definição gerida channelsEnabled. Desativada por padrão. Tem de ser ativada intencionalmente.
Um detalhe que prega partidas: encontrar um prompt de permissão enquanto estás longe do terminal pausa a sessão até aprovares localmente. Se a operação sem supervisão total é o objetivo, --dangerously-skip-permissions ignora os prompts. Usa isso apenas em ambientes em que já confias.
Vale a pena ter em mente: as respostas do Claude viajam pelos servidores da plataforma de mensagens. Quando trabalhas com código proprietário ou credenciais sensíveis, sê intencional sobre o que pedes ao Claude para enviar através de um canal. A opção fakechat em localhost (abaixo) mantém cada byte na tua máquina para o trabalho sensível.
Configurar o Canal Telegram
A configuração do Telegram demora cerca de 5 minutos. Precisas do Bun instalado (o servidor MCP corre em Bun) e de uma sessão do Claude Code com sessão iniciada com uma conta claude.ai em vez de uma API key.
Passo 1: Criar um Bot no Telegram
Abre o @BotFather no Telegram e envia /newbot. O BotFather faz duas perguntas:
- Display name: Qualquer nome, espaços são aceites (ex: "My Dev Assistant")
- Username: Um identificador único terminando em
bot(ex:my_dev_assistant_bot)
O BotFather responde com um token como 123456789:AAHfiqksKZ8.... Copia o todo, número inicial e dois pontos incluídos.
Passo 2: Instalar o Plugin
Inicia uma sessão do Claude Code e corre:
/plugin install telegram@claude-plugins-official
Passo 3: Configurar o Token
/telegram:configure 123456789:AAHfiqksKZ8...
Isto escreve TELEGRAM_BOT_TOKEN=... em .claude/channels/telegram/.env dentro do teu projeto. Também podes definir a variável no teu shell antes de lançar o Claude Code (o shell tem precedência).
Passo 4: Relançar com Channels Ativo
Sai da sessão e reinicia com a flag de canal:
claude --channels plugin:telegram@claude-plugins-official
Passo 5: Emparelhar a Tua Conta
Envia uma mensagem direta ao teu bot no Telegram. O bot responde com um código de emparelhamento de 6 caracteres. De volta no Claude Code:
/telegram:access pair <code>
Passo 6: Bloquear o Acesso
Muda para o modo allowlist para que só a tua própria conta possa falar com o bot:
/telegram:access policy allowlist
Pronto. A próxima mensagem para o bot passa diretamente pelo Claude.
Funcionalidades Específicas do Telegram
- Fotos: As fotos recebidas são guardadas automaticamente em
~/.claude/channels/telegram/inbox/. O assistente pode lê-las diretamente de lá. Envia como "File" (pressão longa no Telegram) se precisares do original sem compressão. - Ficheiros em anexo: A ferramenta
replypode enviar ficheiros de volta. As imagens aparecem inline, outros tipos são enviados como documentos. Máximo de 50MB por ficheiro. - Indicador de digitação: O Telegram mostra "nome-do-bot está a escrever..." enquanto o Claude trabalha. Surpreendentemente útil para saber se o Claude ainda está a pensar ou ficou preso num prompt de permissão.
- Sem histórico de mensagens: A Bot API do Telegram não expõe histórico nem pesquisa. As mensagens só chegam em tempo real. Tudo o que foi enviado enquanto a sessão estava inativa perdeu-se.
Configurar o Canal Discord
O Discord precisa de mais alguns passos porque uma aplicação tem de existir primeiro no Developer Portal e o bot tem de ser convidado para um servidor. Conta com cerca de 10 minutos.
Passo 1: Criar uma Aplicação no Discord
Vai ao Discord Developer Portal e clica em New Application. Escolhe qualquer nome.
Passo 2: Criar o Bot e Obter um Token
Clica em Bot na barra lateral. Dá um nome de utilizador ao bot. Sobe até Token e prime Reset Token. Copia o token agora (só aparece uma vez).
Passo 3: Ativar o Message Content Intent
Ainda nas definições do Bot, desce até Privileged Gateway Intents e ativa Message Content Intent. Ignora este passo e o bot recebe mensagens com conteúdo vazio.
Passo 4: Convidar o Bot para o Teu Servidor
Abre OAuth2, depois URL Generator. Seleciona o scope bot e ativa estas permissões:
- View Channels
- Send Messages
- Send Messages in Threads
- Read Message History
- Attach Files
- Add Reactions
Copia o URL gerado, abre-o e adiciona o bot ao teu servidor.
Passo 5: Instalar e Configurar
Dentro do Claude Code:
/plugin install discord@claude-plugins-official
/discord:configure <your-bot-token>Passo 6: Relançar e Emparelhar
claude --channels plugin:discord@claude-plugins-official
Envia uma mensagem direta ao teu bot no Discord. O bot responde com um código de emparelhamento. De volta no Claude Code:
/discord:access pair <code>
/discord:access policy allowlistFuncionalidades Específicas do Discord
- Histórico de mensagens: A ferramenta
fetch_messagesdo Discord pode puxar o histórico recente de um canal (até 100 mensagens por chamada, do mais antigo para o mais recente). Este é o verdadeiro diferenciador face ao Telegram. Se a sessão reiniciar, o Claude pode atualizar-se sobre o que perdeu. - Tratamento de anexos: Os anexos não são descarregados automaticamente. O assistente vê os metadados (nome, tipo, tamanho) e chama
download_attachmentquando realmente precisa do ficheiro. - Canais de guild: O Discord suporta canais de servidor/guild além das DMs. Isso abre a colaboração em equipa onde várias pessoas falam com o Claude através de um canal partilhado.
- Reações com emoji personalizado: A ferramenta
reactsuporta tanto emoji Unicode como emoji personalizado do servidor no formato<:name:id>. - Threading: A ferramenta
replyaceitareply_topara threading nativo do Discord. Isso mantém as conversas organizadas quando várias pessoas estão a enviar mensagens para o mesmo canal.
Configurar o Canal iMessage
O iMessage é o mais recente dos três, adicionado após ondas de pedidos da comunidade depois do primeiro lançamento com Telegram e Discord. A forma é muito diferente: sem token de bot, sem serviço externo, sem código de emparelhamento. O plugin lê a base de dados do Messages diretamente no teu Mac e envia respostas via AppleScript.
Importante: o iMessage requer macOS. O plugin lê ~/Library/Messages/chat.db e controla o Messages.app através do AppleScript. Não há caminho para Windows ou Linux.
Passo 1: Conceder Acesso Total ao Disco
O plugin tem de ler a base de dados do Messages. Abre System Settings > Privacy & Security > Full Disk Access e ativa para a tua app de terminal (Terminal.app, iTerm2, Warp, seja qual for a que corre o Claude Code para ti).
Passo 2: Instalar o Plugin
Inicia uma sessão do Claude Code e corre:
/plugin install imessage@claude-plugins-official
Passo 3: Relançar com Channels Ativo
Sai da sessão e reinicia com a flag de canal:
claude --channels plugin:imessage@claude-plugins-official
Passo 4: Testar com Self-Chat
Verificação de sanidade mais rápida: envia uma mensagem a ti mesmo a partir de qualquer dispositivo Apple. O self-chat (mensagens para o teu próprio número) ignora completamente o controlo de acesso e funciona sem configuração extra.
Passo 5: Aprovar o Prompt de Automação
Na primeira vez que o Claude envia uma resposta, o macOS mostra um prompt de Automação a perguntar se a tua app de terminal pode controlar o Messages.app. Clica em OK. Aprovação única.
Passo 6: Permitir Outros Remetentes
Por padrão, só o self-chat funciona. Para abrir a outros, adiciona-os pelo número de telemóvel ou Apple ID:
/imessage:access allow +15551234567
/imessage:access allow AppleIDFuncionalidades Específicas do iMessage
- Nativo no macOS: Sem serviço externo, sem token de bot, sem developer portal. O plugin usa a tua configuração do Messages existente.
- Self-chat funciona imediatamente: Enviar mensagens a ti mesmo é o caminho sem configuração. Sem código de emparelhamento, sem entrada na allowlist.
- Deteção de identidade pela base de dados do Messages: Em vez do fluxo de emparelhamento que o Telegram e o Discord usam, o plugin do iMessage identifica os remetentes lendo a base de dados do Messages. O handle armazenado em
chat.dbé como sabe quem escreveu o quê. - Adicionar remetentes por handle: Números de telemóvel (
+15551234567) e Apple IDs funcionam com/imessage:access allow. - Respostas via AppleScript: As mensagens de saída passam pelo Messages.app via AppleScript, por isso as respostas aparecem como iMessages normais da tua conta.
Casos de Uso Práticos
Monitorizar Tarefas de Longa Duração pelo Telemóvel
Lança um build pesado, uma série longa de testes ou um fluxo de trabalho multi-agente na secretária. Vai embora. Quando o Claude termina (ou fica bloqueado), a notificação aparece no teu telemóvel via Telegram, Discord ou iMessage. Envia a próxima instrução sem tocar no portátil.
Correções Rápidas em Movimento
Rever um PR no telemóvel e notar um typo num ficheiro de configuração é o exemplo clássico. Não precisas de guardar para mais tarde. Envia ao teu bot: "Change the Redis port in docker-compose.yml from 6380 to 6379 and commit it." O Claude faz a edição, faz commit e confirma.
Colaboração em Equipa via Discord
Cria um canal de guild no Discord onde toda a tua equipa pode falar com uma sessão partilhada do Claude Code. Ótimo para pair-debugging: uma pessoa descreve o problema e o Claude investiga com acesso total à codebase. Toda a gente no canal acompanha em tempo real.
Fluxos de Trabalho de Desenvolvimento Assíncrono
Channels mais tarefas agendadas formam um padrão assíncrono forte. Agenda o Claude para correr a suite de testes a cada hora, canaliza os resultados pelo Telegram e pausa para a tua chamada se algo falhar. Vais verificando quando encaixa no teu dia.
O Teu Assistente Executivo Nativo no Telegram
Nem toda a configuração do Claude Code é sobre código. Se configuraste o Claude como assistente de produtividade com ligações MCP ao teu calendário, email, CRM ou ferramentas de gestão de projetos, o Channels transforma-o em algo muito mais próximo de uma EA real. Pergunta "qual é a minha lista de prioridades para hoje?" pelo Telegram enquanto bebes café. Pede para redigir um email de follow-up para um cliente entre reuniões. Diz-lhe para reorganizar a tua tarde com base num thread urgente do Slack. O modelo mental muda de "sentar no terminal, digitar um comando" para "enviar uma mensagem ao assistente quando surgir algo."
Notificações e Reações de CI/CD
Canaliza os resultados do CI para a tua sessão através de um canal. Quando um build falha, o Claude pode ler os logs, identificar a causa e corrigi-la imediatamente ou enviar-te um diagnóstico. Isto vai além das notificações passivas porque o Claude já tem o contexto completo do teu projeto.
Construir o Teu Próprio Canal
A superfície de plugins não está limitada aos três canais oficiais. A Anthropic publica uma referência de Channels para construir os teus próprios. Qualquer servidor MCP que fale o protocolo de canal pode enviar eventos para o Claude Code.
Durante o research preview, --channels só aceita plugins de uma allowlist mantida pela Anthropic. Para correr um canal que estás a construir, usa a flag --dangerously-load-development-channels. Isso permite iterar em integrações personalizadas sem esperar pela aprovação oficial.
O plugin fakechat é enviado como demo de desenvolvimento. Corre uma UI de chat em localhost sem dependências externas, para que possas testar o fluxo completo de canal antes de ligar a uma plataforma real:
/plugin install fakechat@claude-plugins-official
claude --channels plugin:fakechat@claude-plugins-officialAbre http://localhost:8787 e começa a escrever. As mensagens chegam à tua sessão do Claude Code e as respostas aparecem no browser.
Requisitos e Limitações
Requisitos
- Claude Code v2.1.80 ou posterior
- Bun runtime instalado (bun.sh)
- Autenticação claude.ai (plano Pro ou Max). A autenticação por Console e API key não é suportada.
- Planos Team/Enterprise: o admin tem de ativar os channels explicitamente nas definições geridas
- Canal iMessage: apenas macOS, com Full Disk Access concedido à tua app de terminal
Limitações Atuais
Este é um research preview. Arestas por polir fazem parte da experiência:
- A sessão tem de estar ativa: Fecha o terminal ou para o processo
claudee o canal fica inativo. As mensagens enviadas enquanto a sessão estava inativa perdem-se (Telegram) ou ficam em fila até o bot voltar (Discord, viafetch_messages). - Os prompts de permissão bloqueiam à distância: Quando o Claude precisa de aprovação de permissão, espera até aprovares no terminal. A flag
--dangerously-skip-permissionsfunciona mas tem os riscos óbvios. - Apenas plugins da allowlist: Para o preview, só os plugins de
claude-plugins-officialpassam em--channels. Os canais personalizados precisam da flag de desenvolvimento. - Sem modo de background persistente: Uma sessão de terminal ainda tem de estar aberta. Usar
tmux,screenou um processo em background é a solução atual. - Lacunas específicas de plataforma: O Telegram não tem API de histórico de mensagens. O Discord precisa de mais passos de configuração. O iMessage só corre no macOS e precisa de Full Disk Access. Cada plataforma traz as suas próprias limitações.
A Anthropic descreveu isto como uma funcionalidade "que vamos expandir mais." A arquitetura de plugins aponta para plataformas futuras (Slack e WhatsApp já foram mencionados) e os docs de referência de canais confirmam que os canais construídos pela comunidade fazem parte do plano.
Perguntas Frequentes
O que é o Claude Code Channels?
O Channels é uma funcionalidade baseada em plugins que liga sessões do Claude Code a apps de mensagens como Telegram, Discord e iMessage. Tu envias uma mensagem à app, o Claude executa o pedido contra o teu ambiente de dev local e as respostas chegam ao mesmo chat. O código e as ferramentas nunca saem da tua máquina.
O Claude Code Channels é gratuito?
Precisas de uma subscrição claude.ai Pro ou Max. A autenticação por API key não é suportada. Os plugins do Telegram, Discord e iMessage são gratuitos e open source.
Qual é a diferença entre Channels e Remote Control?
O Remote Control coloca a interface web completa do claude.ai em cima da tua sessão local. O Channels faz o mesmo mas com apps de mensagens (Telegram, Discord, iMessage) como superfície. Ambas as sessões ficam locais. O Remote Control configura-se com um comando. O Channels pede mais configuração de plugins em troca de notificações nativas e muito mais espaço para personalizar.
Posso usar o Claude Code pelo meu telemóvel?
Sim, através de três caminhos diferentes. O Remote Control liga-se à app móvel do Claude. O Channels liga-se ao Telegram, Discord ou iMessage. As web sessions em claude.ai/code correm totalmente na cloud. Os três acedem ao Claude Code a partir de qualquer dispositivo com um browser ou a app certa.
Que apps de mensagens funcionam com o Claude Code Channels?
O Telegram, Discord e iMessage são as três plataformas oficiais desde março de 2026. A arquitetura de plugins foi construída para expansão, e a comunidade já sugeriu Slack e WhatsApp. Também podes construir o teu próprio canal usando a referência de Channels.
Começar
Se já te sentes à vontade com servidores MCP e plugins do Claude Code, esta configuração vai parecer familiar. Escolhe a plataforma onde vives mais:
- Telegram para a configuração mais rápida (5 minutos, sem convite para servidor necessário)
- Discord para histórico de mensagens, canais de guild ou colaboração em equipa
- iMessage se estás no macOS e queres mensagens nativas sem configuração e sem serviço externo
- Fakechat para testar o fluxo localmente antes de te comprometeres com uma plataforma real
Começa com acesso apenas por DM e a política de allowlist. Quando isso estiver estável, expande para canais de guild no Discord ou chats de grupo no Telegram para os casos de uso mais amplos.
O Channels marca uma mudança na forma como os developers trabalham com o seu ambiente de programação. Em vez de sentares no terminal, envias-lhe uma mensagem. Em vez de esperares por um build, recebes uma notificação. Em vez de alternares entre telemóvel e estação de trabalho, trabalhas de onde estiveres.
A promessa de "programar pelo telemóvel" já anda a circular há anos. Entre Channels, Remote Control e tarefas agendadas, o Claude Code está discretamente a transformá-la em realidade, uma interface de cada vez.
Pare de configurar. Comece a construir.
Templates SaaS com orquestração de IA.