Blocs
Primitives de workflow intégrées — la surface principale de tout workflow Scrydon
Les blocs sont les cartes que vous déposez sur le canevas pour construire un workflow. Scrydon en propose deux types :
- Blocs principaux (cette page) — primitives de workflow intégrées, toujours disponibles : Agent, API, Function, Condition, Router, Evaluator, Response, ainsi que les blocs de contrôle du flux Loop et Workflow.
- Blocs d'intégration — blocs fournis par les fournisseurs, issus des intégrations installées. Le produit de chaque intégration contribue un ou plusieurs blocs (par ex. Gmail → « Envoyer un e-mail », Sheets → « Lire une plage »). Voir Fournisseurs pour le catalogue et Intégrations pour la définition des blocs.
Blocs principaux
Traitement
- Agent — appeler un LLM. Les modèles sont résolus via le registre d'intégrations — jamais codés en dur.
- Function — exécuter du JavaScript / TypeScript dans un bac à sable.
- API — effectuer une requête HTTP vers tout ce qui est accessible depuis le runtime du workflow.
Logique
- Condition — bifurquer sur une expression booléenne.
- Router — laisser un LLM choisir quelle branche en aval emprunter.
- Evaluator — noter / classer du contenu avec un LLM.
Contrôle du flux
- Loop — itérer sur une liste ou jusqu'à ce qu'une condition soit remplie.
- Workflow — invoquer un autre workflow comme sous-workflow.
Sortie
- Response — formater et renvoyer le résultat final.
Create powerful AI agents using any LLM provider with customizable system prompts and tool integrations.
Connect to any external API with support for all standard HTTP methods and customizable request parameters.
Add a condition to the workflow to branch the execution path based on a boolean expression.
Execute custom JavaScript or TypeScript code within your workflow to transform data or implement complex logic.
Intelligently direct workflow execution to different paths based on input analysis.
Assess content using customizable evaluation metrics and scoring criteria across multiple dimensions.
Send a response back to the caller with customizable data, status, and headers.
Origine des blocs d'intégration
Les blocs d'intégration ne sont jamais créés manuellement dans le YAML du workflow. Ils sont fournis par les produits des fournisseurs et résolus via le registre d'intégrations de la plateforme :
Fournisseur (ex. google)
└── Produit (ex. gmail)
├── Bloc ← carte « Gmail » sur le canevas
├── Outils ← send-mail, list-messages, get-message, …
└── Capacités ← (LLM/STT/TTS/Embedding/etc., le cas échéant)Ainsi, un bloc « Envoyer un e-mail Gmail » n'est pas un concept de premier niveau distinct — c'est la surface workflow de google → gmail → bloc, avec google → gmail → tools.send-mail qui effectue le travail réel. Désactiver l'intégration (politique organisationnelle, identifiant manquant) supprime le bloc du canevas sans modifier le code du workflow.
Les blocs Agent, Router et Evaluator résolvent également leur modèle via le registre d'intégrations — ils choisissent le fournisseur compatible LLM (OpenAI, Anthropic, Mistral, Bedrock, vLLM, …) installé et sélectionné par la politique organisationnelle. Il n'y a pas de constante model: "gpt-5.4" dans le bloc ; le bloc déclare une capacité et le registre la résout.
Les opérations LLM Chat et Agent du bloc Core utilisent le même sélecteur de modèle. Conservez Valeur par défaut de l'organisation pour suivre la politique de l'organisation, ou choisissez un autre modèle activé pour cette étape.
Fonctionnement d'un bloc
Trouver des workflows et des blocs
Le sélecteur de workflow recherche les noms et descriptions et affiche d'abord les workflows récemment modifiés. Créer un workflow et la recherche restent au-dessus des résultats défilants. Les badges de déploiement nomment chaque environnement où une copie du même groupe de promotion est réellement déployée ; une promotion seule ne constitue pas un déploiement. Un statut en cours de chargement ou indisponible ne signifie pas qu'un workflow n'est pas déployé.
Épinglez, réordonnez ou masquez les blocs de la barre d'outils selon vos besoins. Ces préférences sont propres à ce navigateur. L'inventaire existant est considéré comme connu à la première utilisation ; les blocs découverts ensuite affichent Nouveau pendant la version actuelle de la plateforme. Le badge disparaît à la version distincte suivante, et non après un nombre fixe de jours. Aucune version n'est supposée lorsque ses métadonnées sont indisponibles.
Les modèles enregistrés sont conservés pendant le chargement de l'inventaire ou en cas d'échec. Si le modèle sélectionné est absent d'un inventaire actuel chargé avec succès, le sélecteur applique sa valeur par défaut et vous en informe. Valeur par défaut de l'organisation continue de suivre la politique de l'organisation. Pour Create Process Instance, sélectionnez une extension installée avant son modèle de processus ; une option unique est sélectionnée automatiquement, mais plusieurs options exigent un choix.
Chaque bloc comporte trois couches :
Entrées — données provenant des blocs connectés en amont Configuration — champs remplis par l'auteur (sous-blocs : sélecteur de modèle, invite système, en-têtes, …) Sorties — données typées produites par le bloc, disponibles pour les blocs en aval via les connexions
Recevoir l'entrée — depuis les blocs en amont ou le déclencheur du workflow
Traiter — appliquer la configuration et exécuter la logique du bloc. Pour les blocs d'intégration, cela envoie la commande à fournisseur → produit → tool.execute() dans le bac à sable.
Émettre la sortie — JSON typé que les blocs en aval peuvent référencer
Connecter les blocs
Lorsque vous faites glisser un bloc depuis la barre d’outils, un contour en pointillés indique sa position sur le canevas, y compris les ajustements pour le garder dans un conteneur. Relâchez pour le placer ou appuyez sur Échap pour annuler le glissement.
Sur les nœuds compacts, les sorties se trouvent à droite : la sortie normale près du haut et la sortie d’erreur rouge près du bas. Faites glisser un port, ou cliquez sur une sortie puis sur l’entrée de destination. Les blocs Condition conservent leurs sorties de branches dans des lignes distinctes au-dessus de la sortie d’erreur.
Un clic sur une sortie affiche une ligne d’aperçu jusqu’au choix d’une entrée. Appuyez sur Échap ou cliquez en dehors des ports pour annuler. La disposition automatique conserve les chaînes ordinaires sur une même ligne au lieu de décaler chaque nœud selon la position de son port de sortie. Les sorties de branches conservent leur ordre vertical, les chaînes en aval suivent les lignes finales des branches et les jonctions équilibrent leurs connexions entrantes. Relancer la disposition automatique conserve les mêmes positions lorsque le graphe et les dimensions des nœuds restent inchangés.
L’indicateur dans l’en-tête d’un bloc compte ses connexions directes, et non tous les blocs en amont. Survolez-le ou placez-y le focus au clavier pour afficher séparément les connexions entrantes et sortantes. Plusieurs lignes vers un même bloc comptent chacune comme une connexion.
Vous connectez les blocs en faisant glisser d'un port de sortie vers un port d'entrée. Une sortie peut se ramifier vers plusieurs entrées ; certains blocs (Condition, Router) ont plusieurs sorties de branches. Référence complète : Connexions.
Schémas courants
Séquentiel
Déclencheur → Agent → Function → ResponseBranchement conditionnel
Déclencheur → Router → Agent A (questions)
→ Agent B (commandes)Contrôle qualité
Agent → Evaluator → Condition → Response (si satisfaisant)
→ Agent (relance si non)Aide-mémoire de configuration
| Classe de bloc | Configuration courante |
|---|---|
| Tous | délai d'expiration, branche de gestion des erreurs |
| Utilisant un LLM (Agent, Router, Evaluator) | sélecteur de capacité (modèle LLM résolu via le registre), invite système, température, liste blanche d'outils |
| Logique (Condition, Function) | expression / code, variables d'environnement du bac à sable |
| Réseau (API) | URL, en-têtes, authentification, corps de la requête, analyse de la réponse |
| Contrôle du flux (Loop, Workflow) | source d'itération, ID du workflow cible |
| Blocs d'intégration | fournis par le produit du fournisseur — voir Fournisseurs |