async-pr-review
Официальный skill Gemini CLI предназначен для двух связанных действий: запустить асинхронное ревью pull request или проверить состояние уже запущенного ревью. В первом сценарии он организует фоновую работу, в которую входят preflight-проверки проекта, тест-план с Gemini и комплексное code review по пользовательским prompts. Во втором сценарии он не запускает новую проверку автоматически: сначала нужно назвать номер pull request, затем выполнить проверочный скрипт и разобрать его статус. Такое разделение важно для долгого процесса, потому что запуск и получение итоговой оценки являются разными операциями. Источник описывает этот skill как пример agentic asynchronous pattern. Обычная фоновая команда shell сама по себе не умеет выполнять LLM-инференс, поэтому для AI-проверок фоновый сценарий должен вызывать исполняемый файл gemini в headless-режиме с параметром -p. Нативные background shells Gemini CLI запускаются через run_shell_command с is_background=true. Это не обещание мгновенного результата: агент должен сообщить, что задачи стартовали, а итог читать после появления файлов и завершения фоновых процессов. Область проекта определяется динамически. Скрипты не полагаются на заранее прописанный путь и получают корень текущего репозитория через git rev-parse --show-toplevel. Для работы с pull request skill создаёт временный git worktree в .gemini/tmp/async-reviews/pr-<number>. Такой путь отделяет экспериментальные изменения и файлы ревью от основного workspace, снижает риск конфликтов с checkout и не требует переключать ветку в пользовательском рабочем каталоге. Номер PR остаётся обязательным входом: без него стартовая команда и проверка статуса не знают, какой объект обрабатывать. Workflow старта короткий: выяснить, нужен ли новый review, запросить номер PR, выполнить .gemini/skills/async-pr-review/scripts/async-review.sh с этим номером и запустить команду в фоне. Workflow статуса использует .gemini/skills/async-pr-review/scripts/check-async-review.sh. Если скрипт сообщает STATUS: IN_PROGRESS, ещё нужно ждать незавершённые задачи. Если получен STATUS: COMPLETE, источник требует прочитать final-assessment.md, review.md, pr-diff.diff, npm-test.log и test-execution.log из LOG_DIR, который напечатал проверочный скрипт. Факт завершения процесса и содержание оценки поэтому должны проверяться отдельно. Практическое назначение карточки — вынести длительную последовательность preflight, тестового плана и ревью из интерактивного шага, сохранив для основного агента понятный статус и набор артефактов. Ограничения также прямые: skill предполагает доступные Gemini CLI и его headless-вызов, git-репозиторий и корректный номер pull request; он не заявляет, что review автоматически исправляет код или заменяет решение разработчика. Итог следует принимать по сгенерированным assessment, diff и логам, а не только по сообщению о том, что фоновая команда была запущена.
Для чего подходит
- Запуск фонового ревью pull request
- Проверка статуса асинхронного ревью
- Подготовка тест-плана для изменений
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/google-gemini/gemini-cli/tree/main/.gemini/skills/async-pr-review