À 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.
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 *.mdConfidentialité
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.
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.