OpenClaw и Telegram: полное руководство по подключению бота




OpenClaw и Telegram: полное руководство по подключению бота

Telegram — самый быстрый способ начать работу с OpenClaw. Вам понадобится три вещи: установленный OpenClaw, токен бота от @BotFather и две минуты на настройку. В этой статье — пошаговая инструкция: от создания бота до настройки групп и политики доступа.

Что нужно перед началом

Прежде чем подключать Telegram, убедитесь, что OpenClaw уже установлен и Gateway запущен. Если ещё нет — начните с руководства по установке.

Вам потребуется:

  • Установленный OpenClaw (версия 2026.5.x и выше)
  • Запущенный Gateway на порту 18789
  • Аккаунт в Telegram
  • Доступ к @BotFather

Шаг 1: Создаём бота через @BotFather

Откройте Telegram и найдите @BotFather — это официальный бот Telegram для создания и управления ботами.

  1. Отправьте команду /newbot
  2. BotFather спросит имя бота — введите любое понятное название (например, «Мой AI-ассистент»)
  3. Затем спросит username — он должен заканчиваться на bot (например, my_ai_helper_bot)
  4. BotFather выдаст токен вида 123456789:ABCdefGhIJKlmNoPQRsTUVwxYZ

Скопируйте токен и сохраните — он понадобится для конфигурации. Без этого токена бот работать не будет.

Шаг 2: Настраиваем конфигурацию OpenClaw

Откройте файл конфигурации OpenClaw. Он находится в ~/.openclaw/config.yaml (или .json / .json5 — зависит от вашего выбора при установке).

Добавьте секцию для Telegram:

channels:
  telegram:
    enabled: true
    botToken: "ВАШ_ТОКЕН_ОТ_BOTFATHER"
    dmPolicy: "pairing"
    groups:
      "*":
        requireMention: true

Если не хотите редактировать файл вручную, можно задать токен через переменную окружения:

TELEGRAM_BOT_TOKEN=123456789:ABCdefGhIJKlmNoPQRsTUVwxYZ

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

Telegram не использует команду openclaw channels login — токен настраивается в конфиге или переменной окружения, после чего Gateway подхватывает его автоматически.

Шаг 3: Запускаем и подтверждаем первое сообщение

После настройки конфига перезапустите Gateway:

openclaw gateway restart

Затем:

  1. Найдите вашего бота в Telegram по username
  2. Отправьте любое сообщение (например, «Привет»)
  3. Бот пришлёт код подтверждения
  4. Подтвердите pairing через CLI:
openclaw pairing list telegram
openclaw pairing approve telegram <код>

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

Настройка доступа в личные сообщения (DM)

Параметр channels.telegram.dmPolicy определяет, кто может писать боту в личку:

Значение Поведение
pairing По умолчанию. Новые отправители получают код подтверждения
allowlist Только пользователи из списка allowFrom (числовые ID)
open Все могут писать (нужно allowFrom: ["*"])
disabled Личные сообщения отключены

Как узнать свой Telegram ID

Напишите боту, затем выполните:

openclaw logs --follow

В логах найдите поле from.id — это ваш числовой Telegram ID.

Альтернативный способ — через Bot API:

curl "https://api.telegram.org/botВАШ_ТОКЕН/getUpdates"

Настройка групповых чатов

Добавьте бота в группу Telegram, затем настройте два уровня контроля.

Какие группы разрешены

Параметр channels.telegram.groups:

  • Нет секции groups + groupPolicy: "open" — бот работает в любой группе
  • Нет секции groups + groupPolicy: "allowlist" — все группы блокируются
  • Указаны конкретные ID или "*" — явный список разрешённых групп

Какие пользователи могут взаимодействовать

Параметр channels.telegram.groupPolicy:

  • open — любой участник группы
  • allowlist (по умолчанию) — только из groupAllowFrom или allowFrom
  • disabled — бот не отвечает в группах

Пример конфигурации для конкретной группы:

channels:
  telegram:
    groupAllowFrom: ["8734062810", "745123456"]
    groups:
      "-1001234567890":
        groupPolicy: "open"
        requireMention: false

Упоминания в группах

По умолчанию бот в группе реагирует только на упоминания @botusername. Чтобы бот отвечал на все сообщения, установите requireMention: false для нужной группы.

Медиафайлы и пересылка сообщений

OpenClaw поддерживает:

  • Фото — бот получает изображение и может его анализировать
  • Документы — PDF, текстовые файлы, код
  • Голосовые сообщения — распознавание через Whisper (если настроено)
  • Видео — обработка через инструменты агента
  • Пересланные сообщения — бот видит контекст пересылки
  • Стикеры — бот получает эмодзи-код стикера
  • Локация — координаты передаются агенту

Параметр mediaDownloadMaxMB ограничивает максимальный размер загружаемых файлов (по умолчанию 20 МБ).

Администрирование через Telegram

Если у вас есть несколько моделей и профилей агентов, можно переключаться прямо из Telegram:

/status        — текущая модель и состояние
/model gpt-4o  — сменить модель
/new           — начать новую сессию
/help          — список команд

Установка OpenClaw на VPS для работы бота 24/7

Если хотите, чтобы бот работал постоянно (а не только пока включён компьютер), установите OpenClaw на VPS.

Подходящие хостинги с бесплатным тиром:

  • Oracle Cloud — Always Free ARM-инстанс
  • Northflank — one-click развёртывание
  • Fly.io — бесплатный тир для небольших нагрузок
  • GCP / Azure — бесплатные тиры на пробный период

Установка на VPS — одна команда:

curl -fsSL https://openclaw.ai/install.sh | bash

Скрипт установит Node.js, OpenClaw и запустит мастер настройки. После настройки Gateway будет работать как systemd-сервис с автозапуском.

Подробная инструкция: Установка на VPS и сервер.

Безопасность

  • Не публикуйте токен бота — если токен скомпрометирован, получите новый через @BotFather (/revoke)
  • Используйте pairing — режим dmPolicy: "pairing" не даст незнакомцам общаться с вашим агентом
  • Настройте allowlist — для продакшена используйте allowFrom с конкретными ID
  • Авторизация Gateway — если открываете доступ к дашборду извне, обязательно настройте токен авторизации

Решение типовых проблем

Бот не отвечает

  1. Проверьте, что Gateway запущен: openclaw gateway status
  2. Посмотрите логи: openclaw logs --follow
  3. Убедитесь, что токен бота скопирован правильно (без лишних пробелов)
  4. Проверьте, что enabled: true в конфиге

Бот не отвечает в группе

  1. Проверьте groupPolicy — если disabled, бот молчит
  2. Добавьте группу в groups или используйте "*"
  3. Проверьте requireMention — если true, нужно упоминать бота через @username
  4. Убедитесь, что ваш ID есть в groupAllowFrom или allowFrom

Приходят сообщения «Pairing code required»

Это нормально для первого сообщения. Выполните openclaw pairing approve telegram <код>. Если не хотите подтверждение — используйте dmPolicy: "open".

Что дальше