UiPath Assistant Mac OS X Meets Apple Automator

With the current release 2021.12 is also a Mac OS X version of the assistant available. As participant of the private preview I tried an integration scenario of the Assistant with Apple Automator.


Apple Automator is a standard application which is included in Mac OS X. It allows to build custom workflows to execute simple and complex tasks automatically. It has the same targets as the UiPath automation. It can be assumed that many users use it for routine tasks on their Macs.

The Automator Workflow

In my example I build a very easy Automator task. Here a simple call of an AppleScript that adds two numbers and displays them in a dialog. The workflow is saved with the name 42.

An Automator workflow is stored as a directory and it contains XML files, which describes the automation workflow.

The UiPath Workflow with the Invoke Code Activity

To call an Automator Workflow I use an Invoke Code Activity, which uses the same approach as I described in my post about the cross-platform integration scenario with PowerShell Core. All is described here.

The Assistant on Mac OS X

When the workflow is called in the UiPath Assistant, the dialog with the sum of the numbers pops up, in this case 42.

Embed Automator Workflow Into UiPath Workflow

It is possible to embed the Automator workflow into the UiPath workflow. On this way existing Automator workflows can be packed into an UiPath workflow, and with this a complete independence from the target system can be achieved. Everything is part of the UiPath NuGet package.


This approach offers the possibility of a seamless integration of existing consolidated Mac OS X automation workflows into the UiPath RPA platform. Available automations can continue to be used easily. Many special perspectives of Mac OS X automation can be realized on this way.

On the same way it should be possible to execute AppleScript, only with osascript command. AppleScript are binary scpt files.


AppleScript Addendum

To check if AppleScript works on this way, I built a corresponding test scenario. Here I use the same approach with an editor to develop Invoke Code Activities, but not so comfortable.

After compiling, I run the program and all works as expected.



The method Process.Start of the System.Diagnostic namespace is, as far as one can tell, a very universal approach with which integration scenarios can be developed very easily. We have seen this in the Windows, Linux and Mac OS X context. Cross-platform Custom Activities, that have this in focus, should be very easy to create. We will see …


This is great stuff!

1 Like


Thank you very much Sebastian. :slightly_smiling_face:

@StefanSchnell great stuff. Is there a way to pass values from UiPath to Automator ??