Я исследовал инструменты, которые делают процесс ревью кода более плавным, и недавно обнаружил открытый PR-Agent (вместе с его управляемой версией, Qodo Merge). Это один из самых захватывающих подходов к автоматизации PR, с которыми я сталкивался в последнее время. Он функционирует как полезный AI-ассистент командной строки прямо в вашем Git-провайдере. Что привлекло мое внимание, так это его архитектура и то, как он обрабатывает запросы. Как это работает Когда вы комментируете /review или /ask "каковы последствия этого изменения?" в запросе на слияние, агент запускает умный рабочий процесс: - Анализ запроса: Сначала он анализирует изменения кода в PR (хунки) и понимает конкретную команду, которую вы выдали. - План: На основе вашего запроса он формулирует план. Это включает в себя сжатие с учетом токенов и приоритизацию, что имеет решающее значение для эффективной обработки больших PR и сосредоточения на том, что важно. - Выбор функции: Затем он умно направляет запрос к соответствующему специализированному инструменту. Этот модульный подход хорош тем, что он выделяет конкретную логику для описания, ревью, предложения улучшений, ответов на вопросы, генерации документации и многого другого. Помимо генерации общего описания PR (/describe), некоторые команды невероятно мощные для повседневного рабочего процесса разработчика: /review: Это дает настраиваемую обратную связь, которая выходит за рамки статического анализа. Он может комментировать потенциальные проблемы и вопросы безопасности, а также оценивать усилия по ревью, необходимые от человеческого коллеги. /improve: Вместо того чтобы указывать на проблему, он предоставляет конкретные, встроенные предложения по коду, которые вы можете принять напрямую. Это значительно сокращает количество обменов. /ask: Это меняет правила игры. Вы можете задавать вопросы в свободной форме о PR (например, "Почему была выбрана эта конкретная библиотека?" или "Объясните логику в my_function"). Он использует контекст PR, чтобы дать вам актуальный ответ. Глубокие интеграции: У него также есть инструменты для автоматического обновления файла CHANGELOG md (/update_changelog), генерации юнит-тестов для измененных компонентов (/test) и даже получения обратной связи по неудачным CI-заданиям (/ci_feedback). Это кажется шагом в правильном направлении для разработки с поддержкой AI, меньше о замене разработчика и больше о дополнении процесса ревью, чтобы сделать его быстрее и более тщательным. Что для вас является самой утомительной частью процесса PR?