clop clear
dismisses every floating result
clop clear --stopalso stops the optimisations still runningAgents can do the same through the MCP server
A crop is no longer lost to a later downscale, compression change, DPI change or Aggressive, on videos, images and PDFs
A speed change is no longer lost to a conversion, a bitrate change or loudness normalisation, on videos and audio
A video converted to HEVC, AV1 or WebM no longer loses that format through later changes
Video changes start from the original each time, instead of re-encoding the last result
.mov file, instead of
re-encoding the MP4.%e no longer double the
extension, like doc-optimised.pdf.pdfHDR photos stay HDR when Clop optimises, converts, downscales or crops them
iPhone HEIC photos used to turn into darker JPEGs with flat highlights
Converting to HEIC or AVIF keeps the HDR too (AVIF needs macOS 15), and so does cropping on macOS 15 and later
10-bit HEIFs, like the ones an iPhone 15 Pro can save, become JPEGs that look the same on an SDR screen and keep their HDR on an XDR one
Converting HDR photos to JPEG works on macOS versions older than 15.6, where it used to fail
Convert HDR to SDR in Settings > Images makes smaller files without the brighter highlights, and so does compression above 75%
HDR results have Convert HDR to SDR in their right-click menu too
More agents for the MCP server: install it into Codex, Copilot CLI, Gemini CLI, OpenCode and pi from Settings > MCP
The Codex row covers the ChatGPT desktop app too, since both read the same config

clop://settings/... link that opens
Settings on that row
Script steps in pipelines get $CLOP_BIN, the folder
with Clop's bundled ffmpeg, gs, gifski, exiftool and the rest
runScript(code: "$CLOP_BIN/gs -q -sDEVICE=txtwrite -o ${1:r}.txt $1")saves a PDF's text next to it
Settings > Clipboard can also optimise copied HEIC and AVIF images, keeping their HDR
.jpg
and keep their HDR, instead of becoming an SDR .jpeg
copy/ save into that folder,
instead of naming the file after it%f keep the extension of
files with dots in their name, like screenshotsshelveWith(app: atoll) is accepted in pipelines and
offered in the step's suggestionsclop pipeline run and agents report a file as failed
when a script step fails or a shelf app isn't installed, instead of
doneclop logs persist on keeps Clop's debug logs on disk, so
they are still there when you need to send them
clop logs persist offreturns to the macOS default
clop commands and agent file tools run side by side, so
a long video in one session no longer holds up a quick image in
anotherchangeSpeed step takes frames: keep for
smoother motion or frames: drop for a smaller file, instead
of following the one setting in Settings > Video
clop optimise --playback-speed-frames keep|dropdoes the same from the command lineWhen an AI agent speeds up a video and doesn't say, Clop asks you which one you want
clop commands and agent file tools no longer hang until
they time out with several agent sessions open⌘E opens a hovered result in your editor app without
clicking the result firstAssign them in Settings or straight from the
+slot on a floating resultA single button can hold multiple pipelines, one for each file type, so the same button can adapt based on the file in the result.
ffmpeg updated to 9.0 on Apple SiliconMCP server lets an AI agent drive Clop in plain language: optimise and convert files, write pipelines, and read or change any setting. Needs Clop Pro
Install it into common agents from Settings -> MCP. An entry is added to the agent's own config file
Some interesting things you can tell an agent like Claude or Codex to do with Clop:
create a preset where I can drop videos to have them compressed aggressively, sped up, copied to ~/Videos/Demos/ and then copy a link I can send to others that expires in 3 hoursset up a pipeline so that all the PNGs arriving in this folder are optimised and converted to webp and cropped to square aspect ratiowhy is my MKV not converted to MP4 automatically?orwhy do PNGs sometimes become JPEG but sometimes don't?
Search the Settings window: there's now a search bar in settings that can fuzzy search
Compression factor per pipeline step: example
optimise(compression: 75)
Takes
5to100, oradaptive.
⌥ or ⌃ while dragging no longer
toggles the drop zone or the preset zones, only a tap doesclop settings reads and changes any setting from the
command line, with a plain-language search:
clop settings schema "replace the original"Keep frames raises the frame rate along with the speed, so a 2x speed-up of a 30fps clip plays back at 60fps and looks smoother
Drop frames stays at the source frame rate for a smaller file
Set it in Settings > Videos, under Optimisation rules
.png is compressed as a JPEG~/Pictures instead of /Users/name/Pictures, so
settings synced through iCloud keep working on a Mac with a different
username~/Pictures/%f now saves there,
instead of creating a folder called ~ next to the fileclop crop command could already do
crop(aspectRatio: 16:9)trims to a shape rather than a pixel size (4:3,1:1,1.91:1and the like). It crops at the file's own resolution, so it stacks with a pixel crop.
crop(smartCrop: true)keeps the most interesting part of the frame instead of the centre. Works on any crop.A file already at the requested size or shape is left alone instead of re-encoded.
optimise step followed
Crop, downscale and convert compress to your quality setting on their own. Add
optimiseand they hand the compression over to it, so the file is still only encoded once either way.
.aif audio, .tif images and other
alternate spellings of a format's extension were ignored by watched
folders.jpg no longer turns into a JPEG and
loses transparency)The previous picker (hover on the file extension) can be brought back in Settings > Floating results
Available as an action button on results and in the file's right-click menu
Disable with Follow the cursor across screens in Settings > Floating results
As a safety net, any optimisation that would leave a single frame out of an animated GIF now fails and keeps the original file untouched
photo-optim-optim.png next to
photo-optim.png
The naming pattern was applied twice: the real optimised file got the doubled name, while the normally named copy was left unoptimised
+ button slot; a plain click still opens the menu
that assigns an action to the slot
To keep the press free for dragging, the menu opens when the mouse is released instead of when it is pressed
Works for HEVC, AV1 and WebM video conversions and for image conversions like WEBP
mp4 · HEVC,
mkv · AV1, m4a · AAC,
ogg · OPUS), including for files that arrive already
encoded that wayConverting a file to the codec it is already in is no longer offered; it used to re-encode the file for nothing
Converting audio to a lossless format (WAV, FLAC, AIFF) no longer
shows a nonsense bitrate like 192 kbps → 0 kbps; lossless
files have no bitrate to tune, so none is shown
Cleaning up old working files no longer freezes the app when the disk is slow
fork step peels off a second file you can drag out while
the pipeline keeps going.clop strip-exif finds its bundled tools againclop pipeline list, run and
prompt read in plain language and gain show/hide-result
flagsDrop a folder or a big pile of files and Clop opens a dedicated window built for thousands of files, without a floating card for each one.

Before anything runs, each original is cloned to a safe backup, so you can re-compress the whole set with different settings or roll it all back.
Drop a folder with more files than the threshold you set in Settings and it opens here automatically. You can also open it from the menubar and drag files in.
Every optimised file is now a thumbnail card, audio included, with
album cover art when the file has it. Hover a card for its action
buttons, or press Space to QuickLook it.

Click a hover checkbox to start selecting, then click any row to add
it. A bar appears for the whole set: a handle to drag them all out, plus
save, crop, downscale, bitrate and more. ⌘A selects all,
Esc clears.

Audio gets first-class controls this release.

Hand an optimised file to an editor of your choice with
⌘E or the right-click menu. Pick a per-type app in
Settings, for example Pixelmator Pro for images, LosslessCut for video,
or Audacity for audio.

Choose how long a "Send securely" link stays alive, from
1m up to 3d, or never. Set it as you send (a
slider on the floating result, a popover in compact mode), or change it
later from the live link button.

runScript(code: "sips -Z 800 $1"), no separate script file
needed.clop pipeline prompt: print a
paste-ready reference of the whole pipeline language for an AI
assistant, then describe a task and get a working pipeline back. Add
-c to copy it to the clipboard.--copy always copies a file path, even when
optimisation or conversion fails (it copies the original), so you get
back as many files as you put inOption-drag copy keep their
real name instead of a temporary clop-dropzone-… nameClop now handles audio files: WAV, FLAC,
AIFF, high-bitrate MP3s.
Drop audio files and Clop converts them to AAC,
MP3 or Opus at a bitrate you pick.
WAV downsizing is also possible if the decoder supports
adpcm encoding.
New Audio tab in Settings for watched folders, output format, bitrate and skip rules.
Tap ⌥ Option to show the drop zone below your cursor.
Tap again to dismiss.
No need to drag files across the screen to reach a corner.
The old Aggressive / CPU-intensive toggles are now a single picker:
New setting to collect all clipboard optimisation results instead of always replacing the last one.
Every image you copy gets optimised and added to a list. Paste them all at once into apps that accept multiple files.
There's also a new drag handle that can drag all results at once.
Right-click a PDF result to extract its pages as optimised JPEG or PNG files.
Single-page PDFs get a Convert to image option that creates a new draggable result. Multi-page PDFs get Extract pages as images which saves all pages to a folder you choose, with a progress bar on the PDF result.
Share any optimised file over an encrypted peer-to-peer connection. No upload, no server storage, unlimited size.
Click Send file securely from the right-click menu or the side button, and a link is copied to your clipboard. The receiver opens the link in a browser and downloads directly from your Mac over WebRTC. The link stays active until you stop it or quit Clop.
Active sends appear in the menubar menu where you can copy the link again or stop individual sends.
Clop can now read and write JPEG XL files. Drop a JPEG XL file to
convert it to a more widely supported format, or export an optimised
image as JPEG XL for maximum quality and compression. The resulting file
will have the .jxl extension.
Clop can now read and write AV1 video files. Drop an AV1 file to convert it to a more widely supported format, or convert any format to AV1 for maximum quality and compression.
AV1 does not have its own file extension, I decided to use the MKV
container for AV1 encoding to make it easily distinguishable from the
more common H.264 and HEVC formats that use MP4. The resulting file will
have the .mkv extension.
Every action done by Clop is now part of a fully editable pipeline
with steps like optimise, convert,
downscale etc.
This allows us to always work on the original file and avoid double encoding and losing quality. It also makes backups more resilient to encoder failures.
The fiddly Shortcuts approach for automation was replaced with a pipeline editor that can do things like:
on image arriving in ~/Desktop/lowtechguys
crop(width: 1600) ->
optimise(encoder: lossless)
copy(to: "~/lowtechguys/img") ->
convert(to: webp, location: sameFolder)on video copied to clipboard
crop(width: 1200) ->
optimise(encoder: fast, location: tempFolder)
copyLinkForSending()on PDF arriving in ~/Downloads
if(nameContains: "invoice") ->
copy(to: "~/Documents/Invoices/%y-%m-%d_%f")
extractPagesAsImages(format: jpeg, quality: medium, location: sameFolder)Same idea for presets, they're no longer limited to running Shortcuts. They can run full pipelines which are also saved in a library for reuse in automation if needed.
Making a Preset Zone that converts the dropped image to
webp is as simple as writing
convert(to: webp).
PDF optimisation DPI can now be adjusted:
300, 250, 200, 150,
100, 72 and 48 DPI
300 means no downsampling.dpi parameter on the optimise step,
e.g. optimise(dpi: 150).Large PDFs (larger than 150 pages) will be split into PDFs of 100 pages and optimisation will run in parallel on those splits. This should make PDF optimisation 4x faster on large PDFs and fix cases where it might not work on >200 pages.
A new Ignored apps list under clipboard settings blocks selected apps from triggering optimisation.
vipsthumbnail fails
so downscaling no longer errors outwebp conversionjpegoptim and jpegli encoder to fix
high CPU usage and improve encoding speedvipsthumbnail to improve HDR image support when
resizing and croppinglibvips.<extension> in
the --output argumentOpen with... apps alphabeticallyShow Clop UI in screenshots is toggledDownscale action in ShortcutsDownscale action in ShortcutsDo multiple actions in one go by setting up drop zone presets.
You can now configure the drop zone to automatically pass the optimised file through an Apple Shortcut when a file is dropped on it.
Do multiple actions in one go by setting up drop zone presets.
You can now configure the drop zone to automatically pass the optimised file through an Apple Shortcut when a file is dropped on it.
.jpg and .jpeg files when
jpeg is enabled for skippingThe current macOS Sequoia version has capped the settings contents to a width of 600px for some reason. There seems to be no way to get around this, for now I'll wait and see if the next macOS update will revert the change.
You can now compare images, videos and PDFs side by side to see the difference between the original and the optimised version.
Cmd-DThere is now a way to set where the optimised files will be placed:
--output CLIWhen using commands like
clop optimise --output <some path>, the output path
now uses the new templating engine.
To understand this better, here are some examples when resizing the PNG files on Desktop using something like:
# the command is being run from ~/Documents/
~/Documents ❯ clop crop --size 1600x900 --output <template> ~/Desktop/screenshots/*.png... where <template> can be:
resized_to_%z -> path relative to current dir,
places files in ~/Documents/resized_to_1600x900/~/Pictures/twitter/%f_%z.%e -> absolute path, files
will get paths like
~/Pictures/twitter/shot_1600x900.png%P/../twitter/ -> path relative to image dir, places
files in ~/Desktop/twitter/ffmpeg to version 7.0 for better video
encodingCtrl-Shift-P hotkey can now toggle between:
--adaptive-optimisation and
--no-adaptive-optimisation options to CLI commands that can
act on imagespngquant's
--speed 3 option--downscale-factor parsing on
clop optimise CLI--types and --exclude-types options to
CLI commands that can act on multiple types of files
HEIC conversionclop crop --smart-crop option to use smart crop
instead of center cropclop crop command *(e.g.
clop crop --size 16:9 .png)clop crop outputclop convert CLI command for easy converting
to avif, heic and webp
formats--json flag to CLI to output JSON instead of a
human-readable listclop strip-exif command to strip EXIF data from
images and videosConvert to... to right-click menu on results,
supporting:
⌥ Option once while dragging the folder to make
the drop zone appearin-place is selected, PNGs will be
replaced with JPEGs if smaller, and vice-versawebp and
avif outputs.clopignore rules per file type (image, video,
PDF)Strip EXIF for HEICs to avoid invalid
files

Option while dragging files to the drop zone to
keep the originals untouched--outputCtrl-O in Finder not optimising file in-placeuncrop-pdf command to the CLI to reverse the
crop-pdf command--output on crop-pdf not working
correctly--resolution and
--aspect-ratio creating the wrong page layout in
crop-pdfYou can now optimise images, videos and PDFs in your own app using the Clop SDK.
Example code:
Swift
import ClopSDK
guard ClopSDK.shared.waitForClopToBeAvailable() else {
print("Clop is not available")
return
}
try ClopSDK.shared.optimise(path: "AppData/image.png")Objective-C
@import ClopSDK;
ClopSDKObjC *clop = [ClopSDKObjC shared];
if (![clop waitForClopToBeAvailableFor:5]) {
return;
}
[clop optimiseWithPath:@"AppData/img.png" error:nil];
This is not exactly a feature inside Clop, but I thought it might be a good idea to let people know in case someone is an app developer and wants to integrate Clop in their app.
--output parameter for the CLI--aggressive parameter in the CLI commands where it
was missing--page-layout parameter for the
crop-pdf CLI commandOutput path parameter for Shortcuts--playback-speed-factor CLI optionCtrl-C not stopping optimisation⌥ Option key
x86 and
arm binaries together--long-edge flag to
clop crop command -l, --long-edge When the size is specified as a single number, it will crop the longer of width or height to that number.
The shorter edge will be calculated automatically while keeping the original aspect ratio.
Example: `clop crop --long-edge --size 1920` will crop a landscape 2400x1350 image to 1920x1080, and a portrait 1350x2400 image to 1080x19200 for width/height for cropping to the
original aspect ratio⌘ Command hotkeys on hoverx files are dropped
in watched folderspublic.png

1x
About... menu item
Download Clop 2.0.0 → Introducing Clop Pro: freemium with an $8 paid tier as a one-time purchase.
10% to
90% with a single keystrokeDownload Clop 1.0.0 → Completely free version before the Pro features were introduced. Suitable for people who liked the simplicity and lack of customization of this version.
.png, .jpeg and
.gif images (not paths, it had to be image
data)