> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Панель управления

Панель управления Gateway — это браузерный интерфейс управления, который по умолчанию доступен по адресу `/` (можно переопределить с помощью `gateway.controlUi.basePath`).

Быстрое открытие (локальный Gateway):

* [http://127.0.0.1:18789/](http://127.0.0.1:18789/) (или [http://localhost:18789/](http://localhost:18789/))
* При использовании `gateway.tls.enabled: true` укажите `https://127.0.0.1:18789/` и `wss://127.0.0.1:18789` для конечной точки WebSocket.

Основные справочные материалы:

* [Интерфейс управления](https://docs2.openclaw.ai/ru/web/control-ui.md) — использование и возможности интерфейса.
* [Tailscale](https://docs2.openclaw.ai/ru/gateway/tailscale.md) — автоматизация Serve/Funnel.
* [Веб-интерфейсы](https://docs2.openclaw.ai/ru/web.md) — режимы привязки и примечания по безопасности.

Аутентификация выполняется при установлении соединения WebSocket через настроенный способ аутентификации Gateway:

* `connect.params.auth.token`
* `connect.params.auth.password`
* заголовки идентификации Tailscale Serve при `gateway.auth.allowTailscale: true`
* заголовки идентификации доверенного прокси при `gateway.auth.mode: "trusted-proxy"`

См. `gateway.auth` в разделе [Конфигурация Gateway](https://docs2.openclaw.ai/ru/gateway/configuration.md).

> [!WARNING]
>
> Интерфейс управления — это **административный интерфейс** (чат, конфигурация, подтверждения выполнения команд). Не публикуйте его в открытом доступе. Интерфейс хранит токены URL панели управления в sessionStorage для текущей вкладки браузера и выбранного URL Gateway и удаляет их из URL после загрузки. Предпочтительно использовать localhost, Tailscale Serve или туннель SSH.

## Быстрый способ (рекомендуется)

* После первоначальной настройки CLI автоматически открывает панель управления и выводит чистую ссылку (без токена).
* Чтобы открыть её повторно в любое время, используйте `openclaw dashboard` (команда копирует ссылку, по возможности открывает браузер и выводит подсказку по SSH в среде без графического интерфейса).
* Если не удалось ни скопировать ссылку в буфер обмена, ни открыть её в браузере, `openclaw dashboard` всё равно выводит чистый URL и предлагает добавить токен (из `OPENCLAW_GATEWAY_TOKEN` или `gateway.auth.token`) в качестве ключа фрагмента URL `token`; значение токена никогда не выводится в журналы.
* Если интерфейс запрашивает аутентификацию с помощью общего секрета, вставьте настроенный токен или пароль в настройках интерфейса управления.

## Основы аутентификации (локальный и удалённый доступ)

* **Localhost**: откройте `http://127.0.0.1:18789/`.
* **TLS Gateway**: при `gateway.tls.enabled: true` ссылки панели управления и состояния используют `https://`, а ссылки WebSocket интерфейса управления — `wss://`.
* **Источник токена общего секрета**: `gateway.auth.token` (или `OPENCLAW_GATEWAY_TOKEN`). `openclaw dashboard` может передать его через фрагмент URL для однократной первоначальной настройки; интерфейс управления хранит его в sessionStorage для текущей вкладки и выбранного URL Gateway, а не в localStorage.
* Если `gateway.auth.token` управляется через SecretRef, `openclaw dashboard` намеренно выводит, копирует и открывает URL без токена, чтобы не раскрывать токены, управляемые внешней системой, в журналах оболочки, истории буфера обмена или аргументах запуска браузера. Если ссылка не разрешается в текущей оболочке, команда всё равно выводит URL без токена и практические инструкции по настройке аутентификации.
* **Пароль общего секрета**: используйте настроенный `gateway.auth.password` (или `OPENCLAW_GATEWAY_PASSWORD`). Панель управления не сохраняет пароли между перезагрузками.
* **Режимы с передачей идентификационных данных**: Tailscale Serve обеспечивает аутентификацию интерфейса управления и WebSocket через заголовки идентификации при `gateway.auth.allowTailscale: true`; обратный прокси вне loopback с поддержкой идентификации обеспечивает `gateway.auth.mode: "trusted-proxy"`. Ни один из этих режимов не требует вставки общего секрета для WebSocket.
* **Не localhost**: используйте Tailscale Serve, привязку вне loopback с общим секретом, обратный прокси вне loopback с поддержкой идентификации и `gateway.auth.mode: "trusted-proxy"` либо туннель SSH. HTTP API по-прежнему используют аутентификацию с помощью общего секрета, если вы намеренно не настроили частный входящий трафик `gateway.auth.mode: "none"` или HTTP-аутентификацию доверенного прокси. См. [Веб-интерфейсы](https://docs2.openclaw.ai/ru/web.md).

## Открытие в Telegram

Боты Telegram могут открывать панель управления как мини-приложение Telegram с помощью `/dashboard`.

Требования:

* `gateway.tailscale.mode: "serve"` или `"funnel"`, чтобы Telegram получил HTTPS URL мини-приложения.
* Отправитель в Telegram должен быть владельцем бота: числовой идентификатор пользователя Telegram в `commands.ownerAllowFrom` или действующее значение `channels.telegram.allowFrom` выбранной учётной записи.
* Выполните `/dashboard` в личной переписке с ботом. При вызове в группе отображается только указание открыть команду в личной переписке, без кнопки.
* Установки Docker: в режимах Serve/Funnel Gateway должен быть привязан к loopback рядом с `tailscaled`, что невозможно обеспечить при использовании сетевого моста с опубликованными портами. Запустите контейнер Gateway с `network_mode: host` и подключите к контейнеру сокет хоста `tailscaled` (`/var/run/tailscale`), а также CLI `tailscale`.

Мини-приложение выполняет однократную передачу владельцу и перенаправляет в интерфейс управления с краткосрочным токеном первоначальной настройки. Общий токен Gateway не раскрывается в URL.

Что не входит в задачи версии v1:

* Веб-iframe Telegram не поддерживается.
* Tailscale Serve/Funnel — единственный поддерживаемый способ публикации URL.

## Если отображается «unauthorized» / 1008

* Убедитесь, что Gateway доступен: локально — `openclaw status`; удалённо — создайте туннель SSH с помощью `ssh -N -L 18789:127.0.0.1:18789 user@gateway-host`, затем откройте `http://127.0.0.1:18789/`.
* Для `AUTH_TOKEN_MISMATCH` клиенты могут выполнить одну доверенную повторную попытку с кэшированным токеном устройства, если Gateway возвращает указания для повторной попытки; при этом повторно используются кэшированные утверждённые области действия токена (явные вызывающие стороны `deviceToken`/`scopes` сохраняют запрошенный набор областей действия). Если после этой повторной попытки аутентификация всё ещё завершается ошибкой, устраните рассинхронизацию токена вручную.
* Для `AUTH_SCOPE_MISMATCH` токен устройства распознан, но не содержит запрошенных областей действия; вместо смены общего токена Gateway повторно выполните сопряжение или утвердите новый набор областей действия.
* Вне этого механизма повторной попытки приоритет аутентификации при подключении следующий: явно указанный общий токен или пароль, затем явно указанный `deviceToken`, затем сохранённый токен устройства и затем токен первоначальной настройки.
* В асинхронном пути Tailscale Serve неудачные попытки для одного и того же `{scope, ip}` сериализуются до их регистрации ограничителем неудачной аутентификации, поэтому вторая одновременная неудачная повторная попытка уже может показать `retry later`.
* Инструкции по устранению рассинхронизации токена см. в [контрольном списке восстановления после рассинхронизации токена](https://docs2.openclaw.ai/ru/cli/devices.md#token-drift-recovery-checklist).
* Получите или укажите общий секрет на хосте Gateway:
  * Токен: `openclaw config get gateway.auth.token`
  * Пароль: разрешите настроенный `gateway.auth.password` или `OPENCLAW_GATEWAY_PASSWORD`
  * Токен, управляемый через SecretRef: разрешите значение во внешнем поставщике секретов либо экспортируйте `OPENCLAW_GATEWAY_TOKEN` в этой оболочке и повторно выполните `openclaw dashboard`
  * Общий секрет не настроен: `openclaw doctor --generate-gateway-token`
* В настройках панели управления вставьте токен или пароль в поле аутентификации, затем подключитесь.
* Выбор языка интерфейса находится в **Settings -> General -> Language**, а не в Appearance.

## Связанные материалы

* [Интерфейс управления](https://docs2.openclaw.ai/ru/web/control-ui.md)
* [Веб-чат](https://docs2.openclaw.ai/ru/web/webchat.md)
