Gateway
Sorun giderme
Bu sayfa ayrıntılı çalıştırma kılavuzudur. Önce hızlı triyaj akışını istiyorsanız /help/troubleshooting ile başlayın.
Komut basamağı
Önce bunları, bu sırayla çalıştırın:
openclaw statusopenclaw gateway statusopenclaw logs --followopenclaw doctoropenclaw channels status --probeBeklenen sağlıklı sinyaller:
openclaw gateway status,Runtime: running,Connectivity probe: okve birCapability: ...satırı gösterir.openclaw doctor, engelleyici yapılandırma/hizmet sorunu bildirmez.openclaw channels status --probe, canlı hesap bazında aktarım durumunu ve desteklendiği yerdeworksveyaaudit okgibi prob/denetim sonuçlarını gösterir.
Güncellemeden sonra
Bunu, güncelleme tamamlandığında ancak Gateway kapalı olduğunda, kanallar boş olduğunda veya model çağrıları 401'lerle başarısız olmaya başladığında kullanın.
openclaw status --allopenclaw update status --jsonopenclaw gateway status --deepopenclaw doctor --fixopenclaw gateway restartŞunlara bakın:
openclaw status/openclaw status --alliçindeUpdate restart. Bekleyen veya başarısız devirler, çalıştırılacak sonraki komutu içerir.- Channels altında
plugin load failed: dependency tree corrupted; run openclaw doctor --fix. Bu, kanal yapılandırmasının hâlâ var olduğu, ancak Plugin kaydının kanal yüklenmeden önce başarısız olduğu anlamına gelir. - yeniden kimlik doğrulamadan sonra sağlayıcı 401'leri.
openclaw doctor --fix, eski ajan başına OAuth kimlik doğrulama gölgelerini denetler ve eski kopyaları kaldırır; böylece tüm ajanlar geçerli paylaşılan profili çözer.
Bölünmüş kurulumlar ve daha yeni yapılandırma koruması
Bunu, bir Gateway hizmeti bir güncellemeden sonra beklenmedik şekilde durduğunda veya günlükler bir openclaw ikilisinin openclaw.json dosyasını son yazan sürümden daha eski olduğunu gösterdiğinde kullanın.
OpenClaw, yapılandırma yazmalarını meta.lastTouchedVersion ile damgalar. Salt okunur komutlar, daha yeni bir OpenClaw tarafından yazılmış yapılandırmayı yine de inceleyebilir, ancak işlem ve hizmet mutasyonları daha eski bir ikiliden devam etmeyi reddeder. Engellenen eylemler arasında gateway hizmetini başlatma, durdurma, yeniden başlatma, kaldırma, zorunlu hizmet yeniden kurulumu, hizmet modunda gateway başlatma ve gateway --force port temizleme yer alır.
which openclawopenclaw --versionopenclaw gateway status --deepopenclaw config get meta.lastTouchedVersionPATH'i düzeltin
PATH değerini, openclaw daha yeni kuruluma çözümlenecek şekilde düzeltin, ardından eylemi yeniden çalıştırın.
Gateway hizmetini yeniden kurun
Amaçlanan gateway hizmetini daha yeni kurulumdan yeniden kurun:
openclaw gateway install --forceopenclaw gateway restartEski sarmalayıcıları kaldırın
Hâlâ eski bir openclaw ikilisini işaret eden eski sistem paketi veya eski sarmalayıcı girdilerini kaldırın.
Geri alma sonrası protokol uyuşmazlığı
Bunu, OpenClaw sürümünü düşürdükten veya geri aldıktan sonra günlükler protocol mismatch yazdırmaya devam ettiğinde kullanın. Bu, daha eski bir Gateway çalıştığı, ancak daha yeni bir yerel istemci işleminin hâlâ daha eski Gateway'in konuşamadığı bir protokol aralığıyla yeniden bağlanmaya çalıştığı anlamına gelir.
openclaw --versionwhich -a openclawopenclaw gateway status --deepopenclaw doctor --deepopenclaw logs --followŞunlara bakın:
- Gateway günlüklerinde
protocol mismatch ... client=... v<version> min=<n> max=<n> expected=<n>. openclaw gateway status --deepiçindeEstablished clients:veyaopenclaw doctor --deepiçindeGateway clients. Bu, işletim sistemi izin verdiğinde PID'ler ve komut satırları dahil olmak üzere Gateway portuna bağlı etkin TCP istemcilerini listeler.- Komut satırı geri aldığınız daha yeni OpenClaw kurulumunu veya sarmalayıcısını işaret eden bir istemci işlemi.
Düzeltme:
gateway status --deeptarafından gösterilen eski OpenClaw istemci işlemini durdurun veya yeniden başlatın.- Yerel panolar, düzenleyiciler, uygulama sunucusu yardımcıları veya uzun süre çalışan
openclaw logs --followkabukları gibi OpenClaw'ı gömen uygulamaları veya sarmalayıcıları yeniden başlatın. openclaw gateway status --deepveyaopenclaw doctor --deepkomutunu yeniden çalıştırın ve eski istemci PID'sinin gittiğini doğrulayın.
Daha eski bir Gateway'in daha yeni uyumsuz bir protokolü kabul etmesini sağlamayın. Protokol artışları kablo sözleşmesini korur; geri alma kurtarması bir işlem/sürüm temizleme sorunudur.
Skill sembolik bağlantısı yol kaçışı olarak atlandı
Günlükler şunu içerdiğinde bunu kullanın:
Skipping escaped skill path outside its configured root: ... reason=symlink-escapeOpenClaw her skill kökünü bir kapsama sınırı olarak ele alır. ~/.agents/skills, <workspace>/.agents/skills, <workspace>/skills veya
~/.openclaw/skills altındaki bir sembolik bağlantı, gerçek hedefi açıkça güvenilir olarak tanımlanmadıkça o kökün dışına çözümlendiğinde atlanır.
Bağlantıyı inceleyin:
ls -l ~/.agents/skills/<name>realpath ~/.agents/skills/<name>openclaw config get skills.loadHedef kasıtlıysa hem doğrudan skill kökünü hem de izin verilen sembolik bağlantı hedefini yapılandırın:
{ skills: { load: { extraDirs: ["~/Projects/manager/skills"], allowSymlinkTargets: ["~/Projects/manager/skills"], }, },}Ardından yeni bir oturum başlatın veya skills izleyicisinin yenilenmesini bekleyin. Çalışan işlem yapılandırma değişikliğinden eskiyse gateway'i yeniden başlatın.
~, / veya tüm senkronize edilmiş proje klasörü gibi geniş hedefler kullanmayın.
allowSymlinkTargets kapsamını, güvenilir
SKILL.md dizinlerini içeren gerçek skill köküyle sınırlı tutun.
Skill Workshop apply'in bu güvenilir sembolik bağlantılı
çalışma alanı skill yollarına da yazması gerekiyorsa skills.workshop.allowSymlinkTargetWrites ayarını etkinleştirin.
Salt okunur paylaşılan skill kökleri için devre dışı bırakın.
İlgili:
Anthropic 429 uzun bağlam için ek kullanım gerektiriyor
Günlükler/hatalar şunu içerdiğinde bunu kullanın: HTTP 429: rate_limit_error: Extra usage is required for long context requests.
openclaw logs --followopenclaw models statusopenclaw config get agents.defaults.modelsŞunlara bakın:
- Seçilen Anthropic modeli, GA özellikli 1M Claude 4.x modelidir veya modelde eski
params.context1m: truevardır. - Geçerli Anthropic kimlik bilgisi uzun bağlam kullanımı için uygun değildir.
- İstekler yalnızca 1M bağlam yoluna ihtiyaç duyan uzun oturumlarda/model çalıştırmalarında başarısız olur.
Düzeltme seçenekleri:
Standart bağlam penceresi kullanın
Standart pencereli bir modele geçin veya 1M bağlam için GA özellikli olmayan eski
model yapılandırmasından context1m değerini kaldırın.
Uygun kimlik bilgisi kullanın
Uzun bağlam istekleri için uygun bir Anthropic kimlik bilgisi kullanın veya bir Anthropic API anahtarına geçin.
Yedek modelleri yapılandırın
Anthropic uzun bağlam istekleri reddedildiğinde çalıştırmaların devam etmesi için yedek modelleri yapılandırın.
İlgili:
Yukarı akış 403 engellenmiş yanıtları
Bunu, yukarı akış LLM sağlayıcısı Your request was blocked gibi genel bir 403 döndürdüğünde kullanın.
Bunun her zaman bir OpenClaw yapılandırma sorunu olduğunu varsaymayın. Yanıt, OpenAI uyumlu bir uç noktanın önündeki CDN, WAF, bot yönetimi kuralı veya ters proxy gibi bir yukarı akış güvenlik katmanından gelebilir.
openclaw statusopenclaw gateway statusopenclaw logs --followŞunlara bakın:
- aynı sağlayıcı altındaki birden fazla modelin aynı şekilde başarısız olması
- normal sağlayıcı API hatası yerine HTML veya genel güvenlik metni
- aynı istek zamanı için sağlayıcı tarafı güvenlik olayları
- normal SDK biçimli istekler başarısız olurken küçük bir doğrudan
curlprobunun başarılı olması
Kanıt bir WAF/CDN engeline işaret ettiğinde önce sağlayıcı tarafı filtrelemeyi düzeltin. OpenClaw'ın kullandığı API yolu için dar kapsamlı bir izin veya atlama kuralını tercih edin ve tüm site için korumayı devre dışı bırakmaktan kaçının.
İlgili:
Yerel OpenAI uyumlu arka uç doğrudan probları geçiyor ancak ajan çalıştırmaları başarısız oluyor
Bunu şu durumlarda kullanın:
curl ... /v1/modelsçalışır- küçük doğrudan
/v1/chat/completionsçağrıları çalışır - OpenClaw model çalıştırmaları yalnızca normal ajan turlarında başarısız olur
curl http://127.0.0.1:1234/v1/modelscurl http://127.0.0.1:1234/v1/chat/completions \ -H 'content-type: application/json' \ -d '{"model":"<id>","messages":[{"role":"user","content":"hi"}],"stream":false}'openclaw infer model run --model <provider/model> --prompt "hi" --jsonopenclaw logs --followŞunlara bakın:
- doğrudan küçük çağrılar başarılı olur, ancak OpenClaw çalıştırmaları yalnızca daha büyük promptlarda başarısız olur
- doğrudan
/v1/chat/completionsaynı çıplak model kimliğiyle çalışsa bilemodel_not_foundveya 404 hataları messages[].contentiçin dize beklediğini belirten arka uç hataları- OpenAI uyumlu yerel arka uçla aralıklı
incomplete turn detected ... stopReason=stop payloads=0uyarıları - yalnızca daha büyük prompt-token sayıları veya tam ajan çalışma zamanı promptlarında görünen arka uç çökmeleri
Yaygın imzalar
- Yerel MLX/vLLM tarzı sunucuyla
model_not_found→baseUrldeğerinin/v1içerdiğini,/v1/chat/completionsarka uçları içinapideğerinin"openai-completions"olduğunu vemodels.providers.<provider>.models[].iddeğerinin çıplak sağlayıcı-yerel kimlik olduğunu doğrulayın. Bunu sağlayıcı önekiyle bir kez seçin, örneğinmlx/mlx-community/Qwen3-30B-A3B-6bit; katalog girdisinimlx-community/Qwen3-30B-A3B-6bitolarak tutun. messages[...].content: invalid type: sequence, expected a string→ arka uç yapılandırılmış Chat Completions içerik parçalarını reddeder. Düzeltme:models.providers.<provider>.models[].compat.requiresStringContent: trueayarlayın.validation.keysveya["role","content"]gibi izin verilen ileti anahtarları → arka uç, Chat Completions iletilerinde OpenAI tarzı yeniden oynatma meta verilerini reddeder. Düzeltme:models.providers.<provider>.models[].compat.strictMessageKeys: trueayarlayın.incomplete turn detected ... stopReason=stop payloads=0→ arka uç Chat Completions isteğini tamamladı ancak o tur için kullanıcıya görünür asistan metni döndürmedi. OpenClaw, yeniden oynatma açısından güvenli boş OpenAI uyumlu turları bir kez yeniden dener; kalıcı başarısızlıklar genellikle arka ucun boş/metin dışı içerik yaydığı veya son yanıt metnini bastırdığı anlamına gelir.- doğrudan küçük istekler başarılı olur, ancak OpenClaw ajan çalıştırmaları arka uç/model çökmeleriyle başarısız olur (örneğin bazı
inferrsderlemelerinde Gemma) → OpenClaw aktarımı muhtemelen zaten doğrudur; arka uç daha büyük ajan çalışma zamanı prompt biçiminde başarısız oluyordur. - araçlar devre dışı bırakıldıktan sonra hatalar azalır ancak kaybolmaz → araç şemaları baskının bir parçasıydı, ancak kalan sorun hâlâ yukarı akış model/sunucu kapasitesi veya bir arka uç hatasıdır.
Düzeltme seçenekleri
- Yalnızca dize kabul eden Chat Completions arka uçları için
compat.requiresStringContent: trueayarlayın. - Her iletide yalnızca
rolevecontentkabul eden katı Chat Completions arka uçları içincompat.strictMessageKeys: trueayarlayın. - OpenClaw'ın araç şeması yüzeyini güvenilir biçimde işleyemeyen modeller/arka uçlar için
compat.supportsTools: falseayarlayın. - Mümkün olduğunda prompt baskısını azaltın: daha küçük çalışma alanı başlangıcı, daha kısa oturum geçmişi, daha hafif yerel model veya daha güçlü uzun bağlam desteğine sahip bir arka uç.
- Küçük doğrudan istekler geçmeye devam ederken OpenClaw ajan turları hâlâ arka uç içinde çöküyorsa bunu yukarı akış sunucu/model sınırlaması olarak ele alın ve kabul edilen yük biçimiyle orada bir repro dosyalayın.
İlgili:
Yanıt yok
Kanallar çalışıyor ancak hiçbir şey yanıt vermiyorsa, herhangi bir şeyi yeniden bağlamadan önce yönlendirmeyi ve politikayı kontrol edin.
openclaw statusopenclaw channels status --probeopenclaw pairing list --channel <channel> [--account <id>]openclaw config get channelsopenclaw logs --followŞunlara bakın:
- DM gönderenleri için eşleştirme beklemede.
- Grup bahsi kapısı (
requireMention,mentionPatterns). - Kanal/grup izin listesi uyumsuzlukları.
Yaygın imzalar:
drop guild message (mention required→ grup mesajı bahsedilene kadar yok sayıldı.pairing request→ gönderenin onaya ihtiyacı var.blocked/allowlist→ gönderen/kanal politika tarafından filtrelendi.
İlgili:
Pano kontrol UI bağlantısı
Pano/kontrol UI bağlanmıyorsa URL'yi, kimlik doğrulama modunu ve güvenli bağlam varsayımlarını doğrulayın.
openclaw gateway statusopenclaw statusopenclaw logs --followopenclaw doctoropenclaw gateway status --jsonŞunlara bakın:
- Doğru yoklama URL'si ve pano URL'si.
- İstemci ile gateway arasında kimlik doğrulama modu/token uyumsuzluğu.
- Cihaz kimliği gerektiği halde HTTP kullanımı.
Bir güncellemeden sonra yerel tarayıcı 127.0.0.1:18789 adresine bağlanamıyorsa, önce yerel Gateway hizmetini kurtarın ve panoyu sunduğunu doğrulayın:
openclaw gateway restartlsof -i :18789curl http://127.0.0.1:18789curl OpenClaw HTML döndürürse Gateway çalışıyordur ve kalan sorun büyük olasılıkla tarayıcı önbelleği, eski bir derin bağlantı veya bayat sekme durumudur. http://127.0.0.1:18789 adresini doğrudan açın ve panodan ilerleyin. Yeniden başlatma hizmeti çalışır durumda bırakmıyorsa openclaw gateway start çalıştırın ve openclaw gateway status durumunu yeniden kontrol edin.
Bağlantı / kimlik doğrulama imzaları
device identity required→ güvenli olmayan bağlam veya eksik cihaz kimlik doğrulaması.origin not allowed→ tarayıcıOrigindeğerigateway.controlUi.allowedOriginsiçinde değil (veya açık bir izin listesi olmadan loopback olmayan bir tarayıcı kaynağından bağlanıyorsunuz).device nonce required/device nonce mismatch→ istemci, challenge tabanlı cihaz kimlik doğrulama akışını tamamlamıyor (connect.challenge+device.nonce).device signature invalid/device signature expired→ istemci, geçerli el sıkışma için yanlış yükü (veya bayat zaman damgasını) imzaladı.AUTH_TOKEN_MISMATCHilecanRetryWithDeviceToken=true→ istemci, önbelleğe alınmış cihaz token'ı ile güvenilir bir yeniden deneme yapabilir.- Bu önbelleğe alınmış token yeniden denemesi, eşleştirilmiş cihaz token'ı ile saklanan önbelleğe alınmış kapsam kümesini yeniden kullanır. Açık
deviceToken/ açıkscopesçağıranları bunun yerine istedikleri kapsam kümesini korur. AUTH_SCOPE_MISMATCH→ cihaz token'ı tanındı, ancak onaylanmış kapsamları bu bağlantı isteğini kapsamıyor; paylaşılan gateway token'ını döndürmek yerine yeniden eşleştirin veya istenen kapsam sözleşmesini onaylayın.- Bu yeniden deneme yolu dışında, bağlantı kimlik doğrulama önceliği önce açık paylaşılan token/parola, sonra açık
deviceToken, sonra saklanan cihaz token'ı, sonra bootstrap token'ıdır. - Asenkron Tailscale Serve Control UI yolunda, aynı
{scope, ip}için başarısız girişimler, sınırlayıcı hatayı kaydetmeden önce sıraya alınır. Bu nedenle aynı istemciden gelen iki kötü eşzamanlı yeniden deneme, iki düz uyumsuzluk yerine ikinci denemederetry latergösterebilir. - Tarayıcı kaynaklı loopback istemcisinden
too many failed authentication attempts (retry later)→ aynı normalize edilmişOrigindeğerinden tekrarlanan hatalar geçici olarak kilitlenir; başka bir localhost kaynağı ayrı bir bucket kullanır. - Bu yeniden denemeden sonra tekrarlanan
unauthorized→ paylaşılan token/cihaz token'ı kayması; token yapılandırmasını yenileyin ve gerekirse cihaz token'ını yeniden onaylayın/döndürün. gateway connect failed:→ yanlış host/port/url hedefi.
Kimlik doğrulama ayrıntı kodları hızlı haritası
Sonraki eylemi seçmek için başarısız connect yanıtındaki error.details.code değerini kullanın:
| Ayrıntı kodu | Anlamı | Önerilen eylem |
|---|---|---|
AUTH_TOKEN_MISSING |
İstemci gerekli paylaşılan token'ı göndermedi. | Token'ı istemciye yapıştırın/ayarlayın ve yeniden deneyin. Pano yolları için: openclaw config get gateway.auth.token ardından Control UI ayarlarına yapıştırın. |
AUTH_TOKEN_MISMATCH |
Paylaşılan token, gateway kimlik doğrulama token'ı ile eşleşmedi. | canRetryWithDeviceToken=true ise bir güvenilir yeniden denemeye izin verin. Önbelleğe alınmış token yeniden denemeleri saklanan onaylı kapsamları yeniden kullanır; açık deviceToken / scopes çağıranları istenen kapsamları korur. Hâlâ başarısız oluyorsa token kayması kurtarma kontrol listesini çalıştırın. |
AUTH_DEVICE_TOKEN_MISMATCH |
Önbelleğe alınmış cihaz başına token bayat veya iptal edilmiş. | Cihazlar CLI kullanarak cihaz token'ını döndürün/yeniden onaylayın, ardından yeniden bağlanın. |
AUTH_SCOPE_MISMATCH |
Cihaz token'ı geçerli, ancak onaylı rol/kapsamları bu bağlantı isteğini kapsamıyor. | Cihazı yeniden eşleştirin veya istenen kapsam sözleşmesini onaylayın; bunu paylaşılan token kayması olarak ele almayın. |
PAIRING_REQUIRED |
Cihaz kimliğinin onaya ihtiyacı var. not-paired, scope-upgrade, role-upgrade veya metadata-upgrade için error.details.reason değerini kontrol edin ve varsa requestId / remediationHint kullanın. |
Bekleyen isteği onaylayın: openclaw devices list ardından openclaw devices approve <requestId>. Kapsam/rol yükseltmeleri, istenen erişimi gözden geçirdikten sonra aynı akışı kullanır. |
Cihaz kimlik doğrulama v2 migration kontrolü:
openclaw --versionopenclaw doctoropenclaw gateway statusGünlükler nonce/imza hataları gösteriyorsa bağlanan istemciyi güncelleyin ve doğrulayın:
connect.challenge bekleyin
İstemci, gateway tarafından verilen connect.challenge değerini bekler.
Yükü imzalayın
İstemci, challenge'a bağlı yükü imzalar.
Cihaz nonce değerini gönderin
İstemci, aynı challenge nonce değeriyle connect.params.device.nonce gönderir.
openclaw devices rotate / revoke / remove beklenmedik şekilde reddedilirse:
- eşleştirilmiş cihaz token oturumları, çağıranda ayrıca
operator.adminyoksa yalnızca kendi cihazlarını yönetebilir openclaw devices rotate --scope ...yalnızca çağıran oturumun zaten sahip olduğu operatör kapsamlarını isteyebilir
İlgili:
- Yapılandırma (gateway kimlik doğrulama modları)
- Control UI
- Cihazlar
- Uzaktan erişim
- Güvenilir proxy kimlik doğrulaması
Gateway hizmeti çalışmıyor
Hizmet yüklü ancak süreç ayakta kalmıyorsa bunu kullanın.
openclaw gateway statusopenclaw statusopenclaw logs --followopenclaw doctoropenclaw gateway status --deep # sistem düzeyindeki hizmetleri de taraŞunlara bakın:
- Çıkış ipuçlarıyla birlikte
Runtime: stopped. - Hizmet yapılandırması uyumsuzluğu (
Config (cli)veConfig (service)). - Port/dinleyici çakışmaları.
--deepkullanıldığında ek launchd/systemd/schtasks kurulumları.Other gateway-like services detected (best effort)temizleme ipuçları.
Yaygın imzalar
Gateway start blocked: set gateway.mode=localveyaexisting config is missing gateway.mode→ yerel gateway modu etkin değil ya da yapılandırma dosyasının üzerine yazılmış vegateway.modekaybedilmiş. Düzeltme: yapılandırmanızdagateway.mode="local"ayarlayın veya beklenen yerel mod yapılandırmasını yeniden damgalamak içinopenclaw onboard --mode local/openclaw setupkomutunu yeniden çalıştırın. OpenClaw'u Podman üzerinden çalıştırıyorsanız varsayılan yapılandırma yolu~/.openclaw/openclaw.jsonolur.refusing to bind gateway ... without auth→ geçerli bir gateway kimlik doğrulama yolu (token/parola veya yapılandırıldıysa güvenilir proxy) olmadan loopback dışı bağlama.another gateway instance is already listening/EADDRINUSE→ port çakışması.Other gateway-like services detected (best effort)→ bayat veya paralel launchd/systemd/schtasks birimleri var. Çoğu kurulum makine başına bir gateway tutmalıdır; birden fazlasına gerçekten ihtiyacınız varsa portları + yapılandırmayı/durumu/çalışma alanını yalıtın. Bkz. /gateway#multiple-gateways-same-host.- doctor'dan
System-level OpenClaw gateway service detected→ kullanıcı düzeyi hizmet eksikken bir systemd sistem birimi var. Doctor'ın kullanıcı hizmeti yüklemesine izin vermeden önce kopyayı kaldırın veya devre dışı bırakın ya da sistem birimi amaçlanan denetleyiciyseOPENCLAW_SERVICE_REPAIR_POLICY=externalayarlayın. Gateway service port does not match current gateway config→ yüklü denetleyici hâlâ eski--portdeğerini sabitliyor.openclaw doctor --fixveyaopenclaw gateway install --forceçalıştırın, ardından gateway hizmetini yeniden başlatın.
İlgili:
macOS gateway sessizce yanıt vermeyi durduruyor, ardından panoya dokunduğunuzda devam ediyor
macOS host üzerindeki kanallar (Telegram, WhatsApp vb.) dakikalardan saatlere kadar sessiz kaldığında ve Control UI'yi açtığınız, SSH ile bağlandığınız veya host ile başka şekilde etkileşime geçtiğiniz anda gateway geri gelmiş göründüğünde bunu kullanın. Genellikle openclaw status içinde belirgin bir belirti olmaz, çünkü baktığınız zamana kadar gateway yeniden canlıdır.
ls ~/.openclaw/logs/stability/ | tail -5openclaw gateway stability --bundle latestpmset -g log | grep -iE "sleep|wake|maintenance" | tail -50launchctl print gui/$UID/ai.openclaw.gateway | grep -E "state|last exit|runs"Şunları arayın:
~/.openclaw/logs/stability/içindeerror.codedeğeriENETDOWN,ENETUNREACH,EHOSTUNREACHveyaECONNREFUSEDgibi geçici bir ağ koduna ayarlanmış bir veya daha fazla*-uncaught_exception.jsonpaketi.- Çökme zaman damgalarıyla hizalanmış
Entering Sleep state due to 'Maintenance Sleep'veyaen0 driver is slow (msg: WillChangeState to 0)gibipmset -g logsatırları. Power Nap / Maintenance Sleep, Wi-Fi sürücüsünü kısa süreliğine 0 durumuna alır; bu pencereye denk gelen herhangi bir gidenconnect(), aksi halde tam ağ bağlantısına sahip bir konakta bileENETDOWNile başarısız olabilir. - Özellikle çökme ile sonraki başlatma arasındaki boşluk saniyeler yerine yaklaşık bir saat olduğunda, bir çıkış kodu ve birden çok yakın tarihli
runsilestate = not runninggösterenlaunchctl printçıktısı. macOS launchd, çökme patlamasından sonra belgelendirilmemiş bir yeniden başlatma koruma kapısı uygular; bu kapı, etkileşimli oturum açma, pano bağlantısı veyalaunchctl kickstartgibi harici bir tetikleyici onu yeniden etkinleştirene kadarKeepAlive=trueayarını dikkate almayı durdurabilir.
Yaygın belirtiler:
error.codedeğeriENETDOWNveya kardeş bir kod olan ve çağrı yığını NodenetlookupAndConnect/Socket.connectiçine işaret eden bir kararlılık paketi. OpenClaw2026.5.26ve daha yeni sürümler bunları zararsız geçici ağ hataları olarak sınıflandırır, bu nedenle artık üst düzey yakalanmamış işleyiciye yayılmazlar; daha eski bir sürümdeyseniz önce yükseltin.- Control UI'ye bağlandığınız veya konağa SSH ile girdiğiniz anda biten uzun sessiz dönemler: launchd yeniden başlatma kapısını yeniden etkinleştiren şey, panonun Gateway'e yaptığı herhangi bir işlem değil, kullanıcı tarafından görülebilen etkinliktir.
~/Library/Logs/openclaw/gateway.logiçinde karşılık gelenreceived SIG*; shutting downsatırı olmadan gün boyunca artanrunssayısı: temiz kapanışlar bir sinyal günlüğe kaydeder; geçici çökmeler kaydetmez.
Ne yapmalı:
-
2026.5.26öncesi bir sürüm çalıştırıyorsanız Gateway'i yükseltin. Yükseltmeden sonra gelecektekiENETDOWNhataları süreci sonlandırmak yerine uyarı olarak günlüğe kaydedilir. -
Her zaman açık sunucular olarak çalışması amaçlanan Mac mini / masaüstü konaklarda bakım uykusu etkinliğini azaltın:
bash sudo pmset -a sleep 0 disksleep 0 standby 0 powernap 0Bu, altta yatan sürücü dalgalanmasını önemli ölçüde azaltır, ancak tamamen ortadan kaldırmaz. Sistem, bu bayraklardan bağımsız olarak TCP keepalive ve mDNS bakımı için yine de bazı bakım uykuları gerçekleştirebilir.
-
launchd tarafından beklemeye alınan gelecekteki bir çökme patlamasının hızla yakalanması için bir canlılık watchdog'u ekleyin:
bash # Example launchd-aware liveness check, suitable for a 5-minute cron or LaunchAgentstate=$(launchctl print gui/$UID/ai.openclaw.gateway 2>/dev/null | awk -F'= ' '/state =/ {print $2; exit}')if [ "$state" != "running" ]; then launchctl kickstart -k gui/$UID/ai.openclaw.gatewayfiAmaç, yeniden başlatma kapısını harici olarak yeniden etkinleştirmektir; macOS'ta bir çökme patlamasından sonra yalnızca
KeepAlive=trueyeterli değildir.
İlgili:
Yüksek bellek kullanımı sırasında Gateway çıkıyor
Bunu, Gateway yük altında kaybolduğunda, supervisor OOM tarzı bir yeniden başlatma bildirdiğinde veya günlüklerde critical memory pressure bundle written ifadesi geçtiğinde kullanın.
openclaw gateway status --deepopenclaw logs --followopenclaw gateway stability --bundle latestopenclaw gateway diagnostics exportŞunları arayın:
- En son kararlılık paketinde
Reason: diagnostic.memory.pressure.critical. critical/rss_threshold,critical/heap_thresholdveyacritical/rss_growthileMemory pressure:.- Heap sınırına yakın
V8 heap:değerleri. agents/<agent>/sessions/<session>.jsonlveyasessions/<session>.jsonlgibiLargest session files:girdileri.- Gateway bir container veya bellekle sınırlı hizmet içinde çalıştığında Linux cgroup bellek sayaçları.
Yaygın belirtiler:
critical memory pressure bundle writtenyeniden başlatmadan kısa süre önce görünür → OpenClaw, OOM öncesi bir kararlılık paketi yakaladı.openclaw gateway stability --bundle latestile inceleyin.- Gateway günlüklerinde
memory pressure: level=critical ... memoryPressureSnapshot=disabledgörünür → OpenClaw kritik bellek baskısı algıladı, ancak OOM öncesi kararlılık anlık görüntüsü kapalıdır. Largest session files:çok büyük bir düzeltilmiş transcript yolunu işaret eder → yeniden başlatmadan önce tutulan oturum geçmişini azaltın, oturum büyümesini inceleyin veya eski transcript'leri etkin depodan çıkarın.V8 heap:kullanılan baytları heap sınırına yakındır → prompt/oturum baskısını düşürün, eşzamanlı işi azaltın veya iş yükünün beklendiğini doğruladıktan sonra Node heap sınırını yükseltin.Memory pressure: critical/rss_growth→ bellek tek bir örnekleme penceresinde hızla büyüdü. Büyük bir içe aktarma, kontrolden çıkan araç çıktısı, yinelenen yeniden denemeler veya kuyruğa alınmış agent işlerinden oluşan bir toplu iş için en son günlükleri kontrol edin.- Günlüklerde kritik bellek baskısı görünür, ancak paket yoktur → varsayılan budur. Gelecekteki kritik bellek baskısı olaylarında OOM öncesi kararlılık paketini yakalamak için
diagnostics.memoryPressureSnapshot: trueayarlayın.
Kararlılık paketi yük içermez. Mesaj metni, webhook gövdeleri, kimlik bilgileri, token'lar, çerezler veya ham oturum kimlikleri değil; operasyonel bellek kanıtı ve düzeltilmiş göreli dosya yolları içerir. Hata raporlarına ham günlükleri kopyalamak yerine tanılama dışa aktarımını ekleyin.
İlgili:
Gateway geçersiz yapılandırmayı reddetti
Bunu, Gateway başlangıcı Invalid config ile başarısız olduğunda veya sıcak yeniden yükleme günlükleri
geçersiz bir düzenlemeyi atladığını söylediğinde kullanın.
openclaw logs --followopenclaw config fileopenclaw config validateopenclaw doctorŞunları arayın:
Invalid config at ...config reload skipped (invalid config): ...Config write rejected: ...- Etkin yapılandırmanın yanında zaman damgalı bir
openclaw.json.rejected.*dosyası doctor --fixbozuk bir doğrudan düzenlemeyi onardıysa zaman damgalı biropenclaw.json.clobbered.*dosyası- OpenClaw her yapılandırma yolu için en son 32
.clobbered.*dosyasını tutar ve daha eskileri döndürür
Ne oldu
- Yapılandırma başlangıç, sıcak yeniden yükleme veya OpenClaw'a ait bir yazma sırasında doğrulanmadı.
- Gateway başlangıcı
openclaw.jsondosyasını yeniden yazmak yerine kapalı biçimde başarısız olur. - Sıcak yeniden yükleme geçersiz harici düzenlemeleri atlar ve geçerli çalışma zamanı yapılandırmasını etkin tutar.
- OpenClaw'a ait yazmalar, commit öncesinde geçersiz/yıkıcı yükleri reddeder ve
.rejected.*olarak kaydeder. - Onarımın sahibi
openclaw doctor --fixkomutudur. JSON olmayan önekleri kaldırabilir veya reddedilen yükü.clobbered.*olarak korurken son bilinen iyi kopyayı geri yükleyebilir. - Bir yapılandırma yolu için çok sayıda onarım gerçekleştiğinde OpenClaw, en yeni onarılmış yükün hâlâ kullanılabilir olması için eski
.clobbered.*dosyalarını döndürür.
İncele ve onar
CONFIG="$(openclaw config file)"ls -lt "$CONFIG".clobbered.* "$CONFIG".rejected.* 2>/dev/null | headdiff -u "$CONFIG" "$(ls -t "$CONFIG".clobbered.* 2>/dev/null | head -n 1)"openclaw config validateopenclaw doctorYaygın belirtiler
.clobbered.*var → doctor, etkin yapılandırmayı onarırken bozuk bir harici düzenlemeyi korudu..rejected.*var → OpenClaw'a ait bir yapılandırma yazması, commit öncesinde schema veya üzerine yazma kontrollerinden geçemedi.Config write rejected:→ yazma, gerekli şekli düşürmeye, dosyayı keskin biçimde küçültmeye veya geçersiz yapılandırmayı kalıcılaştırmaya çalıştı.config reload skipped (invalid config):→ doğrudan bir düzenleme doğrulamadan geçemedi ve çalışan Gateway tarafından yok sayıldı.Invalid config at ...→ Gateway hizmetleri başlatılmadan önce başlangıç başarısız oldu.missing-meta-vs-last-good,gateway-mode-missing-vs-last-goodveyasize-drop-vs-last-good:*→ OpenClaw'a ait bir yazma, son bilinen iyi yedekle karşılaştırıldığında alanları veya boyutu kaybettiği için reddedildi.Config last-known-good promotion skipped→ aday,***gibi düzeltilmiş secret yer tutucuları içeriyordu.
Düzeltme seçenekleri
- doctor'ın önekli/üzerine yazılmış yapılandırmayı onarmasına veya son bilinen iyiyi geri yüklemesine izin vermek için
openclaw doctor --fixçalıştırın. .clobbered.*veya.rejected.*içinden yalnızca amaçlanan anahtarları kopyalayın, ardından bunlarıopenclaw config setveyaconfig.patchile uygulayın.- Yeniden başlatmadan önce
openclaw config validateçalıştırın. - Elle düzenleme yaparsanız, değiştirmek istediğiniz kısmi nesneyi değil, tam JSON5 yapılandırmasını koruyun.
İlgili:
Gateway probe uyarıları
Bunu, openclaw gateway probe bir şeye ulaştığında, ancak yine de bir uyarı bloğu yazdırdığında kullanın.
openclaw gateway probeopenclaw gateway probe --jsonopenclaw gateway probe --ssh user@gateway-hostŞunları arayın:
- JSON çıktısında
warnings[].codeveprimaryTargetId. - Uyarının SSH fallback, birden çok Gateway, eksik kapsamlar veya çözümlenmemiş auth ref'leri hakkında olup olmadığı.
Yaygın belirtiler:
SSH tunnel failed to start; falling back to direct probes.→ SSH kurulumu başarısız oldu, ancak komut yine de doğrudan yapılandırılmış/loopback hedefleri denedi.multiple reachable gateway identities detected→ farklı Gateway'ler yanıt verdi veya OpenClaw ulaşılabilir hedeflerin aynı Gateway olduğunu kanıtlayamadı. Aynı Gateway'e giden bir SSH tüneli, proxy URL'si veya yapılandırılmış uzak URL, taşıma bağlantı noktaları farklı olsa bile birden çok taşımalı tek Gateway olarak değerlendirilir.Read-probe diagnostics are limited by gateway scopes (missing operator.read)→ bağlantı çalıştı, ancak ayrıntı RPC kapsamla sınırlı; cihaz kimliğini eşleştirin veyaoperator.readiçeren kimlik bilgilerini kullanın.Gateway accepted the WebSocket connection, but follow-up read diagnostics failed→ bağlantı çalıştı, ancak tam tanılama RPC seti zaman aşımına uğradı veya başarısız oldu. Bunu, tanılamaları zayıflamış ulaşılabilir bir Gateway olarak değerlendirin;--jsonçıktısındaconnect.okveconnect.rpcOkdeğerlerini karşılaştırın.Capability: pairing-pendingveyagateway closed (1008): pairing required→ Gateway yanıt verdi, ancak bu istemcinin normal operator erişiminden önce hâlâ eşleştirme/onaya ihtiyacı var.- çözümlenmemiş
gateway.auth.*/gateway.remote.*SecretRef uyarı metni → başarısız hedef için bu komut yolunda auth materyali kullanılamıyordu.
İlgili:
Kanal bağlı, mesajlar akmıyor
Kanal durumu bağlıysa ancak mesaj akışı durmuşsa, policy, izinler ve kanala özgü teslim kurallarına odaklanın.
openclaw channels status --probeopenclaw pairing list --channel <channel> [--account <id>]openclaw status --deepopenclaw logs --followopenclaw config get channelsŞunları arayın:
- DM policy (
pairing,allowlist,open,disabled). - Grup allowlist'i ve bahsetme gereksinimleri.
- Eksik kanal API izinleri/kapsamları.
Yaygın belirtiler:
mention required→ mesaj grup bahsetme policy'si tarafından yok sayıldı.pairing/ bekleyen onay izleri → gönderen onaylı değil.missing_scope,not_in_channel,Forbidden,401/403→ kanal auth/izin sorunu.
İlgili:
Cron ve Heartbeat teslimi
Cron veya Heartbeat çalışmadıysa ya da teslim etmediyse, önce zamanlayıcı durumunu, sonra teslim hedefini doğrulayın.
openclaw cron statusopenclaw cron listopenclaw cron runs --id <jobId> --limit 20openclaw system heartbeat lastopenclaw logs --followŞunları arayın:
- Cron etkin ve sonraki uyanma mevcut.
- İş çalıştırma geçmişi durumu (
ok,skipped,error). - Heartbeat atlama nedenleri (
quiet-hours,requests-in-flight,cron-in-progress,lanes-busy,alerts-disabled,empty-heartbeat-file,no-tasks-due).
Common signatures
cron: scheduler disabled; jobs will not run automatically→ cron devre dışı.cron: timer tick failed→ zamanlayıcı tik işlemi başarısız oldu; dosya/günlük/çalışma zamanı hatalarını kontrol edin.heartbeat skippedvereason=quiet-hours→ etkin saatler penceresinin dışında.heartbeat skippedvereason=empty-heartbeat-file→HEARTBEAT.mdvar ancak yalnızca boşluk, yorum, başlık, fence veya boş kontrol listesi iskeleti içeriyor; bu yüzden OpenClaw model çağrısını atlar.heartbeat skippedvereason=no-tasks-due→HEARTBEAT.mdbirtasks:bloğu içeriyor, ancak bu tikte hiçbir görevin zamanı gelmemiş.heartbeat: unknown accountId→ Heartbeat teslim hedefi için geçersiz hesap kimliği.heartbeat skippedvereason=dm-blocked→ Heartbeat hedefi DM tarzı bir hedefe çözümlenirkenagents.defaults.heartbeat.directPolicy(veya ajan bazlı geçersiz kılma)blockolarak ayarlanmış.
İlgili:
Node eşleştirilmiş, araç başarısız oluyor
Bir Node eşleştirilmiş ancak araçlar başarısız oluyorsa ön plan, izin ve onay durumunu yalıtın.
openclaw nodes statusopenclaw nodes describe --node <idOrNameOrIp>openclaw approvals get --node <idOrNameOrIp>openclaw logs --followopenclaw statusŞunları arayın:
- Beklenen yeteneklerle Node çevrim içi.
- Kamera/mikrofon/konum/ekran için işletim sistemi izinleri.
- Exec onayları ve izin listesi durumu.
Yaygın imzalar:
NODE_BACKGROUND_UNAVAILABLE→ Node uygulaması ön planda olmalıdır.*_PERMISSION_REQUIRED/LOCATION_PERMISSION_REQUIRED→ işletim sistemi izni eksik.SYSTEM_RUN_DENIED: approval required→ exec onayı bekliyor.SYSTEM_RUN_DENIED: allowlist miss→ komut izin listesi tarafından engellendi.
İlgili:
Tarayıcı aracı başarısız oluyor
Gateway sağlıklı olsa bile tarayıcı aracı eylemleri başarısız olduğunda bunu kullanın.
openclaw browser statusopenclaw browser start --browser-profile openclawopenclaw browser profilesopenclaw logs --followopenclaw doctorŞunları arayın:
plugins.allowayarlanmış mı vebrowseriçeriyor mu.- Geçerli tarayıcı çalıştırılabilir dosya yolu.
- CDP profil erişilebilirliği.
existing-session/userprofilleri için yerel Chrome kullanılabilirliği.
Plugin / executable signatures
unknown command "browser"veyaunknown command 'browser'→ paketlenmiş tarayıcı Plugin'iplugins.allowtarafından hariç tutulmuş.browser.enabled=trueiken tarayıcı aracı eksik / kullanılamaz →plugins.allow,browseröğesini hariç tutuyor; bu yüzden Plugin hiç yüklenmedi.Failed to start Chrome CDP on port→ tarayıcı işlemi başlatılamadı.browser.executablePath not found→ yapılandırılmış yol geçersiz.browser.cdpUrl must be http(s) or ws(s)→ yapılandırılmış CDP URL'sifile:veyaftp:gibi desteklenmeyen bir şema kullanıyor.browser.cdpUrl has invalid port→ yapılandırılmış CDP URL'si hatalı veya aralık dışında bir bağlantı noktasına sahip.Playwright is not available in this gateway build; '<feature>' is unsupported.→ geçerli Gateway kurulumu çekirdek tarayıcı çalışma zamanı bağımlılığından yoksun; OpenClaw'ı yeniden kurun veya güncelleyin, ardından Gateway'i yeniden başlatın. ARIA anlık görüntüleri ve temel sayfa ekran görüntüleri yine çalışabilir, ancak gezinme, AI anlık görüntüleri, CSS seçici öğe ekran görüntüleri ve PDF dışa aktarma kullanılamaz kalır.
Chrome MCP / existing-session signatures
Could not find DevToolsActivePort for chrome→ Chrome MCP existing-session henüz seçili tarayıcı veri dizinine bağlanamadı. Tarayıcı inceleme sayfasını açın, uzaktan hata ayıklamayı etkinleştirin, tarayıcıyı açık tutun, ilk bağlanma istemini onaylayın ve yeniden deneyin. Oturum açılmış durum gerekmiyorsa yönetilenopenclawprofilini tercih edin.No Chrome tabs found for profile="user"→ Chrome MCP bağlanma profilinde açık yerel Chrome sekmesi yok.Remote CDP for profile "<name>" is not reachable→ yapılandırılmış uzak CDP uç noktasına Gateway ana makinesinden erişilemiyor.Browser attachOnly is enabled ... not reachableveyaBrowser attachOnly is enabled and CDP websocket ... is not reachable→ yalnızca bağlanma profili için erişilebilir hedef yok veya HTTP uç noktası yanıt verdi ancak CDP WebSocket yine de açılamadı.
Element / screenshot / upload signatures
fullPage is not supported for element screenshots→ ekran görüntüsü isteği--full-pageile--refveya--elementöğesini birlikte kullandı.element screenshots are not supported for existing-session profiles; use ref from snapshot.→ Chrome MCP /existing-sessionekran görüntüsü çağrıları CSS--elementdeğil, sayfa yakalama veya anlık görüntü--refkullanmalıdır.existing-session file uploads do not support element selectors; use ref/inputRef.→ Chrome MCP yükleme hook'ları CSS seçicileri değil, anlık görüntü ref'leri gerektirir.existing-session file uploads currently support one file at a time.→ Chrome MCP profillerinde çağrı başına bir yükleme gönderin.existing-session dialog handling does not support timeoutMs.→ Chrome MCP profillerindeki iletişim kutusu hook'ları zaman aşımı geçersiz kılmalarını desteklemez.existing-session type does not support timeoutMs overrides.→profile="user"/ Chrome MCP existing-session profillerindeact:typeiçintimeoutMsöğesini atlayın veya özel zaman aşımı gerektiğinde yönetilen/CDP tarayıcı profili kullanın.existing-session evaluate does not support timeoutMs overrides.→profile="user"/ Chrome MCP existing-session profillerindeact:evaluateiçintimeoutMsöğesini atlayın veya özel zaman aşımı gerektiğinde yönetilen/CDP tarayıcı profili kullanın.response body is not supported for existing-session profiles yet.→responsebodyhâlâ yönetilen tarayıcı veya ham CDP profili gerektirir.- yalnızca bağlanma veya uzak CDP profillerinde eski kalmış görünüm alanı / koyu mod / yerel ayar / çevrim dışı geçersiz kılmaları → etkin kontrol oturumunu kapatmak ve tüm Gateway'i yeniden başlatmadan Playwright/CDP öykünme durumunu serbest bırakmak için
openclaw browser stop --browser-profile <name>çalıştırın.
İlgili:
Yükselttiyseniz ve bir şey aniden bozulduysa
Yükseltme sonrası bozulmaların çoğu yapılandırma sapması veya artık uygulanan daha katı varsayılanlardan kaynaklanır.
1. Auth and URL override behavior changed
openclaw gateway statusopenclaw config get gateway.modeopenclaw config get gateway.remote.urlopenclaw config get gateway.auth.modeKontrol edilecekler:
gateway.mode=remoteise CLI çağrıları, yerel hizmetiniz sorunsuzken uzağı hedefliyor olabilir.- Açık
--urlçağrıları kayıtlı kimlik bilgilerine geri dönmez.
Yaygın imzalar:
gateway connect failed:→ yanlış URL hedefi.unauthorized→ uç nokta erişilebilir ancak auth yanlış.
2. Bind and auth guardrails are stricter
openclaw config get gateway.bindopenclaw config get gateway.auth.modeopenclaw config get gateway.auth.tokenopenclaw gateway statusopenclaw logs --followKontrol edilecekler:
- local loopback olmayan bağlamalar (
lan,tailnet,custom) geçerli bir Gateway auth yolu gerektirir: paylaşılan token/parola auth ya da doğru yapılandırılmış local loopback olmayantrusted-proxydağıtımı. gateway.tokengibi eski anahtarlargateway.auth.tokenyerine geçmez.
Yaygın imzalar:
refusing to bind gateway ... without auth→ geçerli Gateway auth yolu olmadan local loopback olmayan bağlama.- Çalışma zamanı çalışırken
Connectivity probe: failed→ Gateway canlı ancak geçerli auth/url ile erişilemez.
3. Pairing and device identity state changed
openclaw devices listopenclaw pairing list --channel <channel> [--account <id>]openclaw logs --followopenclaw doctorKontrol edilecekler:
- Pano/Node'lar için bekleyen cihaz onayları.
- İlke veya kimlik değişikliklerinden sonra bekleyen DM eşleştirme onayları.
Yaygın imzalar:
device identity required→ cihaz auth koşulu sağlanmamış.pairing required→ gönderen/cihaz onaylanmalıdır.
Kontrollerden sonra hizmet yapılandırması ve çalışma zamanı hâlâ uyuşmuyorsa hizmet meta verilerini aynı profil/durum dizininden yeniden kurun:
openclaw gateway install --forceopenclaw gateway restartİlgili: