Compétences
Créez des instructions SKILL.md réutilisables que les agents peuvent invoquer manuellement, automatiquement ou à chaque tour.
Les Skills sont des ensembles d'instructions réutilisables pour les Agents LibreChat. Un skill est centré sur un fichier SKILL.md : le frontmatter décrit quand le skill doit être utilisé, et le corps en markdown fournit à l'agent la procédure, les règles, les exemples ou les références à suivre.
Les Skills sont utiles pour les tâches répétitives telles que :
- Application des directives de marque ou de rédaction
- Suivi des listes de contrôle d'examen interne
- Exécution d'un flux de travail de recherche standard
- Préparation d'un flux de travail d'outil spécialisé
- Empaqueter des scripts, références et ressources réutilisables avec un fichier d'instructions
Activer les Skills
La fonctionnalité d'agent skills est activée par défaut. Les administrateurs peuvent la supprimer de la liste des fonctionnalités de l'endpoint agents pour masquer les Skills aux utilisateurs.
Les autorisations de rôle contrôlent également qui peut utiliser, créer, partager et partager publiquement des skills.
Compétences de déploiement
Les administrateurs peuvent déployer des Skills en lecture seule depuis le système de fichiers avec DEPLOYMENT_SKILLS_DIR.
Le répertoire par défaut est ./skill à la racine du projet. LibreChat charge les Skills de déploiement au démarrage et les expose aux utilisateurs ayant la fonctionnalité Skills activée.
Compétences de déploiement :
- Sont en lecture seule dans l'interface utilisateur
- Utilisez
deploymentcomme source - Ont la priorité sur les Skills persistés portant le même nom
- Nécessite un redémarrage de LibreChat après l'ajout, la suppression ou la modification de fichiers
Synchronisation des compétences GitHub
Les administrateurs peuvent répliquer des Skills à partir de dépôts GitHub avec skillSync.github dans librechat.yaml.
Synchronisation des compétences GitHub :
- Analyse les chemins de dépôt configurés à la recherche de
SKILL.md - Importe les fichiers groupés à côté de chaque compétence
- Stocke les Skills en miroir avec
source: "github" - Met à jour les Skills en miroir lorsque le dépôt amont change
- Supprime les Skills en miroir qui n'existent plus dans la source configurée
- Prend en charge les exécutions planifiées, au démarrage et déclenchées manuellement par l'administrateur
Utilisez un jeton d'accès personnel GitHub à grain fin avec des autorisations de lecture seule pour Contents et Metadata pour le dépôt sélectionné. Voir Skill Sync Object Structure pour tous les champs, les options d'identification, le scoping de tenant et les endpoints de synchronisation d'administration.
Créer une compétence
Ouvrez Skills depuis le panneau latéral. Vous pouvez écrire une skill directement dans LibreChat ou télécharger un fichier .md, .zip ou .skill qui contient SKILL.md.
SKILL.md minimal :
Frontmatter
| Key | Type | Description | Example |
|---|---|---|---|
| name | String | Identifiant stable en kebab-case. Il doit commencer par une lettre minuscule ou un chiffre et peut contenir des lettres minuscules, des chiffres et des traits d'union. | name: brand-guidelines |
| description | String | Le texte déclencheur le plus important. Décrivez quand le modèle doit utiliser la compétence. | description: Use when writing public-facing launch copy. |
| always-apply | Boolean | Amorce automatiquement la compétence à chaque tour où elle est active. | always-apply: true |
| user-invocable | Boolean | Définir sur false pour masquer la compétence de l'invocation manuelle via `$`. Par défaut : true. | user-invocable: false |
| disable-model-invocation | Boolean | Définissez sur true pour exclure la compétence du catalogue de compétences invoquées par le modèle. L'invocation manuelle reste autorisée sauf si `user-invocable` est défini sur false. | disable-model-invocation: true |
| allowed-tools | Array/List of Strings | Réunit temporairement ces outils dans l'ensemble d'outils effectifs de l'agent lorsque la compétence est appliquée manuellement ou systématiquement. | allowed-tools: ["execute_code"] |
Modes d'invocation
Les Skills peuvent atteindre un agent de trois manières :
- Manuel : l'utilisateur tape
$dans le chat et sélectionne une compétence dans la fenêtre contextuelle. - Model-invoked : le modèle choisit une compétence dans le catalogue de compétences injecté et appelle l'outil de compétence.
- Toujours appliquer : la compétence est amorcée à chaque tour lorsqu'elle est active.
L'invocation manuelle est une intention explicite de l'utilisateur. Elle peut utiliser des compétences qui sont masquées de l'invocation par le modèle avec disable-model-invocation: true, tant que user-invocable n'est pas défini sur false.
Portée de l'agent
Les Agents doivent avoir les Skills activés avant de pouvoir utiliser le catalogue.
- Si
skills_enabledest défini sur false ou n'est pas défini sur un agent persisté, les skills sont inactifs pour cet agent. - Si
skills_enabledest défini sur true et qu'aucune liste d'autorisation de compétences (skill allowlist) n'est définie, l'agent peut utiliser le catalogue actif complet visible par l'utilisateur. - Si
skills_enabledest défini sur true et queskillscontient des identifiants de compétences spécifiques, l'agent est restreint à cette liste.
Cela permet aux administrateurs d'exposer la fonctionnalité Skills globalement tout en gardant l'ensemble des compétences utilisables de chaque agent ciblé.
Compétences actives et partagées
Les utilisateurs peuvent activer ou désactiver les compétences. Les compétences possédées sont actives par défaut. Les compétences partagées utilisent la configuration par défaut définie par l'administrateur jusqu'à ce que l'utilisateur les remplace.
Les compétences inactives sont exclues de :
- Le popover
$ - Le catalogue de compétences invoquées par le modèle
- Amorçage toujours appliqué
Fichiers groupés
Les bundles de compétences téléchargés peuvent inclure des fichiers aux côtés de SKILL.md, tels que :
references/...scripts/...assets/...
Le backend stocke ces fichiers avec la skill. L'agent peut résoudre les fichiers de skill lorsque la skill est active et dans le périmètre.
Conseil de rédaction
Gardez la description spécifique. C'est le signal le plus fort pour les compétences invoquées par le modèle. Une description courte ou vague entraînera un sous-déclenchement.
Que pensez-vous de ce guide ?