Baoyu Compress Image

作者 jimliu1567581c26ec无许可证26K 个星标收录于 2026年10月8日更新于 2026年10月8日仓库4周前更新

Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to "compress image", "optimize image", "convert to webp", or reduce image file size.

包含脚本Design & Creative
AI 生成的概览

使用可用工具将图片压缩为 WebP、PNG 或 JPEG,支持质量与递归选项。

功能
运行一个 TypeScript 命令行脚本,压缩单个图片文件或整个目录中的图片,并转换为 WebP(默认)、PNG 或 JPEG。它会从可用工具(sips、cwebp、ImageMagick、Sharp)中选择合适的一个,支持质量设置、递归处理子目录、保留原文件以及 JSON 输出。它还可以读取可选的 EXTEND.md 偏好文件,以确定默认格式、质量和是否保留原文件。
适用场景
当用户要求压缩图片、优化图片、将图片转换为 WebP 或减小图片文件体积时使用,也适用于批量处理图片目录。
运行要求
需要 Bun 运行时或 npx(用于运行 bun);依赖 sips、cwebp、ImageMagick 或 Sharp 中至少一个可用。附带可执行脚本 scripts/main.ts。可选从项目、XDG 或用户主目录读取 EXTEND.md 配置文件。

Image Compressor

Compresses images using best available tool (sips → cwebp → ImageMagick → Sharp).

Script Directory

Scripts in scripts/ subdirectory. {baseDir} = this SKILL.md's directory path. Resolve ${BUN_X} runtime: if bun installed → bun; if npx available → npx -y bun; else suggest installing bun. Replace {baseDir} and ${BUN_X} with actual values.

ScriptPurpose
scripts/main.tsImage compression CLI

Preferences (EXTEND.md)

Check EXTEND.md in priority order — the first one found wins:

PriorityPathScope
1.baoyu-skills/baoyu-compress-image/EXTEND.mdProject
2${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.mdXDG
3$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.mdUser home

If none found, use defaults.

EXTEND.md supports: Default format, default quality, keep-original preference.

Usage

bash
${BUN_X} {baseDir}/scripts/main.ts <input> [options]

Options

OptionShortDescriptionDefault
<input>File or directoryRequired
--output-oOutput pathSame path, new ext
--format-fwebp, png, jpegwebp
--quality-qQuality 0-10080
--keep-kKeep originalfalse
--recursive-rProcess subdirsfalse
--jsonJSON outputfalse

Examples

bash
# Single file → WebP (replaces original)${BUN_X} {baseDir}/scripts/main.ts image.png
# Keep PNG format${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep
# Directory recursive${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75
# JSON output${BUN_X} {baseDir}/scripts/main.ts image.png --json

Output:

image.png → image.webp (245KB → 89KB, 64% reduction)

Extension Support

Custom configurations via EXTEND.md. See Preferences section for paths and supported options.

来源与署名

来源:jimliu/baoyu-skills位于skills/baoyu-compress-image提交1567581

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架