Aller au contenu
Ghostchars

À propos de Ghostchars

Un petit outil gratuit qui trouve les caractères invisibles, refuse de deviner qui a écrit votre texte, et montre son raisonnement.

Ce que c'est

Ghostchars révèle et supprime les caractères Unicode invisibles dans les textes et dans les documents. Le projet a commencé comme un unique fichier Python sans dépendances, écrit pour répondre à une question précise : qu'y a-t-il exactement dans cette chaîne que je ne vois pas ? Il est resté comme ça. Le site, c'est le même moteur compilé pour le navigateur, avec une page autour.

Pas de compte, pas d'envoi de fichier, pas de file d'attente et pas de clé d'API. Vous collez un texte, vous voyez ce qu'il contient, et vous décidez de ce qu'il faut supprimer.

Pourquoi il existe

Cherchez un moyen de trouver les caractères invisibles et vous tombez sur des outils qui promettent de détecter les filigranes des IA et vous tendent un pourcentage de confiance. Ce pourcentage ne mesure rien : aucun caractère d'un texte ne peut vous dire qui l'a écrit, et les outils qui prétendent le contraire affichent en général un chiffre figé.

La version honnête du produit est plus étroite et plus utile. Les caractères invisibles existent, ils causent de vrais problèmes (recherche cassée, comparaisons qui échouent, instructions invisibles destinées aux modèles de langue) et on peut les trouver exactement, sans deviner quoi que ce soit. C'est ce que fait cet outil. Là où un caractère est ambigu, la page le dit ; là où une affirmation ne peut pas être étayée, elle n'est pas faite.

Comment Ghostchars décide de ce qu'il supprime

Les règles qui l'ont construit

Rien n'est envoyé

Le site est un ensemble de fichiers statiques et le moteur tourne sur votre appareil. Il n'y a aucun traitement côté serveur, donc rien que quiconque puisse journaliser, conserver ou laisser fuiter.

Rien n'est affirmé qui ne puisse être montré

Aucune détection d'IA, aucune probabilité, aucun « supprime les filigranes des IA ». La page qui dit ce que l'outil ne peut pas faire est publiée en même temps que celle qui dit ce qu'il peut faire.

Chaque décision est visible

Chaque caractère trouvé porte sa ligne, sa colonne, son point de code, son nom Unicode, sa catégorie et ce qui lui est arrivé : supprimé, remplacé, conservé parce qu'il est porteur, ou trouvé mais non ciblé. Rien n'est modifié en silence.

Le navigateur et la CLI sont d'accord

Des fixtures de référence générées depuis l'implémentation Python arriment le moteur du navigateur à celle-ci. Si les deux divergent sur la moindre fixture, le build échoue.

Open source

Le moteur, les tests et ce site sont open source sous licence MIT. L'outil en ligne de commande tient dans un seul fichier, sans dépendance au-delà de la bibliothèque standard de Python, et il a un mode `--check` qui sort avec un code non nul quand un fichier contient quelque chose de caché, ce qui le rend utilisable comme hook pre-commit ou comme étape de CI.

./strip_invisible.py --show draft.md
./strip_invisible.py --check *.md

Lire le code source

Confidentialité

Rien de ce que vous collez ou ouvrez n'est transmis où que ce soit, parce qu'il n'y a nulle part où le transmettre. La mesure d'audience est facultative, soumise à consentement, hébergée dans l'UE et relayée par ce domaine, et aucun événement ne transporte jamais de contenu textuel : seulement des compteurs et la liste des options actives. Si vous dites non, rien n'est chargé du tout.

Lire la politique de confidentialité

Qui maintient ce site

Kris Vinters

développe et maintient Ghostchars

Les corrections et les questions sont à envoyer à privacy@ghostchars.com.

Contact et corrections

Si une page se trompe ici sur un point de code, une écriture ou une technique, cela vaut la peine d'être corrigé. Corrections, rapports de bug et ajouts à l'index des caractères s'envoient à privacy@ghostchars.com, et sont corrigés.

Statistiques anonymes ?

Ghostchars traite votre texte dans le navigateur et ne l'envoie jamais nulle part. Nous aimerions comptabiliser les pages vues avec un service de mesure auto-hébergé et sobre en cookies. Jamais le moindre contenu.