UiPath Documentation
uipath-cli
latest
false

UiPath CLI user guide

Last updated May 7, 2026

What's new

UiPath CLI is a ground-up rewrite of the command-line tooling, replacing the uipcli.exe .NET tool used through 2025.10. If you are migrating from a 2025.10 pipeline, read the migration guide — this page is the headline summary of what changed and why.

A different tool

UiPath CLI is a TypeScript CLI distributed on npm as @uipath/cli and invoked as uip. It runs on Node.js 18+ on Windows, macOS, and Linux. The host and most tools have no .NET dependency; the rpa-tool is the exception — it wraps the Studio packager and the workflow compiler, both of which still require a .NET runtime. Install the host the same way in every environment:

npm install -g @uipath/cli
npm install -g @uipath/cli

The CLI is a plugin host. Commands for each UiPath surface — Orchestrator, Solutions, Agents, Flows, Maestro, Test Manager, and so on — ship as separate npm packages that uip auto-installs the first time you use them. See Tools (plugins).

Semantic versioning

The calendar-based versioning (2023.10, 2024.10, 2025.10) is gone. 1.0.0 is the starting point of a semver contract:

  • MAJOR — breaking changes with a full deprecation cycle first.
  • MINOR — new commands, new flags, additive only. Data shape can evolve.
  • PATCH — bug fixes only.

Host and tool versions coordinate: each tool tracks the CLI's MAJOR.MINOR line by default. See Versioning and stability.

More than CI/CD

The legacy CLI was a CI/CD tool: pack, analyze, deploy, run tests. UiPath CLI 1.x covers the full platform — build, manage, operate, deploy — and is designed to be used interactively by developers as well as programmatically by pipelines. You can now:

  • Scaffold and validate projects (uip solution new, uip agent init, uip flow init, uip maestro init).
  • Manage Orchestrator resources (folders, processes, packages, machines, users, roles, licenses, queues, assets, buckets, webhooks).
  • Start and monitor jobs (uip or jobs start, uip or jobs get), with optional --wait-for-completion.
  • Drive the full Agent lifecycle including evaluation (uip agent eval).
  • Inspect Flow and Maestro instances and incidents.
  • Manage Data Fabric entities and Integration Service connections.

Every command returns the same structured JSON envelope, so anything you can do by hand is scriptable.

JSON by default

Output is JSON on stdout by default, with a stable envelope (Result, Code, Data, Message, Instructions). Humans opt into the table view with --output table; pipelines and AI agents get clean, structured data without extra flags. See Output formats.

Human-friendly interactive login

uip login opens a browser, signs you into UiPath, and persists the refreshed session inside ~/.uipath/. Client credentials no longer need to be embedded on a developer workstation. CI pipelines still use External App client credentials (now passed through --client-id env.UIPATH_CLIENT_ID), and containers can use environment-variable auth with an opaque access token. See Authentication.

Built for AI coding agents

The uip skills system teaches Claude Code, Cursor, GitHub Copilot, Gemini CLI, Codex, and OpenCode how to use uip. Skills are published by UiPath and installed per-agent. Once installed, the agent can drive a full pack-publish-deploy flow without requiring you to type each command. See Using UiPath CLI with coding agents.

Shell completion

uip completion installs tab completion for bash, zsh, fish, and PowerShell. Dynamic flag-value completion (for example, uip or packages upload --package-name <TAB>) is available on zsh when jq is on the PATH; static subcommand and option-name completion works on all four shells.

Other meaningful shifts

  • No implicit env-var auth reading. UIPATH_CLIENT_ID and UIPATH_CLIENT_SECRET are no longer read automatically. Pass them through --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET (the env. prefix looks up the variable at runtime without exposing it on the command line).
  • Exit codes tightened to five values (0 / 1 / 2 / 3 / 4, plus 130 for user cancellation). The contract is stable within a MAJOR release — script against them. See Exit codes.
  • JMESPath filtering (--output-filter) on every command, at parse time, with exit code 3 on syntax errors so a typo does not waste an API call.
  • Cross-platform. ARM64 Windows, macOS, and Linux are supported — a reflection of the Node.js runtime.
  • Telemetry opt-out variable renamed from UIPATH_EXTENSIONS_CLI_TELEMETRY_ENABLED=False to UIPATH_TELEMETRY_DISABLED=1. Both generations are opt-out by default — update CI runners that relied on the old name.

Where to start

See Release notes for the full change list and anything shipped after.

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated