Audit Metadata Privacy
Find disclosure risks without modifying the file. Report categories and severity; do not print sensitive values by default.
Supported containers: PNG, JPEG (EXIF, XMP, IPTC-IIM, COM), WebP, BMFF (MP4/HEIC/AVIF), TIFF, PDF, SVG, OOXML and ODF.
All paths below are relative to this skill's directory. If you are running from
elsewhere, use an absolute path to scripts/audit_metadata.py.
Workflow
Run:
python3 scripts/audit_metadata.py /absolute/path/to/assetReview
findings, which contain categories and evidence locations rather than raw values.Treat
HIGHfindings such as GPS as requiring deliberate review before publication. GPS is also read from EXIF IFD1 (the embedded thumbnail), which commonly retains location after the primary IFD has been scrubbed.If
format_supportedis false, say so explicitly rather than reporting a clean result.Before removing anything, verify whether the field belongs to a signed C2PA manifest.
If a sanitized derivative is needed, preserve the original, document the transformation, and re-run provenance verification on the derivative.
Boundaries
- This skill is audit-only and never rewrites the source.
NONE_OBSERVEDis not a guarantee; the bounded parser can miss encrypted, proprietary, malformed, unsupported, or remotely stored metadata.- Provenance metadata is not automatically a privacy risk.
- Ordinary metadata removal can invalidate a signed asset.
Read references/privacy-boundaries.md before recommending a mutation workflow.