openclaw.json : obtenir/définir/modifier/supprimer une valeur par chemin, afficher le schéma, valider ou afficher le chemin du fichier actif. Exécutez openclaw config sans sous-commande pour ouvrir le même assistant guidé que openclaw configure.
Lorsque
OPENCLAW_NIX_MODE=1, OpenClaw considère openclaw.json comme immuable. Les commandes en lecture seule (config get, config file, config schema, config validate) fonctionnent toujours ; les commandes d’écriture de configuration refusent toute modification. Modifiez plutôt la source Nix de l’installation ; pour la distribution nix-openclaw officielle, consultez le démarrage rapide de nix-openclaw et définissez les valeurs sous programs.openclaw.config ou instances.<name>.config.Options racines
string
Filtre de section répétable pour la configuration guidée lorsque vous exécutez
openclaw config sans sous-commande.workspace, model, web, gateway, daemon, channels, plugins, skills, health.
Exemples
Chemins
Notation par points ou crochets. Placez les chemins utilisant des crochets entre guillemets dans les exemples de shell afin que zsh ne développe pas[0] comme un motif glob :
config get
Lit une valeur depuis l’instantané expurgé de la configuration (les secrets ne sont jamais affichés). --json affiche la valeur brute au format JSON ; sinon, les chaînes, nombres et booléens sont affichés sans mise en forme, tandis que les objets et tableaux sont affichés au format JSON mis en forme.
config file
Affiche le chemin du fichier de configuration actif, déterminé à partir de OPENCLAW_CONFIG_PATH ou de l’emplacement par défaut. Le chemin désigne un fichier ordinaire, et non un lien symbolique ; consultez Sécurité d’écriture.
config schema
Affiche sur la sortie standard le schéma JSON généré pour openclaw.json.
Contenu inclus
Contenu inclus
- Le schéma actuel de la configuration racine, ainsi qu’un champ de chaîne racine
$schemadestiné aux outils d’édition. - Les métadonnées de documentation des champs
title/descriptionutilisées par l’interface de contrôle. - Les nœuds d’objet imbriqué, génériques (
*) et d’élément de tableau ([]) héritent des mêmes métadonnéestitle/descriptionlorsque la documentation du champ correspondant existe. - Les branches
anyOf/oneOf/allOfhéritent également des mêmes métadonnées de documentation. - Les métadonnées de schéma en direct des plugins et canaux, dans la mesure du possible, lorsque les manifestes d’exécution peuvent être chargés.
- Un schéma de repli propre même lorsque la configuration actuelle est invalide.
RPC d’exécution associé
RPC d’exécution associé
config.schema.lookup renvoie un chemin de configuration normalisé avec un nœud de schéma superficiel (title, description, type, enum, const, limites courantes), les métadonnées d’indication d’interface correspondantes et les résumés des enfants immédiats. Utilisez-le pour une exploration limitée à un chemin dans l’interface de contrôle ou dans des clients personnalisés.config validate
Valide la configuration actuelle par rapport au schéma actif sans démarrer le Gateway.
Si la validation échoue déjà, commencez par
openclaw configure ou openclaw doctor --fix. openclaw chat ne contourne pas la protection contre les configurations invalides.Valeurs
Les valeurs sont analysées comme du JSON5 lorsque cela est possible ; sinon, elles sont traitées comme des chaînes brutes. Utilisez--strict-json pour exiger du JSON standard sans repli vers une chaîne (la syntaxe propre à JSON5, comme les commentaires, les virgules finales ou les clés sans guillemets, est alors rejetée). --json est un alias historique de --strict-json sur config set.
config get <path> --json affiche la valeur brute au format JSON au lieu d’un texte mis en forme pour le terminal.
L’affectation d’un objet remplace par défaut le chemin cible. Les chemins protégés qui contiennent généralement des entrées ajoutées par l’utilisateur refusent les remplacements qui supprimeraient des entrées existantes, sauf si vous transmettez
--replace : agents.defaults.models, agents.list, models.providers, models.providers.<id>, models.providers.<id>.models, plugins.entries et auth.profiles.--merge lors de l’ajout d’entrées à ces tables de correspondance :
--replace uniquement lorsque la valeur fournie doit intentionnellement devenir la valeur cible complète.
Modes de config set
- Mode valeur
- Mode de création de SecretRef
- Mode de création de fournisseur
- Mode par lots
--batch-json/--batch-file) comme source de vérité ; --strict-json / --json ne modifient pas le comportement d’analyse par lots.
Le mode chemin/valeur JSON fonctionne également directement pour les SecretRefs et les fournisseurs :
Options de création de fournisseur
Les cibles du générateur de fournisseur doivent utilisersecrets.providers.<alias> comme chemin.
Options communes
Options communes
--provider-source <env|file|exec>--provider-timeout-ms <ms>(file,exec)
Fournisseur d’environnement (--provider-source env)
Fournisseur d’environnement (--provider-source env)
--provider-allowlist <ENV_VAR>(répétable)
Fournisseur de fichier (--provider-source file)
Fournisseur de fichier (--provider-source file)
--provider-path <path>(obligatoire)--provider-mode <singleValue|json>--provider-max-bytes <bytes>--provider-allow-insecure-path
Fournisseur d’exécution (--provider-source exec)
Fournisseur d’exécution (--provider-source exec)
--provider-command <path>(obligatoire)--provider-arg <arg>(répétable)--provider-no-output-timeout-ms <ms>--provider-max-output-bytes <bytes>--provider-json-only--provider-env <KEY=VALUE>(répétable)--provider-pass-env <ENV_VAR>(répétable)--provider-trusted-dir <path>(répétable)--provider-allow-insecure-path--provider-allow-symlink-command
config patch
Collez ou transmettez par canal une modification JSON5 ayant la forme d’une configuration au lieu d’exécuter de nombreuses commandes config set fondées sur des chemins. Les objets sont fusionnés récursivement ; les tableaux et les valeurs scalaires remplacent la cible ; null supprime le chemin cible.
--replace-path <path> lorsqu’un objet ou un tableau doit devenir exactement la valeur fournie au lieu d’être modifié récursivement :
--dry-run exécute les vérifications du schéma et de la résolvabilité des SecretRefs sans effectuer d’écriture. Les SecretRefs reposant sur une exécution sont ignorées par défaut lors d’une simulation ; ajoutez --allow-exec lorsque vous souhaitez intentionnellement que la simulation exécute les commandes du fournisseur.
Simulation
--dry-run valide les modifications sans écrire dans openclaw.json. Disponible sur config set, config patch et config unset.
Comportement du mode simulation
Comportement du mode simulation
- Mode constructeur : exécute des contrôles de résolubilité des SecretRef pour les références/fournisseurs modifiés.
- Mode JSON (
--strict-json,--jsonou mode par lots) : exécute la validation du schéma ainsi que les contrôles de résolubilité des SecretRef. - La validation de la politique s’effectue sur l’intégralité de la configuration après modification, afin que les écritures d’objets parents (par exemple, définir
hookscomme un objet) ne puissent pas contourner la validation des surfaces non prises en charge. - Les contrôles des SecretRef de type exec sont ignorés par défaut afin d’éviter les effets secondaires des commandes ; transmettez
--allow-execpour les activer (cela peut exécuter des commandes de fournisseur).--allow-execest réservé au mode simulation et génère une erreur sans--dry-run.
Champs de --dry-run --json
Champs de --dry-run --json
ok: indique si la simulation a réussioperations: nombre d’affectations évaluéeschecks: indique si les contrôles de schéma/résolubilité ont été exécutéschecks.resolvabilityComplete: indique si les contrôles de résolubilité ont été menés à terme (faux lorsque les références exec sont ignorées)refsChecked: nombre de références effectivement résolues pendant la simulationskippedExecRefs: nombre de références exec ignorées parce que--allow-execn’était pas définierrors: échecs structurés de chemin manquant, de schéma ou de résolubilité lorsqueok=false
Structure de la sortie JSON
- Exemple de réussite
- Exemple d'échec
En cas d'échec de la simulation
En cas d'échec de la simulation
config schema validation failed: la structure de votre configuration après modification n’est pas valide ; corrigez le chemin/la valeur ou la structure de l’objet fournisseur/référence.Config policy validation failed: unsupported SecretRef usage: rétablissez cette information d’identification sous forme de texte brut/chaîne ; utilisez les SecretRef uniquement sur les surfaces prises en charge.SecretRef assignment(s) could not be resolved: le fournisseur ou la référence indiqué ne peut actuellement pas être résolu (variable d’environnement manquante, pointeur de fichier non valide, échec du fournisseur exec ou incompatibilité entre le fournisseur et la source).Dry run note: skipped <n> exec SecretRef resolvability check(s): relancez avec--allow-execsi vous devez valider la résolubilité exec.- Pour le mode par lots, corrigez les entrées en échec et relancez
--dry-runavant d’effectuer l’écriture.
Application des modifications
Après chaque exécution réussie deconfig set / config patch / config unset, la CLI affiche l’une des trois indications suivantes pour vous informer si le Gateway doit être redémarré :
Les écritures dans
plugins.entries (ou dans l’un de ses sous-chemins) nécessitent toujours un redémarrage, car la CLI ne peut pas garantir que les métadonnées de rechargement de chaque plugin sont chargées.
Sécurité des écritures
openclaw config set et les autres outils d’écriture de configuration appartenant à OpenClaw valident l’intégralité de la configuration après modification avant de l’enregistrer sur le disque. Si la nouvelle charge utile échoue à la validation du schéma ou semble écraser des données de manière destructive, la configuration active reste intacte et la charge utile rejetée est enregistrée à côté sous le nom openclaw.json.rejected.*.
Les écritures appartenant à OpenClaw resérialisent le JSON5 en JSON standard. Lorsque la source contient des commentaires, l’outil d’écriture émet un avertissement juste avant de les supprimer ; utilisez directement un éditeur s’il est important de conserver les commentaires.
Privilégiez les écritures via la CLI pour les petites modifications :
openclaw.json. Exécutez openclaw doctor --fix pour réparer une configuration préfixée/écrasée ou restaurer la dernière copie valide connue. Consultez Dépannage du Gateway.
La récupération du fichier entier est réservée aux réparations effectuées par doctor. Les modifications du schéma d’un plugin ou les incohérences de minHostVersion restent signalées explicitement au lieu d’entraîner la restauration d’autres paramètres utilisateur sans rapport, tels que la configuration des modèles, des fournisseurs, des profils d’authentification, des canaux, de l’exposition du Gateway, des outils, de la mémoire, du navigateur ou de Cron.
Boucle de réparation
Une fois queopenclaw config validate réussit, utilisez la TUI locale pour qu’un agent intégré compare la configuration active à la documentation pendant que vous validez chaque modification depuis le même terminal :
! initial exécute une commande shell locale littérale (après une demande de confirmation unique par session) :
1
Comparer avec la documentation
Demandez à l’agent de comparer votre configuration actuelle à la page de documentation pertinente et de suggérer la correction minimale.
2
Appliquer des modifications ciblées
Appliquez des modifications ciblées avec
openclaw config set ou openclaw configure.3
Valider à nouveau
Relancez
openclaw config validate après chaque modification.4
Utiliser doctor pour les problèmes d'exécution
Si la validation réussit, mais que l’environnement d’exécution présente toujours des problèmes, exécutez
openclaw doctor ou openclaw doctor --fix pour obtenir de l’aide concernant la migration et la réparation.