Configuration 🔧
OpenClaw lit une configuration optionnelle depuis~/.openclaw/openclaw.json.
Si le fichier est absent, OpenClaw utilise des valeurs par défaut sûres. Raisons courantes d’ajouter une configuration :
- Restreindre qui peut envoyer des messages au bot
- Définir les modèles, outils, sandboxing ou automatisations (cron, hooks)
- Ajuster les sessions, médias, réseau ou UI
Configuration minimale
Modification de la configuration
- Assistant interactif
- CLI (one-liners)
- Interface de contrôle
- Édition directe
Validation stricte
En cas d’échec de validation :- La Gateway ne démarre pas
- Seules les commandes de diagnostic fonctionnent (
openclaw doctor,openclaw logs,openclaw health,openclaw status) - Exécutez
openclaw doctorpour voir les erreurs exactes - Exécutez
openclaw doctor --fix(ou--yes) pour appliquer les réparations
Tâches courantes
Configurer un canal (WhatsApp, Telegram, Discord, etc.)
Configurer un canal (WhatsApp, Telegram, Discord, etc.)
Chaque canal possède sa section sous
channels.<provider>. Consultez la page dédiée du canal pour les étapes détaillées :- WhatsApp —
channels.whatsapp - Telegram —
channels.telegram - Discord —
channels.discord - Slack —
channels.slack - Signal —
channels.signal - iMessage —
channels.imessage - Google Chat —
channels.googlechat - Mattermost —
channels.mattermost - MS Teams —
channels.msteams
Choisir et configurer les modèles
Choisir et configurer les modèles
Définissez le modèle principal et des replis optionnels :
agents.defaults.modelsdéfinit le catalogue de modèles et sert de liste d’autorisation pour/model.- Les références de modèles utilisent le format
provider/model(ex.anthropic/claude-opus-4-6). - Voir Models CLI pour changer de modèle en chat et Model Failover pour la rotation d’authentification et les replis.
- Pour les fournisseurs personnalisés/self-hosted, voir Custom providers.
Contrôler qui peut envoyer des messages au bot
Contrôler qui peut envoyer des messages au bot
L’accès DM est contrôlé par canal via
dmPolicy :"pairing"(par défaut) : les expéditeurs inconnus reçoivent un code d’appairage unique"allowlist": seuls les expéditeurs dansallowFrom"open": autorise tous les DMs entrants (nécessiteallowFrom: ["*"])"disabled": ignore tous les DMs
groupPolicy + groupAllowFrom.Voir la référence complète pour les détails par canal.Configurer le filtrage par mention en groupe
Configurer le filtrage par mention en groupe
Les messages de groupe nécessitent par défaut une mention. Configurez les motifs par agent :
- Mentions natives : @-mentions propres à la plateforme
- Motifs texte : regex définies dans
mentionPatterns - Voir la référence complète.
Configurer les sessions et réinitialisations
Configurer les sessions et réinitialisations
Les sessions contrôlent la continuité des conversations :
dmScope:main|per-peer|per-channel-peer|per-account-channel-peer- Voir Session Management et la référence complète.
Activer le sandboxing
Activer le sandboxing
Exécutez les sessions agent dans des conteneurs Docker isolés :Construisez l’image une fois :
scripts/sandbox-setup.shVoir Sandboxing.Configurer le heartbeat (vérifications périodiques)
Configurer le heartbeat (vérifications périodiques)
every: durée (30m,2h).0mdésactive.target:last|whatsapp|telegram|discord|none- Voir Heartbeat.
Configurer les tâches cron
Configurer les tâches cron
Configurer les webhooks (hooks)
Configurer les webhooks (hooks)
Configurer le routage multi-agents
Configurer le routage multi-agents
Diviser la configuration en plusieurs fichiers ($include)
Diviser la configuration en plusieurs fichiers ($include)
- Fichier unique : remplace l’objet
- Tableau de fichiers : fusion profonde dans l’ordre
- Clés sœurs : fusionnées après les inclusions
- Inclusions imbriquées : jusqu’à 10 niveaux
- Chemins relatifs : résolus depuis le fichier incluant
- Erreurs : messages clairs pour fichiers manquants, erreurs de parsing ou boucles
Rechargement à chaud de la configuration
La Gateway surveille~/.openclaw/openclaw.json et applique automatiquement les changements.
Modes de rechargement
| Mode | Comportement |
|---|---|
hybrid (défaut) | Applique à chaud les changements sûrs. Redémarre automatiquement si nécessaire. |
hot | Applique uniquement les changements sûrs. Avertit si redémarrage requis. |
restart | Redémarre la Gateway pour tout changement. |
off | Désactive la surveillance. |
Variables d’environnement
OpenClaw lit les variables d’environnement du processus parent ainsi que :.envdans le répertoire courant~/.openclaw/.env
.env ne remplace une variable déjà définie.
Import depuis le shell (optionnel)
Import depuis le shell (optionnel)
Si activé et que des clés attendues sont absentes, OpenClaw exécute votre shell de connexion et importe uniquement les clés manquantes :Équivalent variable d’environnement :
OPENCLAW_LOAD_SHELL_ENV=1Substitution de variables d’environnement
Substitution de variables d’environnement
Référencez des variables avec Règles :
${VAR_NAME} :- Noms en majuscules uniquement :
[A-Z_][A-Z0-9_]* - Variable manquante → erreur au chargement
- Échapper avec
$${VAR} - Fonctionne dans les fichiers
$include - Substitution inline :
"${BASE}/v1"→"https://api.example.com/v1"
Référence complète
Pour la référence détaillée champ par champ, voir Configuration Reference.Related: Configuration Examples · Configuration Reference · Doctor