openclaw.json: obtêm/definem/aplicam patch/removem/mostram arquivo/esquema/validam valores por caminho e imprimem o arquivo de configuração ativo. Execute sem um subcomando para abrir o assistente de configuração (o mesmo que openclaw configure).
Quando
OPENCLAW_NIX_MODE=1, o OpenClaw trata openclaw.json como imutável. Comandos somente leitura, como config get, config file, config schema e config validate, ainda funcionam, mas gravadores de configuração recusam alterações. Agents devem editar a fonte Nix da instalação em vez disso; para a distribuição nix-openclaw oficial, use Início rápido do nix-openclaw e defina valores em programs.openclaw.config ou instances.<name>.config.Opções raiz
Filtro repetível de seção de configuração guiada ao executar
openclaw config sem um subcomando.workspace, model, web, gateway, daemon, channels, plugins, skills, health.
Exemplos
config schema
Imprime o esquema JSON gerado para openclaw.json em stdout como JSON.
O que ele inclui
O que ele inclui
- O esquema de configuração raiz atual, além de um campo de string
$schemaraiz para ferramentas de editor. - Metadados de documentação
titleedescriptionde campos usados pela Control UI. - Nós de objeto aninhado, curinga (
*) e item de array ([]) herdam os mesmos metadadostitle/descriptionquando existe documentação de campo correspondente. - Ramificações
anyOf/oneOf/allOftambém herdam os mesmos metadados de documentação quando existe documentação de campo correspondente. - Metadados de esquema de Plugin + canal ao vivo em melhor esforço quando os manifestos de runtime podem ser carregados.
- Um esquema de fallback limpo mesmo quando a configuração atual é inválida.
RPC de runtime relacionado
RPC de runtime relacionado
config.schema.lookup retorna um caminho de configuração normalizado com um nó de esquema superficial (title, description, type, enum, const, limites comuns), metadados de dica de UI correspondentes e resumos dos filhos imediatos. Use-o para navegação detalhada com escopo de caminho na Control UI ou em clientes personalizados.Caminhos
Caminhos usam notação com ponto ou colchetes. Coloque caminhos com notação de colchetes entre aspas nos exemplos de shell para que shells como zsh não expandam[0] como um glob antes que o OpenClaw receba o caminho:
Valores
Os valores são analisados como JSON5 quando possível; caso contrário, são tratados como strings. Use--strict-json para exigir análise JSON padrão sem fallback para string. --json continua compatível como um alias legado para --strict-json.
--strict-json está ativado, sintaxe exclusiva de JSON5, como comentários, vírgulas finais ou chaves de objeto sem aspas, é rejeitada. Omita --strict-json para análise de valores JSON5 com fallback de string bruta.
config get <path> --json imprime o valor bruto como JSON em vez de texto formatado para terminal.
A atribuição de objeto substitui o caminho de destino por padrão. Caminhos protegidos de mapas/listas que normalmente contêm entradas adicionadas pelo usuário, como
agents.defaults.models, models.providers, models.providers.<id>.models, plugins.entries e auth.profiles, recusam substituições que removeriam entradas existentes, a menos que você passe --replace.--merge ao adicionar entradas a esses mapas:
--replace somente quando você intencionalmente quiser que o valor fornecido se torne o valor de destino completo.
Modos de config set
openclaw config set é compatível com quatro estilos de atribuição:
- Modo de valor
- Modo construtor de SecretRef
- Modo construtor de provedor
- Modo em lote
--batch-json/--batch-file) como fonte da verdade. --strict-json / --json não alteram o comportamento de análise em lote.
config patch
Use config patch quando quiser colar ou enviar por pipe um patch com formato de configuração em vez de executar muitos comandos config set baseados em caminho. A entrada é um objeto JSON5. Objetos são mesclados recursivamente, arrays e valores escalares substituem o valor de destino, e null exclui o caminho de destino.
--replace-path <path> quando um objeto ou array deve se tornar exatamente o valor fornecido em vez de receber patch recursivamente:
--dry-run executa verificações de esquema e resolubilidade de SecretRef sem gravar. SecretRefs baseados em exec são ignorados por padrão durante dry-run; adicione --allow-exec quando quiser intencionalmente que o dry-run execute comandos de provedor.
O modo de caminho/valor JSON continua compatível tanto para SecretRefs quanto para provedores:
Flags do construtor de provedor
Destinos do construtor de provedor devem usarsecrets.providers.<alias> como caminho.
Flags comuns
Flags comuns
--provider-source <env|file|exec>--provider-timeout-ms <ms>(file,exec)
Provedor env (--provider-source env)
Provedor env (--provider-source env)
--provider-allowlist <ENV_VAR>(repetível)
Provedor file (--provider-source file)
Provedor file (--provider-source file)
--provider-path <path>(obrigatório)--provider-mode <singleValue|json>--provider-max-bytes <bytes>--provider-allow-insecure-path
Provedor exec (--provider-source exec)
Provedor exec (--provider-source exec)
--provider-command <path>(obrigatório)--provider-arg <arg>(repetível)--provider-no-output-timeout-ms <ms>--provider-max-output-bytes <bytes>--provider-json-only--provider-env <KEY=VALUE>(repetível)--provider-pass-env <ENV_VAR>(repetível)--provider-trusted-dir <path>(repetível)--provider-allow-insecure-path--provider-allow-symlink-command
Dry run
Use--dry-run para validar alterações sem gravar openclaw.json.
Comportamento de simulação
Comportamento de simulação
- Modo builder: executa verificações de resolubilidade de SecretRef para refs/provedores alterados.
- Modo JSON (
--strict-json,--jsonou modo em lote): executa validação de esquema mais verificações de resolubilidade de SecretRef. - A validação de política também é executada para superfícies de destino de SecretRef conhecidamente incompatíveis.
- As verificações de política avaliam a configuração completa pós-alteração, portanto gravações em objetos pai (por exemplo, definir
hookscomo um objeto) não podem contornar a validação de superfície incompatível. - As verificações de SecretRef exec são ignoradas por padrão durante a simulação para evitar efeitos colaterais de comandos.
- Use
--allow-execcom--dry-runpara aceitar verificações de SecretRef exec (isso pode executar comandos do provedor). --allow-execé somente para simulação e gera erro se usado sem--dry-run.
Campos de --dry-run --json
Campos de --dry-run --json
--dry-run --json imprime um relatório legível por máquina:ok: se a simulação passouoperations: número de atribuições avaliadaschecks: se as verificações de esquema/resolubilidade foram executadaschecks.resolvabilityComplete: se as verificações de resolubilidade foram executadas até a conclusão (false quando refs exec são ignoradas)refsChecked: número de refs realmente resolvidas durante a simulaçãoskippedExecRefs: número de refs exec ignoradas porque--allow-execnão foi definidoerrors: falhas estruturadas de caminho ausente, esquema ou resolubilidade quandook=false
Formato da saída JSON
- Exemplo de sucesso
- Exemplo de falha
Se a simulação falhar
Se a simulação falhar
config schema validation failed: o formato da sua configuração pós-alteração é inválido; corrija o caminho/valor ou o formato do objeto de provedor/ref.Config policy validation failed: unsupported SecretRef usage: mova essa credencial de volta para entrada em texto simples/string e mantenha SecretRefs somente em superfícies compatíveis.SecretRef assignment(s) could not be resolved: o provedor/ref referenciado atualmente não pode resolver (variável de ambiente ausente, ponteiro de arquivo inválido, falha do provedor exec ou incompatibilidade entre provedor/origem).Dry run note: skipped <n> exec SecretRef resolvability check(s): a simulação ignorou refs exec; execute novamente com--allow-execse você precisar validar a resolubilidade exec.- Para o modo em lote, corrija as entradas com falha e execute
--dry-runnovamente antes de gravar.
Segurança de gravação
openclaw config set e outros gravadores de configuração pertencentes ao OpenClaw validam a configuração completa pós-alteração antes de gravá-la no disco. Se o novo payload falhar na validação de esquema ou parecer uma substituição destrutiva, a configuração ativa fica intacta e o payload rejeitado é salvo ao lado dela como openclaw.json.rejected.*.
Prefira gravações pela CLI para pequenas edições:
openclaw.json. Execute openclaw doctor --fix para reparar configuração prefixada/substituída ou restaurar a última cópia conhecida como válida. Consulte Solução de problemas do Gateway.
A recuperação de arquivo inteiro é reservada ao reparo pelo doctor. Alterações no esquema do Plugin ou divergência de minHostVersion permanecem explícitas em vez de reverter configurações de usuário não relacionadas, como modelos, provedores, perfis de autenticação, canais, exposição do Gateway, ferramentas, memória, navegador ou configuração de cron.
Subcomandos
config file: imprime o caminho do arquivo de configuração ativo (resolvido a partir deOPENCLAW_CONFIG_PATHou do local padrão). O caminho deve indicar um arquivo regular, não um symlink.
Validar
Valide a configuração atual em relação ao esquema ativo sem iniciar o Gateway.openclaw config validate estiver passando, você poderá usar a TUI local para que um agente incorporado compare a configuração ativa com a documentação enquanto você valida cada alteração no mesmo terminal:
Se a validação já estiver falhando, comece com
openclaw configure ou openclaw doctor --fix. openclaw chat não contorna a proteção contra configuração inválida.Comparar com a documentação
Peça ao agente para comparar sua configuração atual com a página relevante da documentação e sugerir a menor correção.
Aplicar edições direcionadas
Aplique edições direcionadas com
openclaw config set ou openclaw configure.