Agent Safehouse : sandboxing natif macOS pour les agents d'IA de codage locaux

✍️ OpenClawRadar📅 Publié: March 9, 2026🔗 Source
Agent Safehouse : sandboxing natif macOS pour les agents d'IA de codage locaux
Ad

Agent Safehouse est une solution de sandboxing native pour macOS destinée aux agents d'IA de codage locaux qui applique des restrictions d'accès aux fichiers au niveau du noyau. L'outil aborde la nature probabiliste des LLM en empêchant les agents d'effectuer des modifications destructrices en dehors des répertoires de projet désignés.

Fonctionnement

Safehouse met en œuvre un modèle d'accès par défaut refusé où les agents n'héritent d'aucune autorisation par défaut. Le noyau bloque les appels système avant que tout fichier ne soit touché, empêchant des opérations comme rm -rf ~ de réussir. Lorsqu'un agent tente d'accéder à des zones restreintes, le noyau renvoie "Opération non autorisée".

Modèle de contrôle d'accès

  • Répertoire de projet : accès en lecture/écriture (racine git par défaut)
  • Bibliothèques partagées : accès en lecture seule si explicitement accordé
  • Refusé par défaut : clés SSH (~/.ssh/), identifiants AWS (~/.aws/), autres dépôts, fichiers personnels
  • Chaînes d'outils : accès en lecture aux chaînes d'outils installées

Prise en main

# 1. Télécharger safehouse (script unique autonome)
mkdir -p ~/.local/bin
curl -fsSL https://raw.githubusercontent.com/eugene1g/agent-safehouse/main/dist/safehouse.sh \
  -o ~/.local/bin/safehouse
chmod +x ~/.local/bin/safehouse

2. Exécuter n'importe quel agent dans Safehouse

cd ~/projects/my-app safehouse claude --dangerously-skip-permissions

Tester le sandbox

# Essayer de lire votre clé privée SSH — refusé par le noyau
safehouse cat ~/.ssh/id_ed25519
# cat: /Users/you/.ssh/id_ed25519: Operation not permitted

Essayer de lister un autre dépôt — invisible

safehouse ls ~/other-project

ls: /Users/you/other-project: Operation not permitted

Mais votre projet actuel fonctionne correctement

safehouse ls .

README.md src/ package.json ...

Ad

Intégration au shell

Ajoutez ces fonctions à votre configuration shell (~/.zshrc ou ~/.bashrc) pour exécuter les agents en sandbox par défaut :

safe () { safehouse --add-dirs-ro=~/mywork "$@"; }

En sandbox — par défaut. Tapez simplement le nom de la commande.

claude () { safe claude --dangerously-skip-permissions "$@"; } codex () { safe codex --dangerously-bypass-approvals-and-sandbox "$@"; } amp () { safe amp --dangerously-allow-all "$@"; } gemini () { NO_BROWSER=true safe gemini --yolo "$@"; }

Non sandboxé — contournez la fonction avec command

command claude — session interactive simple

Génération de profil assistée par LLM

Le projet inclut un prompt qui instruit les LLM (Claude, Codex, Gemini, etc.) d'inspecter les modèles de profil Safehouse, de s'informer sur votre répertoire personnel et votre configuration de chaîne d'outils, et de générer un profil sandbox-exec avec le moindre privilège. Le prompt guide le LLM pour qu'il s'enquiert des dotfiles globaux, suggère un chemin de profil durable comme ~/.config/sandbox-exec.profile, crée un wrapper qui accorde l'accès au répertoire de travail actuel, et ajoute des raccourcis shell pour les agents préférés.

Agents pris en charge

Testé avec : Claude Code, Codex, OpenCode, Amp, Gemini CLI, Aider, Goose, Auggie, Pi, Cursor Agent, Cline, Kilo, Code Droid et agents personnalisés.

📖 Lire la source complète : HN AI Agents

Ad

👀 See Also