Image
|

IRIS : donnez des yeux à vos agents

⏱️ Temps de lecture estimé : 3 minutes

https://github.com/brijr/iris

📌 IRIS est un utilitaire en Rust qui transforme une commande courte ou un appel MCP en capture fiable d’un site en direct, prétraitée pour que vos agents de code voient la page telle qu’elle est vraiment.

Vous connaissez la frustration : demander à une IA de vérifier un rendu, et la regarder contourner ses approximations. IRIS vise exactement cette friction. Vous tapez iris example.com et vous obtenez un PNG en 1440×900 à l’échelle 2x, sans le moindre réglage. Le runtime n’exige qu’un navigateur de la famille Chrome, piloté en interne par le protocole DevTools. C’est une brique, pas une usine, et cette modestie fait presque tout son charme.

La capture cible mérite qu’on s’y attarde. Un sélecteur CSS découpe la page au plus juste : --selector '#hero' cadre le premier élément correspondant, --padding 24 ajoute une marge propre autour. Le mode --full couvre toute la hauteur de page, avec repli automatique en 1x quand le rendu dépasse la limite de Chrome. --dark simule le thème sombre, et le format de sortie se choisit par l’extension du fichier : PNG par défaut, JPG ou WebP en qualité 90.

Ce qui me plaît vraiment, c’est que l’outil attend avant de déclencher. Polices, images, animations d’entrée, chargement différé sur une page entière : tout se stabilise avant que l’obturateur ne se ferme. Le résultat se vise directement, sans étape de capture brute puis de recadrage. En lot, plusieurs URLs partent en parallèle, une page qui échoue affiche une croix sans interrompre la série, et le dossier de sortie construit des noms de fichiers lisibles.

Le mode MCP donne sa vraie couleur à l’outil. Un serveur stdio livré dans le même binaire expose une seule commande, capture, qui renvoie l’image en base64 avec ses dimensions, au lieu de forcer l’agent à localiser un fichier. Sur un Apple M2 Max, les captures suivantes tournent autour de 366 ms de médiane : assez pour laisser l’agent photographier une page puis se mettre au travail.

  • 🎯 Une commande, une image : iris example.com rend 1440×900 @2x
  • 🖼️ Cadrage d’élément au CSS avec --selector et --padding
  • 🤖 Serveur MCP local : l’image revient inline à l’agent
  • 🌿 Attente des polices, images, animations et lazy-load avant capture
  • 🌊 Lot concurrent : un échec n’interrompt pas la série
  • 📦 Installation par script ou cargo install iris-screenshot

IRIS reste volontairement limité : la capture se fonde sur le premier élément correspondant, rien ne traverse les iframes d’un autre domaine, et aucune micro-automatisation de scénario n’est prévue. C’est assumé, et je trouve cette séparation saine : un outil dédié, sous licence MIT, qui rend l’agent plus lucide sur l’état réel d’une interface. Pour qui travaille avec des modèles dits « visuels », c’est exactement le genre de brique qui manquait.

Iris la camera des agents de code

Publications similaires

Laisser un commentaire