Studio de skills
L'écran Studio de skills vous permet d'écrire un manifeste Skill et son SKILL.md, de les vérifier en direct et sur le serveur selon le contrat skill-manifest, de les enregistrer comme nouvelle version et de vérifier l'empreinte et la signature de la version enregistrée. Chemin dans le portail : /studio/skills. Il sert aux développeurs et aux administrateurs du tenant qui construisent des skills pour les agents.
Ce que montre l'écran
- À gauche, la liste des skills (
GET /v1/skills), paginée, avec Nouveau en haut. Une liste vide affiche Aucune skill pour l'instant. - Onglet Éditeur :
- Manifeste (JSON) : un éditeur JSON vérifié en direct selon le schéma JSON
skill-manifestde contracts/v1 (schémas lus avecGET /v1/contracts/{name}), avec les problèmes de l'éditeur et JSON invalide : ... quand le texte ne s'analyse pas. - SKILL.md : les instructions chargées par le Skill Loader, stockées dans
spec.instructions. - Les boutons Valider sur le serveur et Créer (nouvelle skill) ou Enregistrer comme nouvelle version (skill ouverte), puis le résultat Valide selon contracts/v1 ou Invalide selon contracts/v1 avec les erreurs, et la réponse de l'enregistrement.
- Manifeste (JSON) : un éditeur JSON vérifié en direct selon le schéma JSON
- Onglet Test, une fois une skill enregistrée ouverte : Signature avec le bouton Vérifier et sa réponse JSON.
- Ouvrir une skill lit son manifeste enregistré avec
GET /v1/manifests/{kind}/{name}(typeSkill).
Actions
| Bouton ou action | Ce qu'il fait | Appel API | Rôles |
|---|---|---|---|
| Nouveau | Charge le manifeste de départ new-skill et son SKILL.md. | Aucun | Tout le monde |
| Clic sur une skill de la liste | Charge son manifeste et son SKILL.md. | GET /v1/manifests/{kind}/{name} | Tout utilisateur connecté |
| Valider sur le serveur | Valide le manifeste (SKILL.md inclus) selon skill-manifest. | POST /v1/contracts/{name}/validate | Tout utilisateur connecté |
| Créer | Applique le nouveau manifeste. | POST /v1/manifests/apply | tenant_admin, developer |
| Enregistrer comme nouvelle version | Applique le manifeste en augmentant de un le dernier numéro de metadata.version (0.1.0 devient 0.1.1). | POST /v1/manifests/apply | tenant_admin, developer |
| Vérifier (onglet Test) | Vérifie l'empreinte et la signature de la version enregistrée. | POST /v1/skills/{name}/verify | tenant_admin, developer, application_owner, security_officer (et la relation éditeur sur la skill) |
| Réessayer (état d'erreur) | Relit la liste ou les schémas. | GET /v1/skills ou GET /v1/contracts/{name} | Tout utilisateur connecté |
Rôles
Le portail active Créer et Enregistrer comme nouvelle version pour STUDIO_WRITERS (tenant_admin, developer) et affiche L'enregistrement nécessite le rôle tenant_admin ou developer. sinon. POST /v1/manifests/apply demande les mêmes deux rôles (services/control-plane/src/eai/domains/contracts/__init__.py). POST /v1/skills/{name}/verify demande tenant_admin, developer, application_owner ou security_officer ainsi que la relation éditeur sur la skill (services/control-plane/src/eai/domains/skills/routes.py).
Tâches courantes
Créer une skill
- Partir du modèle de départ. Il contient tous les champs obligatoires. Cliquez sur Nouveau. Résultat attendu : le manifeste
new-skillen version 0.1.0 et un SKILL.md. En cas d'échec : rechargez la page. - Modifier le manifeste. Renseignez
metadata.name,metadata.owner,spec.descriptionetspec.permissions. Résultat attendu : Aucun problème détecté par l'éditeur. En cas d'échec : corrigez chaque ligne citée dans la liste des problèmes. - Rédiger SKILL.md. L'agent lit ces instructions. Décrivez quand utiliser la skill, ses étapes et ses outils. Résultat attendu : le texte dans l'éditeur. En cas d'échec : rien à faire à cette étape.
- Valider sur le serveur. Le serveur applique le contrat complet. Cliquez sur Valider sur le serveur. Résultat attendu : Valide selon contracts/v1. En cas d'échec : lisez la liste des erreurs et corrigez le manifeste.
- Créer. Cliquez sur Créer. Résultat attendu : le message Enregistré en version 0.1.0 et la skill dans la liste. En cas d'échec : voir Dépannage.
Vérifier la signature d'une skill enregistrée
- Ouvrir la skill. Cliquez dessus dans la liste. Résultat attendu : les onglets Éditeur et Test apparaissent. En cas d'échec : la skill n'est pas encore enregistrée.
- Vérifier. Ouvrez Test et cliquez sur Vérifier. Résultat attendu : la réponse JSON avec le contrôle de l'empreinte et de la signature. En cas d'échec :
forbiddensignifie qu'un rôle ou la relation éditeur manque.
Dépannage
| Symptôme | Cause | Correction |
|---|---|---|
| JSON invalide : ... | Le texte du manifeste ne s'analyse pas. | Corrigez la syntaxe JSON. |
Erreur invalid_manifest (422) | Le manifeste ne respecte pas le contrat. | Lisez errors dans la réponse et corrigez les champs. |
Erreur tenant_mismatch (403) | metadata.tenant désigne un autre tenant. | Retirez le champ ou indiquez votre tenant. |
Erreur forbidden (403) | Un rôle requis manque. | Demandez le rôle developer. |
Erreur skill_not_found (404) sur Vérifier | La skill n'est pas enregistrée. | Créez-la d'abord. |
| État d'erreur au-dessus de l'éditeur | Les schémas de contracts/v1 n'ont pas pu être lus. | Cliquez sur Réessayer. |