Montrez à votre agent ce que vous voulez dire, au lieu de le décrire.
senhal transforme une page web en quelque chose sur quoi votre agent de code peut vraiment agir. Dessinez sur la page, désignez les éléments dont vous parlez, puis remettez le tout en un seul geste.
Trois éléments retenus, badges numérotés, infobulle sur un quatrième. La page derrière est une démonstration fictive livrée avec l'extension.
Quatre temps
Du clic au prompt
1
Ouvrez la barre
Sur n'importe quelle page, par le bouton de l'extension ou le raccourci Alt+Shift+A. Une barre compacte : les outils sous la main, le reste à un clic dans un menu, chaque commande avec son raccourci clavier.
2
Dessinez et annotez
Flèche, cadre, main levée, texte, légende numérotée. Surlignez une phrase avant de cliquer : elle est citée dans l'annotation, votre agent sait quel texte exact est visé.
3
Cliquez les éléments
Chaque élément retenu reçoit un numéro et un sélecteur CSS. Le même numéro à l'écran, sur l'image et dans le Markdown — dessins et sélections partagent une seule chronologie.
4
Appuyez sur Agent
La session est écrite dans votre dossier de téléchargements, et un seul collage part dans le presse-papier. Votre agent lit les images tout seul depuis le disque.
Ce que reçoit votre agent
Un seul collage, un dossier sur votre disque
Des sélecteurs CSS vérifiés uniques
Pas un sélecteur deviné : senhal préfère un attribut identifiant stable (id, data-testid, name, href, aria-label) et ne remonte l'arbre que s'il le faut. Le manifeste indique, pour chacun, combien d'éléments il désigne encore au moment de l'export — 1 signifie utilisable tel quel dans document.querySelector.
La capture annotée
La zone visible de la page, avec vos dessins et les repères numérotés incrustés dessus.
Une vue rapprochée par élément
Un fichier image par élément sélectionné, en plus de la vue d'ensemble.
prompt.md
Vos notes, le texte cité, la liste numérotée de tout ce que vous avez marqué, et les erreurs et avertissements de la console de la page s'il y en a eu.
Un chemin de dossier ouvrable directement
Chaque chemin est relevé auprès de Chrome, un par un. Sous Windows, le collage porte aussi la forme WSL (/mnt/c/…) : un agent lancé dans WSL ne peut rien faire d'un C:\.
Le texte surligné avant le clic est repris dans le formulaire de note.
Une légende pointe l'élément visé et porte une note : dessin et sélection dans la même chronologie.
Le dossier écrit à chaque export :
Téléchargements/senhal/session/
├── page.png la page annotée : capture + dessins + repères numérotés
├── 01-button.png une vue rapprochée par élément sélectionné
├── 02-input.png
├── prompt.md vos notes, la liste numérotée, le journal console
└── manifest.json l'index structuré que l'agent lit
Le dossier est fixe et réécrit : les fichiers de la session précédente sont supprimés d'abord, le chemin ne change jamais.
Aussi dans la barre
À un clic, chacun avec son raccourci
Capture pleine page
La page entière, défilée écran par écran et recollée en un seul PNG, vos annotations comprises. Les en-têtes fixes n'apparaissent qu'une fois, en haut, au lieu de se répéter sur chaque écran.
Copier en Markdown
Le contenu principal de la page, ou seulement le passage surligné, en Markdown propre : titres, listes, tableaux, blocs de code avec leur langage. À coller dans un chat d'IA ou chez votre agent.
Le panneau Stack
Les technologies de la page, par catégorie et avec leur version quand la page la donne : CMS, frameworks, CSS, animation, mesure d'audience, hébergement. Lu dans la page elle-même, rien n'est cherché en ligne.
La flèche à côté d'Agent : capture pleine page et copie en Markdown.
Le panneau Stack sur ce site : Astro, Tailwind CSS, Matomo.
Rien ne sort de votre machine
Et c'est vérifiable
senhal n'a aucun code réseau : pas de serveur, pas de compte, pas de télémétrie, pas d'analytique, pas de ping de mise à jour. Elle ne lit une page qu'après que vous l'ayez ouverte sur cette page, et n'écrit que dans votre propre dossier de téléchargements.
Le code est livré lisible et non obscurci. Ce n'est pas une négligence : c'est ce qui vous permet de vérifier vous-même l'affirmation ci-dessus. Une recherche de fetch,XMLHttpRequest, WebSocketou sendBeacon dans le dossier de l'extension ne rend rien. Une extension minifiée vous demanderait de me croire sur parole.
Aucune permission d'hôte n'est demandée : tant que vous n'activez pas l'outil sur un onglet, il n'a accès à rien.
L'export Agent capture la zone visible. La capture pleine page, elle, ne suit que le défilement de la fenêtre (pas celui d'un bloc interne) et réduit une page de plus de 16 384 px de haut.
Frame principale seulement : le contenu d'une iframe apparaît en pixels, pas en sélecteurs.
Un élément collant ou fixe peut recouvrir la cible après un défilement automatique.
Le gel des animations ne couvre que ce que le CSS anime : un carrousel piloté en JavaScript continue de bouger.
Journal console capté pendant que la barre est ouverte, 50 dernières entrées.
L'interface vit dans le DOM de la page : un script de la page peut voir ce que vous tapez et ce que vous sélectionnez. Sans conséquence sur votre propre application, à garder en tête sur un site tiers.
Ce que dit la page finit dans le prompt : traitez un export comme une entrée non fiable, exactement comme une issue GitHub qu'on colle à un agent.
Bon à savoir
Prérequis
Chrome 111 ou plus récent. Manifest V3, aucune permission d'hôte.
Langues
Interface et Markdown exporté en français, anglais, espagnol ou allemand — vous et votre agent lisez la même chose.
Confort
Barre horizontale ou verticale, thème clair ou sombre, position mémorisée, tous les raccourcis in-page remappables.
Licence
Gratuit à l'usage, en perso comme en entreprise. Le code n'est ni à redistribuer ni à réutiliser ailleurs : ce n'est pas un logiciel open source.
Questions fréquentes
Avec quels agents de code senhal fonctionne-t-il ?
N'importe lequel, du moment qu'il sait lire un dossier sur votre disque : Claude Code, Codex, Cursor, Cline, Aider. senhal n'a pas d'intégration propre à un agent — il écrit des fichiers et vous donne un collage unique qui contient vos notes et les chemins.
Mon agent tourne sur un serveur (SSH, VPS, Codespaces) : ça marche ?
Oui pour l'essentiel : le collage porte les sélecteurs, vos notes et le journal console, et prévient l'agent que les images sont restées sur votre ordinateur. Pour lui donner les images, glissez les fichiers du dossier de session dans votre éditeur distant (VS Code Remote-SSH, Codespaces) ou dans une interface d'agent qui accepte les pièces jointes. senhal n'envoie rien sur le réseau, volontairement.
Est-ce que mes captures ou mon code partent sur un serveur ?
Non. L'extension n'a aucun code réseau : pas de serveur, pas de compte, pas de télémétrie. Elle écrit dans votre dossier de téléchargements et met du texte dans votre presse-papier, c'est tout. Le code est livré lisible pour que vous puissiez le vérifier vous-même.
Quelle version de Chrome faut-il ?
Chrome 111 au minimum, parce que l'interface est entièrement écrite en oklch(). L'extension est en Manifest V3 et ne demande aucune permission d'hôte : elle n'a accès à une page que lorsque vous l'activez dessus.