Что изменилось в Bot API 10.0

До этого обновления бот в Telegram жил в изоляции от других ботов. Мог получать сообщения от людей — и всё. Даже если два бота находились в одной группе, они друг друга не видели. Это было сделано намеренно, чтобы избежать бесконечных цепочек автоответов.

Bot API 10.0 снял этот запрет, но с условиями. Боты не начинают видеть всех ботов автоматически — нужно явно включить эту возможность для каждого бота отдельно.

Что именно добавили:

Два режима: прямые сообщения и группы

Прямые сообщения между ботами

Это то, о чём говорится в официальном анонсе: бот A отправляет сообщение боту B напрямую. Для этого нужно, чтобы оба бота включили Allow Bot Chats в настройках BotFather. Если хотя бы у одного выключено — получите ошибку USER_BOT_TO_BOT_DISABLED.

Это ограничение существует не случайно: Telegram не хочет, чтобы спам-боты могли писать другим ботам без их ведома.

Боты в групповом чате

Второй вариант — проще и работает без специальных настроек. Несколько ботов добавляются в одну группу. Каждый бот видит упоминания себя (@имябота) и может отвечать. Если в ответе @тегнуть другого бота — тот тоже среагирует.

Именно этот подход оказался рабочим на практике: никакой дополнительной конфигурации между ботами, стандартная группа, обычные @упоминания.

Что нужно включить в BotFather

Для режима прямых сообщений — для каждого бота:

  1. Открыть @BotFather
  2. /mybots → выбрать нужного бота
  3. Bot SettingsAllow Bot Chats → Enable

Если забыть сделать хотя бы для одного из двух — сообщения не дойдут. Ошибка USER_BOT_TO_BOT_DISABLED говорит именно об этом.

Для работы через группу этого не нужно. Достаточно добавить ботов в группу и убедиться, что у них есть права отвечать.

Почему группы проще

Когда мы разбирались с bot-to-bot на практике, оказалось что сценарий с группой работает с меньшим количеством движущихся частей:

Для большинства сценариев мульти-агентного чата группа — правильный выбор.

Главная ловушка: бесконечный цикл

Это самый важный момент. Если бот A реагирует на @тег и в конце своего ответа @тегает бота B — тот ответит и @тегнет A обратно. Дальше они будут гонять сообщения в цикле до исчерпания лимитов.

Решение простое: бот не тегает другого бота, если сам получил сообщение от бота. Логика в responder:

Это даёт цепочку: человек инициирует, боты делают один обмен, цикл рвётся. Если нужно больше итераций — задавать счётчик и прерывать после N шагов.

Ключевое правило

Проверяй message.from_user.is_bot перед тем как добавлять @тег в ответ. Без этой проверки любой мульти-агентный чат превратится в бесконечную петлю.

Privacy mode и почему бот молчит

Частая проблема при первом запуске: бот добавлен в группу, сервис работает, но сообщений нет. Лог пустой, апдейты не приходят.

Причина почти всегда одна — privacy mode. По умолчанию Telegram боты в группах получают только:

Всё остальное они не видят. Поэтому если писать в группу без @тега — бот молчит. Это не баг, это дефолтное поведение.

Отключить privacy mode можно в BotFather (/setprivacy → Disable), но это даёт боту доступ ко всем сообщениям в группе — нужно ли это, зависит от задачи. Для мульти-агентного чата проще оставить privacy mode включённым и просто всегда @тегать.

Прокси и long polling

Если бот работает через прокси — есть специфическая проблема с long polling. Стандартный таймаут getUpdates составляет 25–30 секунд. Многие прокси обрывают соединения которые простаивают дольше 15–20 секунд.

Результат: ReadError или ConnectionError в логах, которые выглядят как краши, но на самом деле это просто переподключение. Сервис жив, NRestarts=0, но лог пугает.

Фикс: снизить таймаут polling до 10–15 секунд. Бот будет переподключаться чаще, зато без обрывов. На практике это незаметно для пользователей.

Диагностика

Если видите ошибки в логах но NRestarts=0 в статусе сервиса — сервис не крашится. Это старые записи в append-only логе от предыдущих перезапусков. Смотрите ActiveEnterTimestamp чтобы понять когда последний раз реально упал.

Когда это реально нужно

Bot API 10.0 открывает несколько конкретных сценариев, которых раньше не было:

Мульти-персонажные чаты. Несколько ботов с разными характерами и разными LLM под капотом разговаривают между собой и с человеком в группе. Каждый бот — отдельный персонаж с отдельной памятью.

Цепочки обработки. Бот-исследователь находит информацию → передаёт боту-редактору → тот отдаёт боту-публикатору. Всё происходит в одной группе, которую наблюдает человек.

Ролевые симуляции. Бот-клиент пишет боту-менеджеру. Полезно для тренировки скриптов продаж или обработки возражений — можно смотреть как AI-клиент реагирует на разные подходы.

Совещания агентов. Несколько специализированных ботов (аналитик, критик, генератор идей) обсуждают задачу. Человек задаёт тему, боты спорят, итог выдаётся в конце.

Всё это работало и до обновления в теории — через общую базу данных или API-вызовы между сервисами. Теперь это работает через Telegram как транспорт. Архитектура проще, наблюдаемость лучше.


Если раньше Telegram был просто каналом доставки сообщений от бота к человеку, теперь это может быть пространством где несколько агентов взаимодействуют — а человек наблюдает или иногда вмешивается. Это другая модель.

Написано на основе реального запуска прототипа 10 мая 2026. Две персоны, одна группа, бесплатные модели. Всё что описано выше — через это прошли.