Install
$ agentstack add skill-ryankolean-summit-claude-skills-cli-imagemagick ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
ImageMagick — Image Manipulation Suite
Repo: https://github.com/ImageMagick/ImageMagick
Create, edit, compose, and convert images from the command line. Supports 200+ formats. The standard tool for programmatic image manipulation.
> Note: ImageMagick 7+ uses the magick command. Version 6 uses convert, > identify, mogrify, etc. as separate commands. Examples use magick > (v7) — replace with convert/identify/mogrify if on v6.
When to Activate
Manual triggers:
- "Resize these images"
- "Convert images to PNG/JPEG/WebP"
- "Create a thumbnail"
- "Watermark images"
- "Create a favicon"
- "Make an animated GIF from frames"
Auto-detect triggers:
- User needs to batch-process a folder of images
- User needs image assets at specific dimensions for web/app
- User wants to add text or a logo overlay to images
- User extracted frames from FFmpeg and wants to process them
Key Commands
Inspect Images (magick identify)
magick identify image.png # Basic info (format, size, depth)
magick identify -verbose image.png # Full metadata
magick identify -format "%wx%h\n" *.jpg # Print dimensions for all JPEGs
magick identify -format "%f: %wx%h %[colorspace]\n" *.png # Custom format
Basic Conversion
magick input.png output.jpg # Convert format
magick input.jpg -quality 85 output.jpg # Set JPEG quality (1-100)
magick input.png -quality 90 output.webp # Convert to WebP
magick *.png output.pdf # Combine images into PDF
magick input.pdf output-%04d.png # PDF pages to PNG sequence
Resize (-resize)
magick input.jpg -resize 800x600 output.jpg # Resize to fit within 800x600
magick input.jpg -resize 800x output.jpg # Width 800, height proportional
magick input.jpg -resize x600 output.jpg # Height 600, width proportional
magick input.jpg -resize 800x600! output.jpg # Force exact size (distorts)
magick input.jpg -resize 800x600^ output.jpg # Fill (crop to fit) 800x600
magick input.jpg -resize 50% output.jpg # 50% of original size
magick input.jpg -resize 800x600> output.jpg # Only shrink (don't enlarge)
magick input.jpg -resize 800x600 *.jpg
# Convert all PNGs to JPEG (different extension = new files)
magick mogrify -format jpg *.png
# Resize and add watermark to all images, output to ./thumbs/
mkdir -p thumbs
magick mogrify -path thumbs -resize 300x300^ -gravity Center \
-extent 300x300 -font Arial -pointsize 18 -fill "rgba(255,255,255,0.5)" \
-gravity SouthEast -annotate +5+5 "© 2024" *.jpg
Create Favicon (Multi-Size ICO)
# Generate all sizes from a source SVG or large PNG
magick source.png -resize 16x16 favicon-16.png
magick source.png -resize 32x32 favicon-32.png
magick source.png -resize 48x48 favicon-48.png
magick source.png -resize 64x64 favicon-64.png
# Combine into .ico
magick favicon-16.png favicon-32.png favicon-48.png favicon-64.png favicon.ico
# One-liner
magick source.png -define icon:auto-resize=64,48,32,16 favicon.ico
Thumbnail Generation with Cropping
# Smart crop (crop-to-fill at exact size)
magick input.jpg -resize 300x300^ -gravity Center \
-crop 300x300+0+0 +repage thumb.jpg
# Batch thumbnails preserving aspect ratio (letterbox)
magick input.jpg -thumbnail 300x300 -background white \
-gravity Center -extent 300x300 thumb.jpg
Watermarking
# Image watermark (logo overlay)
magick composite -gravity SouthEast -geometry +10+10 \
logo.png input.jpg output.jpg
# Semi-transparent text watermark across entire image
magick input.jpg \
\( -size 200x50 xc:none -font Arial -pointsize 24 \
-fill "rgba(255,255,255,0.3)" -gravity Center \
-annotate 0 "CONFIDENTIAL" \) \
-gravity Center -composite output.jpg
Image Comparison
magick compare input1.jpg input2.jpg diff.jpg # Visual diff
magick compare -metric PSNR input1.jpg input2.jpg diff.jpg # PSNR metric
magick compare -metric AE input1.jpg input2.jpg diff.jpg # Absolute error pixels
Create Animated GIF from Frames
# From image sequence (50ms delay = 20fps)
magick -delay 5 -loop 0 frame*.png animation.gif
# Control per-frame delay
magick \( frame1.png -delay 100 \) \( frame2.png -delay 50 \) \
-loop 0 animation.gif
# Optimize GIF file size
magick -delay 5 -loop 0 frame*.png -layers optimize animation.gif
Create Contact Sheet / Montage
# 4-column contact sheet with labels
magick montage *.jpg -geometry 200x200+5+5 -tile 4x montage.jpg
# Uniform grid, white background
magick montage *.png -background white -geometry 150x150+2+2 \
-tile 5x -border 1 -bordercolor gray sheet.jpg
Color Profile Conversion
magick input.jpg -profile /path/to/sRGB.icc -profile /path/to/CMYK.icc output.tif
magick input.jpg -colorspace sRGB output.jpg # Convert to sRGB
magick input.jpg -strip output.jpg # Strip all metadata/profiles
SVG to PNG Rendering
magick -background none input.svg output.png # Transparent background
magick -background white -density 150 input.svg output.png # 150 DPI rasterization
magick -density 300 input.svg -resize 1000x output.png # High-res render
PDF to Images
# Requires Ghostscript
magick -density 150 input.pdf output-%04d.png # All pages to PNG at 150 DPI
magick -density 150 "input.pdf[0]" cover.jpg # First page only
Sprites for Web
# Horizontal sprite strip
magick icon1.png icon2.png icon3.png +append sprite.png
# Vertical sprite strip
magick icon1.png icon2.png icon3.png -append sprite.png
# Grid sprite
magick montage icon*.png -geometry +0+0 -tile 4x sprite.png
Chaining with Other Skills
- cli-ffmpeg: Extract video frames with FFmpeg (
-vf fps=1 frame_%04d.png), then use ImageMagick'smogrifyto batch-resize, watermark, or convert the frames - fd: Use
fd -e jpgto find all images recursively, pipe into a shell loop withmagickfor batch processing - cli-fzf (fzf): Use
fd -e png | fzfto interactively select an image before running amagickcommand - cli-pandoc: Use ImageMagick to generate or preprocess images that are embedded in documents converted by Pandoc
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: ryankolean
- Source: ryankolean/summit-claude-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.