Skip to Content
Руководство для пользователейДействия GitHub

GitHub Actions: qwen-code-action

Обзор

qwen-code-action — это действие GitHub, интегрирующее Qwen Code  в ваш рабочий процесс разработки через Qwen Code CLI . Оно выступает как автономный агент для выполнения критически важных рутинных задач программирования, а также как сотрудник по требованию, которому можно быстро делегировать работу.

Используйте его для проведения рецензирования запросов на слияние (pull request) в GitHub, первичного анализа и классификации проблем (issue triage), анализа и модификации кода и других задач с помощью Qwen Code  в диалоговом режиме (например, @qwencoder исправь эту проблему) непосредственно внутри ваших репозиториев GitHub.

Возможности

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

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

Начните использовать Qwen Code CLI в своём репозитории всего за несколько минут:

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

Получите свой ключ API на DashScope  (платформа искусственного интеллекта Alibaba Cloud).

2. Добавьте ключ в виде секрета GitHub

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

  • Перейдите в раздел Settings > Secrets and variables > Actions вашего репозитория.
  • Нажмите New repository secret.
  • Укажите имя: QWEN_API_KEY, значение — ваш API-ключ.

3. Обновите файл .gitignore

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

# Настройки qwen-code-cli .qwen/ # Учётные данные GitHub App gha-creds-*.json

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

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

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

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

    qwen
  2. В интерфейсе Qwen Code CLI введите:

    /setup-github

Вариант Б: Скопируйте рабочие процессы вручную

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

5. Попробуйте в действии

Проверка запросов на слияние (Pull Request Review):

  • Откройте запрос на слияние в своём репозитории и дождитесь автоматической проверки
  • Добавьте комментарий @qwencoder /review к существующему запросу на слияние, чтобы вручную запустить проверку

Классификация задач (Issue Triage):

  • Откройте задачу и дождитесь автоматической классификации
  • Добавьте комментарий @qwencoder /triage к существующей задаче, чтобы вручную запустить классификацию

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

  • В любой задаче или запросе на слияние упомяните @qwencoder, а затем сформулируйте свой запрос
  • Примеры:
    • @qwencoder объясни это изменение кода
    • @qwencoder предложи улучшения для этой функции
    • @qwencoder помоги отладить эту ошибку
    • @qwencoder напиши модульные тесты для этого компонента

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

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

Диспетчеризация Qwen Code

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

Триаж задач

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

Проверка запросов на слияние

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

CLI-ассистент Qwen Code

Этот тип действия можно использовать для вызова универсального диалогового ИИ-ассистента Qwen Code в рамках pull request и задач для выполнения широкого спектра задач. Подробное руководство по настройке универсального рабочего процесса Qwen Code CLI см. в документации по рабочему процессу Qwen Code Assistant.

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

Входные параметры

  • qwen*api_key: (Необязательно) Ключ API для Qwen API.

  • qwen*cli_version: (Необязательно, по умолчанию: latest) Версия Qwen Code CLI, которую необходимо установить. Может быть значением latest, preview, nightly, конкретным номером версии или именем ветки, тега или коммита в Git. Дополнительную информацию см. в разделе релизы Qwen Code CLI .

  • qwen*debug: (Необязательно) Включить отладочное логирование и потоковую передачу вывода.

  • qwen*model: (Необязательно) Модель, используемая с Qwen Code.

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

  • settings: (Необязательно) JSON-строка, записываемая в файл .qwen/settings.json для настройки проектных параметров CLI.
    Подробнее см. в документации по файлам настроек .

  • use*qwen_code_assist: (Необязательно, по умолчанию: false) Использовать ли Code Assist для доступа к модели Qwen Code вместо ключа API Qwen Code по умолчанию.
    Дополнительную информацию см. в документации Qwen Code CLI .

  • use*vertex_ai: (Необязательно, по умолчанию: false) Использовать ли Vertex AI для доступа к модели Qwen Code вместо ключа API Qwen Code по умолчанию.
    Дополнительную информацию см. в документации Qwen Code CLI .

  • extensions: (Необязательно) Список расширений Qwen Code CLI, которые необходимо установить.

  • upload*artifacts: (Необязательно, по умолчанию: false) Загружать ли артефакты в действие GitHub.

  • use*pnpm: (Необязательно, по умолчанию: false) Использовать ли pnpm вместо npm для установки qwen-code-cli.

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

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

  • summary: Сводный результат выполнения CLI Qwen Code.

  • error: Сообщение об ошибке при выполнении CLI Qwen Code, если таковая возникла.

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

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

ИмяОписаниеТипОбязательноКогда требуется
DEBUGВключает отладочное логирование для CLI Qwen Code.ПеременнаяНетНикогда
QWEN_CLI_VERSIONУправляет версией CLI Qwen Code, которая будет установлена.ПеременнаяНетФиксация версии CLI
APP_IDИдентификатор приложения GitHub для пользовательской аутентификации.ПеременнаяНетПри использовании пользовательского приложения GitHub

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

  1. Перейдите в раздел Settings > Secrets and variables > Actions > New variable вашего репозитория.
  2. Введите имя и значение переменной.
  3. Сохраните изменения.

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

Секреты

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

ИмяОписаниеОбязательноКогда требуется
QWEN_API_KEYВаш ключ API Qwen из DashScope.ДаОбязателен для всех рабочих процессов, вызывающих Qwen.
APP_PRIVATE_KEYЗакрытый ключ вашего приложения GitHub (в формате PEM).НетПри использовании пользовательского приложения GitHub.

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

  1. Перейдите в раздел Settings > Secrets and variables > Actions > New repository secret вашего репозитория.
  2. Введите имя и значение секрета.
  3. Сохраните.

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

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

Это действие требует аутентификации в GitHub API и, опционально, в сервисах Qwen Code.

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

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

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

Подробные инструкции по настройке аутентификации как для Qwen, так и для GitHub см. в разделе
Документация по аутентификации.

Расширения

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

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

Рекомендации по использованию

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

Основные рекомендации:

  • Обеспечение безопасности репозитория: Настройка защиты веток и тегов, а также ограничение круга лиц, уполномоченных одобрять pull request’ы.
  • Мониторинг и аудит: Регулярный анализ журналов действий и включение OpenTelemetry для получения более глубоких сведений о производительности и поведении.

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

Настройка

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

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

Приветствуются любые вклады! Подробнее о том, как начать, см. в Руководстве по внесению вклада в Qwen Code CLI.

Last updated on