대시보드 (Control UI)

Gateway 대시보드는 기본적으로 /에서 제공되는 브라우저 Control UI입니다 (gateway.controlUi.basePath로 재정의 가능).

빠른 열기 (로컬 Gateway):

주요 참조:

인증은 connect.params.auth (토큰 또는 비밀번호)를 통해 WebSocket 핸드셰이크에서 적용됩니다. Gateway 설정gateway.auth를 참조하세요.

보안 참고: Control UI는 관리자 인터페이스입니다 (채팅, 설정, 실행 승인). 공개적으로 노출하지 마세요. UI는 현재 브라우저 탭 세션 및 선택된 게이트웨이 URL에 대해 대시보드 URL 토큰을 sessionStorage에 유지하고, 로드 후 URL에서 제거합니다. localhost, Tailscale Serve 또는 SSH 터널을 사용하세요.

빠른 경로 (권장)

  • 온보딩 후 CLI가 대시보드를 자동으로 열고 깨끗한(토큰 없는) 링크를 출력합니다.
  • 언제든지 다시 열기: openclaw dashboard (링크 복사, 가능하면 브라우저 열기, 헤드리스인 경우 SSH 힌트 표시).
  • UI에서 인증을 요청하면, gateway.auth.token (또는 OPENCLAW_GATEWAY_TOKEN)의 토큰을 Control UI 설정에 붙여넣으세요.

토큰 기본 (로컬 vs 원격)

  • Localhost: http://127.0.0.1:18789/를 열기.
  • 토큰 출처: gateway.auth.token (또는 OPENCLAW_GATEWAY_TOKEN); openclaw dashboard는 일회성 부트스트랩을 위해 URL 프래그먼트를 통해 전달할 수 있으며, Control UI는 localStorage 대신 현재 브라우저 탭 세션 및 선택된 게이트웨이 URL에 대해 sessionStorage에 유지합니다.
  • gateway.auth.token이 SecretRef로 관리되는 경우, openclaw dashboard는 설계상 토큰 없는 URL을 출력/복사/열기합니다. 이는 외부 관리 토큰이 셸 로그, 클립보드 이력 또는 브라우저 실행 인수에 노출되는 것을 방지합니다.
  • gateway.auth.token이 SecretRef로 구성되어 있고 현재 셸에서 해석되지 않은 경우, openclaw dashboard는 여전히 토큰 없는 URL과 실행 가능한 인증 설정 안내를 출력합니다.
  • Localhost가 아닌 경우: Tailscale Serve (gateway.auth.allowTailscale: true이면 Control UI/WebSocket에 토큰리스, 게이트웨이 호스트 신뢰 전제; HTTP API는 여전히 토큰/비밀번호 필요), tailnet 바인딩 + 토큰 또는 SSH 터널을 사용하세요. 웹 서피스를 참조하세요.

”unauthorized” / 1008이 표시되는 경우

  • 게이트웨이에 접근 가능한지 확인하세요 (로컬: openclaw status; 원격: SSH 터널 ssh -N -L 18789:127.0.0.1:18789 user@hosthttp://127.0.0.1:18789/ 열기).
  • AUTH_TOKEN_MISMATCH의 경우, 게이트웨이가 재시도 힌트를 반환하면 클라이언트가 캐시된 디바이스 토큰으로 한 번 신뢰할 수 있는 재시도를 수행할 수 있습니다. 재시도 후에도 인증이 실패하면 토큰 불일치를 수동으로 해결하세요.
  • 토큰 불일치 복구 단계는 토큰 불일치 복구 체크리스트를 따르세요.
  • 게이트웨이 호스트에서 토큰을 가져오거나 제공하세요:
    • 평문 설정: openclaw config get gateway.auth.token
    • SecretRef 관리 설정: 외부 시크릿 프로바이더를 해석하거나 이 셸에서 OPENCLAW_GATEWAY_TOKEN을 내보낸 다음 openclaw dashboard를 재실행
    • 토큰이 설정되지 않은 경우: openclaw doctor --generate-gateway-token
  • 대시보드 설정에서 인증 필드에 토큰을 붙여넣은 다음 연결하세요.