Créer un assistant personnel avec OpenClaw
OpenClaw est une passerelle auto-hébergée qui connecte Discord, Google Chat, iMessage, Matrix, Microsoft Teams, Signal, Slack, Telegram, WhatsApp, Zalo, et plus encore à des agents IA. Ce guide couvre la configuration « assistant personnel » : un numéro WhatsApp dédié qui se comporte comme votre assistant IA toujours actif.⚠️ La sécurité avant tout
Vous placez un agent dans une position où il peut :- exécuter des commandes sur votre machine (selon votre politique d’outils)
- lire/écrire des fichiers dans votre espace de travail
- renvoyer des messages via WhatsApp/Telegram/Discord/Mattermost et d’autres canaux intégrés
- Définissez toujours
channels.whatsapp.allowFrom(ne faites jamais tourner un service ouvert à tous sur votre Mac personnel). - Utilisez un numéro WhatsApp dédié pour l’assistant.
- Les heartbeats sont désormais définis par défaut toutes les 30 minutes. Désactivez-les jusqu’à ce que vous fassiez confiance à la configuration en définissant
agents.defaults.heartbeat.every: "0m".
Prérequis
- OpenClaw installé et configuré — consultez Getting Started si vous ne l’avez pas encore fait
- Un second numéro de téléphone (SIM/eSIM/prépayé) pour l’assistant
La configuration à deux téléphones (recommandée)
Vous voulez ceci : Si vous liez votre WhatsApp personnel à OpenClaw, chaque message qui vous est envoyé devient une « entrée agent ». C’est rarement ce que vous voulez.Démarrage rapide en 5 minutes
- Associez WhatsApp Web (affiche un QR ; scannez-le avec le téléphone de l’assistant) :
- Démarrez la Gateway (laissez-la en cours d’exécution) :
- Placez une configuration minimale dans
~/.openclaw/openclaw.json:
gateway.auth.token), mais l’authentification par mot de passe fonctionne aussi si vous avez changé gateway.auth.mode en password. Pour le rouvrir plus tard : openclaw dashboard.
Donner à l’agent un espace de travail (AGENTS)
OpenClaw lit les instructions de fonctionnement et la « mémoire » depuis son répertoire d’espace de travail. Par défaut, OpenClaw utilise~/.openclaw/workspace comme espace de travail de l’agent, et le créera automatiquement (ainsi que les fichiers initiaux AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md) lors de la configuration/première exécution de l’agent. BOOTSTRAP.md n’est créé que lorsque l’espace de travail est entièrement nouveau (il ne doit pas réapparaître après sa suppression). MEMORY.md est facultatif (il n’est pas créé automatiquement) ; lorsqu’il est présent, il est chargé pour les sessions normales. Les sessions de sous-agent n’injectent que AGENTS.md et TOOLS.md.
Astuce : traitez ce dossier comme la « mémoire » d’OpenClaw et faites-en un dépôt git (idéalement privé) afin que vos fichiers AGENTS.md + mémoire soient sauvegardés. Si git est installé, les espaces de travail entièrement nouveaux sont initialisés automatiquement.
agents.defaults.workspace (prend en charge ~).
La configuration qui le transforme en « assistant »
OpenClaw utilise par défaut une bonne configuration d’assistant, mais vous voudrez généralement ajuster :- la persona/les instructions dans
SOUL.md - les paramètres par défaut de réflexion (si souhaité)
- les heartbeats (une fois que vous lui faites confiance)
Sessions et mémoire
- Fichiers de session :
~/.openclaw/agents/<agentId>/sessions/{{SessionId}}.jsonl - Métadonnées de session (utilisation de jetons, dernière route, etc.) :
~/.openclaw/agents/<agentId>/sessions/sessions.json(ancien :~/.openclaw/sessions/sessions.json) /newou/resetdémarre une nouvelle session pour cette discussion (configurable viaresetTriggers). S’il est envoyé seul, l’agent répond par un court message de bienvenue pour confirmer la réinitialisation./compact [instructions]compacte le contexte de la session et indique le budget de contexte restant.
Heartbeats (mode proactif)
Par défaut, OpenClaw exécute un heartbeat toutes les 30 minutes avec l’invite :Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.
Définissez agents.defaults.heartbeat.every: "0m" pour le désactiver.
- Si
HEARTBEAT.mdexiste mais est en pratique vide (uniquement des lignes vides et des en-têtes markdown comme# Heading), OpenClaw ignore l’exécution du heartbeat pour économiser des appels API. - Si le fichier est absent, le heartbeat s’exécute quand même et le modèle décide quoi faire.
- Si l’agent répond par
HEARTBEAT_OK(éventuellement avec un court remplissage ; voiragents.defaults.heartbeat.ackMaxChars), OpenClaw supprime la livraison sortante pour ce heartbeat. - Par défaut, la livraison des heartbeats aux cibles de type message direct
user:<id>est autorisée. Définissezagents.defaults.heartbeat.directPolicy: "block"pour supprimer la livraison vers les cibles directes tout en gardant les exécutions de heartbeat actives. - Les heartbeats exécutent des tours complets d’agent — des intervalles plus courts consomment davantage de jetons.
Médias entrants et sortants
Les pièces jointes entrantes (images/audio/documents) peuvent être exposées à votre commande via des modèles :{{MediaPath}}(chemin local du fichier temporaire){{MediaUrl}}(pseudo-URL){{Transcript}}(si la transcription audio est activée)
MEDIA:<path-or-url> sur sa propre ligne (sans espaces). Exemple :
- Si
tools.fs.workspaceOnlyvauttrue, les chemins locaux sortantsMEDIA:restent limités à la racine temporaire d’OpenClaw, au cache média, aux chemins de l’espace de travail de l’agent et aux fichiers générés par le sandbox. - Si
tools.fs.workspaceOnlyvautfalse,MEDIA:en sortie peut utiliser des fichiers locaux de l’hôte que l’agent est déjà autorisé à lire. - Les envois locaux depuis l’hôte n’autorisent toujours que les médias et les types de documents sûrs (images, audio, vidéo, PDF et documents Office). Les fichiers texte brut et de type secret ne sont pas traités comme des médias envoyables.
Liste de contrôle des opérations
/tmp/openclaw/ (par défaut : openclaw-YYYY-MM-DD.log).
Étapes suivantes
- WebChat : WebChat
- Opérations de Gateway : Gateway runbook
- Cron + réveils : Cron jobs
- Compagnon de barre de menus macOS : OpenClaw macOS app
- Application de nœud iOS : iOS app
- Application de nœud Android : Android app
- État de Windows : Windows (WSL2)
- État de Linux : Linux app
- Sécurité : Security