Les développements se succèdent à un rythme impressionnant dans l’IA.
Découvrez SAM (Sovereign Agent Mesh) : un réseau P2P « zéro configuration » et « zéro confiance » destiné aux agents d’IA
google/samis ne fait en aucun cas partie de Segment. SAM signifie ici « Sovereign Agent Mesh », un projet de réseau sous licence Apache 2.0 dédié aux agents IA autonomes. Le problème qu’il vise à résoudre est bien concret. Les agents fonctionnent désormais sur des serveurs cloud, dans des centres de éléments sur site, sur des ordinateurs portables, des Raspberry Pi et des appareils Android. Leur permettre de partager des outils implique généralement d’exposer des scripts internes, des points de terminaison LLM ou des API privées sur l’Internet public. L’alternative proposée par SAM est un réseau superposé P2P « zéro configuration » et « zéro confiance » — qui s’apparente davantage à un VPN privé, cependant dont la portée se limite au partage d’outils de nœud à nœud via le protocole Model Context Protocol. Les nœuds se détectent automatiquement, contournent le NAT et authentifient chaque appel de manière cryptographique.
En complément, remarque : le dépôt comporte une clause de non-responsabilité explicite : il ne s’agit pas d’un produit Google officiellement pris en charge.
D’une part, la conception technique est axée sur la production, cependant le réseau public est toujours qualifié de « réseau de test bêta ».
Un nœud s’affilie à l’aide de la commande `withsam-node join`, puis exécute la commande `withsam-node run`. libp2p utilise les ports 5001/UDP et 5002/TCP ; le port par défaut de l’API MCP locale est 8080.
C’est là que ça devient intéressant. Le plan de contrôle vérifie un JWT OIDC. Il traduit ensuite les revendications en faits Datalog et les intègre dans aBiscuittoken.subbecomesuser(…), chaque groupe devient group(…), et l’ID du pair est associé à asclient_peer_id(…).
Conséquence : les nœuds procèdent à l’authentification hors ligne. Un nœud vérifie la validité du jeton présenté en fonction de ses propres règles locales, sans communiquer avec le serveur central.
La politique d’accès est strictement définie selon le principe « refus par défaut ». Tout accès nécessite une autorisation explicite, telle que `granted_service_exact(…)`. Il n’existe aucune exception intégrée : même l’accès au catalogue de découverte `system://sam.catalog` doit faire l’objet d’une autorisation. Les services utilisent une convention de nommage stricte de type « type://nom » avec prise en charge des caractères génériques (mcp://*, mcp://build-runner.*).
Chaque requête suit un pipeline en deux étapes. L’étape 1 vérifie que la connexion n’est pas bloquée par les caches d’interdiction et de révocation. L’étape 2 exécute exactement deux passages de l’autoriseur Biscuit. Le premier porte sur le jeton d’identité du nœud lui-même pour émettre des `target_factassertions`. Le second porte sur le jeton de l’appelant. Une vérification de base empêche la relecture en exigeant que l’identifiant du pair de connexion corresponde au jeton.
Les informations principales :
- Un nœud vérifie la validité du jeton présenté en fonction de ses propres règles locales, sans communiquer avec le serveur central.
- Tout accès nécessite une autorisation explicite, telle que `granted_service_exact(…)`.
- Chaque requête suit un pipeline en deux étapes.
Les prochaines semaines permettront d’en mesurer la portée réelle.
À lire également :
- Le nouveau logo d’Instagram est l’incarnation parfaite du travail bâclé de l’IA
- Le robot litière de Whisker, équipé d’une intelligence artificielle, pense que mes chats ont échangé leurs corps
Lire l’article complet sur MarkTechPost : MarkTechPost