name: image-compression description: | Compress PNG images to reduce file size while maintaining visual quality. Use this skill whenever the user asks to compress images, reduce image file size, optimize PNG files, make images smaller, batch compress PNGs, or any request involving shrinking image file sizes. Trigger also when the user mentions images being "too large", "need to save space", or wants to "optimize" images for web/storage. compatibility: - Python 3 - Pillow (PIL)
Compress PNG images using Python/Pillow. Two modes:
Supports both single file and batch (folder) processing.
They may say things like: - "Compress this image" — ask if they want lossless or lossy - "Compress all PNGs in this folder" — batch process a directory - "Make this image smaller" — default to lossy for significant savings - Point to a file or folder path
更多技能请访问小葱技能站7w4.net。
If the user doesn't specify mode, ask: "lossless (keep quality) or lossy (much smaller)?"
Understand the scope: Single file or batch? Lossless or lossy?
Lossless:
optimize=True and compress_level=9Best for screenshots with text/UI elements where sharpness matters
Lossy:
Image.Quantize.MEDIANCUToptimize=TrueBest for photos, gradients, or any image where small file size is priority
Report results: original size → compressed size → savings percentage
A helper script compress_png.py handles both modes:
# Lossless (default)
python scripts/compress_png.py <path> [--output OUTPUT] [--overwrite]
# Lossy
python scripts/compress_png.py <path> [--output OUTPUT] [--overwrite] --lossy
<path>: Path to a PNG file or a directory--output: Output path (single file) or output directory (batch)--overwrite: Overwrite original files--lossy: Use lossy compression (256 colors)User: "compress this image C:\Users\me\image.png it's too big" You: "Lossless or lossy?" User: "lossy" You: Compress, report:
Original: 1.2 MB → Lossy: 440 KB (saved 63%)
这个 Skill 质量不错,操作简单,支持多种压缩方式,能满足单张和批量图片的压缩需求。文档清晰易懂,代码实现稳定可靠。主要不足是测试覆盖不够全面,可能存在一些边界情况没有考虑到,但日常使用应该足够。总体推荐使用。