Passerelles de chat et d’assistants (2) — Hermes (Slack, Telegram, cron), OpenClaw (assistant auto-hébergé)
Les mêmes politiques et le même historique de sessions s’appliquent quel que soit le harnais utilisé par un agent. Une couche d’adaptation unique mappe les noms d’événements natifs, les noms d’outils et les champs d’entrée d’outils de chaque harnais vers 29 événements canoniques avant l’exécution de toute politique.Un agent qui ne s’exécute dans aucun des douze harnais est instrumenté directement avec le SDK Python. Il s’agit d’un contrat différent, qu’il convient d’énoncer clairement : le SDK fournit le traçage, les sessions, les évaluations et les audits — il n’applique pas les politiques de lui-même. Bloquer une action non sécurisée avant son exécution nécessite un hook d’application à la limite des outils de votre runtime ; contactez-nous et nous l’adapterons.
Harnais
Portées de hook prises en charge
Claude Code
Utilisateur, projet, local
Codex, GitHub Copilot CLI, Cursor, OpenCode, Pi
Utilisateur, projet
Factory Droid, Devin CLI, Antigravity CLI, Goose
Utilisateur, projet
Hermes, OpenClaw
Utilisateur
Chaque intégration normalise les noms d’événements de hook natifs, les noms d’outils et les champs d’entrée d’outils avant l’exécution des politiques. Une politique ne peut agir que sur les événements exposés par le harnais ; testez le comportement en fin de tour et les instructions sur le harnais et la version exacts que vous déployez.
« Bloquer » signifie que le verdict retourné par l’adaptateur actuel est consommé par le harnais concerné. Le blocage post-outil peut remplacer le résultat présenté au modèle, mais ne peut pas annuler un effet de bord d’outil déjà produit.
Harnais
Événements de blocage vérifiés
Remarques sur l’observation seule ou le non-blocage
Claude Code
PreToolUse, UserPromptSubmit, PermissionRequest, Stop, SubagentStop, PreCompact, et plusieurs événements de tâche/configuration
PostToolUse, le cycle de vie de session, les notifications et les événements post-échec sont observationnels.
Le blocage post-outil remplace le résultat après exécution ; les événements de démarrage de session et de compaction sont observationnels dans l’adaptateur actuel.
Le blocage post-outil remplace le résultat après exécution ; les événements de session et de notification sont observationnels.
Cursor
PreToolUse, UserPromptSubmit, Stop
PostToolUse et les événements de session sont observationnels.
OpenCode
PreToolUse
Les événements post-outil et de cycle de vie sont observationnels ; la gestion actuelle des arrêts constitue une orientation pour un tour ultérieur plutôt qu’une barrière vérifiée.
Pi
PreToolUse, UserPromptSubmit
Les événements post-outil et de cycle de vie sont observationnels ; l’orientation d’arrêt s’applique à un tour ultérieur.
Hermes
PreToolUse
Les verdicts post-outil, de session et d’arrêt de sous-agent ne sont pas des barrières.
OpenClaw
PreToolUse, UserPromptSubmit, Stop
Les événements post-outil, de session, d’arrêt de sous-agent et de compaction sont observationnels.
Factory Droid
PreToolUse, UserPromptSubmit, Stop, PreCompact
Les verdicts post-outil et d’arrêt de sous-agent sont observationnels.
Les hooks de permission ne s’exécutent pas dans tous les modes de permission ; les événements post-outil et de session sont observationnels.
Antigravity CLI
PreToolUse, Stop
Les verdicts sur les prompts utilisateur et post-outil sont observationnels ; les instructions de prompt peuvent néanmoins être injectées.
Goose
PreToolUse
Les événements de prompt utilisateur, post-outil et de session sont observationnels. Un hook d’arrêt de blocage natif existe en amont, mais n’est pas installé par l’adaptateur actuel.
Les capacités sont sensibles à la version. Effectuez de nouveaux tests après la mise à niveau d’un CLI d’agent, en particulier lorsqu’une politique repose sur le comportement des prompts, des arrêts, des permissions ou post-outil plutôt que sur la barrière pré-outil commune.
Ouvrez Administration → Clés et créez une clé avec events:add et policies:pull, nommée selon la machine ou l’environnement.
Sur la machine cible, connectez le CLI local avec la clé affichée et installez les hooks du harnais.
Démarrez une nouvelle session d’agent, puis confirmez ses événements de hook et de session sous Observer → Événements.
Ouvrez Observer → Politique pour la même fenêtre temporelle et confirmez qu’une décision de politique est attribuée à la machine.
La connexion commence par une clé machine. Vérifiez qu’elle inclut les permissions d’ingestion et de distribution des politiques avant de copier son secret.Après l’installation des hooks, le flux d’événements devrait afficher de nouveaux événements provenant de la machine et de l’environnement connectés.Enfin, vérifiez que les décisions de politique sont attribuées à la même machine. Cela confirme que le harnais rapporte bien l’activité des politiques ainsi que les événements de trace.
Installez les hooks pour tous les harnais détectés :
Ou ciblez des harnais spécifiques et une portée de configuration :
failproofai policies --install \ --cli claude codex cursor \ --scope user
La portée projet maintient la configuration des hooks avec un dépôt. La portée utilisateur couvre le travail sur l’ensemble des dépôts. Claude Code prend également en charge la portée locale ; la prise en charge varie selon le harnais et le CLI rejette les combinaisons non supportées.Vérifiez la machine et ses événements :
Ajouter un chemin de session non défini par défaut
Tableau de bord
CLI
Les chemins supplémentaires sont enregistrés sur la machine, pas dans le Cloud. Après en avoir ajouté un, ouvrez Observer → Sessions, filtrez par environnement de la machine et confirmez que les sessions issues du nouveau chemin apparaissent. Ouvrez une session et vérifiez l’agent, le harnais et les horodatages des événements avant de vous en servir dans un audit.
Ajoutez un chemin avec un libellé optionnel, puis inspectez les chemins configurés :
failproofai harness add-path claude checkout=/srv/checkout/.claudefailproofai harness list claudefailproofai backfill --since 7d --dry-runfailproofai backfill --since 7d
Supprimez un chemin avec failproofai harness remove-path claude checkout.
Exécutez une nouvelle session après l’installation. Vérifiez à la fois le flux d’événements en direct et une décision de politique effective avant d’étendre le déploiement.