Skip to main content

Utilisation de l’interface CLI Copilot dans GitHub Actions avec GITHUB_TOKEN

Exécutez Copilot CLI dans un workflow GitHub Actions à l’aide du composant GITHUB_TOKEN intégré, sans personal access token.

Pour plus d’informations sur les options d’authentification et sur le fonctionnement de la facturation lors de l’exécution de Copilot CLI dans GitHub Actions, consultez À propos de l’utilisation de l’interface CLI Copilot dans GitHub Actions.

Activation de la stratégie

Pour que les flux de travail de votre organisation utilisent Copilot CLIGITHUB_TOKEN, la stratégie doit être activée. Cette stratégie est activée par défaut pour les organisations activées Copilot CLI , mais vous pouvez confirmer ou modifier ce paramètre dans les paramètres de stratégie de votre organisation.

  1. Accédez aux paramètres de stratégie de votre organisation. Consultez « Gestion des stratégies et des fonctionnalités pour GitHub Copilot dans votre organisation ».
  2. Sous «Copilot CLI », vérifiez que l’option Autoriser l’utilisation Copilot CLI facturée à l’organisation est sélectionnée.

Approche recommandée : GitHub Flux de travail agentiques

Pour la plupart des cas d’usage d’automatisation, nous vous recommandons d’utiliser GitHub des flux de travail agentiques plutôt que d’appeler copilot directement dans les étapes de flux de travail. Les flux de travail agentiques utilisent GITHUB_TOKEN l’authentification par défaut et incluent des garde-fous supplémentaires adaptés aux environnements automatisés.

Pour obtenir des instructions de configuration, consultez démarrage rapide dans la documentation sur les GitHub flux de travail agentiques. Votre flux de travail doit également accorder l’autorisation copilot-requests: write . Consultez Permissions dans la documentation GitHub Agentic Workflows.

Utiliser Copilot CLI directement dans un flux de travail

Si vous devez appeler Copilot CLI directement dans une étape de flux de travail, installez l’interface CLI avec npm.

Avertissement

L’appel Copilot CLI directement dans les étapes de flux de travail lui donne un accès étendu à votre environnement de flux de travail. Passez en revue attentivement vos déclencheurs et autorisations de flux de travail avant d’utiliser cette approche. Les flux de travail déclenchés par des pull requests provenant de forks sont particulièrement exposés.

Exemple de flux de travail

name: Copilot CLI example
on: [push]

permissions:
  contents: read
  copilot-requests: write

jobs:
  copilot:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
        with:
          fetch-depth: 2
      - name: Install Copilot CLI
        run: npm install -g @github/copilot
      - name: Run Copilot
        run: copilot -p "Use git show HEAD to summarize the changes in this commit" -s --allow-tool='shell(git show:*)'
        env:
          GITHUB_TOKEN: ${{ github.token }}

Informations clés sur cet exemple :

  • L’option fetch-depth: 2 extrait la validation actuelle et son parent, ce qui permet git show HEAD de calculer les modifications introduites par la validation actuelle.
  • L’option --allow-tool='shell(git show:*)' permet Copilot CLI d’exécuter git show des commandes sans demander d’approbation. Les exécutions non interactives-p () ne peuvent pas afficher d’invite d’approbation interactive. Toute action qui n’est pas approuvée préalablement est refusée automatiquement.
  • L’autorisation copilot-requests: write est requise pour permettre au flux de travail d’effectuer des requêtes Copilot.
  • Le GITHUB_TOKEN fourni par GitHub Actions gère automatiquement l’authentification. Aucun secret supplémentaire n’est nécessaire.

Remarque

Vous devez disposer d’une version récente de Copilot CLI pour utiliser l’authentification GITHUB_TOKEN. Mettez à jour avec copilot update, ou réinstallez la dernière version avec npm install -g @github/copilot.