A watermark remover that admits when it is only guessing
Strip AI provenance marks from text and files you own, with an unusually honest accounting of what actually disappears and what merely gets rewritten.

What it does
The project provides deterministic Python scripts and an agent skill to strip multi-vendor AI traces from content. clean_text.py scrubs invisible Unicode carriers—zero-width spaces, bidi overrides, exotic tag characters—while clean_file.py drops C2PA chunks, XMP, EXIF, and generator metadata from PNG, JPEG, SVG, PDF, DOCX, ODT, HTML, and Markdown containers. For statistical watermarks baked into token choices, it offers a best-effort rewrite hook that rewords sentences rather than restructuring them.
The interesting bit
The README spends as much space warning about failure modes as it does documenting features. It openly admits that removing statistical text watermarks requires degrading the text through heavy paraphrase, and that no tool can currently certify a pass against vendor-specific detectors. That candor is rarer than the code itself.
Key highlights
- Targets marks from Claude, Gemini/SynthID, OpenAI, and open-LLM ecosystems in a single toolset.
- Layer A Unicode cleaning is deterministic and testable; Layer B statistical cleaning is explicitly best-effort.
- File metadata stripping covers eight formats, with optional
exiftoolandc2patoolintegration for deeper inspection. - Optional local SynthID pixel scoring via an external, non-commercial research dependency—detection only, removal is out of scope.
- Core scripts use only the Python 3.10+ standard library; model-backed rewrites are optional.
Caveats
- Pixel-domain watermark removal and C2PA “soft binding” remain out of scope, so stripped files may still carry invisible image or re-linkable provenance signals.
- Layer B rewrite degrades tone and precision; the README explicitly questions whether rewriting premium model output with a cheaper model defeats the purpose of using the premium model in the first place.
- SynthID scoring requires manually cloning and setting up an upstream research repository under a non-commercial license; it is not bundled.
Verdict
Worth a look if you need to sanitize your own AI-generated drafts for privacy or archival hygiene, and you value an honest threat model over snake oil. Skip it if you need guaranteed, certified removal of vendor watermarks or pixel-level image cleaning.
Frequently asked
- What is guillaumemeyer/watermarks-remover?
- Strip AI provenance marks from text and files you own, with an unusually honest accounting of what actually disappears and what merely gets rewritten.
- Is watermarks-remover open source?
- Yes — guillaumemeyer/watermarks-remover is open source, released under the MIT license.
- What language is watermarks-remover written in?
- guillaumemeyer/watermarks-remover is primarily written in Python.
- How popular is watermarks-remover?
- guillaumemeyer/watermarks-remover has 17.1k stars on GitHub.
- Where can I find watermarks-remover?
- guillaumemeyer/watermarks-remover is on GitHub at https://github.com/guillaumemeyer/watermarks-remover.