feat: folder-wide media metadata stripping + auto-detect#5
Open
I7T5 wants to merge 2 commits into
Open
Conversation
Extend Meta-Scraper from single-file image cleaning into a repo-oriented privacy tool for media headed to a public remote. - Add "Strip Metadata from All Media in Folder" command (Command Palette + folder right-click): batch-strips the workspace/folder with a cancellable progress bar, sharing one ExifTool process and skipping unsupported files. - Add automatic detection of newly added media via a FileSystemWatcher, gated to Git repos that have a remote origin. Behavior configurable: strip / ask / do nothing. - First-run prompt (per workspace) to opt into auto-detection and pick its behavior; writes the new settings. - Add settings: metascraper.autoDetectNewMedia, metascraper.onNewMedia. - Refactor the exiftool strip core into a shared stripFile() used by the folder, single-file, and watcher paths (in-place via -overwrite_original). - Broaden supported media to GIFs, more image formats, and MP4/MOV/M4V video. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
feat: folder-wide media metadata stripping + auto-detect
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hi Natalie! I was trying to find something that will strip all my metadata from the media on my personal website, and I found your extension. Thanks for creating and open-sourcing it! I asked Claude Code to add a bulk strip command in the command palette, as well as an auto-strip option for folders/repos with remote origin. Hope it's running and helpful. Let me know if anything's not working.
The following is from Claude
What & why
Media files (images, GIFs, videos) carry metadata — EXIF GPS, device serials, timestamps, author names — that silently leaks when a repo is pushed to a public remote. This builds on Meta-Scraper's single-file image cleaning to make it a repo-oriented privacy tool.
Changes
FileSystemWatcher, gated to Git repositories that have a remote origin (the "made public online" case). Behavior is configurable — strip / ask / do nothing.metascraper.autoDetectNewMedia(checkbox) andmetascraper.onNewMedia(strip / ask / do nothing).stripFile()used by the folder, single-file, and watcher paths (in-place via-overwrite_original)..tif/.heic/.heif/.bmp), and MP4/MOV/M4V video.Verification
npm run lint— clean (one pre-existing warning intest-image/example-usage.js, untouched).npm test— passes; logs confirm the extension activates in a real Extension Host.stripFileoperation, asserted all 11 sensitive tags removed and the image stayed a valid JPEG.🤖 Generated with Claude Code