GitHub Actions : qwen-code-action
Vue d’ensemble
qwen-code-action est une GitHub Action qui intègre Qwen Code à votre workflow de développement via Qwen Code CLI . Il agit à la fois comme un agent autonome pour les tâches de codage routinières critiques, et comme un collaborateur à la demande auquel vous pouvez rapidement déléguer du travail.
Utilisez-le pour effectuer des revues de pull requests GitHub, trier les issues, effectuer des analyses et modifications de code, et bien plus encore en utilisant Qwen Code de manière conversationnelle (par exemple, @qwencoder fix this issue) directement dans vos dépôts GitHub.
Fonctionnalités
- Automatisation : Déclenchez des workflows basés sur des événements (par exemple, l’ouverture d’une issue) ou des planifications (par exemple, chaque nuit).
- Collaboration à la demande : Déclenchez des workflows dans les commentaires des issues et des pull requests en mentionnant Qwen Code CLI (par exemple,
@qwencoder /review). - Extensible avec des outils : Tirez parti des capacités d’appel d’outils des modèles Qwen Code pour interagir avec d’autres CLI comme GitHub CLI (
gh). - Personnalisable : Utilisez un fichier
QWEN.mddans votre dépôt pour fournir des instructions et un contexte spécifiques au projet à Qwen Code CLI.
Démarrage rapide
Commencez à utiliser Qwen Code CLI dans votre dépôt en quelques minutes seulement :
1. Obtenir une clé API Qwen
Obtenez votre clé API depuis DashScope (la plateforme d’IA d’Alibaba Cloud).
2. L’ajouter en tant que secret GitHub
Stockez votre clé API en tant que secret nommé QWEN_API_KEY dans votre dépôt :
- Allez dans Paramètres > Secrets et variables > Actions de votre dépôt
- Cliquez sur Nouveau secret de dépôt
- Nom :
QWEN_API_KEY, Valeur : votre clé API
3. Mettre à jour votre .gitignore
Ajoutez les entrées suivantes à votre fichier .gitignore :
# qwen-code-cli settings
.qwen/
# GitHub App credentials
gha-creds-*.json4. Choisir un workflow
Vous avez deux options pour configurer un workflow :
Option A : Utiliser la commande setup (Recommandé)
-
Démarrez Qwen Code CLI dans votre terminal :
qwen -
Dans Qwen Code CLI dans votre terminal, tapez :
/setup-github
Option B : Copier manuellement les workflows
- Copiez les workflows préconstruits depuis le répertoire
examples/workflowsvers le répertoire.github/workflowsde votre dépôt. Remarque : le workflowqwen-dispatch.ymldoit également être copié, car il déclenche l’exécution des workflows.
5. Tester
Revue de Pull Request :
- Ouvrez une pull request dans votre dépôt et attendez la revue automatique
- Commentez
@qwencoder /reviewsur une pull request existante pour déclencher manuellement une revue
Tri des Issues :
- Ouvrez une issue et attendez le tri automatique
- Commentez
@qwencoder /triagesur des issues existantes pour déclencher manuellement le tri
Assistance IA Générale :
- Dans n’importe quelle issue ou pull request, mentionnez
@qwencodersuivi de votre demande - Exemples :
@qwencoder explique ce changement de code@qwencoder suggère des améliorations pour cette fonction@qwencoder aide-moi à déboguer cette erreur@qwencoder écris des tests unitaires pour ce composant
Workflows
Cette action fournit plusieurs workflows préconstruits pour différents cas d’utilisation. Chaque workflow est conçu pour être copié dans le répertoire .github/workflows de votre dépôt et personnalisé selon vos besoins.
Qwen Code Dispatch
Ce workflow agit comme un répartiteur central pour Qwen Code CLI, acheminant les requêtes vers le workflow approprié en fonction de l’événement déclencheur et de la commande fournie dans le commentaire. Pour un guide détaillé sur la configuration du workflow de dispatch, consultez la documentation du workflow Qwen Code Dispatch.
Tri des Issues
Cette action peut être utilisée pour trier les issues GitHub automatiquement ou selon une planification. Pour une configuration fonctionnelle de tri des issues, consultez le workflow de tri automatisé des issues .
Revue de Pull Request
Cette action peut être utilisée pour revoir automatiquement les pull requests lors de leur ouverture. Pour un guide détaillé sur la configuration du système de revue de pull requests, consultez la documentation du workflow GitHub PR Review.
Assistant Qwen Code CLI
Ce type d’action peut être utilisé pour invoquer un assistant IA Qwen Code conversationnel et polyvalent dans les pull requests et les issues afin d’effectuer un large éventail de tâches. Pour un guide détaillé sur la configuration du workflow Qwen Code CLI polyvalent, consultez la documentation du workflow Qwen Code Assistant.
Configuration
Entrées
-
qwen*api_key: (Facultatif) La clé API pour l’API Qwen. -
qwen*cli_version: (Facultatif, par défaut :latest) La version de Qwen Code CLI à installer. Peut être “latest”, “preview”, “nightly”, un numéro de version spécifique, ou une branche, un tag ou un commit git. Pour plus d’informations, consultez les versions de Qwen Code CLI . -
qwen*debug: (Facultatif) Activer la journalisation de débogage et le streaming de sortie. -
qwen*model: (Facultatif) Le modèle à utiliser avec Qwen Code. -
prompt: (Facultatif, par défaut :You are a helpful assistant.) Une chaîne de caractères passée à l’argument --promptde Qwen Code CLI. -
settings: (Facultatif) Une chaîne JSON écrite dans.qwen/settings.jsonpour configurer les paramètres de projet de la CLI. Pour plus de détails, consultez la documentation sur les fichiers de paramètres . -
use*qwen_code_assist: (Facultatif, par défaut :false) Indique s’il faut utiliser Code Assist pour l’accès au modèle Qwen Code au lieu de la clé API Qwen Code par défaut. Pour plus d’informations, consultez la documentation de Qwen Code CLI . -
use*vertex_ai: (Facultatif, par défaut :false) Indique s’il faut utiliser Vertex AI pour l’accès au modèle Qwen Code au lieu de la clé API Qwen Code par défaut. Pour plus d’informations, consultez la documentation de Qwen Code CLI . -
extensions: (Facultatif) Une liste d’extensions Qwen Code CLI à installer. -
upload*artifacts: (Facultatif, par défaut :false) Indique s’il faut téléverser les artefacts vers l’action GitHub. -
use*pnpm: (Facultatif, par défaut :false) Indique s’il faut utiliser pnpm au lieu de npm pour installer qwen-code-cli. -
workflow*name: (Facultatif, par défaut :${{ github.workflow }}) Le nom du workflow GitHub, utilisé à des fins de télémétrie.
Sorties
-
summary: La sortie résumée de l’exécution de Qwen Code CLI. -
error: La sortie d’erreur de l’exécution de Qwen Code CLI, le cas échéant.
Variables de dépôt
Nous recommandons de définir les valeurs suivantes en tant que variables de dépôt afin qu’elles puissent être réutilisées dans tous les workflows. Vous pouvez également les définir en ligne en tant qu’entrées d’action dans des workflows individuels ou pour remplacer les valeurs au niveau du dépôt.
| Nom | Description | Type | Obligatoire | Quand obligatoire |
|---|---|---|---|---|
DEBUG | Active la journalisation de débogage pour Qwen Code CLI. | Variable | Non | Jamais |
QWEN_CLI_VERSION | Contrôle la version de Qwen Code CLI installée. | Variable | Non | Épinglage de la version de la CLI |
APP_ID | ID de l’application GitHub pour l’authentification personnalisée. | Variable | Non | Utilisation d’une application GitHub personnalisée |
Pour ajouter une variable de dépôt :
- Allez dans Paramètres > Secrets et variables > Actions > Nouvelle variable de votre dépôt.
- Saisissez le nom et la valeur de la variable.
- Enregistrez.
Pour plus de détails sur les variables de dépôt, consultez la documentation GitHub sur les variables .
Secrets
Vous pouvez définir les secrets suivants dans votre dépôt :
| Nom | Description | Obligatoire | Quand obligatoire |
|---|---|---|---|
QWEN_API_KEY | Votre clé API Qwen de DashScope. | Oui | Requis pour tous les workflows qui appellent Qwen. |
APP_PRIVATE_KEY | Clé privée de votre application GitHub (format PEM). | Non | Utilisation d’une application GitHub personnalisée. |
Pour ajouter un secret :
- Allez dans Paramètres > Secrets et variables > Actions > Nouveau secret de dépôt de votre dépôt.
- Saisissez le nom et la valeur du secret.
- Enregistrez.
Pour plus d’informations, consultez la documentation officielle GitHub sur la création et l’utilisation de secrets chiffrés .
Authentification
Cette action nécessite une authentification auprès de l’API GitHub et, optionnellement, auprès des services Qwen Code.
Authentification GitHub
Vous pouvez vous authentifier auprès de GitHub de deux manières :
GITHUB_TOKENpar défaut : Pour les cas d’utilisation simples, l’action peut utiliser leGITHUB_TOKENpar défaut fourni par le workflow.- Application GitHub personnalisée (Recommandé) : Pour une authentification plus sûre et plus flexible, nous recommandons de créer une application GitHub personnalisée.
Pour des instructions de configuration détaillées pour l’authentification Qwen et GitHub, consultez la documentation sur l’authentification.
Extensions
Qwen Code CLI peut être étendu avec des fonctionnalités supplémentaires via des extensions. Ces extensions sont installées depuis la source de leurs dépôts GitHub.
Pour des instructions détaillées sur la configuration des extensions, consultez la documentation sur les extensions.
Bonnes pratiques
Pour garantir la sécurité, la fiabilité et l’efficacité de vos workflows automatisés, nous vous recommandons fortement de suivre nos bonnes pratiques. Ces directives couvrent des domaines clés tels que la sécurité du dépôt, la configuration des workflows et le monitoring.
Les recommandations clés incluent :
- Sécurisation de votre dépôt : Mise en œuvre de la protection des branches et des tags, et restriction des approbateurs de pull requests.
- Monitoring et audit : Révision régulière des journaux d’action et activation d’OpenTelemetry pour une meilleure visibilité sur les performances et le comportement.
Pour un guide complet sur la sécurisation de votre dépôt et de vos workflows, veuillez consulter notre documentation sur les bonnes pratiques.
Personnalisation
Créez un fichier QWEN.md à la racine de votre dépôt pour fournir un contexte et des instructions spécifiques au projet à Qwen Code CLI. Cela est utile pour définir des conventions de codage, des modèles architecturaux ou d’autres directives que le modèle doit suivre pour un dépôt donné.
Contribuer
Les contributions sont les bienvenues ! Consultez le guide de contribution de Qwen Code CLI pour plus de détails sur les premiers pas.