VibeCoderzVibeCoderz
Telegram
Все статьи
2026/04/099 мин чтения

Как создать Telegram-бота через вайбкодинг: пошаговый гайд 2026

Создать рабочего Telegram-бота с командами, кнопками и базой данных теперь реально без знания программирования. Весь процесс занимает от нескольких часов до одного вечера. Нужны: Cursor или Claude Code, аккаунт в Telegram и немного терпения на первые…

Содержание (15)+

Создать рабочего Telegram-бота с командами, кнопками и базой данных теперь реально без знания программирования. Весь процесс занимает от нескольких часов до одного вечера. Нужны: Cursor или Claude Code, аккаунт в Telegram и немного терпения на первые ошибки.

Здесь — полный маршрут от нулевой точки до работающего бота в продакшне. Конкретные промты, которые можно скопировать, объяснение каждого шага и варианты деплоя включая бесплатные.

Изображение

Почему Telegram-боты — отличный старт для вайбкодинга

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

Изображение

Для вайбкодинга боты особенно удобны по трем причинам:

  • Четкий результат: бот либо отвечает на сообщение, либо нет. Легко проверить.
  • Простая архитектура: даже сложный бот — это токен, обработчики сообщений и база данных. AI хорошо знает эту структуру.
  • Быстрая монетизация: готовый MVP-бот можно продать на Upwork от $2000.

Максим: «@nanobananas_bot — это Telegram-бот, которого я создал за 1 вечер. Сейчас 200 000 пользователей и 10+ млн рублей выручки. Начинали с абсолютно базовой версии. Весь, полностью — вебхуки, базу данных, обработку платежей — делали через AI. Ключевое: правильно декомпозировать задачу на шаги. Нельзя просить AI сделать всё сразу.»


Что нам понадобится: подготовка за 15 минут

Изображение

Перед тем как писать первый промт, нужно собрать три вещи.

Шаг 1: Создать бота в BotFather и получить токен

BotFather — официальный бот Telegram для создания ботов. Найдите его в поиске (синяя галочка верификации), нажмите Start.

/newbot

BotFather попросит:

  • Название бота (отображается в чате, например «Мой финансовый помощник»)
  • Username (уникальное имя с суффиксом _bot, например myfinhelper_bot)

После создания получите токен — строку вида 7234567890:ABCdefGHIjklMNOpqrSTUvwxyz. Сохраните её. Это ключ доступа к вашему боту.

Важно: токен — как пароль. Никому не показывайте, не публикуйте в GitHub.

Шаг 2: Установить инструмент

Два варианта:

Cursor — IDE с AI внутри. Скачать с cursor.com. Стоит $16-20/мес, но есть бесплатный пробный период. Подойдет, если хотите видеть, что происходит в коде.

Claude Code — терминальный агент. Работает через подписку Claude Pro ($20/мес). Более автономный — сам читает файлы, пишет код, запускает тесты. Чуть сложнее в старте, но мощнее.

Для первого бота рекомендуем Cursor — интерфейс привычнее, видно все изменения.

Шаг 3: Создать папку проекта

Создайте пустую папку на компьютере. Назовите понятно, например telegram-bot-finance. Откройте её в Cursor через File -> Open Folder.


Что будем строить: конкретный пример

Изображение

Чтобы статья была практичной, строим конкретного бота — помощника по учету расходов. Функционал:

  • Пользователь отправляет сообщение вроде «потратил 500 руб на кафе»
  • Бот записывает в базу данных и отвечает подтверждением
  • Команда /report — сводка за месяц
  • Команда /categories — список категорий с кнопками-клавиатурой
  • Команда /help — список всех команд

Этот пример достаточно простой чтобы сработать быстро, и достаточно сложный чтобы показать реальные паттерны. Те же принципы работают для любого другого бота.


Шаг 4: Создаем Roadmap — главный секрет успешного вайбкодинга

Изображение

Самая частая ошибка: дать AI одну огромную задачу «создай бота». AI начнет, потеряется в деталях, сгенерирует что-то нерабочее.

Правильный подход: сначала создать дорожную карту, потом выполнять по шагам.

Напишите в Cursor такой промт:

Ты опытный Python-разработчик. Я хочу создать Telegram-бота для учета расходов.
Функционал:
  • Пользователь пишет расход в свободной форме: "потратил 500 на кафе"
  • Бот парсит сумму и категорию и сохраняет в базу данных
  • Команда /report показывает сводку за текущий месяц (общие расходы, топ-3 категории)
  • Команда /categories показывает список категорий с инлайн-кнопками
  • Команда /help показывает все доступные команды
Стек: Python, aiogram 3, SQLite (для простоты)
Создай подробный Roadmap в формате Markdown с чекбоксами.
Разбей на 6-8 конкретных этапов.
Каждый этап должен быть выполнимой автономной задачей.
НЕ пиши код, только план.

Скопируйте полученный Roadmap в файл ROADMAP.md в папке проекта. Дальше будете работать по нему шаг за шагом, отмечая выполненные пункты.


Шаг 5: Первый рабочий запуск — базовая структура

Откройте новый чат в Cursor (или следующее сообщение в Claude Code) и напишите:

Смотри на @ROADMAP.md
Выполни Этап 1: создай базовую структуру проекта.
Нужно:
  • requirements.txt со всеми зависимостями (aiogram 3, aiosqlite)
  • config.py для хранения токена бота (читаем из переменной окружения BOT_TOKEN)
  • database.py — инициализация SQLite базы с таблицей expenses (id, user_id, amount, category, description, created_at)
  • main.py — точка входа с базовым хендлером /start
Токен бота я добавлю позже через .env файл.
Отметь Этап 1 в ROADMAP.md как выполненный.

После генерации попросите создать .env файл:

Создай файл .env.example с шаблоном:
BOT_TOKEN=ваш_токен_сюда
И создай .gitignore который исключает .env из git

Создайте .env вручную, вставьте реальный токен от BotFather.

Запустите бота:

# В терминале Cursor

pip install -r requirements.txt
python main.py

Найдите своего бота в Telegram и отправьте /start. Если бот ответил — первый этап пройден.


Шаг 6: Добавляем базу данных и логику расходов

Продолжайте по Roadmap. Следующий промт:

Смотри на @ROADMAP.md и @database.py
Выполни следующий этап: добавь функцию сохранения расходов в базу данных.
В database.py добавь функции:
  • save_expense(user_id, amount, category, description) — сохраняет запись
  • get_monthly_report(user_id) — возвращает расходы за текущий месяц: общую сумму и группировку по категориям
  • get_categories(user_id) — возвращает уникальные категории пользователя

В main.py добавь обработчик обычных текстовых сообщений, который:

  • Пытается распознать сумму и категорию из текста (простая логика: первое число = сумма, остальное = описание/категория)
  • Если распознал — сохраняет и отвечает: "Записал: {сумма} руб, категория: {категория}"
  • Если не распознал — просит написать в формате "500 кафе" или "потратил 300 на такси"

Отметь этап в ROADMAP.md.


Шаг 7: Добавляем кнопки и команды

Смотри на @ROADMAP.md и @main.py
Добавь:
1. Команду /categories — показывает инлайн-клавиатуру с категориями пользователя.
При нажатии на категорию — показывает расходы по ней за текущий месяц.
2. Команду /report — показывает сводку за текущий месяц:
  • Общая сумма расходов
  • Топ-3 категории с суммами
  • Красиво отформатированный текст с эмодзи
3. Команду /help — список всех команд с описанием
Используй aiogram 3 InlineKeyboardMarkup для кнопок.
Отметь этап в ROADMAP.md.

Типичные проблемы и как их решать

При вайбкодинге боты почти никогда не работают идеально с первого раза. Вот что делать с частыми проблемами.

Бот не отвечает после запуска. Проверьте токен в .env. Скопируйте точный текст ошибки из терминала и вставьте в чат Cursor: «вот ошибка при запуске, исправь:». AI разберется.

Ошибки с виртуальным окружением. В Python-проектах нужно запускать код из активированного venv:

# macOS/Linux

source venv/bin/activate

# Windows

venv\Scripts\activate

Если venv не создан, попросите Cursor: «создай виртуальное окружение и установи зависимости».

AI начинает переписывать уже рабочий код. Перед каждым новым этапом явно указывайте, что трогать нельзя: «добавь только команду /report, не изменяй логику сохранения расходов которая уже работает».

Бот завис в бесконечном цикле ошибок. Откройте новую сессию чата, начните с чистого листа и опишите задачу по-другому. Иногда контекст предыдущих попыток мешает.

Пропал контекст, AI не понимает проект. Добавьте @ROADMAP.md и нужные файлы явно в каждый запрос. AI не держит память между сессиями.


Промт для полного рабочего бота одной командой

Если хотите собрать всё быстрее, вот расширенный стартовый промт:

Создай полного Telegram-бота для учета личных расходов.
Стек: Python 3.11, aiogram 3.x, aiosqlite, python-dotenv
Функционал:
1. /start — приветствие и инструкция
2. /help — список всех команд
3. Обработка текстовых сообщений: парсит "500 кафе" или "потратил 300 на такси" -> сохраняет в БД
4. /report — сводка за текущий месяц (общая сумма + топ-3 категории)
5. /categories — инлайн-клавиатура с категориями, по клику — расходы за месяц
6. /delete_last — удалить последнюю запись
База данных: SQLite, таблица expenses (id INTEGER PRIMARY KEY, user_id INTEGER, amount REAL, category TEXT, description TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP)
Токен бота читается из .env файла как BOT_TOKEN
Создай:
  • requirements.txt
  • .env.example
  • .gitignore
  • config.py
  • database.py (инициализация + все функции)
  • handlers.py (все хендлеры сообщений)
  • main.py (точка входа)

В каждом файле — комментарии на русском языке что делает каждая функция.


Где запустить бота: варианты хостинга

Изображение

Бот, запущенный на вашем компьютере, работает только когда компьютер включен. Для постоянной работы нужен сервер.

Railway — рекомендуем для старта

Railway — облачная платформа, доступная из России. Дает $5 на счет при регистрации. По реальному опыту разработчиков из Хабра: за неделю работы бота списывается около $0.40. То есть стартового баланса хватит примерно на три месяца.

Как задеплоить:

  1. Создайте репозиторий на GitHub и запушьте код
  2. Зарегистрируйтесь на railway.app
  3. Нажмите «New Project» -> «Deploy from GitHub repo»
  4. Выберите свой репозиторий
  5. В настройках добавьте переменную окружения BOT_TOKEN со своим токеном
  6. Railway сам установит зависимости и запустит бота

Попросите Cursor создать нужные файлы для деплоя:

Добавь в проект:

- Procfile с содержимым: worker: python main.py

- runtime.txt с содержимым: python-3.11.0

Это нужно для деплоя на Railway.

Render — бесплатный тариф

Render.com предлагает бесплатный тариф для веб-сервисов и воркеров. Единственный минус: на бесплатном тарифе сервис засыпает через 15 минут неактивности. Для бота это не критично — он проснется при первом сообщении, но с задержкой.

VPS на отечественных провайдерах

Если хотите больше контроля — арендуйте VPS у Selectel, Timeweb или Reg.ru. Минимальный тариф от 200-300 руб/мес. Попросите Claude Code настроить деплой:

Я хочу задеплоить бота на VPS с Ubuntu.

Создай пошаговую инструкцию: установка Python, клонирование репозитория,

запуск через systemd чтобы бот работал постоянно и перезапускался при ошибках.


Как добавить AI-обработку через OpenRouter

Базовый бот хорош, но с AI он становится умнее. Например, вместо ручного парсинга «500 кафе» можно попросить модель:

# Пример промта для модели

"Из текста '{user_message}' извлеки: 1) сумму в рублях (число),
2) категорию расходов одним словом (например: еда, транспорт, развлечения).
Ответь ТОЛЬКО в формате JSON: {'amount': число, 'category': 'строка'}.
Если не удалось распознать расход — верни null."

OpenRouter — агрегатор API моделей. Поддерживает DeepSeek V3.2 (очень дешево — $0.28 за млн токенов), Claude Sonnet 4.6, GPT-5.4 и другие. Выгоден тем, что при пополнении баланса на $10 снимается ограничение в 50 запросов/день.

Попросите Cursor добавить интеграцию:

Добавь в бота интеграцию с OpenRouter для умного парсинга расходов.
В requirements.txt добавь: httpx
В .env.example добавь: OPENROUTER_API_KEY=ваш_ключ
Создай llm.py с функцией parse_expense(text: str) -> dict | None,
которая отправляет запрос к модели deepseek/deepseek-chat через OpenRouter API
и возвращает {'amount': float, 'category': str} или None если не удалось распознать.
В handlers.py замени ручной парсинг на вызов этой функции.

Идеи для ботов с реальным потенциалом монетизации

Изображение

Теперь, когда понятна механика, вот что стоит строить.

Бот для записи клиентов — аналог Calendly для мастеров, репетиторов, тренеров. Синхронизация с Google Календарем. По данным из видео, сервис Calendly зарабатывает $300M в год. Вы можете продавать аналогичный функционал мастерам по 1000 руб/мес.

AI-дайджест каналов — бот мониторит несколько Telegram-каналов и присылает краткий дайджест раз в день. Реальный кейс: разработчик создал такой бот за неделю через Claude Code и использует его сам.

Бот-квиз для лид-магнита — пользователь проходит опрос, получает результат и попадает в базу. Классическая воронка продаж.

Мини-CRM через бота — клиенты пишут боту, менеджер видит все обращения в одном интерфейсе. Для малого бизнеса часто удобнее любой сложной системы.

Изображение

Полные обзоры инструментов на VibeCoderz

Хотите разобраться, как создать конкретный тип бота под вашу задачу? Напишите Максиму — поможет с архитектурой и стеком.


FAQ

Нужно ли знать Python чтобы создать бота? Нет — AI напишет код за вас. Но нужно понимать базовые концепции: что такое файл, функция, команда в терминале. Если совсем нет технического бэкграунда — попробуйте сначала конструктор без кода (Salbot, SendPulse).

Telegram работает без VPN в России? Да, Telegram разблокирован и работает в России без ограничений с 2020 года.

Сколько стоит держать бота в работе? На Railway — примерно $0.40 в неделю ($1.5-2 в месяц). На бесплатном тарифе Render — $0. Если использовать AI (OpenRouter с DeepSeek) — зависит от трафика, но для личного бота с несколькими пользователями — копейки.

Что делать если бот сломался после обновления? git revert откатит последние изменения. Именно поэтому важно коммитить код в GitHub после каждого рабочего этапа — это точки восстановления.

Можно ли добавить оплату через бота? Да. Telegram поддерживает встроенные платежи. В России работает ЮKassa — у неё есть официальная интеграция с Telegram Bot API. Попросите AI добавить её:

Добавь в бота прием платежей через ЮKassa.

Нужна команда /premium которая запускает процесс оплаты 299 руб.

После успешной оплаты записывать статус premium в базу данных для user_id.

Как бот работает когда компьютер выключен? Никак — нужен сервер. Смотрите раздел про Railway или VPS выше.


Глоссарий

BotFather — официальный бот Telegram для создания и управления ботами. Через него получают токен.

Токен бота — уникальный ключ доступа к API вашего бота. Выглядит как 1234567890:ABCdef.... Никогда не публикуйте его публично.

aiogram — популярная Python-библиотека для создания Telegram-ботов. Асинхронная, хорошо поддерживается, много документации.

SQLite — встроенная база данных, которая хранится в одном файле. Не требует отдельного сервера. Хорошо подходит для ботов с небольшой нагрузкой.

Хендлер — функция, которая обрабатывает входящее сообщение или команду. Например, хендлер /start срабатывает когда пользователь пишет /start.

Инлайн-клавиатура — кнопки под сообщением бота, которые работают через callback-запросы. Не путать с reply-клавиатурой (кнопки вместо клавиатуры ввода).

Webhook vs Long polling — два способа получать сообщения. Long polling: бот сам спрашивает «есть ли новые сообщения?» каждые несколько секунд. Webhook: Telegram присылает сообщение само когда оно появляется. На Railway удобнее long polling.

Railway — облачная платформа для деплоя приложений. Работает из России, дает $5 на старт.

VPS — Virtual Private Server. Арендованный виртуальный сервер с постоянным IP и Ubuntu. Самый гибкий, но требует базового знания Linux.

OpenRouter — агрегатор API языковых моделей. Один API-ключ дает доступ к Claude, GPT, DeepSeek, Gemini и другим.

Roadmap — дорожная карта проекта с разбивкой на этапы. Ключевой инструмент при вайбкодинге: помогает AI не путаться и давать предсказуемые результаты.


Статья подготовлена командой VibeCoderz — крупнейшей базы знаний по AI IDE и вайбкодингу в СНГ. Последнее обновление: март 2026.

All Posts

Автор

Максим Наговицын
Максим Наговицын

2026/04/09