UiPath Documentation
uipath-cli
latest
false

UiPath CLI user guide

Last updated May 7, 2026

uip tools

uip tools manages the installable tools that extend the CLI. See Tools (plugins) for the concept.

For how to control auto-install on CI runners, see Controlling tool auto-install.

Synopsis

uip tools list
uip tools search [<query>]
uip tools install <package-spec>
uip tools update [--name <package>] [--version <version>]
uip tools uninstall <package>
uip tools list
uip tools search [<query>]
uip tools install <package-spec>
uip tools update [--name <package>] [--version <version>]
uip tools uninstall <package>

All uip tools subcommands honor the global options (--output, --output-filter, --log-level, --log-file). Exit codes follow the standard contract.

uip tools list

List the tools currently installed alongside the CLI.

Arguments: none. Options: none.

Example:

uip tools list --output table
uip tools list --output table

Data shape (--output json):

{
  "Code": "ToolList",
  "Data": [
    {
      "name": "@uipath/orchestrator-tool",
      "version": "1.0.2",
      "commandPrefix": "or"
    },
    {
      "name": "@uipath/solution-tool",
      "version": "1.0.1",
      "commandPrefix": "solution"
    }
  ]
}
{
  "Code": "ToolList",
  "Data": [
    {
      "name": "@uipath/orchestrator-tool",
      "version": "1.0.2",
      "commandPrefix": "or"
    },
    {
      "name": "@uipath/solution-tool",
      "version": "1.0.1",
      "commandPrefix": "solution"
    }
  ]
}

commandPrefix is the top-level alias you type — for example, or for Orchestrator. Use it to confirm what uip <prefix> … will actually run.

Search the UiPath tool catalog for tools you can install. Results are filtered to the whitelisted @uipath/ tools (including flow and rpa-legacy, which require explicit install). Third-party packages are not returned.

Arguments:

  • <query> (optional) — substring match against package name and description. Without it, all whitelisted tools are listed.

Options: none.

Example:

uip tools search orchestrator
uip tools search orchestrator

Data shape (--output json):

{
  "Code": "SearchResult",
  "Data": [
    {
      "name": "@uipath/orchestrator-tool",
      "latestVersion": "1.0.2",
      "description": "Orchestrator jobs, folders, processes, packages, and resources",
      "availableVersions": ["1.0.0", "1.0.1", "1.0.2"]
    }
  ]
}
{
  "Code": "SearchResult",
  "Data": [
    {
      "name": "@uipath/orchestrator-tool",
      "latestVersion": "1.0.2",
      "description": "Orchestrator jobs, folders, processes, packages, and resources",
      "availableVersions": ["1.0.0", "1.0.1", "1.0.2"]
    }
  ]
}

Search reads from the npm registry configured for the @uipath scope (typically https://registry.npmjs.org/ via the default npm config, or an overridden registry set in your .npmrc). Results are filtered client-side against the whitelist, so any @uipath/ package that is not on the whitelist is omitted.

uip tools install

Install a whitelisted tool from npm.

Arguments:

  • <package-spec> (required) — the tool to install. Any of:
    • Command alias: or, solution, tm, is, vss, df, …
    • Short name: orchestrator-tool, solution-tool, …
    • Full npm name: @uipath/orchestrator-tool, @uipath/solution-tool, …
    • With explicit version: [email protected], @uipath/[email protected], orchestrator-tool@beta.

Options: none.

Examples:

# by alias — simplest
uip tools install or

# by short name
uip tools install orchestrator-tool

# by full npm name
uip tools install @uipath/orchestrator-tool

# specific version
uip tools install orchestrator-tool@1.0.2

# preview channel (npm dist-tag)
uip tools install orchestrator-tool@beta
# by alias — simplest
uip tools install or

# by short name
uip tools install orchestrator-tool

# by full npm name
uip tools install @uipath/orchestrator-tool

# specific version
uip tools install [email protected]

# preview channel (npm dist-tag)
uip tools install orchestrator-tool@beta

Version resolution:

  • With an explicit version (@1.0.2 or @beta), that version is used as-is.
  • Without a version, the host selects the latest published version that matches the CLI's current MAJOR.MINOR line — so CLI 1.0.x installs tool 1.0.*. This keeps host and tool protocol-compatible. See Versioning and stability.

Install target: the tool is installed next to the CLI's npm package — globally if the CLI is a global install, locally if the CLI is a project-scoped install. You do not pass a scope flag. Run npm root -g to find the global install path on your machine.

Whitelist enforcement: <package-spec> must resolve to one of the whitelisted @uipath/ packages (or rpa-legacy). Any other value fails with ValidationError and exit code 3 — third-party tools are not supported in 1.x.

Data shape (--output json):

{
  "Code": "Message",
  "Data": { "Message": "Successfully installed @uipath/[email protected]" }
}
{
  "Code": "Message",
  "Data": { "Message": "Successfully installed @uipath/[email protected]" }
}

uip tools update

Update one or more installed tools to the latest compatible version.

Arguments: none.

Options:

  • --name <package> — update a single tool. Accepts alias, short name, or full npm name. Without --name, every installed tool is updated.
  • --version <version> — target version. Default is latest, which resolves the same way install does (pinned to the CLI's MAJOR.MINOR line). Pass an exact version (1.0.3) or a dist-tag (beta) to override.

Examples:

# update every installed tool to the latest version within the CLI's major.minor line
uip tools update

# update just the Orchestrator tool
uip tools update --name or

# pin a specific tool to an exact version
uip tools update --name orchestrator-tool --version 1.0.3

# switch a tool to a preview channel
uip tools update --name flow-tool --version beta
# update every installed tool to the latest version within the CLI's major.minor line
uip tools update

# update just the Orchestrator tool
uip tools update --name or

# pin a specific tool to an exact version
uip tools update --name orchestrator-tool --version 1.0.3

# switch a tool to a preview channel
uip tools update --name flow-tool --version beta

Data shape (--output json):

{
  "Code": "UpdateResult",
  "Data": [
    {
      "name": "@uipath/orchestrator-tool",
      "status": "updated",
      "from": "1.0.1",
      "to": "1.0.2"
    },
    {
      "name": "@uipath/solution-tool",
      "status": "up-to-date",
      "from": "1.0.1",
      "to": "1.0.1"
    }
  ]
}
{
  "Code": "UpdateResult",
  "Data": [
    {
      "name": "@uipath/orchestrator-tool",
      "status": "updated",
      "from": "1.0.1",
      "to": "1.0.2"
    },
    {
      "name": "@uipath/solution-tool",
      "status": "up-to-date",
      "from": "1.0.1",
      "to": "1.0.1"
    }
  ]
}

Per-tool results are always emitted, even on partial failure. If any tool fails to update, the command exits with a non-zero exit code and the failing entries carry an error field.

uip tools uninstall

Remove an installed tool.

Arguments:

  • <package> (required) — alias, short name, or full npm name.

Options: none.

Examples:

uip tools uninstall or
uip tools uninstall @uipath/solution-tool
uip tools uninstall or
uip tools uninstall @uipath/solution-tool

Data shape (--output json):

{
  "Code": "Message",
  "Data": { "Message": "Successfully uninstalled @uipath/orchestrator-tool" }
}
{
  "Code": "Message",
  "Data": { "Message": "Successfully uninstalled @uipath/orchestrator-tool" }
}

After uninstall, invoking uip or … will auto-install the Orchestrator tool again on next use, unless auto-install is blocked (for example, on a runner without network access). Install explicitly to avoid that.

Exit codes

  • 0 — success.
  • 1 — failure (install, update, uninstall, or a tool-level error). For update with multiple tools, at least one failed.
  • 3 — validation error (unknown alias, non-whitelisted package, invalid version string).

See Exit codes for the full table.

See also

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated