openclaw.json: ottieni/imposta/applica patch/annulla/file/schema/convalida valori per percorso e stampa il file di configurazione attivo. Esegui senza un sottocomando per aprire la procedura guidata di configurazione (come openclaw configure).
Quando
OPENCLAW_NIX_MODE=1, OpenClaw tratta openclaw.json come immutabile. I comandi di sola lettura come config get, config file, config schema e config validate continuano a funzionare, ma i comandi che scrivono la configurazione rifiutano l’operazione. Gli agenti dovrebbero invece modificare il sorgente Nix dell’installazione; per la distribuzione proprietaria nix-openclaw, usa nix-openclaw Quick Start e imposta i valori sotto programs.openclaw.config o instances.<name>.config.Opzioni radice
Filtro di sezione ripetibile della configurazione guidata quando esegui
openclaw config senza un sottocomando.workspace, model, web, gateway, daemon, channels, plugins, skills, health.
Esempi
config schema
Stampa lo schema JSON generato per openclaw.json su stdout come JSON.
Cosa include
Cosa include
- Lo schema di configurazione radice corrente, più un campo stringa
$schemaradice per gli strumenti dell’editor. - Metadati di documentazione
titleedescriptiondei campi usati dalla Control UI. - I nodi oggetto annidati, con carattere jolly (
*) e degli elementi di array ([]) ereditano gli stessi metadatititle/descriptionquando esiste documentazione del campo corrispondente. - Anche i rami
anyOf/oneOf/allOfereditano gli stessi metadati della documentazione quando esiste documentazione del campo corrispondente. - Metadati schema live di Plugin + canali al meglio possibile quando i manifest di runtime possono essere caricati.
- Uno schema di fallback pulito anche quando la configurazione corrente non è valida.
RPC runtime correlata
RPC runtime correlata
config.schema.lookup restituisce un percorso di configurazione normalizzato con un nodo schema superficiale (title, description, type, enum, const, limiti comuni), metadati di suggerimento UI corrispondenti e riepiloghi immediati dei figli. Usalo per drill-down con ambito di percorso in Control UI o client personalizzati.Percorsi
I percorsi usano la notazione con punto o parentesi quadre. Racchiudi tra virgolette i percorsi con notazione a parentesi negli esempi di shell, così shell come zsh non espandono[0] come glob prima che OpenClaw riceva il percorso:
Valori
I valori vengono analizzati come JSON5 quando possibile; altrimenti sono trattati come stringhe. Usa--strict-json per richiedere l’analisi JSON standard senza fallback a stringa. --json resta supportato come alias legacy di --strict-json.
--strict-json è abilitato, la sintassi solo JSON5 come commenti, virgole finali o chiavi oggetto senza virgolette viene rifiutata. Ometti --strict-json per l’analisi dei valori JSON5 con fallback a stringa grezza.
config get <path> --json stampa il valore grezzo come JSON invece di testo formattato per terminale.
Per impostazione predefinita, l’assegnazione di oggetti sostituisce il percorso di destinazione. I percorsi di mappe/elenchi protetti che comunemente contengono voci aggiunte dall’utente, come
agents.defaults.models, models.providers, models.providers.<id>.models, plugins.entries e auth.profiles, rifiutano sostituzioni che rimuoverebbero voci esistenti a meno che non passi --replace.--merge quando aggiungi voci a quelle mappe:
--replace solo quando vuoi intenzionalmente che il valore fornito diventi il valore di destinazione completo.
Modalità di config set
openclaw config set supporta quattro stili di assegnazione:
- Modalità valore
- Modalità builder SecretRef
- Modalità builder provider
- Modalità batch
--batch-json/--batch-file) come fonte di verità. --strict-json / --json non modificano il comportamento di analisi batch.
config patch
Usa config patch quando vuoi incollare o convogliare una patch con forma di configurazione invece di eseguire molti comandi config set basati su percorsi. L’input è un oggetto JSON5. Gli oggetti vengono uniti ricorsivamente, gli array e i valori scalari sostituiscono il valore di destinazione e null elimina il percorso di destinazione.
--replace-path <path> quando un oggetto o array deve diventare esattamente il valore fornito invece di essere aggiornato ricorsivamente con patch:
--dry-run esegue controlli di schema e risolvibilità SecretRef senza scrivere. Le SecretRef basate su exec vengono saltate per impostazione predefinita durante il dry run; aggiungi --allow-exec quando vuoi intenzionalmente che il dry run esegua comandi provider.
La modalità percorso/valore JSON resta supportata sia per SecretRef sia per provider:
Flag builder provider
Le destinazioni del builder provider devono usaresecrets.providers.<alias> come percorso.
Flag comuni
Flag comuni
--provider-source <env|file|exec>--provider-timeout-ms <ms>(file,exec)
Provider Env (--provider-source env)
Provider Env (--provider-source env)
--provider-allowlist <ENV_VAR>(ripetibile)
Provider file (--provider-source file)
Provider file (--provider-source file)
--provider-path <path>(obbligatorio)--provider-mode <singleValue|json>--provider-max-bytes <bytes>--provider-allow-insecure-path
Provider exec (--provider-source exec)
Provider exec (--provider-source exec)
--provider-command <path>(obbligatorio)--provider-arg <arg>(ripetibile)--provider-no-output-timeout-ms <ms>--provider-max-output-bytes <bytes>--provider-json-only--provider-env <KEY=VALUE>(ripetibile)--provider-pass-env <ENV_VAR>(ripetibile)--provider-trusted-dir <path>(ripetibile)--provider-allow-insecure-path--provider-allow-symlink-command
Dry run
Usa--dry-run per convalidare le modifiche senza scrivere openclaw.json.
Comportamento dry-run
Comportamento dry-run
- Modalità builder: esegue controlli di risolvibilità SecretRef per refs/provider modificati.
- Modalità JSON (
--strict-json,--jsono modalità batch): esegue la convalida dello schema più i controlli di risolvibilità SecretRef. - La convalida dei criteri viene eseguita anche per superfici di destinazione SecretRef note e non supportate.
- I controlli dei criteri valutano la configurazione completa dopo la modifica, quindi le scritture su oggetti padre (ad esempio impostare
hookscome oggetto) non possono aggirare la convalida delle superfici non supportate. - I controlli SecretRef exec vengono saltati per impostazione predefinita durante il dry-run per evitare effetti collaterali dei comandi.
- Usa
--allow-execcon--dry-runper attivare i controlli SecretRef exec (questo può eseguire comandi del provider). --allow-execè solo per il dry-run e genera errore se usato senza--dry-run.
Campi di --dry-run --json
Campi di --dry-run --json
--dry-run --json stampa un report leggibile da macchina:ok: se il dry-run è riuscitooperations: numero di assegnazioni valutatechecks: se sono stati eseguiti controlli di schema/risolvibilitàchecks.resolvabilityComplete: se i controlli di risolvibilità sono stati eseguiti fino al completamento (false quando le refs exec vengono saltate)refsChecked: numero di refs effettivamente risolte durante il dry-runskippedExecRefs: numero di refs exec saltate perché--allow-execnon era impostatoerrors: errori strutturati di percorso mancante, schema o risolvibilità quandook=false
Forma dell’output JSON
- Esempio di successo
- Esempio di errore
Se il dry-run non riesce
Se il dry-run non riesce
config schema validation failed: la forma della configurazione dopo la modifica non è valida; correggi il percorso/valore o la forma dell’oggetto provider/ref.Config policy validation failed: unsupported SecretRef usage: sposta quella credenziale di nuovo in input in testo semplice/stringa e mantieni SecretRefs solo sulle superfici supportate.SecretRef assignment(s) could not be resolved: il provider/ref referenziato al momento non può essere risolto (variabile env mancante, puntatore file non valido, errore del provider exec o mancata corrispondenza provider/sorgente).Dry run note: skipped <n> exec SecretRef resolvability check(s): il dry-run ha saltato le refs exec; riesegui con--allow-execse ti serve la convalida della risolvibilità exec.- Per la modalità batch, correggi le voci non riuscite e riesegui
--dry-runprima di scrivere.
Sicurezza in scrittura
openclaw config set e altri writer di configurazione di proprietà di OpenClaw convalidano la configurazione completa dopo la modifica prima di confermarla su disco. Se il nuovo payload non supera la convalida dello schema o sembra una sovrascrittura distruttiva, la configurazione attiva viene lasciata invariata e il payload rifiutato viene salvato accanto a essa come openclaw.json.rejected.*.
Preferisci le scritture tramite CLI per piccole modifiche:
openclaw.json. Esegui openclaw doctor --fix per riparare una configurazione con prefisso/sovrascritta o ripristinare l’ultima copia nota come valida. Vedi Risoluzione dei problemi del Gateway.
Il ripristino dell’intero file è riservato alla riparazione tramite doctor. Le modifiche allo schema del Plugin o la discrepanza di minHostVersion restano esplicite invece di annullare impostazioni utente non correlate come modelli, provider, profili di autenticazione, canali, esposizione gateway, strumenti, memoria, browser o configurazione cron.
Sottocomandi
config file: stampa il percorso del file di configurazione attivo (risolto daOPENCLAW_CONFIG_PATHo dalla posizione predefinita). Il percorso deve indicare un file regolare, non un symlink.
Convalida
Convalida la configurazione corrente rispetto allo schema attivo senza avviare il gateway.openclaw config validate passa, puoi usare la TUI locale per far confrontare a un agente incorporato la configurazione attiva con la documentazione mentre convalidi ogni modifica dallo stesso terminale:
Se la convalida non sta già passando, inizia con
openclaw configure o openclaw doctor --fix. openclaw chat non aggira la guardia contro configurazioni non valide.Confronta con la documentazione
Chiedi all’agente di confrontare la configurazione corrente con la pagina di documentazione pertinente e suggerire la correzione più piccola.