Боты и ИИ-ассистенты как продукт
Всё, что было в темах «Вайбкодинг: сайты» и «Вайбкодинг: интерфейсы», собирает сайты и приложения: продукты, к которым пользователь сам приходит по адресу. Чат-бот в Telegram, WhatsApp или Slack — другая форма продукта. Он живёт там, где уже сидит аудитория, не требует установки и открывается тем же интерфейсом, в котором человек и так переписывается с друзьями. Для дизайнера это отдельный, вполне реальный формат сдачи результата клиенту: не только лендинг или прототип, а работающий бот, который решает конкретную бизнес-задачу. Код за тебя напишет агент. Твоя часть — сценарий, и с него мы начнём.
Бизнес-сценарий раньше кода
Первый вопрос перед тем, как открывать вайбкодинг-агента, не «какой стек использовать», а «какую конкретно задачу решает этот бот». Частые сценарии для бизнеса: бот поддержки, который отвечает на типовые вопросы клиентов до того, как подключится живой человек; бот-квалификатор лидов, который задаёт несколько уточняющих вопросов и передаёт готовую заявку менеджеру; внутренний бот-помощник команды, который ищет ответы в базе знаний компании; образовательный бот, который выдаёт материал порционно (удобный формат для курсов и онбординга). Без чёткого сценария бот легко превращается в набор случайных функций без единой цели. Здесь работает тот же принцип, что и в теме «Брифы с ИИ»: сначала описываешь задачу и пользователя, а не технические детали.
ИИ как второй пилот, а не единственный мозг бота
Соблазн понятный: сделать всю логику бота одним большим ИИ-промптом, который пытается понять любое сообщение пользователя. На практике надёжнее гибридная схема. Есть предсказуемый скелет из кнопок и фиксированных сценариев (меню, разделы, готовые ответы), который работает одинаково всегда. ИИ подключается точечно, там, где реально нужна гибкость: свободный вопрос пользователя, который не укладывается в готовое меню, персонализация ответа под контекст переписки, извлечение сути запроса из длинного сообщения. Это тот же принцип «постепенного наращивания автономности» из темы «UX-паттерны для ИИ-функций», применённый к архитектуре самого бота. Не отдавай всё сразу модели. Явно раздели, где бот работает по правилам, а где думает.
Скелет из кнопок: меню бота «Искры»
, [«Модели ИИ»](/topic/modeli-ii-karta-orkestratsiya-i-pochemu-odin), [«Этика»](/topic/etika-privatnost-i-ogranicheniya), «Глоссарий» и FAQ](/images/topics/28-tg-iskra-menu.webp)
Свободный вопрос: отвечает ИИ

Python-окружение и зависимости: что нужно знать, не будучи разработчиком
Большинство ботов для Telegram и похожих платформ пишутся на Python. Это не единственный вариант, но у него самая большая база готовых библиотек и документации именно для ботов. Вайбкодинг-агент (тема «CLI и терминальные ИИ-агенты») сам установит нужные зависимости и настроит виртуальное окружение. Venv — изолированное пространство, где зависимости конкретного проекта не путаются с зависимостями других проектов на том же компьютере. Тебе полезно знать одно: если агент пишет «активирую виртуальное окружение» или «устанавливаю зависимости из requirements.txt», это нормальная, ожидаемая часть процесса. Ничего не идёт не так.
Сборка бота: минимальный путь от идеи до первого ответа
- Зарегистрируй бота у @BotFather в Telegram (или аналогичного сервиса на другой платформе). Это даёт токен доступа: уникальный ключ, по которому платформа узнаёт именно этого бота.
- Попроси агента собрать минимальный скелет: обработчик команды
/start, главное меню с кнопками, реакция на текстовое сообщение. - Подключи ИИ-слой туда, где он реально нужен по сценарию из первого шага. Не раньше, чем скелет уже отвечает на команды предсказуемо.
- Протестируй локально, на своём компьютере, прежде чем думать о постоянном запуске на сервере.
Собери минимальный Telegram-бот на Python: команда /start показывает приветствие и три кнопки меню, при нажатии на кнопку 'Задать вопрос' бот пересылает следующее сообщение пользователя в Claude API с system prompt 'отвечай только по теме [X], если вопрос не по теме — вежливо откажись' и присылает ответ
Запуск на сервере: бот должен работать, даже когда компьютер выключен
Сайт из темы «Вайбкодинг: сайты» обычно вызывается по запросу: кто-то открыл ссылку. Бот работает по-другому. Он постоянно слушает новые сообщения, а значит, должен быть запущен круглосуточно, а не только пока открыт твой ноутбук. Практические варианты, от простого к более гибкому:
- Готовый PaaS-хостинг (Railway, Render, Fly.io и похожие) — самый низкий порог входа. Подключаешь репозиторий с кодом, сервис сам запускает и перезапускает бота при сбое. Обходится недорого при небольшой нагрузке, но бесплатно — почти никогда. У Railway после 30-дневного триала с $5 остаётся бесплатный план с $1 кредита в месяц — на постоянно работающего бота этого не хватает. Бесплатный инстанс Render засыпает через 15 минут без трафика, а бот должен работать постоянно.
- Собственный VPS (виртуальный сервер) — больше контроля и обычно дешевле при постоянной нагрузке. Но нужно самому настроить постоянный процесс, чтобы бот перезапускался сам при падении, а не оставался выключенным до следующего ручного перезапуска. Попроси агента настроить это через системные инструменты вроде
systemdили менеджер процессовpm2. Разбираться в них с нуля самому не придётся. - Serverless-функция с webhook — вместо постоянно работающей программы платформа сама «будит» код каждый раз, когда приходит новое сообщение. Это экономичнее для ботов с редкими сообщениями, но менее предсказуемо по задержке ответа.
Перед тем как отдавать боту токен и любые ключи API на сервере, пройди чек-лист из темы «Безопасность вайбкодинг-проекта». Токен бота даёт полный контроль над ним, и его утечка равносильна утечке пароля.
ИИ-ассистент внутри бота: практический паттерн
Когда ИИ-слой уже подключён, не давай ему отвечать вообще на всё подряд. Явно очерти границы. Во-первых, чёткий system prompt о теме, за пределы которой бот не выходит (см. тему «Фундамент»). Во-вторых, явный fallback-ответ, если вопрос не по теме или модель не уверена (принцип graceful failure из темы «Принципы дизайна ИИ-продуктов»). В-третьих, понятная эскалация к живому человеку для сценариев, где ошибка стоит дорого. Бот, который честно говорит «не уверен, давай подключу коллегу», выглядит для пользователя надёжнее, чем бот, который уверенно придумывает ответ.
Примеры команд для практики
Опиши бизнес-сценарий Telegram-бота для студии дизайна: какую одну конкретную задачу он решает для клиентов студии, и какие 3–4 пункта должны быть в его меню
Собери минимальный скелет Telegram-бота на Python и aiogram 3: команда /start и один пункт меню, который пересылает вопрос пользователя в ИИ с ограниченным system prompt. Токен бота и ключ модели бери из .env, режим — long polling. В конце напиши команды для локального запуска
Сравни Railway, Render и собственный VPS для бота с небольшой нагрузкой (до 100 сообщений в день) — что проще запустить и дешевле держать первые полгода. Сначала проверь актуальные тарифы на официальных страницах и дай ссылки. Учитывай, что бот — постоянный фоновый процесс, а не веб-сервис: бесплатные инстансы, которые засыпают без трафика, ему не подходятНужен чат с включённым поиском: по памяти тарифы хостингов устаревают быстрее всего.
Придумай понятную формулировку fallback-ответа для бота поддержки, если пользователь спрашивает что-то за пределами темы ботаОпиши текстом (без единой строчки кода) бизнес-сценарий одного бота под свою реальную задачу или задачу воображаемого клиента. Кто им пользуется, какую одну проблему он решает, что должно быть в фиксированном меню, где реально нужна гибкость ИИ и что бот отвечает, когда вопрос не по теме или он не уверен. Это тот же первый шаг, который нужен перед любым реальным ботом, до того как открывать агента.
Источники
- From BotFather to Hello Worldcore.telegram.org
получение токена у BotFather и его защита
- Free Trialdocs.railway.com
триал Railway на 30 дней с $5, затем $1 в месяц
- Deploy for Freerender.com
бесплатные сервисы Render засыпают через 15 минут без трафика
- aiogram documentationdocs.aiogram.dev
aiogram 3, long polling и webhooks
Нашёл ошибку или устаревший факт? Напиши: hey@iskra.guide