This is an opinion piece on Shortcuts v5.0 (1144.2) for macOS Monterey v12.0.1. Readers of my blog know I use Automator, AppleScripts, and shell scripts to get stuff done. So I was curious to see if I could replace all these with just Shortcuts. TL;DR: no, no I can’t.
The pros:
- is so much easier to use than Automator, which is rather unintuitive, even for programmers,
- works across macOS, iOS, iPadOS and watchOS,
- is easy to access via Quick Actions:
- Pin in Menu Bar - love this, so I no longer need a Dock folder of Automator scripts,
- supports global hotkeys, via a Services Menu Quick Action,
- can be access via Finder and Touch Bar (RIP) Quick Actions,
- sets Security & Privacy settings automatically and reliably - I often have challenges getting Automator or shell scripts to run reliably (requiring the access controls to be re-set / applications to be re-started / “hidden” applications to be allowed, etc.)
- is very powerful when used in conjunction with AppleScript, JavaScript for Automation (JXA) and/or shell scripts - using Run AppleScript, Run JavaScript for Mac Automation and Run Shell Script respectively,
The cons:
- quite buggy e.g. naming new Shortcuts, editing Menus, deleting actions, editing parameters vs selecting variables, and even crashes!
- broken/borked functions e.g. Device Details screen width/height is always zero, using Current Date with a custom format in Set Variable does not work (but Format Current Date does)
- hard to debug - no debugging step-through, and View Content Graph is sometimes blank and the window cannot be resized or scrolled,
- mac specific actions are still very limited e.g. there is split screen for apps but no split screen for windows
- actions that work on iOS do not work on mac e.g. backing up Shortcuts to a ZIP file
- can be slow e.g. Find Windows
- does not support application automation the way Automator, AppleScript or JXA do.
- cannot copy and paste beween Shortcuts and dragging only copies the first action (and often gets the inputs wrong)
- does not support Folder Actions which are still limited to AppleScript / Automator (run the Folder Actions Setup.app to try)
In fact, I realized my Shortcuts revert to Shell scripts too often. For example, I wanted a script to take a screenshot, and save a JPG and PNG version in a folder on my desktop. las:
- the in-built Shortcuts action Take Screenshot, when used in Interactive mode on a Window, captures the window shadow - I hate that! Workaround:Run Shell Script with
screencapture -coWx
instead. - Save File cannot automatically save anywhere outside the iCloud Drive > Shortcuts folder (however, when Ask Where to Save is used, it can) - not ideal for a fully automatic Shortcut! Workaround: Run Shell Script
cat - > /Users/user/Desktop/filename
(orcp /dev/stdin /Users/user/Desktop/filename
), making sure to select the correct Input variable and setting Pass Input to stdin. - Open App does allow input variables but only to macOs Applications (
.app
) but does not work with command line (CLI) programs nor does it allow input parameters: Workaround: Shell scripts... this is becoming a trend.
I figure that stringing together a sequence of actions with many Shell scripts in between is surely sub-optimal e.g. Run Shell Script screencapture
> Convert Clipboard to JPG > Run Shell Script cat
, when a single script would do, e.g. screencapture
followed by sips
.
For now, I still have Automator scripts and liberally use AppleScript or Shell Scripts in my shortcuts. More to learn... I do hope Shortcuts gets more capabilities and third party app support in the future. Of course, I expect bugs and issues to be fixed in upcoming update(s), get to it Apple!