Retour aux mises à jour
New releaseAug 30, 2026

watermarks-remover v0.5.0

Une application axée sur la confidentialité qui supprime les filigranes IA du contenu que vous possédez.

Partager
_ _ _ ____ ___ ____ ____ _  _ ____ ____ _  _ ____    ____ ____ _  _ ____ _  _ ____ ____
| | | |__|  |  |___ |__/ |\/| |__| |__/ |_/  [__  __ |__/ |___ |\/| |  | |  | |___ |__/
|_|_| |  |  |  |___ |  \ |  | |  | |  \ | \_ ___]    |  \ |___ |  | |__|  \/  |___ |  \

watermarks-remover

CI Release Stars Forks

Compétence d'agent + service Python stdlib pour supprimer les marques de provenance IA multi-fournisseurs du texte et des fichiers — pour la confidentialité et l'hygiène sur du contenu que vous possédez. La compétence est un client léger : elle pilote la machinerie via HTTP, donc l'hôte de l'agent n'a pas besoin de Python.

CoucheCibleComment
AUnicode invisible, espaces exotiques, bidi, caractères de baliseScripts Python déterministes
BFiligranes textuels statistiques (échantillonnage de tokens)Réécriture par l'agent + hook optionnel rewrite_text.py
FichiersC2PA / EXIF / XMP / propriétés de documentPNG, JPEG, WebP, AVIF, HEIC, BMP, GIF, TIFF, SVG, PDF, DOCX, XLSX, PPTX, EPUB, ODT, HTML, Markdown, MP4/MOV/M4A/M4V, WAV, MP3, FLAC

Fournisseurs / écosystèmes (au niveau des classes) : Claude, Gemini / SynthID-Text, surfaces de provenance OpenAI, marques open-LLM de style Kirchenbauer (green-list) et Gumbel à clé / EXP (Aaronson).

Dernière version : v0.7.0

Chemin de la compétence : skills/remove-ai-marks/
Chemin du service : service/
(migration : anciennement remove-claude-marks ; l'alias slash /remove-claude-marks est toujours documenté)

Installation (compétence d'agent)

La compétence ne contient aucun code — elle appelle le service via HTTP. Installez la compétence (markdown uniquement) et démarrez le service, puis définissez WATERMARKS_SERVICE_URL si ce n'est pas http://127.0.0.1:8765.

Dans Claude Code, la voie la plus rapide est le marketplace de plugins intégré — pas de clone, et il se met à jour sur place. Partout ailleurs, un seul installateur couvre tous les hôtes pris en charge (Python 3.10+ stdlib, aucune dépendance) :

python3 install_skill.py --skill remove-ai-marks --target claude-code
HôteCibleEmplacement
Claude Code (personnel)--target claude-code~/.claude/skills/<skill> (respecte CLAUDE_CONFIG_DIR)
Claude Code (projet)--target claude-project --project-dir PATHPATH/.claude/skills/<skill>
Codex (personnel)--target codex~/.agents/skills/<skill>
Codex (projet)--target codex-project --project-dir PATHPATH/.agents/skills/<skill>
Cowork, claude.ai, sessions cloud, routines--target coworkdist/<skill>.zip à téléverser sous Customize → Skills
Cursor--target cursor (par défaut)~/.cursor/skills/<skill>

Skills fournis : remove-ai-marks (complet, adossé à un service) et clean-user-facing-text (texte uniquement, autonome). --list les affiche. Les installations existantes sont préservées sauf si vous passez --force ; le remplacement est d'abord mis en attente et l'installation précédente est conservée comme sauvegarde nommée de manière unique. --link crée un lien symbolique vers ce checkout au lieu de copier, de sorte que les modifications sont prises en compte en direct. Sous Windows, utilisez py install_skill.py ... ; le wrapper install-skill.sh est fourni pour les shells macOS/Linux.

Avant d'écrire quoi que ce soit, l'installateur valide le skill selon les règles d'empaquetage Agent Skills que les téléversements claude.ai et l'API Skills appliquent : frontmatter conforme à la spécification (name, description, license, compatibility, metadata, allowed-tools), un name en minuscules avec traits d'union d'au plus 64 caractères correspondant au répertoire, une description non vide d'au plus 1024 caractères. Le bundle Cowork doit en outre respecter la limite de téléversement de 30 Mo, ce que l'empaqueteur applique.

Terminal et bureau Codex

Installez l'un des skills fournis pour votre utilisateur, ou installez-en un dans un projet particulier :

python3 install_skill.py --skill remove-ai-marks --target codex
python3 install_skill.py --skill clean-user-facing-text --target codex
python3 install_skill.py --skill remove-ai-marks --target codex-project --project-dir /path/to/project

Sous Windows, utilisez py à la place de python3. Ouvrez le projet dans Codex. Dans le terminal, utilisez /skills ou tapez $ pour sélectionner une compétence ; dans l'application de bureau, sélectionnez ou mentionnez la compétence dans votre invite. Redémarrez Codex si la nouvelle compétence n'apparaît pas. L'installation du projet est disponible lorsque Codex s'exécute dans ce projet.

Pour remove-ai-marks, démarrez le service HTTP existant depuis ce dépôt avec make serve avant d'utiliser la compétence (ou sous Windows sans make, exécutez py service/scripts/server.py --host 127.0.0.1 --port 8765). Il utilise WATERMARKS_SERVICE_URL (par défaut http://127.0.0.1:8765), vérifie /health, et appelle les points de terminaison existants /inspect et /clean. Si le service nécessite une clé API, définissez WATERMARKS_SERVER_API_KEY pour le client. clean-user-facing-text est autonome et n'a pas besoin du service.

Nettoyage automatique via hook (déterministe)

Une compétence est une instruction : le modèle décide s'il faut l'invoquer, et le modèle est ce qui produit les marques. Un hook est exécuté par le harnais à chaque appel d'outil correspondant, sans nécessiter de coopération. Cela fait du hook la moitié déterministe de ce flux de travail.

Le plugin enregistre un hook PostToolUse sur Write|Edit|MultiEdit|NotebookEdit qui exécute service/scripts/hook_written_file.py sur le fichier que l'agent vient d'écrire. Deux modes, correspondant à la convention de pré-commit de vérification par défaut :

ModeComportement
check (par défaut)Signale les marques de provenance, laisse le fichier intact. Les résultats sont transmis au modèle (exit 2), afin qu'il puisse proposer de les nettoyer.
cleanSupprime les marques sur place, puis indique au modèle que le fichier sur disque a changé.

Catégories