Канал

OpenClaw Pairing: подключение, одобрение и ошибка 1008

Вы установили OpenClaw, запустили gateway, написали боту в Telegram --- а он прислал какой-то код вместо ответа. Или ещё хуже: в логах появилась ошибка 1008 pairing required, и ничего не работает. Знакомо?

Pairing --- это система контроля доступа в OpenClaw. Она решает, кто может общаться с вашим агентом. В этой статье разберём, как pairing работает, как одобрить подключение и что делать с ошибкой 1008.

Что такое pairing

Pairing --- это механизм подтверждения доступа. Когда кто-то впервые пишет вашему боту, OpenClaw не обрабатывает сообщение, а присылает одноразовый код подтверждения. Пока вы не одобрите этот код --- бот не ответит.

Это сделано для безопасности: без pairing любой человек, нашедший вашего бота, мог бы им пользоваться и тратить ваш API-бюджет.

Источник: механизм pairing описан в официальной документации OpenClaw.

Два вида pairing

В OpenClaw есть два вида pairing --- важно их не путать:

ТипЧто контролируетГде происходит
DM PairingКто может писать боту в мессенджереTelegram, WhatsApp, Signal и другие каналы
Device PairingКакие устройства могут подключаться к gatewayНоды, приложения, удалённые клиенты

Чаще всего вы столкнётесь с DM Pairing --- когда впервые пишете собственному боту в Telegram.

Как работает DM Pairing: пошагово

Шаг 1. Вы пишете боту

Отправьте любое сообщение вашему боту в Telegram. Например, «Привет».

Шаг 2. Бот присылает код

Вместо ответа бот пришлёт одноразовый код подтверждения --- 8 символов, заглавные латинские буквы и цифры. Выглядит примерно так:

ABCD2345

Код действует 1 час. После истечения нужно написать боту снова --- он пришлёт новый код.

Особенности кода:

  • 8 символов, заглавные
  • Не содержит похожих символов (0/O, 1/I) --- чтобы не перепутать при вводе
  • Максимум 3 ожидающих запроса на канал --- если отправить больше, лишние будут проигнорированы

Шаг 3. Посмотрите список ожидающих запросов

На компьютере, где запущен OpenClaw, откройте терминал и выполните:

openclaw pairing list telegram

Вы увидите список ожидающих запросов с кодами и идентификаторами отправителей.

Если у вас подключён только один канал (например, только Telegram), можно сократить:

openclaw pairing list

Шаг 4. Одобрите запрос

openclaw pairing approve telegram ABCD2345

Замените ABCD2345 на код, который прислал бот. Если канал один:

openclaw pairing approve ABCD2345

После одобрения отправитель добавляется в локальный список разрешённых. Все последующие сообщения будут обрабатываться.

Шаг 5. Напишите боту снова

Теперь отправьте «Привет» ещё раз --- бот ответит.

Настройка: четыре режима доступа (dmPolicy)

Источник: режимы dmPolicy описаны в справочнике конфигурации.

Pairing --- это один из четырёх режимов контроля доступа в OpenClaw. Режим задаётся в ~/.openclaw/openclaw.json через поле dmPolicy:

// ~/.openclaw/openclaw.json
{
  channels: {
    telegram: {
      botToken: "YOUR_TOKEN",
      dmPolicy: "pairing",    // режим доступа
    },
  },
}

Какой режим выбрать

РежимПоведениеКогда использовать
"pairing"Неизвестные отправители получают код, нужно одобрениеПо умолчанию. Лучший баланс безопасности и удобства
"allowlist"Только пользователи из списка allowFromКогда заранее знаете всех пользователей
"open"Все могут писать без ограниченийПубличные боты (осторожно с бюджетом!)
"disabled"Все входящие DM игнорируютсяБот только для cron-задач или исходящих сообщений

Режим pairing (по умолчанию)

Если вы не указали dmPolicy --- используется pairing. Это самый удобный режим для личного использования: не нужно заранее знать свой Telegram ID, достаточно одобрить код при первом подключении.

Режим allowlist

Если вы знаете Telegram ID всех пользователей заранее:

{
  channels: {
    telegram: {
      botToken: "YOUR_TOKEN",
      dmPolicy: "allowlist",
      allowFrom: [
        123456789,      // ваш Telegram ID
        987654321,      // ID коллеги
      ],
    },
  },
}

Как узнать свой Telegram ID: напишите боту @userinfobot --- он пришлёт ваш числовой ID.

Режим open

{
  channels: {
    telegram: {
      botToken: "YOUR_TOKEN",
      dmPolicy: "open",
      allowFrom: ["*"],
    },
  },
}

Любой пользователь сможет писать боту. Установите лимиты расходов на API-ключ, чтобы не получить неожиданный счёт.

Ошибка 1008: pairing required

Ошибка с кодом 1008 --- одна из самых частых при настройке OpenClaw. Она означает, что WebSocket-соединение закрыто из-за нарушения политики доступа.

Когда появляется

Ошибка 1008 возникает в нескольких ситуациях:

1. Устройство подключается к gateway без токена авторизации

Gateway по умолчанию требует токен для WebSocket-подключений. Если токен не передан или неверен --- соединение закрывается с кодом 1008.

disconnected 1008 pairing required

Решение: убедитесь, что gateway token настроен. Проверьте командой:

openclaw doctor

Если doctor показывает проблему с gateway auth --- проверьте конфигурацию:

{
  gateway: {
    auth: {
      mode: "token",
      token: "${OPENCLAW_GATEWAY_TOKEN}",
    },
  },
}

2. Отправитель в мессенджере не прошёл pairing

Если dmPolicy: "pairing" и отправитель ещё не одобрен --- его сообщения не обрабатываются. В логах может появиться pairing required.

Решение: одобрите отправителя (Шаг 3 и 4 выше).

3. Нода или устройство не прошло device pairing

Если к gateway подключается удалённое устройство (нода, мобильный клиент) --- ему тоже нужно пройти pairing.

Решение:

# Посмотреть ожидающие устройства
openclaw devices list

# Одобрить устройство
openclaw devices approve <requestId>

Как диагностировать

# Полная проверка системы
openclaw doctor

# Статус каналов
openclaw channels status --probe

# Логи в реальном времени
openclaw logs --follow

Команда openclaw doctor проверяет конфигурацию, подключения и покажет, если что-то настроено неправильно.

Device Pairing: подключение устройств

Помимо DM Pairing (мессенджеры), есть Device Pairing --- для подключения устройств к gateway.

Через Telegram

  1. Отправьте боту команду /pair
  2. Бот пришлёт инструкцию и setup-код (base64)
  3. Вставьте код в настройки приложения OpenClaw (Settings → Gateway)
  4. Подтвердите через /pair approve

Через CLI

# Посмотреть ожидающие запросы
openclaw devices list

# Одобрить
openclaw devices approve <requestId>

# Отклонить
openclaw devices reject <requestId>

Запросы на device pairing истекают через 5 минут (в отличие от DM pairing, где код живёт 1 час).

Где хранятся данные pairing

OpenClaw сохраняет данные pairing в директории ~/.openclaw/credentials/:

ФайлНазначение
telegram-pairing.jsonОжидающие запросы DM pairing
telegram-allowFrom.jsonОдобренные отправители

Для устройств --- в ~/.openclaw/nodes/:

ФайлНазначение
pending.jsonОжидающие запросы устройств
paired.jsonОдобренные устройства

Частые вопросы

Бот прислал код, но я его потерял

Напишите боту ещё раз --- он пришлёт новый код. Старый станет недействительным через час.

Можно ли одобрить через дашборд, а не CLI?

Да, если дашборд запущен (http://127.0.0.1:18789/). В разделе управления каналами есть интерфейс для одобрения pairing-запросов.

Я хочу добавить друга --- ему тоже нужен pairing?

Да, если dmPolicy: "pairing". Друг пишет боту, получает код, вы одобряете. Или переключитесь на allowlist и добавьте его Telegram ID в allowFrom.

После перезапуска gateway нужно проходить pairing заново?

Нет. Одобренные отправители сохраняются в файлах --- они переживают перезапуск.

access not configured --- что это?

Это сообщение означает, что канал добавлен в конфигурацию, но политика доступа не настроена. Добавьте dmPolicy в настройки канала.

Что дальше

Следите за OpenClaw на русском

Разбираем обновления, пишем гайды, делимся кейсами

Подписаться на канал Задать вопрос в чате
Присоединяйтесь к сообществу