Pattern : extension provider en api_out

Utilisez ce pattern lorsqu’Ormuz appelle l’API d’un service externe. Le partenaire fournit alors le contrat provider et le marchand configure les credentials nécessaires à Ormuz.

Le pattern

Processus / Agent
Contribution Ormuz
Channel api_out
API du provider

Ormuz appelle le contrat du provider à travers une contribution explicite et un channel api_out déclaré.

Ne déclarez que les capacités nécessaires. Un channel api_out ne donne pas automatiquement au plugin le droit de lire ou modifier des objets plateforme.

Déclarer la configuration

Les secrets fournis par le marchand vivent dans le contrat runtime configSchema et doivent être typés secret. Les textes d’aide sont localisés séparément ; ne mettez pas de description ou d’example directement sur le champ. Le manifeste référence ensuite ces champs depuis le channel qui les consomme.

JavaScript
configSchema: {
  fields: [
    { key: 'api_key', type: 'secret', required: true, channel: 'api_out' }
  ]
}

Déclarer api_out

Dans extension.yaml, ajoutez le channel sous spec.channels :

YAML
spec:
  channels:
    - kind: api_out
      auth:
        scheme: api_key
        secret_fields:
          - api_key

Le channel est déclaratif : il décrit la frontière d’échange et référence les champs de configuration nécessaires. Les appels au provider restent du comportement runtime et ne sont jamais sérialisés dans le manifeste.

Ajouter une contribution

Commencez par le besoin métier, puis choisissez la surface appropriée : node pour une composition explicite dans un processus, Tool pour une tâche Agent sélectionnable. N’ajoutez pas les deux par symétrie. Consultez Concevoir un node et Concevoir un Agent Tool.