Skip to Content
Руководство пользователяGithub Actions

Github Actions: qwen-code-action

Обзор

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

Используйте его для выполнения проверок pull request’ов в GitHub, классификации проблем, анализа и модификации кода и многого другого с помощью Qwen Code  в режиме диалога (например, @qwencoder fix this issue) прямо внутри ваших репозиториев 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 в вашем репозитории:

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

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

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

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

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

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

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

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

    qwen
  2. В Qwen Code CLI в вашем терминале введите:

    /setup-github

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

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

5. Попробуйте сами

Проверка Pull Request:

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

Триаж задач:

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

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

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

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

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

Qwen Code Dispatch

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

Триаж задач

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

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

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

Qwen Code CLI Assistant

Этот тип действия можно использовать для вызова универсального разговорного помощника Qwen Code AI внутри пулл-реквестов и задач для выполнения широкого спектра задач. Подробное руководство по настройке универсального рабочего процесса 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: Сводный вывод из выполнения Qwen Code CLI.

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

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

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

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

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

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

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

Секреты

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

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

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

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

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

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

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

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

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

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

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

Расширения

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

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

Рекомендации

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

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

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

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

Настройка

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

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

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

Last updated on