Making your own Quick Actions using Automator is very straightforward. You don’t need any knowledge of coding, just a clear idea of what you want the Quick Action to do. As an example, I will show here how to make a Quick Action which will add a purple Finder tag (or label) to every item in a folder, something which would be useful if you used tags to distinguish the files in different projects.
Open Automator and create a new document to start with.
This pane then drops down: select the type as Quick Action and click Choose. You will then be presented with a new Automator document ready to add actions to the right side of the window.
In this case, adding tags to files, the action doesn’t modify the data in any document, but modifies the extended attributes (xattrs) of the file. If you instead want to create a Quick Action to automatically scale image files, which will change the images themselves, Automator will offer to protect those documents for you.
If you add an action which will change the content of documents, Automator should show a warning and offer to insert a Copy Finder Items action before the action which changes the document. If this dialog doesn’t appear, you have previously told Automator not to show this message again – you can reset such warnings in the Automator menu. You could of course add your own Copy Finder Items action in the first place, but it’s usually better to rely on Automator to remind you when it’s needed.
Unless you have very good reasons to do something different, you should accept the offer to add a Copy Finder Items action, and should see something like this. When you set up the options in those actions, ensure that those documents are copied to an appropriate folder, and you won’t live to regret your Quick Action.
In this case, I’m going to add a purple tag to each item in a folder, which doesn’t alter the documents themselves, so that safeguard isn’t necessary. Locate and drag the Get Folder Contents action (in Files & Folders) in the left section of the window, placing it in the right, and tick Repeat for each subfolder found so that the action will be applied throughout the folder.
I want this Quick Action to work only on folders, so set that at the top, and only in the Finder. Automator gives you a wide choice of different icons to be used for the Quick Action; here I’ve chosen that for a tag, and set its colour to be purple.
Then locate and add the Label Finder Items action (also in Files & Folders), setting the tag to purple. The Quick Action is now complete.
To turn this into a Quick Action and save it in the right place, use the Save command in the File menu. It will then automatically be placed as a workflow in your ~/Library/Services folder ready for use.
Sooner or later, you’ll also want a Quick Action which removes colour tags in a similar way. While this is fresh in your mind, make that equivalent to remove tags. It should be identical in each of its settings apart from using a different colour, and the Label Finder Items action should have no colour selected. Oddly, the x option at the left of the row of colours doesn’t select, but just deselects any colour.
You should now have your two Quick Actions ready for use in the right folder. Create a test folder with some dummy documents, including some embedded in more folders, and test both out. As they are folder Quick Actions, it’s often easiest to call them using the Finder’s contextual menu.
For example, a more general Quick Action to the one shown above would be to copy the tag(s) from a folder, and apply them to all the files contained within it. There isn’t any bundled action to copy the tags from a folder, and the Label Finder Items action takes a single input, which doesn’t include an arbitrary tag. So the only way of setting tags like this is to have one Quick Action for each tag colour, which is frankly silly.
Automator Quick Actions, and workflows more generally, also share a common limitation with most scripting systems which is a particular problem for Quick Actions in general: they can’t offer an Undo feature. I will look at that problem in the next article.