L'éditeur visuel
Un pipeline betool est un graphe de nœuds que vous assemblez dans l'éditeur visuel. Chaque nœud déclare ce qu'il consomme et ce qu'il produit ; l'éditeur refuse les connexions incompatibles avant même que vous lanciez le pipeline.
Anatomie d'un pipeline
[Start]──▶[agent]──▶[condition]──┬──▶[agent]
└──▶[operator HTTP]
- Le nœud Start déclare quel canal d'entrée déclenche le pipeline.
- Chaque nœud aval reçoit le contexte des nœuds amont (slots producers / consumers).
- Une condition crée des branches ; toutes finissent par produire un résultat traçable.
Concepts essentiels
Slot
Un slot est une donnée nommée qui circule entre les nœuds. Exemple : un nœud agent peut produire exchange.intent: "demande_remboursement", et un nœud condition aval consomme ce slot.
Deux familles :
- Producers — ce qu'un nœud produit en sortie (
fixed_key,configurable_key). - Consumers — ce qu'un nœud accepte en entrée (
selector,selector_list).
Contrat
Chaque type de nœud expose un contrat déclaré côté serveur. L'éditeur lit ce contrat pour proposer uniquement les connexions valides.
Configuration
Un nœud a aussi des paramètres statiques (sa configuration) — par exemple, pour un nœud agent : son rôle, sa mission, ses tools, son modèle LLM.
Créer un pipeline
- Concepteur → Pipelines → Nouveau pipeline.
- Le canvas s'ouvre avec un nœud Start vide. Configurez-le pour choisir le canal d'entrée.
- Glissez les nœuds depuis la palette de gauche : agent, operator, condition…
- Reliez les sorties aux entrées. L'éditeur n'autorise que les liens compatibles.
- Cliquez sur un nœud pour ouvrir sa configuration dans le panneau droit.
- Tester — l'onglet Test exécute le pipeline sur un exchange forgé manuellement.
- Publier — crée une nouvelle version. Les exchanges entrants partent sur la version la plus récente ; les exécutions en cours continuent sur leur version.
Versionnage
Chaque modification publiée crée une version. Vous pouvez :
- Comparer deux versions (diff visuel).
- Rejouer un ancien exchange sur une nouvelle version.
- Rollback vers une version précédente.
Validation continue
L'éditeur tourne en permanence un validateur :
- Slots non câblés mais requis → warning visible sur le nœud.
- Cycles non bornés → erreur (impossible de publier).
- Capabilities incompatibles (ex. agent qui appelle un tool voix dans un pipeline email) → warning.
- Champs de configuration manquants → erreur.
Conséquence : un pipeline qui se publie est garanti structurellement valide. Les erreurs à l'exécution viennent uniquement de la logique métier (un appel API tiers qui échoue, un parsing inattendu), pas de la composition.