Integração Discord com OpenClaw: Guia Completo 2026
O Discord se tornou uma das plataformas de comunicação mais populares, especialmente entre comunidades de desenvolvedores, gamers e criadores de conteúdo. Com mais de 150 milhões de usuários ativos mensais, integrar seu assistente OpenClaw ao Discord abre possibilidades incríveis de automação e interação.
Neste guia, vamos configurar um bot Discord completo que usa a inteligência do Claude para responder perguntas, moderar discussões, criar enquetes e muito mais — tudo controlado pela sua instância OpenClaw.
Por que usar OpenClaw no Discord?
Diferente de bots tradicionais que seguem scripts rígidos, um bot OpenClaw no Discord:
- Entende contexto: Lembra conversas anteriores e mantém coerência
- Responde naturalmente: Usa linguagem humana, não respostas enlatadas
- Executa ações: Pode pesquisar na web, gerar imagens, criar arquivos
- Aprende com você: Adapta-se ao seu estilo através dos arquivos SOUL.md e AGENTS.md
- Funciona 24/7: Responde mesmo quando você está offline
Casos de uso populares:
- Suporte técnico em servidores de projetos open source
- Moderação inteligente de comunidades
- Assistente para estudos em grupos de estudo
- Bot de informações para servidores de jogos
- Automação de tarefas administrativas
Pré-requisitos
Antes de começar, você precisa:
- OpenClaw instalado e funcionando (veja nosso guia de instalação)
- Uma conta Discord
- Acesso ao Discord Developer Portal
- Um servidor Discord onde você seja administrador (ou crie um novo para testes)
Passo 1: Criar a Aplicação no Discord Developer Portal
1.1 Acessar o Portal
Acesse discord.com/developers/applications e faça login com sua conta Discord.
1.2 Criar Nova Aplicação
Clique em New Application no canto superior direito.
Dê um nome para sua aplicação (por exemplo, “Meu Assistente IA” ou o nome do seu agente). Este nome aparecerá nos convites, mas pode ser diferente do nome do bot.
1.3 Criar o Bot
No menu lateral, clique em Bot.
Clique em Add Bot e confirme.
Agora você tem um bot! Personalize:
- Username: Nome que aparece no Discord
- Icon: Avatar do bot (opcional, mas recomendado)
1.4 Copiar o Token
Na seção Bot, clique em Reset Token (ou Copy se o token estiver visível).
⚠️ IMPORTANTE: Este token é como uma senha. Nunca compartilhe publicamente, não commite em repositórios Git, não cole em chats.
Guarde o token em local seguro — você precisará dele na configuração.
1.5 Habilitar Intents
Ainda na página do Bot, role até Privileged Gateway Intents e habilite:
- ✅ Message Content Intent — Obrigatório para ler mensagens
- ✅ Server Members Intent — Recomendado para allowlists e menções
Clique em Save Changes.
Sem o Message Content Intent, o bot conectará mas não conseguirá ler o conteúdo das mensagens.
Passo 2: Gerar URL de Convite
2.1 Configurar OAuth2
No menu lateral, vá em OAuth2 → URL Generator.
Em Scopes, marque:
- ✅
bot - ✅
applications.commands(necessário para comandos slash)
2.2 Definir Permissões
Em Bot Permissions, marque as permissões mínimas necessárias:
Essenciais:
- ✅ View Channels
- ✅ Send Messages
- ✅ Read Message History
- ✅ Embed Links
- ✅ Attach Files
Recomendadas:
- ✅ Add Reactions
- ✅ Use External Emojis
Evite marcar Administrator — é excessivo e representa risco de segurança.
2.3 Copiar URL e Convidar
Copie a URL gerada no final da página.
Abra essa URL em uma nova aba, selecione o servidor onde quer adicionar o bot e autorize.
O bot agora aparece na lista de membros do servidor (provavelmente offline).
Passo 3: Obter IDs do Discord
O OpenClaw usa IDs numéricos para identificar servidores, canais e usuários. Veja como obter:
3.1 Habilitar Modo Desenvolvedor
- Discord → Configurações do Usuário (ícone de engrenagem)
- Avançado → Ative Modo Desenvolvedor
3.2 Copiar IDs
Com o Modo Desenvolvedor ativo, clique com botão direito em:
- Nome do servidor → Copiar ID do Servidor (Guild ID)
- Canal (ex: #geral) → Copiar ID do Canal
- Usuário → Copiar ID do Usuário
Anote esses IDs — você usará na configuração.
Passo 4: Configurar OpenClaw
4.1 Configuração Básica
Adicione ao seu config.json5:
{
channels: {
discord: {
enabled: true,
token: "SEU_TOKEN_AQUI",
},
},
}
Alternativa via variável de ambiente (recomendado para produção):
export DISCORD_BOT_TOKEN="seu_token_aqui"
4.2 Configuração Completa
Para controle total, use esta configuração expandida:
{
channels: {
discord: {
enabled: true,
// Token via env var DISCORD_BOT_TOKEN ou aqui
// token: "...",
// Política de canais de servidor
groupPolicy: "allowlist",
// Configurações de DM
dm: {
enabled: true,
policy: "pairing", // pairing | allowlist | open
allowFrom: ["SEU_USER_ID"],
},
// Configurações por servidor
guilds: {
"SEU_GUILD_ID": {
slug: "meu-servidor",
requireMention: true, // Só responde se mencionado
users: ["SEU_USER_ID"], // Allowlist de usuários
channels: {
"CHANNEL_ID_GERAL": {
allow: true,
requireMention: true,
},
"CHANNEL_ID_AJUDA": {
allow: true,
requireMention: false, // Responde a tudo
systemPrompt: "Seja conciso e técnico.",
},
},
},
},
// Ações permitidas
actions: {
reactions: true,
polls: true,
messages: true,
threads: true,
},
},
},
}
4.3 Explicação das Opções
dm.policy:
pairing: Novos usuários recebem código de pareamento (mais seguro)allowlist: Apenas usuários emallowFrompodem usaropen: Qualquer um pode usar (cuidado!)
requireMention:
true: Bot só responde quando @mencionadofalse: Bot responde a todas as mensagens no canal
groupPolicy:
allowlist: Apenas canais listados emguildsopen: Todos os canais (perigoso em servidores grandes)disabled: Ignora todos os canais de servidor
Passo 5: Iniciar e Testar
5.1 Reiniciar OpenClaw
openclaw gateway restart
Ou se estiver usando systemd:
sudo systemctl restart openclaw
5.2 Verificar Conexão
openclaw channels status
Deve mostrar:
discord: connected
- Guilds: 1
- DM policy: pairing
5.3 Testar no Discord
No canal configurado, envie:
@SeuBot olá, como você está?
Se configurou requireMention: false, qualquer mensagem funcionará.
Recursos Avançados
Comandos Slash Nativos
OpenClaw registra automaticamente comandos slash no Discord:
/status— Ver status do bot/help— Lista de comandos/config— Configurações (se habilitado)
Reações Inteligentes
O bot pode reagir a mensagens. Configure em actions.reactions: true.
No AGENTS.md, instrua quando reagir:
## Reações Discord
Use reações para:
- ✅ Confirmar que entendeu
- 👍 Aprovar sugestões
- 🤔 Indicar que está processando
Criação de Enquetes
Com actions.polls: true, o bot pode criar enquetes:
@Bot crie uma enquete: "Qual linguagem devemos usar?" com opções Python, Go, Rust
Threads Automáticas
Configure actions.threads: true para o bot criar e responder em threads, mantendo conversas organizadas.
Histórico de Contexto
{
channels: {
discord: {
historyLimit: 20, // Últimas 20 mensagens como contexto
},
},
}
Isso permite que o bot entenda conversas em andamento.
Segurança e Boas Práticas
Proteja o Token
Nunca:
- Commite o token em repositórios Git
- Cole em canais públicos
- Compartilhe em screenshots
Sempre:
- Use variáveis de ambiente
- Restrinja permissões do arquivo de config (
chmod 600) - Rotacione tokens periodicamente
Configure Allowlists
Em produção, sempre use allowlists:
{
channels: {
discord: {
dm: {
policy: "allowlist",
allowFrom: ["123456789", "987654321"],
},
guilds: {
"GUILD_ID": {
users: ["123456789", "987654321"],
},
},
},
},
}
Evite Administrator
A permissão Administrator dá acesso total. Use apenas as permissões necessárias listadas anteriormente.
Monitore Uso
Verifique logs regularmente:
journalctl -u openclaw -f | grep discord
Troubleshooting
Bot conecta mas não responde
Causas comuns:
Message Content Intent não habilitado
- Volte ao Developer Portal → Bot → Habilite Message Content Intent
Canal não está na allowlist
- Adicione o canal em
guilds.GUILD_ID.channels
- Adicione o canal em
requireMention ativo mas não mencionou
- Mencione o bot:
@NomeDoBot mensagem
- Mencione o bot:
Usuário não está na allowlist
- Adicione o ID do usuário em
users
- Adicione o ID do usuário em
“Used disallowed intents”
Habilite os intents necessários no Developer Portal:
- Message Content Intent
- Server Members Intent
Bot fica offline
Verifique:
openclaw status
openclaw channels status --probe
Se necessário, force reinício:
openclaw gateway restart --force
Mensagens não chegam
Execute diagnóstico:
openclaw doctor
Exemplo Completo de Configuração
Aqui está uma configuração de produção para um servidor de suporte:
{
channels: {
discord: {
enabled: true,
// Token via DISCORD_BOT_TOKEN
groupPolicy: "allowlist",
historyLimit: 15,
dm: {
enabled: true,
policy: "pairing",
allowFrom: ["ADMIN_USER_ID"],
},
guilds: {
"MEUSERVIDOR_ID": {
slug: "suporte-produto",
requireMention: true,
users: ["*"], // Todos podem usar
reactionNotifications: "own",
channels: {
"CANAL_GERAL_ID": {
allow: true,
requireMention: true,
},
"CANAL_SUPORTE_ID": {
allow: true,
requireMention: false,
systemPrompt: "Você é um agente de suporte. Seja prestativo, conciso e sempre tente resolver o problema. Se não souber, diga que vai escalar para a equipe.",
skills: ["docs", "search"],
},
"CANAL_DEV_ID": {
allow: true,
requireMention: true,
users: ["DEV1_ID", "DEV2_ID"],
skills: ["code", "git"],
},
},
},
},
actions: {
reactions: true,
polls: true,
messages: true,
threads: true,
pins: true,
moderation: false, // Desabilitado por segurança
},
retry: {
attempts: 3,
minDelayMs: 500,
maxDelayMs: 30000,
},
},
},
}
Conclusão
Integrar OpenClaw com Discord transforma seu servidor em um ambiente interativo e inteligente. Diferente de bots tradicionais, você tem um assistente que realmente entende contexto, aprende com interações e pode executar ações complexas.
Comece com a configuração básica, teste em um servidor privado, e vá adicionando recursos conforme sua necessidade. A flexibilidade do OpenClaw permite desde um simples bot de Q&A até um sistema completo de suporte automatizado.
Próximos Passos
- Criar Skills personalizadas para seu bot
- Configurar multi-agentes para diferentes personalidades
- Integrar com Telegram para cobertura multi-plataforma
Dúvidas? Entre na nossa comunidade Discord e pergunte!