计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
imagemagick【效率与协作】Edit and convert images with the ImageMagick `magick` CLI — resize, crop, convert format, compress, rotate, montage, annotate. Use for any still-image transformation.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
name: imagemagick
description: Edit and convert images with the ImageMagick magick CLI — resize, crop, convert format, compress, rotate, montage, annotate. Use for any still-image transformation.
version: 1.0.1
requires_tools:
Transform still images with ImageMagick v7
(magick command). Pairs well with vision.describe — describe an image to
decide what to do, then operate on it here. Always write to a new output file.
ImageMagick v7 uses
magick in.png out.jpg. Legacy v6 usesconvert; if onlyconvertexists, substitute it formagickin the examples below.
Verify with one solo step:
[{ "tool": "os.shell.run", "args": { "cmd": "magick", "args": ["--version"] } }]
Outcome map:
exit 0 + Version: ImageMagick 7… → ready, proceed.command not found: magick → try convert --version (v6); if also missing →
enter Setup playbook → "imagemagick missing".Reply (solo reply step):
"ImageMagick is not installed. I can install it:
brew install imagemagick. Install it?"
On yes:
[{ "tool": "os.shell.run", "args": { "cmd": "brew", "args": ["install", "imagemagick"] } }]
On Linux: apt-get install imagemagick.
vision.describe instead.ffmpeg skill.pdf skill (magick can make a
PDF but page-level control lives in pdf).All examples invoke os.shell.run with cmd: "magick". The approval gate
surfaces each write.
| Goal | args |
|---|---|
| Inspect dimensions/format | ["identify", "in.png"] |
| Convert PNG → JPG | ["in.png", "out.jpg"] |
| Convert → WebP | ["in.png", "-quality", "82", "out.webp"] |
| Resize to 800px wide | ["in.jpg", "-resize", "800x", "out.jpg"] |
| Thumbnail (fit 200x200) | ["in.jpg", "-thumbnail", "200x200", "thumb.jpg"] |
| Crop 300x300 from 10,10 | ["in.png", "-crop", "300x300+10+10", "+repage", "crop.png"] |
| Rotate 90° | ["in.jpg", "-rotate", "90", "rot.jpg"] |
| Compress JPG quality 75 | ["in.jpg", "-quality", "75", "small.jpg"] |
| Montage 2x2 grid | ["montage", "a.png", "b.png", "c.png", "d.png", "-tile", "2x2", "-geometry", "+4+4", "grid.png"] |
| Add caption | ["in.jpg", "-pointsize", "36", "-annotate", "+20+40", "Hello", "out.jpg"] |
magick identify first to learn dimensions/format before transforming.vision.describe the result to confirm it
matches the user's intent for visual tasks.