Создание инструментов без программирования: цветной анализатор логов с ИИ | AiManual
AiManual Logo Ai / Manual.
04 Фев 2026 Гайд

Как я, не умея кодить, создал цветной анализатор логов за 3 часа с помощью ИИ

Пошаговый гайд: как без навыков программирования создать рабочий инструмент для подсветки логов с помощью LLM. Практический кейс с кодом и промптами.

Проблема: я ненавижу читать однотонные логи, но не знаю Python

Каждый день я смотрю на терминал. Черный текст на белом фоне. Сотни строк. Ошибки, предупреждения, информационные сообщения - все одного цвета. Я трачу минуты, чтобы найти нужную строчку. Иногда пропускаю критическую ошибку, потому что она сливается с общим потоком.

Раньше я думал: "Нужно написать скрипт для подсветки логов". Потом вспоминал, что последний раз писал код в школе, 15 лет назад. И откладывал идею до следующего раза.

💡
Ключевой момент: большинство инструментов автоматизации не требуют глубоких знаний программирования. Нужно понимать логику, а код может написать ИИ. Это и есть essence of vibe-coding - вы описываете проблему, ИИ генерирует решение.

Решение: заставить ИИ работать как личного разработчика

В 2026 году ситуация изменилась. Современные LLM вроде Claude 3.7 Sonnet или GPT-5 могут не просто генерировать код, но и понимать контекст, исправлять ошибки, предлагать улучшения. Главное - правильно сформулировать задачу.

Моя цель: создать утилиту командной строки, которая:

  • Читает логи из файла или stdin
  • Автоматически определяет типы сообщений (ERROR, WARN, INFO, DEBUG)
  • Раскрашивает каждую категорию в свой цвет
  • Работает в реальном времени (tail -f)
  • Имеет простые настройки цветовой схемы

Звучит сложно? Для человека без опыта - да. Для современного ИИ - стандартная задача.

1 Шаг первый: выбираем оружие

В 2026 году выбор огромен. Я остановился на Claude Code (последняя версия) по трем причинам:

  • Бесплатный доступ через Anthropic API с лимитом в 100 запросов в день
  • Отличное понимание контекста и способность "держать в голове" длинные диалоги
  • Специализация на генерации кода (не зря же в названии Code)

Важный нюанс: не используйте общие модели вроде ChatGPT для сложных технических задач. Они хороши для объяснения концепций, но для генерации рабочего кода нужны специализированные инструменты. Как я писал в статье про неосознанный вайб-кодинг, слепая вера в любую модель приводит к плохим результатам.

2 Шаг второй: правильный промпт - 80% успеха

Вот промпт, который сработал у меня с первого раза:

Создай утилиту командной строки на Python для цветной подсветки логов.

Требования:
1. Читает логи из файла (передается как аргумент) или из stdin
2. Автоматически определяет строки с ERROR, WARN/WARNING, INFO, DEBUG
3. Раскрашивает: ERROR - красный, WARN - желтый, INFO - зеленый, DEBUG - синий
4. Поддерживает флаг --follow для отслеживания изменений файла (как tail -f)
5. Имеет флаг --colors для кастомной цветовой схемы в формате "error:red,warn:yellow"
6. Выводит только раскрашенный текст, ничего лишнего
7. Работает в Linux/macOS терминале
8. Код должен быть простым, без сложных зависимостей

Начни с основного скрипта, потом добавь README с примерами использования.

Что здесь важно:

  • Конкретные технические требования (флаги, форматы)
  • Ограничения (простой код, минимум зависимостей)
  • Ясный ожидаемый результат
  • Контекст использования (Linux/macOS терминал)

3 Шаг третий: тестируем и исправляем

Claude сгенерировал 120 строк кода. Я скопировал их в файл colorlog.py и попробовал запустить:

python3 colorlog.py --help

Работало. Попробовал с тестовым логом:

echo -e "INFO: Starting service\nERROR: Connection failed\nWARN: Retrying..." | python3 colorlog.py

Цвета появились, но... ERROR и WARN определялись некорректно. Проблема: модель использовала простые регулярные выражения, которые ловили слова внутри строк ("feature", "warningly").

Вот как выглядел ошибочный код:

# ПЛОХОЙ ПРИМЕР (так делать не надо)
def colorize_line(line):
    if "ERROR" in line:
        return f"\033[91m{line}\033[0m"  # Красный
    if "WARN" in line or "WARNING" in line:
        return f"\033[93m{line}\033[0m"  # Желтый
    # ...

Проблема: "WARNING" в середине слова тоже триггерило подсветку. Нужно было искать только в начале строки или после определенных разделителей.

Я написал Claude:

Код работает, но есть проблема с определением типов логов.
Сейчас "WARNING" внутри слова тоже подсвечивается желтым.
Измени регулярные выражения так, чтобы искать только:
- В начале строки (после возможных временных меток)
- После пробелов/скобок
- Но не внутри других слов

Пример: "[15:30] WARNING: message" - должно подсветиться
Пример: "This feature is warningly slow" - НЕ должно подсветиться

Claude исправил код, использовав более сложные регулярные выражения. Это важный момент: когда вы не знаете, как решить техническую проблему, опишите ее максимально конкретно. Не говорите "исправь баг", а объясните, в чем именно проблема и приведите примеры.

4 Шаг четвертый: добавляем фичи через диалог

Рабочий скрипт готов. Но я хочу больше:

  • Подсветку номеров строк
  • Фильтрацию по типу лога (только ERROR, например)
  • Поддержку разных форматов логов (JSON, syslog)

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

Запрос для добавления фильтрации:

Добавь флаг --filter=TYPE, где TYPE может быть error, warn, info, debug или all.
Если указан --filter=error, выводи только строки с ERROR.
Если --filter=warn, выводи ERROR и WARN (более серьезные уровни тоже показываются).
По умолчанию --filter=all (все сообщения).

Такой подход работает лучше, чем "сделай все и сразу". Модель фокусируется на одной задаче, меньше ошибается, вы лучше контролируете процесс.

Готовый инструмент: что получилось в итоге

Через 3 часа работы с Claude у меня был полноценный colorizer логов. Вот основные команды:

# Базовая подсветка
python3 colorlog.py app.log

# Режим tail -f
python3 colorlog.py --follow app.log

# Только ошибки
python3 colorlog.py --filter=error app.log

# Кастомные цвета
python3 colorlog.py --colors="error:magenta,warn:cyan" app.log

# Чтение из pipe
docker logs my_container | python3 colorlog.py --filter=warn

Инструмент реально экономит мне 10-15 минут каждый день. И самое главное - я его создал сам, без единой строчки кода, написанной вручную.

Что делал я Что делал ИИ Время
Формулировал требования Генерировал код на Python 30 минут
Тестировал и находил баги Исправлял регулярные выражения 45 минут
Просил дополнительные фичи Добавлял фильтрацию и кастомные цвета 60 минут
Писал документацию Генерировал README с примерами 45 минут

Ошибки, которые я совершил (чтобы вы их не повторили)

Не все было гладко. Вот главные косяки:

Ошибка 1: Слишком расплывчатые требования в первом промпте. Первая версия скрипта не обрабатывала временные метки перед уровнем лога. Пришлось переделывать.

Ошибка 2: Попытка добавить все фичи сразу. Когда я попросил "добавь фильтрацию, подсветку номеров строк и поддержку JSON", Claude сгенерировал запутанный код, который не работал. Пришлось откатиться и добавлять по одной фиче.

Ошибка 3: Не тестировать промежуточные версии. После каждого изменения нужно запускать скрипт и проверять, что он хотя бы запускается. Один раз я накопил 5 изменений, и когда что-то сломалось, не мог понять, какое именно изменение было проблемным.

FAQ: ответы на частые вопросы

А если я вообще не знаю, как формулировать технические требования?

Начните с описания проблемы на человеческом языке. "Мне нужно, чтобы логи были цветными. Ошибки - красные, предупреждения - желтые. Хочу видеть только ошибки, если нужно. Хочу, чтобы работало с файлами и с выводом других программ."

Потом попросите ИИ: "Преврати эти требования в техническую спецификацию для утилиты командной строки." Модель сама предложит флаги, форматы, варианты использования.

Какую модель лучше использовать в 2026 году?

Для генерации кода:

  • Claude Code - лучший баланс качества и доступности
  • GPT-5 Coder (если есть доступ) - немного лучше понимает контекст
  • Qwen Coder 480B - отличная open-source альтернатива, как в статье про Ralph Wiggum prompt
  • JanusCoder - если нужна работа с визуальным контекстом (скриншотами интерфейсов)

Что делать, если код не работает после генерации?

Копируйте ошибку и отправляйте ИИ. "При запуске скрипта получаю ошибку: ImportError: no module named 'colorama'. Как исправить?"

Или: "Скрипт запускается, но не раскрашивает строки с ERROR. Вот пример лога: [2026-02-04 15:30] ERROR: Connection timeout. Что не так?"

Чем конкретнее описание проблемы, тем точнее будет решение.

Что дальше? От colorizer к полноценной платформе

Создав первый инструмент, вы поймете главное: программирование - это не про синтаксис, а про решение проблем. Синтаксис может сгенерировать ИИ.

Мой следующий проект - аналог Infer, но для анализа логов. Утилита, которая не просто раскрашивает, но и находит паттерны, предсказывает ошибки, предлагает решения.

Совет напоследок: не пытайтесь стать программистом. Станьте архитектором, который использует ИИ как строительную бригаду. Вы проектируете, ИИ строит. Вы тестируете, ИИ исправляет. Это и есть будущее разработки - и оно уже наступило.

Попробуйте. Возьмите задачу, которая вас бесит каждый день. Опишите ее ИИ. Получите работающий инструмент. Вы удивитесь, насколько это просто - когда у вас есть правильный "сотрудник".