Sûr par construction, pas par consigne.
Un agent qui peut lire des documents, appeler des outils et répondre à des inconnus est une surface d'attaque d'un genre nouveau. Dire au modèle d'être prudent n'est pas un contrôle. Voici les contrôles.
- 0
- Donnée envoyée à l'éditeur
- 1
- Bac à sable par exécution
- Air-gap
- Déploiement supporté
- Append-only
- Journal d'audit
Ce qu'un agent peut atteindre, et ce qu'il ne peut pas.
Un bac à sable par exécution
Les serveurs embarqués s'exécutent dans un espace de travail créé pour une seule exécution et détruit avec elle, sous une identité système dédiée. Il n'existe aucun chemin d'une exécution vers une autre, et le shell n'a aucun réseau.
Chaque appel sortant est gardé
Tout ce qui quitte la plateforme passe une garde anti-SSRF qui refuse les adresses résolvant vers des réseaux internes. Le navigateur du bac à sable importe cette même garde plutôt qu'une copie.
Le contenu non fiable est encadré
Les pièces jointes, les extraits retrouvés, les sorties d'outils et les descriptions de serveurs MCP sont encadrés comme des données avant d'atteindre le modèle. C'est la défense contre l'injection indirecte de prompt, et elle a une seule implémentation pour toute la plateforme.
Les secrets sont en écriture seule
Les identifiants sont scellés sous une clé d'enveloppe et ne sont renvoyés par aucun point d'accès. Le serveur d'API ne les déchiffre jamais ; seul le worker le fait, uniquement dans la pile d'un appel sortant, et chaque accès est audité.
Le cloisonnement est structurel
Chaque requête sur des données de locataire passe par un client qui exige une identité d'organisation. Les lectures inter-organisations ne sont pas une permission que l'on peut mal configurer : le chemin de code n'existe pas.
Rien de sensible dans les journaux
Aucun secret ni contenu de conversation dans les journaux de diagnostic, et un fichier média n'entre jamais dans le journal d'exécution sous forme d'octets, seulement de pointeur. La même règle vaut pour les traces, où la capture de contenu est désactivée tant qu'un opérateur ne l'active pas.
Des sessions que l'on ne peut pas voler dans le stockage
Double expiration : huit heures d'inactivité, trente jours en absolu Rotation à tout changement de privilège, et révocation immédiate Hachage des mots de passe en Argon2id avec verrouillage progressif, et double facteur avec codes de secours Authentification unique en OIDC et SAML, par organisation, avec domaines vérifiés (Enterprise)
Les invariants sont tenus par la compilation, pas par la relecture.
Ce qu'une revue de sécurité demande d'habitude.
Voyez-vous nos données ?
Où vivent nos identifiants ?
Qu'est-ce qui empêche un agent de lire les documents d'une autre équipe ?
Que se passe-t-il si un document essaie de donner des instructions à l'agent ?
Peut-on obtenir une piste d'audit ?
Avez-vous une certification ?
Envoyez-nous votre questionnaire de sécurité.
Nous répondons depuis l'architecture plutôt que depuis une brochure, et nous disons ce qui n'est pas couvert.