Aller au contenu principal

enterprise_ai.skills

Source : sdks/python/src/enterprise_ai/skills/__init__.py. Retour à l'index de la référence du SDK Python.

remarque

Cette page est générée par tools/docs/gen_sdk_reference.py depuis les sources du SDK et les dossiers de textes OpenAPI. Ne la modifiez pas à la main : changez la source et régénérez.

Classe DigestMismatch​

Le contenu de l'artefact ne correspond pas au condensat attendu.

EaiError

Classe SkillsClient​

Skills. Skill Registry et Skill Loader. Un skill est un ensemble d'instructions signé et versionné (en ligne, ou artefact Git ou OCI) avec les permissions dont il a besoin ; les agents chargent les skills accordés dans leur manifeste.

Resource

SkillsClient.create​

create(manifest: dict[str, Any]) -> Any

Enregistrer un skill. Applique un manifeste Skill : crée le skill ou le remplace (un skill remplacé revient à draft, un skill bloqué reste blocked). L'empreinte et la signature sont vérifiées aussitôt : le skill passe à approved si elles sont valides. Un artefact Git ou OCI demande artifact.digest (422 invalid_manifest). apply_status vaut created ou updated. Demande tenant_admin, developer ou application_owner ; l'appelant devient propriétaire ReBAC. Audité sous skill.apply.

Route : /v1/skills (POST).

NomTypeDéfautRequisDescription
manifestdict[str, Any]ouiManifeste de la nouvelle skill, envoyé comme corps de la requête.

Retour : Any. Réponse JSON décodée de l'opération « Enregistrer un skill ».

Erreurs levées : les erreurs typées du transport (Erreurs).

SkillsClient.get​

get(name: str) -> Any

Lire un skill. Renvoie le skill avec son manifeste, son contenu, son empreinte, sa signature et sa vérification. Demande la relation ReBAC viewer. 404 skill_not_found.

Route : /v1/skills/{name} (GET).

NomTypeDéfautRequisDescription
namestrouiNom du skill.

Retour : Any. Réponse JSON décodée de l'opération « Lire un skill ».

Erreurs levées : les erreurs typées du transport (Erreurs).

SkillsClient.list​

list(**page: Any) -> Any

Lister les skills. Skills du tenant dans l'ordre des noms, avec version, propriétaire, empreinte, résultat de vérification et statut. Une seule page.

Route : /v1/skills (GET).

NomTypeDéfautRequisDescription
**pageAnynonOptions de pagination transmises à la liste : limit (nombre maximal d'éléments par page) et cursor (le next_cursor de la page précédente). Itérer sur la page renvoyée suit tous les curseurs.

Retour : Any. Réponse JSON décodée de l'opération « Lister les skills ».

Erreurs levées : les erreurs typées du transport (Erreurs).

SkillsClient.load​

load(name: str, artifact: str | Path | bytes | None = None) -> Any

Charger un skill pour un agent. Skill Loader : renvoie ce dont un runtime a besoin pour utiliser le skill (instructions d'un skill en ligne, artefact, point d'entrée, permissions, dépendances, signataire). Demande la relation ReBAC can_invoke. Refus, chacun audité comme skill.load refusé : - 403 skill_blocked : le skill est blocked ou deprecated ; - 409 skill_digest_mismatch : le contenu ne correspond plus à son empreinte ; - 403 skill_unsigned : la signature n'est pas valide ; - 403 skill_not_granted : avec agent, le skill n'est pas listé dans le manifeste de l'agent ; - 403 skill_permission_denied : le skill demande des scopes que l'agent n'a pas, ou son plafond de classification est inférieur à celui de l'agent.

Route : /v1/skills/{name}/load (GET).

NomTypeDéfautRequisDescription
namestrouiNom du skill.
artifactstr | Path | bytes | NoneNonenonCopie locale de la skill (octets, fichier ou dossier) dont le condensat doit correspondre à celui renvoyé par le chargeur (client synchrone).

Retour : Any. Réponse JSON décodée de l'opération « Charger un skill pour un agent ».

Erreurs levées : DigestMismatch, les erreurs typées du transport (Erreurs).

SkillsClient.set_status​

set_status(name: str, status: str, reason: str | None = None) -> Any

Changer le statut d'un skill. approved passe par une promotion : une approbation est ouverte pour tenant_admin ou security_officer et la réponse est 202 avec approval_id et status: pending_approval. Les autres statuts (draft, restricted, deprecated, blocked) s'appliquent aussitôt (200). Demande tenant_admin ou security_officer et la relation ReBAC editor. Audité sous skill.status.

Route : /v1/skills/{name}/status (POST).

NomTypeDéfautRequisDescription
namestrouiNom du skill.
statusstrouidraft, approved (via une approbation), restricted, deprecated ou blocked.
reasonstr | NoneNonenonRaison du changement de statut (2000 caractères au plus).

Retour : Any. Réponse JSON décodée de l'opération « Changer le statut d'un skill ».

Erreurs levées : les erreurs typées du transport (Erreurs).

SkillsClient.verify​

verify(name: str) -> Any

Vérifier la signature d'un skill. Revérifie l'empreinte du contenu et la signature avec les clés de confiance et enregistre le résultat : verified, method, signer, reason. Un skill vérifié passe à approved, sinon à draft (un skill bloqué reste blocked). Demande tenant_admin, developer, application_owner ou security_officer et la relation ReBAC editor. Audité sous skill.verify.

Route : /v1/skills/{name}/verify (POST).

NomTypeDéfautRequisDescription
namestrouiNom du skill.

Retour : Any. Réponse JSON décodée de l'opération « Vérifier la signature d'un skill ».

Erreurs levées : les erreurs typées du transport (Erreurs).

Fonctions​

compute_digest​

compute_digest(path: str | Path | bytes) -> str

sha256:<hex> d'octets, d'un fichier ou d'une arborescence de dossiers.

NomTypeDéfautRequisDescription
pathstr | Path | bytesouiOctets, fichier ou dossier ; dans un dossier, .git, __pycache__, .venv, node_modules et .DS_Store sont ignorés.

Retour : str. Texte sha256:<hex> ; un dossier est haché sur ses chemins relatifs triés et leurs contenus.

verify_digest​

verify_digest(content: str | Path | bytes, expected: str) -> str

Lève :class:DigestMismatch sauf si le condensat de content vaut expected.

NomTypeDéfautRequisDescription
contentstr | Path | bytesouiOctets, fichier ou dossier, hachés avec compute_digest.
expectedstrouiCondensat attendu sha256:<hex>, comparé en temps constant.

Retour : str. Le condensat calculé, égal à expected.

Erreurs levées : DigestMismatch.