Skip to main content
Skip to content

Création et utilisation d’agents personnalisés pour GitHub Copilot CLI

Créez des agents spécialisés avec une expertise personnalisée pour des tâches de développement spécifiques.

Présentation

Custom agentsLes vous permettent d’adapter l’expertise de Copilot à des tâches spécifiques.

Lorsque vous êtes invité Copilot à effectuer une tâche, il peut choisir d’utiliser l’un de vos custom agents, si Copilot vous déterminez que l’expertise de l’agent est adaptée à la tâche.

Lorsque l’agent principal délègue le travail à un custom agent, ce travail est effectué par un sous-agent avec sa propre fenêtre de contexte. Cela permet au spécialiste de se concentrer sur sa tâche affectée sans encombrer le contexte de l’agent principal. Vous pouvez également sélectionner directement un custom agent pour la session.

Pour plus d’informations, consultez « Agents personnalisés ».

Création d’un custom agent

Chacun custom agent est défini par un fichier Markdown avec une .agent.md extension. Vous pouvez créer ces fichiers vous-même ou les ajouter à partir de l’interface CLI, comme décrit dans les étapes suivantes.

  1. En mode interactif, entrez /agent.

  2. Appuyez sur N pour créer un agent.

  3. Choisissez entre les options pour créer custom agent soit dans le référentiel, soit dans votre répertoire personnel :

    • Projet (.github/agents/)

    • Utilisateur (~/.copilot/agents/)

    Remarque

    Si les données personnelles et le dépôt custom agents ont le même ID, l’agent personnel est utilisé. Pour un agent à la racine d’un répertoire agents, l’ID est le nom du fichier sans l’extension .md ou .agent.md. Le champ facultatif name n’affecte pas la déduplication. Les agents ayant le même name mais des ID différents se chargent tous les deux, mais si une valeur --agent correspond à plus d’un ID ou à plus d’un name, l’interface de ligne de commande (CLI) utilise la correspondance ayant la priorité la plus élevée.

  4. Choisissez si vous souhaitez que Copilot crée le fichier custom agent, ou le créer vous-même.

Option 1 : Utiliser Copilot

Entrez les détails de l’agent que vous souhaitez créer. Décrivez l’expertise de l’agent et quand l’agent doit être utilisé. Copilot prend la description que vous entrez et l’utilise pour écrire un profil d’agent pour vous.

Par exemple, vous pourriez saisir :

I am a security expert. I check code files thoroughly for potential security issues. Use me whenever a security review/check/audit is requested for one or more code files, or when the word "seccheck" is used in a prompt in reference to code files.

I will identify potential problems, such as code that:

- Exposes secrets or credentials
- Allows cross-site scripting
- Allows SQL injection
- Contains vulnerable dependencies
- Allows authentication to be bypassed

If any problems are identified, create a single GitHub issue in this repository on GitHub.com with details of problems, giving full details of each issue, including, but not limited to, risk level and recommended fix.

Une fois que le profil d’agent initial a été généré par Copilot, il affiche les options suivantes :

  • Continuer
  • Examiner le contenu
  • Réessayez
  • Quitter

Si vous choisissez de passer en revue le contenu, le fichier agent est ouvert dans votre éditeur par défaut. Vous pouvez passer en revue et apporter des modifications, si nécessaire, avant de poursuivre le processus de création de l’agent dans l’interface CLI.

Pour terminer le processus de création, choisissez Continuer.

Option 2 : Créer le profil d’agent manuellement

Lorsque vous choisissez de créer le fichier d’agent vous-même, vous serez guidé dans une série d’invites pour renseigner les informations nécessaires pour créer le profil de l’agent.

  1. Entrez un nom pour l’agent. Le nom que vous saisissez est le nom qui s'affiche lors de la liste des agents disponibles. Une version de cette opération sera utilisée comme nom du fichier de l’agent, par exemple, si vous entrez « Expert en sécurité », le fichier de l’agent sera nommé security-expert.agent.md.

    Conseil

    Pour faciliter l’utilisation d’un custom agent code par programmation, il est recommandé de choisir un nom composé uniquement de lettres minuscules et de traits d’union.

  2. Entrez une description qui indique l’expertise de cet agent et le moment où il doit être utilisé.

  3. Entrez des instructions sur le comportement de l’agent, y compris les instructions spécifiques, les actions qu’il doit prendre ou les contraintes qu’il doit suivre.

  4. Choisissez les outils auxquels vous souhaitez que votre custom agent ait accès.

    Par défaut, custom agents ont accès à tous les outils. Si vous limitez l’accès d’un agent, une tools spécification est ajoutée au fichier de l’agent.

  5. Redémarrez l’interface en ligne de commande pour charger votre nouveau custom agent.

Utilisation d’un custom agent

Custom agents peut être utilisé de la manière suivante :

  • Commande slash

    Entrez /agent en mode interactif et choisissez dans la liste des éléments disponibles custom agents. Entrez ensuite une invite qui sera transmise à l’agent sélectionné.

    Remarque

    Les agents par défaut de l’interface CLI ne sont pas inclus dans cette liste. Pour plus d’informations sur les agents par défaut, consultez Agents personnalisés.

  • Instruction explicite

    Demandez à Copilot d'utiliser un agent spécifique. Par exemple:

    Use the security-auditor agent on all files in the /src/app directory
    
  • Par inférence

    Utilisez une commande qui déclenche l’utilisation d’un agent particulier en fonction de la description dans le fichier de l’agent. Par exemple:

    Check all TypeScript files in or under the src directory for potential security problems
    

    ou (où « seccheck » est défini comme un mot de déclencheur dans le profil de l’agent) :

    seccheck /src/app/validator.go
    

Copilot déduit automatiquement l’agent que vous souhaitez utiliser.

  • Programmatiquement

    Spécifiez l’option custom agent que vous souhaitez utiliser avec l’option de ligne de commande. Par exemple:

    copilot --agent security-auditor --prompt "Check /src/app/validator.go"
    

    Dans cet exemple, security-auditor est l’ID du custom agent. L’ID est dérivé du nom du fichier, sans l’.agent.mdextension.md. Dans ce cas, le chemin d’accès au fichier est soit agents/security-auditor.md .agents/security-auditor.agent.md Si le fichier se trouve dans un sous-répertoire de agents, le nom du sous-répertoire est inclus dans l’ID, avec le séparateur de répertoire remplacé par --. Ainsi, un fichier agent situé à agents/security/security-auditor.agent.md aurait l’ID security--security-auditor. Vous pouvez également utiliser la valeur du name champ au lieu de l’ID, en les plaçant entre guillemets. Par exemple : --agent "Security Auditor".

Délégation de tâches ciblées à un modèle spécifique

Vous pouvez configurer un custom agent pour utiliser un modèle spécifique.

Cela peut être particulièrement utile lorsque vous souhaitez déléguer de petites tâches bien définies à un custom agent qui utilise un modèle hébergé localement, tout en utilisant un modèle basé sur le cloud pour votre session principale. Cette approche vous permet, par exemple, de déléguer une modification d’un fichier unique ou un correctif de test ciblé à un custom agent qui utilise un modèle local, puis faire examiner le résultat par l’agent principal.

Tout d’abord, ajoutez un modèle hébergé localement au CLI. Consultez « Ajout de modèles LLM à GitHub Copilot CLI ».

  1. Créez ~/.copilot/agents/local-coder.agent.md avec le contenu suivant :

    ---
    name: local-coder
    description: >
      Use for small, well-defined coding tasks, such as a
      single-file change or a focused test fix.
    model: LOCAL-PROVIDER/LOCAL-MODEL
    model-policy: required
    tools: ["read", "grep", "glob", "edit", "execute"]
    strict-tools-list: true
    include-custom-instructions: true
    ---
    
    Complete only the requested task. Inspect the relevant
    code, make the smallest correct change, and run focused
    checks. Report what changed and any remaining issues.
    
  2. Remplacez LOCAL-PROVIDER/LOCAL-MODEL par l’ID qualifié fournisseur de votre modèle local, et non par son nom d’affichage. Pour un modèle dans providers.json, combinez les valeurs id et provider de l’entrée du modèle, séparées par une barre oblique. Par exemple, "provider": "local" et "id": "qwen3:8b" vous donnent local/qwen3:8b.

model-policy: required nécessite le modèle configuré plutôt que de le traiter comme une préférence.

strict-tools-list: true limite l’agent aux groupes d’outils répertoriés sans ajouter les outils par défaut habituels.

include-custom-instructions: true maintient les instructions de votre dépôt applicables au sous-agent.

  1. Redémarrez l’interface CLI pour charger l’agent. Dans une session à l’aide d’un modèle cloud, délèguez explicitement une tâche limitée :

    Use the local-coder agent to add an empty-input test for
    parseConfig in src/config.test.ts. Do not change other
    files. Then review the result in the main session.
    

    Le modèle local exécute la tâche déléguée, mais l’agent principal reçoit quand même le résultat. Cela ne rend pas la session entière locale ou hors connexion.

Appliquer les instructions personnalisées de votre dépôt à un custom agent

Les fichiers d’instructions personnalisés, tels que .github/copilot-instructions.md, AGENTS.mdet CLAUDE.md- indiquent Copilot comment fonctionner dans votre référentiel. Pour plus d’informations, consultez « Ajout d’instructions personnalisées de référentiel pour GitHub Copilot ».

Lorsque Copilot exécute votre custom agent en tant que sous-agent — pour traiter une partie d’une tâche plus vaste — le sous-agent ne suit pas par défaut les instructions personnalisées de votre dépôt. Cela permet de garder le sous-agent concentré sur la tâche spécifique qu’il a donnée.

Si vous souhaitez qu’un sous-agent suive les conventions de votre référentiel( par exemple, un agent qui passe en revue ou modifie du code), ajoutez-y include-custom-instructions: true le frontmatter du fichier agent :

---
name: RepoAwareReviewer
description: Reviews a change against this repository's conventions
tools: ["*"]
include-custom-instructions: true
---

Review the change and flag anything that violates the repository's conventions.

Remarque

Ce paramètre affecte uniquement l’agent lorsqu’il s’exécute en tant que sous-agent. Une option custom agent que vous sélectionnez vous-même — avec --agent, /agent ou par déduction — suit déjà les instructions personnalisées de votre dépôt ; le paramètre est donc sans effet dans ce cas.

Pour plus d’informations, notamment sur la façon dont ce paramètre interagit avec l’option --no-custom-instructions , consultez Référence de commande CLI pour GitHub Copilot.

Lectures complémentaires