A Janitor for AI Fingerprints on Content You Own
A stdlib-Python service that strips multi-vendor AI provenance marks—from invisible Unicode to C2PA metadata—from files you already own.
A stdlib-only Python service and agent skill strip multi-vendor AI provenance marks from text and files, drawing a sharp line between deterministic byte surgery and the quality cost of best-effort rewriting.

What it does
This project sanitizes text and files to remove AI vendor provenance traces, including invisible Unicode characters, statistical text watermarks, and embedded metadata like C2PA, EXIF, and XMP. It targets marks left by Claude, Gemini, OpenAI, and open-LLM systems across formats such as PNG, JPEG, PDF, DOCX, HTML, and Markdown. The core is an HTTP service built on Python 3.10+ with no external dependencies.
The interesting bit
The agent skill ships no actual code—it is a thin markdown client that drives the cleaning machinery over HTTP, so the host running your AI agent needs no Python installed. Meanwhile, the service guards against accidental corruption by refusing to treat binary files as text and never auto-cleaning unrecognized formats.
Key highlights
- Deterministically strips Layer A invisible Unicode (bidi, tag chars, exotic spaces) and optionally rewrites Layer B statistical watermarks via external model hooks.
- Cleans metadata from an unusually broad list of containers and media, including spreadsheets, presentations, EPUB, and audio/video files.
- Detection is decoupled from cleaning: inspect and score inputs/outputs via separate endpoints without unexpectedly calling vendor APIs.
- Batch inspect and clean endpoints process up to 50 files per request, with per-file error isolation so one malformed entry does not abort the queue.
- Optional heavy backends—MarkLLM, MarkDiffusion, and a SynthID scorer—are available as separate Docker profiles but are not required for core operation.
Caveats
- Advanced pixel-level removal and the reverse-SynthID scorer cannot be published as prebuilt images due to upstream licensing (non-commercial or absent licenses), so they must be built locally.
- The Claude text detector is a placeholder seam waiting for Anthropic to ship its announced watermark detection API.
- Statistical text rewriting defaults to printing a prompt; actual paraphrasing requires configuring an external model backend such as Ollama or an API.
Verdict
Useful for developers, publishers, or privacy-conscious teams who redistribute AI-assisted content and want to sanitize provenance metadata before release. Not for users who need a guaranteed, forensically certified stripper or a point-and-click interface.
Frequently asked
- What is Leutenegger/watermarks-remover?
- A stdlib-Python service that strips multi-vendor AI provenance marks—from invisible Unicode to C2PA metadata—from files you already own.
- Is watermarks-remover open source?
- Yes — Leutenegger/watermarks-remover is open source, released under the MIT license.
- What language is watermarks-remover written in?
- Leutenegger/watermarks-remover is primarily written in Python.
- How popular is watermarks-remover?
- Leutenegger/watermarks-remover has 934 stars on GitHub.
- Where can I find watermarks-remover?
- Leutenegger/watermarks-remover is on GitHub at https://github.com/Leutenegger/watermarks-remover.