Aller au contenu
Guides

Le déclencheur IMAP d’OpenClaw

Surveiller une boîte aux lettres, l’agent lecteur restreint et isolé, l’authentification des expéditeurs de DMARC aux jetons liés à l’expéditeur, la règle de fraîcheur, et comment vérifier la frontière

6 min de lecture

Le courriel est l’entrée la plus hostile qu’un agent puisse lire : n’importe qui peut en envoyer. L’extension IMAP intégrée d’OpenClaw le traite ainsi. Elle surveille une boîte aux lettres existante et démarre une session d’agent séparée et isolée pour chaque message entrant autorisé, et elle n’envoie pas de courrier, ne modifie pas les indicateurs, n’expose pas de webhook public et ne traite pas les messages déjà présents au début de la surveillance. Voici le lecteur restreint à configurer d’abord, les réglages de compte, l’échelle d’authentification des expéditeurs, les jetons et la fraîcheur, le comportement du surveillant à l’exécution, et le test qui prouve que la frontière tient.

Le lecteur restreint

  • Configurez un agent lecteur explicite avant d’activer l’extension, avec une propriété d’agents explicite et une liaison par canal activé pour que l’agent principal garde ses canaux : l’exemple de la documentation donne au lecteur son propre espace de travail, un modèle, un bac à sable en mode tout avec portée de session et sans accès à l’espace de travail, un profil d’outils minimal n’autorisant que l’outil d’état de session et refusant les groupes de fichiers, d’exécution, de web, de navigateur, de cron, de passerelle et de nœuds.
  • L’entrée de compte nomme l’hôte, le port et TLS, l’utilisateur, un mot de passe en référence de secret stocké, la boîte aux lettres, un mode de surveillance avec un intervalle de sondage, les expéditeurs autorisés, le plancher d’authentification et les serveurs de résultats d’authentification de confiance, l’identifiant de l’agent lecteur, s’il faut livrer des annonces, s’il faut inclure le corps, et un plafond d’octets.
  • Le lecteur exige un backend de bac à sable disponible et un modèle authentifié ; contrairement à l’intégration Gmail, il n’a besoin ni du réglage des hooks, ni de Google Cloud, ni d’un tunnel, ni d’un point d’accès public, parce qu’il appelle directement le distributeur de courriel de confiance des extensions de la passerelle, si bien que les listes d’autorisation des hooks HTTP ne sont pas sa frontière et que l’identifiant de l’agent, la politique d’expéditeurs et le lecteur restreint le sont.
  • La documentation liste les vérifications à lancer avant de s’y fier : lister les agents et les liaisons, valider la configuration, sonder l’état du modèle du lecteur, lancer un tour d’agent à un message en tant que lecteur, et expliquer son bac à sable.
Toute navigation vers un lien, écriture de fichier, commande shell, action de navigateur ou autre évasion d’outil est un échec du contrôle de frontière.

Authentification des expéditeurs

L’adresse From analysée est vérifiée contre la liste d’autorisation avant que tout message atteigne un modèle ; les entrées sont des adresses complètes ou des entrées de domaine, les noms d’affichage et Reply-To n’accordent rien, les messages à plusieurs adresses From sont rejetés, et une liste vide désactive le compte. Quatre forces suivent : vérifiée quand l’authentification locale du courrier renvoie un DMARC aligné réussi, acceptée par défaut ; affirmée quand un serveur de résultats d’authentification configuré et de confiance rapporte une réussite, acceptée seulement avec l’adhésion au serveur de confiance et un plancher affirmé ; non vérifiée quand SPF seul réussit ou qu’un serveur non fiable affirme un résultat, ou quand la propriété n’est pas prouvée, y compris une erreur temporaire DMARC, acceptée seulement avec un plancher non vérifié ; et mutable, le niveau d’alias changeable ou partagé que le mappeur IMAP ne produit jamais mais que le plancher peut encore nommer. Le minimum par défaut est vérifié, un plancher non vérifié explicite admet le courrier sans preuve, les exceptions de l’authentificateur provoquent des relances sauf si un en-tête de confiance satisfait le plancher, et abaisser le minimum ne contourne jamais la liste ni le contrôle de fraîcheur. Les rejets avant authentification enregistrent une barrière From invalide, expéditeur non autorisé ou message trop ancien sans force.

Jetons, fraîcheur, le surveillant

  • Un jeton lié à l’expéditeur sert à un expéditeur autorisé qui ne peut pas produire de DKIM ou de DMARC utile : un long jeton aléatoire lié à des expéditeurs précis, livré à une boîte avec une adresse à plus ; après les contrôles de From et de liste, le jeton est vérifié avant la fraîcheur et l’authentification, une correspondance contourne à la fois le contrôle de fraîcheur de quarante-huit heures et l’authentification du courrier, et sans elle un message dont la date interne dépasse quarante-huit heures est rejeté avant authentification. Le jeton n’élargit jamais la liste et n’accorde ni outils ni accès à l’espace de travail.
  • Le surveillant réconcilie le nouveau courrier à chaque intervalle de sondage en mode sondage comme en mode IDLE, les notifications IDLE déclenchent des balayages immédiats, les échecs passagers d’authentification et les admissions échouées sont relancés sans attendre un autre courriel, après trois tentatives échouées il enregistre un saut et passe aux messages suivants, et un surveillant arrêté ne relance pas. Il garde son propre curseur et son propre état de déduplication plutôt que la file des messages morts des canaux, les messages existants sont pris comme référence sans distribution au premier démarrage, les nouveaux sont dédupliqués entre les redémarrages, un changement de validité de boîte enregistre une nouvelle référence au lieu de rejouer, les corps sont plafonnés avec un marqueur de troncature enregistré, et un plantage pendant une admission non résolue peut laisser une réclamation, donc ce chemin ne promet pas un traitement exactement une fois.
  • Vérifiez la frontière avec un audit de sécurité approfondi et le flux des journaux : envoyez-vous un message demandant de suivre un lien et de lancer une commande, confirmez qu’il est distribué au lecteur, crée une exécution isolée et ne fait que résumer le contenu. Le journal de distribution avec un identifiant d’exécution enregistre l’admission, pas l’achèvement ; cherchez la ligne d’exécution de hook terminée avec le même identifiant et inspectez la transcription. Avec la livraison désactivée, les annonces réussies sont désactivées, et un échec de modèle après admission ne fait pas rejouer le message par IMAP.

Les automatisations d’OpenClaw couvre l’intégration Gmail dont cette extension est l’alternative plus simple, et Le bac à sable d’OpenClaw expliqué le backend que l’agent lecteur exige.

Dépannage

Trois échecs d’authentification consécutifs arrêtent les relances et marquent le surveillant comme défaillant jusqu’à la mise à jour du mot de passe ou de la référence de secret et le rechargement de la configuration, et un compte cassé n’arrête pas les autres. Les serveurs sans IMAP IDLE retombent sur des balayages périodiques avec un intervalle minimal de quinze secondes, certains serveurs iCloud annoncent un service de push au lieu de l’IDLE standard, donc le sondage est le chemin pris en charge, les expéditeurs auto-hébergés rejetés devraient corriger leur DKIM et leur DMARC avant que vous n’abaissiez le plancher ou n’ajoutiez un jeton, et l’absence de distribution signifie généralement une liste vide, un message antérieur à la référence, un From qui ne correspond pas, un agent lecteur manquant ou une sonde de modèle qui échoue ; les rejets sont journalisés sans sujets ni corps. Hooks et webhooks dans OpenClaw est le système d’événements voisin dont cette extension reste volontairement séparée, et Modèles et fournisseurs d’OpenClaw le modèle authentifié dont le lecteur a besoin.

Sur Diali

Sur Diali, le mot de passe de la boîte aux lettres vivrait dans le coffre plutôt que dans un fichier de configuration, et le lecteur restreint a besoin d’un backend de bac à sable que l’assistant peut atteindre, ce qui est le point à confirmer avec nous avant de s’y fier. OpenClaw hébergé sur Diali est l’assistant et La sécurité chez Diali décrit la frontière que le schéma du lecteur prolonge.

  • Un lecteur isolé avec presque aucun outil.
  • DMARC vérifié par défaut ; des jetons pour le reste.
  • Référence, déduplication, plafond ; jamais de rattrapage.
Commencer

Arrêtez de lire, construisez le vôtre

Configurez un agent, choisissez un canal, et faites-le travailler dans l’application que vous gardez déjà ouverte.