Logo senhal

Extension Chrome · Manifest V3 · gratuite à l'usage

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.

Quatre temps

Du clic au prompt

  1. 1

    Ouvrez la barre

    Sur n'importe quelle page, par le bouton de l'extension ou le raccourci Alt+Shift+A. Tous les outils sont visibles d'un coup, dans une seule rangée — pas de mode à basculer.

  2. 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. 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. 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.

Barre d'outils senhal ouverte sur une page : trois éléments sélectionnés, chacun marqué d'un badge numéroté
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.

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:\.

Formulaire de note senhal ouvert sur un élément, avec le texte surligné repris en tête
Le texte surligné avant le clic est repris dans le formulaire de note.
Légende numérotée posée sur un élément d'une page, la queue de la bulle pointant la cible
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.

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 defetch,XMLHttpRequest,WebSocket ousendBeacon 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.

Lire la politique de confidentialité(English version)

Ce qu'il ne fait pas

Limites connues de la version 1

  • Capture de la zone visible uniquement — pas de capture pleine page par défilement.
  • 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.

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.