# Comment ajouter un skill Ce guide montre comment donner à l'agent une nouvelle procédure en markdown que le modèle peut charger avec `read_skill`. Il suppose que vous savez quelle tâche la procédure doit couvrir. ## Étapes 1. Créez le skill dans le répertoire des skills (`skills/` par défaut, voir `skillsDir`), dans l'une des deux dispositions : un fichier à plat `skills/.md`, ou un répertoire par skill `skills//SKILL.md` (la disposition des exemples livrés). Les deux peuvent se mélanger ; tout autre fichier dans le répertoire d'un skill est ignoré. ```bash cat > skills/go-test.md <<'EOF2' --- name: go-test description: run the Go tests of the current module and report failures --- # Run the Go tests Run `go test ./...` with your `bash` tool, then report the failing packages, if any. EOF2 ``` 2. Donnez-lui un `name:` et une `description:` d'une ligne dans l'en-tête. La description est ce que le modèle lit dans la description de l'outil `read_skill` pour choisir un skill ; sans elle, il choisit à l'aveugle. 3. Relancez `mm`. Le catalogue est construit une fois au démarrage. Le compteur `skills: N` de la bannière augmente de un, et `read_skill` apparaît dans la liste `tools:` s'il en était absent. 4. Demandez la tâche dans le terminal. Le prompt système d'`agent.yaml` dit au modèle d'appeler `read_skill` d'abord pour toute demande qui correspond au catalogue ; une ligne `📖 read_skill: go-test` confirme qu'il l'a fait. ## Variantes - **Un autre répertoire.** Fixez `skillsDir` dans le YAML. Dans le terminal, un chemin relatif est résolu depuis le répertoire d'où vous lancez `mm`, donc un `mm` installé et lancé dans un projet charge les skills de ce projet ; en mode ACP avec un fichier de configuration, il est résolu à côté de ce fichier. La bannière affiche `[warning: no skills found in …]` quand le répertoire résolu ne donne rien. - **Aucun skill.** Laissez le répertoire vide ou absent : `read_skill` n'est alors pas déclaré, et le modèle ne le voit jamais. - **Les exemples livrés.** Le dépôt livre `skills/greetings/SKILL.md`, `skills/vulcan-salute/SKILL.md` et `skills/what-time-is-it/SKILL.md`. Lancez `mm` depuis la racine du dépôt et la bannière affiche `skills: 3`. ## Voir aussi - Les champs acceptés dans l'en-tête : [format d'un fichier de skill](../reference/skill-format.md) - Ce que `read_skill` renvoie au modèle : [outils intégrés](../reference/tools.md)