Ana içeriğe atla

Gateway runbook

Gateway hizmetinin ilk gün başlatılması ve sonraki operasyonları için bu sayfayı kullanın.

Derin sorun giderme

Belirti odaklı tanılama; tam komut sıraları ve log imzalarıyla.

Yapılandırma

Görev odaklı kurulum kılavuzu + tam yapılandırma referansı.

Secrets yönetimi

SecretRef sözleşmesi, çalışma zamanı snapshot davranışı ve migrate/reload işlemleri.

Secrets plan sözleşmesi

Tam secrets apply hedef/yol kuralları ve yalnızca ref kullanan auth-profile davranışı.

5 dakikalık yerel başlangıç

1

Gateway'i başlat

openclaw gateway --port 18789
# debug/trace stdio'ya yansıtılır
openclaw gateway --port 18789 --verbose
# seçilen porttaki dinleyiciyi zorla sonlandır, sonra başlat
openclaw gateway --force
2

Hizmet sağlığını doğrula

openclaw gateway status
openclaw status
openclaw logs --follow
Sağlıklı temel durum: Runtime: running ve RPC probe: ok.
3

Kanal hazır oluşunu doğrula

openclaw channels status --probe
Erişilebilir bir gateway ile bu, hesap başına canlı kanal problarını ve isteğe bağlı denetimleri çalıştırır. Gateway’e ulaşılamazsa, CLI canlı prob çıktısı yerine yalnızca yapılandırma tabanlı kanal özetlerine geri düşer.
Gateway config reload, etkin config dosyası yolunu izler (profil/durum varsayılanlarından çözülür veya ayarlanmışsa OPENCLAW_CONFIG_PATH kullanılır). Varsayılan mod gateway.reload.mode="hybrid" şeklindedir. İlk başarılı yüklemeden sonra çalışan süreç, etkin bellek içi config snapshot’unu sunar; başarılı bir reload bu snapshot’u atomik olarak değiştirir.

Çalışma zamanı modeli

  • Yönlendirme, kontrol düzlemi ve kanal bağlantıları için sürekli çalışan tek bir süreç.
  • Şunlar için tek, çoklamalı port:
    • WebSocket kontrol/RPC
    • HTTP API’leri, OpenAI uyumlu (/v1/models, /v1/embeddings, /v1/chat/completions, /v1/responses, /tools/invoke)
    • Control UI ve hook’lar
  • Varsayılan bind modu: loopback.
  • Varsayılan olarak auth gereklidir. Ortak gizli anahtar kullanan kurulumlar gateway.auth.token / gateway.auth.password (veya OPENCLAW_GATEWAY_TOKEN / OPENCLAW_GATEWAY_PASSWORD) kullanır; loopback olmayan reverse-proxy kurulumları ise gateway.auth.mode: "trusted-proxy" kullanabilir.

OpenAI uyumlu uç noktalar

OpenClaw’un en yüksek etkili uyumluluk yüzeyi artık şudur:
  • GET /v1/models
  • GET /v1/models/{id}
  • POST /v1/embeddings
  • POST /v1/chat/completions
  • POST /v1/responses
Bu kümenin önemli olma nedeni:
  • Çoğu Open WebUI, LobeChat ve LibreChat entegrasyonu önce /v1/models yolunu prob eder.
  • Birçok RAG ve bellek pipeline’ı /v1/embeddings bekler.
  • Aracı odaklı istemciler giderek daha fazla /v1/responses tercih ediyor.
Planlama notu:
  • /v1/models önce aracı yaklaşımını benimser: openclaw, openclaw/default ve openclaw/<agentId> döndürür.
  • openclaw/default, yapılandırılmış varsayılan aracıya her zaman eşlenen kararlı takma addır.
  • Bir backend sağlayıcı/model geçersiz kılması istediğinizde x-openclaw-model kullanın; aksi takdirde seçili aracının normal model ve embedding kurulumu kontrolü elinde tutar.
Bunların tümü ana Gateway portunda çalışır ve Gateway HTTP API’sinin geri kalanıyla aynı güvenilir operatör auth sınırını kullanır.

Port ve bind önceliği

AyarÇözümleme sırası
Gateway port--portOPENCLAW_GATEWAY_PORTgateway.port18789
Bind moduCLI/override → gateway.bindloopback

Hot reload modları

gateway.reload.modeDavranış
offConfig reload yok
hotYalnızca hot-safe değişiklikleri uygula
restartReload gerektiren değişikliklerde yeniden başlat
hybrid (varsayılan)Güvenliyse hot-apply, gerekliyse yeniden başlat

Operatör komut kümesi

openclaw gateway status
openclaw gateway status --deep   # sistem düzeyinde hizmet taraması ekler
openclaw gateway status --json
openclaw gateway install
openclaw gateway restart
openclaw gateway stop
openclaw secrets reload
openclaw logs --follow
openclaw doctor
gateway status --deep, daha derin bir RPC sağlık probu için değil, ek hizmet keşfi (LaunchDaemons/systemd system birimleri/schtasks) içindir.

Birden fazla gateway (aynı host)

Çoğu kurulum makine başına tek bir gateway çalıştırmalıdır. Tek bir gateway birden çok aracı ve kanalı barındırabilir. Yalnızca özellikle yalıtım veya bir kurtarma botu istediğinizde birden fazla gateway gerekir. Yararlı kontroller:
openclaw gateway status --deep
openclaw gateway probe
Beklenmesi gerekenler:
  • gateway status --deep, Other gateway-like services detected (best effort) bildirebilir ve eski launchd/systemd/schtasks kurulumları hâlâ ortadaysa temizleme ipuçları yazdırabilir.
  • gateway probe, birden fazla hedef yanıt verdiğinde multiple reachable gateways uyarısı verebilir.
  • Bu kasıtlıysa, gateway başına portları, config/state alanlarını ve workspace köklerini ayırın.
Ayrıntılı kurulum: /gateway/multiple-gateways.

Uzak erişim

Tercih edilen: Tailscale/VPN. Yedek: SSH tüneli.
ssh -N -L 18789:127.0.0.1:18789 user@host
Ardından istemcileri yerelde ws://127.0.0.1:18789 adresine bağlayın.
SSH tünelleri gateway auth’ı atlatmaz. Ortak gizli anahtar auth’ı için istemciler, tünel üzerinden bile olsa yine token/password göndermelidir. Kimlik taşıyan modlarda, istek yine de o auth yolunu karşılamak zorundadır.
Bkz.: Uzak Gateway, Kimlik Doğrulama, Tailscale.

Denetim ve hizmet yaşam döngüsü

Üretime benzer güvenilirlik için denetimli çalıştırmalar kullanın.
openclaw gateway install
openclaw gateway status
openclaw gateway restart
openclaw gateway stop
LaunchAgent etiketleri ai.openclaw.gateway (varsayılan) veya ai.openclaw.<profile> (adlandırılmış profil) şeklindedir. openclaw doctor, hizmet config kaymasını denetler ve onarır.

Tek host üzerinde birden fazla gateway

Çoğu kurulum tek Gateway çalıştırmalıdır. Birden fazlasını yalnızca katı yalıtım/yedeklilik için kullanın (örneğin bir kurtarma profili). Örnek başına kontrol listesi:
  • Benzersiz gateway.port
  • Benzersiz OPENCLAW_CONFIG_PATH
  • Benzersiz OPENCLAW_STATE_DIR
  • Benzersiz agents.defaults.workspace
Örnek:
OPENCLAW_CONFIG_PATH=~/.openclaw/a.json OPENCLAW_STATE_DIR=~/.openclaw-a openclaw gateway --port 19001
OPENCLAW_CONFIG_PATH=~/.openclaw/b.json OPENCLAW_STATE_DIR=~/.openclaw-b openclaw gateway --port 19002
Bkz.: Birden fazla gateway.

Geliştirme profili hızlı yol

openclaw --dev setup
openclaw --dev gateway --allow-unconfigured
openclaw --dev status
Varsayılanlar yalıtılmış state/config ve temel gateway portu 19001 içerir.

Protokol hızlı başvuru (operatör görünümü)

  • İlk istemci çerçevesi connect olmalıdır.
  • Gateway hello-ok snapshot’u döndürür (presence, health, stateVersion, uptimeMs, limits/policy).
  • hello-ok.features.methods / events, çağrılabilir her yardımcı rota için üretilmiş bir döküm değil, temkinli bir keşif listesidir.
  • İstekler: req(method, params)res(ok/payload|error).
  • Yaygın olaylar arasında connect.challenge, agent, chat, session.message, session.tool, sessions.changed, presence, tick, health, heartbeat, eşleştirme/onay yaşam döngüsü olayları ve shutdown bulunur.
Aracı çalıştırmaları iki aşamalıdır:
  1. Anında kabul onayı (status:"accepted")
  2. Arada akış hâlindeki agent olaylarıyla son tamamlama yanıtı (status:"ok"|"error").
Tam protokol belgeleri: Gateway Protocol.

Operasyonel kontroller

Liveness

  • WS açın ve connect gönderin.
  • Snapshot içeren hello-ok yanıtını bekleyin.

Readiness

openclaw gateway status
openclaw channels status --probe
openclaw health

Gap recovery

Olaylar yeniden oynatılmaz. Sıra boşluklarında, devam etmeden önce durumu yenileyin (health, system-presence).

Yaygın hata imzaları

İmzaOlası sorun
refusing to bind gateway ... without authGeçerli bir gateway auth yolu olmadan loopback olmayan bind
another gateway instance is already listening / EADDRINUSEPort çakışması
Gateway start blocked: set gateway.mode=localConfig uzak moda ayarlı veya hasarlı bir config içinde local-mode damgası eksik
unauthorized during connectİstemci ile gateway arasında auth uyumsuzluğu
Tam tanılama sıraları için Gateway Troubleshooting kullanın.

Güvenlik garantileri

  • Gateway protokol istemcileri, Gateway kullanılamadığında hızlı başarısız olur (örtük doğrudan kanal yedeğine düşme yok).
  • Geçersiz/connect olmayan ilk çerçeveler reddedilir ve bağlantı kapatılır.
  • Zarif kapatma, soket kapanmadan önce shutdown olayı gönderir.

İlgili: