> ## 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.

# WebChat (macOS)

Приложение для строки меню macOS встраивает интерфейс WebChat как нативное представление SwiftUI. Оно подключается к Gateway и по умолчанию использует основной сеанс выбранного агента (`main` или `global`, когда `session.scope` имеет значение `global`).

Полное окно чата представляет собой нативное разделённое представление:

* **Боковая панель сеансов**: список сеансов с поиском, разделами закреплённых и недавних сеансов, индикаторами непрочитанных сообщений и контекстными меню для закрепления и открепления, копирования ключа сеанса и удаления. Кнопка на панели инструментов (или Cmd-N) создаёт настоящий новый сеанс через `sessions.create`.
* **Панель инструментов окна**: кольцевой индикатор использования контекста (токены и стоимость сеанса, с компактным действием), средство выбора уровня рассуждений, средство выбора модели и меню действий с сеансом (новый сеанс, обновление, копирование ключа сеанса, экспорт расшифровки, Compaction, очистка истории).
* **Расшифровка и редактор сообщения**: сообщения ассистента отображаются как обычный текст с аватаром, а сообщения пользователя — как акцентные облачка. При вводе `/` открывается автодополнение слеш-команд на основе `commands.list` с навигацией с клавиатуры с помощью стрелок, Tab, Return и Escape. Чтобы скопировать сообщение, щёлкните его правой кнопкой мыши.

Закреплённая панель быстрого чата из строки меню сохраняет компактную одноколоночную компоновку со встроенными средствами выбора.

* **Локальный режим**: подключается непосредственно к локальному WebSocket Gateway.
* **Удалённый режим**: перенаправляет управляющий порт Gateway через SSH и использует этот туннель как канал передачи данных.

## Запуск и отладка

* Вручную: меню Lobster -> "Open Chat".

* Автоматическое открытие для тестирования:

  ```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
  dist/OpenClaw.app/Contents/MacOS/OpenClaw --chat
  ```

  (`--webchat` поддерживается как устаревший псевдоним.)

* Журналы: `./scripts/clawlog.sh` (подсистема `ai.openclaw`, категория `WebChatSwiftUI`).

## Схема подключения

* Канал передачи данных: методы WS Gateway `chat.history`, `chat.send`, `chat.abort`, `chat.inject` и события `chat`, `agent`, `presence`, `tick`, `health`.
* `chat.history` возвращает нормализованную для отображения расшифровку: встроенные теги директив удаляются из видимого текста; XML-данные вызовов инструментов в виде обычного текста (`<tool_call>`, `<function_call>`, `<tool_calls>`, `<function_calls>`, включая усечённые блоки) и попавшие в вывод управляющие токены модели удаляются; строки ассистента, содержащие только служебный токен молчания, например точное значение `NO_REPLY`/`no_reply`, пропускаются; слишком большие строки могут заменяться усечённым заполнителем.
* Сеанс: по умолчанию используется основной сеанс, как описано выше; интерфейс позволяет переключаться между сеансами.
* Для первоначальной настройки используется отдельный сеанс, чтобы отделить её от обычной работы.
* Автономный кеш: приложение хранит небольшой кеш только для чтения с недавними сеансами чата и расшифровками для каждого Gateway (`~/Library/Application Support/OpenClaw/chat-cache.sqlite`). При холодном запуске сразу отображается последняя известная расшифровка, которая обновляется после ответа Gateway; недавние чаты остаются доступными для просмотра без подключения, но отправка сообщений отключена до его восстановления.

## Область безопасности

* В удалённом режиме через SSH перенаправляется только управляющий порт WebSocket Gateway.

## Известные ограничения

* Интерфейс оптимизирован для сеансов чата, а не для использования в качестве полноценной браузерной песочницы.

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

* [WebChat](https://docs2.openclaw.ai/ru/web/webchat.md)
* [Приложение для macOS](https://docs2.openclaw.ai/ru/platforms/macos.md)
