bash openclaw channels login --channel feishu Elija la configuración manual para pegar un App ID y un App Secret de la plataforma abierta de Feishu, o elija la configuración QR para crear un bot automáticamente. Si la aplicación móvil nacional de Feishu no reacciona al código QR, vuelva a ejecutar la configuración y elija la configuración manual.
Una vez que se complete la configuración, reinicie la puerta de enlace para aplicar los cambios
| `"open"` | Responder a todos los mensajes en grupos |
| `"allowlist"` | Responder solo a los grupos en `groupAllowFrom` o configurados explícitamente en `groups.
| |”disabled” | Deshabilitar todos los mensajes grupales; las entradas explícitasgroups.
` no anulan esto |
Predeterminado: allowlist
Requisito de mención (channels.feishu.requireMention):
true - requerir @mención (predeterminado)
false - responder sin @mención
Anulación por grupo: `channels.feishu.groups.
.requireMention`
Los @all y @_all de solo difusión no se tratan como menciones del bot. Un mensaje que menciona tanto a @all como al bot directamente todavía cuenta como una mención del bot.
En el modo allowlist, también puede admitir un grupo agregando una entrada explícita de `groups.
. Las entradas explícitas no anulan groupPolicy: “disabled”. Los valores predeterminados de comodín bajo groups.*` configuran los grupos coincidentes, pero por sí mismos no admiten grupos.
Abra el grupo en Feishu/Lark, haga clic en el icono del menú en la esquina superior derecha y vaya a Configuración. El ID del grupo (chat_id) se enumera en la página de configuración.
defaultAccount controla qué cuenta se utiliza cuando las API de salida no especifican un accountId.
`accounts.
.ttsutiliza la misma forma quemessages.tts` y se fusiona profundamente con la
configuración global de TTS, por lo que las configuraciones de Feishu con múltiples bots pueden mantener las credenciales del proveedor compartidas globalmente mientras solo anulan la voz, el modelo, el persona o el modo automático
por cuenta.
Feishu/Lark admite respuestas en streaming a través de tarjetas interactivas. Cuando está habilitado, el bot actualiza la tarjeta en tiempo real mientras genera texto.
blockStreaming: true, // opt into completed-block streaming
},
},
}
Establezca streaming: false para enviar la respuesta completa en un solo mensaje. blockStreaming está desactivado de forma predeterminada; habilítelo solo cuando desee que los bloques de asistente completos se vacíen antes de la respuesta final.
Feishu/Lark es compatible con ACP para mensajes directos y de hilos de grupos. La ACP de Feishu/Lark se basa en comandos de texto; no hay menús nativos de comandos de barra diagonal, así que use mensajes /acp ... directamente en la conversación.
--thread here funciona para mensajes directos y mensajes de hilos de Feishu/Lark. Los mensajes de seguimiento en la conversación vinculada se enrutan directamente a esa sesión de ACP.
.appId | ID de aplicación | - | |channels.feishu.accounts.
.appSecret | Secreto de aplicación | - | |channels.feishu.accounts.
.domain | Anulación de dominio por cuenta |feishu | |channels.feishu.accounts.
.tts | Invalidación de TTS por cuenta |messages.tts | |channels.feishu.dmPolicy | Política de MD |allowlist | |channels.feishu.allowFrom | Lista blanca de MD (lista de open_id) | [BotOwnerId] | |channels.feishu.groupPolicy | Política de grupo |allowlist | |channels.feishu.groupAllowFrom | Lista blanca de grupos | - | |channels.feishu.requireMention | Requerir @mención en grupos |true | |channels.feishu.groups.
.requireMention| Invalidación de @mención por grupo; los ID explícitos también admiten el grupo en modo de lista blanca | heredado | |channels.feishu.groups.
.enabled | Habilitar/deshabilitar un grupo específico |true | |channels.feishu.textChunkLimit | Tamaño de fragmento de mensaje |2000 | |channels.feishu.mediaMaxMb | Límite de tamaño de medios |30 | |channels.feishu.streaming | Salida de tarjeta en streaming |true | |channels.feishu.blockStreaming | Streaming de respuesta de bloque completado |false | |channels.feishu.typingIndicator | Enviar reacciones de escritura |true | |channels.feishu.resolveSenderNames | Resolver nombres para mostrar del remitente |true` |
Los mensajes de audio entrantes de Feishu/Lark se normalizan como marcadores de posición de medios en lugar de JSON file_key sin procesar. Cuando tools.media.audio está configurado, OpenClaw descarga el recurso de nota de voz y ejecuta la transcripción de audio compartida antes del turno del agente, por lo que el agente recibe la transcripción hablada. Si Feishu incluye el texto de la transcripción directamente en la carga útil de audio, se usa ese texto sin otra llamada ASR. Sin un proveedor de transcripción de audio, el agente aún recibe un marcador de posición `
` más el archivo adjunto guardado, no la carga útil del recurso de Feishu sin procesar.
✅ Tarjetas interactivas (incluyendo actualizaciones en streaming)
⚠️ Texto enriquecido (formato de publicación; no es compatible con todas las capacidades de creación de Feishu/Lark)
Las burbujas de audio nativas de Feishu/Lark utilizan el tipo de mensaje de Feishu audio y requieren
medios de carga Ogg/Opus (file_type: "opus"). Los medios .opus y .ogg existentes
se envían directamente como audio nativo. Los formatos de audio probables como MP3/WAV/M4A y otros
se transcodifican a Ogg/Opus de 48 kHz con ffmpeg solo cuando la respuesta solicita entrega
de voz (audioAsVoice / herramienta de mensaje asVoice, incluidas las respuestas de notas de voz TTS).
Los archivos adjuntos MP3 ordinarios permanecen como archivos normales. Si falta ffmpeg o
la conversión falla, OpenClaw recurre a un archivo adjunto y registra el motivo.
✅ Las respuestas de medios mantienen el conocimiento del hilo al responder a un mensaje de un hilo
Para groupSessionScope: "group_topic" y "group_topic_sender", los grupos de temas nativos
de Feishu/Lark utilizan el evento thread_id (omt_*) como clave
canónica de la sesión del tema. Si un evento iniciador de tema nativo omite thread_id, OpenClaw
lo rellena desde Feishu antes de enrutar el turno. Las respuestas grupales normales que
OpenClaw convierte en hilos siguen usando el ID del mensaje raíz de la respuesta (om_*) para que
el primer turno y el turno de seguimiento permanezcan en la misma sesión.