baoyu-compress-image について
baoyu-compress-image は、画像ファイルやディレクトリを圧縮するコマンドラインスキルです。出力形式や品質を指定でき、利用可能な画像処理ツールを順に試します。
主な機能
- 01ファイルやディレクトリの圧縮
- 02サブディレクトリの再帰処理
- 03形式と品質の指定
- 04元画像を残すか選択
- 05JSON 形式での出力
- 06EXTEND.md による既定値の設定
活用シーン
- 01画像ディレクトリの一括圧縮
- 02画像を WebP、PNG、JPEG に変換
- 03プロジェクトごとの形式と品質の設定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jst-well-dan/ skill-box --skill baoyu-compress-imageインストール後、Claude Code で/baoyu-compress-imageを入力して読み込まれたか確認します。
同梱ファイルscripts/main.ts
詳細
画像圧縮ツール
利用可能な最適なツール(sips → cwebp → ImageMagick → Sharp)を使って画像を圧縮します。
スクリプトディレクトリ
スクリプトは scripts/ サブディレクトリにあります。${SKILL_DIR} は、この SKILL.md があるディレクトリのパスに置き換えてください。
| スクリプト | 用途 |
|---|---|
scripts/main.ts | 画像圧縮 CLI |
設定(EXTEND.md)
Bash を使って EXTEND.md が存在するか確認します(優先順位順):
# Check project-level first
test -f .baoyu-skills/baoyu-compress-image/EXTEND.md && echo "project"
# Then user-level (cross-platform: $HOME works on 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 |
例
# Single file → WebP (replaces original)
npx -y bun ${SKILL_DIR}/scripts/main.ts image.png
# Keep PNG format
npx -y bun ${SKILL_DIR}/scripts/main.ts image.png -f png --keep
# Directory recursive
npx -y bun ${SKILL_DIR}/scripts/main.ts ./images/ -r -q 75
# JSON output
npx -y bun ${SKILL_DIR}/scripts/main.ts image.png --json
出力:
image.png → image.webp (245KB → 89KB, 64% reduction)
拡張機能のサポート
EXTEND.md でカスタム設定ができます。パスと対応オプションについては、設定セクションを参照してください。