Feishu/Lark é uma plataforma de colaboração tudo em um onde equipes conversam, compartilham documentos, gerenciam calendários e trabalham juntas. Status: pronto para produção para DMs de bots + chats em grupo. WebSocket é o modo padrão; o modo webhook é opcional.Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
Início rápido
Requer OpenClaw 2026.4.25 ou superior. Execute
openclaw --version para verificar. Atualize com openclaw update.Execute o assistente de configuração do canal
Controle de acesso
Mensagens diretas
ConfiguredmPolicy para controlar quem pode enviar DM ao bot:
"pairing"- usuários desconhecidos recebem um código de pareamento; aprove via CLI"allowlist"- somente usuários listados emallowFrompodem conversar (padrão: somente o proprietário do bot)"open"- permite DMs públicas somente quandoallowFrominclui"*"; com entradas restritivas, somente usuários correspondentes podem conversar"disabled"- desativa todas as DMs
Chats em grupo
Política de grupo (channels.feishu.groupPolicy):
| Valor | Comportamento |
|---|---|
"open" | Responde a todas as mensagens em grupos |
"allowlist" | Responde somente a grupos em groupAllowFrom ou configurados explicitamente em groups.<chat_id> |
"disabled" | Desativa todas as mensagens de grupo; entradas explícitas groups.<chat_id> não substituem isso |
allowlist
Requisito de menção (channels.feishu.requireMention):
true- exige @menção (padrão)false- responde sem @menção- Substituição por grupo:
channels.feishu.groups.<chat_id>.requireMention @alle@_allsomente de broadcast não são tratados como menções ao bot. Uma mensagem que menciona tanto@allquanto o bot diretamente ainda conta como menção ao bot.
Exemplos de configuração de grupo
Permitir todos os grupos, sem exigir @menção
Permitir todos os grupos, ainda exigir @menção
Permitir somente grupos específicos
allowlist, você também pode admitir um grupo adicionando uma entrada explícita groups.<chat_id>. Entradas explícitas não substituem groupPolicy: "disabled". Padrões curinga em groups.* configuram grupos correspondentes, mas não admitem grupos por conta própria.
Restringir remetentes dentro de um grupo
Obter IDs de grupo/usuário
IDs de grupo (chat_id, formato: oc_xxx)
Abra o grupo no Feishu/Lark, clique no ícone de menu no canto superior direito e acesse Configurações. O ID do grupo (chat_id) é listado na página de configurações.

IDs de usuário (open_id, formato: ou_xxx)
Inicie o gateway, envie uma DM ao bot e verifique os logs:
open_id na saída do log. Você também pode verificar solicitações de pareamento pendentes:
Comandos comuns
| Comando | Descrição |
|---|---|
/status | Mostra o status do bot |
/reset | Redefine a sessão atual |
/model | Mostra ou troca o modelo de IA |
Feishu/Lark não oferece suporte a menus nativos de comandos com barra, então envie-os como mensagens de texto simples.
Solução de problemas
O bot não responde em chats em grupo
- Verifique se o bot foi adicionado ao grupo
- Verifique se você @mencionou o bot (obrigatório por padrão)
- Verifique se
groupPolicynão é"disabled" - Verifique os logs:
openclaw logs --follow
O bot não recebe mensagens
- Verifique se o bot está publicado e aprovado na Feishu Open Platform / Lark Developer
- Verifique se a assinatura de eventos inclui
im.message.receive_v1 - Verifique se conexão persistente (WebSocket) está selecionada
- Verifique se todos os escopos de permissão necessários foram concedidos
- Verifique se o gateway está em execução:
openclaw gateway status - Verifique os logs:
openclaw logs --follow
A configuração por QR não reage no aplicativo móvel Feishu
- Execute a configuração novamente:
openclaw channels login --channel feishu - Escolha a configuração manual
- Na Feishu Open Platform, crie um app autoconstruído e copie seu App ID e App Secret
- Cole essas credenciais no assistente de configuração
App Secret vazou
- Redefina o App Secret na Feishu Open Platform / Lark Developer
- Atualize o valor na sua configuração
- Reinicie o gateway:
openclaw gateway restart
Configuração avançada
Várias contas
defaultAccount controla qual conta é usada quando APIs de saída não especificam um accountId.
accounts.<id>.tts usa o mesmo formato de messages.tts e faz merge profundo sobre
a configuração global de TTS, para que configurações Feishu com vários bots possam manter credenciais
compartilhadas de provedores globalmente enquanto substituem apenas voz, modelo, persona ou modo automático
por conta.
Limites de mensagens
textChunkLimit- tamanho do bloco de texto de saída (padrão:2000caracteres)mediaMaxMb- limite de upload/download de mídia (padrão:30MB)
Streaming
Feishu/Lark oferece suporte a respostas em streaming por meio de cartões interativos. Quando ativado, o bot atualiza o cartão em tempo real enquanto gera texto.streaming: false para enviar a resposta completa em uma mensagem. blockStreaming fica desativado por padrão; ative-o somente quando quiser que blocos concluídos do assistente sejam enviados antes da resposta final.
Otimização de cota
Reduza o número de chamadas à API do Feishu/Lark com duas flags opcionais:typingIndicator(padrãotrue): defina comofalsepara ignorar chamadas de reação de digitaçãoresolveSenderNames(padrãotrue): defina comofalsepara ignorar consultas de perfil do remetente
Sessões ACP
Feishu/Lark oferece suporte a ACP para DMs e mensagens de threads em grupo. O ACP do Feishu/Lark é orientado por comandos de texto - não há menus nativos de comandos com barra, então use mensagens/acp ... diretamente na conversa.
Vinculação ACP persistente
Gerar ACP a partir do chat
Em uma DM ou thread do Feishu/Lark:--thread here funciona para DMs e mensagens de thread do Feishu/Lark. Mensagens de acompanhamento na conversa vinculada são roteadas diretamente para essa sessão ACP.
Roteamento multiagente
Usebindings para rotear DMs ou grupos do Feishu/Lark para diferentes agentes.
match.channel:"feishu"match.peer.kind:"direct"(DM) ou"group"(chat em grupo)match.peer.id: Open ID do usuário (ou_xxx) ou ID do grupo (oc_xxx)
Referência de configuração
Configuração completa: Configuração do Gateway| Configuração | Descrição | Padrão |
|---|---|---|
channels.feishu.enabled | Ativa/desativa o canal | true |
channels.feishu.domain | Domínio da API (feishu ou lark) | feishu |
channels.feishu.connectionMode | Transporte de eventos (websocket ou webhook) | websocket |
channels.feishu.defaultAccount | Conta padrão para roteamento de saída | default |
channels.feishu.verificationToken | Obrigatório para o modo Webhook | - |
channels.feishu.encryptKey | Obrigatório para o modo Webhook | - |
channels.feishu.webhookPath | Caminho da rota do Webhook | /feishu/events |
channels.feishu.webhookHost | Host de vinculação do Webhook | 127.0.0.1 |
channels.feishu.webhookPort | Porta de vinculação do Webhook | 3000 |
channels.feishu.accounts.<id>.appId | ID do aplicativo | - |
channels.feishu.accounts.<id>.appSecret | Segredo do aplicativo | - |
channels.feishu.accounts.<id>.domain | Substituição de domínio por conta | feishu |
channels.feishu.accounts.<id>.tts | Substituição de TTS por conta | messages.tts |
channels.feishu.dmPolicy | Política de DM | allowlist |
channels.feishu.allowFrom | Lista de permissões de DM (lista de open_id) | [BotOwnerId] |
channels.feishu.groupPolicy | Política de grupos | allowlist |
channels.feishu.groupAllowFrom | Lista de permissões de grupos | - |
channels.feishu.requireMention | Exigir @menção em grupos | true |
channels.feishu.groups.<chat_id>.requireMention | Substituição de @menção por grupo; IDs explícitos também admitem o grupo no modo de lista de permissões | herdado |
channels.feishu.groups.<chat_id>.enabled | Ativa/desativa um grupo específico | true |
channels.feishu.textChunkLimit | Tamanho do fragmento de mensagem | 2000 |
channels.feishu.mediaMaxMb | Limite de tamanho de mídia | 30 |
channels.feishu.streaming | Saída de cartão em streaming | true |
channels.feishu.blockStreaming | Streaming de resposta em blocos concluídos | false |
channels.feishu.typingIndicator | Enviar reações de digitação | true |
channels.feishu.resolveSenderNames | Resolver nomes de exibição dos remetentes | true |
Tipos de mensagem compatíveis
Receber
- ✅ Texto
- ✅ Rich text (post)
- ✅ Imagens
- ✅ Arquivos
- ✅ Áudio
- ✅ Vídeo/mídia
- ✅ Figurinhas
file_key bruto. Quando tools.media.audio está configurado, o OpenClaw
baixa o recurso da nota de voz e executa a transcrição de áudio compartilhada antes do
turno do agente, para que o agente receba a transcrição falada. Se o Feishu incluir
texto de transcrição diretamente no payload de áudio, esse texto será usado sem outra
chamada de ASR. Sem um provedor de transcrição de áudio, o agente ainda recebe um
placeholder <media:audio> mais o anexo salvo, não o payload bruto do recurso
do Feishu.
Enviar
- ✅ Texto
- ✅ Imagens
- ✅ Arquivos
- ✅ Áudio
- ✅ Vídeo/mídia
- ✅ Cartões interativos (incluindo atualizações em streaming)
- ⚠️ Rich text (formatação no estilo post; não oferece suporte a todos os recursos de autoria do Feishu/Lark)
audio do Feishu e exigem
mídia enviada em Ogg/Opus (file_type: "opus"). Mídias .opus e .ogg existentes
são enviadas diretamente como áudio nativo. MP3/WAV/M4A e outros formatos de áudio prováveis são
transcodificados para Ogg/Opus a 48 kHz com ffmpeg somente quando a resposta solicita entrega
por voz (audioAsVoice / ferramenta de mensagem asVoice, incluindo respostas de nota de voz
por TTS). Anexos MP3 comuns permanecem como arquivos regulares. Se ffmpeg estiver ausente ou
a conversão falhar, o OpenClaw recorre a um anexo de arquivo e registra o motivo.
Threads e respostas
- ✅ Respostas embutidas
- ✅ Respostas em threads
- ✅ Respostas de mídia continuam cientes da thread ao responder a uma mensagem de thread
groupSessionScope: "group_topic" e "group_topic_sender", grupos de tópicos nativos
do Feishu/Lark usam o thread_id do evento (omt_*) como a chave canônica
da sessão do tópico. Se um evento iniciador de tópico nativo omitir thread_id, o OpenClaw
o hidrata a partir do Feishu antes de rotear o turno. Respostas normais em grupo que
o OpenClaw transforma em threads continuam usando o ID da mensagem raiz da resposta (om_*), para que o
primeiro turno e o turno de acompanhamento permaneçam na mesma sessão.
Relacionado
- Visão geral dos canais - todos os canais compatíveis
- Pareamento - autenticação por DM e fluxo de pareamento
- Grupos - comportamento de chats em grupo e controle por menção
- Roteamento de canais - roteamento de sessão para mensagens
- Segurança - modelo de acesso e endurecimento