Polydesk-logotype
Polydesk.ai — Header

OpenClaw WhatsApp : transformer WhatsApp en assistant IA personnel

WhatsApp est le canal le plus populaire d’OpenClaw (5 000+ installations actives). La connexion utilise le protocole WhatsApp Web via la librairie Baileys : vous scannez un QR code comme pour WhatsApp Web, et votre assistant IA répond directement dans vos conversations. Pas besoin de compte Meta développeur ni de numéro supplémentaire (même si un numéro dédié est recommandé).

Fiche rapide : OpenClaw + WhatsApp
Protocole
WhatsApp Web (Baileys)
Connexion
QR code via Linked Devices
Statut
Production-ready
Slots utilisés
1 des 4 appareils liés disponibles
Prérequis
OpenClaw installé + compte WhatsApp actif
Sécurité DM
Système de pairing par défaut (code requis)
Groupes
Réponse sur mention uniquement (par défaut)
Recommandation
Numéro WhatsApp dédié (eSIM ou téléphone secondaire)

Comment ça fonctionne

L’intégration WhatsApp d’OpenClaw utilise le modèle Linked Device. Concrètement, OpenClaw se comporte comme un appareil lié supplémentaire sur votre compte WhatsApp, exactement comme quand vous connectez WhatsApp Web sur un ordinateur. Il occupe un des 4 slots d’appareils liés disponibles.

Quand quelqu’un vous envoie un message sur WhatsApp, le Gateway d’OpenClaw le reçoit, le route vers une session d’agent, invoque le LLM configuré (Claude, GPT, modèle local), et renvoie la réponse dans la conversation WhatsApp. Tout se passe en quelques secondes.

L’avantage de cette approche : pas de nouveau numéro requis, pas de compte Meta développeur, pas de webhook public à configurer. L’inconvénient : la connexion dépend du protocole WhatsApp Web (non officiel), ce qui la rend moins stable qu’un canal comme Telegram qui a une API bot officielle.


Connecter WhatsApp à OpenClaw

Via le wizard d’onboarding

Si vous êtes en train d’installer OpenClaw pour la première fois, le wizard openclaw onboard vous propose de configurer WhatsApp directement. Sélectionnez WhatsApp quand il demande les canaux à connecter.

Le plugin WhatsApp est installé automatiquement la première fois que vous le sélectionnez (via npm @openclaw/whatsapp pour les canaux stable/beta, ou le chemin local pour le canal dev).

Ajouter WhatsApp après l’installation

# Activer le canal WhatsApp
openclaw config set channels.whatsapp.enabled true

# Redémarrer le Gateway
openclaw gateway restart

# Lancer le login (affiche le QR code)
openclaw channels login --channel whatsapp

Le terminal affiche un QR code. Sur votre téléphone, ouvrez WhatsApp, allez dans Paramètres > Appareils liés > Lier un appareil, et scannez le code.

Le QR code expire vite Scannez immédiatement après l’affichage. Si le code expire, relancez openclaw channels login --channel whatsapp. Assurez-vous que votre téléphone et votre ordinateur sont sur le même réseau. Vérifiez aussi que l’application WhatsApp sur votre téléphone est à jour.

Vérifier la connexion

# Vérifier le status du Gateway
openclaw gateway status
# Devrait afficher WhatsApp: connected

# Ouvrir le dashboard
openclaw dashboard
# Vérifier dans la section Overview que WhatsApp est actif

Pour tester, envoyez-vous un message à vous-même sur WhatsApp (la fonctionnalité « Me contacter » dans WhatsApp). Si l’agent répond, tout fonctionne. Vous pouvez aussi demander à un contact de vous envoyer un message : si le pairing est activé (par défaut), le contact devra d’abord fournir un code d’appairage.


Configuration avancée

Politique de messages directs (DM)

Par défaut, OpenClaw utilise un système de pairing pour les DMs : toute personne qui vous contacte pour la première fois doit fournir un code avant de pouvoir interagir avec l’agent. C’est une protection essentielle pour éviter que n’importe qui utilise votre assistant.

{
  "channels": {
    "whatsapp": {
      "dmPolicy": "pairing",
      "allowFrom": ["+33612345678", "+33698765432"]
    }
  }
}

La politique dmPolicy peut prendre plusieurs valeurs : pairing (code requis, par défaut), ou vous pouvez combiner avec un allowFrom qui liste les numéros autorisés en format E.164 (avec l’indicatif pays). Les numéros dans allowFrom sont autorisés sans pairing. Les demandes de pairing expirent après 1 heure, avec un maximum de 3 en attente par canal.

Si aucune allowlist n’est configurée, le numéro lié (votre propre numéro) est autorisé par défaut.

Politique de groupes

Par défaut, OpenClaw ne répond dans les groupes WhatsApp que quand il est mentionné. C’est le comportement recommandé pour éviter que l’agent ne s’insère dans toutes vos conversations de groupe.

{
  "channels": {
    "whatsapp": {
      "groupPolicy": "allowlist",
      "groupAllowFrom": ["+33612345678"]
    }
  }
}

La détection de mention inclut les patterns de mention configurés, les patterns regex personnalisés, et la détection implicite de réponse au bot (quand quelqu’un répond directement à un message de l’agent).

Désactiver les groupes complètement Si vous ne voulez pas que l’agent réponde dans les groupes, réglez groupPolicy sur "disabled". C’est la configuration la plus sûre pour un usage personnel.

Réactions de confirmation

OpenClaw peut envoyer une réaction emoji sur chaque message reçu pour confirmer la prise en charge, avant même que la réponse IA soit générée.

{
  "channels": {
    "whatsapp": {
      "ackReaction": {
        "emoji": "👀",
        "direct": true,
        "group": "mentions"
      }
    }
  }
}

L’option group peut être always (réagir à tous les messages de groupe), mentions (uniquement sur les messages qui mentionnent le bot), ou never.

Multi-comptes WhatsApp

OpenClaw supporte plusieurs comptes WhatsApp simultanés. Chaque compte peut avoir ses propres politiques de DM et de groupes via channels.whatsapp.accounts.<id>. Les paramètres par compte prennent priorité sur les paramètres du canal.


Numéro dédié : pourquoi et comment

OpenClaw recommande fortement d’utiliser un numéro WhatsApp séparé pour l’agent. Trois raisons concrètes.

Isolation du risque. Si votre compte est signalé par WhatsApp (pour activité inhabituelle, messages automatisés, etc.), vous perdez l’accès à l’agent, pas à votre WhatsApp personnel. C’est le scénario le plus courant de problème avec WhatsApp.

Pas de messages accidentels. Avec votre numéro personnel, un mauvais routing pourrait envoyer une réponse IA à un contact qui ne s’y attend pas. Un numéro dédié élimine ce risque.

Clarté pour vos contacts. Les personnes qui interagissent avec votre agent savent qu’elles parlent à un assistant, pas à vous directement.

Options pour obtenir un numéro dédié : une eSIM secondaire (à partir de quelques euros/mois), un ancien téléphone avec sa carte SIM, ou WhatsApp Business avec un numéro différent sur le même appareil.


Maintenir la connexion stable

La connexion WhatsApp peut être fragile car elle repose sur le protocole WhatsApp Web (non officiel). Voici les causes de déconnexion les plus fréquentes et leurs solutions.

Causes de déconnexion

Mise à jour de l’app WhatsApp. Quand WhatsApp se met à jour sur votre téléphone, le comportement de session peut changer suffisamment pour déconnecter les appareils liés. Ouvrez WhatsApp sur votre téléphone, vérifiez les Appareils liés, et rescannez le QR code si nécessaire.

Redémarrage du serveur sans persistance de session. Par défaut, les credentials de session sont stockés localement. Si votre serveur redémarre et que les fichiers de session ne sont pas dans un volume persistant (typique avec Docker sans volume configuré), la connexion se réinitialise. Configurez un volume persistant pour ~/.openclaw/.

Limite de 4 appareils atteinte. WhatsApp autorise maximum 4 appareils liés. Si quelqu’un dans votre foyer connecte un nouvel appareil, WhatsApp peut déconnecter automatiquement le plus ancien (qui est peut-être OpenClaw).

Dérive d’horloge. Les handshakes d’authentification échouent si l’horloge de votre serveur est décalée. Vérifiez que NTP est configuré, surtout sur les VPS.

Solutions préventives

OpenClaw intègre un mécanisme de reconnexion automatique. Si les déconnexions sont malgré tout fréquentes, vérifiez la stabilité de votre connexion internet, la version de Node.js (v22+ obligatoire, v24+ recommandé), et que vous n’utilisez pas le runtime Bun pour le canal WhatsApp (des incompatibilités existent).

Pour le monitoring, le dashboard de santé OpenClaw affiche le statut en temps réel de chaque canal :

# Dashboard de santé en temps réel
openclaw health --watch

Sécurité WhatsApp

Le canal WhatsApp mérite une attention particulière en matière de sécurité.

Gardez le pairing activé. C’est la protection par défaut. Sans pairing, n’importe qui peut interagir avec votre agent via WhatsApp.

Limitez l’allowFrom. Configurez explicitement les numéros autorisés plutôt que de laisser l’accès ouvert. Commencez restrictif, élargissez ensuite.

Les credentials de session sont des mots de passe. Les fichiers de session WhatsApp dans ~/.openclaw/ donnent un accès complet à votre compte WhatsApp lié. Protégez-les comme des credentials sensibles. Ne les commitez jamais dans Git, ne les partagez pas, et chiffrez-les sur les sauvegardes.

Les messages peuvent être stockés. Selon votre configuration, les messages WhatsApp peuvent se retrouver dans les logs, les fichiers de mémoire et l’état de session d’OpenClaw. Si vous manipulez des informations sensibles, vérifiez ce qui est écrit sur le disque et nettoyez régulièrement la mémoire de l’agent.

Attention aux skills tiers. Une skill malveillante installée dans OpenClaw pourrait exfiltrer des messages WhatsApp. N’installez que des skills dont vous avez vérifié le code source.


WhatsApp vs Telegram pour OpenClaw

Critère WhatsApp Telegram
Facilité de setup Moyenne (QR code) Facile (token bot)
Stabilité Moyenne (protocole non officiel) Excellente (API officielle)
Adoption La plus élevée (5 000+ installs) Élevée (3 200+ installs)
Limite fichiers 100 Mo 2 Go
Buttons/Markdown Limité Complet (inline buttons, Markdown)
Webhook requis Non (polling WebSocket) Non (long-polling) ou optionnel (webhook)
IP publique nécessaire Non Non (en mode polling)
Risque de ban Possible (activité automatisée) Quasi nul (bot API officielle)

Notre verdict : si vos contacts sont sur WhatsApp, utilisez WhatsApp. Si vous cherchez la stabilité maximale ou si vous débutez avec OpenClaw, commencez par Telegram pour valider votre setup, puis ajoutez WhatsApp une fois que tout est stable. L’avantage d’OpenClaw est que vous pouvez utiliser les deux simultanément : même agent, même mémoire, canaux différents.


Cas d’usage concrets sur WhatsApp

Assistant personnel 24/7

Le cas d’usage le plus courant. Vous envoyez un message WhatsApp à votre agent depuis n’importe où, et il répond en quelques secondes. Demandez-lui de vérifier vos emails, de résumer un document, de planifier un rappel, ou de faire une recherche. La mémoire persistante d’OpenClaw fait que l’agent se souvient de vos préférences, de vos projets en cours et de vos demandes précédentes, session après session.

Exemple concret : vous êtes en déplacement et vous recevez un email important. Vous envoyez « résume mon dernier email de Jean et propose une réponse » sur WhatsApp. OpenClaw lit votre boîte (via la skill Gmail), résume le contenu et rédige un brouillon de réponse. Vous validez en répondant « envoie » ou vous ajustez.

Monitoring et alertes proactives

Combiné avec les cron jobs d’OpenClaw, WhatsApp devient un canal d’alertes. Configurez des tâches récurrentes : vérification du statut d’un déploiement, surveillance d’un site web, alerte quand un indicateur dépasse un seuil. L’agent vous envoie un message WhatsApp quand quelque chose nécessite votre attention, sans que vous ayez à demander.

Continuité multi-canal

L’une des forces d’OpenClaw est la continuité entre canaux. Commencez une conversation sur WhatsApp depuis votre téléphone, continuez sur Telegram depuis votre laptop, et finissez sur le WebChat du dashboard. L’agent conserve le même contexte, la même mémoire et le même fil de conversation. C’est cette capacité qui distingue OpenClaw des chatbots classiques qui réinitialisent le contexte à chaque plateforme.

Usage en équipe (avec précautions)

OpenClaw est conçu comme un assistant personnel single-user. Pour un usage en équipe, chaque membre devrait avoir sa propre instance. Cela dit, un agent partagé dans un groupe WhatsApp est techniquement possible : configurez le groupPolicy sur "allowlist" et listez les numéros autorisés. L’agent ne répondra qu’aux messages qui le mentionnent, ce qui évite le bruit dans les conversations de groupe.


Dépannage

Le QR code se scanne mais rien ne se passe

Vérifiez que votre téléphone et votre machine sont sur le même réseau. Confirmez que WhatsApp est à jour sur votre téléphone. Relancez openclaw gateway restart puis openclaw channels login --channel whatsapp.

Les messages sont reçus mais l’agent ne répond pas

Vérifiez le profil d’outils dans la config : tools.profile doit être sur full ou messaging, pas disabled. Vérifiez que la clé API du fournisseur LLM est valide avec openclaw doctor. Consultez les logs du Gateway pour les erreurs.

La connexion se coupe régulièrement

Causes probables dans l’ordre de fréquence : mise à jour WhatsApp, session non persistée, limite de 4 appareils atteinte, dérive d’horloge. Vérifiez les Appareils liés dans WhatsApp, configurez un volume persistant pour les sessions, et assurez-vous que NTP est configuré sur votre serveur.

L’agent répond dans les groupes alors qu’il ne devrait pas

Vérifiez que groupPolicy est bien configuré. Si aucun bloc channels.whatsapp n’existe dans la config, le fallback runtime est allowlist (avec un avertissement dans les logs). Ajoutez explicitement la configuration de groupes dans votre openclaw.json.


Questions fréquentes

Faut-il un numéro de téléphone supplémentaire pour WhatsApp avec OpenClaw ?

Non, techniquement. OpenClaw utilise le modèle Linked Device : il se connecte à votre compte WhatsApp existant en occupant un des 4 slots d’appareils liés. Vous n’avez pas besoin d’un nouveau numéro ni d’un compte Meta développeur. Cela dit, OpenClaw recommande fortement un numéro dédié pour isoler le risque : si le compte est signalé pour activité automatisée, vous ne perdez pas votre WhatsApp personnel. Une eSIM secondaire ou WhatsApp Business avec un numéro différent sont les options les plus courantes.

La connexion WhatsApp est-elle stable sur le long terme ?

C’est le point faible du canal WhatsApp par rapport à Telegram. La connexion repose sur le protocole WhatsApp Web (non officiel, via la librairie Baileys). Elle peut se déconnecter suite à une mise à jour WhatsApp, un redémarrage serveur sans persistance de session, ou un dépassement de la limite de 4 appareils. OpenClaw intègre une reconnexion automatique, mais des interruptions ponctuelles sont normales. Le point critique est de configurer la persistance des sessions (volume persistant pour ~/.openclaw/) et de monitorer avec openclaw health --watch.

Comment empêcher des inconnus de parler à mon agent via WhatsApp ?

Le système de pairing (activé par défaut) est la première ligne de défense. Toute personne qui vous contacte pour la première fois doit fournir un code d’appairage. Pour aller plus loin, configurez un allowFrom avec les numéros explicitement autorisés. Les numéros dans l’allowlist passent sans pairing, tous les autres sont bloqués. Pour les groupes, utilisez groupPolicy: "disabled" ou "allowlist" avec la liste des numéros autorisés à déclencher l’agent.

Peut-on utiliser OpenClaw WhatsApp et WhatsApp Web en même temps ?

Oui. OpenClaw occupe un slot d’appareil lié, et WhatsApp Web en occupe un autre. Tant que vous ne dépassez pas 4 appareils liés au total, les deux coexistent. Si vous utilisez déjà WhatsApp Web sur plusieurs navigateurs plus un ordinateur de bureau, vous risquez d’atteindre la limite de 4 slots. Dans ce cas, déconnectez un appareil que vous n’utilisez plus pour libérer un slot pour OpenClaw.

OpenClaw WhatsApp peut-il envoyer des messages proactivement ?

Oui. C’est l’une des forces d’OpenClaw. Via les cron jobs et les webhooks, l’agent peut vous envoyer des messages sans que vous ayez initié la conversation : rappels de calendrier, alertes de monitoring, résumés matinaux, notifications de déploiement. Le canal WhatsApp supporte les envois sortants tant que le Gateway est actif et le compte est lié. Configurez les tâches proactives via les skills ou les cron jobs dans la config OpenClaw.

Polydesk.ai — Footer