ChatGPT, я пришел договориться: как автоматизировать всю игровую медиа-редакцию с помощью вайб-кодинга
С чего всё началось
С обычной редакции, конечно. В качестве главного редактора меня пригласили на проект PayGame — маркетплейс для покупки и продажи внутриигровых ценностей. Поскольку опыт в играх у меня был колоссальный, а проекту нужен был редактор, который не только умеет отвечать за буквы, но и на мид выйдет раз на раз, а ещё отличит L2 от WoW по музыке — я оказался идеальным кандидатом.
Собрав команду из нескольких редакторов и построив примерный план постинга, мы приступили к работе. Тогда и нейросетей ещё в помине не было. Но вот выходит первый ChatGPT, мы знакомимся с ним и понимаем, что эта железяка ещё долго не сможет писать тексты, тем более по играм.
Прошли годы, редакция стала больше, а я продолжал искать тот самый идеальный стиль для игровых новостей, заодно поглядывая в сторону ИИ. Примерно год назад эпично выстрелила Google AI студия, где можно было по одному промпту собрать себе мини-приложение под конкретные кейсы и эксплуатировать ИИ. Так я и сделал, ведь примерно в это время стал ИИ-редактором в Альфа-Банке, а PayGame уже был родным проектом. Я настроил промпты, входы и выходы, получил 2 окна с небольшими пресетами по объему и возможность копировать все одной кнопкой. Выглядело это примерно так:

Суть AI Studio в том, что любым мини-приложением можно поделиться с другим человеком или сделать открытый доступ, чтобы любой желающий мог сгенерить себе картинки, написать тексты или сделать то, ради чего такое приложение создавалось. Я ещё потом смог сделать транскрибатор из mp3 с майнд-картой и тезисами, но это уже другая история.
Этим райтером из студии мы всей редакцией пользовались почти год, и уже с первых месяцев удалось увеличить количество выпускаемого контента в 3 раза. Скорость при этом тоже выросла — х3 новостей мы иногда делали быстрее, чем х1 до появления инструмента. Также с его помощью мы пробились в RSS-ленту Дзена, ведь ИИ внутри мини-приложения учитывал все правила платформы.
Почти за год мы выпустили около 2000 новостей по играм

Весь контент для новостей мы тогда делали с помощью Gemini 2.5 Flash и Pro. А что было с качеством текстов, спросите вы? А я скажу, что на создание идеального промпта (потом я понял, что он далеко не идеальный) у меня ушло 4 недели попыток, тестов, генераций и переписываний с нуля. В конце я получил то, к чему стремился, и каждый новый текст, который мы генерили в ИИ, был не просто обучен на наших прошлых текстах, написанных авторами. Он был чем-то особенным. И создавался за пару кликов.
Внутри всё выглядело вот так:



Но показывать всё я вам, конечно же, не стану.
И целого промпта мало
Да, AI Studio стала классным временным решением. Но я подчеркну — временным. Иногда заканчивались лимиты, иногда сбоили наши сервисы, которые открывали доступ к студии, а иногда нейросеть ужасно сильно тупила и выдавала дичь. Когда вышла Gemini 3.1 Pro — мы сразу же перешли на нее, но лимитов хватало на несколько новостей в день. Для большой медиа-редакции этого мало. Очень мало.
Как-то обходить систему? Нет, это не мой вариант. Я понял, что надо покупать API-ключ и давать редакторам безлимитный доступ к инструменту. Но к этому моменту мне уже не нравилась AI Studio, особенно из-за региональных ограничений, и я отправился к великому ChatGPT за советом. Делать новое приложение — себе дороже. А использовать наработки из старого, чтобы выйти на новый уровень — это уже совсем другой разговор.
ChatGPT, я пришёл договориться.

Так выглядел мой первый промпт с описанием того, что мне вообще нужно. В идеале я хотел прийти к чему-то, вроде «нажми кнопку — выбери новость — опубликуй на сайте». То есть я полностью убирал шаги, где редактор сам ходит по игровым сайтам и собирает новости, потом ждёт, пока ИИ сгенерирует текст, и добавляет эти новости в админку — те самые ужасно нудные и бесполезные для специалиста шаги.
Начали выбирать, где и как лучше создать такой инструмент:

Дальше я выбрал формат, закинул ему данные по API нашей админки, промпт, который использовал в AI Studio, и в целом ответил на все вопросы, которые он мне задал. Через несколько минут у меня на руках уже был полноценный архив версии 0.1, который ChatGPT собрал под ключ. Все, что мне оставалось, это распаковать архив, поставить Python, написать парочку команд в CMD и протестировать инструмент.

Казалось бы — радость, вайб-кодинг рулит и все такое, но ничего не заработало. Проблема была в том, что код от ChatGPT не смог пробиться в админку сайта из-за туннелирования подключения только для сотрудников. Мельком я сходил к разработчикам, узнал, что можно сделать, и благополучно переписал свой промпт, чтобы ChatGPT пересобрал код и позволил мне в приложении вставить данные, необходимые для авторизации. Там же я перенастроил туннелирование и… вуаля, пинг до админки начал доходить, а значит инструмент почти готов.
Все это вкратце, конечно, ведь еще часов 5 я исправлял ошибки установки и кидал ему скрины с мольбой о помощи
Потом я понял, что заголовки новостей в выдаче парсинга — это не очень удобно для восприятия. Да и в целом не хватало немного кнопок и инфы. Поэтому я снова пришёл договориться и получил новый архив:


Запускалось это добро через двойной клик по run_windows.bat через CMD. Консолька выдавала мне IP, и пока CMD открыта, мой инструмент работал на локальном сервере в браузере. Хотя выглядел не очень привлекательно и был крайне неудобным:

И все же, перед тем как перейти к редизайну, мне нужно было подключить ИИ и все протестировать. Хотя бы одну новость, которая по клику улетела бы в админку и ждала моего заветного «опубликовать».
Первый вопрос, который я задал нейронке — есть ли бесплатные API-ключи. По факту они есть, но там такие модели, что лучше писать руками. И я пошел к директору просить деньги на ключ, чтобы реализовать свою инициативу. И да, мне их выделили. Я пошел на один из популярных агрегаторов ключей для AI, купил там Claude Sonnet 4.6, потому что он дешевый и вполне себе адекватно генерит на русском языке, и приспособил его в свой инструмент. Пришло время парсить и генерировать. Кстати о парсинге — его я настроил максимально просто через RSS-ленты всех нужных мне игровых сайтов — он отдавал мне заголовок, ссылку, время публикации и описание. Если полного текста в ленте не было, инструмент пытался открыть сам материал, а для капризных источников вообще приходилось добавлять отдельные обходные сценарии. Парсер был таков:

В нем можно открыть оригинальную новость, загрузить текст в инструмент, если хочется проверить генерацию без отправки в админку, либо сразу загрузить в админку и проставить все параметры. По кнопке Fast-Track меня перекидывало в самый низ, где из оригинала доставалась картинка, а рядышком лежали переписанные тексты. Всё, что мне оставалось, — перейти в админку и проверить, появилась ли там новость. Да, она появилась, это победа. И даже нужные теги проставились автоматически — прощай, рутина. Но не все так просто.
В тот же день ко мне вернулся директор и сказал что-то вроде «а ты смотришь, чтобы это был не слоп?». Я ответил, что да, конечно, тексты максимально качественные, ну и мы их редачим. Мне кинули линк на великое изобретение Сбера, которое определяет, написан текст человеком или ИИ (по факту там сильный рандом и инструмент реагирует даже на кавычки «» вместо «», но у директора были сильные аргументы). Потом я прочитал новости и понял, что ИИ-штампы в них все же есть. Пошел обновлять промпт, но Сберовский инструмент беспощадно говорил, что тексты инструмента — это ИИ. Расширять промпт еще больше я не хотел, он и так был огромен, а значит нужно было импровизировать.
ChatGPT, я пришел договориться.

Так мы с ним прикрутили к основному системному промпту мой новый файл golden_examples.md, куда я сложил тексты, которые инструмент определял как человеческие. Системный промпт теперь перед каждой генерацией заходит в golden_examples.md, смотрит лучшие тексты и по их стилистике генерит новости.
Но я же опытный редактор, я всегда могу заподозрить что-то неладное. И я заметил, что уникальность сильно пострадала. То ли модельке стало плохо, то ли мои правила замылились, но 40% уникальности для новостей — это смертный приговор. Повезло, что я заметил это в момент тестирования, а не после публикации в блоге.
ChatGPT, я пришел договориться.

Очевидно, с первого раза ситуация почти не изменилась, поэтому мы еще несколько часов обсуждали, что такое уникальность и как ее добиться. Потому что редактор чувствует такие моменты, а ИИ — ничего не чувствует. Бездушная железяка. Ладно, шутки-шутками, но в итоге мы докрутили промпт с учетом моих комментариев и примеров рерайта так, чтобы теперь все тексты получались с уникальностью 100%. А ещё проходили через AI-детектор. И автоматически создавались в админке как черновики.
Итак, к чему мы пришли и что теперь делает редактор:
- Открывает инструмент
- Запускает парсер
- Выбирает новость
- Заходит в админку
- Проверяет
- Публикует
А как было до этого? Ну, если вкратце, то вот так:
- Открыть несколько сайтов
- Найти новость
- Понять, подходит ли она для PayGame
- Скопировать текст
- Открыть ИИ
- Вставить промпт или выбрать готовый сценарий
- Получить рерайт
- Скопировать заголовок
- Скопировать подзаголовок
- Скопировать текст
- Открыть админку
- Вставить все по полям
- Поставить теги
- Найти картинку
- Загрузить картинку
- Обрезать/сжать
- Проверить
- Опубликовать
И это после появления первого инструмента в AI Studio. Что было до него — сами понимаете. Грубо говоря, удалось избавиться от 12 лишних шагов, которые делали из редактора машину для копипаста, а не автора. Да, действия были простыми, но ужасно надоедливыми. Теперь их нет, а весь фокус идет на проверку качества текста.
Так и что, всех уволим теперь?
Неа, ведь теперь редакторы намного быстрее пишут новости и у них появилось намного больше времени для:
- Авторских статей
- Гайдов
- Текстов в соцсети
- Помощи саппорту
- Написания текстов для роликов
Зачем тратить на рерайт и копипаст по полчаса, если за это время можно опубликовать минимум 5 новостей, сходить подышать воздухом, вернуться и собрать гайд по любимой игре?
Ну-ка, а дизайн?
Дизайн я все же пересобрал, хотя бы базово и для удобства, и сейчас инструмент выглядит так:

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

Генерация длится примерно 5–10 секунд, а к спаршенным новостям всегда можно вернуться и провести через Fast-Track еще один инфоповод. Как только нейронка перестает мучить текст, он автоматически улетает в админку, создавая черновик, и редактор может провалиться туда по кнопке «Открыть черновик».


Для любой новости нужна картинка — у нас на сайте они обрезаются и сжимаются автоматически, а Fast-Track дает мне кнопку «Открыть поиск картинок», по которой можно попасть в Яндекс Картинки с предустановленными фильтрами по качеству и размеру.
Перетаскиваю подходящую картинку, проверяю текст (я же редактор всё же), ставлю тогл «Опубликовано» и новость улетает на сайт и в RSS. Весь путь — от поиска инфоповода до публикации — чуть меньше минуты. Хотя раньше рерайт одной новости вручную занимал от 5 до 15 минут.

С какими проблемами я сталкивался
- 403 на сайтах
- неполными RSS
- истекающими токенами
- региональными ограничениями
- повторением исходника
- ложными срабатываниями AI-детектора
- необходимостью ручного фактчека
Заглянем под капот
Первая версия была собрана на Python и Streamlit. Если совсем по-человечески, Streamlit берет Python-код и превращает его в локальное веб-приложение. Я запускал BAT-файл, открывалась консоль, внутри поднимался небольшой сервер, а сам интерфейс появлялся в браузере по адресу localhost. Пока консоль работает — жив и инструмент. Закрыл её — добро пожаловать обратно в каменный век и ручной копипаст.
Для прототипа Streamlit оказался идеальным. На нем можно быстро проверить парсер, подключение к ИИ, кнопки и отправку данных в админку. Но когда логика заработала, начали мешать ограничения интерфейса: верстка прыгала, элементы дублировались, а любую красивую карточку приходилось собирать с бубном.
Поэтому следующую версию я пересобрал на Next.js и TypeScript. Она тоже работает локально в браузере, но запускается уже через Node.js. Next.js отвечает за нормальный интерфейс и серверную часть приложения, а TypeScript следит, чтобы заголовок случайно не улетел в поле с тегами.
Дальше цепочка выглядит так: приложение собирает новости из RSS и других источников, приводит их к единому формату и сортирует по времени. После нажатия Fast-Track исходник, комментарий редактора, системный промпт и примеры из golden_examples.md отправляются в Claude через API. Модель возвращает строгий JSON с заголовком, подзаголовком, текстом, игрой, жанром и тегами.
Затем приложение авторизуется в API PayGame, при необходимости обновляет временный токен и создает в админке готовый черновик. Автоматической публикации я специально не делал: редактор всё равно должен проверить факты, выбрать картинку и решить, достоин ли материал кнопки «Опубликовано».

И какое у этого будущее?
Теперь инструмент можно развивать в любую сторону. Я планирую сделать так, чтобы весь функционал переехал напрямую в админку сайта, чтобы редакторам не приходилось заходить на отдельный ресурс или ставить софт себе на ПК через Python. Просто представьте работу: заходите в админку, собираете новости, нажимаете пару кнопок и ведете полноценный блог. Звучит утопично, и если бы мне сказали о таком хотя бы в 2021 году — я бы улыбнулся и пошёл по своим делам. Сейчас это ближе к реальности, чем когда-либо.
Почему именно новости? Тут всё ещё проще: новости очень неблагодарны, в медиа огромная конкуренция за любые инфоповоды и важно не утопать в рерайте часами, а максимально быстро выпустить качественный контент. Если вы опоздали с инфоповодом на 30–60 минут — ваш ресурс уже может индексироваться хуже, а игроки, довольно критичное комьюнити, с легкостью напишут вам комментарии о высоком пинге. Вы ведь опоздали, и вам нет прощенья.
И да, если вам интересно, одна такая новость стоит около 3 ₽
