Web (Gateway)¶
Gateway, Gateway WebSocket ile aynı porttan küçük bir tarayıcı Kontrol UI (Vite + Lit) sunar:
- varsayılan:
http://<host>:18789/ - isteğe bağlı önek:
gateway.controlUi.basePathayarlayın (örn./openclaw)
Yetenekler Kontrol UI içinde yer alır. Bu sayfa bağlama modları, güvenlik ve web’e açık yüzeylere odaklanır.
Webhook’lar¶
hooks.enabled=true olduğunda, Gateway aynı HTTP sunucusunda küçük bir webhook uç noktası da sunar.
Kimlik doğrulama ve yükler için Gateway yapılandırması → hooks bölümüne bakın.
Yapılandırma (varsayılan olarak açık)¶
Varlıklar mevcut olduğunda (dist/control-ui) Kontrol UI varsayılan olarak etkindir.
Yapılandırma ile denetleyebilirsiniz:
{
gateway: {
controlUi: { enabled: true, basePath: "/openclaw" }, // basePath optional
},
}
Tailscale erişimi¶
Entegre Serve (önerilen)¶
Gateway’i loopback üzerinde tutun ve Tailscale Serve’in proxy’lemesine izin verin:
{
gateway: {
bind: "loopback",
tailscale: { mode: "serve" },
},
}
Ardından gateway’i başlatın:
openclaw gateway
Açın:
https://<magicdns>/(veya yapılandırılmışgateway.controlUi.basePath)
Tailnet bağlama + belirteç¶
{
gateway: {
bind: "tailnet",
controlUi: { enabled: true },
auth: { mode: "token", token: "your-token" },
},
}
Ardından gateway’i başlatın (loopback olmayan bağlamalar için belirteç gerekir):
openclaw gateway
Açın:
http://<tailscale-ip>:18789/(veya yapılandırılmışgateway.controlUi.basePath)
Genel internet (Funnel)¶
{
gateway: {
bind: "loopback",
tailscale: { mode: "funnel" },
auth: { mode: "password" }, // or OPENCLAW_GATEWAY_PASSWORD
},
}
Güvenlik notları¶
- Gateway kimlik doğrulaması varsayılan olarak gereklidir (belirteç/parola veya Tailscale kimlik başlıkları).
- Loopback olmayan bağlamalar yine de paylaşılan bir belirteç/parola gerektirir (
gateway.authveya ortam değişkeni). - Sihirbaz varsayılan olarak bir gateway belirteci üretir (loopback’te bile).
- UI,
connect.params.auth.tokenveyaconnect.params.auth.passwordgönderir. - Kontrol UI, anti-clickjacking başlıkları gönderir ve
gateway.controlUi.allowedOriginsayarlanmadıkça yalnızca aynı kaynaklı tarayıcı websocket bağlantılarını kabul eder. - Serve ile,
gateway.auth.allowTailscaletrueolduğunda Tailscale kimlik başlıkları kimlik doğrulamayı karşılayabilir (belirteç/parola gerekmez). Açık kimlik bilgilerini zorunlu kılmak içingateway.auth.allowTailscale: falseayarlayın. Tailscale ve Güvenlik bölümlerine bakın. gateway.tailscale.mode: "funnel",gateway.auth.mode: "password"(paylaşılan parola) gerektirir.
UI’yi derleme¶
Gateway, statik dosyaları dist/control-ui konumundan sunar. Şu komutla derleyin:
pnpm ui:build # auto-installs UI deps on first run