Comment donner à l'agent les consignes de votre projet (AGENTS.md)
Ce guide montre comment faire suivre à mm les règles du projet dans lequel il travaille — comment compiler et tester, ce qu'il ne faut pas toucher — sans modifier la configuration de l'agent. Il suppose que vous lancez déjà mm dans le dossier d'un projet, ou depuis un éditeur qui en ouvre un.
Étapes
-
Écrivez un
AGENTS.mdà la racine du projet — du Markdown simple, sans section obligatoire :# Build and test - Tests run with `make check`, never with `go test` directly. # Conventions - Never edit files under `vendor/`. - Commit messages start with the ticket number. -
Lancez mm depuis ce dossier (ou ouvrez le projet dans votre éditeur). La bannière nomme le fichier et sa taille :
mm … | yolo: on | agents.md: /home/me/project/AGENTS.md (~50 tokens)Aucune configuration n'est nécessaire :
agentsMd.enabledvauttruepar défaut. -
Posez vos questions comme d'habitude. Le fichier fait partie du prompt système de la conversation ; le modèle le suit, sauf si vous demandez autre chose dans le chat.
-
Après avoir modifié
AGENTS.md, tapez/new(ou ouvrez une nouvelle session dans l'éditeur) : la conversation suivante lit la nouvelle version. La conversation en cours garde la version avec laquelle elle a commencé.
Variantes
- Le fichier est ailleurs dans le projet :
agentsMd: {path: docs/AGENTS.md}. Un chemin relatif l'est au dossier du projet, si bien qu'une même configuration sert pour tous les projets. - Le désactiver pour un agent :
agentsMd: {enabled: false}dans le fichier de cet agent. Pour un agent appelé par un autre (ask_agent,/ask,mm --ask), seul compte le réglage de l'agent appelé. - Un long fichier sur un petit modèle : la bannière avertit quand le fichier occupe 20 % ou plus de la fenêtre de contexte. Raccourcissez-le, ou fixez
agentsMd: {maxChars: 8000}— au-delà de la limite, le fichier n'est pas lu du tout (la bannière indiqueskipped (too long)) ; il n'est jamais coupé au milieu. - Dans un éditeur (ACP) : chaque session lit le
AGENTS.mddu projet dans lequel elle a été ouverte ; la bannière, affichée avant toute session, indiqueagents.md: <session cwd>/AGENTS.md. - Un agent JSON (
structuredOutput) ne lit jamais le fichier ; la bannière indiqueagents.md: ignored (structured output).
Vérifier ce que le modèle a reçu
Activez la trace et lisez le message système de la première requête :
AGENT_TRACE=true mm agent.yaml -p "Comment lance-t-on les tests ici ?"
jq -r '.messages[0].content' .mm/traces/*-0001.request.json
Le fichier apparaît après le prompt system, sous PROJECT INSTRUCTIONS (from <chemin>). Voir Voir le JSON envoyé au modèle.
Voir aussi
- Référence de
agentsMd— les clés, ce qui est lu et ce qui ne l'est pas - Consignes du projet — explication — pourquoi elles rejoignent le prompt de cette façon, et quand elles sont lues
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
|