名称: baoyu-compress-image 描述: 将图像压缩为WebP(默认)或PNG,自动选择工具。当用户要求“压缩图像”、“优化图像”、“转换为webp”或减少图像文件大小时使用。
图像压缩器
使用最佳可用工具压缩图像(sips → cwebp → ImageMagick → Sharp)。
脚本目录
脚本在 scripts/ 子目录中。将 ${SKILL_DIR} 替换为此SKILL.md的目录路径。
| 脚本 | 用途 |
|---|---|
scripts/main.ts |
图像压缩CLI |
偏好设置 (EXTEND.md)
使用Bash检查EXTEND.md的存在(优先级顺序):
# 首先检查项目级
test -f .baoyu-skills/baoyu-compress-image/EXTEND.md && echo "project"
# 然后用户级(跨平台:$HOME在macOS/Linux/WSL上工作)
test -f "$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md" && echo "user"
┌────────────────────────────────────────────────────────┬───────────────────┐ │ 路径 │ 位置 │ ├────────────────────────────────────────────────────────┼───────────────────┤ │ .baoyu-skills/baoyu-compress-image/EXTEND.md │ 项目目录 │ ├────────────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md │ 用户家目录 │ └────────────────────────────────────────────────────────┴───────────────────┘
┌───────────┬───────────────────────────────────────────────────────────────────────────┐ │ 结果 │ 操作 │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ 找到 │ 读取、解析、应用设置 │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ 未找到 │ 使用默认值 │ └───────────┴───────────────────────────────────────────────────────────────────────────┘
EXTEND.md 支持:默认格式 | 默认质量 | 保持原文件偏好
使用
npx -y bun ${SKILL_DIR}/scripts/main.ts <input> [options]
选项
| 选项 | 短选项 | 描述 | 默认值 |
|---|---|---|---|
<input> |
文件或目录 | 必需 | |
--output |
-o |
输出路径 | 相同路径,新扩展名 |
--format |
-f |
webp, png, jpeg | webp |
--quality |
-q |
质量 0-100 | 80 |
--keep |
-k |
保持原文件 | false |
--recursive |
-r |
处理子目录 | false |
--json |
JSON输出 | false |
示例
# 单个文件 → WebP(替换原文件)
npx -y bun ${SKILL_DIR}/scripts/main.ts image.png
# 保持PNG格式
npx -y bun ${SKILL_DIR}/scripts/main.ts image.png -f png --keep
# 目录递归
npx -y bun ${SKILL_DIR}/scripts/main.ts ./images/ -r -q 75
# JSON输出
npx -y bun ${SKILL_DIR}/scripts/main.ts image.png --json
输出:
image.png → image.webp (245KB → 89KB, 64% reduction)
扩展支持
通过EXTEND.md自定义配置。查看偏好设置部分以了解路径和支持的选项。