Документация

Роли агентов

Какой агент отвечает за каждый этап задачи, и что ему разрешено или запрещено делать.

Coroid не использует один универсальный агент. Каждый этап пути от описания до pull request обрабатывается агентом с узкой специализацией и намеренно ограниченным набором инструментов.

Эти ограничения — ключевой момент. Агент, который не может писать код, не сможет случайно написать код.

Роли

РольЭтапМожет изменять ваш код
АрхитекторТехническое задание и планНет
РазработчикСборкаДа
Отдел тестированияПроверитьНет
РецензентРецензированиеНет
Веб-тестировщикПроверить, браузерные потокиНет
ИсследовательИсследования, любой этапНет
Анализатор зависимостейАнализНет

Первые четыре роли образуют конвейер, который отображается в каждой задаче, в таком порядке:

АрхитекторРазработчикОтдел тестированияРецензент

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

Архитектор

Преобразует ваше описание в техническое задание, а техническое задание — в план. Он анализирует кодовую базу, чтобы привязать план к реальному состоянию проекта, но не пишет код.

Его результат — это то, что вы утверждаете перед началом сборки.

Разработчик

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

Когда Рецензент отправляет Результаты обратно, Разработчик — это роль, которая реагирует на них.

Специалист по контролю качества

Проверяет корректность независимо от агента, написавшего код — ваш набор тестов, правила качества, настроенные для проекта, и критерии приемки из спецификации.

Специалист по контролю качества предоставляет вердикт. Он не исправляет найденные ошибки; сбои возвращаются Разработчик как доработка.

Рецензент

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

Веб-тестировщик

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

Исследователь

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

Анализатор зависимостей

Анализирует зависимости и то, как изменения распространяются по кодовой базе, включая проекты с настроенными межпроектными зависимостями.

Почему важно такое разделение

Такое разделение работы обусловлено тремя свойствами:

  1. Проверка осуществляется независимо. Агент, проверяющий работу, не является тем же агентом, что и тот, кто её написал, поэтому он заинтересован в ином результате.
  2. Зона поражения ограничена. Только роль разработчика имеет инструменты для написания кода, поэтому сбой при рецензировании или анализе не может повредить ваш репозиторий.
  3. Каждая роль использует подходящую модель. Для планирования важна широта знаний о мире; для написания компилируемого кода требуется нечто иное. AI профиль содержит одну модель на роль именно по этой причине.

Далее

Вернуться к Как задача превращается в pull request для этапов, на которые приходятся эти роли, или Что такое Coroid для краткого обзора.