Aller au contenu principal

Bibliothèque Navin

L'écran Bibliothèque Navin vous permet de parcourir les skills, plugins, commandes, agents, préréglages MCP et canaux de la bibliothèque Navin livrée avec la plateforme, de les activer pour un projet, d'installer des serveurs MCP et des canaux avec des références de secrets, de démarrer des instances MCP isolées et de gérer les règles que reçoit chaque exécution du projet. Chemin dans le portail : /studio/navin-library. Il sert aux développeurs, aux responsables d'application et aux administrateurs du tenant.

Ce que montre l'écran​

En haut : Projet (les projets de GET /v1/projects, choisi par défaut quand il n'y en a qu'un), le badge Bibliothèque x.y.z et un compteur par type (GET /v1/navin-library). Sans aucun projet, l'écran affiche Aucun projet pour l'instant. Les onglets Activé dans le projet, Instances MCP et Règles affichent Choisissez d'abord un projet tant qu'aucun projet n'est choisi. L'onglet choisi est conservé dans l'adresse.

Catalogue​

  • Les boutons de type avec leurs compteurs : Skills, Plugins, Commandes, Agents, Préréglages MCP, Canaux.
  • Rechercher (nom ou description) et, pour les skills, plugins et préréglages MCP, Catégorie (Toutes les catégories ou une catégorie).
  • Un tableau (GET /v1/navin-library/{kind}) avec Nom, Description, Catégorie, Version et un menu de ligne : Activer dans le projet (ou Déjà actif) pour les skills, plugins, commandes et agents ; Installer pour les préréglages MCP et les canaux.
  • Un clic sur une ligne ouvre un panneau latéral (GET /v1/navin-library/{kind}/{name}) : description, catégorie, version, empreinte, le bouton Activer dans le projet ou Installer, puis SKILL.md et Fichiers pour une skill, README.md et plugin.json pour un plugin, Contenu pour une commande ou un agent, Contrat complet pour un préréglage MCP ou un canal.

Activé dans le projet​

Lu depuis GET /v1/projects/{project_id}/navin-library :

  • Les compteurs par type et la version de la bibliothèque utilisée.
  • Activations : Nom, Statut, Type, Apporté par le plugin, Version, Ressource, Date, avec l'action de ligne Retirer.
  • Serveurs MCP du projet : Nom, Statut, Préréglage, URL, avec l'action de ligne Accès, et le bouton Synchroniser les serveurs hébergés par le Navin Manager.
  • Canaux du projet : Nom, Statut, Type, Préréglage, Référence de l'agent.

MCP​

Les cartes des préréglages MCP avec leur nom, leur transport, leur description, leur catégorie, leur hébergement (Hébergé par le Navin Manager, Application de bureau, Service en ligne : adresse interne obligatoire), le badge Non installable au besoin, et Configurer. Configurer ouvre le formulaire Installer nom : Nom du serveur (par défaut <nom>-<projet>), URL du point d'accès (facultative) ou URL du point d'accès (obligatoire) pour un préréglage stdio ou en ligne, Transport (Valeur du préréglage, streamable_http, sse), Outils autorisés (séparés par des virgules), puis les champs du préréglage ; un champ secret porte le badge Référence et n'accepte qu'une référence openbao:// ou env://.

Instances MCP​

Lu depuis GET /v1/projects/{project_id}/mcp/instances, rafraîchi toutes les 3 secondes tant qu'une instance est en préparation ou en cours d'arrêt :

  • Un avertissement Le Runtime MCP n'est pas activé sur la plateforme quand le runtime est désactivé.
  • Modèles : la source du catalogue (catalogue de l'entreprise sur SeaweedFS avec sa version, ou modèles de départ de la plateforme), puis une carte par modèle avec Autorisé ou Non autorisé par la politique, la description, l'image, le transport, les identifiants (Sans identifiants, Référence de secret personnelle, Identifiants de base de données dynamiques) et Activer.
  • Instances : le filtre Filtrer par état (Tous les états, En préparation, Prête, En veille, En échec, En cours d'arrêt, Terminée) et un tableau Modèle, Nom, Statut, Créée, Dernière activité, Expiration, Raison de fin, avec les actions de ligne Journal, Démarrer, Arrêter, Détruire. Un clic sur une ligne ouvre le journal.
  • Politique du projet : Modèles autorisés (aucun coché signifie tous les modèles), Hôtes autorisés (noms d'hôtes ou motifs *.domaine), Rôles de base de données autorisés, Durée d'inactivité (secondes) (60 à 86400, 900 par défaut), Durée de vie maximale (secondes) (300 à 86400, 28800 par défaut), Instances par utilisateur (1 à 20, 3 par défaut), Instances par projet (1 à 200, 20 par défaut), et Enregistrer la politique.
  • Le panneau Activer nom : Nom de l'instance, Durée d'inactivité (secondes) dans les bornes de la politique, les paramètres du modèle (hôte, liste d'hôtes, nom, rôle de base de données, entier, choix), Référence de secret pour un modèle à secret personnel, Agents autorisés, Outils autorisés (vide signifie tous les outils), Annuler et Activer.
  • Le panneau Journal de nom : badge d'état, état des identifiants, erreur, raison de fin ou de veille, Modèle, Génération, Propriétaire, Ressource, URL, Agents autorisés, Outils autorisés, Expiration, et Événements (nom de l'événement, date, acteur, génération, identifiant de trace, détails).

Canaux​

Un tableau des canaux de la bibliothèque : Nom, Champs, Diffusion en continu, Site officiel, avec l'action de ligne Configurer. Configurer ouvre Installer le canal nom : Nom du canal, Référence de l'agent (par exemple agent:support-bot), les champs du contrat du canal (texte, entier, oui ou non, liste, choix, référence de secret) et Exigences (une alternative de chaque) sous forme de badges.

Règles​

  • Règles du projet (GET /v1/projects/{project_id}/rules) : Nom, Mode, Source, Chemin, Globs, Octets, Date, avec Modifier et Supprimer, et le bouton Nouvelle règle.
  • Éditeur de règle : Nom, Mode (Permanente, Conditionnelle), Source (navin, cursor, cursor_legacy, cline, windsurf, copilot), Description, Globs, Contenu, Enregistrer la règle.
  • Importer depuis un dépôt : les sources de règles reconnues par la bibliothèque, les sélecteurs Fichiers et Dossier, le chemin relatif de chaque fichier choisi (modifiable), Importer et Vider, puis les listes Importées et Ignorés (pas un fichier de règles, vide, trop volumineux).
  • Aperçu du prompt (GET /v1/projects/{project_id}/rules/prompt) : compteurs Permanente et Conditionnelle, empreinte, la section du prompt, et Actualiser.

Actions​

Bouton ou actionCe qu'il faitAppel APIRôles
ProjetChoisit le projet sur lequel travaillent les onglets.GET /v1/projectsTout utilisateur connecté
Bouton de type, Rechercher, CatégorieListe les éléments d'un type avec les filtres.GET /v1/navin-library/{kind}Tout utilisateur connecté du tenant
Clic sur une ligne du catalogueOuvre le panneau de l'élément.GET /v1/navin-library/{kind}/{name}Tout utilisateur connecté du tenant
Activer dans le projet (menu de ligne ou panneau)Active une skill, un plugin (avec ses skills, commandes et agents), une commande ou un agent.POST /v1/projects/{project_id}/navin-library/activationsLIBRARY_WRITERS, relation éditeur sur le projet
Installer (ligne d'un préréglage MCP ou d'un canal)Ouvre l'onglet MCP ou Canaux sur l'élément.AucunTout le monde
Retirer puis ConfirmerRetire une activation ; un plugin emporte ce qu'il a apporté.DELETE /v1/projects/{project_id}/navin-library/activations/{activation_id}LIBRARY_WRITERS, relation éditeur sur le projet
Synchroniser les serveurs hébergés par le Navin ManagerCrée, met à jour ou désactive les serveurs du projet hébergés par le Navin Manager.POST /v1/mcp/hosted/synctenant_admin
Accès puis Enregistrer l'accèsFixe les utilisateurs et agents autorisés à appeler le serveur via la passerelle MCP (liste vide : tous les membres du projet).PUT /v1/mcp/servers/{server_id}/accessLIBRARY_WRITERS
Configurer (carte MCP) puis InstallerInstalle le préréglage MCP comme serveur du projet.POST /v1/projects/{project_id}/navin-library/mcp-presets/{name}/installLIBRARY_WRITERS, relation éditeur sur le projet
Activer (carte de modèle) puis ActiverDémarre une instance MCP isolée qui vous appartient dans le projet.POST /v1/projects/{project_id}/mcp/instancesINSTANCE_WRITERS, relation éditeur sur le projet
Filtrer par étatListe les instances dans un état.GET /v1/projects/{project_id}/mcp/instancesRelation lecteur sur le projet
Journal ou clic sur une ligneOuvre l'état et les événements de l'instance.GET /v1/projects/{project_id}/mcp/instances/{instance_id}Relation lecteur, propriétaire ou administrateur du tenant
DémarrerRedémarre une instance en veille ou en échec (nouvelle génération et nouveaux identifiants).POST /v1/projects/{project_id}/mcp/instances/{instance_id}/startPropriétaire de l'instance ou administrateur du tenant
ArrêterArrête tout de suite une instance active : elle passe en veille et son prochain appel la recrée.POST /v1/projects/{project_id}/mcp/instances/{instance_id}/stopPropriétaire de l'instance ou administrateur du tenant
Détruire puis ConfirmerRévoque les identifiants, supprime l'instance et ses ressources ; le journal est conservé.DELETE /v1/projects/{project_id}/mcp/instances/{instance_id}Propriétaire de l'instance ou administrateur du tenant
Enregistrer la politiqueEnregistre la politique du Runtime MCP du projet.PUT /v1/projects/{project_id}/mcp/policytenant_admin
Configurer (ligne de canal) puis InstallerCrée un canal du projet depuis le contrat du canal.POST /v1/projects/{project_id}/navin-library/channels/{name}/installLIBRARY_WRITERS, relation éditeur sur le projet
Nouvelle règleVide l'éditeur de règle.AucunTout le monde
Modifier ou clic sur une ligneCharge la règle dans l'éditeur.AucunTout le monde
Enregistrer la règleCrée ou remplace la règle de ce nom.PUT /v1/projects/{project_id}/rules/{name}LIBRARY_WRITERS, relation éditeur sur le projet
Supprimer puis ConfirmerSupprime la règle.DELETE /v1/projects/{project_id}/rules/{name}LIBRARY_WRITERS, relation éditeur sur le projet
Fichiers, Dossier, ViderChoisit ou vide les fichiers à importer.AucunTout le monde
ImporterImporte les fichiers de règles choisis (200 fichiers au plus).POST /v1/projects/{project_id}/rules/importLIBRARY_WRITERS, relation éditeur sur le projet
ActualiserRelit l'aperçu du prompt.GET /v1/projects/{project_id}/rules/promptRelation lecteur sur le projet
Annuler, FermerFerme une boîte de dialogue ou un formulaire sans enregistrer.AucunTout le monde

Rôles​

  • LIBRARY_WRITERS (platform_admin, tenant_admin, developer, application_owner, dans portal/src/screens/navin-library.tsx) active l'activation, le retrait, l'installation, l'accès, l'enregistrement et l'import de règles ; les autres utilisateurs voient Lecture seule : activer et installer demandent le rôle administrateur du tenant, développeur ou responsable d'application. Le Control Plane contrôle WRITE_ROLES (tenant_admin, developer, application_owner, dans services/control-plane/src/eai/domains/agents/kit.py) et la relation éditeur sur le projet (services/control-plane/src/eai/domains/navin_library/routes.py) ; platform_admin passe tous les contrôles de rôle.
  • INSTANCE_WRITERS (platform_admin, tenant_admin, developer) active Activer sur un modèle. Le serveur demande WRITE_ROLES et la relation éditeur sur le projet (services/control-plane/src/eai/domains/mcp_runtime/routes.py).
  • Journal, Démarrer, Arrêter et Détruire demandent la relation lecteur sur le projet ; un utilisateur voit et agit sur ses propres instances, un administrateur du tenant sur toutes les instances du projet.
  • Enregistrer la politique et Synchroniser les serveurs hébergés par le Navin Manager ne sont actifs que pour tenant_admin, et le serveur demande tenant_admin.
  • Lire le catalogue demande seulement un utilisateur connecté du tenant ; lire le projet, les instances et les règles demande la relation lecteur sur le projet.

Tâches courantes​

Activer une skill pour un projet​

  1. Choisir le projet. Les activations appartiennent à un projet. Sélectionnez-le dans Projet. Résultat attendu : les onglets ne sont plus vides. En cas d'échec : Aucun projet pour l'instant signifie qu'il faut d'abord créer un projet.
  2. Trouver la skill. Ouvrez Catalogue, cliquez sur Skills et tapez dans Rechercher. Résultat attendu : les lignes correspondantes. En cas d'échec : modifiez la recherche ou la catégorie.
  3. La lire. Cliquez sur la ligne pour lire SKILL.md et Fichiers. Résultat attendu : le panneau latéral. En cas d'échec : cliquez sur Réessayer dans le panneau.
  4. Activer. Cliquez sur Activer dans le projet. Résultat attendu : le message Activé : 1 élément(s) et le bouton Déjà actif. En cas d'échec : un bouton inactif signifie un rôle manquant ou aucun projet.

Installer un serveur MCP depuis un préréglage​

  1. Ouvrir le préréglage. Ouvrez MCP et cliquez sur Configurer sur la carte. Résultat attendu : le formulaire Installer nom. En cas d'échec : Non installable signifie que le préréglage ne peut pas être installé.
  2. Indiquer le point d'accès. Un préréglage stdio tourne sur un hôte géré par le Navin Manager et un serveur en ligne est interdit : indiquez l'adresse HTTP interne. Renseignez URL du point d'accès. Résultat attendu : aucun message rouge. En cas d'échec : l'URL doit commencer par http:// ou https://.
  3. Remplir les champs. Placez le secret dans OpenBao et saisissez sa référence, par exemple openbao://secret/data/mcp/<nom>#token. Résultat attendu : aucun problème listé. En cas d'échec : un champ secret n'accepte qu'une référence openbao:// ou env://.
  4. Installer. Cliquez sur Installer. Résultat attendu : Serveur MCP installé et le serveur dans Activé dans le projet. En cas d'échec : voir Dépannage.
  5. Restreindre l'accès. Dans Activé dans le projet, utilisez Accès sur le serveur, listez les principaux et cliquez sur Enregistrer l'accès. Résultat attendu : Accès enregistré. En cas d'échec : l'accès au serveur d'une instance MCP est géré par l'instance.

Démarrer une instance MCP isolée​

  1. Vérifier la politique. Le modèle doit être autorisé. Ouvrez Instances MCP et lisez le badge de la carte. Résultat attendu : Autorisé. En cas d'échec : un administrateur du tenant coche le modèle dans Modèles autorisés et clique sur Enregistrer la politique.
  2. Activer. Cliquez sur Activer, remplissez les paramètres, la Référence de secret si elle est demandée et Agents autorisés. Résultat attendu : aucun problème listé. En cas d'échec : un hôte hors de Hôtes autorisés est refusé.
  3. Démarrer. Cliquez sur Activer dans le panneau. Résultat attendu : Instance en préparation, puis le statut Prête. En cas d'échec : ouvrez Journal et lisez la raison de l'échec.
  4. Détruire à la fin. Cliquez sur Détruire puis Confirmer. Résultat attendu : Instance détruite, le journal conservé. En cas d'échec : une instance déjà en cours d'arrêt ne peut pas être détruite de nouveau.

Importer les règles d'un dépôt​

  1. Choisir les fichiers. Cliquez sur Dossier et sélectionnez le dépôt. Résultat attendu : une ligne par fichier avec son chemin relatif. En cas d'échec : plus de 200 fichiers affichent Au plus 200 fichiers par import.
  2. Vérifier les chemins. Le chemin détermine la lecture d'un fichier (par exemple .cursor/rules/style.mdc). Corrigez les chemins si besoin. Résultat attendu : des chemins corrects. En cas d'échec : cliquez sur Vider et recommencez.
  3. Importer. Cliquez sur Importer. Résultat attendu : Importé : n règle(s) et les listes Importées et Ignorés. En cas d'échec : un fichier ignoré n'est pas un fichier de règles, est vide ou trop volumineux.
  4. Lire le prompt. Cliquez sur Actualiser dans Aperçu du prompt. Résultat attendu : la section que reçoit chaque exécution du projet. En cas d'échec : Prompt vide signifie qu'aucune règle n'est enregistrée.
danger

Ne saisissez jamais la valeur d'un secret dans un champ de préréglage, de modèle ou de canal. Seules les références openbao:// ou env:// sont acceptées ; le serveur refuse toute autre valeur.

Dépannage​

SymptômeCauseCorrection
Choisissez d'abord un projetAucun projet n'est choisi.Sélectionnez-en un dans Projet.
Erreur navin_library_unavailable (503)La bibliothèque livrée ne peut pas être lue.Vérifiez l'installation du Control Plane.
Erreur navin_skill_name_taken (409)Une skill du même nom existe déjà dans le tenant.Retirez ou renommez la skill existante.
Erreur mcp_preset_not_installable (409)Le préréglage ne peut pas être installé.Choisissez un autre préréglage.
Erreur mcp_preset_needs_endpoint (409)Un préréglage stdio demande le point d'accès HTTP qui l'expose.Renseignez URL du point d'accès (obligatoire).
Erreur mcp_preset_secret_ref_required ou channel_secret_ref_required (422)Un champ secret contient une valeur au lieu d'une référence.Saisissez une référence openbao:// ou env://.
Erreur channel_field_missing (422)Une exigence du canal n'est pas remplie.Remplissez une alternative de chaque exigence orange.
Erreur mcp_instance_access_managed (409) sur Enregistrer l'accèsLe serveur appartient à une instance MCP.Renseignez plutôt Agents autorisés sur l'instance.
Erreur mcp_project_forbidden (403) à la synchronisationLe projet demandé diffère du projet de la requête.Lancez la synchronisation depuis le bon projet.
Le Runtime MCP n'est pas activé sur la plateforme ou mcp_runtime_disabled (409)Le runtime est désactivé.L'opérateur renseigne EAI_MCP_RUNTIME_ENABLED et installe le ToolHive Operator.
Erreur mcp_template_not_allowed ou mcp_host_not_allowed (403)La politique du projet interdit le modèle ou l'hôte.Demandez à l'administrateur du tenant de modifier la politique.
Erreur mcp_instance_quota (409)Le quota d'instances par utilisateur ou par projet est atteint.Détruisez une instance ou augmentez le quota dans la politique.
Erreur mcp_instance_exists (409)Une instance de ce nom existe déjà.Choisissez un autre Nom de l'instance.
Erreur mcp_credential_required (422)Le modèle demande une référence de secret personnelle.Renseignez Référence de secret.
Erreur mcp_instance_busy (409)Une opération est encore en cours sur l'instance.Attendez la fin de l'opération, puis recommencez.
Erreur rule_scope_required (422)Une règle conditionnelle n'a ni globs ni description.Ajoutez des globs ou une description.
Erreur forbidden (403) avec required_rolesUn rôle manque.Demandez le rôle developer ou application_owner.

Pages liées​