Install
openclaw skills install image-metadata-cleanerClean privacy-sensitive metadata (C2PA, EXIF, XMP, IPTC, GPS) from user-owned images by writing sanitized copies. For privacy hygiene and file preparation.
openclaw skills install image-metadata-cleanerClean privacy-sensitive metadata from user-owned images by writing sanitized copies. Designed for legitimate privacy hygiene, file preparation, and reproducible publishing workflows.
Use only for: images you own or are authorized to process, for privacy protection, file-size optimization, and clean publishing.
metadata-cleaned/ subdirectoryUser: clean metadata from this image: photo.png
User: remove EXIF data from IMG_2024.jpg
User: clean metadata from all images in "C:\Users\me\Downloads"
User: remove privacy data from /path/to/folder
Confirm the task is for privacy hygiene on images the user owns or is authorized to process.
Preview with dry-run (optional):
uv run --with "pillow>=10.0" scripts/strip.py "<path>" --dry-run
Run the cleanup:
uv run --with "pillow>=10.0" scripts/strip.py "<path>" --manifest
Options:
-o <path> — Output file path (single file only)--output-dir <dir> — Output directory (batch mode)-f preserve|jpg|png — Output format (default: preserve — JPEG stays JPEG, others become PNG)-q <1-100> — JPEG quality (default: 95)--recursive — Process subdirectories--overwrite — Overwrite existing output (only after user confirmation)--dry-run — Preview without writing files--manifest [path] — Write JSON manifestIf uv is not available:
pip install "pillow>=10.0" && python scripts/strip.py "<path>" --manifest
Report results:
Note: this removes file-level metadata only. Pixel-level watermarks and external platform records are outside the scope.
| Error | Cause | Fix |
|---|---|---|
| "No supported image files found" | Folder has no matching extensions | Check input path and file types |
| "Output already exists" | Explicit output path exists | Use --overwrite after user confirmation |
| "Refusing to overwrite input file" | Output path = input path | Choose a different output path |
| "Unsupported image extension" | File extension not in supported list | Use PNG, JPEG, WebP, BMP, or TIFF |
| "cannot identify image file" | Corrupted or non-image file | Skip and continue with other files |
| Pillow ImportError | Missing dependency | Run pip install "pillow>=10.0" |
| Metadata Type | Notes |
|---|---|
| EXIF | Camera, GPS, device tags. Orientation applied before saving. |
| XMP | Adobe and application metadata |
| IPTC/Photoshop | Press and photo metadata |
| ICC Profile | Color profile (not copied to output) |
| C2PA/JUMBF | Provenance containers removed by re-encoding |
preserve — JPEG inputs stay JPEG, others written as PNG{name}-clean.{ext} (e.g., photo-clean.png)metadata-cleaned/ subdirectory.png, .jpg, .jpeg, .webp, .bmp, .tiff, .tif