UiPath Documentation
studio
latest
false
Studio user guide

Chrome Extension on Mac

Install the UiPath Extension for Chrome on Mac for browser automation, with options for user-level or machine-wide installation.

This extension helps you create browser automations in Google Chrome on Mac.

Install

You can install the Chrome extension using one of the following methods:

Installs can be performed using UiPath Assistant or from Terminal (invoking UiPath.ExtensionControl.Portable.dll).

UiPath Assistant and UiPath.ExtensionControl.Portable.dll install the latest extension version, as follows:

Install typeExtension version
Current UserLatest UiPath extension for Studio Web published on the Chrome WebStore.
All UsersLatest UiPath extension for Studio Web published on the Chrome WebStore.
Group Policy OnlineLatest UiPath extension for Studio Web published on the Chrome WebStore.
Group Policy OfflineLatest self-hosted extension bundled with UiPath Assistant.
Current User (Native Messaging Host only)Latest UiPath extension for Studio Web published on the Chrome WebStore.
All Users (Native Messaging Host only)Latest UiPath extension for Studio Web published on the Chrome WebStore.

You can also use UiPath.ExtensionControl.Portable.dll to install a specific browser extension version. Run it with the help command for details:

dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll help install chrome
dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll help install chrome

Current User

This method installs the extension only for the current user. It creates or updates the JSON configuration files used by Chrome to detect extensions. These files define the extension ID, update URL, and the path to the native messaging host.

A. Install Steps using UiPath Assistant
  1. Access UiPath Assistant.

  2. Select the account icon.

  3. Select Preferences.

  4. Go to UiPath Extensions.

  5. Use the dropdown for Google Chrome to select the Current User install type.

  6. Select Install.

  7. Select Enable Extension in the Google Chrome confirmation pop-up.

Result: The extension is installed and enabled.

B. Install Steps using UiPath.ExtensionControl.Portable.dll (from the Terminal)

Prerequisites:

  • Always run the command using the UiPath.ExtensionControl.Portable.dll file from the /Applications directory, as macOS is sensitive when it comes to executing binaries from other locations.
  • Close all Chrome windows before running the command.
  1. Open a Terminal and run the following command:

    dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome
    dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome
    
  2. Select Enable Extension in the Google Chrome confirmation pop-up.

Result: The extension is installed and enabled.

Note:

Add the --ext-id={extensionId} option to target a specific extension version; if omitted, the latest version published to the Web Store is installed. For available IDs, see Studio - List of extensions for Chrome.

All Users

This method installs the extension for all users on the machine. It works similarly to the Current User method by creating or updating the JSON configuration files that Chrome uses to detect extensions. The difference lies in the file location: this method writes the configuration files to a system-wide location, whereas the Current User method writes them to a user-specific location.

A. Install Steps using UiPath Assistant
  1. Access UiPath Assistant.

  2. Select the account icon.

  3. Select Preferences.

  4. Go to UiPath Extensions.

  5. Use the dropdown for Google Chrome to select the All Users install type.

  6. Select Install.

  7. Enter the admin password in the UiPath Assistant confirmation pop-up.

  8. Select Enable Extension in the Google Chrome confirmation pop-up.

Result: The extension is installed and enabled.

B. Install Steps using UiPath.ExtensionControl.Portable.dll (from the Terminal)

Prerequisites:

  • Always run the command using the UiPath.ExtensionControl.Portable.dll file from the /Applications directory, as macOS is sensitive when it comes to executing binaries from other locations.
  • Close all Chrome windows before running the command.
  1. Open a Terminal and run the following command:

    sudo dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome --scope=machine
    sudo dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome --scope=machine
    
  2. Select Enable Extension in the Google Chrome confirmation pop-up.

Result: The extension is installed and enabled.

Note:
  • sudo is needed to run this command, as it updates system configuration files.
  • Add the --ext-id={extensionId} option to target a specific extension version; if omitted, the latest version published to the Web Store is installed. For available IDs, see Studio - List of extensions for Chrome.

Group Policy Online

This method doesn't require the manual step to enable the extension after Chrome is first started. This is because it relies on Configuration profiles deployed by MDM (Mobile Device Management) tools.

The Configuration profile sets the ExtensionInstallForcelist policy. This policy ensures that the extension is enabled and that it can't be disabled manually.

This procedure is similar to the Windows Group Policy Online installation method described here: Studio - Extension for Chrome.

MDM requirements

To install a Configuration profile (a .mobileconfig file) an MDM application should be present on the machine, and the machine has to be enrolled to be managed.

Examples of MDMs include:

If the device is enrolled in an MDM solution, ensure that the configuration is not overridden by the Configuration updates pushed via MDM. To prevent this, deploy the Configuration profile directly via MDM. The profile should contain settings similar to the example below:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>PayloadContent</key>
	<array>
		<dict>
			<!-- This policy ensures that the {extensionId} is enabled -->
			<key>ExtensionInstallForcelist</key>
			<array>
				<string>{extensionId};https://clients2.google.com/service/update2/crx</string>
			</array>
			<!-- These policies specifically enable the Developer mode for {extensionId} -->
			<key>DeveloperToolsAvailabilityAllowlist</key>
			<array>
				<string>chrome-extension://{extensionId}</string>
			</array>
			<key>DeveloperToolsAvailabilityBlocklist</key>
			<array>
				<string>https://uipath-devtools-blocklist-placeholder.invalid</string>
			</array>
			<!-- Alternatively, this policy globally enables the Developer mode in chrome://extensions.
			Can be used in place of DeveloperToolsAvailabilityAllowlist / DeveloperToolsAvailabilityBlocklist -->
			<key>DeveloperToolsAvailability</key>
			<integer>1</integer>

			<!-- The policies below are not mandatory, but they are useful in some systems, 
			depending on the already present configuration -->
			<key>BlockExternalExtensions</key>
			<false/>
			
			<key>ExtensionAllowedTypes</key>
			<array>
				<string>extension</string>
			</array>
			
			<key>NativeMessagingUserLevelHosts</key>
			<true/>
			
			<key>NativeMessagingAllowlist</key>
			<array>
				<string>com.uipath.portable_host</string>
			</array>
			
			<key>PayloadDisplayName</key>
			<string>Google Chrome</string>
			<key>PayloadIdentifier</key>
			<string>com.google.Chrome.2C2280F4-2955-49E9-8161-A599B9BB6685</string>
			<key>PayloadType</key>
			<string>com.google.Chrome</string>
			<key>PayloadUUID</key>
			<string>2C2280F4-2955-49E9-8161-A599B9BB6685</string>
			<key>PayloadVersion</key>
			<integer>1</integer>
		</dict>
	</array>
	<key>PayloadDisplayName</key>
	<string>UiPath Studio Web Automation Chrome Extension Installation</string>
	<key>PayloadIdentifier</key>
	<string>com.uipath.chrome.extension.A64BC628-4ECF-4A71-91D5-20D7C7475C38</string>
	<key>PayloadOrganization</key>
	<string>com.uipath</string>
	<key>PayloadScope</key>
	<string>System</string>
	<key>PayloadType</key>
	<string>Configuration</string>
	<key>PayloadUUID</key>
	<string>A64BC628-4ECF-4A71-91D5-20D7C7475C38</string>
	<key>PayloadVersion</key>
	<integer>1</integer>
	<key>TargetDeviceType</key>
	<integer>5</integer>
</dict>
</plist>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>PayloadContent</key>
	<array>
		<dict>
			<!-- This policy ensures that the {extensionId} is enabled -->
			<key>ExtensionInstallForcelist</key>
			<array>
				<string>{extensionId};https://clients2.google.com/service/update2/crx</string>
			</array>
			<!-- These policies specifically enable the Developer mode for {extensionId} -->
			<key>DeveloperToolsAvailabilityAllowlist</key>
			<array>
				<string>chrome-extension://{extensionId}</string>
			</array>
			<key>DeveloperToolsAvailabilityBlocklist</key>
			<array>
				<string>https://uipath-devtools-blocklist-placeholder.invalid</string>
			</array>
			<!-- Alternatively, this policy globally enables the Developer mode in chrome://extensions.
			Can be used in place of DeveloperToolsAvailabilityAllowlist / DeveloperToolsAvailabilityBlocklist -->
			<key>DeveloperToolsAvailability</key>
			<integer>1</integer>

			<!-- The policies below are not mandatory, but they are useful in some systems, 
			depending on the already present configuration -->
			<key>BlockExternalExtensions</key>
			<false/>
			
			<key>ExtensionAllowedTypes</key>
			<array>
				<string>extension</string>
			</array>
			
			<key>NativeMessagingUserLevelHosts</key>
			<true/>
			
			<key>NativeMessagingAllowlist</key>
			<array>
				<string>com.uipath.portable_host</string>
			</array>
			
			<key>PayloadDisplayName</key>
			<string>Google Chrome</string>
			<key>PayloadIdentifier</key>
			<string>com.google.Chrome.2C2280F4-2955-49E9-8161-A599B9BB6685</string>
			<key>PayloadType</key>
			<string>com.google.Chrome</string>
			<key>PayloadUUID</key>
			<string>2C2280F4-2955-49E9-8161-A599B9BB6685</string>
			<key>PayloadVersion</key>
			<integer>1</integer>
		</dict>
	</array>
	<key>PayloadDisplayName</key>
	<string>UiPath Studio Web Automation Chrome Extension Installation</string>
	<key>PayloadIdentifier</key>
	<string>com.uipath.chrome.extension.A64BC628-4ECF-4A71-91D5-20D7C7475C38</string>
	<key>PayloadOrganization</key>
	<string>com.uipath</string>
	<key>PayloadScope</key>
	<string>System</string>
	<key>PayloadType</key>
	<string>Configuration</string>
	<key>PayloadUUID</key>
	<string>A64BC628-4ECF-4A71-91D5-20D7C7475C38</string>
	<key>PayloadVersion</key>
	<integer>1</integer>
	<key>TargetDeviceType</key>
	<integer>5</integer>
</dict>
</plist>

If the device is not enrolled in an MDM solution, the required configuration files are written locally, without them being overridden by MDM-applied policies. This allows Chrome to apply the policy and ensures that the extension is enabled without requiring user interaction.

A. Install Steps using UiPath Assistant
  1. Access UiPath Assistant.

  2. Select the account icon.

  3. Select Preferences.

  4. Go to UiPath Extensions.

  5. Use the dropdown for Google Chrome to select the By Policy install type.

  6. Select Install.

  7. Enter the admin password in the UiPath Assistant confirmation pop-up.

Result: The extension is installed and enabled.

B. Install Steps using UiPath.ExtensionControl.Portable.dll (from the Terminal)

Prerequisites:

  • Always run the command using the UiPath.ExtensionControl.Portable.dll file from the /Applications directory, as macOS is sensitive when it comes to executing binaries from other locations.
  • Close all Chrome windows before running the command.
  • To install for the current user only instead of all users, replace --scope=machine with --scope=user in the command below; other users won't get the extension installed.
Warning:

If the machine is MDM-enrolled you need to make sure that the policies are not overwritten. See the MDM Requirements for more details.

  1. Open a Terminal and run the following command:

    sudo dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome bypolicy --scope=machine
    sudo dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome bypolicy --scope=machine
    

Result: The extension is installed and enabled.

Note:
  • sudo is needed to run this command, as it updates system configuration files, and the bypolicy option automatically sets the scope to machine.
  • Add the --ext-id={extensionId} option to target a specific extension version; if omitted, the latest version published to the Web Store is installed. See Studio - List of extensions for Chrome for available IDs.

Group Policy Offline

This procedure is similar to the Windows Group Policy Offline installation method described here: Studio - Extension for Chrome.

This method relies on Configuration profiles deployed by MDM (Mobile Device Management) tools. The Configuration profile applies the ExtensionInstallForcelist policy, which ensures that the extension is automatically enabled and cannot be disabled by users. It also configures the DeveloperToolsAvailabilityAllowlist / DeveloperToolsAvailabilityBlocklist policies to specifically allow Developer Tools access to UiPath extension.

This method:

  • Lets you install any extension, whether published to Web Store or unpublished.
  • Is useful in environments with restricted Internet access (where https://clients2.google.com/service/update2/crx cannot be accessed).
Warning:
  • This method only works on machines that are MDM enrolled. See the MDM Requirements for more details.
A. Install Steps using UiPath Assistant
  1. Access UiPath Assistant.

  2. Select the account icon.

  3. Select Preferences.

  4. Go to UiPath Extensions.

  5. Use the dropdown for Google Chrome to select the By Policy (Offline) install type.

  6. Select Install.

  7. Enter the admin password in the UiPath Assistant confirmation pop-up.

Result: The extension is installed and enabled.

B. Install Steps using UiPath.ExtensionControl.Portable.dll (from the Terminal)

Prerequisites:

  • Always run the command using the UiPath.ExtensionControl.Portable.dll file from the /Applications directory, as macOS is sensitive when it comes to executing binaries from other locations.
  • Close all Chrome windows before running the command.
  • To install for the current user only instead of all users, add --scope=user to the command below; by default, the bypolicy option sets the scope to machine.
  1. Open a Terminal and run the following command:

    sudo dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome bypolicy --offline
    sudo dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome bypolicy --offline
    
  2. Start Chrome.

  3. Design and run automations.

Result: The extension is installed and enabled.

Note:

sudo is needed to run this command, as it updates system configuration files. Using the bypolicy option automatically sets the scope to machine.

Current User (Native Messaging Host only)

This method installs only the extension's Native Messaging Host component for the current user. It creates or updates the JSON configuration files used by Chrome to allow communication with a native host.

Warning:

The extension needs to be installed manually from the WebStore or via a MDM configuration. See the MDM Requirements for more details.

A. Install Steps using UiPath Assistant
  1. Access UiPath Assistant.

  2. Select the account icon.

  3. Select Preferences.

  4. Go to UiPath Extensions.

  5. Use the dropdown for Google Chrome to select the Current User (Native Messaging Host only) install type.

  6. Select Install.

Result: The extension's native messaging host component is installed.

B. Install Steps using UiPath.ExtensionControl.Portable.dll (from the Terminal)

Prerequisites:

  • Always run the command using the UiPath.ExtensionControl.Portable.dll file from the /Applications directory, as macOS is sensitive when it comes to executing binaries from other locations.
  • Close all Chrome windows before running the command.
  1. Open a Terminal and run the following command:

    dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome native-messaging-host-only
    dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome native-messaging-host-only
    

Result: The extension's native messaging host component is installed.

Note:

Add the --ext-id={extensionId} option to target a specific extension version; if omitted, the latest version published to the Web Store is installed. For available IDs, see Studio - List of extensions for Chrome.

All Users (Native Messaging Host only)

This method installs only the extension's Native Messaging Host component for all users. It creates or updates the JSON configuration files used by Chrome to allow communication with a native host.

Warning:

The extension needs to be installed manually from the WebStore or via a MDM configuration. See the MDM Requirements for more details.

A. Install Steps using UiPath Assistant
  1. Access UiPath Assistant.

  2. Select the account icon.

  3. Select Preferences.

  4. Go to UiPath Extensions.

  5. Use the dropdown for Google Chrome to select the All Users (Native Messaging Host only) install type.

  6. Select Install.

  7. Enter the admin password in the UiPath Assistant confirmation pop-up.

Result: The extension's native messaging host component is installed.

B. Install Steps using UiPath.ExtensionControl.Portable.dll (from the Terminal)

Prerequisites:

  • Always run the command using the UiPath.ExtensionControl.Portable.dll file from the /Applications directory, as macOS is sensitive when it comes to executing binaries from other locations.
  • Close all Chrome windows before running the command.
  1. Open a Terminal and run the following command:

    dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome native-messaging-host-only --scope=machine
    dotnet /Applications/UiPath\ Assistant.app/Contents/Extensions/UiPath.ExtensionControl.Portable.dll install chrome native-messaging-host-only --scope=machine
    

Result: The extension's native messaging host component is installed.

Note:

Add the --ext-id={extensionId} option to target a specific extension version; if omitted, the latest version published to the Web Store is installed. For available IDs, see Studio - List of extensions for Chrome.

Uninstall

Uninstall from UiPath Assistant

  1. Access UiPath Assistant.

  2. Go to UiPath Extensions.

  3. Select Uninstall for Google Chrome.

Result: The extension is uninstalled.

Uninstall from Terminal

You can uninstall the UiPath extension for Chrome, regardless of the installation method, by running the following command:

dotnet UiPath.ExtensionControl.Portable.dll cleanup chrome
dotnet UiPath.ExtensionControl.Portable.dll cleanup chrome

Result: The extension is uninstalled.

Check status

To check the status of the Chrome Extension, run the corresponding Terminal command based on your installation method:

  • Current User
    dotnet UiPath.ExtensionControl.Portable.dll status chrome
    dotnet UiPath.ExtensionControl.Portable.dll status chrome
    
  • All Users
    dotnet UiPath.ExtensionControl.Portable.dll status chrome --scope=machine
    dotnet UiPath.ExtensionControl.Portable.dll status chrome --scope=machine
    
  • Group Policy Online
    dotnet UiPath.ExtensionControl.Portable.dll status chrome bypolicy --scope=machine
    dotnet UiPath.ExtensionControl.Portable.dll status chrome bypolicy --scope=machine
    
  • Group Policy Offline
    dotnet UiPath.ExtensionControl.Portable.dll status chrome bypolicy --offline --scope=machine
    dotnet UiPath.ExtensionControl.Portable.dll status chrome bypolicy --offline --scope=machine
    
  • Current User (Native Messaging Host only)
    dotnet UiPath.ExtensionControl.Portable.dll status chrome native-messaging-host-only
    dotnet UiPath.ExtensionControl.Portable.dll status chrome native-messaging-host-only
    
  • All Users (Native Messaging Host only)
    dotnet UiPath.ExtensionControl.Portable.dll status chrome native-messaging-host-only --scope=machine
    dotnet UiPath.ExtensionControl.Portable.dll status chrome native-messaging-host-only --scope=machine
    

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated