← Все статьи
Туториал·14 мин·24 апреля 2026 г.

Вайбкодинг с Claude: как создать Telegram-бота на Python и aiogram

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

Telegram-бот — один из лучших первых проектов для вайбкодинга с Claude. У него короткий пользовательский путь, понятный результат и быстрый запуск: пользователь пишет боту, бот отвечает, сохраняет данные, отправляет уведомления или выдаёт услугу.

Это не абстрактный "hello world". Через бота можно проверить реальную продуктовую гипотезу: - консультационный помощник - бот для заявок - VPN или подписочный сервис - генератор текстов - бот для записи клиентов - бот для внутренней команды - мини-CRM в Telegram

Главное преимущество: не нужно сразу делать сайт, личный кабинет и сложный интерфейс. Telegram уже даёт оболочку, а Claude помогает собрать логику.

Что мы будем собирать

В этой статье разберём процесс создания Telegram-бота через Claude в формате вайбкодинга: не "скопируйте идеальный код", а как реально вести диалог, получать структуру проекта, чинить ошибки и довести бота до запуска.

Стек: - Python 3 - aiogram 3 - SQLite - python-dotenv - logging - .env для токена - простая структура файлов - recovery mode: как чинить ошибки без переписывания всего проекта

Что нужно до старта

Минимум: - Telegram-аккаунт - бот, созданный через BotFather - токен бота - Python 3.11+ - доступ к Claude - редактор кода: Cursor или VS Code

BotFather нужен только для создания бота и получения токена. Токен нельзя вставлять в код. Его нужно хранить в .env.

Первый промпт для Claude

Плохой промпт:

Напиши Telegram-бота.

Хороший промпт:

Хочу создать Telegram-бота на Python. Стек: aiogram 3, SQLite, python-dotenv, logging. Токен хранится в `.env`. Бот должен принимать команду `/start`, показывать меню, сохранять пользователя в базу, принимать текстовую заявку и отправлять её админу. Сначала предложи структуру проекта и объясни, какие файлы нужны. Код пока не пиши.

Почему так лучше: - Claude понимает стек - не кладёт всё в один файл - сначала думает архитектурой - не начинает писать хаотичный код - учитывает базу, токен и логирование

Хорошая структура проекта

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

telegram_bot/
  bot.py
  config.py
  database.py
  handlers.py
  keyboards.py
  requirements.txt
  .env.example
  README.md

Что делает каждый файл:

ФайлЗачем нужен
`bot.py`точка запуска бота
`config.py`загрузка токена и настроек
`database.py`работа с SQLite
`handlers.py`команды и сообщения пользователя
`keyboards.py`кнопки и меню
`requirements.txt`зависимости
`.env.example`пример переменных окружения
`README.md`инструкция по запуску

Это уже сильнее, чем один огромный файл, который сложно поддерживать.

Промпт на генерацию основы

Когда структура понятна, можно просить код:

Теперь напиши минимальную рабочую версию проекта по этой структуре. Важно: не усложняй. Нужны `/start`, сохранение пользователя в SQLite, кнопка "Оставить заявку", приём текста заявки и отправка админу. Все файлы дай отдельно. Объясни, куда каждый файл положить.

Claude должен выдать отдельные файлы. Если он начинает писать всё одним блоком, остановите:

Не объединяй всё в один файл. Раздели код по структуре проекта и объясни, что куда положить.

Пример `.env.example`

BOT_TOKEN=your_telegram_bot_token
ADMIN_ID=123456789

Важно: настоящий .env не коммитим в git. В репозиторий можно положить только .env.example.

Пример зависимостей

aiogram==3.*
python-dotenv==1.*

Если Claude предлагает старый синтаксис aiogram 2, нужно сразу поправить:

Используй только aiogram 3. Не используй executor из aiogram 2.

Как вести разработку дальше

После первой версии не просите "добавь всё". Добавляйте по одному сценарию: - кнопка "Оставить заявку" - запись заявки в базу - отправка админу - команда /help - inline-кнопки - статус заявки - выгрузка заявок - оплата

Промпт:

Добавь сценарий "Оставить заявку". Не переписывай весь проект. Покажи только изменения: какой файл открыть, что добавить и после какой строки.

Эта фраза критически важна. Без неё Claude может переписать весь проект и сломать рабочие части.

Recovery Mode: как чинить ошибки через Claude

В реальной разработке всё ломается. Нормальный процесс такой: 1. Запускаете бота. 2. Получаете ошибку. 3. Копируете traceback. 4. Отправляете Claude. 5. Просите минимальный фикс.

Промпт:

Вот ошибка из терминала. Не переписывай весь код. Объясни причину простыми словами и дай минимальное исправление: какой файл открыть, что заменить, что добавить. Я новичок.

Так Claude работает точнее. Он перестаёт "улучшать архитектуру" и чинит конкретную проблему.

Частые ошибки aiogram 3

ОшибкаПричинаЧто делать
импорт из aiogram 2Claude взял старый примерявно попросить aiogram 3
бот не видит `.env`файл лежит не тампроверить путь и `load_dotenv()`
сообщения не доходят админуневерный `ADMIN_ID`получить id через userinfobot
база не создаётсянет init-функциивызвать создание таблиц при старте
бот падает после ошибкинет try/except и логовдобавить logging и обработку исключений

Деплой на сервер

Для первой версии можно запустить бота на VPS.

Минимальный порядок: 1. Скопировать проект на сервер. 2. Создать .env. 3. Установить зависимости. 4. Запустить бота. 5. Проверить логи. 6. Настроить постоянный запуск через systemd или pm2.

Промпт для Claude:

Дай инструкцию деплоя Telegram-бота на Ubuntu VPS. Проект на Python aiogram 3. Нужны venv, установка зависимостей, `.env`, systemd service, команды проверки логов.

Claude обычно хорошо даёт базовую инструкцию, но пути и права доступа всё равно нужно проверять на конкретном сервере.

Что добавить, чтобы бот стал продуктом

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

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

Где Claude сильнее, чем обычный туториал

Обычный туториал показывает один идеальный путь. Claude помогает адаптировать бота под вашу задачу: - поменять сценарий - добавить поля - подключить другую базу - сделать админку - встроить AI-ответы - подготовить README - объяснить ошибку новичку

Но это работает только если вы контролируете процесс.

Что нельзя отдавать Claude без контроля

Не доверяйте модели вслепую: - платежи - персональные данные - безопасность токенов - права админа - массовые рассылки - обработку ошибок в продакшене

Claude ускоряет разработку, но ответственность остаётся на владельце проекта.

FAQ

Можно ли создать Telegram-бота с Claude без опыта кода?

Да, если бот простой и вы работаете маленькими шагами. Но нужно понимать, что такое токен, .env, база данных и запуск на сервере.

Что лучше для Telegram-бота: aiogram или python-telegram-bot?

Оба варианта рабочие. Для современных проектов на Python часто выбирают aiogram 3, но важно не название библиотеки, а стабильная структура и понятная логика.

Можно ли сделать бота за один вечер?

Минимальную версию — да. Продуктовую версию с оплатой, логами, обработкой ошибок и деплоем лучше планировать на несколько дней.

Почему Claude иногда даёт нерабочий код?

Потому что библиотеки обновляются, а модель может смешивать старые и новые примеры. Поэтому нужно просить конкретную версию и проверять ошибки.

Как сделать бота коммерческим?

Добавить платёжный сценарий, тарифы, лимиты, поддержку, аналитику и понятную ценность для пользователя. Сам бот — это только интерфейс к продукту.

Вывод

Чтобы переиграть обычные статьи про "Claude и вайбкодинг", нужно показывать не хайп, а процесс: структура, промпты, ошибки, recovery mode и деплой. Telegram-бот идеально подходит для этого, потому что даёт быстрый путь от идеи до работающего результата.

Если у вас есть идея бота, начните с первого промпта: опишите аудиторию, сценарий, стек и попросите Claude сначала спроектировать структуру, а не писать код.


Хочешь так же?

Персональное обучение вайбкодингу. От идеи до запуска за 2 недели.

Начать обучение

Читайте также