{"meta":{"title":"Configuration des agents personnalisés","intro":"Référence pour la configuration custom agents.","product":"GitHub Copilot","breadcrumbs":[{"href":"/fr/copilot","title":"GitHub Copilot"},{"href":"/fr/copilot/reference","title":"Informations de référence"},{"href":"/fr/copilot/reference/custom-agents-configuration","title":"Configuration des agents personnalisés"}],"documentType":"article"},"body":"# Configuration des agents personnalisés\n\nRéférence pour la configuration custom agents.\n\nCet article de référence fournit des informations de configuration détaillées pour custom agents. Pour obtenir des informations générales sur la création custom agents, consultez [Création d’agents personnalisés pour Copilot cloud agent](/fr/copilot/how-tos/copilot-on-github/customize-copilot/customize-cloud-agent/create-custom-agents).\n\n> \\[!NOTE]\n> Les Custom agents sont en préversion publique pour les IDEs JetBrains, Eclipse et Xcode, et sont susceptibles d'être modifiées.\n\n## Propriétés frontmatter YAML\n\nLe tableau suivant présente les propriétés que vous pouvez configurer pour agent profiles dans GitHub.com, le Copilot CLI, et les IDEs pris en charge (sauf indication contraire). Tout comportement spécifique à l’environnement est noté dans la description de la propriété. Le nom du fichier de configuration (moins `.md` ou `.agent.md`) est utilisé pour la déduplication entre les niveaux afin que la configuration de niveau le plus bas soit prioritaire.\n\n<div class=\"ghd-tool rowheaders\">\n\n| Propriété                                                                                                                                                                                                                                               | Type                                                                | Objectif                                                                                                                                                                                                                                                                                                                                                                                               |\n| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `name`                                                                                                                                                                                                                                                  | ficelle                                                             | Nom d'affichage pour le custom agent. Optional.                                                                                                                                                                                                                                                                                                                                                        |\n| `description`                                                                                                                                                                                                                                           |                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                        |\n| **Chaîne requise**                                                                                                                                                                                                                                      | Description de l’objectif custom agentet des fonctionnalités        |                                                                                                                                                                                                                                                                                                                                                                                                        |\n| `target`                                                                                                                                                                                                                                                | ficelle                                                             | Environnement ou contexte cible pour le custom agent (`vscode` ou `github-copilot`). Si ce paramètre n’est pas défini, la valeur par défaut est définie sur les deux environnements.                                                                                                                                                                                                                   |\n| `tools`                                                                                                                                                                                                                                                 | liste de chaînes, chaîne                                            | Liste des noms d’outils que l’outil custom agent peut utiliser. Prend en charge à la fois une chaîne délimitée par des virgules et un tableau de chaînes YAML. Si ce paramètre n’est pas défini, la valeur par défaut concerne tous les outils. Voir [Outils](#tools).                                                                                                                                 |\n| `model`                                                                                                                                                                                                                                                 | ficelle                                                             | Modèle à utiliser quand cela custom agent s’exécute. Si ce paramètre n’est pas défini, hérite du modèle par défaut.                                                                                                                                                                                                                                                                                    |\n| `disable-model-invocation`                                                                                                                                                                                                                              | boolean                                                             | Désactive l’utilisation automatique par Copilot cloud agent de ce custom agent en fonction du contexte de la tâche. Quand `true`, l’agent doit être sélectionné manuellement. Le paramètre `disable-model-invocation: true` est équivalent à `infer: false`. Si les deux sont définis, `disable-model-invocation` est prioritaire. Si ce paramètre n’est pas défini, la valeur par défaut est `false`. |\n| `user-invocable`                                                                                                                                                                                                                                        | boolean                                                             | Contrôle si cette option custom agent peut être sélectionnée par un utilisateur. Quand `false`, l’agent ne peut pas être sélectionné manuellement et ne peut être accessible que par programmation. Si ce paramètre n’est pas défini, la valeur par défaut est `true`.                                                                                                                                 |\n| `infer`                                                                                                                                                                                                                                                 | boolean                                                             |                                                                                                                                                                                                                                                                                                                                                                                                        |\n| \\*\\*                                                                                                                                                                                                                                                    |                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                        |\n| Retraité                                                                                                                                                                                                                                                |                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                        |\n| \\*\\*. Utilisez plutôt `disable-model-invocation` et `user-invocable`.                                                                                                                                                                                   |                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                        |\n| Copilot cloud agent Permet d’utiliser automatiquement cette custom agent fonctionnalité en fonction du contexte de tâche. Quand `false`, l’agent doit être sélectionné manuellement. Si ce paramètre n’est pas défini, la valeur par défaut est `true`. |                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                        |\n| `mcp-servers`                                                                                                                                                                                                                                           | objet                                                               | Autres serveurs et outils MCP qui doivent être utilisés par le custom agent.                                                                                                                                                                                                                                                                                                                           |\n| **Non utilisé dans VS Code et dans d’autres IDE custom agents.**                                                                                                                                                                                        |                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                        |\n| `metadata`                                                                                                                                                                                                                                              | objet composé d’une paire nom et valeur, les deux étant des chaînes | Permet l’annotation de l’agent avec des données utiles.                                                                                                                                                                                                                                                                                                                                                |\n| **Non utilisé dans VS Code et dans d’autres IDE custom agents.**                                                                                                                                                                                        |                                                                     |                                                                                                                                                                                                                                                                                                                                                                                                        |\n\n</div>\n\nDéfinissez le comportement, l’expertise et les instructions de l’agent dans le contenu Markdown sous le frontmatter YAML. L’invite peut comporter au maximum 30 000 caractères.\n\n> \\[!NOTE]\n>\n> * Les propriétés `argument-hint` et `handoffs` issues de VS Code et des autres custom agents IDE ne sont actuellement pas prises en charge pour Copilot cloud agent sur GitHub.com. Ils sont ignorés pour garantir la compatibilité.\n> * Pour plus d’informations sur la structure de fichiers custom agent dans VS Code, consultez [Custom agents dans VS Code](https://code.visualstudio.com/docs/copilot/customization/custom-agents#_custom-agent-file-structure) dans la documentation VS Code.\n\n## Tools\n\nLa custom agent`tools` propriété contrôle les outils disponibles pour votre agent, y compris ceux des serveurs MCP.\n\nVous custom agent aurez accès aux outils serveur MCP qui ont été configurés à la fois dans ses agent profile paramètres et/ou dans le référentiel. Pour plus d’informations sur la configuration des serveurs MCP du référentiel partagé sur GitHub, consultez [Configurer des serveurs MCP pour votre référentiel](/fr/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers).\n\nVous pouvez configurer `tools` à l’aide des approches suivantes :\n\n* **Activez tous les outils disponibles** : omettez entièrement la `tools` propriété ou utilisez `tools: [\"*\"]` pour activer tous les outils disponibles. Cela inclut tous les outils serveur MCP configurés dans les paramètres de agent profile et/ou du référentiel.\n* **Activer des outils spécifiques** : fournissez une liste de noms d’outils ou d’alias spécifiques (par exemple `tools: [\"read\", \"edit\", \"search\"]`) pour activer uniquement ces outils. Pour connaître les alias d’outils disponibles, voir [Alias d’outil](#tool-aliases) ci-dessous.\n  * Notez que si votre référentiel dispose de serveurs MCP configurés, vous pouvez choisir de rendre uniquement des outils spécifiques à partir de ces serveurs disponibles pour votre custom agent. Les noms d’outils provenant de serveurs MCP spécifiques peuvent être précédés du nom du serveur suivi d’un `/`. Par exemple : `some-mcp-server/some-tool`.\n  * Vous pouvez également activer explicitement tous les outils d’un serveur MCP spécifique en utilisant `some-mcp-server/*`.\n  * Les outils des extensions peuvent utiliser le nom de l’extension VS Code comme un proxy, comme `azure.some-extension/some-tool`.\n* **Désactivez tous les outils** : utilisez une liste vide (`tools: []`) pour désactiver tous les outils de l’agent.\n\nTous les noms d’outils non reconnus sont ignorés, ce qui permet aux outils spécifiques au produit d’être spécifiés dans un agent profile outil sans provoquer de problèmes.\n\n### Alias d’outil\n\nLes alias d’outil suivants sont disponibles pour custom agents. Tous les alias sont insensibles à la casse :\n\n\\| Alias principal | Alias compatibles                        |\nCloud agent Cartographie | Objectif                                                                                          |\n\\| ------------- | -------------------------------------------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |\n\\| `execute`       |\n`shell`\n`Bash`\n`powershell`\n\\| Outils Shell : `bash` ou `powershell`                             | Exécutez une commande dans l’interpréteur de commandes approprié pour le système d’exploitation.                                     |\n\\| `read`        |\n`Read`, `NotebookRead`                       | `view`                                                           | Lire le contenu du fichier.                                                                                      |\n\\| `edit`        |\n`Edit`\n`MultiEdit`\n`Write`\n`NotebookEdit`\n\\| Modifier les outils : par exemple `str_replace`, `str_replace_editor`             | Autoriser LLM à modifier. Les arguments exacts peuvent varier.                                                            |\n\\| `search`      |\n`Grep`, `Glob`                               | `search`                                                         | Recherchez des fichiers ou du texte dans des fichiers.                                                                       |\n\\| `agent` |\n`custom-agent`, `Task`                                       | « Custom agent » outils                                             | Permet à une autre custom agent d’être appelée pour accomplir une tâche. |\n\\| `web`         |\n`WebSearch`, `WebFetch`                      | Actuellement non applicable pour cloud agent. | Permet d’extraire du contenu à partir d’URL et d’effectuer une recherche web                                            |\n\\| `todo`        | `TodoWrite`                                  | Actuellement non applicable pour cloud agent. | Crée et gère des listes de tâches structurées. Non pris en charge dans cloud agent aujourd’hui, mais pris en charge par VS Code. |\n\n### Noms d’outils pour les serveurs MCP « clé en main »\n\nLes serveurs MCP suivants sont disponibles prêts à Copilot cloud agent l'emploi et peuvent être référencés à l'aide de l'utilisation de namespaces :\n\n| Nom du serveur MCP                                                                                                                                                                                                                                       | Outils disponibles                                                                                                                |\n| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |\n| `github`                                                                                                                                                                                                                                                 | Tous les outils en lecture seule sont disponibles par défaut, mais le jeton reçu par le serveur est limité au référentiel source. |\n| `github/*` inclut tous ces éléments, ou vous pouvez référencer `github/<tool name>` où `<tool name>` est une valeur provenant de la documentation du serveur MCP.                                                                                        |                                                                                                                                   |\n| `playwright`                                                                                                                                                                                                                                             | Tous les outils playwright sont disponibles par défaut, mais le serveur est configuré pour accéder uniquement à localhost.        |\n| `playwright/*` inclut tous ces éléments, ou vous pouvez référencer `playwright/<tool name>` où `<tool name>` est une valeur provenant de la documentation du serveur MCP. Par défaut, le jeton dont il a accès est limité au référentiel de code source. |                                                                                                                                   |\n\n## Détails de la configuration du serveur MCP\n\nL’exemple agent profile suivant montre un agent avec un serveur MCP et un secret configuré. En outre, un seul outil du serveur MCP a été activé dans la `tools` propriété dans le frontmatter YAML :\n\n```text\n---\nname: my-custom-agent-with-mcp\ndescription: Custom agent description\ntools: ['tool-a', 'tool-b', 'custom-mcp/tool-1']\nmcp-servers:\n  custom-mcp:\n    type: 'local'\n    command: 'some-command'\n    args: ['--arg1', '--arg2']\n    tools: [\"*\"]\n    env:\n      ENV_VAR_NAME: ${{ secrets.COPILOT_MCP_ENV_VAR_VALUE }}\n---\n\nPrompt with suggestions for behavior and output\n```\n\nLa `mcp-servers` propriété dans un agent profile est une représentation YAML du format de configuration JSON utilisé pour configurer des serveurs MCP pour les référentiels sur GitHub.\n\nLa plupart des sous-propriétés sont identiques à la représentation JSON. Les sections suivantes décrivent les modifications de l’implémentation initiale de la configuration MCP dans les référentiels GitHub pertinents pour custom agents. Pour plus d’informations sur le format de configuration JSON, consultez [Configurer des serveurs MCP pour votre référentiel](/fr/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers#writing-a-json-configuration-for-mcp-servers).\n\n### Type de serveur MCP\n\nPour la compatibilité, le `stdio` type utilisé par Claude Code et VS Code est associé au type cloud agent de `local`.\n\n### Variables et secrets d’environnement de serveur MCP\n\n> \\[!NOTE]\n> Si votre serveur MCP nécessite des secrets ou des variables d’environnement, celles-ci doivent être configurées en tant que secrets ou variables Agents au niveau de l’organisation ou du référentiel. Pour plus d’informations, consultez « [Configurer des secrets et des variables pour Copilot agent cloud](/fr/copilot/how-tos/copilot-on-github/customize-copilot/customize-cloud-agent/configure-secrets-and-variables) ».\n\nCustom agent La configuration MCP prend en charge les mêmes fonctionnalités de remplacement de variable d’environnement et de secret que les configurations MCP au niveau du référentiel existantes. Comme pour les configurations au niveau du référentiel, les secrets et les variables peuvent être sources à partir des secrets et des variables Agents pour Copilot cloud agent, configurés au niveau de l’organisation ou du référentiel. La syntaxe de référencement de ces valeurs a été développée pour prendre en charge les modèles courants utilisés dans GitHub Actions et Claude Code.\n\nLa configuration JSON MCP au niveau du référentiel et la custom agent configuration YAML prennent en charge les modèles de syntaxe suivants :\n\n* `$COPILOT_MCP_ENV_VAR_VALUE` - Variable et en-tête d’environnement\n* `${COPILOT_MCP_ENV_VAR_VALUE}` - Variable et en-tête d’environnement (syntaxe Claude Code)\n* `${COPILOT_MCP_ENV_VAR_VALUE:-default}` - Variable d’environnement et en-tête par défaut\n\nLa custom agent configuration YAML prend en charge les modèles de syntaxe supplémentaires suivants :\n\n* `${{ secrets.COPILOT_MCP_ENV_VAR_VALUE }}` - Variable et en-tête d’environnement\n* `${{ vars.COPILOT_MCP_ENV_VAR_VALUE }}` - Variable et en-tête d’environnement\n\n## Exemples de agent profile configurations\n\nLes exemples suivants montrent ce qu’un agent profile pourrait ressembler aux tâches courantes d’écriture de tests ou de planification de l’implémentation d’un projet. Pour vous inspirer davantage, consultez les exemples [Custom agents](/fr/copilot/tutorials/customization-library/custom-agents) dans la bibliothèque de personnalisation. Vous trouverez également des exemples plus spécifiques dans la collection [awesome-copilot](https://github.com/github/awesome-copilot/tree/main/agents) de la communauté.\n\n### Spécialiste des tests\n\nCet exemple active tous les outils en omettant la `tools` propriété.\n\n```text copy\n---\nname: test-specialist\ndescription: Focuses on test coverage, quality, and testing best practices without modifying production code\n---\n\nYou are a testing specialist focused on improving code quality through comprehensive testing. Your responsibilities:\n\n- Analyze existing tests and identify coverage gaps\n- Write unit tests, integration tests, and end-to-end tests following best practices\n- Review test quality and suggest improvements for maintainability\n- Ensure tests are isolated, deterministic, and well-documented\n- Focus only on test files and avoid modifying production code unless specifically requested\n\nAlways include clear test descriptions and use appropriate testing patterns for the language and framework.\n```\n\n### Planificateur d’implémentation\n\nCet exemple active uniquement un sous-ensemble d’outils.\n\n```text copy\n---\nname: implementation-planner\ndescription: Creates detailed implementation plans and technical specifications in markdown format\ntools: [\"read\", \"search\", \"edit\"]\n---\n\nYou are a technical planning specialist focused on creating comprehensive implementation plans. Your responsibilities:\n\n- Analyze requirements and break them down into actionable tasks\n- Create detailed technical specifications and architecture documentation\n- Generate implementation plans with clear steps, dependencies, and timelines\n- Document API designs, data models, and system interactions\n- Create markdown files with structured plans that development teams can follow\n\nAlways structure your plans with clear headings, task breakdowns, and acceptance criteria. Include considerations for testing, deployment, and potential risks. Focus on creating thorough documentation rather than implementing code.\n```\n\n## Traitement de custom agents\n\n### Custom agents prénoms\n\nEn cas de conflits d’affectation de noms, la configuration de niveau le plus bas remplace les configurations de niveau supérieur. Cela signifie qu’un agent au niveau du référentiel est prioritaire sur un agent au niveau de l’organisation et que l’agent au niveau de l’organisation remplace un agent au niveau de l’entreprise.\n\n### Gestion des versions\n\nCustom agent Le versionnage est basé sur les SHA de commit Git pour le fichier agent profile. Cela vous permet de créer des branches ou des balises avec différentes versions de custom agents si nécessaire. Lorsque vous affectez à une custom agent tâche, la création custom agent sera effectuée à l'aide de la dernière version de agent profile pour ce référentiel et cette branche. Lorsque l’agent crée une requête de tirage, les interactions au sein de cette requête utilisent la même version de la custom agent pour cohérence.\n\n### Traitement des outils\n\nLa `tools` liste filtre l’ensemble d’outils mis à la disposition de l’agent , qu’ils soient intégrés ou sources à partir de serveurs MCP. Lorsque vous configurez des outils dans votre agent profile, le comportement dépend de ce que vous spécifiez :\n\n* Si aucun outil n’est spécifié, tous les outils disponibles sont activés\n* Une liste d’outils vide (`tools: []`) désactive tous les outils\n* Une liste spécifique (`tools: [...]`) active uniquement ces outils\n\n### Configurations du serveur MCP\n\nPour les configurations de serveur MCP, il existe un ordre de traitement spécifique qui garantit un comportement de remplacement approprié : les configurations MCP prêtes à l’emploi (comme mcP GitHub ) sont traitées en premier, suivies de la custom agent configuration MCP et enfin des configurations MCP spécifiées par le biais des paramètres de référentiel. Cela permet à chaque niveau de remplacer les paramètres du niveau précédent selon les besoins.\n\n## Lectures complémentaires\n\n* [GitHub Copilot CLI](/fr/copilot/how-tos/copilot-cli)\n* [Référence de commande CLI pour GitHub Copilot](/fr/copilot/reference/copilot-cli-reference/cli-command-reference#custom-agents-reference)"}