contracts.ts
Source : sdks/typescript/packages/sdk/src/contracts.ts. Retour à l'index de la référence du SDK TypeScript.
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.
Interface ContractIssue
Erreur de validation d'un document par rapport à un contrat.
Champs :
| Nom | Type | Requis | Description |
|---|---|---|---|
path | string | oui | Pointeur JSON de la valeur invalide (/ pour la racine). |
message | string | oui | Message d'état (2000 caractères au plus). |
keyword | string | oui | Mot-clé JSON Schema en échec. |
Interface ContractValidationResult
Résultat de la validation d'un contrat : validité et erreurs.
Champs :
| Nom | Type | Requis | Description |
|---|---|---|---|
valid | boolean | oui | Indique si le document est valide. |
errors | ContractIssue[] | oui | Erreurs de validation (ContractIssue), vide si le document est valide. |
Interface ContractInfo
Entrée de contracts/index.json : nom, titre, type de manifeste, type, fichier de schéma et exemple.
Champs :
| Nom | Type | Requis | Description |
|---|---|---|---|
name | string | oui | Nom du contrat (ContractName). |
title | string | oui | Titre du contrat. |
kind | string | null | oui | kind de manifeste correspondant au contrat, ou null pour un contrat qui n'est pas un manifeste. |
type | string | oui | Type du contrat, tel que listé dans contracts/index.json. |
file | string | oui | Fichier de schéma du contrat (par exemple v1/agent-manifest.schema.json). |
example | string | oui | Document d'exemple du contrat, tel que listé dans contracts/index.json. |
Alias de type CONTRACTS
Entrées de contracts/index.json embarquées dans le SDK, un ContractInfo par contrat.
Définition : readonly ContractInfo[].
Fonctions
getContractSchema
getContractSchema(name: ContractName | string): Record<string, unknown> | undefined
Renvoie le schéma JSON embarqué d'un contrat.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | ContractName | string | oui | Nom du contrat (ContractName), comme agent-manifest. |
Retour : Record<string, unknown> \| undefined. Schéma JSON du contrat, ou undefined pour un nom inconnu.
validateContract
validateContract(name: ContractName | string, doc: unknown, locale: Locale = "en"): ContractValidationResult
Valide un document par rapport à un contrat v1 à l'aide des schémas embarqués dans le SDK.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | ContractName | string | oui | Nom du contrat (ContractName), comme agent-manifest. | |
doc | unknown | oui | Document à valider. | |
locale | Locale | "en" | non | Langue des messages d'erreur (en par défaut). |
Retour : ContractValidationResult. Validité et erreurs (ContractValidationResult) ; lève ContractValidationError pour un contrat inconnu.
Erreurs levées : ContractValidationError.
assertContract
assertContract(name: N, doc: unknown, locale: Locale = "en"): ContractTypes[N]
Valide et lève ContractValidationError lorsque le document est invalide.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | N | oui | Nom du contrat (ContractName), comme agent-manifest. | |
doc | unknown | oui | Document à valider. | |
locale | Locale | "en" | non | Langue des messages d'erreur (en par défaut). |
Retour : ContractTypes[N]. Un ContractTypes : associe chaque nom de contrat de contracts/index.json à son modèle TypeScript.
Erreurs levées : ContractValidationError.
contractForKind
contractForKind(kind: ManifestKind | string): ContractName | undefined
Trouve le contrat de manifeste correspondant à un kind (Agent, Model, Tool, Skill, Plugin, Connector, Channel).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
kind | ManifestKind | string | oui | kind du manifeste, comme Agent. |
Retour : ContractName \| undefined. Nom du contrat correspondant, ou undefined si aucun contrat n'a ce kind.
validateManifest
validateManifest(doc: Manifest | Record<string, unknown>, locale: Locale = "en"): ContractValidationResult
Valide un manifeste en détectant son contrat à partir de kind.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
doc | Manifest | Record<string, unknown> | oui | Manifeste à valider. | |
locale | Locale | "en" | non | Langue des messages d'erreur (en par défaut). |
Retour : ContractValidationResult. Validité et erreurs (ContractValidationResult) ; un kind inconnu donne une erreur sur /kind.