Confirmations et sécurité
Quand un agent pilote un compte cloud, le mode de défaillance dangereux n’est pas la faute de frappe — c’est un agent sûr de lui qui fait correctement la mauvaise chose : supprimer le modèle de production au lieu de celui de test, publier un brouillon que personne n’a relu, déployer sur un appareil dont vous aviez oublié l’existence. La réponse de SenseCraft CLI est un protocole de confirmation que les agents sont tenus de respecter.
La règle
Section intitulée « La règle »Votre premier message est une intention, pas un consentement.
vous : supprimer le modèle 63760agent : Cela supprimera le modèle 63760 dans l'environnement Global. Les modèles supprimés ne peuvent pas être récupérés. Confirmer ?vous : je confirmeagent : terminé — supprimé.Chaque écriture de niveau L2 suit ce schéma : l’agent pose une question qui
nomme l’opération, l’environnement et l’objet (avec son
identifiant), ainsi que la conséquence. Seule une nouvelle réponse de
votre part — “confirm”, “yes”, “je confirme” — déverrouille l’exécution réelle de
la commande avec --yes. La liste complète des commandes verrouillées se
trouve dans
Sortie et sécurité.
Voici ce qui ne compte explicitement pas comme une confirmation :
- “Supprimer le modèle 63760” (la première demande elle-même)
- “Oui, je vous ai déjà dit de le supprimer” dans le même message
- Tout ce que l’agent pourrait déduire du ton ou du contexte
Cette règle est appliquée deux fois — dans les skills que l’agent lit et
dans le CLI lui-même : une exécution non interactive (par un agent) d’une
commande L2 sans --yes échoue avec confirmation required ; même un
prompt malveillant ne peut donc pas contourner la barrière.
Les deux options de consentement supplémentaires
Section intitulée « Les deux options de consentement supplémentaires »Deux dialogues de la console ont une valeur juridique ; ils ont donc leurs propres options :
| Option | Apparaît sur | Équivalent dans la console |
|---|---|---|
--agree-declaration | app publish | la case à cocher “Declaration for Publishing” |
Un bon agent vous montre le texte (déclaration / avertissement) et attend un “j’accepte” distinct avant d’utiliser l’une ou l’autre option.
- Les agents masquent les jetons, les clés d’accès et les valeurs
device_key/tokendes kits de développement — vous voyez des formes commesk-****, jamais la valeur complète. - Ne collez pas de clés dans le chat. Si l’agent a besoin d’identifiants
configurés, le flux correct est que vous créiez la clé d’accès dans le
centre de comptes et exécutiez
auth addlocalement. - Les
file_urldes modèles publics ne sont jamais affichées, car la plateforme ne les expose pas — demander à un agent un “lien de téléchargement de modèle public”, c’est demander quelque chose qui n’existe pas.
La liste complète des refus
Section intitulée « La liste complète des refus »Un agent qui suit les skills refusera de :
- Exécuter
auth addouauth initen votre nom — ils manipulent des secrets bruts ou la connexion navigateur, donc vous les exécutez localement. - Publier, supprimer, dépublier, déployer, installer, délier, arrêter, cloner, relier sans un tour de confirmation distinct.
- Scraper la console ou inventer des appels HTTP avec des jetons devinés — uniquement de véritables commandes CLI.
- Récupérer les artefacts de modèles publics ou “contourner” la politique limitant ces artefacts au déploiement.
- Toucher aux opérations L4 (états d’examen administratif,
privacy=1). - Prétendre flasher des appareils — le flash par Web Serial / USB est de niveau L3 : l’agent peut vous donner un lien, jamais prétendre l’avoir flashé.
- Inventer des commandes — si le CLI manque d’une fonctionnalité (par exemple l’export de jeux de données), l’agent le dit au lieu d’improviser.
Si votre agent ne suit pas le protocole
Section intitulée « Si votre agent ne suit pas le protocole »Le protocole vit dans les skills : un agent qui ne les a pas chargées ne
connaîtra pas la convention du “demander d’abord” — mais la barrière
--yes du CLI vous protège toujours : les écritures non confirmées
échouent, tout simplement. Pour obtenir le comportement complet, assurez-vous
que les skills sont bien intégrées (voir
Skills) et privilégiez
les agents capables de lire les fichiers de skills locaux au projet.
Si un agent vous demande un jour de taper --yes vous-même “pour gagner une
étape” dans le cadre d’une opération destructrice en production — c’est le
moment de ralentir, pas d’accélérer.