@uipath/cli
v0.9.1
Published
Cross platform CLI for UiPath
Maintainers
Keywords
Readme
UiPath CLI (uip)
A command-line interface tool for interacting with UiPath Cloud services. The CLI provides authentication, session management, and a plugin system for extending functionality with additional tools.
Installation
Using npm
npm install -g @uipath/cliUsing bun
bun install -g @uipath/cliAfter installation, the uip command will be available globally.
Quick Start
Login to UiPath Cloud
uip loginCheck your login status
uip login statusView available commands
uip --help
Commands
Authentication
uip login
Authenticate with UiPath Cloud using interactive OAuth login.
Options:
-f, --file <folder>- Path to credentials folder (default:.uipath)--authority <url>- Custom authority URL--client-id <id>- Custom Client ID-s, --scope <scopes>- Custom scopes (space separated)-t, --tenant <name>- Tenant name (non-interactive mode)--it, --interactive- Interactively select tenant from list
Examples:
# Basic interactive login
uip login
# Login with custom credentials folder
uip login -f /path/to/my-folder
# Login with specific tenant
uip login -t my-tenant-name
# Interactive tenant selection
uip login --interactiveuip login status
Display current login status and session information.
Options:
-f, --file <folder>- Path to credentials folder (default:.uipath)
Example:
uip login statusOutput:
✅ Logged in
Organization ID: abc123...
Base URL: https://cloud.uipath.comEnvironment-variable authentication (CI/CD)
For non-interactive environments such as CI/CD pipelines, containers, or
scheduled jobs, the CLI can source credentials directly from environment
variables — bypassing the interactive login flow and the on-disk
.uipath/.auth file entirely.
Set UIPATH_CLI_ENABLE_ENV_AUTH=true to opt in, then provide the
following variables:
| Variable | Description |
| --- | --- |
| UIPATH_CLI_AUTH_TOKEN | Access token (JWT). The server URL is derived from its iss claim. |
| UIPATH_CLI_ORGANIZATION_NAME | Organization slug |
| UIPATH_CLI_ORGANIZATION_ID | Organization UUID |
| UIPATH_CLI_TENANT_NAME | Tenant slug |
| UIPATH_CLI_TENANT_ID | Tenant UUID |
Example (GitHub Actions):
env:
UIPATH_CLI_ENABLE_ENV_AUTH: "true"
UIPATH_CLI_AUTH_TOKEN: ${{ secrets.UIPATH_TOKEN }}
UIPATH_CLI_ORGANIZATION_NAME: contoso
UIPATH_CLI_ORGANIZATION_ID: ${{ secrets.UIPATH_ORG_ID }}
UIPATH_CLI_TENANT_NAME: Default
UIPATH_CLI_TENANT_ID: ${{ secrets.UIPATH_TENANT_ID }}Notes:
- The access token is treated as opaque — the caller is responsible for
its freshness. There is no refresh flow: if the token is expired,
uip login statusreportsExpiredand commands fail until the env var is rotated. - The server URL is not a separate env var — it is derived from the
token's
issclaim, which is the authoritative source for the identity server that minted the token. This prevents mis-routing when a user setsUIPATH_URLinconsistently with the token. - When
UIPATH_CLI_ENABLE_ENV_AUTHis unset (or any value other than the literal stringtrue), the file-based auth flow is used — no behavior change for existing users. - Missing or empty required variables produce a clear error naming the offending variable rather than a generic "not authenticated".
Tool Management
The CLI supports a plugin system that allows you to extend functionality by installing additional tools.
uip tools list
List all currently installed tools.
Example:
uip tools listOutput:
🔧 Installed Tools:
✓ automation-tool v1.0.0
Command: uip automation
Automate workflows and processesuip tools search [query]
Search for available tools in the configured registry.
Example:
# Search for tools
uip tools search automation
# Interactive search (prompts for query)
uip tools searchOutput:
🔍 Searching for 'automation'...
📦 Found: @uipath/automation-tool (v1.0.0)
Description: Automate workflows and processes
Publisher: uipath
To install: uip tools install <package-name>uip tools install <package-name>
Install a tool from the registry.
Example:
uip tools install @uipath/automation-toolOutput:
📦 Installing '@uipath/automation-tool'...
✅ Successfully installed @uipath/automation-toolGetting Help
- View all available commands:
uip --help - View help for a specific command:
uip <command> --help - View version:
uip --version
Proxy Support
The CLI respects standard HTTP proxy environment variables. This is useful in corporate environments where internet access goes through a proxy server.
Supported environment variables:
| Variable | Description |
|---|---|
| HTTP_PROXY / http_proxy | Proxy for HTTP requests |
| HTTPS_PROXY / https_proxy | Proxy for HTTPS requests |
| NO_PROXY / no_proxy | Comma-separated list of hosts that bypass the proxy |
Examples:
# Linux / macOS
export HTTPS_PROXY=http://proxy.example.com:8080
uip login
# Windows (cmd)
set HTTPS_PROXY=http://proxy.example.com:8080
uip login
# Windows (PowerShell)
$env:HTTPS_PROXY = "http://proxy.example.com:8080"
uip login
# With authentication
export HTTPS_PROXY=http://user:[email protected]:8080
uip login
# Bypass proxy for specific hosts
export HTTPS_PROXY=http://proxy.example.com:8080
export NO_PROXY=localhost,127.0.0.1,.internal.corp
uip loginNote: When running under Bun, proxy support is built-in. When running under Node.js, the CLI uses Node's built-in undici module to enable proxy-aware
fetch().
Troubleshooting
Not logged in error
If you see ❌ Not logged in, run uip login to authenticate.
Tool not found after installation
After installing a new tool with uip tools install, you may need to restart your terminal or CLI session for the tool to become available.
Authentication issues
If you're having trouble logging in, try:
- Check your internet connection
- Verify your credentials
- Use
uip login --interactiveto manually select your tenant
For Developers
Development Setup
To work on the CLI locally:
# Install dependencies
bun install
# Run in development mode
bun run index.ts
# Build the project
bun run build
# Run tests
bun testContributing
For bug reports and feature requests, please visit the GitHub repository.
