Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
run-gemini-cli — Действие GitHub, запускающее Gemini CLI. | Kitploit
Инструменты/GitHubGitHub/google-github-actions/run-gemini-cli
Анализ КодаDevSecOpsУтилиты и фреймворкиОбучение и ОбразованиеБезопасность ИИ
GitHubgoogle-github-actions/run-gemini-cli

run-gemini-cli

Действие GitHub, запускающее Gemini CLI.

Репозиторий

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Сайт
2.0k2771 месяц назадПроверено Kitploit

run-gemini-cli

Обзор

run-gemini-cli — это GitHub Action, который интегрирует Gemini в ваш рабочий процесс разработки через Gemini CLI. Он выступает как автономный агент для критических рутинных задач кодирования, а также как коллаборатор по запросу, которому можно быстро делегировать работу.

Используйте его для проведения ревью пулл-реквестов GitHub, триажа задач, анализа и модификации кода и многого другого с помощью Gemini в диалоговом режиме (например, @gemini-cli fix this issue) прямо внутри ваших репозиториев GitHub.

  • run-gemini-cli
    • Обзор
    • Возможности
    • Быстрый старт
      • 1. Получите ключ API Gemini
      • 2. Добавьте его как секрет GitHub
      • 3. Обновите .gitignore
      • 4. Выберите рабочий процесс
      • 5. Попробуйте!
    • Рабочие процессы
      • Gemini Dispatch
      • Триаж задач
      • Ревью пулл-реквестов
      • Gemini CLI Assistant
    • Конфигурация
      • Входные данные
      • Выходные данные
      • Переменные репозитория
      • Секреты
    • Аутентификация
      • Аутентификация Google
      • Аутентификация GitHub
    • Наблюдаемость
    • Расширения
    • Лучшие практики
    • Настройка
    • Участие в разработке

Возможности

  • Автоматизация: Запуск рабочих процессов на основе событий (например, открытие задачи) или по расписанию (например, каждую ночь).
  • Сотрудничество по запросу: Запуск рабочих процессов в комментариях к задачам и пулл-реквестам с упоминанием Gemini CLI (например, @gemini-cli /review).
  • Расширяемость с помощью инструментов: Используйте возможности вызова инструментов моделей Gemini для взаимодействия с другими CLI, такими как GitHub CLI (gh).
  • Настраиваемость: Используйте файл GEMINI.md в вашем репозитории для предоставления проектных инструкций и контекста Gemini CLI.

Быстрый старт

Начните работу с Gemini CLI в вашем репозитории всего за несколько минут:

1. Получите ключ API Gemini

Получите свой ключ API в Google AI Studio с щедрыми бесплатными квотами.

2. Добавьте его как секрет GitHub

Сохраните свой ключ API как секрет с именем GEMINI_API_KEY в вашем репозитории:

  • Перейдите в Настройки > Секреты и переменные > Действия вашего репозитория.
  • Нажмите Новый секрет репозитория.
  • Имя: GEMINI_API_KEY, Значение: ваш ключ API.

3. Обновите .gitignore

Добавьте следующие записи в файл .gitignore:

root@kitploit:~
# gemini-cli settings
.gemini/

# GitHub App credentials
gha-creds-*.json

4. Выберите рабочий процесс

У вас есть два варианта настройки рабочего процесса:

Вариант A: Использовать команду настройки (рекомендуется)

  1. Запустите Gemini CLI в вашем терминале:

    root@kitploit:~
    gemini
    
  2. В Gemini CLI в вашем терминале введите:

    root@kitploit:~
    /setup-github
    

Вариант B: Вручную скопировать рабочие процессы

  1. Скопируйте готовые рабочие процессы из каталога examples/workflows в каталог .github/workflows вашего репозитория. Примечание: рабочий процесс gemini-dispatch.yml также необходимо скопировать, так как он запускает выполнение остальных рабочих процессов.

5. Попробуйте!

Ревью пулл-реквестов:

  • Откройте пулл-реквест в вашем репозитории и дождитесь автоматического ревью.
  • Прокомментируйте @gemini-cli /review на существующем пулл-реквесте, чтобы запустить ревью вручную.

Триаж задач:

  • Откройте задачу и дождитесь автоматического триажа.
  • Прокомментируйте @gemini-cli /triage на существующих задачах, чтобы запустить триаж вручную.

Общая помощь AI:

  • В любой задаче или пулл-реквесте напишите @gemini-cli, а затем ваш запрос.
  • Примеры:
    • @gemini-cli explain this code change
    • @gemini-cli suggest improvements for this function
    • @gemini-cli help me debug this error
    • @gemini-cli write unit tests for this component

Рабочие процессы

Этот action предоставляет несколько готовых рабочих процессов для различных сценариев использования. Каждый рабочий процесс можно скопировать в каталог .github/workflows вашего репозитория и настроить по своему усмотрению.

Gemini Dispatch

Этот рабочий процесс выступает в роли центрального диспетчера для Gemini CLI, направляя запросы в соответствующий рабочий процесс в зависимости от триггерного события и команды, указанной в комментарии. Подробное руководство по настройке рабочего процесса диспетчера см. в документации по рабочему процессу Gemini Dispatch.

Триаж задач

Этот action можно использовать для автоматического триажа задач GitHub или по расписанию. Подробное руководство по настройке системы триажа задач см. в документации по рабочему процессу GitHub Issue Triage.

Ревью пулл-реквестов

Этот action можно использовать для автоматического ревью пулл-реквестов при их открытии. Подробное руководство по настройке системы ревью пулл-реквестов см. в документации по рабочему процессу GitHub PR Review.

Gemini CLI Assistant

Этот action можно использовать для вызова универсального, диалогового AI-ассистента Gemini внутри пулл-реквестов и задач для выполнения широкого круга задач. Подробное руководство по настройке универсального рабочего процесса Gemini CLI см. в документации по рабочему процессу Gemini Assistant.

Конфигурация

Входные данные

  • gcp_location: (Опционально) Местоположение Google Cloud.

  • gcp_project_id: (Опционально) Идентификатор проекта Google Cloud.

  • gcp_service_account: (Опционально) Адрес электронной почты сервисного аккаунта Google Cloud.

  • gcp_workload_identity_provider: (Опционально) Провайдер удостоверений рабочей нагрузки Google Cloud.

  • gcp_token_format: (Опционально, по умолчанию: access_token) Формат токена для аутентификации. Установите "access_token" для генерации токенов доступа (требует сервисный аккаунт) или оставьте пустой строкой для прямого WIF. Может принимать значения "access_token" или "id_token".

  • gcp_access_token_scopes: (Опционально, по умолчанию: https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/userinfo.profile) Области токена доступа при использовании token_format "access_token". Список областей OAuth 2.0, разделённых запятыми.

Выходные данные

  • summary: Суммированный вывод выполнения Gemini CLI.

  • error: Вывод ошибки выполнения Gemini CLI, если таковая имеется.

Переменные репозитория

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

[!WARNING] Не используйте переменную окружения DEBUG, так как она вызывает зависание Gemini CLI в ожидании подключения отладчика Node.

Чтобы добавить переменную репозитория:

  1. Перейдите в Настройки > Секреты и переменные > Действия > Новая переменная вашего репозитория.
  2. Введите имя и значение переменной.
  3. Сохраните.

Подробнее о переменных репозитория см. в документации GitHub по переменным.

Секреты

Вы можете задать следующие секреты в вашем репозитории:

Чтобы добавить секрет:

  1. Перейдите в Настройки > Секреты и переменные > Действия > Новый секрет репозитория вашего репозитория.
  2. Введите имя и значение секрета.
  3. Сохраните.

Дополнительную информацию см. в официальной документации GitHub по созданию и использованию зашифрованных секретов.

Аутентификация

Этот action требует аутентификации как в сервисах Google (для Gemini AI), так и в API GitHub.

Аутентификация Google

Выберите метод аутентификации, который лучше всего подходит для вашего случая:

  1. Ключ API Gemini: Самый простой метод для проектов, не требующих интеграции с Google Cloud.
  2. Workload Identity Federation: Наиболее безопасный метод аутентификации в сервисах Google Cloud.

Аутентификация GitHub

Вы можете аутентифицироваться в GitHub двумя способами:

  1. Стандартный GITHUB_TOKEN: Для простых случаев action может использовать стандартный GITHUB_TOKEN, предоставляемый рабочим процессом.
  2. Собственный GitHub App (рекомендуется): Для наиболее безопасной и гибкой аутентификации рекомендуется создать собственный GitHub App.

Подробные инструкции по настройке аутентификации Google и GitHub см. в документации по аутентификации.

Наблюдаемость

Этот action можно настроить на отправку данных телеметрии (трассировок, метрик и логов) в ваш собственный проект Google Cloud. Это позволяет отслеживать производительность и поведение Gemini CLI в ваших рабочих процессах, предоставляя ценную информацию для отладки и оптимизации.

Подробные инструкции по настройке наблюдаемости см. в документации по наблюдаемости.

Расширения

Gemini CLI можно расширить дополнительной функциональностью с помощью расширений. Эти расширения устанавливаются из исходников с их репозиториев GitHub.

Подробные инструкции по настройке расширений см. в документации по расширениям.

Лучшие практики

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

Ключевые рекомендации:

  • Обеспечение безопасности репозитория: Внедрение защиты веток и тегов, ограничение круга одобряющих пулл-реквесты.
  • Конфигурация рабочих процессов: Использование Workload Identity Federation для безопасной аутентификации в Google Cloud, эффективное управление секретами и фиксация версий action для предотвращения неожиданных изменений.
  • Мониторинг и аудит: Регулярная проверка логов action и включение OpenTelemetry для более глубокого понимания производительности и поведения.

Полное руководство по обеспечению безопасности репозитория и рабочих процессов см. в нашей документации по лучшим практикам.

Настройка

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

Участие в разработке

Вклад приветствуется! Ознакомьтесь с Руководством по участию Gemini CLI для получения более подробной информации о том, как начать.

Скачать инструмент
  • gemini_api_key: (Опционально) Ключ API для Gemini API.

  • gemini_cli_version: (Опционально, по умолчанию: latest) Версия Gemini CLI для установки. Может быть "latest", "preview", "nightly", конкретным номером версии или git-веткой, тегом или коммитом. Дополнительную информацию см. в релизах Gemini CLI.

  • gemini_debug: (Опционально) Включает отладочное логирование и потоковый вывод.

  • gemini_model: (Опционально) Модель для использования с Gemini.

  • google_api_key: (Опционально) Ключ API Vertex AI для использования с Gemini.

  • prompt: (Опционально, по умолчанию: You are a helpful assistant.) Строка, передаваемая в аргумент --prompt Gemini CLI.

  • settings: (Опционально) Строка JSON, записываемая в .gemini/settings.json для настройки проектных параметров CLI. Дополнительные сведения см. в документации по файлам настроек.

  • use_gemini_code_assist: (Опционально, по умолчанию: false) Использовать ли Code Assist для доступа к модели Gemini вместо стандартного ключа API Gemini. Дополнительную информацию см. в документации Gemini CLI.

  • use_vertex_ai: (Опционально, по умолчанию: false) Использовать ли Vertex AI для доступа к модели Gemini вместо стандартного ключа API Gemini. Дополнительную информацию см. в документации Gemini CLI.

  • extensions: (Опционально) Список расширений Gemini CLI для установки.

  • upload_artifacts: (Опционально, по умолчанию: false) Загружать ли артефакты в GitHub Action.

  • use_pnpm: (Опционально, по умолчанию: false) Использовать ли pnpm вместо npm для установки gemini-cli.

  • workflow_name: (Опционально, по умолчанию: ${{ github.workflow }}) Имя рабочего процесса GitHub, используется для телеметрии.

  • github_pr_number: (Опционально, по умолчанию: ${{ github.event.pull_request.number }}) Номер пулл-реквеста, с которым работает CLI. По умолчанию берётся из события.

  • github_issue_number: (Опционально, по умолчанию: ${{ github.event.issue.number }}) Номер задачи (или список номеров задач, разделённых запятыми), с которой работает CLI. По умолчанию берётся из события.

  • ИмяОписаниеТипОбязательноКогда обязательно
    GEMINI_DEBUGВключает отладочное логирование для Gemini CLI.VariableНетНикогда
    GEMINI_CLI_VERSIONУправляет тем, какая версия Gemini CLI устанавливается.VariableНетПри фиксации версии CLI
    GCP_WIF_PROVIDERПолное имя ресурса провайдера удостоверений рабочей нагрузки.VariableНетПри использовании Google Cloud
    GOOGLE_CLOUD_PROJECTПроект Google Cloud для инференса и наблюдаемости.VariableНетПри использовании Google Cloud
    SERVICE_ACCOUNT_EMAILАдрес электронной почты сервисного аккаунта Google Cloud. Опционально — требуется только для WIF с сервисным аккаунтом (не требуется для прямого WIF).VariableНетПри использовании WIF с сервисным аккаунтом
    GOOGLE_CLOUD_LOCATIONРегион проекта Google Cloud.VariableНетПри использовании Google Cloud
    GOOGLE_GENAI_USE_VERTEXAIУстановите true для использования Vertex AIVariableНетПри использовании Vertex AI
    GOOGLE_GENAI_USE_GCAУстановите true для использования Gemini Code AssistVariableНетПри использовании Gemini Code Assist
    APP_IDИдентификатор GitHub App для пользовательской аутентификации.VariableНетПри использовании собственного GitHub App
    ИмяОписаниеОбязательноКогда обязательно
    GEMINI_API_KEYВаш ключ API Gemini из Google AI Studio.НетУ вас нет проекта GCP.
    APP_PRIVATE_KEYПриватный ключ вашего GitHub App (в формате PEM).НетПри использовании собственного GitHub App.
    GOOGLE_API_KEYВаш ключ API Google для использования с Vertex AI.НетУ вас есть express-аккаунт Vertex AI.