From dc506e7d02108f924bc1b82587b56b5e712554cd Mon Sep 17 00:00:00 2001 From: "openclaw-docs-i18n[bot]" Date: Mon, 27 Apr 2026 19:49:30 +0000 Subject: [PATCH] chore(i18n): refresh uk translations --- docs/uk/web/webchat.md | 68 ++++++++++++++++++------------------------ 1 file changed, 29 insertions(+), 39 deletions(-) diff --git a/docs/uk/web/webchat.md b/docs/uk/web/webchat.md index 548ffbf73..407bc7fc5 100644 --- a/docs/uk/web/webchat.md +++ b/docs/uk/web/webchat.md @@ -1,87 +1,77 @@ --- read_when: - Налагодження або налаштування доступу до WebChat -summary: Статичний хост Loopback WebChat і використання Gateway WS для інтерфейсу чату +summary: Статичний хостинг WebChat у loopback і використання Gateway WS для інтерфейсу чату title: WebChat x-i18n: - generated_at: "2026-04-26T08:42:54Z" + generated_at: "2026-04-27T19:49:02Z" model: gpt-5.4 provider: openai - source_hash: eb64bf7771f833a6d97c1b0ad773e763422af25e85a3084519e05aa8d3d0ab69 + source_hash: d8a4fef0aab37ca82bff249c6b31eb65475f12c16dfb9b86ddd62c1a938a34f3 source_path: web/webchat.md workflow: 15 --- -Статус: інтерфейс чату macOS/iOS SwiftUI напряму взаємодіє з WebSocket Gateway. +Статус: інтерфейс чату SwiftUI для macOS/iOS напряму взаємодіє з Gateway WebSocket. ## Що це таке -- Нативний інтерфейс чату для gateway (без вбудованого браузера та без локального статичного сервера). -- Використовує ті самі сесії та правила маршрутизації, що й інші канали. +- Нативний інтерфейс чату для gateway (без вбудованого браузера і без локального статичного сервера). +- Використовує ті самі сеанси й правила маршрутизації, що й інші канали. - Детермінована маршрутизація: відповіді завжди повертаються до WebChat. ## Швидкий старт 1. Запустіть gateway. 2. Відкрийте інтерфейс WebChat (застосунок macOS/iOS) або вкладку чату в Control UI. -3. Переконайтеся, що налаштовано дійсний шлях автентифікації gateway (типово `shared-secret`, - навіть у `loopback`). +3. Переконайтеся, що налаштовано дійсний шлях автентифікації gateway (типово — shared-secret, навіть у loopback). ## Як це працює (поведінка) -- Інтерфейс підключається до WebSocket Gateway і використовує `chat.history`, `chat.send` та `chat.inject`. +- Інтерфейс підключається до Gateway WebSocket і використовує `chat.history`, `chat.send` і `chat.inject`. - `chat.history` обмежений для стабільності: Gateway може обрізати довгі текстові поля, пропускати важкі метадані та замінювати надто великі записи на `[chat.history omitted: message too large]`. -- `chat.history` також нормалізується для відображення: із видимого тексту прибираються контекст OpenClaw лише для runtime, вхідні обгортки envelope, вбудовані теги директив доставки - на кшталт `[[reply_to_*]]` і `[[audio_as_voice]]`, XML-навантаження викликів інструментів у звичайному тексті - (зокрема `...`, - `...`, `...`, - `...` і обрізані блоки викликів інструментів), а також - витоки ASCII/full-width токенів керування моделі; записи assistant, у яких увесь видимий текст складається лише з точного - тихого токена `NO_REPLY` / `no_reply`, пропускаються. -- Навантаження відповідей, позначені як міркування (`isReasoning: true`), виключаються з вмісту assistant у WebChat, тексту відтворення транскрипту та аудіоблоків вмісту, щоб навантаження лише з міркуваннями не відображалися як видимі повідомлення assistant або аудіо для відтворення. -- `chat.inject` напряму додає примітку assistant до транскрипту та транслює її в інтерфейс (без запуску агента). -- Перервані запуски можуть залишати частковий вивід assistant видимим в інтерфейсі. -- Gateway зберігає частковий текст assistant із перерваних запусків в історії транскрипту, коли існує буферизований вивід, і позначає ці записи метаданими переривання. +- `chat.history` дотримується активної гілки транскрипту для сучасних append-only файлів сеансу, тож покинуті гілки перезапису й витіснені копії промптів не відображаються у WebChat. +- Control UI об’єднує дублікати поточних відправлень для того самого сеансу, повідомлення й вкладень перед створенням нового run id для `chat.send`; Gateway усе одно дедуплікує повторні запити, що повторно використовують той самий idempotency key. +- `chat.history` також нормалізується для відображення: з видимого тексту прибираються контекст OpenClaw лише для runtime, обгортки вхідних конвертів, вбудовані теги директив доставки на кшталт `[[reply_to_*]]` і `[[audio_as_voice]]`, XML-пейлоади викликів інструментів у plain text (зокрема `...`, `...`, `...`, `...` і обрізані блоки викликів інструментів), а також ASCII/full-width токени керування моделі, що просочилися; записи помічника, весь видимий текст яких складається лише з точного silent token `NO_REPLY` / `no_reply`, пропускаються. +- Пейлоади відповідей, позначені як reasoning (`isReasoning: true`), виключаються з вмісту повідомлень помічника у WebChat, тексту повторного відтворення транскрипту та аудіоблоків, щоб пейлоади лише з міркуваннями не з’являлися як видимі повідомлення помічника або відтворюване аудіо. +- `chat.inject` напряму додає нотатку помічника до транскрипту й транслює її в інтерфейс (без запуску агента). +- Перервані запуски можуть залишати частковий вивід помічника видимим в інтерфейсі. +- Gateway зберігає частковий текст помічника з перерваних запусків в історії транскрипту, коли існує буферизований вивід, і позначає такі записи метаданими переривання. - Історія завжди отримується з gateway (без локального відстеження файлів). -- Якщо gateway недосяжний, WebChat працює лише для читання. +- Якщо gateway недосяжний, WebChat доступний лише для читання. ## Панель інструментів агентів у Control UI -- Панель Tools у `/agents` в Control UI має два окремі подання: - - **Доступно зараз** використовує `tools.effective(sessionKey=...)` і показує, що поточна - сесія реально може використовувати під час runtime, включно з інструментами core, Plugin і каналів. - - **Налаштування інструментів** використовує `tools.catalog` і залишається зосередженою на профілях, перевизначеннях і - семантиці каталогу. -- Доступність під час runtime прив’язана до сесії. Перемикання сесій для того самого агента може змінити список - **Доступно зараз**. -- Редактор конфігурації не означає доступності під час runtime; фактичний доступ і надалі визначається пріоритетом політик - (`allow`/`deny`, перевизначеннями для окремих агентів і provider/channel). +- Панель Tools у розділі `/agents` в Control UI має два окремі подання: + - **Доступно зараз** використовує `tools.effective(sessionKey=...)` і показує, що поточний сеанс справді може використовувати під час runtime, зокрема інструменти, що належать core, Plugin і каналу. + - **Конфігурація інструментів** використовує `tools.catalog` і залишається зосередженою на профілях, перевизначеннях і семантиці каталогу. +- Доступність під час runtime прив’язана до сеансу. Перемикання між сеансами на тому самому агенті може змінити список **Доступно зараз**. +- Редактор конфігурації не означає доступність під час runtime; фактичний доступ і далі визначається пріоритетом політик (`allow`/`deny`, перевизначеннями для окремого агента та provider/channel). ## Віддалене використання -- Віддалений режим тунелює WebSocket gateway через SSH/Tailscale. +- Віддалений режим тунелює Gateway WebSocket через SSH/Tailscale. - Вам не потрібно запускати окремий сервер WebChat. -## Довідник із конфігурації (WebChat) +## Довідник з конфігурації (WebChat) Повна конфігурація: [Конфігурація](/uk/gateway/configuration) Параметри WebChat: -- `gateway.webchat.chatHistoryMaxChars`: максимальна кількість символів для текстових полів у відповідях `chat.history`. Коли запис транскрипту перевищує цей ліміт, Gateway обрізає довгі текстові поля та може замінювати надто великі повідомлення заповнювачем. Клієнт також може надсилати `maxChars` на рівні запиту, щоб перевизначити це типове значення для одного виклику `chat.history`. +- `gateway.webchat.chatHistoryMaxChars`: максимальна кількість символів для текстових полів у відповідях `chat.history`. Коли запис транскрипту перевищує цей ліміт, Gateway обрізає довгі текстові поля й може замінювати надто великі повідомлення плейсхолдером. Клієнт також може передати `maxChars` у запиті, щоб перевизначити це значення за замовчуванням для одного виклику `chat.history`. Пов’язані глобальні параметри: - `gateway.port`, `gateway.bind`: хост/порт WebSocket. - `gateway.auth.mode`, `gateway.auth.token`, `gateway.auth.password`: - автентифікація WebSocket через `shared-secret`. -- `gateway.auth.allowTailscale`: вкладка чату browser у Control UI може використовувати заголовки ідентичності Tailscale - Serve, якщо це ввімкнено. -- `gateway.auth.mode: "trusted-proxy"`: автентифікація через reverse proxy для browser-клієнтів за **не-loopback** джерелом proxy, обізнаного про ідентичність (див. [Автентифікація Trusted Proxy](/uk/gateway/trusted-proxy-auth)). + автентифікація WebSocket через shared-secret. +- `gateway.auth.allowTailscale`: вкладка чату браузерного Control UI може використовувати заголовки ідентифікації Tailscale Serve, якщо це ввімкнено. +- `gateway.auth.mode: "trusted-proxy"`: автентифікація через reverse proxy для браузерних клієнтів за identity-aware **не-loopback** джерелом proxy (див. [Автентифікація Trusted Proxy](/uk/gateway/trusted-proxy-auth)). - `gateway.remote.url`, `gateway.remote.token`, `gateway.remote.password`: цільовий віддалений gateway. -- `session.*`: сховище сесій і типові значення основного ключа. +- `session.*`: сховище сеансів і типові значення основного ключа. ## Пов’язане - [Control UI](/uk/web/control-ui) -- [Dashboard](/uk/web/dashboard) +- [Панель керування](/uk/web/dashboard)