Skip to main content

Informations de référence sur GitHub Copilot CLI pour l'utilisation de l'interface en ligne de commande (CLI)

Recherchez les options pour exécuter Copilot CLI de manière programmatique.

Outre l’exécution de Copilot CLI de manière interactive, vous pouvez également passer une invite directement à la CLI dans une seule commande, sans entrer de session interactive. Cela vous permet d’utiliser Copilot de manière programmatique dans les scripts, les pipelines CI/CD et les flux de travail d’automatisation. Pour plus d’informations, consultez « Exécution de CLI de GitHub Copilot de manière programmatique ».

Cet article décrit les options de ligne de commande et les variables d’environnement particulièrement pertinentes lors de l’exécution de Copilot CLI par programmation.

Pour afficher la liste complète des options disponibles, consultez Référence des commandes CLI de GitHub Copilot ou entrez la commande suivante dans votre terminal :

Shell
copilot help

Options de ligne de commande

Il existe un certain nombre d’options de ligne de commande particulièrement utiles lors de l’exécution de Copilot CLI par programmation.

ChoixDescription
-p PROMPTExécutez une invite en mode non interactif. L’interface CLI exécute l’invite et se ferme lorsque vous avez terminé.
-sSupprimez les statistiques et la décoration, ne laissant que la réponse de l’agent. Idéal pour rediriger la sortie dans les scripts.
--add-dir=DIRECTORYAjoutez un répertoire à la liste des chemins autorisés. Cela peut être utilisé plusieurs fois pour ajouter plusieurs répertoires. Utile lorsque l’agent doit lire/écrire en dehors du répertoire de travail actuel.
--agent=AGENTSpécifiez un assistant personnalisé à utiliser.
          `--allow-all` (ou `--yolo`)   | Autorisez le CLI toutes les permissions. Équivalent à `--allow-all-tools --allow-all-paths --allow-all-urls`. |

| --allow-all-paths | Désactivez entièrement la vérification du chemin d’accès au fichier. Alternative plus simple au --add-dir moment où les restrictions de chemin d’accès ne sont pas nécessaires. | | --allow-all-tools | Autoriser chaque outil à s’exécuter sans autorisation explicite pour chaque outil. | | --allow-all-urls | Autorisez l’accès à toutes les URL sans autorisation explicite pour chaque URL. | | --allow-tool=TOOL ... | Accordez de manière sélective l’autorisation pour un outil spécifique. Pour plusieurs outils, utilisez une liste séparée par des virgules entre guillemets. | | --allow-url=URL ... | Autoriser l’agent à extraire une URL ou un domaine spécifique. Utile lorsqu’un flux de travail a besoin d’un accès web aux points de terminaison connus. Pour plusieurs URL, utilisez une liste séparée par des virgules entre guillemets. | | --deny-tool=TOOL ... | Refuser un outil spécifique. Utile pour restreindre ce que l’agent peut faire dans un flux de travail verrouillé. Pour plusieurs outils, utilisez une liste séparée par des virgules entre guillemets. | | --model=MODEL | Choisissez le modèle IA (par exemple, gpt-5.2 ou claude-sonnet-4.6). Utile pour épingler un modèle dans des flux de travail reproductibles. Voir Choisir un modèle ci-dessous. | | --no-ask-user | Empêchez l’agent de suspendre la recherche d’une entrée utilisateur supplémentaire. | | --secret-env-vars=VAR ... | Variable d’environnement dont vous souhaitez masquer la valeur dans la sortie. Pour plusieurs variables, utilisez une liste séparée par des virgules entre guillemets. Essentiel pour empêcher les secrets d’être exposés dans les journaux. Les valeurs dans les variables d'environnement GITHUB_TOKEN et COPILOT_GITHUB_TOKEN sont cachées par défaut. | | --share=PATH | Exportez la transcription de session vers un fichier Markdown après l’achèvement non interactif (valeur par défaut ./copilot-session-<ID>.md). Utile pour l’audit ou l’archivage de ce que l’agent a fait. Notez que les transcriptions de session peuvent contenir des informations sensibles. | | --share-gist | Publiez la transcription de session en tant que gist GitHub secret après l’achèvement. Pratique pour partager des résultats à partir de CI. Notez que les transcriptions de session peuvent contenir des informations sensibles. |

Outils pour l’option --allow-tool

Vous pouvez spécifier différents types d’outils avec l’option --allow-tool .

Type d’outilQu’est-ce qu’il contrôle ?
shellExécution de commandes shell.
writeCréation ou modification de fichiers.
lectureLecture de fichiers ou de répertoires.
urlExtraction de contenu à partir d’une URL.
mémoireStockage de nouveaux faits dans la mémoire persistante de l’agent. Cela n’affecte pas l’utilisation de souvenirs existants. Consultez « À propos de la mémoire agentique pour GitHub Copilot ».
MCP-SERVERAppel d’outils à partir d’un serveur MCP spécifique. Utilisez le nom configuré du serveur comme identificateur, par exemple github. Consultez « Ajout de serveurs MCP pour CLI de GitHub Copilot ».

Filtres d’outils

Les types d’outils serveur shell, write, url, et MCP vous permettent de spécifier un filtre, entre parenthèses, pour contrôler quels outils spécifiques sont autorisés.

Type d’outilExempleExplication de l’exemple
          **Shell** | `shell(git:*)` | Autoriser toutes les sous-commandes Git (`git push`, `git status`etc.). |

| | shell(npm test) | Autorisez la commande exacte npm test. | | écrire | write(.github/copilot-instructions.md) | Autoriser l’interface CLI à écrire dans ce chemin spécifique. | | | write(README.md) | Autoriser l’interface CLI à écrire dans n’importe quel fichier dont le chemin se termine par /README.md. | | url | url(github.com) | Autoriser l’interface CLI à accéder aux URL HTTPS sur github.com. | | | url(http://localhost:3000) | Autoriser l’interface CLI à accéder au serveur de développement local avec un protocole et un port explicites. | | | url(https://*.github.com) | Autoriser l’interface CLI à accéder à n’importe quel GitHub sous-domaine (par exemple, api.github.com). | | | url(https://docs.github.com/copilot/*) | Autorisez l’accès à la documentation de Copilot sur ce site. | | MCP-SERVER | github(create_issue) | Autorisez uniquement l’outil create_issue à partir du github serveur MCP. |

Remarque

Les caractères génériques ne sont pris en charge que pour que shell corresponde à toutes les sous-commandes d’un outil spécifié, pour url au début du nom d’hôte afin de correspondre à n’importe quel sous-domaine, ou à la fin d’un chemin d’accès pour correspondre à n’importe quel suffixe de chemin d’accès, comme indiqué dans le tableau précédent.

Variables d'environnement

Vous pouvez utiliser des variables d’environnement pour configurer différents aspects du comportement de l’interface CLI lors de l’exécution par programmation. Cela est particulièrement utile pour définir la configuration dans les flux de travail CI/CD ou d’autres environnements automatisés où vous ne souhaiterez peut-être pas spécifier certaines options directement dans la ligne de commande.

VariableDescription
COPILOT_ALLOW_ALLDéfinir sur true pour les autorisations complètes
COPILOT_MODELDéfinir le modèle (par exemple, , gpt-5.2``claude-sonnet-4.5)
COPILOT_HOMEDéfinir le répertoire du fichier de configuration CLI (~/.copilot par défaut)
COPILOT_GITHUB_TOKENJeton d’authentification (priorité la plus élevée)
GH_TOKENJeton d’authentification (deuxième priorité)
GITHUB_TOKENJeton d’authentification (troisième priorité)

Pour plus d’informations sur les variables d’environnement pour Copilot CLI, utilisez la commande copilot help environment dans votre terminal.

Choix d’un modèle

Lorsque vous envoyez une invite à Copilot CLI en mode non interactif, le modèle utilisé par l’interface CLI pour générer une réponse est affiché dans la sortie de la réponse (si l’option -s, ou --silent, n’est pas utilisée).

Vous pouvez utiliser l’option --model pour spécifier le modèle IA que l’interface CLI doit utiliser. Cela vous permet de choisir un modèle qui convient le mieux à votre invite, en équilibrant des facteurs tels que la vitesse, le coût et la capacité.

Par exemple, pour des tâches simples, telles que l’explication d’un code ou la génération d’un résumé, vous pouvez choisir un modèle rapide et à moindre coût tel qu’un modèle Claude Haiku :

Bash
copilot -p "What does this project do?" -s --model claude-haiku-4.5

Pour des tâches plus complexes qui nécessitent un raisonnement plus approfondi, comme le débogage ou le refactorisation du code, vous pouvez choisir un modèle plus puissant, tel qu’un modèle GpT Codex :

Bash
copilot -p "Fix the race condition in the worker pool" \
  --model gpt-5.3-codex \
  --allow-tool='write, shell'

Remarque

Vous trouverez les chaînes de modèle pour tous les modèles disponibles dans la description de l’option --model lorsque vous entrez copilot help dans votre terminal.

Vous pouvez également définir la COPILOT_MODEL variable d’environnement pour spécifier un modèle pour la durée de la session shell.

Pour conserver une sélection de modèle entre les sessions d’interpréteur de commandes, vous pouvez définir la model clé dans le fichier de configuration CLI. Ce fichier se trouve à l’emplacement ~/.copilot/config.json (ou $COPILOT_HOME/.copilot/config.json si vous avez défini la variable d’environnement COPILOT_HOME ). Certains modèles vous permettent également de définir un niveau d’effort de raisonnement, qui contrôle le temps passé par le modèle à penser avant de répondre.

JSON
{
  "model": "gpt-5.3-codex",
  "reasoning_effort": "low"
}

Conseil

Le moyen le plus simple de définir un modèle de manière permanente dans le fichier de configuration est de définir la /model commande oblique dans une session interactive. Le choix que vous effectuez avec cette commande est écrit dans le fichier de configuration.

Priorité du modèle

Lors de la détermination du modèle à utiliser pour une invite donnée, l’interface CLI recherche les spécifications de modèle dans l’ordre de priorité suivant (du plus haut au plus bas) :

  • Où un agent personnalisé est utilisé : le modèle spécifié dans la définition de l’agent personnalisé (le cas échéant).
  • Option --model de ligne de commande.
  • Variable d’environnement COPILOT_MODEL.
  • Clé model dans le fichier de configuration (~/.copilot/config.json ou $COPILOT_HOME/.copilot/config.json).
  • Modèle par défaut de l’interface CLI.

Utilisation d’agents personnalisés

Vous pouvez déléguer le travail à un agent spécialisé à l’aide de l’option --agent . Pour plus d’informations, consultez « Création et utilisation d’agents personnalisés pour CLI de GitHub Copilot ».

Dans cet exemple, l’agent code-review est utilisé. Cela nécessite qu’un agent personnalisé ait été créé avec ce nom.

copilot -p "Review the latest commit" \
  --allow-tool='shell' \
  --agent code-review

Lectures complémentaires

  •         [AUTOTITLE](/copilot/how-tos/copilot-cli)
    
  •         [AUTOTITLE](/copilot/reference/copilot-cli-reference/cli-command-reference)
    
  •         [AUTOTITLE](/copilot/reference/copilot-cli-reference/cli-plugin-reference)