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 從公開儲存庫中收錄這些內容。

檢舉或申請下架