openclaw channels
Gerencie contas de canais de chat e o status de execução delas no Gateway.
Documentação relacionada:
- Guias de canais: Canais
- Configuração do Gateway: Configuração
Comandos comuns
channels list mostra somente canais de chat: por padrão, as contas configuradas, com indicadores de status installed, configured e enabled por conta (--json para saída processável por máquina). Passe --all para também exibir canais incluídos que ainda não tenham uma conta configurada e canais instaláveis do catálogo que ainda não estejam no disco. A autenticação de provedores e o uso de modelos ficam em outros comandos: openclaw models auth list para perfis de autenticação de provedores e openclaw status ou openclaw models list para uso/cota.
Status / recursos / resolução / logs
channels status:--channel <name>,--probe,--timeout <ms>(padrão:10000),--jsonchannels capabilities:--channel <name>,--account <id>(requer--channel),--target <dest>(requer--channel),--timeout <ms>(padrão:10000, limitado a30000),--jsonchannels resolve <entries...>:--channel <name>,--account <id>,--kind <auto|user|group>(padrão:auto),--jsonchannels logs:--channel <name|all>(padrão:all),--lines <n>(padrão:200),--json
channels status --probe é o caminho de verificação em tempo real: em um Gateway acessível, ele executa as verificações probeAccount e, opcionalmente, auditAccount para cada conta; portanto, a saída pode incluir o estado do transporte e resultados de verificação como works, probe failed, audit ok ou audit failed. Se o Gateway estiver inacessível, channels status recorre a resumos baseados somente na configuração, em vez da saída da verificação em tempo real.
Não use openclaw sessions, sessions.list do Gateway nem a ferramenta sessions_list do agente como indicador da integridade do socket do canal. Essas interfaces informam linhas de conversas armazenadas, não o estado de execução do provedor. Após a reinicialização de um provedor do Discord, uma conta conectada, mas sem atividade, pode estar íntegra mesmo que nenhuma linha de sessão do Discord apareça até o próximo evento de conversa recebido ou enviado.
Adicionar / remover contas
channels remove opera somente em plugins de canal instalados/configurados. Para canais instaláveis do catálogo, use primeiro channels add. Sem --delete, ele solicita a desativação da conta e mantém sua configuração; --delete remove as entradas de configuração sem solicitar confirmação.
Para plugins de canal com suporte em tempo de execução, channels remove também solicita que o Gateway em execução interrompa a conta selecionada antes de atualizar a configuração. Assim, desativar ou excluir uma conta não mantém o listener antigo ativo até a reinicialização.
Opções de adição não interativa compartilhadas entre canais: --account <id>, --name <name>, --token, --token-file, --bot-token, --app-token, --secret, --secret-file, --password, --cli-path, --url, --base-url, --http-url, --auth-dir e --use-env (autenticação baseada em variáveis de ambiente, somente para a conta padrão, quando houver suporte). As opções específicas de cada canal incluem:
Se for necessário instalar um plugin de canal durante um comando de adição orientado por opções, o OpenClaw usará a fonte de instalação padrão do canal sem abrir a solicitação interativa de instalação do plugin.
Ao executar
openclaw channels add sem opções, o assistente interativo pode solicitar:
- IDs das contas de cada canal selecionado
- nomes de exibição opcionais para essas contas
Route these channel accounts to agents now?
openclaw agents bindings, openclaw agents bind e openclaw agents unbind (consulte agentes).
Quando você adiciona uma conta não padrão a um canal que ainda usa configurações de nível superior para uma única conta, o OpenClaw promove esses valores de nível superior para o mapa de contas do canal antes de gravar a nova conta. A promoção reutiliza uma conta nomeada existente quando o canal tem exatamente uma ou quando defaultAccount aponta para uma; caso contrário, os valores são armazenados em channels.<channel>.accounts.default.
O comportamento de roteamento permanece consistente:
- Vínculos existentes somente com o canal (sem
accountId) continuam correspondendo à conta padrão. channels addnão cria nem regrava vínculos automaticamente no modo não interativo.- A configuração interativa pode adicionar opcionalmente vínculos específicos por conta.
openclaw doctor --fix para mover os valores específicos da conta para a conta promovida escolhida para esse canal.
Login e logout (interativos)
channels loginaceita--account <id>e--verbose;channels logoutaceita--account <id>.channels loginelogoutpodem inferir o canal quando somente um canal configurado aceita essa ação; quando houver vários, passe--channel.channels logoutdá preferência ao caminho pelo Gateway ativo quando ele está acessível, para que o logout interrompa qualquer listener ativo antes de limpar o estado de autenticação do canal. Se um Gateway local não estiver acessível, ele recorre à limpeza da autenticação local; comgateway.mode: "remote", o erro do Gateway faz o comando falhar.- Após um login bem-sucedido, a CLI solicita que um Gateway local acessível inicie a conta; no modo remoto, ela salva a autenticação localmente e informa que o ambiente de execução remoto não foi reiniciado.
- Execute
channels loginem um terminal no host do Gateway. Oexecdo agente bloqueia esse fluxo de login interativo; ferramentas de login de agentes nativas do canal, comowhatsapp_login, devem ser usadas pelo chat quando disponíveis.
Solução de problemas
- Execute
openclaw status --deeppara uma verificação ampla. - Use
openclaw doctorpara correções orientadas. openclaw channels statusrecorre a resumos baseados somente na configuração quando o Gateway está inacessível. Se a credencial de um canal compatível estiver configurada por meio deSecretRef, mas indisponível no caminho do comando atual, ele informará que a conta está configurada, com observações sobre a funcionalidade reduzida, em vez de mostrá-la como não configurada.
Verificação de recursos
Obtenha indicações de recursos do provedor (intenções/escopos, quando disponíveis), além do suporte estático a funcionalidades:--channelé opcional; omita-o para listar todos os canais (inclusive os fornecidos por plugins).--accountsó é válido com--channel.--targetaceitachannel:<id>ou um ID numérico bruto de canal e se aplica somente ao Discord. Para canais de voz do Discord, a verificação de permissões sinaliza a ausência deViewChannel,Connect,Speak,SendMessageseReadMessageHistory.- As verificações são específicas de cada provedor: identidade do bot do Discord + intenções e permissões opcionais do canal; bot do Slack + escopos de usuário; opções do bot do Telegram + Webhook; versão do daemon do Signal; token do aplicativo do Microsoft Teams + funções/escopos do Graph (anotados quando conhecidos). Canais sem verificações informam
Probe: unavailable.
Resolver nomes em IDs
Resolva nomes de canais/usuários em IDs usando o diretório do provedor:- Use
--kind user|group|autopara forçar o tipo de destino. - A resolução dá preferência a correspondências ativas quando várias entradas têm o mesmo nome.
channels resolveé somente leitura. Se uma conta selecionada estiver configurada por meio deSecretRef, mas essa credencial estiver indisponível no caminho do comando atual, o comando retornará resultados não resolvidos com funcionalidade reduzida e observações, em vez de interromper toda a execução.channels resolvenão instala plugins de canal. Usechannels add --channel <name>antes de resolver nomes para um canal instalável do catálogo.