- 概要
- はじめに
- 概念
- 概要
- How UiPath CLI is organized
- Tools (plugins)
- スキル
- Sessions and credentials
- Using UiPath CLI
- 使用ガイド
- CI/CD recipes
- コマンド リファレンス
- 概要
- 終了コード
- Global options
- uip codedagent
- uip docsai
- add-test-data-entity
- add-test-data-queue
- add-test-data-variation
- analyze
- build
- プロジェクトを作成
- diff
- find-activities
- get-analyzer-rules
- get-default-activity-xaml
- get-errors
- get-manual-test-cases
- get-manual-test-steps
- get-versions
- get-workflow-example
- indicate-application
- indicate-element
- inspect-package
- install-data-fabric-entities
- install-or-update-packages
- list-data-fabric-entities
- list-workflow-examples
- pack
- 元に戻す
- run-file
- search-templates
- start-studio
- stop-execution
- uia
- uip traces
- 移行
- Reference & support
UiPath CLI user guide
UiPath CLI is a small host wrapped around a set of installable tools. Each tool is an ordinary npm package that registers one top-level command (and its subcommands) with the host. This is the single most important concept for understanding why uip works the way it does — what installs automatically, what doesn't, how versions are kept in sync, and why uip --help shows different commands on different machines.
Host and tools
The host (@uipath/cli, the uip executable) owns only a narrow set of concerns:
- Authentication (
uip login,uip logout,uip login status,uip login tenant …). - Session and credential management.
- Tool lifecycle (
uip tools list / search / install / update / uninstall). - Skills for coding agents (
uip skills install / update / uninstall). - The Model Context Protocol bridge (
uip mcp). - Shell completion installation (
uip completion). - Global options (
--output,--output-filter,--log-level,--log-file) and the JSON output envelope.
Everything that touches a UiPath surface — Orchestrator, Solutions, Agents, Flows, Maestro, RPA packaging, Test Manager, Integration Service, Data Fabric, Insights, Traces, DocsAI, API Workflow, Vertical Solutions, Coded Agents, and Coded Apps — lives in a separate npm package that the host loads on demand.
Why the split:
- Independent release cadences — the Orchestrator tool can ship without re-releasing the host, and vice versa.
- Smaller install footprint — a user who only runs test pipelines does not need the Flow or Maestro tools on disk.
- Stable contract — tools talk to the host through a versioned programmatic interface (command registration, output envelope, context, telemetry), not through shared internals.
- Faster startup — tool code is loaded lazily. The host does the minimum to parse argv and identify the relevant tool, then requires that tool's bundle once.
The auto-install whitelist
A set of UiPath-owned tools is on an auto-install whitelist. The host knows them by their command alias and maps the alias to an npm package:
| エイリアス | パッケージ | Long name |
|---|---|---|
or | @uipath/orchestrator-tool | Orchestrator |
solution | @uipath/solution-tool | 解決策 |
resource | @uipath/resource-tool | リソース |
rpa | @uipath/rpa-tool | RPA (Studio packaging, analyzer, restore) |
agent | @uipath/agent-tool | オペレーター |
codedagent | @uipath/codedagent-tool | コード化されたエージェント |
codedapp | @uipath/codedapp-tool | Coded App |
maestro | @uipath/maestro-tool | Maestro |
tm | @uipath/test-manager-tool | Test Manager |
is | @uipath/integrationservice-tool | Integration Service |
vss | @uipath/vertical-solutions-tool | Vertical Solutions |
api-workflow | @uipath/api-workflow-tool | API ワークフロー |
df | @uipath/data-fabric-tool | Data Fabric |
insights | @uipath/insights-tool | Insights |
traces | @uipath/traces-tool | トレース |
docsai | @uipath/docsai-tool | DocsAI |
The host treats everything else as not-a-tool. Two additional tools ship but require explicit installation — they are not on the auto-install whitelist:
- Flow (
@uipath/flow-tool, aliasflow) — install withuip tools install @uipath/flow-toolbefore runninguip flowcommands. - RPA Legacy (
@uipath/rpa-legacy-tool, aliasrpa-legacy) — Windows-only wrapper arounduipcli.exefor the Studio commands not yet ported to the cross-platformrpatool (debug, validate, find-activities, find-package, type-definition, package). Install withuip tools install @uipath/rpa-legacy-tool. See uip rpa-legacy.
What installs automatically, and what doesn't
Nothing is preinstalled. A fresh npm install -g @uipath/cli puts only the host on disk.
Two ways a tool is installed on your machine:
-
Auto-install on first use. The first time you invoke a command whose prefix matches a whitelist entry — for example
uip or folders listbefore the Orchestrator tool is installed — the host downloads and installs@uipath/orchestrator-toolfrom npm, then runs your command. Subsequent invocations use the installed tool directly, so the second run is fast. -
Explicit install. Run
uip tools install <alias>(or the full package name). Same end state; faster at runtime because no auto-install step is needed. See uip tools reference.
Use explicit install in CI runners and for offline environments so that build times are deterministic and the first command in a job does not pay the one-time download cost. See the install guide's auto-install section for the full tradeoff.
Auto-install cannot be disabled today. There is no environment variable or flag that skips it — not even CI=true. The pragmatic workaround is to pre-install the tools you know you'll use; auto-install is a no-op when the tool is already present. This is likely to change in a future MINOR release.
Third-party tools are not supported in UiPath CLI 1.x. The host validates against the whitelist at install time, so uip tools install my-company/some-tool fails with a ValidationError. A public extension mechanism may appear in a later version; for now, uip only loads the tools in the table above.
Where tools live on disk
Tools install into an @uipath/ folder under the npm prefix that owns the CLI's entry script:
- If you installed
@uipath/cliglobally (npm install -g @uipath/cli), tools install globally next to it — at$(npm root -g)/@uipath/<tool-name>/. - If you installed the CLI into a local project (
npm install @uipath/cliinside a package), tools install locally next to it — at that project'snode_modules/@uipath/<tool-name>/.
In other words, tools follow the CLI: global CLI, global tools; local CLI, local tools. This is handled automatically — you do not need to pass any scope flag to uip tools install.
Run uip tools list to see which tools are installed and what version. Run npm root -g to find the global install path on your machine.
Version resolution — tools track the host
By default, each tool version is pinned to the CLI's major.minor line. When you run uip tools install or with CLI 1.0.x, the host resolves the latest @uipath/orchestrator-tool whose version begins with 1.0. and installs that. When you run uip tools update, every installed tool is bumped to the latest version still within the CLI's major.minor line.
The practical consequences:
- Upgrading the CLI to a new MINOR version is a two-step operation. After
npm install -g @uipath/cli@1.1.0, runuip tools updateto bring every installed tool to the 1.1.x line. - Pinning the CLI effectively pins all tools.
npm install -g @uipath/cli@1.0.3and thenuip tools updateproduces a deterministic set of tool versions on any machine. - Host and tools ship compatible protocol changes together. A tool built against 1.1.x may call internal contract that 1.0.x doesn't know about — allowing mixed CLI+tool versions would risk loading a tool the host cannot understand.
You can override the default and install a specific tool version explicitly:
uip tools install orchestrator-tool@1.2.3
uip tools update --name @uipath/orchestrator-tool --version 1.2.5
uip tools install orchestrator-tool@1.2.3
uip tools update --name @uipath/orchestrator-tool --version 1.2.5
Channels (alpha, beta) are supported through npm's dist-tag mechanism — for example uip tools install orchestrator-tool@beta picks the most recent beta release. Preview commands within a stable tool are labeled independently; see Versioning and stability.
To verify which tool versions are on a machine after a deploy, uip tools list --output json prints the name, version, and command prefix of each installed tool. Diff this against a known-good snapshot to catch drift.
How the host loads tools
When uip <alias> … runs:
- The host reads argv, strips global flags (
--output,--log-level, etc.), and identifies the first non-flag token as a potential tool alias. - If the alias matches an installed tool, the host loads that tool on demand and asks it to register its subcommands.
- If the alias is on the whitelist but the tool is not installed, the host runs auto-install (see above) and then goes to step 2.
- If the alias is not on the whitelist and not a recognized host command, the host fails with "unknown command" and prints usage.
That is the entire loading model. There is no plugin manifest, no registry config file, no user-editable list. The whitelist built into the host package is the source of truth.
What to read next
- uip tools reference — full syntax and examples for every
uip toolssubcommand. - Installing UiPath CLI — install the host; tools follow from there.
- Controlling tool auto-install — the no-opt-out reality and the pre-install workaround for CI.
- Managing tools and skills — day-to-day workflows (upgrade, pin versions, inspect drift).
- Skills — a parallel system for teaching coding agents how to use
uip. Skills are not tools, anduip skillsis a separate command group. - Versioning and stability — how host and tool versions are coordinated under semver.