tutorial channels

Construindo um assistente de IA multicanal: Telegram + Discord + WhatsApp

ZeroClaws.io

ZeroClaws.io

@zeroclaws

February 25, 2026

7 min de leitura

Construindo um assistente de IA multicanal: Telegram + Discord + WhatsApp

Aqui está uma situação que a maioria reconhece: seu time de trabalho se comunica no Slack, seus amigos próximos estão no WhatsApp, sua comunidade de games vive no Discord, e seus contatos pessoais preferem o Telegram. Você acaba com quatro apps abertos, quatro fluxos de notificações e quatro contextos separados para gerenciar.

Agora imagine que seu assistente de IA funcionasse em todos eles simultaneamente —com memória compartilhada, para que ele lembre o que você disse no Telegram quando você perguntar sobre isso no Discord. Um assistente, em todo lugar onde você já está.

É isso que a arquitetura multicanal do ZeroClaw torna possível, e a configuração é mais simples do que você pode esperar.

Como funciona por baixo dos panos

O sistema de canais do ZeroClaw é construído sobre traits do Rust. Cada canal —Telegram, Discord, WhatsApp, Signal, Matrix, IRC— é um adaptador independente que implementa a mesma interface. Todos compartilham uma única conexão ao provedor de IA, um único banco de dados de memória, um único arquivo de configuração e um único processo rodando como um binário.

A consequência prática é que quando você diz algo ao bot no Telegram, ele lembra quando você pergunta no Discord. A memória é independente do canal.

Configurando o Telegram

Mande uma mensagem para @BotFather no Telegram para criar um novo bot e obter seu token. Depois mande uma mensagem para @userinfobot para obter seu ID de usuário. Adicione isso à sua configuração:

```toml [channels.telegram] token = "123456:ABCdefGHIjklMNO" allowed_users = [your_user_id] ```

Configurando o Discord

Vá para discord.com/developers, crie uma aplicação, adicione um bot e copie o token. Habilite Message Content Intent nas configurações do bot.

```toml [channels.discord] token = "MTk4NjIz..." guild_ids = [your_server_id] allowed_roles = ["ai-users"] ```

Configurando o WhatsApp

O ZeroClaw usa uma bridge do WhatsApp Web que funciona sem nenhum acesso especial à API:

```toml [channels.whatsapp] enabled = true allowed_numbers = ["+5511999999999"] ```

Na primeira inicialização, o ZeroClaw exibe um QR code no terminal. Escaneie com o WhatsApp no seu celular para parear.

Iniciando tudo

```bash zeroclaw start ```

Um comando. Os três canais se conectam simultaneamente:

```bash [INFO] Telegram channel connected [INFO] Discord channel connected (1 guild) [INFO] WhatsApp channel paired [INFO] ZeroClaw ready -- 3 channels active ```

Memória compartilhada na prática

Você manda uma mensagem no Telegram: “Lembra que meu prazo do projeto é 15 de março” “Anotado —seu prazo do projeto é 15 de março.”

Mais tarde, no Discord: “Quando é meu prazo?” “Seu prazo do projeto é 15 de março, como você mencionou antes.”

O bot não precisou ser informado de novo. A memória é compartilhada em toda a instância do ZeroClaw.

Ajustando o comportamento por canal

O ZeroClaw permite ajustar o comportamento por canal:

```toml [channels.discord] token = "..." system_prompt_append = "Você está num servidor Discord. Mantenha as respostas concisas. Use formatação markdown." max_response_length = 1500

[channels.telegram] token = "..." system_prompt_append = "Você está num chat privado do Telegram. Seja conversacional e detalhado." max_response_length = 4000

[channels.whatsapp] enabled = true system_prompt_append = "Você está no WhatsApp. Mantenha as respostas curtas —sem markdown, apenas texto simples." max_response_length = 500 ```

Mesma IA, mesma memória, personalidade diferente por plataforma.

Controle de acesso

```toml [channels.telegram.permissions] tools = ["web_search", "file_read", "file_write"]

[channels.discord.permissions] tools = ["web_search"] # somente leitura no servidor público ```

Adicionando mais canais

```toml [channels.slack] token = "xoxb-..." channels = ["C01234567"]

[channels.signal] enabled = true phone_number = "+5511999999999"

[channels.matrix] homeserver = "https://matrix.org" username = "@zeroclaw:matrix.org" password = "..." ```

Cada canal adicional adiciona aproximadamente 0,5 MB de RAM. Dez canais simultâneos ainda rodam abaixo de 10 MB no total.

O panorama geral

A configuração multicanal resolve um problema real: sua vida não acontece em um único app, e seu assistente de IA também não deveria. Um binário, um arquivo de configuração, um banco de dados de memória, e seu assistente está presente em cada plataforma de conversa que você usa —lembrando o contexto em todas elas, usando menos RAM do que uma única aba do navegador.

Fique por Dentro

Receba atualizações sobre novos releases, integrações e infraestrutura de agentes em Rust. Sem spam, cancele quando quiser.