Aller au contenu principal

Référence de la bibliothèque Navin

Cette référence liste chaque skill, plugin, commande, agent et pack livré avec la plateforme, et explique comment la plateforme les charge, les valide et les active pour un projet. Les pages sont générées depuis les sources par tools/docs/gen_library_reference.py : ne les modifiez jamais à la main.

Contenu de la bibliothèque​

La plateforme livre la bibliothèque du paquet Navin navin version 2.4.8 (marketplace 1.1.0) dans catalog/navin, et les packs dans packs.

TypeNombreSource
Skills276catalog/navin/skills/<name>/SKILL.md
Plugins17catalog/navin/builtin_plugins/<name>/plugin.json
Commandes28catalog/navin/builtin_commands/<name>.md
Agents14catalog/navin/builtin_agents/<name>.md
Packs12packs/<name>/plugin.yaml, packs/templates/<name>/plugin.yaml

Skills, plugins, commandes, agents et packs​

TypeCe que c'estComment on l'utilise
SkillsUn dossier avec un fichier SKILL.md : un frontmatter (name, description, metadata) et des instructions en Markdown, parfois avec des scripts, des références et des gabarits.L'agent lit la description et charge les instructions quand une demande y correspond.
PluginsUn manifeste plugin.json qui regroupe des commandes, des agents et des skills, avec les étapes de travail qui indiquent lequel utiliser à chaque étape.Activer un plugin active tous ses composants.
CommandesUn fichier Markdown dont le frontmatter donne une description, un argument-hint et les allowed-tools ; le corps est le prompt exécuté par la commande slash.L'utilisateur tape /<name> <arguments>.
AgentsUn fichier Markdown qui définit un sous-agent : name, description avec des exemples de déclenchement, tools, model et color, puis le prompt système.Une commande, une étape de plugin ou l'agent principal démarre le sous-agent.
PacksUn pack de la Marketplace (plugin.yaml, spec.format: pack) : agents, sous-agents, skills, prompts, serveur et outils MCP, connecteur, workflows, politiques, évaluations et tests.Un administrateur l'installe depuis la Marketplace avec des permissions accordées et des approbations.

Chargement de la bibliothèque​

  • catalog/navin est une copie en lecture seule écrite par python tools/navin_library/sync.py ; python tools/navin_library/sync.py --check signale une copie qui ne correspond plus à la source.
  • catalog/navin/index.json liste chaque skill, plugin, commande et agent avec l'empreinte sha256 de ses fichiers. Le Control Plane cherche les éléments par leur nom dans cet index, jamais par un chemin venu d'une requête.
  • GET /v1/navin-library donne la version et les nombres, GET /v1/navin-library/{kind} liste un type (skills, plugins, commands, agents, mcp-presets, channels ; q cherche dans le nom et la description, category filtre) et GET /v1/navin-library/{kind}/{name} donne le contenu d'un élément.

Validation d'un skill​

Un skill activé est enregistré dans le Skill Registry du tenant avec la version de la bibliothèque, le signataire navin-library et le skill_md_digest de son SKILL.md. Le Skill Loader le sert comme tout skill signé : la vérification compare l'empreinte avec index.json et refuse le skill sinon.

RaisonSignification
untrusted_signerLe signataire du skill enregistré n'est pas navin-library.
not_in_libraryAucun skill de ce nom dans index.json.
digest_mismatchL'empreinte du SKILL.md diffère de celle de index.json.

Les packs suivent leur propre chaîne : enterprise-ai plugin validate, build, sign et publish, puis le contrôle préalable et l'installation de la Marketplace, voir le guide de développement de packs.

Activer un élément dans un projet​

Tout se passe par projet du tenant : un autre projet ne voit aucune de ses activations. POST /v1/projects/{project_id}/navin-library/activations active un élément ; il faut le rôle éditeur sur le projet.

{"kind": "plugin", "name": "hookify"}
ChampTypeObligatoireDescription
kindchaîneOuiskill, plugin, command ou agent.
namechaîne, de 1 à 128 caractèresOuiNom de l'élément dans la bibliothèque.

Un plugin active avec lui ses skills, ses commandes et ses agents ; DELETE /v1/projects/{project_id}/navin-library/activations/{activation_id} retire le plugin et tout ce qu'il a activé. Quand plus aucun projet actif du tenant n'utilise un skill de la bibliothèque, le skill est marqué obsolète et le Skill Loader le refuse.

from enterprise_ai import EnterpriseAI

client = EnterpriseAI("<control-plane-url>", api_key="<token>")
client.navin_library.activate("alpha", "plugin", "hookify")
print(client.navin_library.project("alpha")["counts"])

<token> : clé d'API d'un utilisateur qui a le rôle éditeur sur le projet alpha.

ErreurHTTPCause
navin_library_kind_not_activable422Le type n'est pas skill, plugin, command ou agent.
navin_library_item_not_found404Aucun élément de ce nom dans la bibliothèque.
navin_skill_name_taken409Un skill du même nom, qui ne vient pas de la bibliothèque, existe déjà dans le tenant.
navin_library_activation_not_found404Aucune activation de cet identifiant dans le projet.
project_not_found404Aucun projet de cet identifiant ou de ce slug dans le tenant.

Régénérer cette référence​

python3 tools/docs/gen_library_reference.py
python3 tools/docs/gen_library_reference.py --check
python3 tools/docs/gen_library_reference.py --missing

--check sort avec le code 1 et liste les pages périmées, ou les clés françaises absentes de docs/library/_i18n/fr.yaml. --missing affiche les clés absentes avec leur texte anglais.

Voir aussi​