Skip to main content

AI Text Watermark Audit

CI License: MIT

Local-first tools for examining invisible signals in text and testing claims about AI text watermarks. The first research target is Claude; the scanner itself is provider-neutral.

简体中文 · Claude watermark notes · Methodology · FAQ

Why this exists

Anthropic says supported Claude models embed an imperceptible watermark in generated text. It has not yet published the technical detector required to verify that statistical signal. This project keeps two questions separate:

  1. Does a document contain observable Unicode or formatting signals?
  2. Does an official detector verify a provider watermark?

Today, textmark can answer the first question. For Claude's model-level watermark, it reports the public evidence and an honest not-publicly-documented detector status instead of guessing.

Install

Python 3.10 or newer is required.

pipx install git+https://github.com/steven-panxd/ai-text-watermark-audit.git

For development:

git clone https://github.com/steven-panxd/ai-text-watermark-audit.git
cd ai-text-watermark-audit
python -m pip install -e .

Use

Scan a UTF-8 file:

textmark scan draft.txt

Produce JSON and fail CI on warning-level findings:

textmark scan draft.txt --json --fail-on warning

Compare two versions:

textmark compare original.txt edited.txt --json

Show sourced vendor claims and detector availability:

textmark claims

The scanner currently reports:

  • zero-width and format characters;
  • bidirectional text controls;
  • Unicode tag characters;
  • unusual spaces and variation selectors;
  • mixed Latin/Cyrillic or Latin/Greek tokens;
  • exact positions, Unicode names, escaped values, and SHA-256 hashes.

It runs locally, has no runtime dependencies, and does not upload text.

What a finding means

A hidden character is not proof that text was generated by AI. Many invisible characters have legitimate uses in typography, emoji, and non-Latin writing systems. Conversely, a clean scan does not prove human authorship and does not rule out a statistical watermark.

The report is forensic input, not an authorship verdict.

Current Claude status

As of 14 August 2026:

  • Anthropic says Claude models launched on or after 2 August 2026 support machine-readable marking at launch.
  • It says older models are being updated.
  • Marking applies worldwide on supported models.
  • Anthropic has not yet published technical documentation for third-party detection.

Primary source: How Claude marks AI-generated content.

Roadmap

  • A stable detector-adapter interface for official vendor tools
  • Corpus manifests and reproducible robustness runs
  • File provenance inspection for supported formats
  • Exportable Markdown and SARIF reports
  • Multilingual false-positive fixtures

Development

python -m unittest discover -s tests -v

See CONTRIBUTING.md before proposing a detector or vendor claim. Security-sensitive findings should follow SECURITY.md.

License

MIT. This project is independent and is not affiliated with Anthropic or other model providers.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ai_text_watermark_audit-0.1.0.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ai_text_watermark_audit-0.1.0-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file ai_text_watermark_audit-0.1.0.tar.gz.

File metadata

  • Download URL: ai_text_watermark_audit-0.1.0.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ai_text_watermark_audit-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2efad380e140ee2e3ec2b59fd9a424234180638abad82b5da3f6bdf4becceadf
MD5 1a96884d45adef277b13d7cda89cb8a3
BLAKE2b-256 643fc8f511a5e7b83f4f11a5bb48030a43abf840eaafd9fd8e21446276cf5cd6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_text_watermark_audit-0.1.0.tar.gz:

Publisher: release.yml on steven-panxd/ai-text-watermark-audit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ai_text_watermark_audit-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ai_text_watermark_audit-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 26efd3da19a6cd2cb10922ad093db602a91cc3c27332516ec860569754144d93
MD5 5b112e99756ae09f6b9b702e0fcc9355
BLAKE2b-256 21ab891e94a2d6786f6b21735de02ae1263e8d52cf078d1208763125bfacb217

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_text_watermark_audit-0.1.0-py3-none-any.whl:

Publisher: release.yml on steven-panxd/ai-text-watermark-audit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page