Aller au contenu
Guides

OpenClaw sur Feishu et Lark

L’assistant de configuration, WebSocket par défaut, la fenêtre d’une heure des webhooks, les deux politiques, et ce que le bot peut envoyer

5 min de lecture

Feishu, et son édition internationale Lark, est la plateforme de collaboration tout-en-un à laquelle OpenClaw se connecte par l’extension officielle : messages directs de bot, discussions de groupe, réponses en cartes diffusées, et outils pour les documents, le wiki, le drive et Bitable. La documentation la dit prête pour la production pour les messages directs et les groupes, avec WebSocket comme transport d’événements par défaut, donc sans URL publique, et le mode webhook en option. Voici l’assistant, comment les événements entrants sont rendus durables, la défense contre le rejeu qui surprend, les deux politiques d’accès, les identifiants dont vous aurez besoin, et ce que le bot peut recevoir et envoyer.

Configuration

  • Il faut OpenClaw 2026.5.29 ou plus récent ; l’assistant de connexion de canal installe l’extension si elle manque et guide la configuration.
  • La configuration manuelle prend un App ID et un App Secret de Feishu Open Platform ou de Lark Developer ; la configuration par QR scanne un code dans l’application Feishu pour créer un bot automatiquement, et ce flux verrouille les messages directs sur votre propre compte avec une liste d’autorisation contenant votre open id.
  • L’assistant demande aussi le domaine d’API, Feishu ou Lark, et la politique de groupe ; si l’application mobile Feishu domestique ne réagit pas au code QR, relancez la configuration et choisissez le mode manuel. Les changements de configuration se rechargent à chaud, et la sonde confirme que le canal est prêt.
  • Les événements de messages et de commentaires de documents sont mis en file durablement avant l’envoi, survivent à un redémarrage, restent sérialisés par discussion ou par document, et sont dédoublonnés par l’identifiant d’événement de Feishu ; un événement WebSocket qui ne peut pas être persisté après des relances bornées ferme le socket et force une nouvelle connexion authentifiée plutôt que de continuer au-delà d’un tour non engagé.
Gardez l’horloge de l’hôte de la passerelle synchronisée (NTP). Une horloge d’hôte qui dérive de plus d’une heure par rapport aux serveurs de Feishu rejette les livraisons fraîches.

La fenêtre des webhooks

Feishu signe chaque livraison de webhook au moment de l’envoi, si bien qu’un rappel signé capturé reste valablement signé pour toujours. Le mode webhook rejette donc tout rappel signé dont l’horodatage est à plus d’une heure avant ou après l’horloge de l’hôte de la passerelle, avant même l’analyse du corps, une défense contre le rejeu qui fonctionne avec la garde de rejeu par message et sa fenêtre de vingt-quatre heures pour qu’un rappel relivré ne puisse pas redéclencher la même action. Les conséquences pratiques sont la citation ci-dessus, le fait que les relivraisons ordinaires portent des horodatages frais et ne sont pas touchées, que le mode WebSocket n’est pas concerné, et qu’il n’y a pas de clé de configuration pour la fenêtre ; elle est fixe à dessein. En mode webhook, le 200 durable porte l’en-tête d’acceptation, tandis que les défis de vérification, les types d’événements non durables et les réponses d’erreur l’omettent.

Qui peut lui parler

  • Les messages directs sont en appairage par défaut, approuvé depuis la CLI ; la liste d’autorisation n’admet que les utilisateurs listés, et le mode ouvert exige l’entrée générique, les entrées non génériques restreignant tout de même l’accès.
  • Les groupes sont en liste d’autorisation par défaut : seuls les groupes de la liste ou configurés explicitement reçoivent une réponse, le mode ouvert répond à tous les groupes, et désactivé ignore les groupes même quand une entrée explicite existe. Les mentions sont exigées par défaut sauf sous une politique ouverte, où la valeur par défaut passe à false pour que les messages qui ne peuvent pas porter de mention, comme les images, atteignent quand même l’agent ; les mentions de diffusion à tous ne comptent pas comme mention du bot.
  • Une liste d’autorisation d’expéditeurs par groupe restreint qui peut déclencher le bot dans un groupe, avec une liste d’expéditeurs à l’échelle du canal comme valeur par défaut. Les messages écrits par des bots sont ignorés sauf si vous accordez deux portées et autorisez les bots, et même alors la protection partagée contre les boucles s’applique. Les identifiants de groupe viennent de la page des réglages du groupe et les open id des utilisateurs des journaux ou de la liste des appairages en attente.

L’appairage dans OpenClaw explique le code d’approbation qu’envoie le réglage par défaut des messages directs, et Hooks et webhooks dans OpenClaw le contrat d’acceptation durable auquel appartient l’en-tête du webhook.

Ce que le bot reçoit et envoie

En réception : texte, texte enrichi, images, fichiers, audio, vidéo et autocollants, la clé réutilisable d’un autocollant étant exposée à l’agent et les notes vocales entrantes transcrites avant le tour quand un fournisseur de transcription audio est configuré. En envoi : texte, images, fichiers, audio en bulles Opus natives quand la réponse demande une livraison vocale, les autres formats étant transcodés avec un repli en pièce jointe si la conversion échoue, vidéo, cartes interactives avec mises à jour diffusées, autocollants que le même bot a déjà reçus une fois l’action d’autocollant activée, et texte enrichi avec une mise en forme partielle. Un jeu d’autocollants sélectionnés avec des mots-clés permet à l’agent de retrouver un autocollant reçu par sous-chaîne insensible à la casse, dans des limites fixes de jeux, d’autocollants et de mots-clés. Les réponses en ligne et en fil fonctionnent toutes deux, et les réponses avec médias restent conscientes du fil. Streaming et découpage dans OpenClaw explique la diffusion de cartes et d’aperçus que le canal prend en charge.

Sur Diali

Feishu ne fait pas partie des canaux que Diali connecte aujourd’hui : ceux que nous faisons tourner sont WhatsApp, Telegram, Discord, Slack, Mattermost, Matrix, SMS et la voix, et une instance autogérée est là où vit cette extension pour l’instant. Connecter votre premier canal en cinq minutes montre notre flux de connexion, OpenClaw hébergé sur Diali est l’assistant et La sécurité chez Diali décrit la frontière.

  • WebSocket par défaut, pas d’URL publique.
  • Les rappels de webhook de plus d’une heure sont rejetés ; gardez l’horloge synchronisée.
  • Appairage pour les messages directs, liste d’autorisation pour les groupes, mentions par défaut.
Commencer

Arrêtez de lire, construisez le vôtre

Configurez un agent, choisissez un canal, et faites-le travailler dans l’application que vous gardez déjà ouverte.