@uipath/skills 1.195.0 → 1.196.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CODEOWNERS +16 -10
- package/README.md +39 -4
- package/assets/skill-status.json +189 -0
- package/assets/uip-catalog-snapshot.json +67 -97
- package/commands/install-permissions.md +46 -2
- package/hooks/suggest-permissions.sh +0 -0
- package/hooks/validate-skill-descriptions.sh +0 -0
- package/package.json +1 -1
- package/skills/uipath-admin/SKILL.md +6 -7
- package/skills/uipath-admin/references/audit-commands.md +32 -10
- package/skills/uipath-admin/references/audit-workflow-guide.md +25 -6
- package/skills/uipath-admin/references/ip-restriction/ip-restriction-commands.md +1 -1
- package/skills/uipath-agents/SKILL.md +5 -3
- package/skills/uipath-agents/references/coded/embedding-in-flows.md +6 -0
- package/skills/uipath-agents/references/coded/flow-integration.md +1 -0
- package/skills/uipath-agents/references/coded/frameworks/langgraph-integration.md +2 -2
- package/skills/uipath-agents/references/coded/frameworks/llamaindex-integration.md +1 -1
- package/skills/uipath-agents/references/coded/frameworks/openai-agents-integration.md +5 -1
- package/skills/uipath-agents/references/coded/lifecycle/build.md +1 -0
- package/skills/uipath-agents/references/coded/lifecycle/evaluate.md +8 -6
- package/skills/uipath-agents/references/coded/quickstart.md +17 -12
- package/skills/uipath-agents/references/lowcode/agent-definition.md +17 -16
- package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/analyze-attachments.md +2 -2
- package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/batch-transform/impl-json.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/built-in-tools.md +4 -4
- package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/deeprag/impl-json.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/context/context.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/context/datafabric.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/context/index.md +12 -12
- package/skills/uipath-agents/references/lowcode/capabilities/escalation/escalation.md +14 -14
- package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails-recommend.md +1 -1
- package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails.md +23 -20
- package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +27 -26
- package/skills/uipath-agents/references/lowcode/capabilities/integration-service/integration-service.md +12 -13
- package/skills/uipath-agents/references/lowcode/capabilities/mcp/mcp.md +133 -0
- package/skills/uipath-agents/references/lowcode/capabilities/memory/memory.md +9 -9
- package/skills/uipath-agents/references/lowcode/capabilities/process/process.md +25 -24
- package/skills/uipath-agents/references/lowcode/capabilities/process/solution-files.md +6 -6
- package/skills/uipath-agents/references/lowcode/critical-rules.md +17 -17
- package/skills/uipath-agents/references/lowcode/debug.md +55 -0
- package/skills/uipath-agents/references/lowcode/evaluations/evaluate.md +6 -6
- package/skills/uipath-agents/references/lowcode/evaluations/evaluation-sets.md +1 -1
- package/skills/uipath-agents/references/lowcode/evaluations/evaluators.md +3 -3
- package/skills/uipath-agents/references/lowcode/evaluations/running-evaluations.md +8 -8
- package/skills/uipath-agents/references/lowcode/lowcode.md +18 -12
- package/skills/uipath-agents/references/lowcode/model-selection-guide.md +3 -3
- package/skills/uipath-agents/references/lowcode/project-lifecycle.md +53 -33
- package/skills/uipath-agents/references/lowcode/solution-resources.md +8 -8
- package/skills/uipath-api-workflow/SKILL.md +32 -83
- package/skills/uipath-api-workflow/references/cli-reference.md +40 -26
- package/skills/uipath-api-workflow/references/connector-activity-discovery.md +75 -23
- package/skills/uipath-api-workflow/references/troubleshooting.md +4 -12
- package/skills/uipath-automation-discovery/SKILL.md +234 -0
- package/skills/uipath-automation-discovery/references/intake-guide.md +85 -0
- package/skills/uipath-automation-discovery/references/mining-guide.md +156 -0
- package/skills/uipath-automation-discovery/references/report-template.md +95 -0
- package/skills/uipath-coded-apps/SKILL.md +0 -2
- package/skills/uipath-data-fabric/SKILL.md +0 -2
- package/skills/uipath-feedback/SKILL.md +1 -1
- package/skills/uipath-governance/SKILL.md +0 -2
- package/skills/uipath-human-in-the-loop/SKILL.md +2 -3
- package/skills/uipath-maestro-bpmn/.maintenance/check-all.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-anchors.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-depth.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-link-text.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-links.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-orphans.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-plugin-pairs.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-template.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-uip-commands.sh +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.py +0 -0
- package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.sh +0 -0
- package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/api-workflow.md +1 -1
- package/skills/uipath-maestro-bpmn/references/operate/references/run.md +1 -1
- package/skills/uipath-maestro-bpmn/references/shared/local-metadata-regeneration-guide.md +2 -2
- package/skills/uipath-maestro-bpmn/references/shared/wrapper-shells.md +1 -1
- package/skills/uipath-maestro-case/SKILL.md +22 -27
- package/skills/uipath-maestro-case/references/bindings-and-expressions.md +7 -1
- package/skills/uipath-maestro-case/references/bindings-v2-sync.md +7 -16
- package/skills/uipath-maestro-case/references/case-commands.md +9 -9
- package/skills/uipath-maestro-case/references/case-editing-operations.md +51 -67
- package/skills/uipath-maestro-case/references/case-schema.md +74 -138
- package/skills/uipath-maestro-case/references/connector-integration.md +32 -5
- package/skills/uipath-maestro-case/references/connector-trigger-common.md +39 -12
- package/skills/uipath-maestro-case/references/evals/evals.json +9 -23
- package/skills/uipath-maestro-case/references/implementation.md +24 -24
- package/skills/uipath-maestro-case/references/phased-execution.md +24 -38
- package/skills/uipath-maestro-case/references/placeholder-tasks.md +9 -9
- package/skills/uipath-maestro-case/references/planning.md +20 -79
- package/skills/uipath-maestro-case/references/plugins/case/impl-json.md +15 -122
- package/skills/uipath-maestro-case/references/plugins/case/planning.md +3 -1
- package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/impl-json.md +10 -22
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/impl-json.md +7 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +5 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md +4 -4
- package/skills/uipath-maestro-case/references/plugins/logging/impl-json.md +10 -0
- package/skills/uipath-maestro-case/references/plugins/sla/impl-json.md +10 -42
- package/skills/uipath-maestro-case/references/plugins/sla/planning.md +5 -5
- package/skills/uipath-maestro-case/references/plugins/stages/impl-json.md +8 -79
- package/skills/uipath-maestro-case/references/plugins/stages/planning.md +7 -14
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/planning.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/planning.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/planning.md +4 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/impl-json.md +2 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/planning.md +12 -7
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/tasks/process/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/process/planning.md +4 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/planning.md +4 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/impl-json.md +3 -0
- package/skills/uipath-maestro-case/references/plugins/triggers/event/impl-json.md +6 -7
- package/skills/uipath-maestro-case/references/plugins/triggers/event/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/triggers/manual/impl-json.md +4 -27
- package/skills/uipath-maestro-case/references/plugins/triggers/timer/impl-json.md +8 -20
- package/skills/uipath-maestro-case/references/plugins/variables/bindings/impl-json.md +6 -11
- package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +15 -30
- package/skills/uipath-maestro-case/references/plugins/variables/global-vars/planning.md +4 -4
- package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +8 -7
- package/skills/uipath-maestro-case/references/registry-discovery.md +4 -4
- package/skills/uipath-maestro-case/references/sdd-generation-rules.md +12 -10
- package/skills/uipath-maestro-case/references/troubleshooting-guide.md +1 -1
- package/skills/uipath-maestro-flow/.maintenance/check-all.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-anchors.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-depth.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-link-text.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-links.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-orphans.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-plugin-pairs.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-template.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-uip-commands.sh +0 -0
- package/skills/uipath-maestro-flow/.maintenance/check-versions.sh +0 -0
- package/skills/uipath-maestro-flow/SKILL.md +9 -6
- package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +4 -4
- package/skills/uipath-maestro-flow/references/author/references/brownfield.md +17 -2
- package/skills/uipath-maestro-flow/references/author/references/editing-operations-cli.md +1 -1
- package/skills/uipath-maestro-flow/references/author/references/editing-operations-json.md +3 -3
- package/skills/uipath-maestro-flow/references/author/references/editing-operations.md +9 -9
- package/skills/uipath-maestro-flow/references/author/references/greenfield.md +13 -10
- package/skills/uipath-maestro-flow/references/author/references/planning-arch.md +75 -5
- package/skills/uipath-maestro-flow/references/author/references/planning-impl.md +2 -1
- package/skills/uipath-maestro-flow/references/author/references/plugins/connector/impl.md +14 -4
- package/skills/uipath-maestro-flow/references/author/references/plugins/connector-trigger/impl.md +20 -4
- package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/impl.md +5 -5
- package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/planning.md +5 -5
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-connector.md +81 -0
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-manual.md +63 -0
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl.md +59 -57
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/planning.md +8 -7
- package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/impl.md +23 -23
- package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/planning.md +2 -2
- package/skills/uipath-maestro-flow/references/diagnose/CAPABILITY.md +1 -1
- package/skills/uipath-maestro-flow/references/diagnose/references/failure-modes.md +6 -6
- package/skills/uipath-maestro-flow/references/evaluate/CAPABILITY.md +2 -2
- package/skills/uipath-maestro-flow/references/evaluate/references/upload-safety.md +1 -1
- package/skills/uipath-maestro-flow/references/operate/CAPABILITY.md +8 -8
- package/skills/uipath-maestro-flow/references/operate/references/run.md +2 -2
- package/skills/uipath-maestro-flow/references/operate/references/ship.md +7 -7
- package/skills/uipath-maestro-flow/references/shared/cli-commands.md +19 -17
- package/skills/uipath-maestro-flow/references/shared/cli-conventions.md +1 -1
- package/skills/uipath-maestro-flow/references/shared/file-format.md +1 -1
- package/skills/uipath-maestro-flow/references/shared/ux-narration-and-todos.md +7 -7
- package/skills/uipath-planner/SKILL.md +110 -74
- package/skills/{uipath-solution → uipath-planner}/assets/templates/agent-sdd-template.md +3 -3
- package/skills/{uipath-solution → uipath-planner}/assets/templates/api-workflow-sdd-template.md +4 -4
- package/skills/{uipath-solution → uipath-planner}/assets/templates/case-sdd-template.md +4 -4
- package/skills/{uipath-solution → uipath-planner}/assets/templates/coded-app-sdd-template.md +3 -3
- package/skills/{uipath-solution → uipath-planner}/assets/templates/flow-sdd-template.md +4 -4
- package/skills/{uipath-solution → uipath-planner}/assets/templates/rpa-sdd-template.md +11 -11
- package/skills/uipath-planner/references/multi-skill-patterns-guide.md +3 -3
- package/skills/uipath-planner/references/non-pdd-lane-guide.md +10 -6
- package/skills/uipath-planner/references/pdd-driven-lane-guide.md +17 -7
- package/skills/uipath-planner/references/plan-and-tasks-format.md +2 -2
- package/skills/{uipath-solution/references/design → uipath-planner/references}/product-selection-guide.md +8 -8
- package/skills/{uipath-solution/references/design → uipath-planner/references}/rpa-product-guide.md +1 -1
- package/skills/{uipath-solution/references/design → uipath-planner/references}/sdd-generation-guide.md +26 -39
- package/skills/{uipath-solution/references/design → uipath-planner/references}/tenant-library-search-guide.md +7 -7
- package/skills/uipath-platform/SKILL.md +21 -48
- package/skills/uipath-platform/references/integration-service/http-request.md +5 -2
- package/skills/uipath-platform/references/integration-service/reference-resolution.md +19 -1
- package/skills/uipath-platform/references/integration-service/triggers.md +21 -5
- package/skills/uipath-platform/references/licensing/consumables-report.md +1 -1
- package/skills/uipath-platform/references/licensing/tenant-allocations.md +1 -1
- package/skills/uipath-platform/references/licensing/user-licenses-allocations.md +1 -1
- package/skills/uipath-platform/references/{resources → orchestrator}/manage-assets.md +37 -34
- package/skills/uipath-platform/references/orchestrator/manage-sessions.md +1 -1
- package/skills/uipath-platform/references/orchestrator/orchestrator.md +4 -31
- package/skills/uipath-platform/references/{resources → orchestrator}/process-queues.md +61 -50
- package/skills/uipath-platform/references/{resources → orchestrator}/resources.md +21 -21
- package/skills/uipath-platform/references/orchestrator/run-jobs.md +26 -14
- package/skills/uipath-platform/references/orchestrator/setup-environment.md +20 -16
- package/skills/uipath-platform/references/orchestrator/tenant-admin.md +7 -7
- package/skills/uipath-platform/references/{resources → orchestrator}/triggers-and-webhooks.md +41 -37
- package/skills/uipath-platform/references/{resources → orchestrator}/work-with-storage.md +56 -34
- package/skills/uipath-platform/references/uip-commands.md +20 -19
- package/skills/uipath-review/SKILL.md +81 -7
- package/skills/uipath-review/references/agents/agent-common-issues.md +42 -0
- package/skills/uipath-review/references/agents/agent-review-checklist.md +79 -57
- package/skills/uipath-review/references/agents/agents-coded-rules.md +160 -0
- package/skills/uipath-review/references/agents/agents-common-rules.md +32 -0
- package/skills/uipath-review/references/agents/agents-lowcode-rules.md +128 -0
- package/skills/uipath-review/references/platform/platform-resources-checklist.md +2 -2
- package/skills/uipath-review/references/review-workflow-guide.md +1 -1
- package/skills/uipath-review/references/rpa/rpa-review-checklist.md +2 -2
- package/skills/uipath-review/references/rule-catalog-workflow.md +90 -0
- package/skills/uipath-review/references/rule-format.md +91 -0
- package/skills/uipath-rpa/SKILL.md +16 -6
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/CreateEntityRecord.md +149 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/CreateMultipleEntityRecords.md +67 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteEntityRecord.md +44 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteFileFromRecordField.md +56 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteMultipleEntityRecords.md +65 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DownloadFileFromRecordField.md +115 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/GetEntityRecordById.md +50 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/QueryEntityRecords.md +69 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UpdateEntityRecord.md +120 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UpdateMultipleEntityRecords.md +67 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UploadFileToRecordField.md +103 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/guides/data-service-filter-builder-guide.md +461 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/overview.md +355 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AppendRangeX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AutoFillX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AutoFitX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ChangeDataRangeModification.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ChangePivotTableDataSourceX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ClearRangeX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CopyPasteRangeX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CreatePivotTableXv2.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CreateTableX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteColumnX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteRowsX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DuplicateSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExecuteMacroArgumentX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExecuteMacroX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExportExcelToCsvX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FillRangeX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FilterPivotTableX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FilterX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FindFirstLastDataRowX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FindReplaceValueX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FormatRangeX.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertColumnX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertExcelChartX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertRowsX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InvokeVBAArgumentX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InvokeVBAX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/LookupX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/PivotTableFieldX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ProtectSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ReadCellFormulaX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ReadCellValueX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RefreshPivotTableX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RemoveDuplicatesX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RenameSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SaveAsPdfX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SaveExcelFileX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SortColumnX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SortX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/UnprotectSheetX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/UpdateChartX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/VLookupX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/WriteCellX.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.GSuite.Activities/3.8/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.Mail.Activities/2.8/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.MicrosoftOffice365.Activities/3.8/activities/SendMailConnections.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.MicrosoftOffice365.Activities/3.8/activities/overview.md +3 -3
- package/skills/uipath-rpa/references/activity-docs/UiPath.Presentations.Activities/2.5/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/activity-docs/UiPath.System.Activities/25.10/activities/overview.md +1 -1
- package/skills/uipath-rpa/references/activity-docs/UiPath.Word.Activities/2.5/activities/overview.md +2 -2
- package/skills/uipath-rpa/references/cli-reference.md +108 -554
- package/skills/uipath-rpa/references/coded/coding-guidelines.md +1 -1
- package/skills/uipath-rpa/references/coded/operations-guide.md +3 -3
- package/skills/uipath-rpa/references/coded/third-party-packages-guide.md +1 -1
- package/skills/uipath-rpa/references/connector-capabilities.md +3 -2
- package/skills/uipath-rpa/references/debugging.md +43 -36
- package/skills/uipath-rpa/references/environment-setup.md +3 -3
- package/skills/uipath-rpa/references/is-connector-xaml-guide.md +3 -3
- package/skills/uipath-rpa/references/library-authoring-guide.md +226 -0
- package/skills/uipath-rpa/references/project-structure-guide.md +43 -0
- package/skills/uipath-rpa/references/publishing-guide.md +5 -5
- package/skills/uipath-rpa/references/tenant-library-search-guide.md +18 -14
- package/skills/uipath-rpa/references/testing-guide.md +6 -6
- package/skills/uipath-rpa/references/trigger-pattern-guide.md +2 -2
- package/skills/uipath-rpa/references/ui-automation-guide.md +43 -6
- package/skills/uipath-rpa/references/uia-configure-target-workflows.md +2 -2
- package/skills/uipath-rpa/references/uia-prerequisites.md +1 -1
- package/skills/uipath-rpa/references/validation-guide.md +4 -4
- package/skills/uipath-rpa/references/xaml/canvas-layout-guide.md +4 -1
- package/skills/uipath-rpa/references/xaml/common-pitfalls.md +18 -6
- package/skills/uipath-rpa/references/xaml/long-running-workflow-guide.md +304 -0
- package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +3 -0
- package/skills/uipath-solution/SKILL.md +23 -125
- package/skills/uipath-solution/references/{operate/activate-and-manage.md → activate-and-manage.md} +1 -1
- package/skills/uipath-solution/references/{operate/develop-solution.md → develop-solution.md} +43 -37
- package/skills/uipath-solution/references/{operate/pack-and-deploy.md → pack-and-deploy.md} +3 -3
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/intra-solution-references.md +2 -2
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/manual-edits.md +4 -4
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/same-name-across-folders.md +2 -2
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/shared-cloud-resource.md +3 -3
- package/skills/uipath-solution/references/{operate/scenarios → scenarios}/virtual-resource.md +4 -4
- package/skills/uipath-solution/references/{operate/scenarios.md → scenarios.md} +5 -5
- package/skills/uipath-solution/references/{operate/solution-overview.md → solution-overview.md} +3 -3
- package/skills/uipath-tasks/SKILL.md +0 -2
- package/skills/uipath-test/SKILL.md +26 -7
- package/skills/uipath-troubleshoot/agents/triage.md +6 -4
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/overview.md +55 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/add-queue-item-failed.md +58 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/application-launch-failed.md +56 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/browser-open-or-attach-failed.md +59 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/file-operation-failed.md +60 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/foreach-row-failed.md +56 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/image-target-not-found.md +56 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/invoke-code-failed.md +54 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/invoke-workflow-failed.md +58 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/kill-process-failed.md +49 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-activity-configuration-error.md +80 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-activity-timeout.md +61 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-element-interaction-failed.md +61 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-element-not-found.md +64 -0
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/summary.md +24 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-file-locked.md +142 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-file-not-found.md +140 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-null-reference.md +119 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-sheet-not-found.md +146 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/write-cell-failures.md +131 -0
- package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/summary.md +5 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/investigation_guide.md +1 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/overview.md +16 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/activity-configuration-error.md +42 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/ambiguous-selector.md +131 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/application-not-found.md +84 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/application-open-failed.md +46 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/browser-navigation-failed.md +45 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/click-coordinate-off-screen.md +120 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/disabled-element.md +0 -2
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/element-found-not-actionable.md +43 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/healing-agent-no-license.md +12 -12
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/healing-agent-orch-issues.md +108 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/inject-js-failed.md +41 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/scope-container-wrong-page.md +7 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/select-item-no-items.md +37 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/selector-failure-manual.md +2 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/timeout-issue.md +2 -2
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/verify-execution-failure.md +120 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/wrong-target-application.md +41 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/summary.md +12 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/guardrail-violation.md +111 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-connection-disabled.md +90 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-invalid-credentials.md +123 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-invalid-element-instance.md +96 -0
- package/skills/uipath-troubleshoot/references/products/agents/playbooks/llm-insufficient-information.md +1 -1
- package/skills/uipath-troubleshoot/references/products/agents/summary.md +4 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/investigation_guide.md +7 -7
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-pending-no-host.md +3 -1
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-pending-stale-dispatch.md +2 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-stopped-exit-code-0x40010004.md +104 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/summary.md +1 -0
- package/skills/uipath-troubleshoot/references/summary.md +10 -1
- package/version-manifest.json +2 -2
- package/skills/uipath-ixp/SKILL.md +0 -84
- package/skills/uipath-ixp/references/cli-reference.md +0 -113
- package/skills/uipath-ixp/references/improve-prompts-guide.md +0 -283
- package/skills/uipath-ixp/references/label-documents-guide.md +0 -175
- package/skills/uipath-ixp/references/project-setup-guide.md +0 -90
- package/skills/uipath-maestro-case/references/plugins/edges/impl-json.md +0 -152
- package/skills/uipath-maestro-case/references/plugins/edges/planning.md +0 -93
- /package/skills/{uipath-solution/references/design → uipath-planner/references}/package-selection-guide.md +0 -0
- /package/skills/{uipath-solution/references/design → uipath-planner/references}/pdd-analysis-guide.md +0 -0
- /package/skills/uipath-solution/references/{operate/scenarios → scenarios}/failure-modes.md +0 -0
|
@@ -232,7 +232,7 @@ C) <user-driven approach>
|
|
|
232
232
|
| **No Studio instances found** | Only relevant for `diff` / `focus-activity` — they need Studio Desktop. Every other command runs headless and doesn't need a Desktop instance. | Run `uip rpa studio start --project-dir "<PROJECT_DIR>"` if you actually need Studio Desktop; otherwise re-run the command — headless Studio relaunches automatically |
|
|
233
233
|
| **Stale pipe / ENOENT** | Studio instance crashed or was closed | The tool retries automatically; if persistent, re-run the command (headless) or restart Studio Desktop |
|
|
234
234
|
| **Workflow cannot be found** | Entrypoint not in project.json | Verify project.json entrypoint has the file listed (Process projects only — Tests and Library projects do not use `entryPoints`) |
|
|
235
|
-
| **Service property not available** | Missing package dependency | Install the required package via `uip rpa packages install --project-dir "<PROJECT_DIR>" --packages
|
|
235
|
+
| **Service property not available** | Missing package dependency | Install the required package via `uip rpa packages install --project-dir "<PROJECT_DIR>" --packages id=<PACKAGE_ID> --output json` (no `add-dependency` command exists; do not hand-edit `project.json`) |
|
|
236
236
|
| **Timeout** | Studio took too long to start. First headless call on a cold NuGet cache can take 30–90 s. | Increase timeout: `--timeout 600` |
|
|
237
237
|
| **"Target name 'X' is not part of the current screen"** | Element descriptor used on wrong screen handle | Use the `UiTargetApp` handle from `Open`/`Attach` for the screen that owns the element |
|
|
238
238
|
| **"Cannot select item. It was not found among existing items"** | `SelectItem` fails on web dropdowns | Use `TypeInto` instead of `SelectItem` for web `<select>` elements |
|
|
@@ -392,15 +392,15 @@ namespace MyProjectName
|
|
|
392
392
|
|
|
393
393
|
## Add a Dependency
|
|
394
394
|
|
|
395
|
-
Canonical CLI: `uip rpa packages install`. Do NOT hand-edit `project.json` `dependencies`. **There is no `uip rpa add-dependency` command** — agents that try it get `
|
|
395
|
+
Canonical CLI: `uip rpa packages install`. Do NOT hand-edit `project.json` `dependencies`. **There is no `uip rpa add-dependency` command** — agents that try it get `error: unknown command 'add-dependency'`. See [cli-reference.md § packages install](../cli-reference.md).
|
|
396
396
|
|
|
397
397
|
**Steps:**
|
|
398
398
|
1. Read `project.json` to check existing dependencies — skip packages already at the desired version.
|
|
399
399
|
2. Run:
|
|
400
400
|
```bash
|
|
401
|
-
uip rpa packages install --project-dir "<PROJECT_DIR>" --packages '
|
|
401
|
+
uip rpa packages install --project-dir "<PROJECT_DIR>" --packages 'id=<PACKAGE_ID>,version=<VERSION>' --output json
|
|
402
402
|
```
|
|
403
|
-
Omit
|
|
403
|
+
Omit `,version=<VERSION>` to resolve the latest compatible. Pin a version only when there is a known compatibility constraint (see pinned versions below). The CLI writes `project.json` and runs restore — re-read `project.json` afterward if subsequent steps need it.
|
|
404
404
|
3. Only install packages the project actually needs.
|
|
405
405
|
|
|
406
406
|
**Pinned versions for UiPath activity packages (current v25.x):**
|
|
@@ -7,7 +7,7 @@ When a user needs functionality that **no UiPath built-in activity provides** (e
|
|
|
7
7
|
1. **Consider whether a built-in activity or plain .NET is the better fit** — prefer activities for Orchestrator integration, UI automation, and document handling; prefer .NET for data transforms, HTTP to external APIs, parsing, etc.
|
|
8
8
|
2. **If no built-in activity fits** — search for a well-known .NET NuGet package that provides the capability
|
|
9
9
|
3. **Inspect the package** — run the `uip rpa packages inspect` command with the appropriate flags in order to get exact API signatures before writing code
|
|
10
|
-
4. **Install it** — run `uip rpa packages install --project-dir "<PROJECT_DIR>" --packages '
|
|
10
|
+
4. **Install it** — run `uip rpa packages install --project-dir "<PROJECT_DIR>" --packages 'id=<PACKAGE_ID>,version=<VERSION>' --output json`. Omit `,version=<VERSION>` to resolve the latest compatible. Do NOT hand-edit `project.json` `dependencies`. **There is no `uip rpa add-dependency` command.**
|
|
11
11
|
5. **Write C# code using the package** — use the package's API directly in the `Execute` method (no service proxy needed — just `using` + direct API calls)
|
|
12
12
|
|
|
13
13
|
## How Third-Party Packages Differ from UiPath Activity Packages
|
|
@@ -26,8 +26,9 @@ uip is activities list <connector-key> --output json
|
|
|
26
26
|
# What data objects/resources does it expose?
|
|
27
27
|
uip is resources list <connector-key> --output json
|
|
28
28
|
|
|
29
|
-
# Describe
|
|
30
|
-
|
|
29
|
+
# Describe an object's schema for an operation (fields, types, required flags, enum values).
|
|
30
|
+
# Second positional is the object/resource name (from `resources list`); the operation goes in --operation:
|
|
31
|
+
uip is resources describe <connector-key> <object-name> --operation Create --output json
|
|
31
32
|
```
|
|
32
33
|
|
|
33
34
|
`resources describe` is the authoritative field schema — **never guess field names**. The response includes a `metadataFile` path like `~/.uipath/cache/integrationservice/<connector>/_static/<operation>.Create.json`. Read that JSON directly for the full `parameters` / `requestFields` / `responseFields` list.
|
|
@@ -25,15 +25,15 @@ Before invoking any of the above, run `uip rpa studio start --project-dir "<PROJ
|
|
|
25
25
|
`run` and `debug start` take a file path and optional inputs:
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
-
uip rpa run --file-path <relative-path> [--input-arguments
|
|
29
|
-
uip rpa debug start --file-path <relative-path> [--input-arguments
|
|
28
|
+
uip rpa run --file-path <relative-path> [--input-arguments key=value]... [--log-level <level>] [--skip-build] [--output json]
|
|
29
|
+
uip rpa debug start --file-path <relative-path> [--input-arguments key=value]... [--log-level <level>] [--skip-build] [--output json]
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
`debug test-activity` and `debug start-from-here` operate on the currently focused activity (no `--file-path`):
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
|
-
uip rpa debug test-activity [--input-arguments
|
|
36
|
-
uip rpa debug start-from-here [--input-arguments
|
|
35
|
+
uip rpa debug test-activity [--input-arguments key=value]... [--input-variables key=value]... [--log-level <level>] [--output json]
|
|
36
|
+
uip rpa debug start-from-here [--input-arguments key=value]... [--input-variables key=value]... [--log-level <level>] [--output json]
|
|
37
37
|
```
|
|
38
38
|
|
|
39
39
|
All other `debug` verbs (`break`, `continue`, `resume`, `continue-retry`, `continue-ignore`, `step-into`, `step-over`, `step-out`, `toggle-breakpoint`, `restart-from-top`) take no parameters — they operate on the active debug session.
|
|
@@ -41,9 +41,9 @@ All other `debug` verbs (`break`, `continue`, `resume`, `continue-retry`, `conti
|
|
|
41
41
|
| Parameter | Description |
|
|
42
42
|
|-----------|-------------|
|
|
43
43
|
| `--file-path` | Workflow file to run (relative to project root). Applies to `run` and `debug start` only |
|
|
44
|
-
| `--input-arguments` |
|
|
45
|
-
| `--input-variables` |
|
|
46
|
-
| `--log-level` | Minimum log level: `Verbose`, `Trace
|
|
44
|
+
| `--input-arguments` | Project-level input arguments as repeatable `key=value` pairs (`=` string, `:=` raw JSON; see [cli-reference.md § Passing structured inputs](cli-reference.md#passing-structured-inputs)). Only for `run`, `debug start`, `debug test-activity`, and `debug start-from-here` (see [Input Variables vs Input Arguments](#input-variables-vs-input-arguments)) |
|
|
45
|
+
| `--input-variables` | Workflow-level variable values as repeatable `key=value` pairs (values are VB/C# expressions — always `=`). Only for `debug test-activity` and `debug start-from-here` (see [Input Variables vs Input Arguments](#input-variables-vs-input-arguments)) |
|
|
46
|
+
| `--log-level` | Minimum log level: `Verbose`, `Trace` (default), `Information`, `Warning`, `Error`, `Critical` |
|
|
47
47
|
| `--skip-build` | Skip the pre-run build step (use only when you've just built) |
|
|
48
48
|
| `--output` | Output format: `json` (recommended), `table`, `yaml`, `plain` |
|
|
49
49
|
| `--profiling` | Collect per-activity timings and runtime screenshots — verifies UI automation correctness and workflow performance. Only effective on start verbs (`run`, `debug start`, `debug test-activity`, `debug start-from-here`); ignored on stepping / breakpoint verbs. Boolean flag (no value needed). See [Profiling Workflow Performance](#profiling-workflow-performance). |
|
|
@@ -83,50 +83,52 @@ These serve different purposes and apply to different scopes:
|
|
|
83
83
|
| **What they are** | Project-level parameters (In/Out/InOut) | Workflow-internal variables scoped to activities |
|
|
84
84
|
| **Where defined** | Project argument list (visible in Studio's Arguments panel) | Inside the workflow (visible in Studio's Variables panel) |
|
|
85
85
|
| **Applicable verbs** | `run`, `debug start`, `debug test-activity`, `debug start-from-here` | `debug test-activity`, `debug start-from-here` only |
|
|
86
|
-
| **Value format (`run` / `debug start`)** |
|
|
87
|
-
| **Value format (`debug test-activity` / `debug start-from-here`)** | VB.NET or C# expressions | VB.NET or C# expressions |
|
|
86
|
+
| **Value format (`run` / `debug start`)** | `key=value` pairs (`=` string, `:=` raw JSON): `name=John`, `age:=30` | N/A |
|
|
87
|
+
| **Value format (`debug test-activity` / `debug start-from-here`)** | VB.NET or C# expressions — always `=` | VB.NET or C# expressions — always `=` |
|
|
88
88
|
|
|
89
89
|
### Expression Value Examples
|
|
90
90
|
|
|
91
|
-
For `debug test-activity` and `debug start-from-here`, both `--input-arguments` and `--input-variables` values must be **VB.NET or C# expressions** matching the project language.
|
|
91
|
+
For `debug test-activity` and `debug start-from-here`, both `--input-arguments` and `--input-variables` values must be **VB.NET or C# expressions** matching the project language. Always use `=` pairs (the expression is a string — `:=` would corrupt it), one variable per flag occurrence. Expressions containing double quotes (string literals) cannot be passed inline on Windows PowerShell 5.1 — write them to a UTF-8 file and use `key=@file`.
|
|
92
92
|
|
|
93
93
|
**VB.NET projects:**
|
|
94
94
|
```bash
|
|
95
|
-
#
|
|
96
|
-
--input-variables
|
|
97
|
-
|
|
98
|
-
# Integer variable
|
|
99
|
-
--input-variables '{"count": "42"}'
|
|
95
|
+
# Integer variable — the expression 42
|
|
96
|
+
--input-variables count=42
|
|
100
97
|
|
|
101
98
|
# Boolean variable (VB uses True/False, capitalized)
|
|
102
|
-
--input-variables
|
|
99
|
+
--input-variables isActive=True
|
|
103
100
|
|
|
104
101
|
# Null / unset (VB keyword)
|
|
105
|
-
--input-variables
|
|
102
|
+
--input-variables result=Nothing
|
|
103
|
+
|
|
104
|
+
# New object — single-quote tokens containing spaces
|
|
105
|
+
--input-variables 'config=New Dictionary(Of String, Object)'
|
|
106
106
|
|
|
107
|
-
#
|
|
108
|
-
|
|
107
|
+
# String variable — the expression needs quotes, so pass it from a file.
|
|
108
|
+
# PowerShell: Set-Content -Encoding UTF8 greeting.txt '"Hello World"'
|
|
109
|
+
# bash: printf '"Hello World"' > greeting.txt
|
|
110
|
+
--input-variables greeting=@greeting.txt
|
|
109
111
|
|
|
110
|
-
# Multiple variables at once
|
|
111
|
-
--input-variables
|
|
112
|
+
# Multiple variables at once — repeat the flag
|
|
113
|
+
--input-variables name=@name-expr.txt --input-variables age=30 --input-variables isActive=True
|
|
112
114
|
```
|
|
113
115
|
|
|
114
116
|
**C# projects:**
|
|
115
117
|
```bash
|
|
116
|
-
# String variable
|
|
117
|
-
--input-variables '{"greeting": "\"Hello World\""}'
|
|
118
|
-
|
|
119
118
|
# Boolean variable (C# uses true/false, lowercase)
|
|
120
|
-
--input-variables
|
|
119
|
+
--input-variables isActive=true
|
|
121
120
|
|
|
122
121
|
# Null / unset (C# keyword)
|
|
123
|
-
--input-variables
|
|
122
|
+
--input-variables result=null
|
|
123
|
+
|
|
124
|
+
# New object — single-quote tokens containing spaces
|
|
125
|
+
--input-variables 'config=new Dictionary<string, object>()'
|
|
124
126
|
|
|
125
|
-
#
|
|
126
|
-
--input-variables
|
|
127
|
+
# String variable — quoted literal goes through a file
|
|
128
|
+
--input-variables greeting=@greeting.txt
|
|
127
129
|
```
|
|
128
130
|
|
|
129
|
-
> **Important:**
|
|
131
|
+
> **Important:** values are committed as expression text. `count=42` yields the expression `42` (an integer literal). To pass the *string* `"200"`, the expression must contain the quotes — `"200"` — which survives only via the file form: `temperature=@expr.txt` with the file containing `"200"`. Whole payloads can also be loaded from a JSON file: `--input-variables '@vars.json'` (single-quote the `@` token in PowerShell) or `--input-variables-file vars.json`.
|
|
130
132
|
|
|
131
133
|
---
|
|
132
134
|
|
|
@@ -221,9 +223,11 @@ Use `debug test-activity` to run just the currently focused activity without exe
|
|
|
221
223
|
# 1. Focus the activity to test (Studio Desktop required)
|
|
222
224
|
uip rpa focus-activity --activity-id "DeserializeJson_1"
|
|
223
225
|
|
|
224
|
-
# 2. Run it in isolation, pre-setting any variables it reads from
|
|
226
|
+
# 2. Run it in isolation, pre-setting any variables it reads from.
|
|
227
|
+
# temperature is a String — its expression needs quotes, so pass it from a file:
|
|
228
|
+
# PowerShell: Set-Content -Encoding UTF8 temp-expr.txt '"200"' bash: printf '"200"' > temp-expr.txt
|
|
225
229
|
uip rpa debug test-activity \
|
|
226
|
-
--input-variables
|
|
230
|
+
--input-variables temperature=@temp-expr.txt \
|
|
227
231
|
--output json
|
|
228
232
|
|
|
229
233
|
# 3. Check the output:
|
|
@@ -242,9 +246,11 @@ Use `debug start-from-here` to skip straight to the activity you care about, avo
|
|
|
242
246
|
# 1. Focus the activity to start from (Studio Desktop required)
|
|
243
247
|
uip rpa focus-activity --activity-id "HttpRequest_1"
|
|
244
248
|
|
|
245
|
-
# 2. Start debugging from that point, pre-setting variables
|
|
249
|
+
# 2. Start debugging from that point, pre-setting variables.
|
|
250
|
+
# apiUrl is a String — its expression needs quotes, so pass it from a file:
|
|
251
|
+
# PowerShell: Set-Content -Encoding UTF8 api-url.txt '"https://api.example.com/weather"'
|
|
246
252
|
uip rpa debug start-from-here \
|
|
247
|
-
--input-variables
|
|
253
|
+
--input-variables apiUrl=@api-url.txt \
|
|
248
254
|
--output json
|
|
249
255
|
|
|
250
256
|
# 3. The debugger runs from the focused activity — step through or continue
|
|
@@ -309,13 +315,14 @@ uip rpa execution cancel --output json
|
|
|
309
315
|
Pass input arguments when the workflow has In arguments that need values:
|
|
310
316
|
|
|
311
317
|
```bash
|
|
312
|
-
# Start debugging with input arguments
|
|
318
|
+
# Start debugging with input arguments — one key=value pair per flag occurrence
|
|
313
319
|
uip rpa debug start --file-path "ProcessOrder.xaml" \
|
|
314
|
-
--input-arguments
|
|
320
|
+
--input-arguments orderId=ORD-12345 \
|
|
321
|
+
--input-arguments customerEmail=test@example.com \
|
|
315
322
|
--output json
|
|
316
323
|
```
|
|
317
324
|
|
|
318
|
-
`--input-arguments` is valid with `run`, `debug start`, `debug test-activity`, and `debug start-from-here`. For `run` / `debug start`,
|
|
325
|
+
`--input-arguments` is valid with `run`, `debug start`, `debug test-activity`, and `debug start-from-here`. For `run` / `debug start`, `=` keeps the value a string and `:=` passes raw JSON (`retries:=3`, `enabled:=true`). For `debug test-activity` / `debug start-from-here`, values must be VB/C# expressions — always `=`. Full grammar (file payloads, quoting rules): [cli-reference.md § Passing structured inputs](cli-reference.md#passing-structured-inputs).
|
|
319
326
|
|
|
320
327
|
---
|
|
321
328
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## Studio Desktop vs headless Studio
|
|
6
6
|
|
|
7
|
-
`uip rpa` runs against a **headless Studio** by default (codename Helm — ships as the `UiPath.Studio.Helm.{Platform}` NuGet package, auto-launched the first time a command needs it). **Studio Desktop is not required** for the standard authoring loop — `init`, `run`, `debug start`, `validate`, `build`, `activities find`, `packages install`,
|
|
7
|
+
`uip rpa` runs against a **headless Studio** by default (codename Helm — ships as the `UiPath.Studio.Helm.{Platform}` NuGet package, auto-launched the first time a command needs it). **Studio Desktop is not required** for the standard authoring loop — `init`, `run`, `debug start`, `validate`, `build`, `activities find`, `packages install`, the `uia` group (indication, capture, interaction), etc. all work headless.
|
|
8
8
|
|
|
9
9
|
Studio Desktop is only required for two interactive UI tools:
|
|
10
10
|
- `uip rpa files diff` — opens an interactive diff window in Studio's UI.
|
|
@@ -14,7 +14,7 @@ For these two, see [§ Edge case: requiring Studio Desktop](#edge-case-requiring
|
|
|
14
14
|
|
|
15
15
|
> **Coded UI automation caveat.** One non-interactive task also needs Studio Desktop: regenerating `ObjectRepository.cs` — the `Descriptors.*` class consumed by coded `uiAutomation.*` workflows. `uip rpa build` alone does NOT produce it; Studio Desktop reconciles the coded workflow against the Object Repository to generate it. A headless flow can author and validate coded UIA, but populating `Descriptors.*` requires a Studio Desktop pass. See [ui-automation-guide.md](ui-automation-guide.md) § Finding Descriptors.
|
|
16
16
|
|
|
17
|
-
> **First call is slow.** On a cold NuGet cache, the very first `uip rpa` invocation triggers a silent `dotnet restore` of the headless Studio package and may sit near-silent for 30–90 seconds (longer behind a slow feed). A heartbeat line every 15s confirms it's still working.
|
|
17
|
+
> **First call is slow.** On a cold NuGet cache, the very first `uip rpa` invocation triggers a silent `dotnet restore` of the headless Studio package and may sit near-silent for 30–90 seconds (longer behind a slow feed). A heartbeat line every 15s confirms it's still working. The default shell timeout covers this; bump `timeoutSeconds` only behind a slow feed.
|
|
18
18
|
|
|
19
19
|
## Step 0.1: Establish Project Root
|
|
20
20
|
|
|
@@ -181,7 +181,7 @@ Two `uip rpa` commands need a running Studio Desktop instance — they have UI s
|
|
|
181
181
|
|
|
182
182
|
| Command | Why it needs Studio |
|
|
183
183
|
|---------|---------------------|
|
|
184
|
-
| `uip rpa diff` | Opens an interactive diff window in Studio's UI; finishes when the user closes the window. |
|
|
184
|
+
| `uip rpa files diff` | Opens an interactive diff window in Studio's UI; finishes when the user closes the window. |
|
|
185
185
|
| `uip rpa focus-activity` | Selects/highlights an activity in Studio's active workflow designer. |
|
|
186
186
|
|
|
187
187
|
When (and only when) you need to run one of these, ensure Studio Desktop is up:
|
|
@@ -56,7 +56,7 @@ Required for the `isactr:ConnectorActivity` type.
|
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
58
|
uip rpa packages versions --package-id UiPath.IntegrationService.Activities --project-dir "<PROJECT_DIR>" --output json
|
|
59
|
-
uip rpa packages install --packages
|
|
59
|
+
uip rpa packages install --packages id=UiPath.IntegrationService.Activities --project-dir "<PROJECT_DIR>" --output json
|
|
60
60
|
```
|
|
61
61
|
|
|
62
62
|
### Step 2 — Find the operation's `activityTypeId`
|
|
@@ -109,10 +109,10 @@ The response contains the complete `ConnectorActivity` element with:
|
|
|
109
109
|
For each field you want to bind, you need its declared `name` and `dataType`. Read the schema from Integration Service:
|
|
110
110
|
|
|
111
111
|
```bash
|
|
112
|
-
uip is resources describe <connector-key> <
|
|
112
|
+
uip is resources describe <connector-key> <object-name> --operation Create --output json
|
|
113
113
|
```
|
|
114
114
|
|
|
115
|
-
Note: it's `resources describe` (not `activities describe`). `activities` only has `list`.
|
|
115
|
+
The second positional is the **object/resource name** (from `uip is resources list`), not the operation; the operation goes in `--operation`. Note: it's `resources describe` (not `activities describe`). `activities` only has `list`.
|
|
116
116
|
|
|
117
117
|
The response includes a `metadataFile` path like:
|
|
118
118
|
```
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
# Library Authoring Guide
|
|
2
|
+
|
|
3
|
+
How to produce a reusable library: a NuGet package whose public workflows surface as activities in every consuming project's panel. For finding and consuming libraries that already exist, see [tenant-library-search-guide.md](tenant-library-search-guide.md).
|
|
4
|
+
|
|
5
|
+
## When to Build a Library
|
|
6
|
+
|
|
7
|
+
Good fit:
|
|
8
|
+
|
|
9
|
+
- **Complex reusable actions** shared by multiple processes — login flows, paginate-and-extract, shared validators, notification senders
|
|
10
|
+
- **Standard practices** the organization wants enforced once — logging wrappers, error handlers
|
|
11
|
+
- **Interactions with a shared corporate system** (ERP, CRM) that many automations touch
|
|
12
|
+
|
|
13
|
+
Not a fit:
|
|
14
|
+
|
|
15
|
+
- **Process-specific logic** — used once, belongs in the project
|
|
16
|
+
- **Unstable code** — frequent changes create versioning overhead for every consumer
|
|
17
|
+
- **Tightly coupled workflows** — only make sense inside one process
|
|
18
|
+
- **Single activities** — wrapping one `Click` as a library activity adds no value. Extract macro-actions (`DownloadInvoices`), not micro-primitives
|
|
19
|
+
|
|
20
|
+
Boundaries:
|
|
21
|
+
|
|
22
|
+
| Need | Go to |
|
|
23
|
+
|------|-------|
|
|
24
|
+
| Start new projects from a standard baseline | Project templates — [environment-setup.md § Template Selection](environment-setup.md) |
|
|
25
|
+
| Share UI selectors across projects | UI Libraries — [ui-automation-guide.md § Object Repository as a Published UI Library](ui-automation-guide.md) |
|
|
26
|
+
| Reuse logic inside one project | Separate workflow file — [project-structure-guide.md § Designing for Reuse](project-structure-guide.md) |
|
|
27
|
+
|
|
28
|
+
## Creating and Structuring
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
uip rpa init \
|
|
32
|
+
--name "<LIBRARY_NAME>" \
|
|
33
|
+
--location "<PARENT_DIR>" \
|
|
34
|
+
--template-id "LibraryProcessTemplate" \
|
|
35
|
+
--expression-language <VisualBasic|CSharp> \
|
|
36
|
+
--target-framework <Windows|Portable> \
|
|
37
|
+
--description "<DESCRIPTION>" \
|
|
38
|
+
--output json
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
- `<LIBRARY_NAME>`: descriptive and scoped, dotted segments accepted — `Company.Email.Utilities`, not `Helpers`. The name becomes the package ID.
|
|
42
|
+
- **Default `--target-framework Portable` (Cross-platform) for libraries.** Cross-platform libraries (packed to `lib/net8.0`) install into both Cross-platform and Windows consumer projects; Windows libraries (`lib/net8.0-windows7.0`) install only into Windows projects. Choose Windows only when the library needs Windows-only activities or dependencies — every Windows-only pick shrinks the consumer base.
|
|
43
|
+
- `<DESCRIPTION>` (`project.json` → `description`) becomes the package description shown in the feed — write it for consumers.
|
|
44
|
+
- The template scaffolds `NewActivity.xaml`; replace it — delete the file and point `project.json` → `main` at a real workflow, then add one workflow file per activity.
|
|
45
|
+
- Library `project.json` differs from a process: `designOptions.outputType` is `"Library"`, and there is no `entryPoints` (SKILL.md Rule 15) — do not add one.
|
|
46
|
+
|
|
47
|
+
### Public vs private workflows
|
|
48
|
+
|
|
49
|
+
Every workflow file is **public** by default — packed as an activity. To keep a helper internal, add its filename to `project.json`:
|
|
50
|
+
|
|
51
|
+
```json
|
|
52
|
+
"designOptions": {
|
|
53
|
+
"libraryOptions": {
|
|
54
|
+
"privateWorkflows": [
|
|
55
|
+
"ValidateEmailFormat.xaml"
|
|
56
|
+
]
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Private workflows compile into the package and stay invocable from the library's own workflows, but no activity is generated for consumers.
|
|
62
|
+
|
|
63
|
+
### Activity identity
|
|
64
|
+
|
|
65
|
+
- Activity name and class = workflow file name (`SendInvoiceNotification.xaml` → activity `SendInvoiceNotification`)
|
|
66
|
+
- Activity namespace = library name with dots and hyphens sanitized to underscores (`Company.Email.Utilities` → namespace `Company_Email_Utilities`); the package ID and assembly keep the dotted name. Read the real namespace from `uip rpa packages inspect` on the packed `.nupkg` — never derive it
|
|
67
|
+
- Property tooltip = the argument's description annotation in XAML: `sap2010:Annotation.AnnotationText` on the `x:Property`
|
|
68
|
+
|
|
69
|
+
### Activity Layout — the sidecar file
|
|
70
|
+
|
|
71
|
+
Each public workflow can ship as a rich activity: custom display name, tooltip, color, SVG icon, and per-property display names, placeholders, input widgets, required flags, and category grouping. All of it is authored in a sidecar JSON next to the workflow — `<WORKFLOW_NAME>.xaml.json`:
|
|
72
|
+
|
|
73
|
+
```json
|
|
74
|
+
{
|
|
75
|
+
"DisplayName": "Send Invoice Notification",
|
|
76
|
+
"Tooltip": "Sends an invoice notification email and returns a delivery summary",
|
|
77
|
+
"Color": "#1F8FFF",
|
|
78
|
+
"OriginalIconFileName": "SendInvoiceNotification.xaml.svg",
|
|
79
|
+
"Arguments": [
|
|
80
|
+
{
|
|
81
|
+
"Name": "RecipientEmail",
|
|
82
|
+
"DisplayName": "Recipient email",
|
|
83
|
+
"Category": "Input",
|
|
84
|
+
"Tooltip": "Email address that receives the notification",
|
|
85
|
+
"Placeholder": "someone@company.com",
|
|
86
|
+
"Widget": "TextComposer",
|
|
87
|
+
"IsRequired": true,
|
|
88
|
+
"IsPrincipal": true,
|
|
89
|
+
"ArgumentType": 0
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"Name": "UrgentDelivery",
|
|
93
|
+
"DisplayName": "Urgent delivery",
|
|
94
|
+
"Category": "Options",
|
|
95
|
+
"Tooltip": "Send with high priority",
|
|
96
|
+
"Widget": "Toggle",
|
|
97
|
+
"IsRequired": false,
|
|
98
|
+
"IsPrincipal": false,
|
|
99
|
+
"ArgumentType": 0
|
|
100
|
+
}
|
|
101
|
+
]
|
|
102
|
+
}
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Rules:
|
|
106
|
+
|
|
107
|
+
1. **`Arguments[].Name` must match the XAML argument name exactly** — the sidecar decorates arguments, it does not declare them.
|
|
108
|
+
2. **The sidecar wins over XAML annotations.** Without a sidecar, the argument annotation is the tooltip and the file name is the display name; the sidecar overrides both and adds everything else.
|
|
109
|
+
3. **Icon**: place an SVG next to the workflow as `<WORKFLOW_NAME>.xaml.svg` and reference it in `OriginalIconFileName`. `pack` embeds it as a package resource.
|
|
110
|
+
4. **`Widget` is the property's input type** (Studio: "Input type"). Valid values depend on the argument's type — omit `Widget` for the type's default editor:
|
|
111
|
+
|
|
112
|
+
| Argument type | `Widget` values |
|
|
113
|
+
|---------------|-----------------|
|
|
114
|
+
| `String` | `TextComposer` (default), `RichTextComposer`, `Dropdown`, `AutocompleteForExpression`, `RadioGroup` |
|
|
115
|
+
| `Boolean` / `bool?` | `Toggle` (default), `ConditionBuilder`, `NullableBoolean` |
|
|
116
|
+
| Numeric | `Number` (default), `Dropdown` |
|
|
117
|
+
| `DateTime` | `Datetime` |
|
|
118
|
+
| `TimeSpan` | `Timespan` |
|
|
119
|
+
| `String[]` | `StringArray` |
|
|
120
|
+
| `Dictionary` | `Dictionary` |
|
|
121
|
+
|
|
122
|
+
`DataSourceItems` (string array of choices) applies only to `Dropdown`, `RadioGroup`, and `AutocompleteForExpression`.
|
|
123
|
+
5. **`Category`** groups properties in the activity's body, in sidecar argument order; `IsPrincipal: true` surfaces the property on the activity card, `IsRequired: true` marks it mandatory.
|
|
124
|
+
6. **`HelpLink`** is a valid sidecar field but stays design-time only — it does not ship in the compiled activity metadata.
|
|
125
|
+
7. **`ArgumentType` is `0`** for plain arguments.
|
|
126
|
+
|
|
127
|
+
`pack` compiles the sidecar into the activity metadata embedded in the library assembly — consumers see the layout in their Activities panel with no extra steps.
|
|
128
|
+
|
|
129
|
+
## The Public-Workflow Contract — MANDATORY
|
|
130
|
+
|
|
131
|
+
Each public workflow is an API surface. Apply every rule:
|
|
132
|
+
|
|
133
|
+
1. **Name workflows verb-noun PascalCase, no spaces** — `SendNotificationEmail.xaml`, `DownloadInvoices.xaml`. The file name becomes the activity name in the consumer's panel.
|
|
134
|
+
2. **Public arguments: PascalCase, NO `in_`/`out_`/`io_` prefixes** — `InvoiceId`, `RecipientEmail`, `NotificationResult`. Argument names become activity property names; prefixes become noise on the property grid. This inverts the process-workflow convention: workflows invoked via Invoke Workflow File keep directional prefixes ([project-structure-guide.md § Designing for Reuse](project-structure-guide.md)); library public workflows drop them.
|
|
135
|
+
3. **Describe every public argument** via its `sap2010:Annotation.AnnotationText` — descriptions ship as property tooltips. For display names, placeholders, widgets, and grouping, add the layout sidecar ([§ Activity Layout](#activity-layout--the-sidecar-file)).
|
|
136
|
+
4. **Expect — and keep — the analyzer naming warnings.** `build`/`pack` emit `Argument <Name> does not respect the set pattern ^in_...` for prefix-free library arguments. The warning is non-blocking. Do NOT rename arguments to silence it.
|
|
137
|
+
5. **Return application handles.** A workflow that opens or attaches to an app outputs the window/browser object; downstream public workflows accept it as an input argument instead of reopening.
|
|
138
|
+
6. **Post-authoring audit:** before packing, re-check every public workflow against rules 1-3 — name form, argument naming, argument descriptions.
|
|
139
|
+
|
|
140
|
+
## Error Contract
|
|
141
|
+
|
|
142
|
+
- **Throw meaningful exceptions** — `BusinessRuleException` for input validation failures, with the offending value in the message. Let system exceptions propagate to the consumer.
|
|
143
|
+
- **Never swallow errors**: no empty `Catch` blocks, no `out` boolean success flags in place of exceptions. A swallowed error returns control to a consumer whose target app is in an unknown state.
|
|
144
|
+
- **Never set `ContinueOnError` inside a library** — the consumer decides failure policy.
|
|
145
|
+
- **No hardcoded paths** — accept paths as arguments, or build from `UiPath.Constants.Project.Location` for files packed with the library.
|
|
146
|
+
- **No embedded config or secrets** — read Orchestrator assets and credentials at the consumer level and pass them in as arguments.
|
|
147
|
+
|
|
148
|
+
## Versioning
|
|
149
|
+
|
|
150
|
+
`projectVersion` in `project.json` is the package version (override at pack time with `--package-version`). Follow SemVer:
|
|
151
|
+
|
|
152
|
+
| Bump | When | Consumer impact |
|
|
153
|
+
|------|------|-----------------|
|
|
154
|
+
| Patch `x.x.1` | Bug fix, no interface change | Safe drop-in |
|
|
155
|
+
| Minor `x.1.x` | New workflow or new optional argument, backward compatible | Safe upgrade |
|
|
156
|
+
| Major `1.x.x` | Renamed/removed workflow or argument, changed behavior | Code changes required |
|
|
157
|
+
|
|
158
|
+
1. Renaming a public workflow or argument is a **breaking change** — major bump. To change an argument compatibly, add a new one and keep the old.
|
|
159
|
+
2. **Never delete published versions from the feed** — consumers pin them. `libraries delete` is for mistaken uploads only.
|
|
160
|
+
3. Consumers pin exact versions in production.
|
|
161
|
+
|
|
162
|
+
## Pack & Publish
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
uip rpa pack "<PROJECT_DIR>" "<OUTPUT_DIR>" --output json
|
|
166
|
+
uip or libraries upload --file "<OUTPUT_DIR>/<LIBRARY_NAME>.<VERSION>.nupkg" --output json
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
- Libraries upload to the tenant-scoped **libraries feed** — not the per-folder processes feed that [publishing-guide.md](publishing-guide.md) covers with `uip or packages upload`. There is no `uip rpa publish`.
|
|
170
|
+
- `--feed-id <FEED_ID>` targets a non-default feed.
|
|
171
|
+
- Verify the publish:
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
uip or libraries list --search "<LIBRARY_NAME>" --output json
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
Returns the library with `key` = `<PackageId>:<Version>` and `projectType: "ProcessLibrary"`.
|
|
178
|
+
|
|
179
|
+
## Consumption Loop
|
|
180
|
+
|
|
181
|
+
1. **Discover** existing libraries before building new ones — [tenant-library-search-guide.md](tenant-library-search-guide.md) (SKILL.md Rule 9).
|
|
182
|
+
2. **Install** into the consumer as a dependency — SKILL.md § Resolving Packages & Activity Docs. The install records the dependency in the consumer's `project.json`; the library's activities become available.
|
|
183
|
+
3. **Build-time resolution:** the tenant libraries feed is not among the default build NuGet sources. If `build`/`pack` of the consumer fails with `Unable to find package <LIBRARY_NAME>`, download the package and add its folder as a source:
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
uip or libraries download "<PackageId>:<Version>" --destination "<LOCAL_DIR>/<LIBRARY_NAME>.<VERSION>.nupkg" --output json
|
|
187
|
+
uip rpa build "<CONSUMER_PROJECT_DIR>" --nuget-sources-config-path "<SOURCES_JSON>" --output json
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
`<SOURCES_JSON>` content:
|
|
191
|
+
|
|
192
|
+
```json
|
|
193
|
+
[{"Url": "<LOCAL_DIR>"}]
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
4. **Author against the library in consumer XAML.** Library activities are not in the `activities find` catalog and `activities get-default-xaml` does not load library types — get the activity surface from the package itself:
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
uip rpa packages inspect --nupkg-path "<LOCAL_DIR>/<LIBRARY_NAME>.<VERSION>.nupkg" --output json
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
Declare the namespace and use each public workflow as an element — property names = the library's argument names:
|
|
203
|
+
|
|
204
|
+
```xml
|
|
205
|
+
<Activity ... xmlns:lib="clr-namespace:<SANITIZED_NAMESPACE>;assembly=<LIBRARY_NAME>">
|
|
206
|
+
<lib:SendInvoiceNotification RecipientEmail="..." InvoiceId="..." />
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
`<SANITIZED_NAMESPACE>` is the underscore form from [§ Activity identity](#activity-identity). Bind non-literal properties per the project's expression language rules ([xaml/xaml-basics-and-rules.md](xaml/xaml-basics-and-rules.md)).
|
|
210
|
+
|
|
211
|
+
5. **Stale design session after the dependency becomes resolvable:** `build` compiles the consumer but `validate` keeps failing with `Cannot create unknown type` for the library activity. Kill the `UiPath.Studio.Helm` process (it relaunches on the next command) and re-run `validate`.
|
|
212
|
+
|
|
213
|
+
## Library Patterns
|
|
214
|
+
|
|
215
|
+
| Pattern | Shape | Example |
|
|
216
|
+
|---------|-------|---------|
|
|
217
|
+
| Wrapper | Bundle related operations into one higher-level activity | `OpenExcelAndReadSheet` instead of Open Workbook + Read Range |
|
|
218
|
+
| Connector | One library per corporate system — single source of auth, selectors, business rules | `CompanyERP.Library` owns all ERP interactions |
|
|
219
|
+
| Framework | Scaffolding consumers extend (REFramework-style) | State machine with extension points |
|
|
220
|
+
| Data access | Centralize database/API access behind typed activities | `GetCustomerById` returns a row from any backend |
|
|
221
|
+
|
|
222
|
+
## Pitfalls
|
|
223
|
+
|
|
224
|
+
- **Never name a library project `lib`** — collides with the NuGet package folder layout; consumers fail to compile.
|
|
225
|
+
- **A workflow file and one of its arguments must not share the same name** — publishing crashes on the name collision.
|
|
226
|
+
- **Never set `ImplementationVersion`** on the XAML `ActivityBuilder` — a framework bug silently drops the library's argument mappings.
|
|
@@ -13,6 +13,49 @@ For the coded vs XAML decision, see [coded-vs-xaml-guide.md](coded-vs-xaml-guide
|
|
|
13
13
|
- **Test project** — one test case per scenario. Coded test projects optionally use `partial class CodedWorkflow : IBeforeAfterRun` in `CodedWorkflowHooks.cs` for shared setup. XAML test projects use Test Activities for shared setup
|
|
14
14
|
- **Complex domain logic** — isolate business rules so they can be unit-tested and reused (Coded Source File for typed logic, or a separate workflow for activity-driven logic)
|
|
15
15
|
|
|
16
|
+
## Designing for Reuse
|
|
17
|
+
|
|
18
|
+
Structure decisions that keep components extractable later.
|
|
19
|
+
|
|
20
|
+
### Single responsibility
|
|
21
|
+
|
|
22
|
+
One workflow file = one meaningful action, named for it (`ProcessInvoice.xaml`, `LoginToApplication.xaml`). Split a workflow when it exceeds ~20-30 activities.
|
|
23
|
+
|
|
24
|
+
### Standard folder shape
|
|
25
|
+
|
|
26
|
+
For multi-step processes, organize by layer:
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
Project/
|
|
30
|
+
├── Main.xaml # High-level orchestration only
|
|
31
|
+
├── Framework/ # Init, cleanup, error handling, app open/close
|
|
32
|
+
├── BusinessLogic/ # Process-specific rules and transactions
|
|
33
|
+
├── Utilities/ # Process-agnostic helpers (formatters, screenshots)
|
|
34
|
+
└── Data/ # Config files, templates
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Separate business logic from UI components
|
|
38
|
+
|
|
39
|
+
UI workflows interact with applications and carry zero business rules; business-logic workflows decide and never touch the UI. Make read and write distinct invocable components — `GetCustomerInfo.xaml` and `ChangeCustomerInfo.xaml`, not one `HandleCustomer.xaml`. When the target application's UI changes, only the UI workflows need fixing; when a business rule changes, the UI workflows are untouched. Process-agnostic UI components are also the ones worth promoting to a shared library later.
|
|
40
|
+
|
|
41
|
+
### Composition and argument naming
|
|
42
|
+
|
|
43
|
+
Compose via `Invoke Workflow File` (coded: `workflows.StepName()`). Process workflow arguments use directional prefixes — `in_InvoiceId`, `out_Result`, `io_Browser` — so data flow is visible at every invocation site. Exception: library public workflows drop the prefixes ([library-authoring-guide.md § The Public-Workflow Contract](library-authoring-guide.md)).
|
|
44
|
+
|
|
45
|
+
### Layout and scale-out
|
|
46
|
+
|
|
47
|
+
- Sequence vs Flowchart vs State Machine per workflow: Workflow Types table in SKILL.md § XAML Workflows Quick Reference
|
|
48
|
+
- High-volume transactional work: dispatcher/performer split via queues — [reframework-guide.md § Execution Mode: Queue-Driven](reframework-guide.md)
|
|
49
|
+
|
|
50
|
+
### Promotion ladder
|
|
51
|
+
|
|
52
|
+
Promote logic only as reuse materializes:
|
|
53
|
+
|
|
54
|
+
1. **Inline** — used once in one workflow
|
|
55
|
+
2. **Separate workflow file** — reused within the project
|
|
56
|
+
3. **Shared library** — reused across projects ([library-authoring-guide.md](library-authoring-guide.md))
|
|
57
|
+
4. **UI Library** — selectors shared across projects ([ui-automation-guide.md § Object Repository as a Published UI Library](ui-automation-guide.md))
|
|
58
|
+
|
|
16
59
|
## Example — Invoice Processing Project (XAML)
|
|
17
60
|
|
|
18
61
|
```
|
|
@@ -8,7 +8,7 @@ How to take a built `.nupkg` from `uip rpa pack` and get it onto Orchestrator or
|
|
|
8
8
|
|---|---|---|
|
|
9
9
|
| Run the project as an Orchestrator process / link as a Test Manager automation | **Pack → Orchestrator package upload** | This file § Pack → Upload |
|
|
10
10
|
| Edit / visualize in Studio Web | **Solution upload** | [uipath-solution](../../uipath-solution/SKILL.md) (solution upload) |
|
|
11
|
-
| Deploy a packed solution (`.uipx`) to Orchestrator with the deployment lifecycle | **Solution publish** | [uipath-solution](../../uipath-solution/references/
|
|
11
|
+
| Deploy a packed solution (`.uipx`) to Orchestrator with the deployment lifecycle | **Solution publish** | [uipath-solution](../../uipath-solution/references/pack-and-deploy.md) |
|
|
12
12
|
|
|
13
13
|
This file documents the first row only — the legacy Orchestrator package feed flow that `uip tm testcases link-automation` requires.
|
|
14
14
|
|
|
@@ -46,9 +46,9 @@ uip or packages upload "<NUPKG_PATH>" --output json
|
|
|
46
46
|
|---|---|---|
|
|
47
47
|
| `<NUPKG_PATH>` | Yes (positional) | Path to the `.nupkg` produced by `pack`. |
|
|
48
48
|
| `--feed-id <UUID>` | No | Target a non-default feed. Defaults to the tenant feed. |
|
|
49
|
-
|
|
|
49
|
+
| `--folder-path <PATH>` / `--folder-key <UUID>` | No | Target a specific folder feed. |
|
|
50
50
|
|
|
51
|
-
Output JSON includes the package `Id` (the package name Orchestrator stores) and `Version`. Hold on to the `Id` —
|
|
51
|
+
Output JSON includes the package `Id` (the package name Orchestrator stores) and `Version`. Hold on to the `Id` — `uip tm testcases link-automation` takes it as `--package-name`; `uip or processes create` takes it as `--package-key` (with `--package-version` separately).
|
|
52
52
|
|
|
53
53
|
> **There is no `uip or packages publish` or `uip rpa publish`.** Agents that try those names get "unknown command". Pack writes a file; upload pushes that file. Two commands, two domains (`rpa`, `or`).
|
|
54
54
|
|
|
@@ -57,7 +57,7 @@ Output JSON includes the package `Id` (the package name Orchestrator stores) and
|
|
|
57
57
|
Folder key (UUID — required by `processes create`, `link-automation`, etc.):
|
|
58
58
|
|
|
59
59
|
```bash
|
|
60
|
-
uip or folders list
|
|
60
|
+
uip or folders list --output json
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
The returned `Key` is the UUID; the `FullyQualifiedName` is the human path. Either is accepted by `--folder-path` / `--folder-key` — most other CLI calls require the UUID.
|
|
@@ -77,4 +77,4 @@ For the full Pack → Upload → Link → Execute pipeline targeted at Test Mana
|
|
|
77
77
|
- **`uip solution publish` expects a packed `.zip`, not a project directory.** Solutions: run `uip solution pack` first, then `uip solution publish "<ZIP_PATH>"`. Single projects: use `uip or packages upload` instead.
|
|
78
78
|
- **Confusing `solution upload` and `solution publish`.** `upload` pushes to Studio Web (browser editing). `publish` pushes a packed solution `.zip` to the Orchestrator solution feed for `solution deploy`. They are NOT interchangeable. See [uipath-solution](../../uipath-solution/SKILL.md) for the decision tree.
|
|
79
79
|
- **Re-uploading the same version.** Orchestrator rejects duplicate `<id>:<version>` uploads. Bump `--package-version` (or `project.json` `projectVersion`) before re-packing.
|
|
80
|
-
- **`pack` succeeds but `analyze` ran with errors.** A successful pack with errors in the analyzer log usually means warnings only. Re-run `uip rpa analyze
|
|
80
|
+
- **`pack` succeeds but `analyze` ran with errors.** A successful pack with errors in the analyzer log usually means warnings only. Re-run `uip rpa analyze "<PROJECT_DIR>"` (project dir is positional) if you need a clean failure / pass signal.
|