UiPath Studio

The UiPath Studio Guide

About Libraries

A Library is a package which contains multiple reusable components. Libraries are saved as .nupkg files and can be installed as dependencies to workflows using Package Manager.

For example, you could create a library that collects data from an Excel spreadsheet and appends it to another, as explained in the Creating a Basic Library page. Next, the library can be packaged and used in other processes as an activity.

Managing Reusable Component Activities

A reusable component activity represents one or more workflows packaged together as a .nupkg file, and utilized in other processes.

Creating a Library

  1. Go to the Studio Backstage View > Start > Library. This opens the New Blank Library window.
  2. Fill in the name and pick a location for the library. The default location is C:\Users\<current_user>\Documents\UiPath. Add a description, select the project compatibility and language, and then select Create. The new library is created and saved on your local machine.



  • The library name cannot exceed 128 characters, and the description cannot exceed 500 characters.
  • Do not use lib as a library name, as this will result in a compile error in projects where the library is installed.
  1. The Project Panel displays the tree view with the Project folder, Dependencies, and the NewActivity.xaml which contains the actual workflow.
    Each workflow file in a library is available as an activity in projects where the library is installed as a dependency. If you want to make a certain file private, right-click it and select Make Private. In this case, the file is included in the library package, but it is not available as a reusable component in the Activities panel.



By default, the dependencies available for new libraries are the same as for blank new projects, namely UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.System.Activities, and UiPath.UIAutomation.Activities, with the Lowest Applicable Version runtime rule.

To add a tooltip and help link to an activity, right-click the workflow file in the Project panel and select Properties. The tooltip is visible when you hover over the activity in the Activities and Designer panels in projects where the library is installed. The Help Link opens when you select the activity in the Designer panel and press F1.

Arguments you define in the library become activity properties in the projects where the library is installed as a dependency. Arguments that are marked as required are available in the body of the activity in the Designer panel. Annotations you add to an argument in the library are displayed as a tooltip for the property in the resulting activity's Properties panel. For more information about arguments, see Arguments Panel.



  • In the case of libraries, it is recommended to use Nothing to assign a null value to a variable, rather than "". This is done to avoid any inconsistencies when using the packaged library as a dependency to a project.
  • The ImplementationVersion property of the System.Activities.ActivityBuilder object is not supported. Setting a value for this property results in arguments not being saved. This object is displayed in the Properties panel when you select the blank area of the Designer panel.

Adjusting Library Settings

To configure the settings of a library project, open the Project Settings window by clicking Settings settings_iconsettings_icon in the Project panel.

The following options are available in the General tab:

  • Name - edit the name of the project.
  • Description - edit the description of the project.
  • Automation Hub URL - URL of an Automation Hub idea linked to the project. For more information, see Linking a Project to an Idea in Automation Hub.
  • Project Icon - optionally, define a custom icon for the project. You can browse to and select a file, or enter a path or public URL to an ico, jpeg, jpg, or png file up to 1MB in size.
    After the project is published, the icon is displayed next to the package in the Manage Packages window in Studio..
  • Include Sources - set to Yes to include all .xaml sources within the library package, including workflows that were previously made private. For Windows - Legacy libraries, the files are saved in the generated assembly file and in the lib\net45 folder in the .nupkg file. For Windows and cross-platform libraries, the files are saved in the content folder in the .nupkg file.
  • Compile activities expressions - set to Yes to compile and package all activities expressions with the library. This results in an improved execution time. Available for Windows - legacy libraries only.
  • Ready to Run - set to Yes to optimize the generated assemblies for faster JIT compilation at runtime. Available for Windows - legacy libraries only.
  • Modern Design Experience - set to Yes to enable a modern experience of working with UI Automation, including new and improved activities, recorders, and wizards, as well as the Object Repository.

Publishing a Library

Publishing libraries is similar to publishing processes. For more information, see About Publishing Automation Projects.

Limitations when Publishing Libraries

When publishing libraries, take into account the following limitations:

  • Due to NuGet limitations:
    • You cannot publish libraries to locations that contain user-restricted subfolders using Windows environment path variables.
    • Release notes for published libraries are visible only in Orchestrator.
  • Libraries with special characters in the names of .xaml files they contain may not be successfully published.
  • If a library contains a .xaml file and an argument that have the same name, the library cannot be published.
  • Library projects with the Windows - Legacy compatibility cannot be published if they contain Invoke Workflow File activities with the Isolated option selected. An error message is displayed in the Output panel when you try to publish. This limitation does not apply to libraries that use the Windows or cross-platform compatibility.
  • When using Invoke Workflow File activity, make sure the invoked file is located in the same folder as the library project.
  • The Launch Workflow Interactive activity is not supported for libraries.
  • Using Invoke Workflow File inside a library to reference the library itself is not supported.
  • If a library contains an activity that accepts a file path as input, when the component is used in a project, paths that include environment variables are interpreted as paths relative to the library folder. As a workaround, use either the Environment.GetEnvironmentVariable method or a Get Environment Folder activity to retrieve the folder path, and then use the output to construct an absolute path to pass to the reusable component.
  • If a workflow file placed inside a folder in a library is used as a namespace in a project, changing the folder name, republishing, and installing the updated library in the project results in unknown activities.

Adding Reusable Components to Automation Projects

  1. Open or create a new project.
  2. Under the All Packages category, pick the feed under which the library is saved and install the package.
  3. Select OK and the package is added to the project definition.
  4. The activity is found in the custom category of the Activities panel.

Considerations for Installing Libraries in Projects

  • Libraries can only be installed in projects that have the same compatibility.
  • If a cross-platform library contains a workflow with UI Automation activities, adding the generated activity in a cross-platform project results in a validation error when the project is executed.
  • Errors may occur when you run a project that contains custom activities from a library that was created in a Studio version prior to 2019.10.1 and published from Studio 2019.10.1 or later. In this scenario, you must recreate and republish the library.
  • When using Import Workflows to add a workflow that contains a library in a library project, the dependencies referenced in the library are not imported.
  • When importing two versions of the same custom library in a project, the extra custom activities contained only in the second library are not visible in the Activities panel unless you remove the first imported library.

Updated 2 months ago

About Libraries

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.