{"id":"d37b8a9d-26cb-45ba-a110-6bd937c53678","entityType":"agent","slug":"clawhub-jimliu-baoyu-compress-image","name":"Baoyu Compress Image","canonicalUrl":"https://www.xpersona.co/agent/clawhub-jimliu-baoyu-compress-image","canonicalPath":"/agent/clawhub-jimliu-baoyu-compress-image","generatedAt":"2026-10-09T21:22:32.583Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-09T09:13:01.697Z","emptyReason":null},"description":"Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to \"compress image\", \"optimize image\", \"convert to webp\", or red... Skill: Baoyu Compress Image Owner: jimliu Summary: Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to \"compress image\", \"optimize image\", \"convert to webp\", or red... Tags: latest:1.117.2 Version history: v1.117.2 | 2026-05-18T02:13:30.712Z | user 1.117.2 - 2026-05-17 Documentation - baoyu-cover-image: ban programmatic text repair on generated bitmaps — disallow ImageMagic","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 3.2K downloads reported by the source. Last updated 10/9/2026.","installCommand":"clawhub skill install s17dfbhg0khk4fvtnx0stqg0yx83j25z:baoyu-compress-image","sourceUrl":"https://clawhub.ai/jimliu/baoyu-compress-image","homepage":"https://clawhub.ai/jimliu/skills/baoyu-compress-image","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/jimliu/baoyu-compress-image","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/jimliu/skills/baoyu-compress-image","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":58,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to \"compress image\", \"optimize image\", \"convert to webp\", or red..."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T09:13:01.697Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T09:13:01.697Z","emptyReason":null},"stars":null,"forks":null,"downloads":3191,"packageName":null,"latestVersion":"1.117.2","tractionLabel":"3.2K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T09:13:01.697Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T09:13:01.697Z","lastCrawledAt":"2026-10-09T09:13:01.697Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-10T09:13:01.697Z","lastVerifiedAt":null,"highlights":[{"version":"1.117.2","createdAt":"2026-05-18T02:13:30.712Z","changelog":"## 1.117.2 - 2026-05-17 ### Documentation - `baoyu-cover-image`: ban programmatic text repair on generated bitmaps — disallow ImageMagick / Pillow / Canvas / SVG / HTML overlays to cover, rewrite, or replace title/subtitle text; regenerate from a corrected prompt or switch to a lower-text or no-title variant instead - `baoyu-article-illustrator`, `baoyu-comic`, `baoyu-image-cards`, `baoyu-xhs-images`, `baoyu-infographic`, `baoyu-slide-deck`: sync the same text-repair ban with skill-specific text categories (labels/captions, dialogue/sound effects, titles/body/tags, headings/data values, slide titles/bullets)","fileCount":4,"zipByteSize":5784},{"version":"1.115.4","createdAt":"2026-05-11T23:47:23.687Z","changelog":"### Documentation - Image generation backend selection: emphasize Codex `imagegen` as the priority runtime-native tool (invoke via the `Skill` tool with `skill: \"imagegen\"`) and forbid SVG/HTML/canvas substitution when no raster backend can be resolved — fall through to asking the user instead of silently emitting code-based art. Updated in `docs/image-generation-tools.md` and inlined into `baoyu-article-illustrator`, `baoyu-comic`, `baoyu-cover-image`, `baoyu-image-cards`, `baoyu-infographic`, `baoyu-slide-deck`, and `baoyu-xhs-images`.","fileCount":3,"zipByteSize":4565},{"version":"1.103.2","createdAt":"2026-04-21T22:01:09.009Z","changelog":"- Clarified EXTEND.md preference lookup order for configuration: project, XDG config, then user home. - Simplified and reformatted the preferences section for easier reference. - Removed redundant shell and PowerShell code snippets; replaced with a streamlined table. - No changes to functionality or options.","fileCount":3,"zipByteSize":4565},{"version":"1.103.1","createdAt":"2026-04-13T16:14:09.152Z","changelog":"## 1.103.1 - 2026-04-13 ### Fixes - `baoyu-markdown-to-html`: decode HTML entities and strip tags from article summary - `baoyu-post-to-weibo`: decode HTML entities and strip tags from article summary","fileCount":3,"zipByteSize":4868},{"version":"1.103.0","createdAt":"2026-04-13T01:19:15.712Z","changelog":"## 1.103.0 - 2026-04-12 ### Features - baoyu-diagram: add multi-diagram mode for article-wide diagram generation ### Fixes - baoyu-article-illustrator: prevent color names and hex codes from appearing as visible text in generated images - baoyu-cover-image: prevent color names and hex codes from appearing as visible text in generated images - baoyu-image-cards: prevent color names from appearing as visible text in generated images - baoyu-post-to-wechat: decode HTML entities and strip tags from article summary","fileCount":3,"zipByteSize":4869},{"version":"1.60.0","createdAt":"2026-03-12T03:49:02.320Z","changelog":"## 1.60.0 - 2026-03-11 ### Features - `baoyu-url-to-markdown`: support reusing existing Chrome CDP instances and fix port detection order ### Fixes - `baoyu-post-to-x`: add missing `fs` import in x-article ### Refactor - Unify all CDP skills to use shared `baoyu-chrome-cdp` package with vendored copies - Simplify CLAUDE.md, move detailed documentation to `docs/` directory - Publish skills directly from synced vendor, removing separate artifact preparation step","fileCount":3,"zipByteSize":4868},{"version":"1.0.0","createdAt":"2026-03-09T16:10:30.400Z","changelog":"- Initial release of image compression skill. - Compresses images to WebP (default), PNG, or JPEG, with automatic tool selection. - Command-line interface supports input files or directories, output format, quality, and recursive processing. - Preference and configuration support through EXTEND.md files at project or user level. - Supports JSON output and option to keep original files.","fileCount":3,"zipByteSize":4867}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17dfbhg0khk4fvtnx0stqg0yx83j25z:baoyu-compress-image","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-09T21:22:32.583Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jimliu-baoyu-compress-image/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-09T09:13:01.697Z","emptyReason":null},"readme":"Skill: Baoyu Compress Image\n\nOwner: jimliu\n\nSummary: Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to \"compress image\", \"optimize image\", \"convert to webp\", or red...\n\nTags: latest:1.117.2\n\nVersion history:\n\nv1.117.2 | 2026-05-18T02:13:30.712Z | user\n\n## 1.117.2 - 2026-05-17\n\n### Documentation\n- `baoyu-cover-image`: ban programmatic text repair on generated bitmaps — disallow ImageMagick / Pillow / Canvas / SVG / HTML overlays to cover, rewrite, or replace title/subtitle text; regenerate from a corrected prompt or switch to a lower-text or no-title variant instead\n- `baoyu-article-illustrator`, `baoyu-comic`, `baoyu-image-cards`, `baoyu-xhs-images`, `baoyu-infographic`, `baoyu-slide-deck`: sync the same text-repair ban with skill-specific text categories (labels/captions, dialogue/sound effects, titles/body/tags, headings/data values, slide titles/bullets)\n\nv1.115.4 | 2026-05-11T23:47:23.687Z | user\n\n### Documentation\n- Image generation backend selection: emphasize Codex `imagegen` as the priority runtime-native tool (invoke via the `Skill` tool with `skill: \"imagegen\"`) and forbid SVG/HTML/canvas substitution when no raster backend can be resolved — fall through to asking the user instead of silently emitting code-based art. Updated in `docs/image-generation-tools.md` and inlined into `baoyu-article-illustrator`, `baoyu-comic`, `baoyu-cover-image`, `baoyu-image-cards`, `baoyu-infographic`, `baoyu-slide-deck`, and `baoyu-xhs-images`.\n\nv1.103.2 | 2026-04-21T22:01:09.009Z | auto\n\n- Clarified EXTEND.md preference lookup order for configuration: project, XDG config, then user home.\n- Simplified and reformatted the preferences section for easier reference.\n- Removed redundant shell and PowerShell code snippets; replaced with a streamlined table.\n- No changes to functionality or options.\n\nv1.103.1 | 2026-04-13T16:14:09.152Z | user\n\n## 1.103.1 - 2026-04-13\n\n### Fixes\n- `baoyu-markdown-to-html`: decode HTML entities and strip tags from article summary\n- `baoyu-post-to-weibo`: decode HTML entities and strip tags from article summary\n\nv1.103.0 | 2026-04-13T01:19:15.712Z | user\n\n## 1.103.0 - 2026-04-12\n\n### Features\n- baoyu-diagram: add multi-diagram mode for article-wide diagram generation\n\n### Fixes\n- baoyu-article-illustrator: prevent color names and hex codes from appearing as visible text in generated images\n- baoyu-cover-image: prevent color names and hex codes from appearing as visible text in generated images\n- baoyu-image-cards: prevent color names from appearing as visible text in generated images\n- baoyu-post-to-wechat: decode HTML entities and strip tags from article summary\n\nv1.60.0 | 2026-03-12T03:49:02.320Z | user\n\n## 1.60.0 - 2026-03-11\n\n### Features\n- `baoyu-url-to-markdown`: support reusing existing Chrome CDP instances and fix port detection order\n\n### Fixes\n- `baoyu-post-to-x`: add missing `fs` import in x-article\n\n### Refactor\n- Unify all CDP skills to use shared `baoyu-chrome-cdp` package with vendored copies\n- Simplify CLAUDE.md, move detailed documentation to `docs/` directory\n- Publish skills directly from synced vendor, removing separate artifact preparation step\n\nv1.0.0 | 2026-03-09T16:10:30.400Z | auto\n\n- Initial release of image compression skill.\n- Compresses images to WebP (default), PNG, or JPEG, with automatic tool selection.\n- Command-line interface supports input files or directories, output format, quality, and recursive processing.\n- Preference and configuration support through EXTEND.md files at project or user level.\n- Supports JSON output and option to keep original files.\n\nArchive index:\n\nArchive v1.117.2: 4 files, 5784 bytes\n\nFiles: scripts/main.ts (10081b), skill-card.md (2132b), SKILL.md (2409b), _meta.json (141b)\n\nFile v1.117.2:SKILL.md\n\n---\nname: baoyu-compress-image\ndescription: 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.\nversion: 1.56.1\nmetadata:\n  openclaw:\n    homepage: https://github.com/JimLiu/baoyu-skills#baoyu-compress-image\n    requires:\n      anyBins:\n        - bun\n        - npx\n---\n\n# Image Compressor\n\nCompresses images using best available tool (sips → cwebp → ImageMagick → Sharp).\n\n## Script Directory\n\nScripts 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.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/main.ts` | Image compression CLI |\n\n## Preferences (EXTEND.md)\n\nCheck EXTEND.md in priority order — the first one found wins:\n\n| Priority | Path | Scope |\n|----------|------|-------|\n| 1 | `.baoyu-skills/baoyu-compress-image/EXTEND.md` | Project |\n| 2 | `${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.md` | XDG |\n| 3 | `$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md` | User home |\n\nIf none found, use defaults.\n\n**EXTEND.md supports**: Default format, default quality, keep-original preference.\n\n## Usage\n\n```bash\n${BUN_X} {baseDir}/scripts/main.ts <input> [options]\n```\n\n## Options\n\n| Option | Short | Description | Default |\n|--------|-------|-------------|---------|\n| `<input>` | | File or directory | Required |\n| `--output` | `-o` | Output path | Same path, new ext |\n| `--format` | `-f` | webp, png, jpeg | webp |\n| `--quality` | `-q` | Quality 0-100 | 80 |\n| `--keep` | `-k` | Keep original | false |\n| `--recursive` | `-r` | Process subdirs | false |\n| `--json` | | JSON output | false |\n\n## Examples\n\n```bash\n# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json\n```\n\n**Output**:\n```\nimage.png → image.webp (245KB → 89KB, 64% reduction)\n```\n\n## Extension Support\n\nCustom configurations via EXTEND.md. See **Preferences** section for paths and supported options.\n\nFile v1.117.2:_meta.json\n\n{\n  \"ownerId\": \"kn7csrrndw79hpke5d0gsnx93d82k67r\",\n  \"slug\": \"baoyu-compress-image\",\n  \"version\": \"1.117.2\",\n  \"publishedAt\": 1779070410712\n}\n\nFile v1.117.2:skill-card.md\n\n## Description:\n\nCompresses images to WebP (default) or PNG with automatic tool selection.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[jimliu](https://clawhub.ai/user/jimliu)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, designers, and content teams use this skill to reduce image file size, convert images to WebP, PNG, or JPEG, and process individual files or image directories from an agent-guided command line workflow.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The compression workflow can change or overwrite image files by default.\n\nMitigation: Use copied or backed-up images, prefer the --keep option, and check outputs before running recursive mode on important directories.\n\nRisk: If Bun is unavailable, the documented fallback may fetch an unpinned runtime package through npx.\n\nMitigation: Install Bun through a trusted pinned process before using the skill instead of relying on npx -y bun.\n\nRisk: Project EXTEND.md files can alter default compression behavior.\n\nMitigation: Treat EXTEND.md files as untrusted unless you control them, and review their settings before execution.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/jimliu/skills/baoyu-compress-image)\n- [Publisher Profile](https://clawhub.ai/user/jimliu)\n- [Project Homepage](https://github.com/JimLiu/baoyu-skills#baoyu-compress-image)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown with inline shell commands and optional JSON CLI output]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Can produce compressed image files and size-reduction summaries when the generated command is run.]\n\n## Skill Version(s):\n\n1.117.2 (source: server release metadata; artifact frontmatter lists 1.56.1)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.115.4: 3 files, 4565 bytes\n\nFiles: scripts/main.ts (10081b), SKILL.md (2409b), _meta.json (141b)\n\nFile v1.115.4:SKILL.md\n\n---\nname: baoyu-compress-image\ndescription: 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.\nversion: 1.56.1\nmetadata:\n  openclaw:\n    homepage: https://github.com/JimLiu/baoyu-skills#baoyu-compress-image\n    requires:\n      anyBins:\n        - bun\n        - npx\n---\n\n# Image Compressor\n\nCompresses images using best available tool (sips → cwebp → ImageMagick → Sharp).\n\n## Script Directory\n\nScripts 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.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/main.ts` | Image compression CLI |\n\n## Preferences (EXTEND.md)\n\nCheck EXTEND.md in priority order — the first one found wins:\n\n| Priority | Path | Scope |\n|----------|------|-------|\n| 1 | `.baoyu-skills/baoyu-compress-image/EXTEND.md` | Project |\n| 2 | `${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.md` | XDG |\n| 3 | `$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md` | User home |\n\nIf none found, use defaults.\n\n**EXTEND.md supports**: Default format, default quality, keep-original preference.\n\n## Usage\n\n```bash\n${BUN_X} {baseDir}/scripts/main.ts <input> [options]\n```\n\n## Options\n\n| Option | Short | Description | Default |\n|--------|-------|-------------|---------|\n| `<input>` | | File or directory | Required |\n| `--output` | `-o` | Output path | Same path, new ext |\n| `--format` | `-f` | webp, png, jpeg | webp |\n| `--quality` | `-q` | Quality 0-100 | 80 |\n| `--keep` | `-k` | Keep original | false |\n| `--recursive` | `-r` | Process subdirs | false |\n| `--json` | | JSON output | false |\n\n## Examples\n\n```bash\n# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json\n```\n\n**Output**:\n```\nimage.png → image.webp (245KB → 89KB, 64% reduction)\n```\n\n## Extension Support\n\nCustom configurations via EXTEND.md. See **Preferences** section for paths and supported options.\n\nFile v1.115.4:_meta.json\n\n{\n  \"ownerId\": \"kn7csrrndw79hpke5d0gsnx93d82k67r\",\n  \"slug\": \"baoyu-compress-image\",\n  \"version\": \"1.115.4\",\n  \"publishedAt\": 1778543243687\n}\n\nArchive v1.103.2: 3 files, 4565 bytes\n\nFiles: scripts/main.ts (10081b), SKILL.md (2409b), _meta.json (141b)\n\nFile v1.103.2:SKILL.md\n\n---\nname: baoyu-compress-image\ndescription: 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.\nversion: 1.56.1\nmetadata:\n  openclaw:\n    homepage: https://github.com/JimLiu/baoyu-skills#baoyu-compress-image\n    requires:\n      anyBins:\n        - bun\n        - npx\n---\n\n# Image Compressor\n\nCompresses images using best available tool (sips → cwebp → ImageMagick → Sharp).\n\n## Script Directory\n\nScripts 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.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/main.ts` | Image compression CLI |\n\n## Preferences (EXTEND.md)\n\nCheck EXTEND.md in priority order — the first one found wins:\n\n| Priority | Path | Scope |\n|----------|------|-------|\n| 1 | `.baoyu-skills/baoyu-compress-image/EXTEND.md` | Project |\n| 2 | `${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.md` | XDG |\n| 3 | `$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md` | User home |\n\nIf none found, use defaults.\n\n**EXTEND.md supports**: Default format, default quality, keep-original preference.\n\n## Usage\n\n```bash\n${BUN_X} {baseDir}/scripts/main.ts <input> [options]\n```\n\n## Options\n\n| Option | Short | Description | Default |\n|--------|-------|-------------|---------|\n| `<input>` | | File or directory | Required |\n| `--output` | `-o` | Output path | Same path, new ext |\n| `--format` | `-f` | webp, png, jpeg | webp |\n| `--quality` | `-q` | Quality 0-100 | 80 |\n| `--keep` | `-k` | Keep original | false |\n| `--recursive` | `-r` | Process subdirs | false |\n| `--json` | | JSON output | false |\n\n## Examples\n\n```bash\n# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json\n```\n\n**Output**:\n```\nimage.png → image.webp (245KB → 89KB, 64% reduction)\n```\n\n## Extension Support\n\nCustom configurations via EXTEND.md. See **Preferences** section for paths and supported options.\n\nFile v1.103.2:_meta.json\n\n{\n  \"ownerId\": \"kn7csrrndw79hpke5d0gsnx93d82k67r\",\n  \"slug\": \"baoyu-compress-image\",\n  \"version\": \"1.103.2\",\n  \"publishedAt\": 1776808869009\n}\n\nArchive v1.103.1: 3 files, 4868 bytes\n\nFiles: scripts/main.ts (10081b), SKILL.md (5274b), _meta.json (141b)\n\nFile v1.103.1:SKILL.md\n\n---\nname: baoyu-compress-image\ndescription: 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.\nversion: 1.56.1\nmetadata:\n  openclaw:\n    homepage: https://github.com/JimLiu/baoyu-skills#baoyu-compress-image\n    requires:\n      anyBins:\n        - bun\n        - npx\n---\n\n# Image Compressor\n\nCompresses images using best available tool (sips → cwebp → ImageMagick → Sharp).\n\n## Script Directory\n\nScripts 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.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/main.ts` | Image compression CLI |\n\n## Preferences (EXTEND.md)\n\nCheck EXTEND.md existence (priority order):\n\n```bash\n# macOS, Linux, WSL, Git Bash\ntest -f .baoyu-skills/baoyu-compress-image/EXTEND.md && echo \"project\"\ntest -f \"${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.md\" && echo \"xdg\"\ntest -f \"$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md\" && echo \"user\"\n```\n\n```powershell\n# PowerShell (Windows)\nif (Test-Path .baoyu-skills/baoyu-compress-image/EXTEND.md) { \"project\" }\n$xdg = if ($env:XDG_CONFIG_HOME) { $env:XDG_CONFIG_HOME } else { \"$HOME/.config\" }\nif (Test-Path \"$xdg/baoyu-skills/baoyu-compress-image/EXTEND.md\") { \"xdg\" }\nif (Test-Path \"$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md\") { \"user\" }\n```\n\n┌────────────────────────────────────────────────────────┬───────────────────┐\n│                          Path                          │     Location      │\n├────────────────────────────────────────────────────────┼───────────────────┤\n│ .baoyu-skills/baoyu-compress-image/EXTEND.md           │ Project directory │\n├────────────────────────────────────────────────────────┼───────────────────┤\n│ $HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md     │ User home         │\n└────────────────────────────────────────────────────────┴───────────────────┘\n\n┌───────────┬───────────────────────────────────────────────────────────────────────────┐\n│  Result   │                                  Action                                   │\n├───────────┼───────────────────────────────────────────────────────────────────────────┤\n│ Found     │ Read, parse, apply settings                                               │\n├───────────┼───────────────────────────────────────────────────────────────────────────┤\n│ Not found │ Use defaults                                                              │\n└───────────┴───────────────────────────────────────────────────────────────────────────┘\n\n**EXTEND.md Supports**: Default format | Default quality | Keep original preference\n\n## Usage\n\n```bash\n${BUN_X} {baseDir}/scripts/main.ts <input> [options]\n```\n\n## Options\n\n| Option | Short | Description | Default |\n|--------|-------|-------------|---------|\n| `<input>` | | File or directory | Required |\n| `--output` | `-o` | Output path | Same path, new ext |\n| `--format` | `-f` | webp, png, jpeg | webp |\n| `--quality` | `-q` | Quality 0-100 | 80 |\n| `--keep` | `-k` | Keep original | false |\n| `--recursive` | `-r` | Process subdirs | false |\n| `--json` | | JSON output | false |\n\n## Examples\n\n```bash\n# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json\n```\n\n**Output**:\n```\nimage.png → image.webp (245KB → 89KB, 64% reduction)\n```\n\n## Extension Support\n\nCustom configurations via EXTEND.md. See **Preferences** section for paths and supported options.\n\nFile v1.103.1:_meta.json\n\n{\n  \"ownerId\": \"kn7csrrndw79hpke5d0gsnx93d82k67r\",\n  \"slug\": \"baoyu-compress-image\",\n  \"version\": \"1.103.1\",\n  \"publishedAt\": 1776096849152\n}\n\nArchive v1.103.0: 3 files, 4869 bytes\n\nFiles: scripts/main.ts (10081b), SKILL.md (5274b), _meta.json (141b)\n\nFile v1.103.0:SKILL.md\n\n---\nname: baoyu-compress-image\ndescription: 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.\nversion: 1.56.1\nmetadata:\n  openclaw:\n    homepage: https://github.com/JimLiu/baoyu-skills#baoyu-compress-image\n    requires:\n      anyBins:\n        - bun\n        - npx\n---\n\n# Image Compressor\n\nCompresses images using best available tool (sips → cwebp → ImageMagick → Sharp).\n\n## Script Directory\n\nScripts 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.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/main.ts` | Image compression CLI |\n\n## Preferences (EXTEND.md)\n\nCheck EXTEND.md existence (priority order):\n\n```bash\n# macOS, Linux, WSL, Git Bash\ntest -f .baoyu-skills/baoyu-compress-image/EXTEND.md && echo \"project\"\ntest -f \"${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.md\" && echo \"xdg\"\ntest -f \"$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md\" && echo \"user\"\n```\n\n```powershell\n# PowerShell (Windows)\nif (Test-Path .baoyu-skills/baoyu-compress-image/EXTEND.md) { \"project\" }\n$xdg = if ($env:XDG_CONFIG_HOME) { $env:XDG_CONFIG_HOME } else { \"$HOME/.config\" }\nif (Test-Path \"$xdg/baoyu-skills/baoyu-compress-image/EXTEND.md\") { \"xdg\" }\nif (Test-Path \"$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md\") { \"user\" }\n```\n\n┌────────────────────────────────────────────────────────┬───────────────────┐\n│                          Path                          │     Location      │\n├────────────────────────────────────────────────────────┼───────────────────┤\n│ .baoyu-skills/baoyu-compress-image/EXTEND.md           │ Project directory │\n├────────────────────────────────────────────────────────┼───────────────────┤\n│ $HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md     │ User home         │\n└────────────────────────────────────────────────────────┴───────────────────┘\n\n┌───────────┬───────────────────────────────────────────────────────────────────────────┐\n│  Result   │                                  Action                                   │\n├───────────┼───────────────────────────────────────────────────────────────────────────┤\n│ Found     │ Read, parse, apply settings                                               │\n├───────────┼───────────────────────────────────────────────────────────────────────────┤\n│ Not found │ Use defaults                                                              │\n└───────────┴───────────────────────────────────────────────────────────────────────────┘\n\n**EXTEND.md Supports**: Default format | Default quality | Keep original preference\n\n## Usage\n\n```bash\n${BUN_X} {baseDir}/scripts/main.ts <input> [options]\n```\n\n## Options\n\n| Option | Short | Description | Default |\n|--------|-------|-------------|---------|\n| `<input>` | | File or directory | Required |\n| `--output` | `-o` | Output path | Same path, new ext |\n| `--format` | `-f` | webp, png, jpeg | webp |\n| `--quality` | `-q` | Quality 0-100 | 80 |\n| `--keep` | `-k` | Keep original | false |\n| `--recursive` | `-r` | Process subdirs | false |\n| `--json` | | JSON output | false |\n\n## Examples\n\n```bash\n# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json\n```\n\n**Output**:\n```\nimage.png → image.webp (245KB → 89KB, 64% reduction)\n```\n\n## Extension Support\n\nCustom configurations via EXTEND.md. See **Preferences** section for paths and supported options.\n\nFile v1.103.0:_meta.json\n\n{\n  \"ownerId\": \"kn7csrrndw79hpke5d0gsnx93d82k67r\",\n  \"slug\": \"baoyu-compress-image\",\n  \"version\": \"1.103.0\",\n  \"publishedAt\": 1776043155712\n}\n\nArchive v1.60.0: 3 files, 4868 bytes\n\nFiles: scripts/main.ts (10081b), SKILL.md (5274b), _meta.json (140b)\n\nFile v1.60.0:SKILL.md\n\n---\nname: baoyu-compress-image\ndescription: 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.\nversion: 1.56.1\nmetadata:\n  openclaw:\n    homepage: https://github.com/JimLiu/baoyu-skills#baoyu-compress-image\n    requires:\n      anyBins:\n        - bun\n        - npx\n---\n\n# Image Compressor\n\nCompresses images using best available tool (sips → cwebp → ImageMagick → Sharp).\n\n## Script Directory\n\nScripts 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.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/main.ts` | Image compression CLI |\n\n## Preferences (EXTEND.md)\n\nCheck EXTEND.md existence (priority order):\n\n```bash\n# macOS, Linux, WSL, Git Bash\ntest -f .baoyu-skills/baoyu-compress-image/EXTEND.md && echo \"project\"\ntest -f \"${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.md\" && echo \"xdg\"\ntest -f \"$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md\" && echo \"user\"\n```\n\n```powershell\n# PowerShell (Windows)\nif (Test-Path .baoyu-skills/baoyu-compress-image/EXTEND.md) { \"project\" }\n$xdg = if ($env:XDG_CONFIG_HOME) { $env:XDG_CONFIG_HOME } else { \"$HOME/.config\" }\nif (Test-Path \"$xdg/baoyu-skills/baoyu-compress-image/EXTEND.md\") { \"xdg\" }\nif (Test-Path \"$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md\") { \"user\" }\n```\n\n┌────────────────────────────────────────────────────────┬───────────────────┐\n│                          Path                          │     Location      │\n├────────────────────────────────────────────────────────┼───────────────────┤\n│ .baoyu-skills/baoyu-compress-image/EXTEND.md           │ Project directory │\n├────────────────────────────────────────────────────────┼───────────────────┤\n│ $HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md     │ User home         │\n└────────────────────────────────────────────────────────┴───────────────────┘\n\n┌───────────┬───────────────────────────────────────────────────────────────────────────┐\n│  Result   │                                  Action                                   │\n├───────────┼───────────────────────────────────────────────────────────────────────────┤\n│ Found     │ Read, parse, apply settings                                               │\n├───────────┼───────────────────────────────────────────────────────────────────────────┤\n│ Not found │ Use defaults                                                              │\n└───────────┴───────────────────────────────────────────────────────────────────────────┘\n\n**EXTEND.md Supports**: Default format | Default quality | Keep original preference\n\n## Usage\n\n```bash\n${BUN_X} {baseDir}/scripts/main.ts <input> [options]\n```\n\n## Options\n\n| Option | Short | Description | Default |\n|--------|-------|-------------|---------|\n| `<input>` | | File or directory | Required |\n| `--output` | `-o` | Output path | Same path, new ext |\n| `--format` | `-f` | webp, png, jpeg | webp |\n| `--quality` | `-q` | Quality 0-100 | 80 |\n| `--keep` | `-k` | Keep original | false |\n| `--recursive` | `-r` | Process subdirs | false |\n| `--json` | | JSON output | false |\n\n## Examples\n\n```bash\n# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json\n```\n\n**Output**:\n```\nimage.png → image.webp (245KB → 89KB, 64% reduction)\n```\n\n## Extension Support\n\nCustom configurations via EXTEND.md. See **Preferences** section for paths and supported options.\n\nFile v1.60.0:_meta.json\n\n{\n  \"ownerId\": \"kn7csrrndw79hpke5d0gsnx93d82k67r\",\n  \"slug\": \"baoyu-compress-image\",\n  \"version\": \"1.60.0\",\n  \"publishedAt\": 1773287342320\n}\n\nArchive v1.0.0: 3 files, 4867 bytes\n\nFiles: scripts/main.ts (10081b), SKILL.md (5274b), _meta.json (139b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: baoyu-compress-image\ndescription: 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.\nversion: 1.56.1\nmetadata:\n  openclaw:\n    homepage: https://github.com/JimLiu/baoyu-skills#baoyu-compress-image\n    requires:\n      anyBins:\n        - bun\n        - npx\n---\n\n# Image Compressor\n\nCompresses images using best available tool (sips → cwebp → ImageMagick → Sharp).\n\n## Script Directory\n\nScripts 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.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/main.ts` | Image compression CLI |\n\n## Preferences (EXTEND.md)\n\nCheck EXTEND.md existence (priority order):\n\n```bash\n# macOS, Linux, WSL, Git Bash\ntest -f .baoyu-skills/baoyu-compress-image/EXTEND.md && echo \"project\"\ntest -f \"${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.md\" && echo \"xdg\"\ntest -f \"$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md\" && echo \"user\"\n```\n\n```powershell\n# PowerShell (Windows)\nif (Test-Path .baoyu-skills/baoyu-compress-image/EXTEND.md) { \"project\" }\n$xdg = if ($env:XDG_CONFIG_HOME) { $env:XDG_CONFIG_HOME } else { \"$HOME/.config\" }\nif (Test-Path \"$xdg/baoyu-skills/baoyu-compress-image/EXTEND.md\") { \"xdg\" }\nif (Test-Path \"$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md\") { \"user\" }\n```\n\n┌────────────────────────────────────────────────────────┬───────────────────┐\n│                          Path                          │     Location      │\n├────────────────────────────────────────────────────────┼───────────────────┤\n│ .baoyu-skills/baoyu-compress-image/EXTEND.md           │ Project directory │\n├────────────────────────────────────────────────────────┼───────────────────┤\n│ $HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md     │ User home         │\n└────────────────────────────────────────────────────────┴───────────────────┘\n\n┌───────────┬───────────────────────────────────────────────────────────────────────────┐\n│  Result   │                                  Action                                   │\n├───────────┼───────────────────────────────────────────────────────────────────────────┤\n│ Found     │ Read, parse, apply settings                                               │\n├───────────┼───────────────────────────────────────────────────────────────────────────┤\n│ Not found │ Use defaults                                                              │\n└───────────┴───────────────────────────────────────────────────────────────────────────┘\n\n**EXTEND.md Supports**: Default format | Default quality | Keep original preference\n\n## Usage\n\n```bash\n${BUN_X} {baseDir}/scripts/main.ts <input> [options]\n```\n\n## Options\n\n| Option | Short | Description | Default |\n|--------|-------|-------------|---------|\n| `<input>` | | File or directory | Required |\n| `--output` | `-o` | Output path | Same path, new ext |\n| `--format` | `-f` | webp, png, jpeg | webp |\n| `--quality` | `-q` | Quality 0-100 | 80 |\n| `--keep` | `-k` | Keep original | false |\n| `--recursive` | `-r` | Process subdirs | false |\n| `--json` | | JSON output | false |\n\n## Examples\n\n```bash\n# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json\n```\n\n**Output**:\n```\nimage.png → image.webp (245KB → 89KB, 64% reduction)\n```\n\n## Extension Support\n\nCustom configurations via EXTEND.md. See **Preferences** section for paths and supported options.\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn7csrrndw79hpke5d0gsnx93d82k67r\",\n  \"slug\": \"baoyu-compress-image\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1773072630400\n}","readmeExcerpt":"Skill: Baoyu Compress Image Owner: jimliu Summary: Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to \"compress image\", \"optimize image\", \"convert to webp\", or red... Tags: latest:1.117.2 Version history: v1.117.2 | 2026-05-18T02:13:30.712Z | user 1.117.2 - 2026-05-17 Documentation - baoyu-cover-image: ban programmatic text repair on generated bitmaps — disallow ImageMagic","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"${BUN_X} {baseDir}/scripts/main.ts <input> [options]"},{"language":"bash","snippet":"# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json"},{"language":"text","snippet":"image.png → image.webp (245KB → 89KB, 64% reduction)"},{"language":"bash","snippet":"${BUN_X} {baseDir}/scripts/main.ts <input> [options]"},{"language":"bash","snippet":"# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json"},{"language":"text","snippet":"image.png → image.webp (245KB → 89KB, 64% reduction)"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: baoyu-compress-image\ndescription: 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.\nversion: 1.56.1\nmetadata:\n  openclaw:\n    homepage: https://github.com/JimLiu/baoyu-skills#baoyu-compress-image\n    requires:\n      anyBins:\n        - bun\n        - npx\n---\n\n# Image Compressor\n\nCompresses images using best available tool (sips → cwebp → ImageMagick → Sharp).\n\n## Script Directory\n\nScripts 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.\n\n| Script | Purpose |\n|--------|---------|\n| `scripts/main.ts` | Image compression CLI |\n\n## Preferences (EXTEND.md)\n\nCheck EXTEND.md in priority order — the first one found wins:\n\n| Priority | Path | Scope |\n|----------|------|-------|\n| 1 | `.baoyu-skills/baoyu-compress-image/EXTEND.md` | Project |\n| 2 | `${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-compress-image/EXTEND.md` | XDG |\n| 3 | `$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md` | User home |\n\nIf none found, use defaults.\n\n**EXTEND.md supports**: Default format, default quality, keep-original preference.\n\n## Usage\n\n```bash\n${BUN_X} {baseDir}/scripts/main.ts <input> [options]\n```\n\n## Options\n\n| Option | Short | Description | Default |\n|--------|-------|-------------|---------|\n| `<input>` | | File or directory | Required |\n| `--output` | `-o` | Output path | Same path, new ext |\n| `--format` | `-f` | webp, png, jpeg | webp |\n| `--quality` | `-q` | Quality 0-100 | 80 |\n| `--keep` | `-k` | Keep original | false |\n| `--recursive` | `-r` | Process subdirs | false |\n| `--json` | | JSON output | false |\n\n## Examples\n\n```bash\n# Single file → WebP (replaces original)\n${BUN_X} {baseDir}/scripts/main.ts image.png\n\n# Keep PNG format\n${BUN_X} {baseDir}/scripts/main.ts image.png -f png --keep\n\n# Directory recursive\n${BUN_X} {baseDir}/scripts/main.ts ./images/ -r -q 75\n\n# JSON output\n${BUN_X} {baseDir}/scripts/main.ts image.png --json\n```\n\n**Output**:\n```\nimage.png → image.webp (245KB → 89KB, 64% reduction)\n```\n\n## Extension Support\n\nCustom configurations via EXTEND.md. See **Preferences** section for paths and supported options."},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7csrrndw79hpke5d0gsnx93d82k67r\",\n  \"slug\": \"baoyu-compress-image\",\n  \"version\": \"1.117.2\",\n  \"publishedAt\": 1779070410712\n}"},{"path":"skill-card.md","content":"## Description:\n\nCompresses images to WebP (default) or PNG with automatic tool selection.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[jimliu](https://clawhub.ai/user/jimliu)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, designers, and content teams use this skill to reduce image file size, convert images to WebP, PNG, or JPEG, and process individual files or image directories from an agent-guided command line workflow.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The compression workflow can change or overwrite image files by default.\n\nMitigation: Use copied or backed-up images, prefer the --keep option, and check outputs before running recursive mode on important directories.\n\nRisk: If Bun is unavailable, the documented fallback may fetch an unpinned runtime package through npx.\n\nMitigation: Install Bun through a trusted pinned process before using the skill instead of relying on npx -y bun.\n\nRisk: Project EXTEND.md files can alter default compression behavior.\n\nMitigation: Treat EXTEND.md files as untrusted unless you control them, and review their settings before execution.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/jimliu/skills/baoyu-compress-image)\n- [Publisher Profile](https://clawhub.ai/user/jimliu)\n- [Project Homepage](https://github.com/JimLiu/baoyu-skills#baoyu-compress-image)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown with inline shell commands and optional JSON CLI output]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Can produce compressed image files and size-reduction summaries when the generated command is run.]\n\n## Skill Version(s):\n\n1.117.2 (source: server release metadata; artifact frontmatter lists 1.56.1)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to \"compress image\", \"optimize image\", \"convert to webp\", or red... Skill: Baoyu Compress Image Owner: jimliu Summary: Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to \"compress image\", \"optimize image\", \"convert to webp\", or red... Tags: latest:1.117.2 Version history: v1.117.2 | 2026-05-18T02:13:30.712Z | user 1.117.2 - 2026-05-17 Documentation - baoyu-cover-image: ban programmatic text repair on generated bitmaps — disallow ImageMagic","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1347,"uniquenessScore":48,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T09:13:01.697Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T09:13:01.697Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T21:22:32.583Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}