Pixmind Image Compress

Cloud-powered image compression and resize — compress JPG/PNG/WebP/HEIC to WebP/AVIF, resize images, batch process folders. No local dependencies, uses Tencent Cloud COS imageMogr2 via Pixmind API. Save 60-90% file size with scene presets (web, wechat, email, thumbnail). Supports format conversion, quality control, and dimension adjustment.

Audits

Pass

Install

openclaw skills install pixmind-image-compress

Pixmind Image Compress

Cloud-powered image compression and resize. Compress JPG, PNG, WebP, HEIC photos to WebP, AVIF or smaller JPG — save 60-90% file size with zero local dependencies.

Powered by Pixmind + Tencent Cloud COS imageMogr2.

Why this skill?

  • Zero install — No sharp, ImageMagick, or native modules. Runs on any platform with just an API key.
  • Cloud-processed — Handles HEIC, AVIF, TPG formats that local tools struggle with.
  • Scene presets — One command for web, WeChat, email, or archival use.
  • Batch ready — Compress entire folders recursively.
  • Safe by default — Never overwrites originals, auto-numbered output.

When to use

Use this skill when the user mentions:

  1. Compress — "图片太大"、"压缩一下"、"缩小文件"、"reduce image size"、"compress photo"、"file too large"
  2. Format conversion — "转成 JPG"、"PNG 转 WebP"、"HEIC 转 JPG"、"convert to webp"、"change format"
  3. Resize — "缩小到 1920px"、"调整尺寸"、"resize image"、"reduce dimensions"、"scale down"
  4. Batch — "批量压缩"、"处理这个文件夹"、"compress all images"、"batch resize"
  5. Scene optimization — "用于邮件附件"、"上传网站"、"微信发送"、"optimize for web"、"shrink for email"
  6. Typical triggers:
    • "帮我压缩这张图片,文件太大了发不了微信"
    • "Screenshot.png is 10MB, make it smaller"
    • "Convert all PNGs in this folder to WebP"
    • "Resize these photos to max 1920px width"

Do NOT trigger for:

  • Image generation (use pixmind-image skill)
  • Image editing (crop, rotate, watermark, filters)
  • Image analysis (OCR, content recognition, EXIF reading)

Prerequisites

  1. Register at pixmind.io200 bonus points on signup (free trial)
  2. Create an API key at pixmind.io/api-keys
  3. Set env PIXMIND_API_KEY with your key

Quick Start

# Compress a single image (local file)
node {baseDir}/compress.js --file ~/Desktop/photo.png --preset web

# Compress from URL
node {baseDir}/compress.js --url https://example.com/image.jpg --quality 80 --format webp

# Resize to max 1920px width
node {baseDir}/compress.js --file photo.jpg --width 1920

# Batch compress a folder
node {baseDir}/compress.js --dir ~/Pictures/ --preset web --recursive

Presets

Quick scene-based compression — no need to remember quality numbers:

PresetQualityFormatUse CaseSavings
web75WebPWebsite, blog, CMS upload60-70%
wechat65JPGWeChat, social media sharing70-80%
email55JPGEmail attachments, fast transfer80-90%
quality95originalHigh-quality archiving, print30-40%
thumbnail60WebPThumbnails, previews, avatars80-90%

API Details

Endpoint: POST https://aihub-admin.aimix.pro/open/cos/image/compress Auth: Header X-API-Key: {API_KEY} and X-App-Key: {APP_KEY}

Request Body (JSON)

ParameterRequiredTypeDescription
imageUrlOne ofstringImage URL (COS or external link)
imageBase64One ofstringBase64 image data (supports data:image/xxx;base64, prefix)
formatNostringOutput format: webp, jpg, png, avif, heif, tpg
qualityNonumberCompression quality 1-100 (default: 75)
widthNonumberTarget width in pixels (maintains aspect ratio)
heightNonumberTarget height in pixels (maintains aspect ratio)
modeNostringResponse type: url (default) or base64

Response Format

{
  "code": 1000,
  "message": "success",
  "data": {
    "originalUrl": "https://bucket.cos.region.myqcloud.com/image.jpg",
    "compressedUrl": "https://bucket.cos.region.myqcloud.com/image.jpg?imageMogr2/format/webp/quality/75",
    "originalSize": 1024000,
    "compressedSize": 256000,
    "format": "webp",
    "quality": 75,
    "width": 800,
    "height": 600
  }
}

Supported Formats

Input: JPG, JPEG, PNG, WebP, GIF, BMP, HEIC, HEIF Output: webp, jpg, png, avif, heif, tpg

CLI Options

OptionShortTypeDefaultDescription
--url-ustringImage URL to compress
--file-fstringLocal image file path
--dir-dstringDirectory for batch processing
--formatstringoriginalOutput: webp, jpg, png, avif, heif, tpg
--quality-qnumber75Quality 1-100
--width-wnumberTarget width (maintain ratio)
--heightnumberTarget height (maintain ratio)
--preset-pstringweb, wechat, email, quality, thumbnail
--output-ostringautoOutput directory
--recursive-rbooleanfalseProcess subdirectories
--modestringurlResponse: url or base64

Output Rules

  • Compressed files saved to ~/Downloads/compressed-images/{date}/ by default
  • Original files are never modified or overwritten
  • Duplicate filenames auto-numbered: photo_001.jpg, photo_002.jpg
  • Batch mode preserves original directory structure

Guidelines

  1. For local files, the script auto-reads and converts to Base64 for upload
  2. Default to quality 75 — good balance of quality and size
  3. Match presets to use cases: web for sites, wechat for sharing, email for attachments
  4. When resizing, specify only one dimension to maintain aspect ratio
  5. For batch processing, show progress and total savings summary
  6. After compression, always show before/after size and savings percentage
  7. Prefer webp for web — best compression with good quality
  8. For photos: recommend jpg or webp; for screenshots/diagrams: png or webp
  9. HEIC (iPhone) photos are natively supported — no extra dependencies needed