- Сполучення в приватних повідомленнях (хто може спілкуватися з ботом)
- Сполучення Node (яким пристроям/вузлам дозволено приєднуватися до мережі Gateway)
1) Сполучення в приватних повідомленнях (доступ до вхідного чату)
Коли канал налаштовано з політикою приватних повідомленьpairing, невідомі відправники отримують короткий код, а їхнє повідомлення не обробляється, доки його не буде схвалено.
Стандартні політики приватних повідомлень описано в розділі Безпека
dmPolicy: "open" є загальнодоступною, лише коли чинний список дозволених відправників приватних повідомлень містить "*".
Для налаштування та перевірки загальнодоступних конфігурацій потрібен цей символ узагальнення. Якщо наявний
стан містить open із конкретними записами allowFrom, середовище виконання все одно допускає
лише цих відправників, а схвалення зі сховища сполучень не розширюють доступ open.
Коди сполучення:
- 8 символів, верхній регістр, без неоднозначних символів (
0O1I). - Термін дії спливає через 1 годину. Бот надсилає повідомлення про сполучення лише після створення нового запиту (приблизно раз на годину для кожного відправника).
- Кількість нерозглянутих запитів на сполучення в приватних повідомленнях обмежена до 3 на обліковий запис каналу; додаткові запити ігноруються, доки термін дії одного з них не спливе або його не буде схвалено.
Схвалення відправника
--notify до команди схвалення, щоб повідомити заявника в тому самому каналі. Для каналів із кількома обліковими записами вкажіть --account <id>.
Якщо власника команд ще не налаштовано, схвалення коду сполучення в приватних повідомленнях також установлює
commands.ownerAllowFrom для схваленого відправника, наприклад telegram:123456789.
Це надає новим конфігураціям явного власника для привілейованих команд і запитів
на схвалення виконання. Після появи власника подальші схвалення сполучення надають лише доступ
до приватних повідомлень; вони не додають нових власників.
Підтримувані канали (будь-який установлений Plugin каналу, що оголошує сполучення; зовнішні plugins, як-от openclaw-weixin, можуть додавати інші): discord, feishu, googlechat, imessage, irc, line, matrix, mattermost, msteams, nextcloud-talk, nostr, signal, slack, sms, synology-chat, telegram, twitch, whatsapp, zalo, zalouser.
Групи відправників для повторного використання
Використовуйте верхньорівневий параметрaccessGroups, коли той самий набір довірених відправників має застосовуватися до
кількох каналів повідомлень або одночасно до списків дозволених відправників приватних і групових повідомлень.
Статичні групи використовують type: "message.senders", а посилання на них у списках
дозволених відправників каналів задаються через accessGroup:<name>:
Де зберігається стан
Зберігається у спільній базі даних стану SQLite за адресою~/.openclaw/state/openclaw.sqlite:
- нерозглянуті запити в
channel_pairing_requests - схвалені відправники в
channel_pairing_allow_entries
- кожен запит і схвалений відправник мають ключ за каналом та обліковим записом
- середовище виконання зчитує лише канонічні рядки SQLite; воно не об’єднує застарілі файли
<channel>-pairing.json і
<channel>-<accountId>-allowFrom.json у ~/.openclaw/credentials/.
Міграція під час запуску та openclaw doctor --fix імпортують ці файли до SQLite і
видаляють кожне джерело після успішного імпорту. Вважайте базу даних SQLite
конфіденційною, оскільки ці рядки керують доступом до вашого асистента.
Сховище списку дозволених сполучень призначене для доступу до приватних повідомлень. Авторизація груп виконується окремо.
Схвалення коду сполучення в приватних повідомленнях не надає цьому відправнику автоматичного дозволу виконувати групові
команди або керувати ботом у групах. Початкове призначення першого власника є окремим станом конфігурації
в
commands.ownerAllowFrom, а доставлення повідомлень у груповому чаті й надалі визначається
списками дозволених відправників групових повідомлень каналу (наприклад, groupAllowFrom, groups або перевизначеннями
для окремих груп чи тем залежно від каналу).2) Сполучення пристроїв Node (вузли iOS/Android/macOS/без інтерфейсу)
Вузли підключаються до Gateway як пристрої зrole: node. Gateway
створює запит на сполучення пристрою, який потрібно схвалити.
Сполучення через Control UI (рекомендовано)
Використовуйте вже підключений сеанс Control UI із доступомoperator.admin:
- Відкрийте Control UI і перейдіть до Settings → Devices.
- На сторінці Devices натисніть Pair mobile device.
- Залиште Full access (recommended) або виберіть Limited access, щоб виключити адміністративні засоби керування Gateway.
- Натисніть Create setup code.
- На телефоні відкрийте застосунок OpenClaw → Settings → Gateway.
- Відскануйте QR-код або вставте код налаштування, а потім підключіться.
Сполучення через Telegram
Якщо використовується Plugindevice-pair, перше сполучення пристрою можна повністю виконати через Telegram:
- У Telegram надішліть своєму боту повідомлення:
/pair - Бот відповість двома повідомленнями: повідомленням з інструкціями та окремим повідомленням із кодом налаштування (його легко скопіювати й вставити в Telegram).
- На телефоні відкрийте застосунок OpenClaw для iOS → Settings → Gateway.
- Відскануйте QR-код (
/pair qr) або вставте код налаштування та підключіться. - Офіційний мобільний застосунок підключається автоматично. Якщо
/pair pendingпоказує запит, перевірте його роль і області дії перед схваленням.
url: URL WebSocket для Gateway (ws://...абоwss://...)urls: за наявності, упорядковані маршрути LAN/Tailnet, які може спробувати мобільний застосунокbootstrapToken: одноразовий початковий токен для першого рукостискання сполучення; Gateway робить його недійсним через 10 хвилин
/pair cleanup, щоб зробити невикористані коди налаштування недійсними.
Цей початковий токен містить вбудований початковий профіль сполучення:
- безпечне налаштування
wss://(або loopback на тому самому хості) типово надаєnodeі повний нативний мобільний доступoperator - переданий токен
nodeзалишаєтьсяscopes: [] - типовий переданий токен
operatorміститьoperator.admin,operator.approvals,operator.read,operator.talk.secretsіoperator.write - Режим Limited access у Control UI та
openclaw qr --limitedне містятьoperator.admin, зберігаючи інші області дії оператора - налаштування через незашифрований LAN
ws://автоматично використовує той самий обмежений профіль; налаштуйтеwss://або Tailscale Serve і створіть новий код для повного доступу - подальша ротація/відкликання токена залишається обмеженою як договором схваленої ролі пристрою, так і областями дії оператора в сеансі виклику
wss:// або
Tailscale Serve, потім створіть новий код налаштування з повним доступом, відскануйте чи вставте
його на цій сторінці налаштувань і повторно підключіться.
Для віддаленого сполучення мобільних пристроїв через Tailscale, загальнодоступну мережу чи інші засоби використовуйте Tailscale Serve/Funnel
або іншу URL-адресу Gateway wss://. Коди налаштування з незашифрованим ws:// приймаються лише
для loopback, приватних LAN-адрес, хостів Bonjour .local та хоста емулятора
Android. Незашифровані маршрути без loopback отримують обмежений доступ. CGNAT-адреси
Tailnet, імена .ts.net і загальнодоступні хости й надалі відхиляються до
створення QR-коду/коду налаштування.
Для URL-адрес налаштування gateway.bind=lan OpenClaw виявляє постійні кореневі HTTPS-адреси Tailscale Serve,
які проксіюють loopback-порт активного Gateway, і оголошує їх
разом із маршрутом LAN. Команда налаштування додає цей резервний маршрут лише
для lan; custom і tailnet зберігають явно оголошені маршрути. Застосунок
iOS перевіряє оголошені маршрути по черзі та зберігає першу доступну
кінцеву точку.
Схвалення пристрою Node
operator.admin. Це дає змогу наявному спареному пристрою з адміністративними можливостями відновити нове
сполучення Control UI/браузера без ручного редагування сховища сполучень. Gateway
усе одно перевіряє повторне підключення; токени, які не можуть пройти автентифікацію
з operator.admin, залишаються заблокованими.
Якщо той самий пристрій повторює спробу з іншими даними автентифікації (наприклад, з іншою
роллю, областями дії або відкритим ключем), попередній нерозглянутий запит замінюється та створюється новий
requestId.
Уже спарений пристрій не отримує ширший доступ без явного схвалення. Якщо під час повторного підключення він запитує більше областей дії або ширшу роль, OpenClaw залишає наявне схвалення без змін і створює новий нерозглянутий запит на підвищення доступу. Перед схваленням скористайтеся
openclaw devices list, щоб порівняти поточний схвалений доступ із новим запитаним доступом.Необов’язкове автоматичне схвалення вузлів за довіреним CIDR
За замовчуванням сполучення пристроїв виконується вручну. Для ретельно контрольованих мереж вузлів можна ввімкнути автоматичне схвалення першого сполучення вузла за явними CIDR або точними IP-адресами:role: node без запитаних
областей дії. Клієнти оператора, браузера, Control UI та WebChat усе одно потребують ручного
схвалення. Зміни ролі, області дії, метаданих і відкритого ключа також потребують ручного
схвалення.
Зберігання стану сполучення Node
Зберігається у спільній базі даних стану SQLite за адресою~/.openclaw/state/openclaw.sqlite:
- нерозглянуті запити на сполучення пристроїв (короткочасні; термін їхньої дії спливає через 5 хвилин)
- спарені пристрої та токени
~/.openclaw/devices/*.json; ці файли
імпортуються до SQLite під час запуску Gateway та архівуються із суфіксом .migrated.
Примітки
- API
node.pair.*(CLI:openclaw nodes pending|approve|reject|remove|rename) керує схваленнями можливостей вузлів, що зберігаються в тих самих записах спарених пристроїв. Вузли WS все одно потребують сполучення пристрою; див. Сполучення Node. - Запис сполучення є довготривалим джерелом істини для схвалених ролей. Активні токени пристроїв залишаються обмеженими цим схваленим набором ролей; сторонній запис токена поза схваленими ролями не створює нового доступу.