Дебаггинг с AI

Как использовать AI для поиска и исправления багов. Systematic debugging

Категория
Практика
Сложность
Средний

Что это

AI-дебаггинг — использование моделей для диагностики и исправления ошибок. AI отлично понимает стектрейсы, логи и может предложить исправления. В вайбкодинге ключевой принцип: ошибка — это ещё один промпт. Скопировал ошибку → вставил агенту → получил фикс.

Пошаговый процесс

1. Скопируй ошибку целиком

Полный стектрейс, а не «у меня ошибка». Чем больше контекста — тем точнее диагноз.

Вот ошибка при запуске бота на Railway:

Traceback (most recent call last):
  File "bot.py", line 45, in main
    await application.run_polling()
  File "telegram/ext/_application.py", line 1235
RuntimeError: This event loop is already running

2. Опиши ожидаемое vs реальное

Ожидаю: бот отвечает на /start в Telegram
Получаю: бот запускается, но не реагирует на сообщения.
Логи Railway показывают "No error", но webhook не приходит.

3. AI предлагает гипотезу и фикс

Агент анализирует стектрейс, проверяет код, предлагает исправление. В Claude Code — агент сам применяет фикс и запускает тесты.

4. Проверь и итерируй

Применил фикс → проверил → работает? Если нет — копируешь новую ошибку → агенту.

Пример из курса: repair loop на Railway

На Уроке 3 студенты деплоят бота на Railway. Типичный сценарий:

Студент: "У меня ошибка на Railway, разберись"

Агент (Claude Code):

  1. Запускает railway logs через CLI
  2. Находит ошибку: ModuleNotFoundError: No module named 'openai'
  3. Понимает: в requirements.txt не добавлена зависимость
  4. Добавляет openai в requirements.txt
  5. Коммитит и пушит → Railway автоматически редеплоит
  6. Проверяет логи — бот работает

Весь repair loop без ручного вмешательства.

Техники дебаггинга

Rubber Duck с AI

Объясните проблему AI как коллеге. Часто в процессе формулировки находите решение сами. AI при этом ещё и предложит свои гипотезы.

Systematic Debugging

1. Воспроизведи баг
2. Изолируй проблему (минимальный пример)
3. Сформулируй гипотезу
4. Проверь с помощью AI
5. Примени исправление
6. Проверь регрессии

Дебаг через логи

Покажи последние 50 строк логов Railway.
Найди ошибки и предложи исправления.

В Claude Code с Railway CLI агент сам читает логи и предлагает фиксы.

Чего не делать

ОшибкаПочему плохоЧто делать
«Исправь все баги»Слишком общий запросКонкретная ошибка + стектрейс
Принять фикс не разобравшисьНакопление технического долгаПопросить объяснить причину
Игнорировать предупрежденияПобочные эффектыСпросить «что может сломаться?»
Дебажить в переполненном контекстеАгент путает деталиНачать новый чат с чистым контекстом

Инструменты для дебаггинга

ИнструментДля чего
Claude CodeАвтономный дебаг: читает логи, применяет фиксы, запускает тесты
CursorInline-дебаг в контексте файла
Railway CLIЛоги серверных приложений
Chrome DevTools MCPДебаг фронтенда через агента

В курсе

УрокКонтекст
Урок 2Ошибка — это ещё один промпт. Копируем ошибку → вставляем агенту → получаем фикс
Урок 3Repair loop на Railway: агент подключается к Railway CLI, читает логи, находит и чинит ошибку

Ссылки

Связанное

  • Claude Code — основной инструмент для AI-дебаггинга
  • Контекст — чистый контекст = точный дебаг
  • Pipeline — дебаг как часть цикла разработки
  • AI pair programming — совместная работа с AI
Редактировать на GitHub →