
Sandboxing approprié pour le codage agentique et la navigation web
Calcul sécurisé et éphémère dans des VM Linux jetables sur macOS.
Ce dépôt contient deux applications sœurs, toutes deux construites sur Virtualization.framework d'Apple :
Isolation, garder les secrets hors de l'agent, encadrer leur usage, analyser la chaîne d'approvisionnement, détecter l'injection de prompt : la plupart des outils n'en choisissent qu'un. Bromure fait les cinq à une seule frontière, puis ajoute ce qu'un courtier de secrets ne pourrait jamais offrir : un panel de modèles, l'inférence locale et un accès depuis n'importe où. Voici le même modèle de menace appliqué aux outils vers lesquels les gens se tournent, et où chacun s'arrête.
Une matrice de fonctionnalités plus détaillée est disponible sur bromure.io/en/feature-matrix.
| Protection | Dev Container VS Code | nono sandbox noyau | agent-vault octokraft | Agent Vault Infisical | Docker Sandboxes microVM | Capsem VM air-gapped | Bromure Agentic Coding |
|---|---|---|---|---|---|---|---|
| Sécurité | |||||||
| Frontière d'isolation Où s'arrête le rayon d'impact | 🟡 Même conteneur, noyau partagé | 🟡 Listes d'autorisation du noyau, pas de noyau propre | ❌ L'agent s'exécute sur place | ❌ Proxy uniquement ; agent non isolé | ✅ microVM, noyau propre | ✅ VM matérielle, noyau propre | ✅ VM matérielle, noyau propre |
| Garder les secrets hors de l'agent Peut-il un jour lire l'identifiant réel ? | ❌ Transmet l'agent SSH + les identifiants git | 🟡 Bloque les fichiers de clés ; proxy pour certains | ✅ Injecté par pipe ; aucun chemin de lecture | ✅ Le proxy attache sur le réseau | ✅ Le proxy hôte injecte les en-têtes | ❌ Les vraies clés API résident dans la VM | ✅ Stub échangé sur le réseau |
| Portée et approbation des identifiants Limites par usage, lecture seule, expiration, consentement | ❌ Aucun cadrage par usage | 🟡 Flux d'approbation + filtre de sortie | 🟡 TTL par secret ; bloque les shells | 🟡 Filtre de sortie par endpoint | 🟡 Liste d'autorisation de domaines ; le code dans la VM peut quand même l'utiliser | 🟡 Règles de sortie domaine + méthode/chemin | ✅ Consentement par destination + TTL |
| Analyse de la chaîne d'approvisionnement Détecter les paquets malveillants / vulnérables | ❌ Aucune analyse de registre | ❌ Signature uniquement, pas d'analyse de paquets | ❌ Hors périmètre | ❌ Hors périmètre | ❌ Aucune analyse de paquets | ❌ Aucune analyse de paquets | ✅ Age-gate, OSV, socket.dev, Depi |
| Détection d'injection de prompt Analyse du contenu non fiable et des fichiers de règles | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ PromptGuard + ModernBERT |
| Protection des données personnelles Empêcher les données personnelles d'atteindre le fournisseur de modèle | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Échangées sur l'appareil, restaurées dans les réponses |
| Piste d'audit Enregistrer ce que l'agent a fait | ❌ Journaux de conteneur uniquement | 🟡 Audit local immuable | ❌ | 🟡 Journalisation des requêtes | 🟡 Journalisation des requêtes | 🟡 Corps HTTP complets dans SQLite | ✅ Trace de session complète, chiffrée |
| Inventaire de la chaîne d'approvisionnement (Entreprise) Un enregistrement de chaque paquet récupéré | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Chaque dépendance + verdict, consultable |
| Productivité | |||||||
| Équipes d'agents Plusieurs agents sur une tâche, communiquant entre eux | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Rooms, Switchboard, délégation @ |
| Consommation de tokens (Entreprise) Quels fichiers consomment le plus de tokens | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Par fichier, dépôt et modèle |
| Fusion multi-modèles Un panel de modèles, jugés et synthétisés | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Panel + juge, sur le réseau |
| Automatisations Exécutions d'agent planifiées ou sur événements GitHub / Linear | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Planification, GitHub, Linear, en chaîne |
| Modèles locaux N'importe quel fournisseur, ou inférence sur votre propre matériel | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ MLX sur l'appareil + n'importe quel fournisseur |
| Kubernetes local Clusters et registres à côté du sandbox | 🟡 DIY via Docker-in-Docker | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Clusters k3s + registre privé |
| Navigateur agentique Un navigateur que l'agent pilote pour tester son travail | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Chromium isolé, piloté par l'agent |
| Accessible depuis n'importe où Se connecter au sandbox à distance | 🟡 VS Code distant | ❌ | ❌ | ❌ | 🟡 docker exec, local | ❌ | ✅ Mac, iPhone, iPad, CLI ou SSH |
✅ Complet — intégré, appliqué · 🟡 Partiel — limité ou optionnel · ❌ Aucun — non traité
Cacher un token n'est pas la même chose que gouverner son usage. Docker Sandboxes garde la valeur brute hors de la VM — mais son proxy attache quand même cet identifiant à toute requête sortante du sandbox, si bien qu'un paquet compromis installé à côté peut le dépenser contre un domaine autorisé sans jamais le voir. Seul Bromure analyse le paquet avant son exécution et encadre chaque usage — consentement, lecture seule, un TTL — en appliquant les cinq contrôles à une seule frontière que l'agent ne peut pas contourner. C'est à cette même frontière que se branchent Fusion, l'inférence locale et l'accès à distance.
Compilé à partir de la documentation publique de chaque projet, juin 2026. Ici, agent-vault désigne octokraft/agent-vault (injection de secrets par pipe), distinct de l'Agent Vault d'Infisical (proxy d'identifiants HTTP). Docker Sandboxes est un aperçu expérimental dont les identifiants courtisés restent utilisables par tout ce qui se trouve dans la VM. L'inventaire de paquets à l'échelle de la flotte et les cumuls de consommation de tokens de Bromure sont exposés dans Bromure Enterprise Manager. Ces outils évoluent vite — vous voyez quelque chose d'obsolète ? Ouvrez une issue.