eu-act-check
CLI compliance scanner for EU AI Act Article 50 โ scans files for C2PA manifests, EXIF metadata, and AI disclosure text patterns.
eu-act-check ๐
EU AI Act Article 50 compliance scanner โ Scan files for C2PA provenance manifests, EXIF/XMP AI generation metadata, and synthetic text markers. Identify compliance gaps before regulators do.
The Problem
August 2, 2026 โ the EU AI Actโs transparency requirements under Article 50 take full effect. Any AI-generated or deepfake content distributed in the EU must carry:
- C2PA provenance manifests (Content Credentials) embedded in the file
- Metadata declarations identifying the AI tool used to create it
- Disclosure statements for AI-generated text
Failure is not optional โ penalties can reach 3% of global annual turnover or โฌ15 million.
eu-act-check scans your file tree now and tells you exactly whatโs missing and how to fix it, so August 2 doesnโt catch you off guard.
Quickstart
pip install eu-act-check
# Scan a directory (recursive)
eu-act-check scan ./content/ --recursive
# Quick CI check โ exit 0 (pass) or 1 (warn/fail)
eu-act-check check ./blog-post.md
# Deep dive into one file
eu-act-check inspect ./hero-image.jpg
CLI Reference
scan โ Scan files or directories
eu-act-check scan <target> [--recursive] [--format table|json] [--remediate]
| Argument | Description |
|---|---|
target | File or directory to scan (required) |
--recursive, -r | Scan directories recursively |
--format, -f | Output format: table (default) or json |
--remediate | Show remediation instructions for failing files |
inspect โ Deep dive on one file
eu-act-check inspect <file>
Shows every detectorโs findings for a single file with full detail and remediation.
check โ CI mode
eu-act-check check <file>
Returns exit code 0 (pass) or 1 (warn/fail). Designed for CI pipeline gates.
Detection Layers
| Layer | What It Checks | File Types | Standard |
|---|---|---|---|
| C2PA | Embedded provenance manifests | JPEG, PNG, WebP, MP4, audio, PDF | C2PA ISO / Content Credentials |
| EXIF/XMP/IPTC | AI generation tool signatures | JPEG, PNG, WebP | XMP.xmp.GenerateTool, IPTC.DigitalSourceType |
| Text patterns | AI disclosure markers, watermark comments | .md, .txt, .html, .json, .yaml, .xml, .csv | 18 regex patterns |
Architecture
โญโโโโโโโโโโโโโโโฎ โญโโโโโโโโโโโโโโโฎ โญโโโโโโโโโโโโโโโโโฎ
โ โ โ โ โ โ
โ cli.py โโโโโ>โ scanner.py โโโโโ>โ compliance.py โ
โ (Typer) โ โ (pathspec) โ โ (aggregator) โ
โ โ โ โ โ โ
โฐโโโโโโโโโโโโโโโฏ โฐโโโโโโโโโโโโโโโฏ โฐโโโโโโโโฌโโโโโโโโโฏ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโ
โ โญโโโโโโโโโโโฎ โ โญโโโโโโโโโโโฎโ
โ โ c2pa.py โ โ โ table.py โโ
โ โโโโโโโโโโโโค โ โโโโโโโโโโโโคโ
โ โ exif.py โ โ โ json_rep โโ
โ โโโโโโโโโโโโค โ โฐโโโโโโโโโโโฏโ
โ โtext_patt โ โ โ
โ โฐโโโโโโโโโโโฏ โ โ
โ detectors/ โ reporters/ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโ
Use Cases
๐ Pre-deployment audit
eu-act-check scan ./assets/ --recursive --remediate > compliance-report.txt
๐ CI/CD gate
# .github/workflows/eu-compliance.yml
steps:
- uses: actions/checkout@v4
- run: pip install eu-act-check
- run: eu-act-check check ./dist/ --recursive
Development
git clone https://github.com/vikasudasi/eu-act-check.git
cd eu-act-check
pip install -e ".[dev]"
make lint # Ruff linting
make typecheck # mypy type checking
make test # 87 tests, 85% coverage