
Разработка телеграм-бота для бизнеса с ИИ: как я сделал почтобот
Я экономист, а не программист. Моя компания Спецраз.рф оформляет спецразрешения на перевозку негабаритных и тяжеловесных грузов. Мой первый бот на ИИ — почтобот: он принимает письма госсистемы и раскладывает их по чатам. С него началось всё остальное, что я сейчас строю. Ниже — как это было, без прикрас.
Почему нужен был бот
Разрешения на негабарит оформляют в государственной системе Safe-Route. И общается она письмами: статусы заявок, готовые разрешения, коды двухфакторного входа.
Пока клиентов мало, это терпимо. Когда клиентов сотни, а в день идёт с десяток заказов, получается десяток разных почтовых ящиков перевозчиков.
Вот как выглядел вход в кабинет перевозчика. Открываешь вкладку Safe-Route, рядом — вкладку почты этого перевозчика. Входишь в почту, потом вводишь логин и пароль в Safe-Route. Код двухфакторного входа приходит на почту: идёшь туда, копируешь, вставляешь. А в работе одновременно три, четыре, бывает пять заявок. Значит, пять вкладок кабинетов и пять вкладок почты.
Плюс ожидание. Госсистема бывает медленной: госпошлина не выходит, регистрация заявления затягивается. Приходилось то и дело заглядывать в кабинет или в почту. Можно включить уведомления почты, но они выскакивают на каждое письмо и бесят. А госпошлину оплачивали вручную: вбивали УИН в шаблон платёжки.
Мне не нужен был ещё один почтовый клиент. Нужно было, чтобы нужное письмо само приходило туда, где команда уже работает, — в Telegram.

Что получилось
Бот называется @saferouteru_bot, он публичный, работает с июля 2025 года.
- Почтовый ящик перевозчику — в пару нажатий. Ящики живут на нашем собственном почтовом сервере.
- Письма Safe-Route разбираются и приходят в нужную тему заказа в Telegram.
- Умные уведомления. Бот пишет только о важных событиях: пришла госпошлина, заявление зарегистрировано. Ненужные типы писем можно отключить.
- Разрешения скачиваются PDF-файлом и уходят клиенту. По заказу собирается пакет и итог.
- QR-коды неоплаченных госпошлин бот формирует сам, по каждому кабинету. Кнопка оплаты — в теме заказа. УИН руками больше не вбивают.
- Коды двухфакторного входа приходят в тот же чат: войти в кабинет можно, не открывая почту.
- Мониторинг статуса заявок и доступности Safe-Route.
- Сторож заявлений (пока пилот): раз в 5 минут проверяет кабинеты, досылает потерянные письма и бьёт тревогу, если пришёл отказ.
- Сверка с брифом: если габариты в разрешении меньше, чем в заказе, разрешение клиенту не уходит, пока человек не нажмёт «Всё верно».
А ещё: приглашения и права участников команды, слежение за квотой ящиков и очистка старых писем, перенос машин между кабинетами, выгрузка разрешений в CSV для партнёров, публичный навигатор и подключение мессенджера MAX. Бот работает как канал доставки разрешений, госпошлин и статусов для всей логистики.

С сентября 2026 года у письма есть архив: вкладка «Письма Safe-Route» в системе управления заказами. За первые двое суток в него собралось 660 писем.

Как это строилось
Это мой первый проект, который сработал. Когда я начинал, я копировал код из ChatGPT в терминал. Потом узнал про VS Code со встроенным Claude Code, и всё пошло иначе.
- 10 июня 2025. Первый коммит. В истории видно, как я называл версии: «версия Claude 10», «v16», «v35». Это номера кусков кода, которые я получал от чат-ботов.
- 13 июня. Бот ловит письма в реальном времени, не опрашивая ящик по таймеру (IMAP IDLE).
- Начало июля 2025. Пароли ящиков хранятся в зашифрованном виде. Бот начинает работать на реальных письмах. От первого коммита до первых пользователей — 22 дня. Ими стала команда Спецраза: бот уже собирал письма из разных ящиков в один чат Telegram.
- 22 июля. Бот понимает коды подтверждения от Safe-Route.
- Сентябрь 2025. Появляется парсер личных кабинетов Safe-Route: бот сам заходит и смотрит статусы.
- 2026 год. Бот становится частью большой системы: письма связываются с заказами, разрешения уходят клиенту в его чат, итог по заказу собирается сам.
- Сентябрь–октябрь 2026. Архив входящих писем, защита доставки от сбоев, сверка с брифом. Больше половины всех коммитов бота (около 215 из 500) сделаны именно в эти два месяца.
Бот ни разу не переписывался с нуля. Он растёт слоями, как прогрессивный JPEG: сначала грубая, но рабочая картинка, потом детали.
Как я работаю с ИИ-агентами
Я не пишу код. Моя работа — объяснить, что болит, и проверить, что стало лучше. План и разбор задачи — у Claude Code, код пишет Codex, каждое изменение проверяет ещё один ИИ-агент. Выкатка — одной кнопкой с журналом.
Задачи делятся по риску. Мелочи ИИ делает сам. Всё, что связано с деньгами, записью в госсистему и необратимыми действиями, ждёт моего «делай». У почтобота таких мест много: он отправляет документы клиентам, а письмо назад не вернёшь.
Что пошло не так
Версии в названиях и ручные откаты. В первые недели «версия» была номером в сообщении коммита. 10 июля 2025 в истории есть запись «вернуть стабильную версию 118ad82»: что-то сломалось, и я откатывался руками. Вывод: если нельзя быстро вернуться на рабочую версию, любое улучшение — лотерея. Сейчас откат — штатная часть выкатки.
Потерянные коды. Бот умеет сам заходить в кабинет Safe-Route, и тогда госсистема присылает код. Чтобы не показывать людям лишние коды, я включил подавление: если в этот момент идёт автоматический вход, код скрывается. Как-то выяснилось, что при частых автоматических входах подавление заодно скрывало и человеческие коды: 337 штук за двое суток. Теперь бот код всё равно доставляет, только с пометкой «возможно, запрошен автоматически». Коды разовые, так что большой беды не случилось. Вывод: при сомнении лучше лишнее уведомление, чем потерянный код.
Чужой агент и файл с ключами. Однажды на тарифе за $20 у меня кончился пятичасовой лимит Claude, и я решил поэкспериментировать: дал задачу Gemini. Он взял и затёр все ключи и пароли в файле настроек. Было больно: всё пришлось восстанавливать. Вывод: у файла с секретами должна быть резервная копия, а новый инструмент лучше сначала пробовать на копии проекта.
Разрешение с неверными габаритами. Бывает, что в разрешении габариты меньше, чем в брифе клиента. Такой случай у нас был. Клиент отделался лёгким испугом: сам вовремя заметил. Иначе ему прилетел бы штраф 600 000 рублей. Сначала я сделал только предупреждение в чат. Потом — удержание: разрешение ждёт кнопки «Всё верно — отправить клиенту». Включал это постепенно: выключено, потом «тень» (бот только пишет в журнал, что удержал бы), потом боевой режим. Вывод: всё, что нельзя отозвать (письмо клиенту), включаю за флагом и сначала в тени.
Падение посреди отправки. Если бот упал в момент отправки разрешения клиенту, непонятно, ушло оно или нет. Повторить отправку — клиент получит дубль. Не отправлять — клиент ждёт. Выбрал так: если исход неизвестен, бот ничего не пересылает, а пишет команде «отправьте вручную». Вывод: лучше один лишний ручной шаг, чем документ, ушедший дважды.
И что стало лучше. Вместо десяти вкладок — один чат. Коды входа, госпошлины и статусы приходят сами, и только по нужным событиям: сразу видно, что пришла госпошлина или что заявление зарегистрировано. Обходить кабинеты по кругу больше не нужно.
Цифры
- 22 дня от первого коммита до первого пользователя.
- ≈ 500 коммитов в папке бота, первый — 10 июня 2025.
- ≈ 146 тысяч строк кода на Python, из них около половины — автоматические тесты.
- 660 писем Safe-Route собрал архив за первые двое суток.
- Сотни почтовых ящиков перевозчиков и пара десятков пользователей. Продукт очень нишевый.
Сколько стоит работа с ИИ-агентами и серверы, я описал в статье про систему управления заказами.
Можно ли так же у вас

Если вы уже пробовали вайбкодинг сами и упёрлись — в архитектуру, в выкатку, в то, что ИИ ломает работающее, — напишите. Расскажу, как можно сделать такое для вас.