@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.
Files changed (380) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CODEOWNERS +16 -10
  4. package/README.md +39 -4
  5. package/assets/skill-status.json +189 -0
  6. package/assets/uip-catalog-snapshot.json +67 -97
  7. package/commands/install-permissions.md +46 -2
  8. package/hooks/suggest-permissions.sh +0 -0
  9. package/hooks/validate-skill-descriptions.sh +0 -0
  10. package/package.json +1 -1
  11. package/skills/uipath-admin/SKILL.md +6 -7
  12. package/skills/uipath-admin/references/audit-commands.md +32 -10
  13. package/skills/uipath-admin/references/audit-workflow-guide.md +25 -6
  14. package/skills/uipath-admin/references/ip-restriction/ip-restriction-commands.md +1 -1
  15. package/skills/uipath-agents/SKILL.md +5 -3
  16. package/skills/uipath-agents/references/coded/embedding-in-flows.md +6 -0
  17. package/skills/uipath-agents/references/coded/flow-integration.md +1 -0
  18. package/skills/uipath-agents/references/coded/frameworks/langgraph-integration.md +2 -2
  19. package/skills/uipath-agents/references/coded/frameworks/llamaindex-integration.md +1 -1
  20. package/skills/uipath-agents/references/coded/frameworks/openai-agents-integration.md +5 -1
  21. package/skills/uipath-agents/references/coded/lifecycle/build.md +1 -0
  22. package/skills/uipath-agents/references/coded/lifecycle/evaluate.md +8 -6
  23. package/skills/uipath-agents/references/coded/quickstart.md +17 -12
  24. package/skills/uipath-agents/references/lowcode/agent-definition.md +17 -16
  25. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/analyze-attachments.md +2 -2
  26. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/batch-transform/impl-json.md +1 -1
  27. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/built-in-tools.md +4 -4
  28. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/deeprag/impl-json.md +1 -1
  29. package/skills/uipath-agents/references/lowcode/capabilities/context/context.md +1 -1
  30. package/skills/uipath-agents/references/lowcode/capabilities/context/datafabric.md +1 -1
  31. package/skills/uipath-agents/references/lowcode/capabilities/context/index.md +12 -12
  32. package/skills/uipath-agents/references/lowcode/capabilities/escalation/escalation.md +14 -14
  33. package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails-recommend.md +1 -1
  34. package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails.md +23 -20
  35. package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +27 -26
  36. package/skills/uipath-agents/references/lowcode/capabilities/integration-service/integration-service.md +12 -13
  37. package/skills/uipath-agents/references/lowcode/capabilities/mcp/mcp.md +133 -0
  38. package/skills/uipath-agents/references/lowcode/capabilities/memory/memory.md +9 -9
  39. package/skills/uipath-agents/references/lowcode/capabilities/process/process.md +25 -24
  40. package/skills/uipath-agents/references/lowcode/capabilities/process/solution-files.md +6 -6
  41. package/skills/uipath-agents/references/lowcode/critical-rules.md +17 -17
  42. package/skills/uipath-agents/references/lowcode/debug.md +55 -0
  43. package/skills/uipath-agents/references/lowcode/evaluations/evaluate.md +6 -6
  44. package/skills/uipath-agents/references/lowcode/evaluations/evaluation-sets.md +1 -1
  45. package/skills/uipath-agents/references/lowcode/evaluations/evaluators.md +3 -3
  46. package/skills/uipath-agents/references/lowcode/evaluations/running-evaluations.md +8 -8
  47. package/skills/uipath-agents/references/lowcode/lowcode.md +18 -12
  48. package/skills/uipath-agents/references/lowcode/model-selection-guide.md +3 -3
  49. package/skills/uipath-agents/references/lowcode/project-lifecycle.md +53 -33
  50. package/skills/uipath-agents/references/lowcode/solution-resources.md +8 -8
  51. package/skills/uipath-api-workflow/SKILL.md +32 -83
  52. package/skills/uipath-api-workflow/references/cli-reference.md +40 -26
  53. package/skills/uipath-api-workflow/references/connector-activity-discovery.md +75 -23
  54. package/skills/uipath-api-workflow/references/troubleshooting.md +4 -12
  55. package/skills/uipath-automation-discovery/SKILL.md +234 -0
  56. package/skills/uipath-automation-discovery/references/intake-guide.md +85 -0
  57. package/skills/uipath-automation-discovery/references/mining-guide.md +156 -0
  58. package/skills/uipath-automation-discovery/references/report-template.md +95 -0
  59. package/skills/uipath-coded-apps/SKILL.md +0 -2
  60. package/skills/uipath-data-fabric/SKILL.md +0 -2
  61. package/skills/uipath-feedback/SKILL.md +1 -1
  62. package/skills/uipath-governance/SKILL.md +0 -2
  63. package/skills/uipath-human-in-the-loop/SKILL.md +2 -3
  64. package/skills/uipath-maestro-bpmn/.maintenance/check-all.sh +0 -0
  65. package/skills/uipath-maestro-bpmn/.maintenance/check-anchors.sh +0 -0
  66. package/skills/uipath-maestro-bpmn/.maintenance/check-depth.sh +0 -0
  67. package/skills/uipath-maestro-bpmn/.maintenance/check-link-text.sh +0 -0
  68. package/skills/uipath-maestro-bpmn/.maintenance/check-links.sh +0 -0
  69. package/skills/uipath-maestro-bpmn/.maintenance/check-orphans.sh +0 -0
  70. package/skills/uipath-maestro-bpmn/.maintenance/check-plugin-pairs.sh +0 -0
  71. package/skills/uipath-maestro-bpmn/.maintenance/check-template.sh +0 -0
  72. package/skills/uipath-maestro-bpmn/.maintenance/check-uip-commands.sh +0 -0
  73. package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.py +0 -0
  74. package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.sh +0 -0
  75. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/api-workflow.md +1 -1
  76. package/skills/uipath-maestro-bpmn/references/operate/references/run.md +1 -1
  77. package/skills/uipath-maestro-bpmn/references/shared/local-metadata-regeneration-guide.md +2 -2
  78. package/skills/uipath-maestro-bpmn/references/shared/wrapper-shells.md +1 -1
  79. package/skills/uipath-maestro-case/SKILL.md +22 -27
  80. package/skills/uipath-maestro-case/references/bindings-and-expressions.md +7 -1
  81. package/skills/uipath-maestro-case/references/bindings-v2-sync.md +7 -16
  82. package/skills/uipath-maestro-case/references/case-commands.md +9 -9
  83. package/skills/uipath-maestro-case/references/case-editing-operations.md +51 -67
  84. package/skills/uipath-maestro-case/references/case-schema.md +74 -138
  85. package/skills/uipath-maestro-case/references/connector-integration.md +32 -5
  86. package/skills/uipath-maestro-case/references/connector-trigger-common.md +39 -12
  87. package/skills/uipath-maestro-case/references/evals/evals.json +9 -23
  88. package/skills/uipath-maestro-case/references/implementation.md +24 -24
  89. package/skills/uipath-maestro-case/references/phased-execution.md +24 -38
  90. package/skills/uipath-maestro-case/references/placeholder-tasks.md +9 -9
  91. package/skills/uipath-maestro-case/references/planning.md +20 -79
  92. package/skills/uipath-maestro-case/references/plugins/case/impl-json.md +15 -122
  93. package/skills/uipath-maestro-case/references/plugins/case/planning.md +3 -1
  94. package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/impl-json.md +10 -22
  95. package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/impl-json.md +7 -5
  96. package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/planning.md +2 -0
  97. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +5 -5
  98. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +1 -1
  99. package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md +4 -4
  100. package/skills/uipath-maestro-case/references/plugins/logging/impl-json.md +10 -0
  101. package/skills/uipath-maestro-case/references/plugins/sla/impl-json.md +10 -42
  102. package/skills/uipath-maestro-case/references/plugins/sla/planning.md +5 -5
  103. package/skills/uipath-maestro-case/references/plugins/stages/impl-json.md +8 -79
  104. package/skills/uipath-maestro-case/references/plugins/stages/planning.md +7 -14
  105. package/skills/uipath-maestro-case/references/plugins/tasks/agent/impl-json.md +1 -1
  106. package/skills/uipath-maestro-case/references/plugins/tasks/agent/planning.md +3 -2
  107. package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/impl-json.md +1 -1
  108. package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/planning.md +3 -2
  109. package/skills/uipath-maestro-case/references/plugins/tasks/case-management/impl-json.md +1 -1
  110. package/skills/uipath-maestro-case/references/plugins/tasks/case-management/planning.md +4 -3
  111. package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/impl-json.md +2 -2
  112. package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/planning.md +12 -7
  113. package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/impl-json.md +1 -1
  114. package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/planning.md +2 -0
  115. package/skills/uipath-maestro-case/references/plugins/tasks/process/impl-json.md +1 -1
  116. package/skills/uipath-maestro-case/references/plugins/tasks/process/planning.md +4 -3
  117. package/skills/uipath-maestro-case/references/plugins/tasks/rpa/impl-json.md +1 -1
  118. package/skills/uipath-maestro-case/references/plugins/tasks/rpa/planning.md +4 -3
  119. package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/impl-json.md +3 -0
  120. package/skills/uipath-maestro-case/references/plugins/triggers/event/impl-json.md +6 -7
  121. package/skills/uipath-maestro-case/references/plugins/triggers/event/planning.md +4 -2
  122. package/skills/uipath-maestro-case/references/plugins/triggers/manual/impl-json.md +4 -27
  123. package/skills/uipath-maestro-case/references/plugins/triggers/timer/impl-json.md +8 -20
  124. package/skills/uipath-maestro-case/references/plugins/variables/bindings/impl-json.md +6 -11
  125. package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +15 -30
  126. package/skills/uipath-maestro-case/references/plugins/variables/global-vars/planning.md +4 -4
  127. package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +8 -7
  128. package/skills/uipath-maestro-case/references/registry-discovery.md +4 -4
  129. package/skills/uipath-maestro-case/references/sdd-generation-rules.md +12 -10
  130. package/skills/uipath-maestro-case/references/troubleshooting-guide.md +1 -1
  131. package/skills/uipath-maestro-flow/.maintenance/check-all.sh +0 -0
  132. package/skills/uipath-maestro-flow/.maintenance/check-anchors.sh +0 -0
  133. package/skills/uipath-maestro-flow/.maintenance/check-depth.sh +0 -0
  134. package/skills/uipath-maestro-flow/.maintenance/check-link-text.sh +0 -0
  135. package/skills/uipath-maestro-flow/.maintenance/check-links.sh +0 -0
  136. package/skills/uipath-maestro-flow/.maintenance/check-orphans.sh +0 -0
  137. package/skills/uipath-maestro-flow/.maintenance/check-plugin-pairs.sh +0 -0
  138. package/skills/uipath-maestro-flow/.maintenance/check-template.sh +0 -0
  139. package/skills/uipath-maestro-flow/.maintenance/check-uip-commands.sh +0 -0
  140. package/skills/uipath-maestro-flow/.maintenance/check-versions.sh +0 -0
  141. package/skills/uipath-maestro-flow/SKILL.md +9 -6
  142. package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +4 -4
  143. package/skills/uipath-maestro-flow/references/author/references/brownfield.md +17 -2
  144. package/skills/uipath-maestro-flow/references/author/references/editing-operations-cli.md +1 -1
  145. package/skills/uipath-maestro-flow/references/author/references/editing-operations-json.md +3 -3
  146. package/skills/uipath-maestro-flow/references/author/references/editing-operations.md +9 -9
  147. package/skills/uipath-maestro-flow/references/author/references/greenfield.md +13 -10
  148. package/skills/uipath-maestro-flow/references/author/references/planning-arch.md +75 -5
  149. package/skills/uipath-maestro-flow/references/author/references/planning-impl.md +2 -1
  150. package/skills/uipath-maestro-flow/references/author/references/plugins/connector/impl.md +14 -4
  151. package/skills/uipath-maestro-flow/references/author/references/plugins/connector-trigger/impl.md +20 -4
  152. package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/impl.md +5 -5
  153. package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/planning.md +5 -5
  154. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-connector.md +81 -0
  155. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-manual.md +63 -0
  156. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl.md +59 -57
  157. package/skills/uipath-maestro-flow/references/author/references/plugins/http/planning.md +8 -7
  158. package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/impl.md +23 -23
  159. package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/planning.md +2 -2
  160. package/skills/uipath-maestro-flow/references/diagnose/CAPABILITY.md +1 -1
  161. package/skills/uipath-maestro-flow/references/diagnose/references/failure-modes.md +6 -6
  162. package/skills/uipath-maestro-flow/references/evaluate/CAPABILITY.md +2 -2
  163. package/skills/uipath-maestro-flow/references/evaluate/references/upload-safety.md +1 -1
  164. package/skills/uipath-maestro-flow/references/operate/CAPABILITY.md +8 -8
  165. package/skills/uipath-maestro-flow/references/operate/references/run.md +2 -2
  166. package/skills/uipath-maestro-flow/references/operate/references/ship.md +7 -7
  167. package/skills/uipath-maestro-flow/references/shared/cli-commands.md +19 -17
  168. package/skills/uipath-maestro-flow/references/shared/cli-conventions.md +1 -1
  169. package/skills/uipath-maestro-flow/references/shared/file-format.md +1 -1
  170. package/skills/uipath-maestro-flow/references/shared/ux-narration-and-todos.md +7 -7
  171. package/skills/uipath-planner/SKILL.md +110 -74
  172. package/skills/{uipath-solution → uipath-planner}/assets/templates/agent-sdd-template.md +3 -3
  173. package/skills/{uipath-solution → uipath-planner}/assets/templates/api-workflow-sdd-template.md +4 -4
  174. package/skills/{uipath-solution → uipath-planner}/assets/templates/case-sdd-template.md +4 -4
  175. package/skills/{uipath-solution → uipath-planner}/assets/templates/coded-app-sdd-template.md +3 -3
  176. package/skills/{uipath-solution → uipath-planner}/assets/templates/flow-sdd-template.md +4 -4
  177. package/skills/{uipath-solution → uipath-planner}/assets/templates/rpa-sdd-template.md +11 -11
  178. package/skills/uipath-planner/references/multi-skill-patterns-guide.md +3 -3
  179. package/skills/uipath-planner/references/non-pdd-lane-guide.md +10 -6
  180. package/skills/uipath-planner/references/pdd-driven-lane-guide.md +17 -7
  181. package/skills/uipath-planner/references/plan-and-tasks-format.md +2 -2
  182. package/skills/{uipath-solution/references/design → uipath-planner/references}/product-selection-guide.md +8 -8
  183. package/skills/{uipath-solution/references/design → uipath-planner/references}/rpa-product-guide.md +1 -1
  184. package/skills/{uipath-solution/references/design → uipath-planner/references}/sdd-generation-guide.md +26 -39
  185. package/skills/{uipath-solution/references/design → uipath-planner/references}/tenant-library-search-guide.md +7 -7
  186. package/skills/uipath-platform/SKILL.md +21 -48
  187. package/skills/uipath-platform/references/integration-service/http-request.md +5 -2
  188. package/skills/uipath-platform/references/integration-service/reference-resolution.md +19 -1
  189. package/skills/uipath-platform/references/integration-service/triggers.md +21 -5
  190. package/skills/uipath-platform/references/licensing/consumables-report.md +1 -1
  191. package/skills/uipath-platform/references/licensing/tenant-allocations.md +1 -1
  192. package/skills/uipath-platform/references/licensing/user-licenses-allocations.md +1 -1
  193. package/skills/uipath-platform/references/{resources → orchestrator}/manage-assets.md +37 -34
  194. package/skills/uipath-platform/references/orchestrator/manage-sessions.md +1 -1
  195. package/skills/uipath-platform/references/orchestrator/orchestrator.md +4 -31
  196. package/skills/uipath-platform/references/{resources → orchestrator}/process-queues.md +61 -50
  197. package/skills/uipath-platform/references/{resources → orchestrator}/resources.md +21 -21
  198. package/skills/uipath-platform/references/orchestrator/run-jobs.md +26 -14
  199. package/skills/uipath-platform/references/orchestrator/setup-environment.md +20 -16
  200. package/skills/uipath-platform/references/orchestrator/tenant-admin.md +7 -7
  201. package/skills/uipath-platform/references/{resources → orchestrator}/triggers-and-webhooks.md +41 -37
  202. package/skills/uipath-platform/references/{resources → orchestrator}/work-with-storage.md +56 -34
  203. package/skills/uipath-platform/references/uip-commands.md +20 -19
  204. package/skills/uipath-review/SKILL.md +81 -7
  205. package/skills/uipath-review/references/agents/agent-common-issues.md +42 -0
  206. package/skills/uipath-review/references/agents/agent-review-checklist.md +79 -57
  207. package/skills/uipath-review/references/agents/agents-coded-rules.md +160 -0
  208. package/skills/uipath-review/references/agents/agents-common-rules.md +32 -0
  209. package/skills/uipath-review/references/agents/agents-lowcode-rules.md +128 -0
  210. package/skills/uipath-review/references/platform/platform-resources-checklist.md +2 -2
  211. package/skills/uipath-review/references/review-workflow-guide.md +1 -1
  212. package/skills/uipath-review/references/rpa/rpa-review-checklist.md +2 -2
  213. package/skills/uipath-review/references/rule-catalog-workflow.md +90 -0
  214. package/skills/uipath-review/references/rule-format.md +91 -0
  215. package/skills/uipath-rpa/SKILL.md +16 -6
  216. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/CreateEntityRecord.md +149 -0
  217. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/CreateMultipleEntityRecords.md +67 -0
  218. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteEntityRecord.md +44 -0
  219. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteFileFromRecordField.md +56 -0
  220. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DeleteMultipleEntityRecords.md +65 -0
  221. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/DownloadFileFromRecordField.md +115 -0
  222. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/GetEntityRecordById.md +50 -0
  223. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/QueryEntityRecords.md +69 -0
  224. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UpdateEntityRecord.md +120 -0
  225. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UpdateMultipleEntityRecords.md +67 -0
  226. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/activities/UploadFileToRecordField.md +103 -0
  227. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/guides/data-service-filter-builder-guide.md +461 -0
  228. package/skills/uipath-rpa/references/activity-docs/UiPath.DataService.Activities/overview.md +355 -0
  229. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AppendRangeX.md +1 -1
  230. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AutoFillX.md +1 -1
  231. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/AutoFitX.md +1 -1
  232. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ChangeDataRangeModification.md +1 -1
  233. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ChangePivotTableDataSourceX.md +1 -1
  234. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ClearRangeX.md +1 -1
  235. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CopyPasteRangeX.md +1 -1
  236. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CreatePivotTableXv2.md +1 -1
  237. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/CreateTableX.md +1 -1
  238. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteColumnX.md +1 -1
  239. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteRowsX.md +1 -1
  240. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DeleteSheetX.md +1 -1
  241. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/DuplicateSheetX.md +1 -1
  242. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExecuteMacroArgumentX.md +1 -1
  243. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExecuteMacroX.md +1 -1
  244. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ExportExcelToCsvX.md +1 -1
  245. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FillRangeX.md +1 -1
  246. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FilterPivotTableX.md +1 -1
  247. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FilterX.md +1 -1
  248. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FindFirstLastDataRowX.md +1 -1
  249. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FindReplaceValueX.md +1 -1
  250. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/FormatRangeX.md +2 -2
  251. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertColumnX.md +1 -1
  252. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertExcelChartX.md +1 -1
  253. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertRowsX.md +1 -1
  254. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InsertSheetX.md +1 -1
  255. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InvokeVBAArgumentX.md +1 -1
  256. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/InvokeVBAX.md +1 -1
  257. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/LookupX.md +1 -1
  258. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/PivotTableFieldX.md +1 -1
  259. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ProtectSheetX.md +1 -1
  260. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ReadCellFormulaX.md +1 -1
  261. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/ReadCellValueX.md +1 -1
  262. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RefreshPivotTableX.md +1 -1
  263. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RemoveDuplicatesX.md +1 -1
  264. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/RenameSheetX.md +1 -1
  265. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SaveAsPdfX.md +1 -1
  266. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SaveExcelFileX.md +1 -1
  267. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SortColumnX.md +1 -1
  268. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/SortX.md +1 -1
  269. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/UnprotectSheetX.md +1 -1
  270. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/UpdateChartX.md +1 -1
  271. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/VLookupX.md +1 -1
  272. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/WriteCellX.md +1 -1
  273. package/skills/uipath-rpa/references/activity-docs/UiPath.Excel.Activities/3.5/activities/overview.md +2 -2
  274. package/skills/uipath-rpa/references/activity-docs/UiPath.GSuite.Activities/3.8/activities/overview.md +2 -2
  275. package/skills/uipath-rpa/references/activity-docs/UiPath.Mail.Activities/2.8/activities/overview.md +2 -2
  276. package/skills/uipath-rpa/references/activity-docs/UiPath.MicrosoftOffice365.Activities/3.8/activities/SendMailConnections.md +1 -1
  277. package/skills/uipath-rpa/references/activity-docs/UiPath.MicrosoftOffice365.Activities/3.8/activities/overview.md +3 -3
  278. package/skills/uipath-rpa/references/activity-docs/UiPath.Presentations.Activities/2.5/activities/overview.md +2 -2
  279. package/skills/uipath-rpa/references/activity-docs/UiPath.System.Activities/25.10/activities/overview.md +1 -1
  280. package/skills/uipath-rpa/references/activity-docs/UiPath.Word.Activities/2.5/activities/overview.md +2 -2
  281. package/skills/uipath-rpa/references/cli-reference.md +108 -554
  282. package/skills/uipath-rpa/references/coded/coding-guidelines.md +1 -1
  283. package/skills/uipath-rpa/references/coded/operations-guide.md +3 -3
  284. package/skills/uipath-rpa/references/coded/third-party-packages-guide.md +1 -1
  285. package/skills/uipath-rpa/references/connector-capabilities.md +3 -2
  286. package/skills/uipath-rpa/references/debugging.md +43 -36
  287. package/skills/uipath-rpa/references/environment-setup.md +3 -3
  288. package/skills/uipath-rpa/references/is-connector-xaml-guide.md +3 -3
  289. package/skills/uipath-rpa/references/library-authoring-guide.md +226 -0
  290. package/skills/uipath-rpa/references/project-structure-guide.md +43 -0
  291. package/skills/uipath-rpa/references/publishing-guide.md +5 -5
  292. package/skills/uipath-rpa/references/tenant-library-search-guide.md +18 -14
  293. package/skills/uipath-rpa/references/testing-guide.md +6 -6
  294. package/skills/uipath-rpa/references/trigger-pattern-guide.md +2 -2
  295. package/skills/uipath-rpa/references/ui-automation-guide.md +43 -6
  296. package/skills/uipath-rpa/references/uia-configure-target-workflows.md +2 -2
  297. package/skills/uipath-rpa/references/uia-prerequisites.md +1 -1
  298. package/skills/uipath-rpa/references/validation-guide.md +4 -4
  299. package/skills/uipath-rpa/references/xaml/canvas-layout-guide.md +4 -1
  300. package/skills/uipath-rpa/references/xaml/common-pitfalls.md +18 -6
  301. package/skills/uipath-rpa/references/xaml/long-running-workflow-guide.md +304 -0
  302. package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +3 -0
  303. package/skills/uipath-solution/SKILL.md +23 -125
  304. package/skills/uipath-solution/references/{operate/activate-and-manage.md → activate-and-manage.md} +1 -1
  305. package/skills/uipath-solution/references/{operate/develop-solution.md → develop-solution.md} +43 -37
  306. package/skills/uipath-solution/references/{operate/pack-and-deploy.md → pack-and-deploy.md} +3 -3
  307. package/skills/uipath-solution/references/{operate/scenarios → scenarios}/intra-solution-references.md +2 -2
  308. package/skills/uipath-solution/references/{operate/scenarios → scenarios}/manual-edits.md +4 -4
  309. package/skills/uipath-solution/references/{operate/scenarios → scenarios}/same-name-across-folders.md +2 -2
  310. package/skills/uipath-solution/references/{operate/scenarios → scenarios}/shared-cloud-resource.md +3 -3
  311. package/skills/uipath-solution/references/{operate/scenarios → scenarios}/virtual-resource.md +4 -4
  312. package/skills/uipath-solution/references/{operate/scenarios.md → scenarios.md} +5 -5
  313. package/skills/uipath-solution/references/{operate/solution-overview.md → solution-overview.md} +3 -3
  314. package/skills/uipath-tasks/SKILL.md +0 -2
  315. package/skills/uipath-test/SKILL.md +26 -7
  316. package/skills/uipath-troubleshoot/agents/triage.md +6 -4
  317. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/overview.md +55 -0
  318. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/add-queue-item-failed.md +58 -0
  319. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/application-launch-failed.md +56 -0
  320. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/browser-open-or-attach-failed.md +59 -0
  321. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/file-operation-failed.md +60 -0
  322. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/foreach-row-failed.md +56 -0
  323. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/image-target-not-found.md +56 -0
  324. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/invoke-code-failed.md +54 -0
  325. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/invoke-workflow-failed.md +58 -0
  326. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/kill-process-failed.md +49 -0
  327. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-activity-configuration-error.md +80 -0
  328. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-activity-timeout.md +61 -0
  329. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-element-interaction-failed.md +61 -0
  330. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/ui-element-not-found.md +64 -0
  331. package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/summary.md +24 -0
  332. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-file-locked.md +142 -0
  333. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-file-not-found.md +140 -0
  334. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-null-reference.md +119 -0
  335. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/read-range-sheet-not-found.md +146 -0
  336. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/write-cell-failures.md +131 -0
  337. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/summary.md +5 -0
  338. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/investigation_guide.md +1 -0
  339. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/overview.md +16 -0
  340. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/activity-configuration-error.md +42 -0
  341. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/ambiguous-selector.md +131 -0
  342. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/application-not-found.md +84 -0
  343. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/application-open-failed.md +46 -0
  344. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/browser-navigation-failed.md +45 -0
  345. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/click-coordinate-off-screen.md +120 -0
  346. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/disabled-element.md +0 -2
  347. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/element-found-not-actionable.md +43 -0
  348. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/healing-agent-no-license.md +12 -12
  349. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/healing-agent-orch-issues.md +108 -0
  350. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/inject-js-failed.md +41 -0
  351. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/scope-container-wrong-page.md +7 -0
  352. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/select-item-no-items.md +37 -0
  353. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/selector-failure-manual.md +2 -0
  354. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/timeout-issue.md +2 -2
  355. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/verify-execution-failure.md +120 -0
  356. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/wrong-target-application.md +41 -0
  357. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/summary.md +12 -0
  358. package/skills/uipath-troubleshoot/references/products/agents/playbooks/guardrail-violation.md +111 -0
  359. package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-connection-disabled.md +90 -0
  360. package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-invalid-credentials.md +123 -0
  361. package/skills/uipath-troubleshoot/references/products/agents/playbooks/is-invalid-element-instance.md +96 -0
  362. package/skills/uipath-troubleshoot/references/products/agents/playbooks/llm-insufficient-information.md +1 -1
  363. package/skills/uipath-troubleshoot/references/products/agents/summary.md +4 -0
  364. package/skills/uipath-troubleshoot/references/products/orchestrator/investigation_guide.md +7 -7
  365. package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-pending-no-host.md +3 -1
  366. package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-pending-stale-dispatch.md +2 -0
  367. package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-stopped-exit-code-0x40010004.md +104 -0
  368. package/skills/uipath-troubleshoot/references/products/orchestrator/summary.md +1 -0
  369. package/skills/uipath-troubleshoot/references/summary.md +10 -1
  370. package/version-manifest.json +2 -2
  371. package/skills/uipath-ixp/SKILL.md +0 -84
  372. package/skills/uipath-ixp/references/cli-reference.md +0 -113
  373. package/skills/uipath-ixp/references/improve-prompts-guide.md +0 -283
  374. package/skills/uipath-ixp/references/label-documents-guide.md +0 -175
  375. package/skills/uipath-ixp/references/project-setup-guide.md +0 -90
  376. package/skills/uipath-maestro-case/references/plugins/edges/impl-json.md +0 -152
  377. package/skills/uipath-maestro-case/references/plugins/edges/planning.md +0 -93
  378. /package/skills/{uipath-solution/references/design → uipath-planner/references}/package-selection-guide.md +0 -0
  379. /package/skills/{uipath-solution/references/design → uipath-planner/references}/pdd-analysis-guide.md +0 -0
  380. /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 '[{"id":"<PACKAGE_ID>"}]' --output json` (no `add-dependency` command exists; do not hand-edit `project.json`) |
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 `Unknown command: add-dependency`. See [cli-reference.md § packages install](../cli-reference.md).
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 '[{"id":"<PACKAGE_ID>","version":"<VERSION>"}]' --output json
401
+ uip rpa packages install --project-dir "<PROJECT_DIR>" --packages 'id=<PACKAGE_ID>,version=<VERSION>' --output json
402
402
  ```
403
- Omit `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.
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 '[{"id":"<PACKAGE_ID>","version":"<VERSION>"}]' --output json`. Omit `version` to resolve the latest compatible. Do NOT hand-edit `project.json` `dependencies`. **There is no `uip rpa add-dependency` command.**
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 a specific operation's schema (fields, types, required flags, enum values):
30
- uip is resources describe <connector-key> <operation-name> --operation Create --output json
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 '<json>'] [--log-level <level>] [--skip-build] [--output json]
29
- uip rpa debug start --file-path <relative-path> [--input-arguments '<json>'] [--log-level <level>] [--skip-build] [--output json]
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 '<json>'] [--input-variables '<json>'] [--log-level <level>] [--output json]
36
- uip rpa debug start-from-here [--input-arguments '<json>'] [--input-variables '<json>'] [--log-level <level>] [--output json]
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` | JSON object with project-level input arguments. 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` | JSON object with workflow-level variable values. 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`, `Information` (default), `Warning`, `Error`, `Critical` |
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`)** | Plain JSON values: `{"name":"John","age":30}` | N/A |
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
- # String variable — VB string literal with escaped quotes
96
- --input-variables '{"greeting": "\"Hello World\""}'
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 '{"isActive": "True"}'
99
+ --input-variables isActive=True
103
100
 
104
101
  # Null / unset (VB keyword)
105
- --input-variables '{"result": "Nothing"}'
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
- # New object
108
- --input-variables '{"config": "New Dictionary(Of String, Object)"}'
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 '{"name": "\"John\"", "age": "30", "isActive": "True"}'
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 '{"isActive": "true"}'
119
+ --input-variables isActive=true
121
120
 
122
121
  # Null / unset (C# keyword)
123
- --input-variables '{"result": "null"}'
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
- # New object
126
- --input-variables '{"config": "new Dictionary<string, object>()"}'
127
+ # String variable — quoted literal goes through a file
128
+ --input-variables greeting=@greeting.txt
127
129
  ```
128
130
 
129
- > **Important:** String values require the VB/C# string literal quotes *inside* the JSON value. A JSON string `"200"` becomes the expression `200` (an integer literal), not the string `"200"`. To pass the string `"200"`, use `"\"200\""`.
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 '{"temperature": "\"200\""}' \
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 '{"apiUrl": "\"https://api.example.com/weather\""}' \
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 (plain JSON values)
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 '{"orderId": "ORD-12345", "customerEmail": "test@example.com"}' \
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`, values are plain JSON. For `debug test-activity` / `debug start-from-here`, values must be VB/C# expressions.
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`, `indicate-application`/`indicate-element`, the `uia` group, etc. all work headless.
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. Bump the per-call timeout to ≥ 180s for the first invocation.
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 '[{"id":"UiPath.IntegrationService.Activities"}]' --project-dir "<PROJECT_DIR>" --output json
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> <operation-name> --operation Create --output json
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/operate/pack-and-deploy.md) |
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
- | `-t, --tenant <NAME>` | No | Override the authenticated tenant. |
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` — it is the `--package-name` value that `uip tm testcases link-automation` and `uip or processes create` need.
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-current-user --output json
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 --project-dir "<PROJECT_DIR>"` if you need a clean failure / pass signal.
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.