AgentSight - Observabilité eBPF pour Agents IA
AgentSight applique eBPF à un problème que le monde des outils IA a largement ignoré : savoir ce qu’un agent autonome a réellement fait à votre système. Le suivi au niveau application montre les invites, les appels d’outils et les comptes de jetons, mais il ne voit que ce que le cadre de l’agent a choisi de signaler. AgentSight observe plutôt au niveau du noyau — appels système, accès aux fichiers, exécution de processus, connexions réseau — avec zéro instrumentation de l’agent lui-même. Quand un agent de codage s’exécute, vous voyez les effets système réels, pas la version narrée.
Exigences
- Noyau Linux avec support eBPF/BTF (5.x+)
- Privilèges root ou
CAP_BPF
- Le processus d’agent s’exécutant sur le même hôte
Installation
| Méthode | Commande |
|---|
| De source | git clone https://github.com/agent-sight/agentsight && make |
| Binaire | télécharger depuis GitHub Releases |
| Docker | exécuter en mode privilégié avec /sys/kernel monté |
| Vérifier | agentsight --version |
Utilisation de Base
| Commande | Description |
|---|
sudo agentsight trace --pid <pid> | Tracer un processus d’agent en cours d’exécution |
sudo agentsight trace -- claude-code | Lancer et tracer une commande |
sudo agentsight trace --comm python | Tracer par nom de processus |
--output trace.json | Écrire les événements structurés |
--follow-children | Inclure les sous-processus générés |
Ce qu’il Capture
| Catégorie | Événements |
|---|
| Processus | exec, fork, exit — ce que l’agent a exécuté |
| Système de fichiers | open, read, write, unlink — ce qu’il a touché |
| Réseau | connect, send, recv — où il s’est connecté |
| Credentials | setuid, changements de capacité |
| Arborescence de sous-processus | Commandes générées par l’agent |
Parce que le suivi se produit dans le noyau, un agent ne peut pas omettre ou faussement signaler ces événements — une différence significative du suivi au niveau du cadre.
Pourquoi au Niveau du Noyau pour les Agents
| Question | Suivi au niveau application | AgentSight |
|---|
| Quels fichiers a-t-il modifiés ? | Uniquement si l’outil l’a signalé | Chaque écriture, toujours |
| A-t-il appelé un hôte inattendu ? | Uniquement les appels instrumentés | Toutes les connexions |
| Qu’a réellement exécuté l’outil shell ? | La chaîne de commande | L’arborescence complète du processus |
| A-t-il dépassé sa portée prévue ? | Difficile à prouver | Observable |
Filtrage
| Drapeau | Effet |
|---|
--filter-path /home/user/project | Uniquement les événements sous un chemin |
--exclude-path /tmp | Ignorer les chemins bruyants |
--net-only | Uniquement les événements réseau |
--exec-only | Uniquement les exécutions de processus |
--min-duration 10ms | Supprimer les événements triviaux |
# Qu'a fait l'agent en dehors de son répertoire de travail ?
sudo agentsight trace --pid $(pgrep -n agent) --exclude-path /workspace
Corrélation avec la Sémantique de l’Agent
| Approche | Comment |
|---|
| Horodatages | Aligner les événements du noyau avec les portées de suivi de l’agent |
| Marqueurs de session | Émettre un marqueur au début/fin de la tâche |
| Export | Alimenter JSON dans votre pile d’observabilité |
| OpenTelemetry | Corréler avec les portées au niveau application par fenêtre de temps |
L’appairage d’AgentSight avec le suivi au niveau application (par exemple Arize Phoenix ou Langfuse) donne à la fois l’intention et l’effet.
Cas d’Utilisation de Sécurité
| Utilisation | Détail |
|---|
| Vérification de portée | Prouver qu’un agent est resté dans son sandbox |
| Examen d’incident | Reconstruire exactement ce qu’un agent défaillant a fait |
| Impact d’injection d’invite | Voir quelles actions ont suivi une instruction injectée |
| Preuve de conformité | Enregistrement auditable de l’accès système de l’agent |
AgentSight vs Outils Associés
| Aspect | AgentSight | Tracee/Falco | Langfuse/Phoenix |
|---|
| Couche | Noyau (eBPF) | Noyau (eBPF) | Application |
| Focus | Comportement de l’agent IA | Sécurité d’exécution générale | Invites/jetons/portées |
| Instrumentation | Aucune requise | Aucune requise | SDK requise |
| Meilleur pour | Ce qu’un agent a réellement fait | Détection des menaces d’hôte | Qualité du raisonnement de l’agent |
Construit sur la même fondation eBPF que Tracee et Falco, mais axé sur le comportement de l’agent.
Ressources