CLI commands

Yapılandırma

openclaw.json için etkileşimsiz yardımcılar: yol üzerinden bir değeri getirin/ayarlayın/yamalayın/kaldırın, şemayı doğrulayın veya etkin dosya yolunu yazdırın. Alt komut olmadan openclaw config çalıştırıldığında, openclaw configure ile aynı yönlendirmeli sihirbaz açılır.

Kök seçenekleri

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tc2VjdGlvbiA8c2VjdGlvbg " type="string"> Alt komut olmadan openclaw config çalıştırdığınızda kullanılabilen, yinelenebilir yönlendirmeli kurulum bölümü filtresi.

Yönlendirmeli bölümler: workspace, model, web, gateway, daemon, channels, plugins, skills, health.

Örnekler

bash
openclaw config fileopenclaw config --section modelopenclaw config --section gateway --section daemonopenclaw config schemaopenclaw config get browser.executablePathopenclaw config set browser.executablePath "/usr/bin/google-chrome"openclaw config set browser.profiles.work.executablePath "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"openclaw config set agents.defaults.heartbeat.every "2h"openclaw config set 'agents.list[0].tools.exec.node' "node-id-or-name"openclaw config set agents.defaults.models '{"openai/gpt-5.4":{}}' --strict-json --mergeopenclaw config set channels.discord.token --ref-provider default --ref-source env --ref-id DISCORD_BOT_TOKENopenclaw config set secrets.providers.vaultfile --provider-source file --provider-path /etc/openclaw/secrets.json --provider-mode jsonopenclaw config patch --file ./openclaw.patch.json5 --dry-runopenclaw config unset plugins.entries.brave.config.webSearch.apiKeyopenclaw config set channels.discord.token --ref-provider default --ref-source env --ref-id DISCORD_BOT_TOKEN --dry-runopenclaw config validateopenclaw config validate --json

Yollar

Nokta veya köşeli ayraç gösterimi. zsh'nin [0] ifadesini glob deseni olarak genişletmemesi için kabuk örneklerindeki köşeli ayraçlı yolları tırnak içine alın:

bash
openclaw config get agents.defaults.workspaceopenclaw config get 'agents.list[0].id'openclaw config get agents.listopenclaw config set 'agents.list[1].tools.exec.node' "node-id-or-name"

config get

Gizli bilgileri çıkarılmış yapılandırma anlık görüntüsünden bir değer okur (gizli bilgiler hiçbir zaman yazdırılmaz). --json, ham değeri JSON olarak yazdırır; aksi takdirde dizeler/sayılar/boole değerleri yalın, nesneler/diziler ise biçimlendirilmiş JSON olarak yazdırılır.

bash
openclaw config get browser.executablePathopenclaw config get agents.defaults.model --json

config file

OPENCLAW_CONFIG_PATH veya varsayılan konumdan çözümlenen etkin yapılandırma dosyasının yolunu yazdırır. Yol, sembolik bağlantıyı değil normal bir dosyayı belirtir; bkz. Yazma güvenliği.

config schema

openclaw.json için oluşturulan JSON şemasını standart çıktıya yazdırır.

İçerdikleri
  • Geçerli kök yapılandırma şeması ve düzenleyici araçları için kök düzeyinde bir $schema dize alanı.
  • Control UI tarafından kullanılan title / description alan dokümantasyonu meta verileri.
  • Eşleşen alan dokümantasyonu mevcut olduğunda iç içe nesne, joker karakter (*) ve dizi öğesi ([]) düğümleri aynı title / description meta verilerini devralır.
  • anyOf / oneOf / allOf dalları da aynı dokümantasyon meta verilerini devralır.
  • Çalışma zamanı manifestleri yüklenebildiğinde azami çabayla elde edilen canlı Plugin + kanal şeması meta verileri.
  • Geçerli yapılandırma geçersiz olsa bile temiz bir yedek şema.
İlgili çalışma zamanı RPC'si

config.schema.lookup, yüzeysel bir şema düğümü (title, description, type, enum, const, yaygın sınırlar), eşleşen kullanıcı arayüzü ipucu meta verileri ve doğrudan alt öğe özetleriyle birlikte normalleştirilmiş tek bir yapılandırma yolu döndürür. Control UI veya özel istemcilerde yol kapsamlı ayrıntıya inmek için bunu kullanın.

bash
openclaw config schemaopenclaw config schema > openclaw.schema.json

config validate

Gateway'i başlatmadan geçerli yapılandırmayı etkin şemaya göre doğrular.

bash
openclaw config validateopenclaw config validate --json

Değerler

Değerler mümkün olduğunda JSON5 olarak ayrıştırılır; aksi takdirde ham dizeler olarak değerlendirilir. Dizeye geri dönüş olmadan standart JSON gerektirmek için --strict-json kullanın (yorumlar, sondaki virgüller veya tırnaksız anahtarlar gibi yalnızca JSON5'e özgü sözdizimleri bu durumda reddedilir). --json, config set üzerinde --strict-json için eski bir takma addır.

bash
openclaw config set agents.defaults.heartbeat.every "0m"openclaw config set gateway.port 19001 --strict-jsonopenclaw config set channels.whatsapp.groups '["*"]' --strict-json

config get <path> --json, terminal için biçimlendirilmiş metin yerine ham değeri JSON olarak yazdırır.

Bu eşlemelere girdiler eklerken --merge kullanın:

bash
openclaw config set agents.defaults.models '{"openai/gpt-5.4":{}}' --strict-json --mergeopenclaw config set models.providers.ollama.models '[{"id":"llama3.2","name":"Llama 3.2"}]' --strict-json --merge

--replace seçeneğini yalnızca sağlanan değerin bilinçli olarak hedef değerin tamamı olması gerektiğinde kullanın.

config set kipleri

Değer kipi

bash
openclaw config set <path> <value>

SecretRef oluşturucu kipi

bash
openclaw config set channels.discord.token \  --ref-provider default \  --ref-source env \  --ref-id DISCORD_BOT_TOKEN

Sağlayıcı oluşturucu kipi

Yalnızca secrets.providers.<alias> yollarını hedefler:

bash
openclaw config set secrets.providers.vault \  --provider-source exec \  --provider-command /usr/local/bin/openclaw-vault \  --provider-arg read \  --provider-arg openai/api-key \  --provider-timeout-ms 5000

Toplu kip

bash
openclaw config set --batch-json '[  {    "path": "secrets.providers.default",    "provider": { "source": "env" }  },  {    "path": "channels.discord.token",    "ref": { "source": "env", "provider": "default", "id": "DISCORD_BOT_TOKEN" }  }]'
bash
openclaw config set --batch-file ./config-set.batch.json --dry-run

Toplu ayrıştırma, doğruluk kaynağı olarak her zaman toplu yükü (--batch-json/--batch-file) kullanır; --strict-json / --json, toplu ayrıştırma davranışını değiştirmez.

JSON yol/değer kipi, SecretRef'ler ve sağlayıcılar için doğrudan da çalışır:

bash
openclaw config set channels.discord.token \  '{"source":"env","provider":"default","id":"DISCORD_BOT_TOKEN"}' \  --strict-json openclaw config set secrets.providers.vaultfile \  '{"source":"file","path":"/etc/openclaw/secrets.json","mode":"json"}' \  --strict-json

Sağlayıcı oluşturucu bayrakları

Sağlayıcı oluşturucu hedefleri yol olarak secrets.providers.<alias> kullanmalıdır.

Ortak bayraklar
  • --provider-source <env|file|exec>
  • --provider-timeout-ms <ms> (file, exec)
Ortam sağlayıcısı (--provider-source env)
  • --provider-allowlist &lt;ENV_VAR&gt; (yinelenebilir)
Dosya sağlayıcısı (--provider-source file)
  • --provider-path <path> (zorunlu)
  • --provider-mode <singleValue|json>
  • --provider-max-bytes <bytes>
  • --provider-allow-insecure-path
Çalıştırma sağlayıcısı (--provider-source exec)
  • --provider-command <path> (zorunlu)
  • --provider-arg <arg> (yinelenebilir)
  • --provider-no-output-timeout-ms <ms>
  • --provider-max-output-bytes <bytes>
  • --provider-json-only
  • --provider-env &lt;KEY=VALUE&gt; (yinelenebilir)
  • --provider-pass-env &lt;ENV_VAR&gt; (yinelenebilir)
  • --provider-trusted-dir <path> (yinelenebilir)
  • --provider-allow-insecure-path
  • --provider-allow-symlink-command

Güçlendirilmiş çalıştırma sağlayıcısı örneği:

bash
openclaw config set secrets.providers.vault \  --provider-source exec \  --provider-command /usr/local/bin/openclaw-vault \  --provider-arg read \  --provider-arg openai/api-key \  --provider-json-only \  --provider-pass-env VAULT_TOKEN \  --provider-trusted-dir /usr/local/bin \  --provider-timeout-ms 5000

config patch

Yol tabanlı çok sayıda config set komutu çalıştırmak yerine yapılandırma biçimli bir JSON5 yamasını yapıştırın veya boru hattıyla aktarın. Nesneler özyinelemeli olarak birleştirilir; diziler ve skaler değerler hedefi değiştirir; null, hedef yolu siler.

bash
openclaw config patch --file ./openclaw.patch.json5 --dry-runopenclaw config patch --file ./openclaw.patch.json5

Uzak kurulum betikleri için bir yamayı standart girdi üzerinden aktarın:

bash
ssh user@gateway-host 'openclaw config patch --stdin --dry-run' < ./openclaw.patch.json5ssh user@gateway-host 'openclaw config patch --stdin' < ./openclaw.patch.json5

Örnek yama:

json5
{  channels: {    slack: {      enabled: true,      mode: "socket",      botToken: { source: "env", provider: "default", id: "SLACK_BOT_TOKEN" },      appToken: { source: "env", provider: "default", id: "SLACK_APP_TOKEN" },      groupPolicy: "open",      requireMention: false,    },    discord: {      enabled: true,      token: { source: "env", provider: "default", id: "DISCORD_BOT_TOKEN" },      dmPolicy: "disabled",      dm: { enabled: false },      groupPolicy: "allowlist",    },  },  agents: {    defaults: {      model: { primary: "openai/gpt-5.6-sol" },      models: {        "openai/gpt-5.6-sol": { params: { fastMode: true } },      },    },  },}

Bir nesne veya dizinin özyinelemeli olarak yamalanmak yerine tam olarak sağlanan değer olması gerektiğinde --replace-path <path> kullanın:

bash
openclaw config patch --file ./discord.patch.json5 --replace-path 'channels.discord.guilds["123"].channels'

--dry-run, yazmadan şema ve SecretRef çözümlenebilirliği denetimlerini çalıştırır. Çalıştırma tabanlı SecretRef'ler, deneme çalıştırması sırasında varsayılan olarak atlanır; deneme çalıştırmasının sağlayıcı komutlarını çalıştırmasını bilinçli olarak istediğinizde --allow-exec ekleyin.

Deneme çalıştırması

--dry-run, değişiklikleri openclaw.json dosyasına yazmadan doğrular. config set, config patch ve config unset üzerinde kullanılabilir.

bash
openclaw config set channels.discord.token \  --ref-provider default \  --ref-source env \  --ref-id DISCORD_BOT_TOKEN \  --dry-run \  --json openclaw config set channels.discord.token \  --ref-provider vault \  --ref-source exec \  --ref-id discord/token \  --dry-run \  --allow-exec
Deneme çalıştırması davranışı
  • Oluşturucu modu: değiştirilen referanslar/sağlayıcılar için SecretRef çözümlenebilirlik denetimlerini çalıştırır.
  • JSON modu (--strict-json, --json veya toplu iş modu): şema doğrulamasını ve SecretRef çözümlenebilirlik denetimlerini çalıştırır.
  • İlke doğrulaması, değişiklik sonrası yapılandırmanın tamamına uygulanır; bu nedenle üst nesne yazımları (örneğin hooks değerini bir nesne olarak ayarlamak) desteklenmeyen yüzey doğrulamasını atlayamaz.
  • Komut yan etkilerini önlemek için Exec SecretRef denetimleri varsayılan olarak atlanır; etkinleştirmek için --allow-exec seçeneğini iletin (bu, sağlayıcı komutlarını çalıştırabilir). --allow-exec yalnızca deneme çalıştırmasında kullanılabilir ve --dry-run olmadan hata verir.
--dry-run --json alanları
  • ok: deneme çalıştırmasının başarılı olup olmadığı
  • operations: değerlendirilen atama sayısı
  • checks: şema/çözümlenebilirlik denetimlerinin çalışıp çalışmadığı
  • checks.resolvabilityComplete: çözümlenebilirlik denetimlerinin tamamlanıp tamamlanmadığı (exec referansları atlandığında false)
  • refsChecked: deneme çalıştırması sırasında gerçekten çözümlenen referans sayısı
  • skippedExecRefs: --allow-exec ayarlanmadığı için atlanan exec referansı sayısı
  • errors: ok=false olduğunda yapılandırılmış eksik yol, şema veya çözümlenebilirlik hataları

JSON çıktı biçimi

json5
{  ok: boolean,  operations: number,  configPath: string,  inputModes: ["value" | "json" | "builder" | "unset", ...],  checks: {    schema: boolean,    resolvability: boolean,    resolvabilityComplete: boolean,  },  refsChecked: number,  skippedExecRefs: number,  errors?: [    {      kind: "missing-path" | "schema" | "resolvability",      message: string,      ref?: string, // çözümlenebilirlik hatalarında bulunur    },  ],}

Başarı örneği

json
{  "ok": true,  "operations": 1,  "configPath": "~/.openclaw/openclaw.json",  "inputModes": ["builder"],  "checks": {    "schema": false,    "resolvability": true,    "resolvabilityComplete": true  },  "refsChecked": 1,  "skippedExecRefs": 0}

Hata örneği

json
{  "ok": false,  "operations": 1,  "configPath": "~/.openclaw/openclaw.json",  "inputModes": ["builder"],  "checks": {    "schema": false,    "resolvability": true,    "resolvabilityComplete": true  },  "refsChecked": 1,  "skippedExecRefs": 0,  "errors": [    {      "kind": "resolvability",      "message": "Hata: \"MISSING_TEST_SECRET\" ortam değişkeni ayarlanmamış.",      "ref": "env:default:MISSING_TEST_SECRET"    }  ]}
Deneme çalıştırması başarısız olursa
  • config schema validation failed: değişiklik sonrası yapılandırmanızın biçimi geçersizdir; yolu/değeri veya sağlayıcı/referans nesnesinin biçimini düzeltin.
  • Config policy validation failed: unsupported SecretRef usage: ilgili kimlik bilgisini yeniden düz metin/dize girdisine taşıyın; SecretRef'leri yalnızca desteklenen yüzeylerde tutun.
  • SecretRef assignment(s) could not be resolved: başvurulan sağlayıcı/referans şu anda çözümlenemiyor (eksik ortam değişkeni, geçersiz dosya işaretçisi, exec sağlayıcısı hatası veya sağlayıcı/kaynak uyuşmazlığı).
  • Dry run note: skipped <n> exec SecretRef resolvability check(s): exec çözümlenebilirlik doğrulamasına ihtiyacınız varsa --allow-exec ile yeniden çalıştırın.
  • Toplu iş modunda, başarısız girdileri düzeltin ve yazma işleminden önce --dry-run seçeneğini yeniden çalıştırın.

Değişiklikleri uygulama

Her başarılı config set / config patch / config unset işleminden sonra CLI, Gateway'in yeniden başlatılması gerekip gerekmediğini bilmeniz için üç ipucundan birini yazdırır:

İpucu Anlamı
Restart the gateway to apply. Değiştirilen yol için tam yeniden başlatma gerekir.
Change will apply without restarting the gateway. Çalışırken yeniden yükleme bunu otomatik olarak alır.
No gateway restart needed. Çalışma zamanıyla ilgili hiçbir şey değişmemiştir.

CLI, her Plugin'in yeniden yükleme meta verilerinin yüklendiğini doğrulayamadığından, plugins.entries alanına (veya herhangi bir alt yoluna) yapılan yazma işlemleri her zaman yeniden başlatma gerektirir.

Yazma güvenliği

openclaw config set ve OpenClaw'a ait diğer yapılandırma yazıcıları, yapılandırmayı diske kaydetmeden önce değişiklik sonrası yapılandırmanın tamamını doğrular. Yeni yük şema doğrulamasını geçemezse veya yıkıcı bir üzerine yazma gibi görünürse etkin yapılandırmaya dokunulmaz ve reddedilen yük yanına openclaw.json.rejected.* olarak kaydedilir.

Küçük düzenlemelerde CLI ile yazmayı tercih edin:

bash
openclaw config set gateway.reload.mode hybrid --dry-runopenclaw config set gateway.reload.mode hybridopenclaw config validate

Bir yazma işlemi reddedilirse kaydedilen yükü inceleyin ve yapılandırmanın tamamını düzeltin:

bash
CONFIG="$(openclaw config file)"ls -lt "$CONFIG".rejected.* 2>/dev/null | headopenclaw config validate

Düzenleyiciyle doğrudan yazmaya hâlâ izin verilir ancak çalışan Gateway, bunlar doğrulanana kadar güvenilmeyen değişiklikler olarak değerlendirir. Geçersiz doğrudan düzenlemeler başlatmanın başarısız olmasına neden olur veya çalışırken yeniden yükleme tarafından atlanır; Gateway, openclaw.json dosyasını yeniden yazmaz. Önek eklenmiş/üzerine yazılmış yapılandırmayı onarmak veya bilinen son sağlam kopyayı geri yüklemek için openclaw doctor --fix komutunu çalıştırın. Bkz. Gateway sorunlarını giderme.

Dosyanın tamamını kurtarma yalnızca doctor onarımına ayrılmıştır. Plugin şeması değişiklikleri veya minHostVersion uyumsuzluğu; modeller, sağlayıcılar, kimlik doğrulama profilleri, kanallar, Gateway erişimi, araçlar, bellek, tarayıcı veya Cron yapılandırması gibi ilgisiz kullanıcı ayarlarını geri almak yerine açıkça hata vermeye devam eder.

Onarım döngüsü

openclaw config validate başarılı olduktan sonra, her değişikliği aynı terminalden doğrularken gömülü bir ajanın etkin yapılandırmayı belgelerle karşılaştırmasını sağlamak için yerel TUI'yi kullanın:

bash
openclaw chat

TUI içinde, baştaki ! işareti değişmez bir yerel kabuk komutunu çalıştırır (oturum başına bir kez gösterilen onay isteminden sonra):

text
!openclaw config file!openclaw docs gateway auth token secretref!openclaw config validate!openclaw doctor
  • Belgelerle karşılaştırın

    Ajandan mevcut yapılandırmanızı ilgili belge sayfasıyla karşılaştırmasını ve en küçük düzeltmeyi önermesini isteyin.

  • Hedefli düzenlemeleri uygulayın

    openclaw config set veya openclaw configure ile hedefli düzenlemeler uygulayın.

  • Yeniden doğrulayın

    Her değişiklikten sonra openclaw config validate komutunu yeniden çalıştırın.

  • Çalışma zamanı sorunları için doctor kullanın

    Doğrulama başarılı olduğu hâlde çalışma zamanı hâlâ sağlıksızsa geçiş ve onarım yardımı için openclaw doctor veya openclaw doctor --fix komutunu çalıştırın.

  • İlgili konular

    Was this useful?
    On this page

    On this page