UiPath Documentation
uipath-cli
latest
false
Importante :
Este conteúdo foi traduzido com auxílio de tradução automática. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

Guia do usuário da UiPath CLI

Migração: mapa de comando

Cada verbo uipcli legado com seu equivalente uip . As entradas legadas refletem a superfície pública uipcli documentada para 2025.10 e anterior; a coluna uip corresponde às páginas de referência publicadas.

Como ler esta página. As linhas são agrupadas pela família de verbos legados (package, job, test, asset, solution, run). Cada linha carrega uma classificação:

  • 1:1 — renomeação direta; o novo conjunto de sinalizadores está próximo o suficiente para que uma porta automática funcione.
  • 2 etapas / N etapas — um verbo legado mapeia várias chamadas uip .
  • Removido — substituição: … — o verbo legado não tem sucessor direto; a coluna "replacement" informa o fluxo idiomático de novo-CLI para o mesmo resultado.

Para obter detalhes no nível de sinalizador dentro de cada verbo, consulte Renomeações de sinalizadores. Para as alterações de autenticação/saída subjacentes que se aplicam a cada verbo, consulte Alterações interruptivas.

Pacote

Comando legadouip EquivalenteObservações
uipcli package pack <project>uip rpa pack <project>1:1. A nova superfície de sinalizador usa Kebab-case; --outputType--output-type, --autoVersion--auto-version, etc. uip rpa invocam o empacotador do Studio, que é suportado por.NET — o executor ainda precisa de um runtime.NET disponível. Consulte pacote de rpa uip.
uipcli package analyze <project>uip rpa analyze <project> --governance-file-path <policy>1:1. --governanceFilePath torna-se --governance-file-path (kebab-case). As regras do analisador de fluxo de trabalho permanecem inalteradas. O back-end.NET se aplica, o mesmo que rpa pack. Consulte análise de rpa do uip.
uipcli package deploy <path> <url> <tenant>uip or packages upload <path> Then uip or processes create --name <n> --package-key <k> --package-version <v> --folder-path <path>2 etapas. A implantação legada carrega o .nupkg e cria um processo em uma chamada; a nova CLI divide essas preocupações. Consulte uip ou upload de pacotes e uip ou criação de processos.
uipcli package restore <project>uip rpa restore <project> [outputPath]1:1. Restaura as dependências do pacote NuGet; é compatível com configurações do NuGet isoladas e personalizadas por meio dos mesmos sinalizadores que o legado. O back-end do.NET se aplica. Consulte restauração de rpa do uip.

Pacote

# Legacy
uipcli package pack "C:\proj\project.json" -o "C:\dist" \
    --outputType Process --autoVersion \
    --traceLevel Information

# uip
uip rpa pack ./proj --output-type Process --auto-version
# Legacy
uipcli package pack "C:\proj\project.json" -o "C:\dist" \
    --outputType Process --autoVersion \
    --traceLevel Information

# uip
uip rpa pack ./proj --output-type Process --auto-version

Consulte pacote uip rpa para ver a lista completa de sinalizadores. A ferramenta encapsula o mesmo empacotador do Studio que a CLI legada usou, portanto, o formato de saída e o suporte ao projeto são idênticos.

análise de pacote

# Legacy
uipcli package analyze "C:\proj\project.json" \
    --governanceFilePath "C:\policy.json" \
    --resultPath "C:\result.json" \
    --stopOnRuleViolation

# uip
uip rpa analyze ./proj \
    --governance-file-path ./policy.json \
    --result-path ./result.json \
    --stop-on-rule-violation
# Legacy
uipcli package analyze "C:\proj\project.json" \
    --governanceFilePath "C:\policy.json" \
    --resultPath "C:\result.json" \
    --stopOnRuleViolation

# uip
uip rpa analyze ./proj \
    --governance-file-path ./policy.json \
    --result-path ./result.json \
    --stop-on-rule-violation

Implantação de pacote

Esta é a linha que captura cada porta do pipeline. Legado deploy é uma upload-e-criação único; uip divide-o em duas etapas explícitas para que o pacote possa ser carregado uma vez e associado a várias pastas.

# Legacy — upload and create a process in one call
uipcli package deploy "C:\pkg\InvoiceProcessing.1.0.3.nupkg" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.Execution" \
    -o "Shared" \
    --processName "InvoiceProcessing" \
    --entryPointsPath "Main.xaml"

# uip — upload, then create the process
uip login \
  --client-id env.UIPATH_CLIENT_ID \
  --client-secret env.UIPATH_CLIENT_SECRET \
  --tenant TenantName

uip or packages upload ./InvoiceProcessing.1.0.3.nupkg
#    response includes "body": "InvoiceProcessing:1.0.3"

uip or processes create \
    --name InvoiceProcessing \
    --package-key InvoiceProcessing \
    --package-version 1.0.3 \
    --folder-path Shared \
    --entry-point Main.xaml
# Legacy — upload and create a process in one call
uipcli package deploy "C:\pkg\InvoiceProcessing.1.0.3.nupkg" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.Execution" \
    -o "Shared" \
    --processName "InvoiceProcessing" \
    --entryPointsPath "Main.xaml"

# uip — upload, then create the process
uip login \
  --client-id env.UIPATH_CLIENT_ID \
  --client-secret env.UIPATH_CLIENT_SECRET \
  --tenant TenantName

uip or packages upload ./InvoiceProcessing.1.0.3.nupkg
#    response includes "body": "InvoiceProcessing:1.0.3"

uip or processes create \
    --name InvoiceProcessing \
    --package-key InvoiceProcessing \
    --package-version 1.0.3 \
    --folder-path Shared \
    --entry-point Main.xaml

Observações:

  • O posicional <orchestrator_url> e <orchestrator_tenant> do legado são substituídos pelo contexto da sessão de uip login (além da substituição opcional -t, --tenant em cada chamada). Eles nunca aparecem como argumentos posicionais em uip.
  • --processName é um nome de exibição personalizado para o processo criado. Em uip o equivalente é --name em processes create — não --process (que não existe).
  • --processNames <csv> (criação em massa de vários processos em 25.10) não tem equivalente direto; script um loop sobre linhas ou leia Soluções para o fluxo de vários processos recomendado.
  • Legado --entryPointsPath (CSV) torna-se --entry-point (caminho único) em uip or processes create; execute processes create uma vez por ponto de entrada para pacotes com vários pontos de entrada.

restauração do pacote

# Legacy
uipcli package restore "C:\proj" \
    --restoreFolder "C:\deps" \
    --nugetConfigFilePath "C:\NuGet.Config"

# uip
uip rpa restore ./proj ./deps
# Legacy
uipcli package restore "C:\proj" \
    --restoreFolder "C:\deps" \
    --nugetConfigFilePath "C:\NuGet.Config"

# uip
uip rpa restore ./proj ./deps

Tarefa

Comando legadouip EquivalenteObservações
uipcli job run <processName> <url> <tenant>uip or jobs start <process-key>1:1 na intenção; identity é um GUID, não um nome. A CLI legada usou o nome de lançamento do processo como o argumento posicional; a nova CLI pega a chave de processo ( uip or processes list) retornada por. Use --wait-for-completion para o comportamento legado -w true + -W <timeout> . Consulte uip ou início de trabalhos.
# Legacy
uipcli job run "InvoiceProcessing" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.Execution OR.Jobs" \
    -o "Shared" \
    -i "C:\input.json" \
    -w true -W 3600

# uip — resolve the name to a key, then start with wait-for-completion
PROCESS_KEY=$(uip or processes list --folder-path Shared \
    --name InvoiceProcessing \
    --output-filter "Data[0].Key" \
    --output plain)

uip or jobs start "$PROCESS_KEY" \
    --input-file ./input.json \
    --wait-for-completion \
    --timeout 3600
# Legacy
uipcli job run "InvoiceProcessing" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.Execution OR.Jobs" \
    -o "Shared" \
    -i "C:\input.json" \
    -w true -W 3600

# uip — resolve the name to a key, then start with wait-for-completion
PROCESS_KEY=$(uip or processes list --folder-path Shared \
    --name InvoiceProcessing \
    --output-filter "Data[0].Key" \
    --output plain)

uip or jobs start "$PROCESS_KEY" \
    --input-file ./input.json \
    --wait-for-completion \
    --timeout 3600

Detalhes no nível do sinalizador:

  • Legado -i, --input_path <file>uip oferece duas alternativas: --input-arguments '<json>' para JSON incorporado ou --input-file <path> para uma carga útil de arquivo. Elas são mutuamente exclusivas.
  • Legado -j, --jobscount <n>--jobs-count <n>.
  • Legado -P, --priority <Low|Normal|High>--job-priority <Low|Normal|High>.
  • -r, --robots <csv> → sem equivalente direto (conceito somente de pasta clássica em legado). Máquinas de destino com --machine-keys <csv> (GUIDs) ou usuários com --user-keys <csv> (GUIDs).
  • Legado -f, --fail_when_job_fails (padrão true) → a nova CLI sempre sai 1 se um trabalho esperado terminar Faulted; não há opções de exclusão.
  • -R, --result_path <file> → a nova CLI imprime o envelope do trabalho no stdout; redirecione com > result.json ou use --output-filter para extrair campos específicos.
  • Legado -b, --job_type <Unattended|NonProduction>--runtime-type <Unattended|Headless|Serverless|NonProduction|Development|TestAutomation>.
Comando legadouip EquivalenteObservações
uipcli test run <url> <tenant> -s <testset>uip tm testsets run --test-set-key <key> Then uip tm wait --execution-id <id> Then uip tm report get --execution-id <id>3 etapas (iniciar → aguardar → verificar). A nova CLI separa "disparar a execução" de "bloquear nela" de "ler o veredicto", para que os scripts de CI possam ramificar-se limpas em cada um. Consulte uip tm testessets run. O novo verbo reside no recurso testsets como uip tm testsets runnão no recurso executions (não há uip tm executions run).
uipcli test run <url> <tenant> -P <project.json> (empacotar + testar um projeto)uip rpa packuip or packages upload → criar um conjunto de testes no Test Manager → uip tm testsets runN etapas. O fluxo legado legado "empacotar este projeto, implantá-lo, executar seus testes" é dividido entre as ferramentas rpa, or e tm . A criação do conjunto de testes é normalmente uma configuração única feita na interface gráfica da Web do Test Manager.
uipcli test parallel <url> <tenant> --testsConfigurationFilePath <file>Nenhum equivalente direto — loop sobre chamadas uip tm testsets runRemovido — substituição: script de um lançamento paralelo de conjuntos de testes independentes com uip tm testsets run (cada um retorna um ExecutionId), então um único uip tm wait por execução. O driver de projeto de teste do verbo legado parallel (que invocou uipcli test run internamente) não tem contraparte; o novo modelo pressupõe que os conjuntos de testes já foram criados no Test Manager.

execução de teste (conjunto de testes único)

# Legacy
uipcli test run \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.TestSets OR.TestSetExecutions" \
    -o "Shared" \
    -s "Smoke Suite" \
    --out junit \
    --result_path "C:\results.xml" \
    --timeout 1800

# uip — three verbs, clean exit-code branching
EXECUTION_ID=$(uip tm testsets run \
    --test-set-key DEMO:10 \
    --output-filter "Data.ExecutionId" \
    --output plain)

if ! uip tm wait --execution-id "$EXECUTION_ID" --project-key DEMO --timeout 1800; then
    case $? in
        2) echo "timeout" >&2; exit 2 ;;
        *) echo "wait failed" >&2; exit 1 ;;
    esac
fi

FAILED=$(uip tm report get --execution-id "$EXECUTION_ID" --project-key DEMO \
    --output-filter "Data.Failed" --output plain)

if [ "$FAILED" -gt 0 ]; then
    uip tm result download --execution-id "$EXECUTION_ID" --project-key DEMO \
        --destination ./results.xml
    exit 1
fi
# Legacy
uipcli test run \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders OR.TestSets OR.TestSetExecutions" \
    -o "Shared" \
    -s "Smoke Suite" \
    --out junit \
    --result_path "C:\results.xml" \
    --timeout 1800

# uip — three verbs, clean exit-code branching
EXECUTION_ID=$(uip tm testsets run \
    --test-set-key DEMO:10 \
    --output-filter "Data.ExecutionId" \
    --output plain)

if ! uip tm wait --execution-id "$EXECUTION_ID" --project-key DEMO --timeout 1800; then
    case $? in
        2) echo "timeout" >&2; exit 2 ;;
        *) echo "wait failed" >&2; exit 1 ;;
    esac
fi

FAILED=$(uip tm report get --execution-id "$EXECUTION_ID" --project-key DEMO \
    --output-filter "Data.Failed" --output plain)

if [ "$FAILED" -gt 0 ]; then
    uip tm result download --execution-id "$EXECUTION_ID" --project-key DEMO \
        --destination ./results.xml
    exit 1
fi

Observações no nível do sinalizador:

  • Legado -s, --testset <name> leva um nome de exibição; o novo --test-set-key <key> leva a chave do Test Manager (formato PROJECT:NN). Procure com uip tm testsets list --project-key <key>.
  • O legado -t, --testsetkey <key> (um alias legado mais recente) também existe — esses valores são movidos diretamente para o novo --test-set-key.
  • O legado --out junit|uipath torna-se o novo uip tm result download --output-format junit (JUnit é o padrão; o XML nativo da UiPath também é suportado).
  • Legado --attachRobotLogs → anexar artefatos por meio de uip tm attachment download --execution-id <id> após a execução.
  • Legado --retryCount <n>uip tm executions retry --execution-id <id> executa novamente apenas os casos com falha de uma execução finalizada. Não há sinalizador de nova tentativa automática no início; script com a ramificação de saída report get acima.

teste paralelo

Não há verbo uip que espelha o test parallel legado. O idioma mais próximo é um loop de shell que inicia várias chamadas uip tm testsets run simultaneamente, captura cada ExecutionId e, então, espera em cada uma:

# Launch in parallel (bash)
EXEC1=$(uip tm testsets run --test-set-key DEMO:10 --output-filter Data.ExecutionId --output plain) &
EXEC2=$(uip tm testsets run --test-set-key DEMO:11 --output-filter Data.ExecutionId --output plain) &
wait

# Then wait on each
uip tm wait --execution-id "$EXEC1" --project-key DEMO --timeout 1800 &
uip tm wait --execution-id "$EXEC2" --project-key DEMO --timeout 1800 &
wait
# Launch in parallel (bash)
EXEC1=$(uip tm testsets run --test-set-key DEMO:10 --output-filter Data.ExecutionId --output plain) &
EXEC2=$(uip tm testsets run --test-set-key DEMO:11 --output-filter Data.ExecutionId --output plain) &
wait

# Then wait on each
uip tm wait --execution-id "$EXEC1" --project-key DEMO --timeout 1800 &
uip tm wait --execution-id "$EXEC2" --project-key DEMO --timeout 1800 &
wait

O esquema --testsConfigurationFilePath legado (que listava caminhos por projeto e seus conjuntos de testes) não tem contraparte uip ; gere o loop a partir da sua matriz de CI ou de uma lista simples de shell de chaves de conjuntos de testes.

Ativo

Comando legadouip EquivalenteObservações
uipcli asset deploy <csv> <url> <tenant>Percorrer uip resource assets create <name> <value> por linhaRemovido — substituição: itere o CSV em um loop de shell e chame create por linha. A nova CLI não oferece uma implantação de CSV única; consulte ativos de recursos da uip.
uipcli asset delete <csv> <url> <tenant>Percorrer uip resource assets delete <key> por linhaRemovido — substituição: iterar e excluir por chave. delete leva o GUID do ativo, não o nome — resolve os nomes para as chaves primeiro com uip resource assets list --folder-path <path>.
# Legacy — bulk CSV
uipcli asset deploy "C:\assets.csv" "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Assets" -o "Shared"

# uip — script the loop
# CSV columns: name,type,value,description
while IFS=, read -r NAME TYPE VALUE DESCRIPTION; do
    [ "$NAME" = "name" ] && continue    # skip header
    uip resource assets create "$NAME" "$VALUE" \
        --folder-path Shared \
        --type "$TYPE" \
        --description "$DESCRIPTION"
done < assets.csv
# Legacy — bulk CSV
uipcli asset deploy "C:\assets.csv" "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Assets" -o "Shared"

# uip — script the loop
# CSV columns: name,type,value,description
while IFS=, read -r NAME TYPE VALUE DESCRIPTION; do
    [ "$NAME" = "name" ] && continue    # skip header
    uip resource assets create "$NAME" "$VALUE" \
        --folder-path Shared \
        --type "$TYPE" \
        --description "$DESCRIPTION"
done < assets.csv
Observação:

Os ativos do tipo credencial em legados usam a forma de valor username::password . Com uip resource assets create, o formato do valor da Credencial é username:password (dois pontos únicos), e os segredos exigem --credential-store-key <guid>. Consulte ativos de recursos uip — criar.

Solução

Comando legadouip EquivalenteObservações
uipcli solution pack <path>uip solution pack <solutionPath> <outputPath>1:1 na intenção. A saída é uma .zip em ambas as geração (contém arquivos .nupkg internos); a forma de argumento foi alterada de -o para um diretório de saída posicional.
uipcli solution analyze <path>uip rpa analyze <project> por projetoN etapas. Execute o analisador em cada projeto dentro da solução; não há um único verbo uip solution analyze .
uipcli solution restore <path>uip rpa restore <project> por projetoN etapas. Mesmo padrão de solution analyze.
uipcli solution upload-package <zip>uip solution publish <zip>1:1. O novo nome é publish; o comportamento (carregar para o feed da solução do tenant) não foi alterado.
uipcli solution download-package <name> <version>Nenhum equivalente diretoRemovido — substituição: baixe o(s) .nupkg pacote(s) subjacente(s) com uip or packages download <key> ou busque o registro da solução publicada por meio da API REST do Orchestrator.
uipcli solution delete-package <name> <version>uip solution packages delete <packageName> <packageVersion>1:1.
uipcli solution download-config <name>uip solution deploy config get <package-name> [--package-version <v>] [-d <path>]1:1.
uipcli solution deploy <...>uip solution deploy run --name <n> --package-name <n> --package-version <v> --folder-name <n> [--folder-path <path>]1:1 na intenção; nomes de sinalizadores alterados. --name o nome da implantação , não o nome do pacote. Consulte first-pipeline.md — Etapa 3.
uipcli solution deploy-activate <...>uip solution deploy activate <deployment-name>1:1.
uipcli solution deploy-uninstall <...>uip solution deploy uninstall <deployment-name>1:1.
# Legacy — pack + upload + deploy, one verb each
uipcli solution pack "C:\my-solution" \
    -o "C:\dist" \
    -v 1.2.0
uipcli solution upload-package "C:\dist\my-solution.1.2.0.zip" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders"
uipcli solution deploy "..." "..."

# uip — publish replaces upload-package; positional --version in pack
uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET --tenant TenantName
uip solution pack ./my-solution ./dist --version 1.2.0
uip solution publish ./dist/my-solution.1.2.0.zip
uip solution deploy run \
    --name "my-solution-deployment" \
    --package-name my-solution \
    --package-version 1.2.0 \
    --folder-name MySolution \
    --folder-path Shared
# Legacy — pack + upload + deploy, one verb each
uipcli solution pack "C:\my-solution" \
    -o "C:\dist" \
    -v 1.2.0
uipcli solution upload-package "C:\dist\my-solution.1.2.0.zip" \
    "https://cloud.uipath.com/" "TenantName" \
    -A "myOrg" -I "<app-id>" -S "<app-secret>" \
    --applicationScope "OR.Folders"
uipcli solution deploy "..." "..."

# uip — publish replaces upload-package; positional --version in pack
uip login --client-id env.UIPATH_CLIENT_ID --client-secret env.UIPATH_CLIENT_SECRET --tenant TenantName
uip solution pack ./my-solution ./dist --version 1.2.0
uip solution publish ./dist/my-solution.1.2.0.zip
uip solution deploy run \
    --name "my-solution-deployment" \
    --package-name my-solution \
    --package-version 1.2.0 \
    --folder-name MySolution \
    --folder-path Shared

Consulte Seu primeiro pipeline para um guia com explicações para cada etapa.

Executar

Comando legadouip EquivalenteObservações
uipcli run <arguments.json>Nenhum equivalente diretoRemovido — substituição: reescreva a etapa do pipeline como um script de shell que chama uip diretamente com sinalizadores. O verbo run legado consumia um arquivo JSON que serializava uma invocação uipcli <verb> <args> completa (produzida pelo sinalizador --captureCommandToJsonFile oculto); uip não envia um equivalente.
Observação:

A CLI 1.x não expõe um sinalizador --from-file universal para repetição de argumentos em massa. Se seu pipeline depender desse padrão (comum com o fluxo de trabalho legado captureCommandToJsonFile + uipcli run ), converta a carga útil do JSON em invocações uip diretas.

Comandos sem equivalente legado

Esses verbos uip não têm contraparte no CLI legado; eles abrem fluxos de trabalho que não eram possíveis apenas com uipcli . Nenhuma delas requer migração — elas são um novo recurso.

  • uip login, uip login tenant list/set, uip logout, uip login status — gerenciamento completo da sessão.
  • uip or folders *, uip or machines *, uip or users *, uip or roles *, uip or licenses *, uip or sessions *, uip or audit-logs *, uip or calendars *, uip or credential-stores *, uip or feeds *, uip or settings * — superfície de administração completa do Orchestrator.
  • uip or jobs list / get / stop / restart / resume / logs / traces / healing-data / history, uip or processes list / get / edit / update-version / rollback, uip or packages list / get / versions / entry-points / download — verbos de introspecção que o legado não expôs.
  • uip resource buckets / bucket-files / libraries / queues / queue-items / triggers / webhooks — CRUD de recurso do Orchestrator.
  • uip agent *, uip codedagent *, uip codedapp *, uip flow *, uip maestro *, uip api-workflow *, uip df *, uip insights *, uip traces *, uip docsai *, uip vss * — superfície totalmente nova.
  • uip tools *, uip skills *, uip mcp, uip completion — gerenciamento no nível do host.

Veja também

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades