Claude now watermarks everything it writes. Here's how to strip it.
The watermark lives in the words Claude picks, so it survives copy-paste and even retyping by hand, and it rides along in the API and Claude Code too. Here's the tool that removes it, how to set it up as a Claude Code skill in a few minutes, and the one honest limit nobody mentions.
→The watermark is a statistical pattern in Claude's word choices, the SynthID approach from a 2024 DeepMind paper. Nothing is hidden in the text, so there are no invisible characters to delete.
→It applies wherever Claude runs: the chat app, the API, and Claude Code in your terminal. Because the mark is the wording itself, copying it out or retyping it by hand keeps it.
→A Paris CTO shipped a remover called watermarks-remover. Over 12,000 GitHub stars in six days, MIT licensed, free.
→The part every 30-second removal video skips: Anthropic never released a detector, so no tool can prove the mark is gone. Rewriting the text with a different model is the only thing that actually touches it.
🔒Drop your email for the full setup
The exact steps to clone the tool, turn it into a Claude Code skill, and run it, plus the honest catch every 30-second remover video skips.
Join 3,000+ builders already getting this. No spam.
THE FULL SETUP — 4 STEPS
01
Know what you're actually removing
Claude's watermark is a pattern in which word it picks between near-equivalent options, settled by a secret key across a whole passage. That means every tool stripping invisible Unicode characters does nothing to it. Only a rewrite of the wording changes the pattern. Start here so you don't waste time on the wrong layer.
02
Clone the repo
The core scripts are Python 3.10 and up, standard library only. No dependencies, nothing to install beyond Python itself.
The repo ships a skill built for Cursor and Grok that calls a running service. Have Claude Code port it into a self-contained skill that runs the bundled scripts directly, so you get a /remove-ai-marks command with nothing to keep running in the background.
Port the remove-ai-marks skill in this repo into a self-contained
Claude Code skill. Bundle the stdlib Python scripts so it runs them
directly with no HTTP service, and install it to ~/.claude/skills/.
That prompt is what built the skill on my own machine. Claude bundles the scripts, wires the SKILL.md, and the command shows up in your menu.
04
Run it, and know its limits
Inspect finds any invisible characters, clean strips them. For Claude's actual watermark, the working step is the rewrite: run the text through a model that is not Claude. Short text carries the least signal, so a caption or a short reply barely holds a mark in the first place.
python3 scripts/inspect_text.py draft.md
python3 scripts/clean_text.py draft.md -o draft.clean.md --stats
# then rewrite draft.clean.md with a non-Claude model
The catch, stated plainly: with no public detector, nobody can certify the mark is fully gone, and a heavy rewrite trades away some of your voice. The tool is verifiable for invisible characters and metadata, and best-effort for the statistical watermark.