Utiliser Skilo
Skilo est un outil en ligne de commande pour développer des Compétences d'Agent.
Installation
curl -sSfL https://raw.githubusercontent.com/manuelmauro/skilo/main/install.sh | sh
Démarrage rapide
skilo new my-skill # Créer à partir d'un modèle
skilo add owner/repo # Installer depuis Git
skilo lint . # Valider selon la spécification
skilo fmt . # Formater les fichiers SKILL.md
Exécutez skilo -h pour toutes les commandes et options.
TOUJOURS Valider les Compétences
Exécutez skilo lint et skilo fmt avant de valider toute modification de compétence. Ces commandes appliquent la Spécification des Compétences d'Agent et détectent les problèmes courants.
# Valider et formater en une seule commande
skilo check .
# Mode strict pour l'intégration continue (les avertissements deviennent des erreurs)
skilo check --strict .
Structure d'une Compétence
my-skill/
├── SKILL.md # Requis : manifeste avec frontmatter YAML
├── scripts/ # Optionnel : code exécutable
├── references/ # Optionnel : documentation supplémentaire (chargée à la demande)
└── assets/ # Optionnel : ressources statiques
Exigences du Frontmatter
Champs Obligatoires
name (1-64 caractères)
- Uniquement alphanumériques minuscules et tirets (
a-z,0-9,-) - Ne doit PAS commencer/se terminer par
-ni contenir-- - Doit correspondre au nom du répertoire parent
description (1-1024 caractères)
- Décrire CE QUE fait la compétence ET QUAND l'utiliser
- Inclure des mots-clés qui aident les agents à faire correspondre les demandes des utilisateurs
Champs Optionnels
license- Gardez-le court, référencez le fichier LICENSE pour plus de détailscompatibility(max 500 caractères) - Exigences d'environnement (ex. :Nécessite git, docker)metadata- Paires clé-valeur pour propriétés personnaliséesallowed-tools- Liste d'outils pré-approuvés séparés par des espaces (expérimental)
Bonnes Pratiques
Rédiger des Descriptions Efficaces
La description est ce qui permet aux agents de décider quand activer votre compétence. Soyez précis.
# Bon - spécifique, riche en mots-clés
description: Extrait du texte et des tableaux de fichiers PDF, remplit des formulaires PDF et fusionne plusieurs PDF. À utiliser lors du travail avec des documents PDF ou lorsque l'utilisateur mentionne des PDF, des formulaires ou de l'extraction de documents.
# Mauvais - vague, aucun indice d'activation
description: Aide avec les PDF.
Garder le Corps Concis
Le corps entier du fichier SKILL.md se charge lorsque la compétence s'active. Gardez-le sous 500 lignes.
- Inclure des instructions pas à pas
- Ajouter des exemples d'entrées et de sorties
- Couvrir les cas particuliers courants
- Déplacer le matériel détaillé dans
references/
Utiliser la Divulgation Progressive
Structurez les compétences pour minimiser l'utilisation du contexte :
- Métadonnées (~100 tokens) -
name+descriptionchargés au démarrage pour toutes les compétences - Instructions (<5000 tokens) - Corps complet chargé lorsque la compétence s'active
- Ressources (à la demande) -
scripts/,references/,assets/chargés seulement si nécessaire
Rédiger des Scripts Autonomes
Les scripts dans scripts/ doivent :
- Être autonomes ou documenter clairement leurs dépendances
- Inclure des messages d'erreur utiles
- Gérer les cas particuliers avec élégance
Organiser les Références Efficacement
Les fichiers dans references/ sont chargés à la demande :
- Gardez les fichiers ciblés (un fichier = un concept)
- Utilisez des chemins relatifs depuis la racine de la compétence
- Évitez les chaînes de références profondément imbriquées
Règles de Lint
Skilo applique ces règles (configurez dans .skilorc.toml) :
| Code | Règle | Par défaut |
|---|---|---|
| E001 | name_format | activé |
| E002 | name_length | 64 car. |
| E003 | name_directory | activé |
| E004 | description_required | activé |
| E005 | description_length | 1024 car. |
| E006 | compatibility_length | 500 car. |
| E009 | references_exist | activé |
| W001 | body_length | 500 lignes |
| W002 | script_executable | activé |
| W003 | script_shebang | activé |
Intégration CI
- name: Valider les compétences
run: |
curl -sSfL https://raw.githubusercontent.com/manuelmauro/skilo/main/install.sh | sh
skilo check --strict skills/