Le composant de discussion IA
ai-chat est le seul type de sa catégorie. Il dessine un panneau de discussion raccordé à un agent déclaré par l'application, et accepte le sac de props partagé ainsi que les modules visibility et responsive.
| Propriété | Description |
|---|---|
agent |
Nom d'un agent de app.agents[]. |
placeholder |
Texte indicatif du champ de saisie. |
chatHeight |
Hauteur du conteneur, en pixels. |
showHistory |
Charge la conversation précédente à l'arrivée. |
allowAttachments |
Autorise un lecteur à joindre un fichier à un message. |
agent nomme une entrée de app.agents[] ; ce que l'agent sait faire — son modèle, ses outils, sa mémoire, ses règles d'approbation — se configure là-bas, pas ici.
- type: ai-chat
agent: support-assistant
chatHeight: 480
placeholder: 'Ask a question…'
allowAttachments: trueIl se dégrade honnêtement là où l'IA ne peut pas tourner
Une application peut déclarer un agent sur un déploiement où aucun fournisseur d'IA n'est configuré. Le rendu ne dessine alors pas un composeur cassé : il retire l'îlot et affiche une ligne role="status" indiquant que l'assistant n'est pas disponible ici.
C'est un composant qui dit la vérité sur lui-même, et c'est correct jusque-là — mais il ne peut pas céder la place à un composant différent. L'alternative à un composeur n'est pas un composeur désactivé ; c'est le plus souvent un déclencheur de recherche, c'est-à-dire un autre contrôle, avec un autre libellé, un autre raccourci clavier et un autre point d'entrée.
Le module visibility est ce qui exprime cela. runtime: ai n'affiche le composant que là où l'IA est à la fois déclarée par l'application et capable de tourner sur ce déploiement, et unlessRuntime: ai affiche son alternative partout ailleurs :
- type: ai-chat
agent: assistant
visibility: { runtime: ai }
- type: command-palette
visibility: { unlessRuntime: ai }Nommer la même capacité dans les deux moitiés sur un seul composant est refusé au décodage de la configuration : soit l'IA tourne ici, soit elle ne tourne pas, si bien que le composant ne s'afficherait sur aucune instance — l'inverse de ce que son auteur a écrit, et invisible à l'exécution.
Pages connexes
- Présentation des agents — ce que l'agent nommé par
agentsait faire. - Modules de composants partagés —
visibility,responsiveet les autres modules transverses.
Dernière mise à jour 23 septembre 2026
Cette documentation a été rédigée avec de l'IA : des erreurs ou du contenu obsolète sont donc possibles. Sovrium est en bêta. Les contributions et corrections sont les bienvenues.