Interpreter.ru 🛡 В админку
Нейросети и ИИ • 20.10.2026 • рейтинг 6

Автоматизация процессов в Medusa: как AI помогает ускорить релизы

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

Проблема: Ручные процессы релиза

На протяжении последних нескольких лет выпуск новой версии Medusa требовал выполнения множества ручных шагов для подготовки различных аспектов релиза. Это включало в себя публикацию релиза, его документирование, тестирование, составление заметок о релизе, создание изображений для нашего changelog и многое другое. Процесс занимал много времени и был подвержен человеческим ошибкам. Например, мы тратили слишком много времени на ручное написание заметок о релизе для крупных обновлений, часто забывая о некоторых функциях. Также могли забыть добавить изображение релиза, что негативно сказывалось на внешнем виде нашего changelog. Усложняло ситуацию и то, что с добавлением релизов Medusa Cloud возникли свои собственные потоки релиза, которые также требовали внимания. Мы по-прежнему хотели продемонстрировать эти изменения как новые релизы и включить их в тот же changelog, что и для Medusa open source.

Решение: Агентная автоматизация

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

Обновление документации

Перед релизом мы создаем Pull Request (PR), который включает все необходимые обновления документации для новой версии. Этот PR открывается и создается с помощью Claude Code. Каждый раз, когда мы вносим изменения в репозиторий Medusa (которые публикуются только при выпуске новой версии), автоматизированный поток использует Claude Code для:
  • Поиска изменений в исходном коде.
  • Перевода этих изменений в обновления документации, таких как обновление существующих записей или добавление новых.
  • Открытия нового PR, если его еще нет, или внесения изменений в существующий PR.
  • Более подробно об этом автоматизированном потоке и его роли в создании надежной и точной документации можно узнать в публикации "Up-to-Date Docs with Agentic Automation".

    Составление заметок о релизе

    Для Medusa open source мы выпускаем новую версию наших пакетов, сливая PR релиза. После слияния и выхода новой версии мы запускаем другое действие GitHub для составления заметок о релизе. Это действие использует Claude Code для написания заметок о релизе, основываясь на наших рекомендациях, включая то, что следует отметить как критическое изменение, когда включать фрагменты кода и как перечислять все изменения и новых участников. Claude Code просматривает все коммиты, выделяет те, которые стоит подчеркнуть как новую функцию или критическое изменение, и использует их для составления заметок о релизе. Затем мы проверяем заметки о релизе, чтобы убедиться, что все верно. Как только все готово, мы публикуем релиз на GitHub, что запускает другие части потока релиза.

    Генерация информации для changelog

    Changelog, доступный по адресу https://medusajs.com/changelog, формируется на основе наших релизов GitHub, чтобы нам не приходилось поддерживать одну и ту же информацию в нескольких местах. Однако, чтобы сделать его более презентабельным для нашего сайта, нам требуется изображение, заголовок и описание для отображения в списке. Эту информацию мы устанавливаем в начале заметок о релизе в блоке комментариев, подобном следующему: Часть навыка заметок о релизе, который мы передаем Claude Code, включает семантику добавления этого блока комментариев в заметки о релизе. Таким образом, Claude Code генерирует заголовок и описание, подходящие для changelog нашего сайта. Что касается изображения, мы разработали инструмент на основе Satori, который использует один и тот же шаблон для релизов, заменяя номер версии на текущий номер релиза и загружая его в Cloudinary. Claude Code затем использует сгенерированное изображение в блоке комментариев. Запись в changelog затем отображает эту информацию, сгенерированную Claude Code, как только релиз опубликован.

    Другие автоматизации без агентной поддержки

    Процесс релиза включает и другие автоматизированные потоки, которые не используют агентов, включая:
  • Автоматизированные тесты для предварительных релизов: перед тем как выпустить новую последнюю версию пакетов Medusa, мы выпускаем предварительную версию для тестирования. После ее выпуска запускается автоматизация, которая разворачивает предварительную версию на тестовом проекте в Medusa Cloud и сообщает о любых ошибках в развертывании в Slack. Это позволяет нам выявлять любые упущенные проблемы, которые могут повлиять на пользователей при обновлении.
  • Обновления справочной документации: наша документация содержит API-справки для маршрутов магазина и администрирования, SDK рабочего процесса, UI-библиотеки и многое другое. Они генерируются с помощью собственных инструментов, которые мы разработали на основе нашей документации и инфраструктуры кода. После публикации новой версии запускается несколько автоматизаций, которые повторно генерируют эти справки на основе опубликованного исходного кода и открывают PR с изменениями.
  • Автоматизация релизов Medusa Cloud

    Изменения Medusa Cloud публикуются в отдельном потоке и репозитории, чем Medusa open source. Это не мешает нам автоматизировать его поток для публикации заметок о релизах по этим изменениям через различные каналы. Когда новый релиз публикуется, мы запускаем действие GitHub в проекте Medusa open source, которое, помимо обновления документации с последними изменениями, добавляет новую запись в changelog с кратким изложением того, что изменилось. Мы используем Claude Code для генерации этого резюме на основе исходного кода выпущенных изменений. Затем мы отображаем этот changelog в двух местах:
  • В документации, где фактически находятся записи changelog.
  • На странице changelog, наряду с записями Medusa Open Source. Аналогично, мы генерируем изображение релиза как часть потока, используя единый шаблон, изменяя дату релиза.
  • У нас есть и другие автоматически генерируемые changelog для Medusa Cloud, включая changelog для Cloud CLI и Webhooks. Они следуют тому же процессу и используют Claude Code для написания заметок о changelog, но без записи в основном changelog сайта.

    Обзор автоматизационного потока

    Большая часть нашего автоматизационного потока находится в инструменте docs-automator в нашем репозитории с открытым исходным кодом. Он формирует входные данные из различных источников в подсказки для Claude Code, которые используются для внесения изменений в документацию. Когда релиз Medusa open source публикуется в NPM, это запускает действие draft-release GitHub, которое составляет заметки о релизе для нашего обзора, с учетом всех упомянутых ранее изменений. Аналогично, релиз Medusa Cloud запускает действие cloud-docs-automation GitHub для обновления документации Medusa Cloud и добавления записей в changelog.

    Начните работать с Medusa

    Если вы новичок в Medusa, ознакомьтесь с документацией, где вы получите более глубокое понимание того, что такое Medusa, какие функции торговли она предоставляет и как развернуть Medusa в Cloud.
    Источник:   Medusa Blog