/acreadiness-generate-instructions — écrire les instructions des agents IA
Utilisez cette compétence chaque fois que l'utilisateur souhaite créer, régénérer ou rafraîchir ses instructions personnalisées pour les agents de codage IA (Copilot, Claude, etc.). C'est l'étape Generate dans la boucle Measure → Generate → Maintain d'AgentRC et l'action au plus fort effet de levier pour le pilier AI Tooling.
Options de sortie
VS Code reconnaît plusieurs types de fichiers d'instructions — AgentRC génère les plus courants :
| Fichier | Portée | Quand l'utiliser |
|---|---|---|
.github/copilot-instructions.md |
Toujours actif, workspace entier | Par défaut — fichier d'instructions natif de VS Code Copilot |
AGENTS.md |
Toujours actif, workspace entier | Repos multi-agents (Copilot + Claude + autres) |
.github/instructions/*.instructions.md |
Limité par glob applyTo |
Règles par zone / par langage dans les monorepos |
CLAUDE.md |
Spécifique à Claude | Ajouter via --claude-md (imbriqué seulement) |
Stratégies
flat(par défaut) — un seul.github/copilot-instructions.mdau chemin choisi. Simple, facile à examiner.nested— hub à.github/copilot-instructions.md+ fichiers de détail par thème à.github/instructions/<thème>.instructions.md, chacun avec un globapplyTopour que VS Code ne charge le thème que quand il est pertinent. Meilleur pour les grands repos ou ceux avec plusieurs stacks.
Pourquoi
.github/instructions/et non.agents/? La disposition imbriquée par défaut d'AgentRC écrit dans.agents/, qui est le bon endroit pour les repos agnostiques aux agents (Copilot + Claude + Cursor lisantAGENTS.md). Pour VS Code Copilot spécifiquement, l'emplacement natif est.github/instructions/avec frontmatterapplyTo— c'est ce que Copilot découvre automatiquement. Cette compétence réécrit la sortie imbriquée d'AgentRC à l'emplacement natif VS Code chaque fois que la sortie principale est.github/copilot-instructions.md. Si vous avez plutôt choisi--output AGENTS.md, la disposition imbriquée conserve la structure.agents/par défaut d'AgentRC.
Pour les monorepos, générez des instructions délimitées par zone avec --areas, --area <nom>, ou --areas-only. Les zones sont définies dans agentrc.config.json. La sortie par zone est écrite sous forme de fichiers VS Code .instructions.md avec un glob applyTo (voir ci-dessous).
Fichiers .instructions.md par thème ou par zone
Les deux se retrouvent dans .github/instructions/ mais répondent à des questions différentes :
| Type | Exemple de nom | Exemple applyTo |
D'où vient-il |
|---|---|---|---|
| Thème (imbriqué) | testing.instructions.md |
**/*.{test,spec}.{ts,tsx,js} |
Split par thème AgentRC --strategy nested |
| Zone (monorepo) | frontend.instructions.md |
apps/frontend/** |
Zones agentrc.config.json + --areas |
Vous pouvez avoir les deux à la fois : un ensemble imbriqué de fichiers par thème plus des fichiers par zone pour un monorepo.
Fichiers par zone avec applyTo
Quand l'utilisateur opte pour les zones, émettez un fichier .instructions.md natif VS Code par zone à .github/instructions/<zone>.instructions.md. Chaque fichier DOIT commencer par du frontmatter déclarant le glob auquel les règles s'appliquent :
---
applyTo: "apps/frontend/**"
---
# Instructions de la zone Frontend
…contenu généré par AgentRC pour cette zone…
Flux de travail :
- Lisez
agentrc.config.jsonpour découvrir les zones déclarées et leurspaths/ globs. Sipathsest absent, demandez à l'utilisateur le glob (ex.src/api/**). - Exécutez
agentrc instructions --areas(ou--area <nom>) pour produire le contenu du corps par zone. - Enveloppez chaque contenu de zone dans
.github/instructions/<zone>.instructions.mdavec le frontmatterapplyTotiré despathsde la zone. Si l'utilisateur a passé--apply-to <glob>sur un appel mono-zone, utilisez ce glob tel quel. - Laissez le fichier principal intact — le
.github/copilot-instructions.mdracine reste les instructions toujours actives ; les fichiers.instructions.mdne s'activent que pour les chemins correspondants.
Nommage : nom de zone en minuscules, kebab-case. Exemples : .github/instructions/frontend.instructions.md, .github/instructions/api.instructions.md, .github/instructions/infra.instructions.md.
Étapes
- Choisissez le fichier cible. Par défaut
.github/copilot-instructions.md. Basculez versAGENTS.mdseulement si l'utilisateur mentionne multi-agents / Claude / support Cursor. - Demandez toujours quelle stratégie utiliser —
flatounested— sauf si l'utilisateur l'a déjà spécifiée dans son message ou via--strategy. Présentez brièvement le compromis :- Flat (par défaut) — un seul
.github/copilot-instructions.md. Simple, facile à examiner dans une seule PR. Meilleur pour les petits/moyens repos avec un seul stack. - Nested — hub
.github/copilot-instructions.md+ fichiers de détail par thème.github/instructions/<thème>.instructions.md(chacun avec un globapplyTopour que VS Code ne les charge que quand ils sont pertinents). Meilleur pour les gros repos ou ceux avec plusieurs stacks. Ajoutez--claude-mdpour émettre aussiCLAUDE.md. Recommandeznestedde manière proactive quand le repo a > 5 répertoires de niveau supérieur, plusieurs stacks, ou utilise déjà un outil de monorepo (turbo/nx/pnpm workspaces).
- Flat (par défaut) — un seul
- Détectez les zones du monorepo en lisant
agentrc.config.json. Si des zones existent, demandez à l'utilisateur s'il souhaite des fichiers.instructions.mdpar zone avecapplyToen plus du fichier racine. Par défaut "oui" quandagentrc.config.jsondéclare des zones. - Exécutez d'abord une exécution sèche pour que l'utilisateur puisse prévisualiser :
npx -y github:microsoft/agentrc instructions --output <fichier> --strategy <flat|nested> [--areas|--area <nom>] [--claude-md] --dry-run - Montrez un court résumé de ce qui changerait — fichiers qui seraient créés ou écrasés, nombre de zones + leurs globs
applyTo, modèle utilisé (par défautclaude-sonnet-4.6). - À la confirmation, exécutez la même commande sans
--dry-run(et optionnellement--forcesi des fichiers existent déjà). - Post-traitement de la disposition pour la sortie Copilot :
- Si
--outputse termine parcopilot-instructions.mdet la stratégie estnested: déplacez/réécrivez les fichiers.agents/<thème>.mdd'AgentRC vers.github/instructions/<thème>.instructions.md. Ajoutez du frontmatter à chaque fichier avec un globapplyToapproprié (voir « DéfautsapplyTopar thème » ci-dessous). Supprimez le répertoire.agents/maintenant vide. - Si
--areasa été utilisé : écrivez aussi.github/instructions/<zone>.instructions.mdpour chaque zone, en utilisant lespathsde chaque zone deagentrc.config.jsoncomme globapplyTo(remplacez par--apply-topour des appels mono-zone). - Si
--output AGENTS.mda été choisi : conservez la disposition native.agents/d'AgentRC pour l'imbriqué — les lecteurs agnostiques aux agents s'y attendent. Créez le répertoire.github/instructions/s'il manque.
- Si
Défauts applyTo par thème
Lors de la promotion des fichiers de thème imbriqués d'AgentRC vers .instructions.md, utilisez ces défauts sauf si l'utilisateur en spécifie d'autres :
| Thème | applyTo par défaut |
|---|---|
testing |
**/*.{test,spec}.{ts,tsx,js,jsx,mjs,cjs} |
style / code-quality / formatting |
**/*.{ts,tsx,js,jsx,mjs,cjs,py,go,rs,java,kt,cs} |
build / ci |
**/{package.json,turbo.json,nx.json,.github/workflows/**} |
docs |
**/*.md |
security |
** |
| autre / niveau hub | ** |
- Vérifiez en relisant le(s) fichier(s) généré(s) et montrez à l'utilisateur un synopsis d'un paragraphe : stack détecté, conventions capturées, longueur, liste des fichiers
.instructions.mdavec leurs globs. - Suggérez les prochaines étapes :
- Réexécutez la compétence
assesspour confirmer que le score du pilier AI Tooling s'est amélioré. - Si l'utilisateur a déjà à la fois
copilot-instructions.mdetAGENTS.md, recommandez de consolider vers une seule source de vérité (AgentRC le signale aux niveaux de maturité 2+).
- Réexécutez la compétence
Notes
- AgentRC lit votre code réel — pas de templates. La sortie reflète les langages, frameworks et conventions détectés.
--claude-md(stratégie imbriquée seulement) émet aussiCLAUDE.md.- VS Code applique automatiquement les fichiers
.instructions.mdquand le fichier actif correspond àapplyTo. Le.github/copilot-instructions.mdracine charge toujours. - N'exécutez jamais cette compétence de manière non-interactive en CI ; les instructions font partie du repo et doivent arriver via PR.