Outils
Le bloc tools est la liste blanche de capacités d'un agent : les tables auxquelles il peut toucher et les actions qu'il peut entreprendre. C'est ce que vous écrivez de plus lourd de conséquences sur un agent, car c'est le seul endroit où « à quoi sert cet agent » devient vérifiable par la machine.
agents:
- name: support-agent
role: support
systemPrompt: You are a courteous support assistant. Resolve tickets accurately.
tools:
tables: [tickets, customers]
actions: [record.read, record.update, email.send]
| Propriété | Règle |
|---|---|
tools.tables |
Noms de tables accessibles à l'agent. Au moins une ; chacune doit exister dans tables. |
tools.actions |
Types d'actions autorisés. Au moins une, choisie dans la liste ci-dessous. |
Un agent sans bloc tools n'a aucun accès. Sûr par défaut, et discret à ce sujet — un agent qui semble ne rien faire est souvent un agent dont vous avez oublié la liste blanche.
Le double garde-fou
Chaque appel qu'un agent tente traverse deux vérifications indépendantes, et les deux doivent l'autoriser :
- Garde-fou RBAC — le rôle de l'agent permet-il cette opération sur cette table ?
- Garde-fou liste blanche — cette table et cette action figurent-elles dans
tools?
L'ordre importe peu ; la conjonction, si. La propriété que cela vous procure est que tools ne peut que restreindre un rôle, jamais l'élargir. Inscrire record.delete sur un agent dont le rôle ne peut pas supprimer n'accorde rien. Relire un agent revient donc à relire son rôle — la liste blanche ne peut pas introduire clandestinement une capacité que le rôle a refusée.
Les règles au niveau ligne et au niveau champ s'appliquent par-dessus, inchangées. Un agent lié à un rôle qui ne voit que les enregistrements de son équipe ne voit que ceux-là, quoi que dise sa liste blanche.
Listez le plus petit ensemble qui fasse le travail, et redérivez-le quand le prompt change. Une liste blanche dérive comme un jeu de permissions : quelqu'un ajoute record.delete pour un nettoyage ponctuel et cela reste. Puisque le garde-fou est une conjonction, resserrer tools est toujours sans danger à essayer — si l'agent fonctionne encore, l'entrée n'a jamais été nécessaire.
Actions disponibles
Les actions suivent le même vocabulaire type.operator que le moteur d'automatisation : une règle que vous comprenez déjà depuis une automatisation signifie ici la même chose.
| Catégorie | Actions |
|---|---|
| Record | record.read, record.create, record.update, record.delete |
| État | state.get, state.set, state.increment, state.delete, state.list |
| HTTP | http.request |
| IA | ai.generate, ai.classify, ai.extract |
| Code | code.runTypescript |
email.send |
|
| Auth | auth.createUser, auth.assignRole, auth.banUser, auth.unbanUser |
| Fichier | file.upload, file.download, file.delete, file.list, file.getMetadata |
Quelques-unes méritent un commentaire.
État est un magasin clé-valeur persistant entre exécutions. C'est ce qui fait d'un agent autre chose qu'un prompt sans mémoire — un agent planifié peut se souvenir de ce qu'il a traité la fois précédente sans table dédiée.
IA permet à un agent d'enchaîner des sous-tâches : classer un ticket, en extraire des champs, puis rédiger une réponse. Chacune est un nouvel appel de modèle imputé au budget de jetons de l'agent.
Auth est ce que cette liste contient de plus tranchant. auth.createUser, auth.assignRole et auth.banUser signifient qu'un agent peut modifier qui a accès à votre application. Ne les accordez qu'à un agent dont le rôle est lui-même assez privilégié pour le justifier, et placez-les derrière une approbation.
code.runTypescript s'exécute en bac à sable, mais reste la capacité la plus large d'ici — c'est l'action qui fait passer « ce que l'agent peut faire » d'une liste à un langage.
Interne ou externe
tools délimite ce que l'agent peut faire à l'intérieur de Sovrium. Atteindre l'extérieur — la recherche web ou la récupération de documents d'un serveur MCP externe — relève d'une liste blanche distincte, mcp.allowedTools. Voir Mode client.
Les deux sont indépendantes par conception. Un agent interne en lecture seule capable de chercher sur le web est une configuration parfaitement cohérente, et l'inverse aussi.
Pages associées
- Présentation des agents — l'agent auquel ce bloc appartient.
- Permissions et approbation — encadrer les actions listées ici.
- Planification et limites — à quelle fréquence elles peuvent s'exécuter.
- Rôles et RBAC — le premier garde-fou.
- Vue d'ensemble des actions — le même vocabulaire dans les automatisations.
- Mode client — la liste blanche externe.
Dernière mise à jour 27 juillet 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.