A partir de agosto de 2026, cada bloque de texto generado por Claude incorpora una marca de agua invisible. No aparece en el corrector ortográfico, no se ve al inspeccionar el documento y sobrevive al copiar y pegar el contenido desde Claude a otra aplicación. Anthropic la diseñó para asociar el texto con el modelo que lo generó mediante patrones distribuidos en las propias elecciones de palabras.
Si eres propietario del contenido y necesitas limpiar caracteres ocultos o metadatos de archivos, el proyecto open source watermarks-remover ofrece scripts para inspeccionar y procesar texto, imágenes y documentos. Esta guía explica qué puede eliminar realmente, qué no puede garantizar y cómo ejecutar cada paso de forma verificable.
Este flujo está orientado a privacidad e higiene de archivos propios. Eliminar señales de procedencia para incumplir políticas académicas, contratos o requisitos de divulgación puede tener consecuencias legales, contractuales o disciplinarias.
TL;DR
- Marca estadística de Claude: no es un carácter oculto. Claude sesga algunas elecciones de tokens según una clave secreta, dejando una firma estadística detectable en textos suficientemente largos.
- Qué sobrevive: la señal estadística sobrevive al copiar y pegar, pero se degrada con edición intensa, parafraseo y traducción.
- Texto corto y código: suelen contener una señal débil o insuficiente. Los formateadores y linters reducen todavía más la señal en código.
-
watermarks-remover: toolkit MIT para Python 3.10+ que trabaja en dos capas:
- Capa A: elimina Unicode invisible, espacios inusuales, controles bidireccionales y caracteres de etiqueta.
- Capa B: prepara una reescritura del texto para alterar la distribución de palabras. No es una garantía y puede degradar la prosa.
- Archivos: limpia C2PA, EXIF, XMP y propiedades de documentos en PNG, JPEG, SVG, PDF, DOCX, ODT, HTML y Markdown.
- Regla práctica: la limpieza determinista de caracteres y metadatos es comprobable. Eliminar una marca estadística implica modificar el texto visible.
Qué es realmente la marca de agua de Claude
La marca de agua de texto de Claude no consiste en espacios de ancho cero, glifos invisibles ni caracteres ocultos entre palabras.
En su lugar, la señal se distribuye en la selección de tokens. Durante la generación, el modelo puede elegir entre varias continuaciones estadísticamente similares. La marca de agua sesga algunas de esas elecciones usando una clave secreta. En un texto largo, el conjunto de elecciones forma una firma que un detector compatible puede identificar.
Esto tiene dos implicaciones prácticas:
Copiar y pegar no la elimina.
Como la señal está en las palabras elegidas y no en metadatos adjuntos, mover el texto entre aplicaciones conserva el patrón.Editar el texto la degrada.
Reescribir frases, traducir, resumir o combinar el resultado con redacción propia modifica las elecciones de tokens y reduce la señal estadística.
Anthropic implementó este mecanismo a nivel de modelo a partir del 2 de agosto de 2026. Esto incluye aplicaciones de Claude, API, Claude Code y accesos de terceros mediante AWS, Google Cloud y Microsoft Foundry. Anthropic también ha indicado que ofrecerá una API de detección.
Para contexto sobre cambios en modelos y políticas de acceso de Anthropic, consulta Fable 5 Is Down for Everyone.
Una detección positiva indica que el texto podría haber pasado por Claude; no demuestra por sí sola fraude, autoría exclusiva ni incumplimiento. Corrección, traducción y resumen también pueden dejar rastros similares.
Dos sistemas de marcado, dos tratamientos distintos
watermarks-remover separa el trabajo por capas porque los caracteres invisibles, los metadatos de archivo y las marcas estadísticas no son el mismo problema.
Capa A: limpieza determinista de caracteres
Esta capa elimina contenido Unicode no visible o potencialmente problemático:
- Espacios de ancho cero.
- Espacios en blanco no estándar.
- Controles de texto bidireccional.
- Caracteres de etiqueta Unicode.
La limpieza se ejecuta sin modelos y no reescribe la prosa visible. Por eso es rápida, reproducible y fácil de verificar.
Capa B: reescritura estadística
La marca estadística de Claude está vinculada a la elección de palabras. No existe un byte, carácter o campo de metadatos que puedas borrar sin cambiar el texto.
Por ese motivo, la Capa B prepara una reescritura del contenido. El propio proyecto la presenta como un esfuerzo de buena fe, no como una garantía de eliminación. La reformulación puede:
- Aplanar el estilo.
- Alterar matices técnicos.
- Introducir errores de precisión.
- Requerir revisión humana completa.
Metadatos de archivos
El toolkit también elimina metadatos y propiedades incrustadas:
- C2PA.
- EXIF.
- XMP.
- Propiedades de documentos.
Los formatos compatibles incluyen PNG, JPEG, SVG, PDF, DOCX, ODT, HTML y Markdown.
C2PA es un manifiesto firmado de procedencia de la Coalition for Content Provenance and Authenticity. A diferencia de una marca estadística de texto, es un dato a nivel de archivo y normalmente se puede inspeccionar y eliminar de forma determinista.
El proyecto cubre mecanismos de Claude, Gemini/SynthID-Text, OpenAI y marcas de código abierto estilo Kirchenbauer con una arquitectura similar. Las marcas de agua en píxeles —por ejemplo, SynthID aplicado directamente a una imagen— no se eliminan con este flujo; el proyecto puede puntuarlas mediante una configuración externa de detección inversa.
Cuándo la señal ya suele ser débil
Antes de procesar contenido, evalúa si realmente necesitas hacerlo.
Pasajes cortos
Unas pocas oraciones suelen no aportar suficientes elecciones de tokens para que un detector alcance alta confianza estadística.
Código fuente
El código tiene opciones de tokens mucho más restringidas que la prosa. Además, herramientas como formateadores, linters y refactorizadores cambian el resultado antes de que llegue a producción.
Por eso, en código generado o asistido por Claude Code, la señal puede ser débil o irrelevante después de un flujo normal de desarrollo.
Texto ya editado
Si el borrador fue revisado, reestructurado o combinado con escritura propia, es posible que el patrón original ya se haya degradado.
Archivos con C2PA
Una conversión de formato, un guardado nuevo o una exportación pueden eliminar metadatos de procedencia. Aun así, conviene usar un proceso explícito e inspeccionable cuando necesitas consistencia.
Instalación de watermarks-remover
El proyecto funciona como una skill de agente y como un conjunto de scripts Python independientes.
Requisitos:
- Python 3.10 o superior.
- Los scripts principales usan la biblioteca estándar.
- No necesitas instalar dependencias para la limpieza básica de texto y metadatos.
Clona el repositorio:
git clone https://github.com/guillaumemeyer/watermarks-remover.git
cd watermarks-remover
Si usas un entorno compatible con skills tipo Grok, enlaza la skill:
mkdir -p ~/.grok/skills
ln -sfn "$(pwd)/skills/remove-ai-marks" ~/.grok/skills/remove-ai-marks
Para ejecutar los scripts directamente, define una variable con la ruta:
export SCRIPTS="$(pwd)/skills/remove-ai-marks/scripts"
Herramientas opcionales:
-
c2patoolpara inspeccionar manifiestos C2PA. -
exiftoolpara limpiar metadatos de imagen residuales.
No son necesarias para el flujo principal, pero pueden ayudar en tareas de auditoría.
Inspecciona antes de modificar
No proceses archivos a ciegas. Primero identifica qué contiene el archivo.
python3 "$SCRIPTS/inspect_file.py" draft.md
El inspector informa sobre caracteres invisibles, bloques de metadatos y manifiestos de procedencia sin modificar el contenido.
Úsalo como primer paso en cualquier flujo:
- Inspecciona el archivo original.
- Guarda el informe.
- Limpia solo lo necesario.
- Inspecciona la salida.
- Conserva el original hasta completar la verificación.
Limpiar texto: Capa A
Para eliminar caracteres invisibles y controles Unicode sin alterar la prosa visible, usa clean_text.py.
python3 "$SCRIPTS/clean_text.py" draft.md -o draft.cleaned.md --stats
La opción --stats muestra un resumen de los elementos encontrados y eliminados.
Este comando puede eliminar:
- Unicode invisible.
- Espacios exóticos.
- Controles bidireccionales.
- Caracteres de etiqueta.
La opción -o escribe la salida en un archivo nuevo. Evita sobrescribir el original hasta verificar el resultado.
diff -u draft.md draft.cleaned.md
Para archivos de texto, un diff te ayuda a confirmar que los únicos cambios corresponden a caracteres no visibles o normalizaciones esperadas.
Limpiar metadatos de archivos
Para imágenes y documentos, usa clean_file.py.
python3 "$SCRIPTS/clean_file.py" photo.png -o photo.cleaned.png
El script admite PNG, JPEG, SVG, PDF, DOCX, ODT, HTML y Markdown, y procesa C2PA, EXIF, XMP y propiedades de documento.
Si tienes exiftool, puedes realizar una limpieza adicional de etiquetas de imagen:
exiftool -all= photo.cleaned.png
Ten en cuenta que este comando modifica metadatos. Ejecuta primero una inspección y conserva una copia del archivo original.
Capa B: reescritura y compensaciones
La marca estadística de texto no se elimina borrando caracteres. Requiere cambiar el contenido visible.
rewrite_text.py prepara un pase de reformulación:
python3 "$SCRIPTS/rewrite_text.py" draft.md --backend print-prompt --strength paraphrase
Con --backend print-prompt, el script imprime una instrucción de reescritura en lugar de enviar el texto directamente a un modelo. Esto te permite revisar y controlar el paso posterior.
La opción --strength ajusta la intensidad de la reformulación.
Antes de usar esta capa, considera sus costes:
- Estilo: la redacción específica puede perder voz o intención.
- Precisión: una paráfrasis de contenido técnico puede cambiar el significado.
- Revisión: necesitas validar hechos, ejemplos, código, nombres de APIs y restricciones.
- Coste: usar otro modelo para reescribir texto puede añadir consumo y complejidad al flujo.
Para la mayoría de flujos legítimos, la opción más razonable es:
- Ejecutar la Capa A para higiene de texto.
- Limpiar metadatos de archivo si es necesario.
- Usar reescritura solo cuando exista una necesidad concreta y puedas revisar el resultado.
Verifica la salida
Después de limpiar un archivo, vuelve a inspeccionarlo:
python3 "$SCRIPTS/inspect_file.py" draft.cleaned.md
Para revisar específicamente C2PA:
c2patool photo.cleaned.png
La verificación de caracteres invisibles y metadatos es directa porque puedes inspeccionar el archivo resultante.
La verificación de una marca estadística de texto es diferente: no dispones de la clave privada de detección de Anthropic. Cuando la API de detección anunciada esté disponible, será la referencia para comprobar ese tipo de señal.
Si automatizas inspecciones de contenido o validaciones relacionadas con modelos, puedes integrarlas en pruebas repetibles de API. Herramientas como Apidog permiten estandarizar solicitudes, aserciones y ejecuciones de verificación. Para un patrón de pruebas de endpoints de agentes, consulta Cómo probar agentes de IA a través de una API.
Salvaguardias legales y éticas
El uso apropiado de estas herramientas se centra en privacidad e higiene de contenido propio, por ejemplo:
- Eliminar caracteres de seguimiento de borradores propios.
- Limpiar EXIF, XMP o propiedades de documentos antes de publicar.
- Quitar metadatos de procedencia de archivos que posees y gestionas.
- Normalizar texto antes de introducirlo en una canalización de publicación.
No es un mecanismo para evitar obligaciones de divulgación.
Evita usarlo para:
- Deshonestidad académica: si una institución exige declarar el uso de IA o prohíbe entregas generadas por IA, ocultarlo puede constituir mala conducta.
- Incumplimientos contractuales: clientes y plataformas pueden exigir transparencia sobre el uso de IA.
- Falsa atribución: presentar contenido de IA como trabajo humano cuando ello engaña materialmente a otra parte.
Además, la detección no determina por sí sola la autoría: una señal positiva no prueba fraude y una señal ausente no prueba origen humano.
Si tu objetivo es controlar por completo la procedencia y las políticas de tus modelos, considera opciones autoalojadas. Consulta Los mejores LLM locales para ejecutar en 2026.
Preguntas frecuentes
¿Puedo buscar y eliminar caracteres ocultos de la marca de agua de Claude?
No. La marca estadística de texto no está formada por caracteres ocultos. Se basa en patrones de elección de palabras. La Capa A puede eliminar caracteres invisibles introducidos por otras herramientas, pero es un mecanismo distinto.
¿Copiar y pegar texto de Claude elimina la marca?
No. La señal estadística viaja con las palabras, no con un campo de metadatos adjunto al documento.
¿watermarks-remover es gratuito?
Sí. Es un proyecto open source con licencia MIT. Los scripts principales requieren Python 3.10+ y la biblioteca estándar.
¿Funciona con salida de Claude Code?
Los scripts pueden ejecutarse sobre archivos de código, pero la señal suele ser débil debido a las restricciones propias del lenguaje y a los cambios realizados por formateadores, linters y refactorizadores.
¿Elimina marcas de agua de imágenes como SynthID?
No elimina marcas aplicadas en el dominio de píxeles. Sí puede limpiar metadatos a nivel de archivo, incluidos C2PA, EXIF y XMP.
¿Es legal eliminar una marca de procedencia?
Depende del contexto. Limpiar metadatos o caracteres de contenido propio no es inherentemente ilegal, pero puede incumplir políticas académicas, contratos o términos de plataforma que exijan divulgar el uso de IA.
¿Cómo verifico que una marca estadística ha desaparecido?
No puedes confirmarlo de forma concluyente sin acceso a una clave o API de detección compatible. En cambio, la limpieza de Unicode, C2PA y otros metadatos sí puede verificarse con inspect_file.py, c2patool y herramientas de inspección de metadatos.

Top comments (0)