Web interfaces
Bảng điều khiển
Bảng điều khiển Gateway là Giao diện điều khiển trên trình duyệt, mặc định được phục vụ tại /
(ghi đè bằng gateway.controlUi.basePath).
Mở nhanh (Gateway cục bộ):
- http://127.0.0.1:18789/ (hoặc http://localhost:18789/)
- Với
gateway.tls.enabled: true, dùnghttps://127.0.0.1:18789/vàwss://127.0.0.1:18789cho điểm cuối WebSocket.
Tài liệu tham khảo chính:
- Giao diện điều khiển để biết cách sử dụng và khả năng của UI.
- Tailscale cho tự động hóa Serve/Funnel.
- Các bề mặt web cho chế độ bind và ghi chú bảo mật.
Xác thực được áp dụng tại bước bắt tay WebSocket thông qua đường dẫn xác thực gateway đã cấu hình:
connect.params.auth.tokenconnect.params.auth.password- header danh tính Tailscale Serve khi
gateway.auth.allowTailscale: true - header danh tính trusted-proxy khi
gateway.auth.mode: "trusted-proxy"
Xem gateway.auth trong Cấu hình Gateway.
Ghi chú bảo mật: Giao diện điều khiển là một bề mặt quản trị (chat, cấu hình, phê duyệt exec). Không công khai nó ra Internet. UI giữ token URL của bảng điều khiển trong sessionStorage cho phiên tab trình duyệt hiện tại và URL gateway đã chọn, rồi xóa chúng khỏi URL sau khi tải. Ưu tiên localhost, Tailscale Serve hoặc đường hầm SSH.
Đường nhanh (khuyến nghị)
- Sau khi onboarding, CLI tự động mở bảng điều khiển và in một liên kết sạch (không chứa token).
- Mở lại bất cứ lúc nào:
openclaw dashboard(sao chép liên kết, mở trình duyệt nếu có thể, hiển thị gợi ý SSH nếu headless). - Nếu không thể đưa qua clipboard và trình duyệt,
openclaw dashboardvẫn in URL sạch và cho bạn biết hãy dùng token từOPENCLAW_GATEWAY_TOKENhoặcgateway.auth.tokenlàm khóa phân mảnh URLtoken; lệnh không in giá trị token trong log. - Nếu UI yêu cầu xác thực bằng bí mật dùng chung, hãy dán token hoặc mật khẩu đã cấu hình vào phần cài đặt Giao diện điều khiển.
Cơ bản về xác thực (cục bộ và từ xa)
- Localhost: mở
http://127.0.0.1:18789/. - Gateway TLS: khi
gateway.tls.enabled: true, liên kết bảng điều khiển/trạng thái dùnghttps://và liên kết WebSocket của Giao diện điều khiển dùngwss://. - Nguồn token bí mật dùng chung:
gateway.auth.token(hoặcOPENCLAW_GATEWAY_TOKEN);openclaw dashboardcó thể truyền token qua phân mảnh URL để bootstrap một lần, và Giao diện điều khiển giữ token trong sessionStorage cho phiên tab trình duyệt hiện tại và URL gateway đã chọn thay vì localStorage. - Nếu
gateway.auth.tokenđược quản lý bằng SecretRef, theo thiết kếopenclaw dashboardsẽ in/sao chép/mở một URL không chứa token. Điều này tránh để lộ token được quản lý bên ngoài trong log shell, lịch sử clipboard hoặc đối số khởi chạy trình duyệt. - Nếu
gateway.auth.tokenđược cấu hình dưới dạng SecretRef và chưa được resolve trong shell hiện tại của bạn,openclaw dashboardvẫn in một URL không chứa token cùng hướng dẫn thiết lập xác thực có thể thực hiện. - Mật khẩu bí mật dùng chung: dùng
gateway.auth.passwordđã cấu hình (hoặcOPENCLAW_GATEWAY_PASSWORD). Bảng điều khiển không lưu mật khẩu qua các lần tải lại. - Chế độ mang danh tính: Tailscale Serve có thể đáp ứng xác thực Giao diện điều khiển/WebSocket
bằng header danh tính khi
gateway.auth.allowTailscale: true, và một reverse proxy không phải loopback, nhận biết danh tính có thể đáp ứnggateway.auth.mode: "trusted-proxy". Trong các chế độ đó, bảng điều khiển không cần dán bí mật dùng chung cho WebSocket. - Không phải localhost: dùng Tailscale Serve, bind bí mật dùng chung không phải loopback, một
reverse proxy không phải loopback, nhận biết danh tính với
gateway.auth.mode: "trusted-proxy", hoặc đường hầm SSH. HTTP API vẫn dùng xác thực bằng bí mật dùng chung trừ khi bạn chủ ý chạygateway.auth.mode: "none"cho private-ingress hoặc xác thực HTTP trusted-proxy. Xem Các bề mặt web.
Nếu bạn thấy "unauthorized" / 1008
- Đảm bảo gateway có thể truy cập được (cục bộ:
openclaw status; từ xa: đường hầm SSHssh -N -L 18789:127.0.0.1:18789 user@hostrồi mởhttp://127.0.0.1:18789/). - Với
AUTH_TOKEN_MISMATCH, client có thể thực hiện một lần thử lại đáng tin cậy bằng token thiết bị đã lưu trong cache khi gateway trả về gợi ý thử lại. Lần thử lại bằng token đã lưu cache đó tái sử dụng các phạm vi đã phê duyệt được lưu cache của token; caller dùngdeviceTokentường minh /scopestường minh sẽ giữ tập phạm vi đã yêu cầu. Nếu xác thực vẫn thất bại sau lần thử lại đó, hãy xử lý drift token thủ công. - Bên ngoài đường dẫn thử lại đó, thứ tự ưu tiên xác thực khi kết nối là token/mật khẩu dùng chung tường minh trước, rồi
deviceTokentường minh, rồi token thiết bị đã lưu, rồi token bootstrap. - Trên đường dẫn Giao diện điều khiển Tailscale Serve bất đồng bộ, các lần thử thất bại cho cùng
{scope, ip}được tuần tự hóa trước khi bộ giới hạn xác thực thất bại ghi nhận chúng, nên lần thử lại xấu đồng thời thứ hai có thể đã hiển thịretry later. - Để biết các bước sửa drift token, hãy làm theo Danh sách kiểm tra khôi phục drift token.
- Lấy hoặc cung cấp bí mật dùng chung từ máy chủ gateway:
- Token:
openclaw config get gateway.auth.token - Mật khẩu: resolve
gateway.auth.passwordđã cấu hình hoặcOPENCLAW_GATEWAY_PASSWORD - Token do SecretRef quản lý: resolve nhà cung cấp bí mật bên ngoài hoặc export
OPENCLAW_GATEWAY_TOKENtrong shell này, rồi chạy lạiopenclaw dashboard - Chưa cấu hình bí mật dùng chung:
openclaw doctor --generate-gateway-token
- Token:
- Trong phần cài đặt bảng điều khiển, dán token hoặc mật khẩu vào trường xác thực, rồi kết nối.
- Bộ chọn ngôn ngữ UI nằm trong Tổng quan -> Quyền truy cập Gateway -> Ngôn ngữ. Nó là một phần của thẻ truy cập, không phải mục Giao diện.