ویب (Gateway)¶
Gateway، Gateway WebSocket کے اسی پورٹ سے ایک چھوٹا براؤزر کنٹرول UI (Vite + Lit) فراہم کرتا ہے:
- بطورِ طے شدہ:
http://<host>:18789/ - اختیاری سابقہ:
gateway.controlUi.basePathسیٹ کریں (مثلاً/openclaw)
صلاحیتیں Control UI میں موجود ہیں۔ یہ صفحہ bind موڈز، سیکیورٹی، اور ویب پر ظاہر ہونے والی سرفیسز پر توجہ دیتا ہے۔
ویب ہُکس¶
جب hooks.enabled=true ہو تو Gateway اسی HTTP سرور پر ایک چھوٹا webhook endpoint بھی فراہم کرتا ہے۔
تصدیق اور payloads کے لیے Gateway configuration → hooks دیکھیں۔
کنفیگ (بطورِ طے شدہ فعال)¶
جب assets موجود ہوں (dist/control-ui) تو Control UI بطورِ ڈیفالٹ فعال ہوتا ہے۔
آپ اسے کنفیگ کے ذریعے کنٹرول کر سکتے ہیں:
{
gateway: {
controlUi: { enabled: true, basePath: "/openclaw" }, // basePath optional
},
}
Tailscale رسائی¶
Integrated Serve (سفارش کردہ)¶
Gateway کو loopback پر رکھیں اور Tailscale Serve کے ذریعے اسے پراکسی کریں:
{
gateway: {
bind: "loopback",
tailscale: { mode: "serve" },
},
}
پھر gateway شروع کریں:
openclaw gateway
کھولیں:
https://<magicdns>/(یا آپ کی کنفیگر کردہgateway.controlUi.basePath)
Tailnet بائنڈ + ٹوکن¶
{
gateway: {
bind: "tailnet",
controlUi: { enabled: true },
auth: { mode: "token", token: "your-token" },
},
}
پھر gateway شروع کریں (non-loopback بائنڈز کے لیے ٹوکن درکار ہے):
openclaw gateway
کھولیں:
http://<tailscale-ip>:18789/(یا آپ کی کنفیگر کردہgateway.controlUi.basePath)
عوامی انٹرنیٹ (Funnel)¶
{
gateway: {
bind: "loopback",
tailscale: { mode: "funnel" },
auth: { mode: "password" }, // or OPENCLAW_GATEWAY_PASSWORD
},
}
سکیورٹی نوٹس¶
- Gateway تصدیق بطورِ طے شدہ درکار ہے (ٹوکن/پاس ورڈ یا Tailscale شناختی ہیڈرز)۔
- non-loopback بائنڈز اب بھی لازم طور پر مشترکہ ٹوکن/پاس ورڈ چاہتے ہیں (
gateway.authیا env)۔ - وزارڈ بطورِ طے شدہ ایک gateway ٹوکن تیار کرتا ہے (loopback پر بھی)۔
- UI
connect.params.auth.tokenیاconnect.params.auth.passwordبھیجتا ہے۔ - کنٹرول UI اینٹی کلک جیکنگ ہیڈرز بھیجتا ہے اور صرف same-origin براؤزر
WebSocket کنکشنز قبول کرتا ہے، الا یہ کہ
gateway.controlUi.allowedOriginsسیٹ ہو۔ - Serve کے ساتھ، جب
gateway.auth.allowTailscaletrueہو تو Tailscale شناختی ہیڈرز تصدیق کو پورا کر سکتے ہیں (token/password درکار نہیں)۔ واضح اسناد کی ضرورت کے لیےgateway.auth.allowTailscale: falseسیٹ کریں۔ Tailscale اور Security دیکھیں۔ gateway.tailscale.mode: "funnel"کے لیےgateway.auth.mode: "password"(مشترکہ پاس ورڈ) درکار ہے۔
UI بنانا¶
Gateway جامد فائلیں dist/control-ui سے فراہم کرتا ہے۔ انہیں اس طرح بنائیں:
pnpm ui:build # auto-installs UI deps on first run