Copilot CLI stocke sa configuration, son historique de session, ses journaux et ses personnalisations dans un seul répertoire sur votre ordinateur. Par défaut, ce répertoire est `~/.copilot` (autrement dit, `$HOME/.copilot`).
Cet article décrit le contenu de ce répertoire et la façon dont vous pouvez les utiliser.
Vue d’ensemble du répertoire
Le ~/.copilot répertoire contient les éléments de niveau supérieur suivants.
| Chemin | Type | Description |
|---|---|---|
config.json | Fichier | Vos paramètres de configuration personnels |
mcp-config.json | Fichier | Définitions de serveur MCP au niveau de l’utilisateur |
permissions-config.json | Fichier | Paramètres d'outils enregistrés et permissions des répertoires par projet |
agents/ | Répertoire | Définitions d’agents personnalisés personnels |
skills/ | Répertoire | Définitions de compétences personnalisées personnelles |
hooks/ | Répertoire | Scripts de hook au niveau de l’utilisateur |
logs/ | Répertoire | Fichiers journaux de session |
session-state/ | Répertoire | Historique des sessions et données d’espace de travail |
session-store.db | Fichier | Base de données SQLite pour les données entre sessions |
installed-plugins/ | Répertoire | Fichiers de plug-in installés |
ide/ | Répertoire | État d’intégration de l’IDE |
Remarque
Tous ces éléments n’apparaissent pas immédiatement. Certaines sont créées à la demande la première fois que vous utilisez une fonctionnalité particulière, par exemple, installed-plugins/ s’affiche uniquement après avoir installé votre premier plug-in.
Fichiers modifiables par l’utilisateur
Les fichiers suivants sont conçus pour être modifiés directement ou gérés par le biais de commandes CLI.
config.json
Il s’agit du fichier de configuration principal pour Copilot CLI. Vous pouvez le modifier directement dans un éditeur de texte, ou utiliser des commandes interactives comme /model et /theme modifier des valeurs spécifiques à partir d’une session. Le fichier prend en charge JSON avec des commentaires (JSONC).
Les paramètres courants sont les suivants :
| Clé | Type | Description |
|---|---|---|
model | ficelle | Modèle IA à utiliser (par exemple, "gpt-5.2", "claude-sonnet-4.6") |
effortLevel | ficelle | Niveau d’effort de raisonnement pour les modèles qui le prennent en charge |
theme | ficelle | Thème de couleur : "auto", "dark"ou "light" |
alt_screen | booléen | Utilisez la mémoire tampon d’écran de remplacement (par défaut : true) |
mouse | booléen | Activer la prise en charge de la souris en mode écran alternatif (par défaut : true) |
banner | ficelle | Fréquence de bannière animée : "always", "once"ou "never" (par défaut : "once") |
render_markdown | booléen | Afficher markdown dans les réponses (par défaut : true) |
screen_reader | booléen | Activer les optimisations de lecteur d’écran (par défaut : false) |
auto_update | booléen | Télécharger automatiquement les mises à jour de l’interface CLI (par défaut : true) |
stream | booléen | Traitez les réponses flux par flux, jeton par jeton (par défaut : true) |
includeCoAuthoredBy | booléen | Ajouter Co-authored-by aux commits créés par un agent (par défaut : true) |
respectGitignore | booléen | Exclure les fichiers gitignored du sélecteur de @ fichiers (par défaut : true) |
trusted_folders | chaîne de caractères[] | Dossiers dans lesquels l’autorisation de lecture/exécution a été accordée |
allowed_urls | chaîne de caractères[] | URL ou domaines autorisés sans invite |
denied_urls | chaîne de caractères[] | URL ou domaines toujours refusés |
log_level | ficelle | Niveau de verbosité du journal : "none", "error", "warning", "info", "debug", "all" ou "default" (par défaut : "default") |
disableAllHooks | booléen | Désactiver tous les hooks (par défaut : false) |
hooks | objet | Définitions de hook au niveau de l’utilisateur inline |
Pour obtenir la liste complète des paramètres de configuration, entrez copilot help config dans votre terminal.
Conseil
Certains paramètres peuvent également être définis à l’aide d’indicateurs de ligne de commande. Par exemple, --alt-screen et --no-alt-screen définissent la valeur de alt_screen et la conservent dans config.json. La /model commande slash enregistre la sélection de votre modèle dans ce fichier afin qu’elle soit conservée d'une session à l'autre.
mcp-config.json
Définit les serveurs MCP (Model Context Protocol) disponibles au niveau de l’utilisateur. Ces serveurs sont disponibles dans toutes vos sessions, quel que soit le répertoire de projet dans lequel vous vous trouvez. Les configurations MCP au niveau du projet (dans .mcp.json, .github/mcp.jsonou .vscode/mcp.json) sont prioritaires sur les définitions au niveau de l’utilisateur lorsque les noms de serveurs sont en conflit.
Pour plus d’informations, consultez « Ajout de serveurs MCP pour CLI de GitHub Copilot ».
agents/
Stockez les définitions d’agent personnalisé personnelles ici sous forme de .agent.md fichiers. Les agents placés dans ce répertoire sont disponibles dans toutes vos sessions. Les agents au niveau du projet (en .github/agents/) sont prioritaires sur les agents personnels s’ils partagent le même nom.
Pour plus d’informations, consultez « Création et utilisation d’agents personnalisés pour CLI de GitHub Copilot ».
skills/
Stockez les définitions de compétences personnalisées personnelles ici. Chaque compétence se trouve dans un sous-répertoire contenant un SKILL.md fichier, par exemple ~/.copilot/skills/my-skill/SKILL.md. Les compétences personnelles sont présentes dans toutes vos sessions. Les compétences au niveau du projet sont prioritaires sur les compétences personnelles si elles partagent le même nom.
Pour plus d’informations, consultez « Création de compétences d’agent pour CLI de GitHub Copilot ».
hooks/
Stockez les scripts de hook au niveau de l’utilisateur ici. Ces hooks s’appliquent à toutes vos sessions. Vous pouvez également définir des crochets inline à config.json l’aide de la hooks clé. Les hooks au niveau du référentiel (in .github/hooks/) sont chargés en même temps que les hooks au niveau de l’utilisateur.
Pour plus d’informations, consultez « Utilisation des hooks avec CLI de GitHub Copilot ».
Fichiers gérés automatiquement
Les éléments suivants sont gérés par l’interface CLI. Vous ne devez généralement pas les modifier manuellement.
permissions-config.json
Stocke vos décisions enregistrées concernant les autorisations d'outils et de répertoires, organisées par emplacement de projet. Lorsque vous approuvez un outil ou que vous accordez l’accès à un annuaire, l’interface CLI enregistre la décision ici afin que vous ne soyez pas invité à nouveau dans le même projet.
Remarque
Si vous souhaitez réinitialiser les autorisations d’un projet, vous pouvez supprimer l’entrée appropriée de ce fichier. Toutefois, la modification du fichier pendant l’exécution d’une session peut entraîner un comportement inattendu.
session-state/
Contient des données d’historique de session, organisées par ID de session dans les sous-répertoires. Chaque répertoire de session stocke un journal des événements (events.jsonl) et des artefacts d’espace de travail (plans, points de contrôle, fichiers suivis). Ces données activent la reprise de session (--resume ou --continue).
session-store.db
Base de données SQLite utilisée par l’interface CLI pour les données intersession, telles que l’indexation et la recherche de point de contrôle. Ce fichier est géré automatiquement et ne doit pas être modifié.
logs/
Contient des fichiers journaux pour les sessions CLI. Chaque session crée un fichier journal nommé process-{timestamp}-{pid}.log. Ces fichiers sont utiles pour déboguer des problèmes.
Conseil
Pour trouver le fichier journal de votre session active, entrez /session dans une session interactive. La sortie inclut le chemin complet du fichier journal, ainsi que d’autres détails de session tels que l’ID de session, la durée et le répertoire de travail.
installed-plugins/
Contient les fichiers des plug-ins que vous avez installés. Les plug-ins installés à partir d’une Place de marché sont stockés sous installed-plugins/{marketplace-name}/{plugin-name}/. Les plug-ins directement installés sont stockés sous installed-plugins/_direct/. Gérez les plug-ins à l’aide copilot plugin des commandes plutôt que de modifier ce répertoire directement.
Pour plus d’informations, consultez « Références du plug-in CLI GitHub Copilot ».
ide/
Contient des fichiers de verrouillage et l'état pour les intégrations IDE (par exemple, lorsque Copilot CLI se connecte à Visual Studio Code). Ce répertoire est géré automatiquement.
Modification de l’emplacement du répertoire de configuration
Vous pouvez remplacer l’emplacement par défaut ~/.copilot de deux façons :
-
**Variable d’environnement** : définissez `COPILOT_HOME` le chemin d’accès du répertoire que vous souhaitez utiliser.Bash export COPILOT_HOME=/path/to/my/copilot-config
export COPILOT_HOME=/path/to/my/copilot-config -
**Option de ligne de commande** : utiliser `--config-dir` lors du lancement de l’interface CLI.Bash copilot --config-dir /path/to/my/copilot-config
copilot --config-dir /path/to/my/copilot-config
L’option --config-dir est prioritaire sur COPILOT_HOME, qui à son tour est prioritaire sur l’emplacement par défaut ~/.copilot.
Éléments à prendre en compte
-
`COPILOT_HOME` remplace l’intégralité du chemin d’accès `~/.copilot`. La valeur que vous définissez doit être le chemin complet du répertoire que vous souhaitez utiliser pour les fichiers de configuration et les sous-répertoires. -
La modification du répertoire signifie que votre configuration existante, l’historique des sessions, les plug-ins installés et les autorisations enregistrées sont introuvables dans le nouvel emplacement. Copiez ou déplacez le contenu de
~/.copilotvers le nouvel emplacement si vous souhaitez le conserver. -
Le répertoire de cache (utilisé pour les caches de la Place de marché, les packages de mise à jour automatique et d’autres données éphémères) suit les conventions de plateforme et n’est pas affecté par
COPILOT_HOME. Il se trouve à :**macOS** : `~/Library/Caches/copilot`- Linux :
$XDG_CACHE_HOME/copilotou~/.cache/copilot**Windows** : `%LOCALAPPDATA%/copilot`Pour remplacer le répertoire du cache séparément, définissez
COPILOT_CACHE_HOME.
Ce que vous pouvez supprimer en toute sécurité
| Élément | Sûr de supprimer ? | Résultat |
|---|---|---|
logs/ | Oui | Les fichiers journaux sont recréés à chaque session. La suppression de ces éléments n’a aucun impact fonctionnel. |
session-state/ | Avec précaution | La suppression supprime l’historique des sessions. Vous ne pourrez plus reprendre les sessions passées. |
session-store.db | Avec précaution | La suppression supprime les données entre sessions. Le fichier est recréé automatiquement. |
config.json | Avec précaution | Réinitialise toutes les configurations par défaut. Vous devez reconfigurer vos préférences. |
permissions-config.json | Avec précaution | Réinitialise toutes les autorisations enregistrées. L'interface CLI vous demandera à nouveau des approbations d'outils et de répertoires. |
installed-plugins/ | Non recommandé | Utilisez copilot plugin uninstall à la place pour garantir la cohérence des métadonnées config.json du plug-in. |
mcp-config.json | Non recommandé | Vous perdrez vos définitions de serveur MCP au niveau de l’utilisateur. Sauvegardez d’abord. |
`agents/`, `skills/`, `hooks/` | Non recommandé | Vous perdrez vos personnalisations personnelles. Sauvegardez d’abord. |
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-programmatic-reference) -
[AUTOTITLE](/copilot/reference/copilot-cli-reference/cli-plugin-reference)