CLI commands
Gateway
Gateway, OpenClaw'ın WebSocket sunucusudur (kanallar, Node'lar, oturumlar, hook'lar). Aşağıdaki tüm alt komutlar openclaw gateway ... altında yer alır.
Yerel mDNS + geniş alan DNS-SD kurulumu.
OpenClaw'ın Gateway'leri nasıl duyurduğu ve bulduğu.
Üst düzey Gateway yapılandırma anahtarları.
Gateway'i çalıştırma
openclaw gatewayopenclaw gateway run # eşdeğer, açık biçimBaşlangıç davranışı
~/.openclaw/openclaw.jsoniçindegateway.mode=localayarlanmadıkça başlatmayı reddeder. Geçici/geliştirme çalıştırmaları için--allow-unconfiguredkullanın; bu seçenek, yapılandırmayı yazmadan veya onarmadan korumayı atlar.- Başlangıçta onarılabilir geçersiz bir yapılandırma bulunursa etkileşimli terminal,
openclaw doctor --fixkomutunu çalıştırmayı önerir ve onaydan sonra başlatmayı bir kez yeniden dener. Etkileşimsiz çalıştırmalar hiçbir zaman otomatik onarım yapmaz; bunun yerine komutu yazdırır. Onarılan yapılandırma hâlâ geçersizse başlatma durdurulmuş olarak kalır. openclaw onboard --mode localveopenclaw setup,gateway.mode=localdeğerini yazar. Yapılandırma dosyası mevcut ancakgateway.modeeksikse bu durum hasarlı/üzerine yazılmış yapılandırma olarak değerlendirilir ve Gateway sizin içinlocaldeğerini tahmin etmeyi reddeder — ilk kurulumu yeniden çalıştırın, anahtarı elle ayarlayın veya--allow-unconfiguredgeçirin.- Kimlik doğrulama olmadan loopback dışına bağlanma engellenir.
--binddeğerlerilan,tailnetvecustomgünümüzde yalnızca IPv4 yolları üzerinden çözümlenir; yalnızca IPv6 kullanan kendi sunucunuzu getirin kurulumlarında Gateway'in önünde bir IPv4 sidecar'ı veya proxy gerekir.SIGUSR1, yetkilendirildiğinde süreç içi yeniden başlatmayı tetikler.commands.restart(varsayılan: etkin), dışarıdan gönderilenSIGUSR1işlemlerini denetler; elle işletim sistemi sinyaliyle yeniden başlatmaları engellemek için bunufalseolarak ayarlayın. Agent'a yönelikgatewayaracı salt okunurdur; agent'lar yeniden başlatmayı insan onaylıopenclawyetkilendirme aracı üzerinden talep eder.SIGINT/SIGTERMsüreci durdurur ancak özel terminal durumunu geri yüklemez — CLI'yi bir TUI veya ham mod girişiyle sarmalıyorsanız çıkıştan önce terminali kendiniz geri yükleyin.
Seçenekler
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA
" type="number">
WebSocket bağlantı noktası (yapılandırma/ortamdan varsayılan; genellikle 18789).
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tYmluZCA8bW9kZQ
" type="string">
Bağlama modu: loopback (varsayılan), lan, tailnet, auto, custom.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdG9rZW4gPHRva2Vu
" type="string">
connect.params.auth.token için paylaşılan token. Ayarlandığında varsayılan olarak OPENCLAW_GATEWAY_TOKEN kullanılır.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tYXV0aCA8bW9kZQ
" type="string">
Kimlik doğrulama modu: none, token, password, trusted-proxy.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcGFzc3dvcmQgPHBhc3N3b3Jk
" type="string">
--auth password için parola.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdGFpbHNjYWxlIDxtb2Rl
" type="string">
Tailscale erişimi: off, serve, funnel.
--tailscale-reset-on-exitbooleanKapatma sırasında Tailscale serve/funnel yapılandırmasını sıfırlayın.
--allow-unconfiguredbooleangateway.mode=local zorunluluğunu uygulamadan başlatın. Yalnızca geçici/geliştirme önyüklemesi içindir; yapılandırmayı kalıcılaştırmaz veya onarmaz.
--devbooleanEksikse bir geliştirme yapılandırması + çalışma alanı oluşturun (BOOTSTRAP.md atlanır).
--dev-ambient-channelsbooleanBir geliştirme Gateway'inin ortam değişkenlerinden kanalları otomatik yapılandırmasına izin verin. --dev gerektirir.
--resetbooleanGeliştirme yapılandırmasını, kimlik bilgilerini, oturumları ve çalışma alanını sıfırlayın. --dev gerektirir.
--forcebooleanBaşlatmadan önce hedef bağlantı noktasındaki mevcut tüm dinleyicileri sonlandırın. Etkileşimsiz bir kabukta bu seçenek, doğrulanmış bir Gateway dinleyicisini sonlandırmayı reddeder; bunun yerine --dev veya boş bir bağlantı noktasına sahip yalıtılmış bir --profile kullanın.
--verbosebooleanstdout/stderr'e ayrıntılı günlük kaydı.
--cli-backend-logsbooleanKonsolda yalnızca CLI arka uç günlüklerini gösterin (stdout/stderr'i de etkinleştirir).
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0td3MtbG9nIDxzdHlsZQ
" type="string" default="auto">
WebSocket günlük stili: auto, full, compact.
--compactboolean--ws-log compact için takma ad.
--raw-streambooleanHam model akışı olaylarını JSONL'ye kaydedin.
--claude-cli-logs, --cli-backend-logs için kullanımdan kaldırılmış bir takma addır.
--bind custom için gateway.customBindHost değerini bir IPv4 adresine ayarlayın. 127.0.0.1 veya 0.0.0.0 dışındaki tüm adresler, aynı ana makinedeki istemciler için aynı bağlantı noktasında 127.0.0.1 değerini de gerektirir; dinleyicilerden herhangi biri bağlanamazsa başlangıç başarısız olur. Joker karakterli 0.0.0.0, ayrıca zorunlu bir takma ad eklemez. Yalnızca IPv6 kullanan kendi sunucunuzu getirin kurulumlarında Gateway'in önünde bir IPv4 sidecar'ı veya proxy gerekir.
Gateway'i yeniden başlatma
openclaw gateway restartopenclaw gateway restart --safeopenclaw gateway restart --safe --skip-deferralopenclaw gateway restart --forceopenclaw gateway restart --wait 30s--safe, çalışan Gateway'den etkin işler için ön kontrol yapmasını ve bu işler tamamlandıktan sonra birleştirilmiş tek bir yeniden başlatma planlamasını ister. Bekleme süresi 5 dakika ile sınırlıdır; süre dolduğunda yeniden başlatma zorlanır. --safe, --force veya --wait ile birlikte kullanılamaz.
--skip-deferral, güvenli yeniden başlatmada etkin iş erteleme denetimini atlar; böylece bildirilen engelleyiciler olsa bile Gateway hemen yeniden başlatılır. --safe gerektirir — erteleme kontrolden çıkmış bir görevde takılı kaldığında kullanın.
--wait <duration>, normal (güvenli olmayan) yeniden başlatma için tamamlanmayı bekleme süresini geçersiz kılar. Birimsiz milisaniyeleri veya ms, s, m, h, d birim soneklerini kabul eder (ör. 30s, 5m, 1h30m); --wait 0 süresiz bekler. --force veya --safe ile uyumlu değildir.
--force, etkin işlerin tamamlanmasını beklemeyi atlar ve hemen yeniden başlatır. Normal restart (bayraksız), mevcut hizmet yöneticisi yeniden başlatma davranışını korur.
Harici gözetmenler
OPENCLAW_SUPERVISOR_MODE=external değerini yalnızca Gateway yaşam döngüsünün başka bir süreç yöneticisi tarafından yönetildiği durumlarda ayarlayın. Bu modda:
openclaw gateway restart, launchd, systemd veya Task Scheduler yerine doğrulanmış çalışan Gateway'i hedeflerken mevcut güvenli, zorlamalı ve sınırlı bekleme davranışını korur.- Yerel hizmet yükleme, başlatma, durdurma ve kaldırma işlemleri reddedilir ve harici gözetmenin kullanılması yönünde rehberlik sağlanır.
- Gözetmenin Gateway'i durdurabilmesi, çalışma zamanını değiştirip tamamlayabilmesi ve güvenli şekilde yeniden başlatabilmesi için OpenClaw'ın kendini güncellemesi reddedilir.
- Yeni süreçle yeniden başlatma, temiz çıkıştan önce sınırlı bir SQLite devri yazar. Kalıcılaştırma başarısız olursa Gateway, tüketilebilir bir devir olmadan çıkmak yerine süreç içi yeniden başlatmaya geri döner.
OPENCLAW_SERVICE_REPAIR_POLICY=external, ayrı bir Doctor onarım politikası olarak kalır. Çalışma zamanı sahipliğini bildirmez; her iki davranışa da ihtiyaç duyan gözetmenler iki değişkeni de ayarlamalıdır.
Harici gözetmenler, gizli makine sözleşmesi üzerinden yeniden başlatma devirlerini uzlaştırabilir ve tüketebilir:
openclaw gateway restart-handoff capabilities --jsonopenclaw gateway restart-handoff consume --expected-pid <pid> --json1 protokol sürümü, consume işlemini destekler. Tüketim, beklenen PID'yi ve sınırlı devir alanlarını tek bir anlık SQLite işlemi içinde doğrular. Kabul edilen devir, başarı döndürülmeden önce silinir; böylece eşzamanlı veya yeniden oynatılan tüketicilerin ikisi birden bunu kabul edemez. PID uyuşmazlığı eşleşen sahip için korunur; eksik, süresi dolmuş ve geçersiz satırlar yeniden başlatmayı yetkilendirmez.
Geçerli makine istekleri, yeniden başlatma dışı sonuçlar dâhil olmak üzere 0 çıkış koduyla JSON döndürür. Geçersiz bağımsız değişkenler, 2 çıkış koduyla reason: "invalid-expected-pid" döndürür; durum deposu hataları, 1 çıkış koduyla reason: "store-unavailable" döndürür. Gözetmenler, desteği bir OpenClaw sürüm dizesinden çıkarmak veya özel SQLite şemasını doğrudan okumak yerine kullanacakları tam çalışma zamanı ya da başlatıcı üzerinde capabilities yoklaması yapmalıdır.
Gateway profilleme
OPENCLAW_GATEWAY_STARTUP_TRACE=1, başlangıç sırasında aşama zamanlamalarını günlüğe kaydeder; bunlara aşama başınaeventLoopMaxgecikmesi ve Plugin arama tablosu zamanlamaları (yüklü dizini, manifest kayıt defteri, başlangıç planlaması, sahip eşlemesi çalışması) dâhildir.OPENCLAW_GATEWAY_RESTART_TRACE=1, yeniden başlatma kapsamlırestart trace:satırlarını günlüğe kaydeder: sinyal işleme, etkin işlerin tamamlanmasını bekleme, kapatma aşamaları, sonraki başlangıç, hazır olma zamanlaması ve bellek metrikleri.OPENCLAW_DIAGNOSTICS=timelineileOPENCLAW_DIAGNOSTICS_TIMELINE_PATH=<path>, harici QA düzenekleri için en iyi çabayla bir JSONL başlangıç tanılama zaman çizelgesi yazar (yapılandırmadakidiagnostics.flags: ["timeline"]ile eşdeğerdir; yol yine yalnızca ortam değişkeniyle ayarlanabilir). Olay döngüsü örneklerini eklemek içinOPENCLAW_DIAGNOSTICS_EVENT_LOOP=1ekleyin.pnpm build, ardındanpnpm test:startup:gateway -- --runs 5 --warmup 1, Gateway başlangıcını derlenmiş CLI girişine göre karşılaştırmalı olarak ölçer: ilk süreç çıktısı,/healthz,/readyz, başlangıç izleme zamanlamaları, olay döngüsü gecikmesi ve Plugin arama tablosu zamanlaması.pnpm build, ardındanpnpm test:restart:gateway -- --case skipChannels --runs 1 --restarts 5, macOS veya Linux'ta süreç içi yeniden başlatmayı karşılaştırmalı olarak ölçer (Windows'ta desteklenmez; yeniden başlatmaSIGUSR1gerektirir).SIGUSR1kullanır, alt süreçte her iki izlemeyi etkinleştirir ve sonraki/healthz, sonraki/readyz, kesinti süresi, hazır olma zamanlaması, CPU, RSS ve yeniden başlatma izleme metriklerini kaydeder./healthzçalışırlık göstergesidir;/readyzkullanılabilirlik hazırlığıdır. İzleme satırlarını ve karşılaştırmalı ölçüm çıktısını, tek bir zaman aralığı veya örnekten çıkarılmış eksiksiz bir performans sonucu olarak değil, sahip ilişkilendirme sinyali olarak değerlendirin.
Çalışan bir Gateway'i sorgulama
Tüm sorgu komutları WebSocket RPC kullanır.
Çıktı modları
- Varsayılan: insanlar tarafından okunabilir (TTY'de renkli).
--json: makine tarafından okunabilir JSON (biçimlendirme/döndürücü yok).--no-color(veyaNO_COLOR=1): insan odaklı düzeni korurken ANSI'yi devre dışı bırakır.
Paylaşılan seçenekler
--url <url>: Gateway WebSocket URL'si.--token <token>: Gateway token'ı.--password <password>: Gateway parolası.--timeout <ms>: zaman aşımı/süre sınırı (varsayılan komuta göre değişir; aşağıdaki her komuta bakın).--expect-final: "nihai" yanıtı bekler (agent çağrıları).
gateway health
openclaw gateway health --url ws://127.0.0.1:18789openclaw gateway health --port 18789/healthz bir canlılık yoklamasıdır: sunucu HTTP'ye yanıt verebilir duruma gelir gelmez sonuç döndürür. /readyz daha katıdır ve başlangıç Plugin sidecar'ları, kanallar veya yapılandırılmış hook'lar hâlâ kararlı duruma geçerken kırmızı kalır. Yerel veya kimliği doğrulanmış ayrıntılı /readyz yanıtları bir eventLoop tanılama bloğu (gecikme, kullanım, CPU çekirdeği oranı, degraded bayrağı) içerir.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA
" type="number">
Bu porttaki yerel geri döngü Gateway'ini hedefler. Bu çağrı için OPENCLAW_GATEWAY_URL ve OPENCLAW_GATEWAY_PORT değerlerini geçersiz kılar.
gateway usage-cost
Oturum günlüklerinden kullanım maliyeti özetlerini getirir.
openclaw gateway usage-costopenclaw gateway usage-cost --days 7openclaw gateway usage-cost --agent work --jsonopenclaw gateway usage-cost --all-agentsopenclaw gateway usage-cost --json"--days"--agent--all-agentsbooleanYapılandırılmış tüm aracılar genelinde toplar. --agent ile birlikte kullanılamaz.
gateway stability
Çalışan bir Gateway'den yakın tarihli tanılama kararlılığı kaydedicisini getirir.
openclaw gateway stabilityopenclaw gateway stability --type payload.largeopenclaw gateway stability --bundle latestopenclaw gateway stability --bundle latest --exportopenclaw gateway stability --jsonOPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tbGltaXQgPGxpbWl0
" type="number" default="25">
Dahil edilecek en fazla yakın tarihli olay sayısı (en fazla 1000).
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdHlwZSA8dHlwZQ
" type="string">
Tanılama olayı türüne göre filtreler; ör. payload.large veya diagnostic.memory.pressure.
"--since-seq--bundle [path]stringÇalışan Gateway'i çağırmak yerine kalıcı bir kararlılık paketini okur. --bundle latest (veya tek başına --bundle) durum dizini altındaki en yeni paketi seçer; doğrudan bir paket JSON yolu da iletebilirsiniz.
--exportbooleanKararlılık ayrıntılarını yazdırmak yerine paylaşılabilir bir destek tanılama zip'i yazar.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tb3V0cHV0IDxwYXRo
" type="string">
--export için çıktı yolu.
Gizlilik ve paket davranışı
- Kayıtlar operasyonel meta verileri tutar: olay adları, sayılar, bayt boyutları, bellek ölçümleri, kuyruk/oturum durumu, onay kimlikleri, kanal/Plugin adları ve sansürlenmiş oturum özetleri. Sohbet metnini, Webhook gövdelerini, araç çıktılarını, ham istek/yanıt gövdelerini, token'ları, çerezleri, gizli değerleri, ana makine adlarını ve ham oturum kimliklerini hariç tutarlar. Kaydediciyi tamamen devre dışı bırakmak için
diagnostics.enabled: falseayarını kullanın. - Ölümcül Gateway çıkışları, kapatma zaman aşımları ve yeniden başlatma başlangıç hataları, kaydedicide olaylar bulunduğunda aynı tanılama anlık görüntüsünü
~/.openclaw/logs/stability/openclaw-stability-*.jsonkonumuna yazar. En yeni paketiopenclaw gateway stability --bundle latestile inceleyin;--limit,--typeve--since-seqpaket çıktısına da uygulanır.
gateway diagnostics export
Hata raporları için tasarlanmış yerel bir tanılama zip'i yazar. Gizlilik modeli ve paket içeriği için Tanılama Dışa Aktarımı bölümüne bakın.
openclaw gateway diagnostics exportopenclaw gateway diagnostics export --output openclaw-diagnostics.zipopenclaw gateway diagnostics export --json"--log-lines"--log-bytes"--url"--token"--password"--timeout--no-stability-bundlebooleanKalıcı kararlılık paketi aramasını atlar.
--jsonbooleanYazılan yolu, boyutu ve manifesti JSON olarak yazdırır.
Dışa aktarım şu öğeleri paketler: manifest.json (dosya envanteri), summary.md (Markdown özeti), diagnostics.json (üst düzey yapılandırma/günlükler/keşif/kararlılık/durum/sağlık özeti), config/sanitized.json, status/gateway-status.json, health/gateway-health.json, logs/openclaw-sanitized.jsonl ve bir paket mevcut olduğunda stability/latest.json.
Paylaşılmak üzere tasarlanmıştır. Hata ayıklama için yararlı operasyonel ayrıntıları — güvenli günlük alanları, alt sistem adları, durum kodları, süreler, yapılandırılmış modlar, portlar, Plugin/sağlayıcı kimlikleri, gizli olmayan özellik ayarları ve sansürlenmiş operasyonel günlük iletileri — korur; sohbet metnini, Webhook gövdelerini, araç çıktılarını, kimlik bilgilerini, çerezleri, hesap/ileti tanımlayıcılarını, istem/talimat metnini, ana makine adlarını ve gizli değerleri hariç tutar veya sansürler. Bir günlük iletisi kullanıcı/sohbet/araç yükü metnine benziyorsa (ör. "kullanıcı söyledi", "sohbet metni", "araç çıktısı", "Webhook gövdesi"), dışa aktarım yalnızca bir iletinin çıkarıldığı bilgisini ve bayt sayısını korur.
gateway status
Gateway hizmetini (launchd/systemd/schtasks) ve isteğe bağlı bağlantı/kimlik doğrulama yoklamasını gösterir.
openclaw gateway statusopenclaw gateway status --jsonopenclaw gateway status --require-rpc"--url"--token"--password"--timeout--no-probebooleanBağlantı yoklamasını atlar (yalnızca hizmet görünümü).
--deepbooleanSistem düzeyindeki hizmetleri de tarar.
--require-rpcbooleanBağlantı yoklamasını bir okuma yoklamasına yükseltir ve başarısız olursa sıfırdan farklı bir kodla çıkar. --no-probe ile birlikte kullanılamaz.
Durum semantiği
- Yerel CLI yapılandırması eksik veya geçersiz olduğunda bile tanılama için kullanılabilir kalır.
- Varsayılan çıktı; okuma/yazma/yönetici işlemlerini değil, hizmet durumunu, WebSocket bağlantısını ve el sıkışma sırasında görülebilen kimlik doğrulama yeteneğini doğrular.
- İlk cihaz kimlik doğrulamasında yoklamalar değişiklik yapmaz: mevcutsa önbelleğe alınmış cihaz token'ını yeniden kullanırlar ancak yalnızca durumu kontrol etmek için asla yeni bir CLI cihaz kimliği veya salt okunur eşleştirme kaydı oluşturmazlar.
- Mümkün olduğunda, yoklama kimlik doğrulaması için yapılandırılmış kimlik doğrulama SecretRef'lerini çözümler. Gerekli bir SecretRef çözümlenmemişse, yoklama bağlantısı/kimlik doğrulaması başarısız olduğunda
--json,rpc.authWarningdeğerini bildirir;--token/--passworddeğerlerini açıkça iletin veya gizli değer kaynağını düzeltin. Yoklama başarılı olduğunda çözümlenmemiş kimlik doğrulama uyarıları bastırılır. - Çalışan Gateway bildirdiğinde JSON çıktısı
gateway.versiondeğerini içerir; el sıkışma yoklaması sürüm meta verilerini sağlayamıyorsa--require-rpc,status.runtimeVersionRPC yüküne geri dönebilir. - Dinleyen bir hizmet yeterli olmadığında ve okuma kapsamlı RPC'nin de sağlıklı olması gerektiğinde betiklerde/otomasyonda
--require-rpckullanın. --deep, ek launchd/systemd/schtasks kurulumlarını tarar; Gateway benzeri birden fazla hizmet bulunduğunda insan tarafından okunabilir çıktı temizleme ipuçlarını yazdırır (genellikle makine başına bir Gateway çalıştırın) ve ilgili olduğunda yakın tarihli bir yönetici yeniden başlatma devrini bildirir.--deep, yapılandırma doğrulamasını Plugin'e duyarlı modda (pluginValidation: "full") da çalıştırır ve Plugin manifest uyarılarını (ör. eksik kanal yapılandırması meta verileri) gösterir. Varsayılangateway status, Plugin doğrulamasını atlayan hızlı salt okunur yolu korur.- İnsan tarafından okunabilir çıktı, profil veya durum dizini sapmasını tanılamaya yardımcı olmak için çözümlenmiş dosya günlük yolunun yanı sıra CLI ile hizmetin yapılandırma yollarını/geçerliliğini içerir.
- İnsan tarafından okunabilir çıktı, uygulanan sınır ve uyarlamalı türetimiyle birlikte
Gateway heap:değerini içerir. JSON çıktısı aynı raporuservice.gatewayHeapolarak sunar.
Linux systemd kimlik doğrulama sapması kontrolleri
- Hizmet kimlik doğrulama sapması kontrolleri, birimden hem
Environment=hem deEnvironmentFile=değerlerini okur (%h, tırnak içine alınmış yollar, birden fazla dosya ve isteğe bağlı-dosyaları dahil). gateway.auth.tokenSecretRef'lerini birleştirilmiş çalışma zamanı ortamını kullanarak çözümler (önce hizmet komutu ortamı, ardından işlem ortamı geri dönüşü).- Token sapması kontrolleri, token kimlik doğrulaması etkin olarak kullanılmadığında yapılandırma token'ının çözümlenmesini atlar (
gateway.auth.modeaçıkçapassword/none/trusted-proxyolduğunda veya parolanın öncelik kazanabildiği ve hiçbir token adayının öncelik kazanamadığı ayarlanmamış modda).
gateway probe
"Her şeyde hata ayıkla" komutu. Her zaman şunları yoklar:
- yapılandırılmış uzak Gateway'inizi (ayarlanmışsa) ve
- uzak hedef yapılandırılmış olsa bile localhost'u (geri döngü), uzak hedef yapılandırılmış olsa bile.
--url iletildiğinde bu açık hedef, her ikisinin önüne eklenir. İnsan tarafından okunabilir çıktı hedefleri URL (explicit), Remote (configured) / Remote (configured, inactive) ve Local loopback olarak etiketler.
openclaw gateway probeopenclaw gateway probe --jsonopenclaw gateway probe --port 18789OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA
" type="number">
Yerel geri döngü yoklama hedefi ve SSH tüneli uzak portu için bu portu kullanır. --url olmadan bu seçenek; yapılandırılmış Gateway ortam URL'si, ortam portu veya uzak hedefler yerine yalnızca yerel geri döngü hedefini seçer.
Yorumlama
Reachable: yes, en az bir hedefin WebSocket bağlantısını kabul ettiği anlamına gelir.Capability: read-only|write-capable|admin-capable|pairing-pending|connect-only, erişilebilirlikten ayrı olarak yoklamanın kimlik doğrulama hakkında neyi doğrulayabildiğini bildirir.Read probe: ok, okuma kapsamlı ayrıntı RPC çağrılarının (health/status/system-presence/config.get) da başarılı olduğu anlamına gelir.Read probe: limited - missing scope: operator.read, bağlantının başarılı olduğu ancak okuma kapsamlı RPC'nin sınırlı olduğu anlamına gelir. Tam başarısızlık olarak değil, düşürülmüş erişilebilirlik olarak bildirilir.Connect: oksonrasındakiRead probe: failed, WebSocket'in bağlandığı ancak takip eden okuma tanılamalarının zaman aşımına uğradığı veya başarısız olduğu anlamına gelir; bu da erişilemezlik değil, düşürülmüş durumdur.gateway statusgibi, yoklama da mevcut önbelleğe alınmış cihaz kimlik doğrulamasını yeniden kullanır ancak ilk cihaz kimliğini veya eşleştirme durumunu oluşturmaz.- Çıkış kodu yalnızca yoklanan hedeflerin hiçbirine erişilemediğinde sıfırdan farklıdır.
JSON çıktısı
Üst düzey:
ok: en az bir hedefe erişilebilir.degraded: en az bir hedef bağlantıyı kabul etti ancak tam ayrıntılı RPC tanılamasını tamamlamadı.capability: erişilebilir hedeflerde görülen en iyi yetenek (read_only,write_capable,admin_capable,pairing_pending,connected_no_operator_scopeveyaunknown).primaryTargetId: etkin kazanan olarak değerlendirilecek en iyi hedef; sırasıyla: açık URL, SSH tüneli, yapılandırılmış uzak hedef, yerel geri döngü.warnings[]:code,messageve isteğe bağlıtargetIdsiçeren, mümkün olan en iyi şekilde oluşturulmuş uyarı kayıtları.network: mevcut yapılandırmadan ve ana makine ağından türetilen yerel geri döngü/tailnet URL ipuçları.discovery.timeoutMs/discovery.count: bu yoklama geçişinde kullanılan gerçek keşif bütçesi/sonuç sayısı.
Hedef başına (targets[].connect): ok (erişilebilirlik + kısıtlı sınıflandırması), rpcOk (tam ayrıntılı RPC başarısı), scopeLimited (eksik operatör kapsamı nedeniyle ayrıntılı RPC başarısız oldu).
Hedef başına (targets[].auth): kullanılabilir olduğunda hello-ok cinsinden bildirilen role ve scopes ile gösterilen capability sınıflandırması.
Yaygın uyarı kodları
ssh_tunnel_failed: SSH tüneli kurulumu başarısız oldu; komut doğrudan yoklamalara geri döndü.multiple_gateways: farklı gateway kimliklerine erişilebildi veya OpenClaw erişilebilir hedeflerin aynı gateway olduğunu kanıtlayamadı. Aynı gateway'e yönelik bir SSH tüneli, proxy URL'si veya yapılandırılmış uzak URL bunu tetiklemez.auth_secretref_unresolved: yapılandırılmış bir kimlik doğrulama SecretRef'i, başarısız bir hedef için çözümlenemedi.probe_scope_limited: WebSocket bağlantısı başarılı oldu ancak okuma yoklaması eksikoperator.readnedeniyle kısıtlandı.local_tls_runtime_unavailable: yerel Gateway TLS etkin ancak OpenClaw yerel sertifika parmak izini yükleyemedi.
SSH üzerinden uzak bağlantı (Mac uygulamasıyla eş değer)
macOS uygulamasındaki "Remote over SSH" modu, yalnızca geri döngü üzerinden erişilebilen uzak bir gateway'i ws://127.0.0.1:<port> adresinde erişilebilir kılmak için yerel port yönlendirme kullanır.
CLI eş değeri:
openclaw gateway probe --ssh user@gateway-hostOPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tc3NoIDx0YXJnZXQ
" type="string">
user@host veya user@host:port (port varsayılan olarak 22).
--ssh-autobooleanÇözümlenen keşif uç noktasından (local. ve varsa yapılandırılmış geniş alan etki alanı) keşfedilen ilk gateway ana makinesini SSH hedefi olarak seçer. Yalnızca TXT içeren ipuçları yok sayılır.
Yapılandırma varsayılanları (isteğe bağlı): gateway.remote.sshTarget, gateway.remote.sshIdentity.
gateway call <method>
Düşük seviyeli RPC yardımcısı.
openclaw gateway call statusopenclaw gateway call logs.tail --params '{"limit": 200}'"--params"--url"--token"--password"--timeout--expect-finalbooleanTemel olarak son yükten önce ara olayları akışla ileten aracı tarzı RPC'ler içindir.
--jsonbooleanMakine tarafından okunabilir JSON çıktısı.
Gateway hizmetini yönetin
openclaw gateway installopenclaw gateway startopenclaw gateway stopopenclaw gateway restartopenclaw gateway uninstallBir sarmalayıcıyla yükleme
Yönetilen hizmetin başka bir yürütülebilir dosya üzerinden başlatılması gerektiğinde, örneğin bir gizli bilgi yöneticisi uyumluluk katmanı veya farklı kullanıcı olarak çalıştırma yardımcısı için --wrapper kullanın. Sarmalayıcı, normal Gateway bağımsız değişkenlerini alır ve sonunda bu bağımsız değişkenlerle openclaw veya Node'u exec ile çalıştırmaktan sorumludur.
cat > ~/.local/bin/openclaw-doppler <<'EOF'#!/usr/bin/env bashset -euo pipefailexec doppler run --project my-project --config production -- openclaw "$@"EOFchmod +x ~/.local/bin/openclaw-doppler openclaw gateway install --wrapper ~/.local/bin/openclaw-doppler --forceopenclaw gateway restartSarmalayıcıyı ortam üzerinden de ayarlayabilirsiniz. gateway install, yolun yürütülebilir bir dosya olduğunu doğrular, sarmalayıcıyı hizmet ProgramArguments içine yazar ve daha sonraki zorunlu yeniden yüklemeler, güncellemeler ve doctor onarımları için hizmet ortamında OPENCLAW_WRAPPER değerini kalıcı hâle getirir.
OPENCLAW_WRAPPER="$HOME/.local/bin/openclaw-doppler" openclaw gateway install --forceopenclaw doctorKalıcı bir sarmalayıcıyı kaldırmak için yeniden yükleme sırasında OPENCLAW_WRAPPER değerini temizleyin:
OPENCLAW_WRAPPER= openclaw gateway install --forceopenclaw gateway restartKomut seçenekleri
gateway status:--url,--token,--password,--timeout,--no-probe,--require-rpc,--deep,--jsongateway install:--port,--runtime <node>(varsayılan:node),--token,--wrapper <path>,--force,--jsongateway restart:--safe,--skip-deferral,--force,--wait <duration>,--jsongateway uninstall|start:--jsongateway stop:--disable,--force,--json
Yaşam döngüsü davranışı
gateway startbirden çok kez güvenle çalıştırılabilir: yönetilen hizmet zaten çalışıyorsa çalışan işlemi bildirir ve ona dokunmaz. Yüklenmiş ancak durdurulmuş bir hizmet önceden olduğu gibi başlatılır.- Yönetilen bir hizmeti yeniden başlatmak için
gateway restartkullanın. Yeniden başlatmanın yerinegateway stopvegateway startkomutlarını zincirlemeyin. - Etkileşimsiz bir kabukta
gateway stop,--forcegerektirir. Etkileşimli terminaller mevcut istemsiz davranışı korur. Otomasyon ve testler içingateway run --devveya boş bir porta sahip yalıtılmış bir--profiletercih edin. - macOS'ta
gateway stop, varsayılan olaraklaunchctl bootoutkullanır; bu, kalıcı bir devre dışı bırakma oluşturmadan LaunchAgent'ı mevcut önyükleme oturumundan kaldırır. Böylece KeepAlive otomatik kurtarması gelecekteki çökmeler için etkin kalır vegateway start, ellelaunchctl enableçalıştırmadan sorunsuz biçimde yeniden etkinleştirir. Gateway'in bir sonraki açıkgateway startişlemine kadar yeniden başlatılmaması için KeepAlive ve RunAtLoad'u kalıcı olarak bastırmak üzere--disableiletin; elle durdurmanın yeniden başlatmalardan sonra da korunması gerektiğinde bunu kullanın. - Gateway yaşam döngüsü değişiklikleri; CLI başlatma, durdurma ve yeniden başlatma işlemleri, güvenli yeniden başlatma istekleri, gözetmen yeniden başlatmaları ve ayrılmış devirler dâhil olmak üzere, mümkün olan en iyi şekilde anahtar-değer denetim kayıtlarını
<state-dir>/logs/gateway-restart.logdosyasına ekler. - Yaşam döngüsü komutları, betiklerde kullanım için
--jsonkabul eder.
Yönetilen Gateway yığın boyutlandırması
gateway install, yönetilen Gateway hizmeti için yalnızca yığına yönelik birNODE_OPTIONSdeğeri yazar. Node bir kapsayıcı veya hizmet sınırı bildirdiğinde kısıtlı belleğin %50'sini, aksi takdirde fiziksel belleğin %50'sini hedefler.- Nominal hedef aralık 2048–8192 MiB'dir ve buna ek olarak %75 yerel ek kapasite üst sınırı uygulanır. Küçük ana makinelerde bu ek kapasite üst sınırı, uygulanan sınırı nominal 2048 MiB alt sınırının altına düşürebilir.
- Yüklü hizmette zaten saklanan geçerli ve açık bir
--max-old-space-size, zorunlu yeniden yüklemeler ve doctor onarımları boyunca korunur. DiğerNODE_OPTIONSbayrakları yönetilen hizmete aktarılmaz. - Kabuktaki
NODE_OPTIONSortam değeri bu politikayı geçersiz kılmaz. Yüklü değeri incelemek içingateway statusveyadoctorkullanın; yönetilen yığın ayarı bulunmayan eski hizmet meta verilerini yeniden oluşturmak içinopenclaw gateway install --forceçalıştırın. - Politika yalnızca yönetilen Gateway hizmeti için geçerlidir. Ön plandaki
gateway run, node hizmetleri ve elle yazılmış gözetmen birimleri kendi çalışma zamanı yapılandırmalarını korur.
Yükleme sırasında kimlik doğrulama ve SecretRef'ler
- Belirteç kimlik doğrulaması bir belirteç gerektirdiğinde ve
gateway.auth.tokenSecretRef tarafından yönetildiğinde,gateway installSecretRef'in çözümlenebilir olduğunu doğrular ancak çözümlenen belirteci hizmet ortamı meta verilerinde kalıcı hâle getirmez. - Belirteç kimlik doğrulaması bir belirteç gerektiriyorsa ve yapılandırılmış belirteç SecretRef'i çözümlenemiyorsa yükleme, yedek düz metni kalıcı hâle getirmek yerine güvenli biçimde başarısız olur.
gateway runüzerindeki parola kimlik doğrulaması için satır içi--passwordyerineOPENCLAW_GATEWAY_PASSWORD,--password-fileveya SecretRef destekligateway.auth.passwordtercih edin.- Çıkarımlı kimlik doğrulama modunda yalnızca kabukta bulunan
OPENCLAW_GATEWAY_PASSWORD, yükleme belirteci gereksinimlerini gevşetmez; yönetilen bir hizmet yüklerken kalıcı yapılandırma (gateway.auth.passwordveya yapılandırmaenv) kullanın. - Hem
gateway.auth.tokenhem degateway.auth.passwordyapılandırılmışsa vegateway.auth.modeayarlanmamışsa mod açıkça ayarlanana kadar yükleme engellenir.
Gateway'leri keşfedin (Bonjour)
gateway discover, Gateway işaretçilerini (_openclaw-gw._tcp) tarar.
- Çok noktaya yayın DNS-SD:
local. - Tek noktaya yayın DNS-SD (geniş alan Bonjour): bir etki alanı seçin (örnek:
openclaw.internal.) ve bölünmüş DNS ile bir DNS sunucusu kurun; Bonjour bölümüne bakın.
Yalnızca Bonjour keşfi etkinleştirilmiş (varsayılan) gateway'ler işaretçiyi yayımlar.
Her işaretçideki TXT ipuçları: role (gateway rolü ipucu), transport (aktarım ipucu, ör. gateway), gatewayPort (WebSocket portu, genellikle 18789), tailnetDns (kullanılabilir olduğunda MagicDNS ana makine adı), gatewayTls / gatewayTlsSha256 (TLS etkin + sertifika parmak izi). sshPort ve cliPath yalnızca tam keşif modunda yayımlanır (discovery.mdns.mode: "full"; varsayılan "minimal" bunları hariç tutar — istemciler daha sonra SSH hedefleri için varsayılan olarak 22 portunu kullanır).
gateway discover
openclaw gateway discover"--timeout--jsonbooleanMakine tarafından okunabilir çıktı (biçimlendirmeyi/döndürücüyü de devre dışı bırakır).
Örnekler:
openclaw gateway discover --timeout 4000openclaw gateway discover --json | jq '.beacons[].wsUrl'