Stats
Actions
Tags
Scans local image folders to detect near-duplicate photos with ImageHash and blurry shots with OpenCV Laplacian variance, then previews and removes/moves them.
How this skill is triggered — by the user, by Claude, or both
Slash command
/file-and-image-utilities:remove-similar-imageThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- Scan one local image or a directory tree of local images.
scripts/remove_similar_images.py.doctor if dependency availability is unknown.analyze without --apply as the safe default.--trash-dir before permanent deletion so the user can review results.python3 -m pip install Pillow ImageHash numpy opencv-python-headless
doctor reports missing dependencies, stop and surface the install command instead of pretending the scan ran.python3 scripts/remove_similar_images.py doctor
python3 scripts/remove_similar_images.py analyze \
--input-path /path/to/photos
python3 scripts/remove_similar_images.py analyze \
--input-path /path/to/photos \
--delete-similar \
--delete-blurry \
--trash-dir /path/to/review-trash
python3 scripts/remove_similar_images.py analyze \
--input-path /path/to/photos \
--delete-similar \
--delete-blurry \
--trash-dir /path/to/review-trash \
--apply
python3 scripts/remove_similar_images.py analyze \
--input-path /path/to/photos \
--delete-similar \
--apply
--input-path: source image file or directory.--no-recursive: scan only the top-level directory.--extra-extension: include additional suffixes not covered by default.--limit: cap the number of scanned files for quick tests.--hash-method: phash, dhash, ahash, or whash.--hash-size: larger hashes are stricter and slower.--similar-threshold: maximum Hamming distance considered similar.--blur-threshold: Laplacian-variance cutoff for blurry images.--keep-policy: choose the keeper in each similar group with best, largest, newest, or oldest.--delete-similar: mark non-keeper files in similar groups as removal candidates.--delete-blurry: mark blurry files as removal candidates even when they are unique.--trash-dir: move files into a review directory instead of permanently deleting.--apply: execute removals or moves. Without this flag the script only reports.--report-json: save a machine-readable report for later review.--print-json: print the full report as JSON to stdout.phash with hash_size=8 and similar-threshold=5.100.0.keep-policy=best prefers non-blurry images, then sharper images, then larger images.A is close to B, and B is close to C, they are treated as one group even if A and C are slightly farther apart.--apply.--trash-dir for the first pass on any valuable photo collection.--similar-threshold to be stricter. Raise it when near-duplicates are being missed.--blur-threshold if too many acceptable images are marked blurry. Raise it when obvious blur is missed.scripts/remove_similar_images.pynpx claudepluginhub tiangong-ai/skills --plugin engineering-analysisGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.