@uipath/skills 1.201.0-preview.621 → 1.202.0-preview.635

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 (415) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.cursor-plugin/plugin.json +1 -1
  4. package/CODEOWNERS +41 -29
  5. package/README.md +1 -0
  6. package/assets/skill-status.json +13 -2
  7. package/assets/uip-catalog-snapshot.json +95 -46
  8. package/package.json +2 -1
  9. package/skills/uipath-admin/SKILL.md +107 -197
  10. package/skills/uipath-admin/references/audit-commands.md +69 -120
  11. package/skills/uipath-admin/references/audit-workflow-guide.md +101 -152
  12. package/skills/uipath-admin/references/authorization/authorization-commands.md +121 -210
  13. package/skills/uipath-admin/references/authorization/check-access.md +39 -63
  14. package/skills/uipath-admin/references/authorization/grant-permissions.md +38 -49
  15. package/skills/uipath-admin/references/authorization/permission-catalog.md +32 -34
  16. package/skills/uipath-admin/references/authorization/role-assignment-management.md +96 -99
  17. package/skills/uipath-admin/references/authorization/role-management.md +113 -142
  18. package/skills/uipath-admin/references/diagnose/CAPABILITY.md +13 -14
  19. package/skills/uipath-admin/references/diagnose/{references/failure-modes.md → failure-modes.md} +90 -46
  20. package/skills/uipath-admin/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +21 -14
  21. package/skills/uipath-admin/references/external-app-management.md +42 -39
  22. package/skills/uipath-admin/references/identity-commands.md +72 -625
  23. package/skills/uipath-admin/references/identity-troubleshoot-guide.md +73 -95
  24. package/skills/uipath-admin/references/ip-restriction/bypass-rule-management.md +25 -54
  25. package/skills/uipath-admin/references/ip-restriction/enforcement-management.md +19 -31
  26. package/skills/uipath-admin/references/ip-restriction/ip-range-management.md +48 -45
  27. package/skills/uipath-admin/references/ip-restriction/ip-restriction-commands.md +89 -146
  28. package/skills/uipath-admin/references/key-concepts.md +24 -0
  29. package/skills/uipath-admin/references/organization-management.md +49 -70
  30. package/skills/uipath-admin/references/organizations-commands.md +39 -74
  31. package/skills/uipath-admin/references/pat-management.md +25 -38
  32. package/skills/uipath-admin/references/robot-account-management.md +16 -14
  33. package/skills/uipath-admin/references/smtp-management.md +19 -14
  34. package/skills/uipath-admin/references/tenant-management.md +1 -1
  35. package/skills/uipath-admin/references/tenants-commands.md +82 -148
  36. package/skills/uipath-admin/references/user-management.md +70 -56
  37. package/skills/uipath-agents/SKILL.md +4 -3
  38. package/skills/uipath-agents/references/authentication.md +4 -3
  39. package/skills/uipath-agents/references/coded/capabilities/datafabric.md +465 -0
  40. package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails-recommend.md +5 -0
  41. package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails.md +2 -0
  42. package/skills/uipath-agents/references/coded/capabilities/human-in-the-loop.md +12 -6
  43. package/skills/uipath-agents/references/coded/flow-integration.md +2 -2
  44. package/skills/uipath-agents/references/coded/frameworks/langgraph-integration.md +48 -16
  45. package/skills/uipath-agents/references/coded/frameworks/openai-agents-integration.md +1 -1
  46. package/skills/uipath-agents/references/coded/lifecycle/deployment.md +11 -1
  47. package/skills/uipath-agents/references/coded/quickstart.md +11 -8
  48. package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +3 -3
  49. package/skills/uipath-agents/references/lowcode/capabilities/memory/memory.md +19 -2
  50. package/skills/uipath-agents/references/lowcode/evaluations/evaluate.md +2 -2
  51. package/skills/uipath-agents/references/lowcode/evaluations/orchestrator-eval-run.md +409 -155
  52. package/skills/uipath-agents/references/lowcode/evaluations/running-evaluations.md +2 -2
  53. package/skills/uipath-agents/references/lowcode/prompting/autonomous-agent-prompting-guide.md +1 -1
  54. package/skills/uipath-aops/SKILL.md +313 -0
  55. package/skills/uipath-aops/assets/templates/pipeline-dto-template.json +15 -0
  56. package/skills/uipath-aops/references/discovery-flow.md +312 -0
  57. package/skills/uipath-aops/references/migration-guide.md +146 -0
  58. package/skills/uipath-aops/references/pipeline-dto-guide.md +276 -0
  59. package/skills/uipath-aops/references/save-and-run-guide.md +156 -0
  60. package/skills/uipath-api-workflow/SKILL.md +48 -6
  61. package/skills/uipath-api-workflow/assets/templates/file-base64-roundtrip-example.json +154 -0
  62. package/skills/uipath-api-workflow/assets/templates/nested-control-flow-example.json +0 -1
  63. package/skills/uipath-api-workflow/references/cli-reference.md +20 -1
  64. package/skills/uipath-api-workflow/references/expressions-and-context.md +19 -0
  65. package/skills/uipath-api-workflow/references/files-and-base64.md +153 -0
  66. package/skills/uipath-api-workflow/references/operating-published-workflows.md +3 -2
  67. package/skills/uipath-api-workflow/references/task-types.md +89 -3
  68. package/skills/uipath-api-workflow/references/testing-and-evals.md +224 -0
  69. package/skills/uipath-api-workflow/references/troubleshooting.md +124 -4
  70. package/skills/uipath-coded-apps/SKILL.md +4 -2
  71. package/skills/uipath-coded-apps/assets/scripts/dashboards/build-dashboard.mjs +1 -1
  72. package/skills/uipath-coded-apps/references/dashboards/CAPABILITY.md +11 -1
  73. package/skills/uipath-coded-apps/references/dashboards/plugins/build/impl.md +5 -3
  74. package/skills/uipath-coded-apps/references/dashboards/plugins/deploy/impl.md +1 -0
  75. package/skills/uipath-coded-apps/references/oauth-client-setup.md +2 -0
  76. package/skills/uipath-coded-apps/references/pack-publish-deploy.md +18 -0
  77. package/skills/uipath-coded-apps/references/sdk/orchestrator.md +4 -0
  78. package/skills/uipath-connector-builder/SKILL.md +7 -5
  79. package/skills/uipath-connector-builder/references/debugging.md +5 -1
  80. package/skills/uipath-connector-builder/references/element-json.md +3 -1
  81. package/skills/uipath-connector-builder/references/standard-resources.md +37 -6
  82. package/skills/uipath-functions/SKILL.md +134 -222
  83. package/skills/uipath-functions/references/js/authoring-guide.md +141 -0
  84. package/skills/uipath-functions/references/js/bindings-guide.md +120 -0
  85. package/skills/uipath-functions/references/js/calling-uipath-apis-guide.md +112 -0
  86. package/skills/uipath-functions/references/js/coded-app-wiring-guide.md +103 -0
  87. package/skills/uipath-functions/references/js/deployment-guide.md +109 -0
  88. package/skills/uipath-functions/references/js/http-semantics-guide.md +80 -0
  89. package/skills/uipath-functions/references/js/job-mode-guide.md +114 -0
  90. package/skills/uipath-functions/references/js/local-dev-guide.md +107 -0
  91. package/skills/uipath-functions/references/python/workflow-guide.md +224 -0
  92. package/skills/uipath-governance/SKILL.md +9 -8
  93. package/skills/uipath-governance/references/compliance-pack/catalog/impl.md +36 -8
  94. package/skills/uipath-governance/references/compliance-pack/coverage/impl.md +14 -12
  95. package/skills/uipath-governance/references/compliance-pack/disable/impl.md +5 -3
  96. package/skills/uipath-governance/references/compliance-pack/full-apply/impl.md +7 -5
  97. package/skills/uipath-governance/references/compliance-pack/partial-apply/impl.md +14 -7
  98. package/skills/uipath-governance/references/compliance-pack/partial-apply/planning.md +3 -1
  99. package/skills/uipath-governance/references/compliance-pack/preview-gate.md +1 -1
  100. package/skills/uipath-governance/references/compliance-pack/query/impl.md +4 -2
  101. package/skills/uipath-governance/references/diagnose/CAPABILITY.md +12 -12
  102. package/skills/uipath-governance/references/diagnose/{references/failure-modes.md → failure-modes.md} +5 -5
  103. package/skills/uipath-governance/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +2 -2
  104. package/skills/uipath-governance/references/disambiguation-guide.md +15 -7
  105. package/skills/uipath-human-in-the-loop/SKILL.md +107 -9
  106. package/skills/uipath-human-in-the-loop/references/hitl-casetask-action.md +413 -0
  107. package/skills/uipath-insights/SKILL.md +21 -14
  108. package/skills/uipath-insights/references/alerts-reads-guide.md +242 -0
  109. package/skills/uipath-insights/references/filter-discovery-guide.md +1 -1
  110. package/skills/uipath-insights/references/jobs-commands-guide.md +2 -2
  111. package/skills/uipath-ixp/references/cli-reference.md +1 -1
  112. package/skills/uipath-ixp/references/improve-prompts-guide.md +5 -6
  113. package/skills/uipath-maestro-bpmn/SKILL.md +87 -15
  114. package/skills/uipath-maestro-bpmn/references/diagnose/CAPABILITY.md +10 -10
  115. package/skills/uipath-maestro-bpmn/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +1 -1
  116. package/skills/uipath-maestro-bpmn/references/expression-authoring.md +12 -2
  117. package/skills/uipath-maestro-bpmn/references/operate/CAPABILITY.md +12 -12
  118. package/skills/uipath-maestro-bpmn/references/operate/{references/run.md → run.md} +2 -2
  119. package/skills/uipath-maestro-bpmn/references/operate/{references/ship.md → ship.md} +3 -3
  120. package/skills/uipath-maestro-bpmn/references/patterns/ai-decision-review-guide.md +138 -0
  121. package/skills/uipath-maestro-bpmn/references/patterns/approval-chain-guide.md +136 -0
  122. package/skills/uipath-maestro-bpmn/references/patterns/composing-guide.md +113 -0
  123. package/skills/uipath-maestro-bpmn/references/patterns/external-wait-guide.md +145 -0
  124. package/skills/uipath-maestro-bpmn/references/patterns/failure-escalation-guide.md +103 -0
  125. package/skills/uipath-maestro-bpmn/references/patterns/high-volume-batch-guide.md +107 -0
  126. package/skills/uipath-maestro-bpmn/references/patterns/queue-distribution-guide.md +129 -0
  127. package/skills/uipath-maestro-bpmn/references/patterns/smart-triage-guide.md +129 -0
  128. package/skills/uipath-maestro-bpmn/references/registry-workflow.md +15 -0
  129. package/skills/uipath-maestro-bpmn/references/shared/local-metadata-regeneration-guide.md +67 -36
  130. package/skills/uipath-maestro-bpmn/references/shared/project-layout.md +6 -5
  131. package/skills/uipath-maestro-bpmn/references/structural-bpmn.md +23 -5
  132. package/skills/uipath-maestro-bpmn/validator/bpmn-spec.json +101 -53
  133. package/skills/uipath-maestro-case/SKILL.md +23 -24
  134. package/skills/uipath-maestro-case/references/bindings-and-expressions.md +30 -17
  135. package/skills/uipath-maestro-case/references/bindings-v2-sync.md +5 -5
  136. package/skills/uipath-maestro-case/references/brownfield.md +3 -3
  137. package/skills/uipath-maestro-case/references/case-commands.md +8 -4
  138. package/skills/uipath-maestro-case/references/case-editing-operations.md +19 -19
  139. package/skills/uipath-maestro-case/references/case-schema.md +17 -3
  140. package/skills/uipath-maestro-case/references/connector-integration.md +25 -16
  141. package/skills/uipath-maestro-case/references/connector-trigger-impl.md +15 -15
  142. package/skills/uipath-maestro-case/references/connector-trigger-planning.md +32 -29
  143. package/skills/uipath-maestro-case/references/entry-points-sync.md +2 -1
  144. package/skills/uipath-maestro-case/references/evals/evals.json +11 -11
  145. package/skills/uipath-maestro-case/references/implementation.md +74 -44
  146. package/skills/uipath-maestro-case/references/phased-execution.md +23 -21
  147. package/skills/uipath-maestro-case/references/placeholder-tasks.md +28 -23
  148. package/skills/uipath-maestro-case/references/planning.md +37 -252
  149. package/skills/uipath-maestro-case/references/plugins/case/impl-json.md +3 -3
  150. package/skills/uipath-maestro-case/references/plugins/case/planning.md +8 -6
  151. package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/impl-json.md +3 -3
  152. package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/planning.md +11 -10
  153. package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/impl-json.md +6 -6
  154. package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/planning.md +12 -12
  155. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +4 -4
  156. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +10 -9
  157. package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md +5 -5
  158. package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/planning.md +16 -14
  159. package/skills/uipath-maestro-case/references/plugins/logging/impl-json.md +3 -3
  160. package/skills/uipath-maestro-case/references/plugins/sla/impl-json.md +15 -15
  161. package/skills/uipath-maestro-case/references/plugins/sla/planning.md +20 -21
  162. package/skills/uipath-maestro-case/references/plugins/stages/impl-json.md +6 -6
  163. package/skills/uipath-maestro-case/references/plugins/stages/planning.md +9 -9
  164. package/skills/uipath-maestro-case/references/plugins/tasks/action/impl-json.md +9 -9
  165. package/skills/uipath-maestro-case/references/plugins/tasks/action/planning.md +38 -38
  166. package/skills/uipath-maestro-case/references/plugins/tasks/agent/impl-json.md +3 -3
  167. package/skills/uipath-maestro-case/references/plugins/tasks/agent/planning.md +24 -20
  168. package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/impl-json.md +3 -3
  169. package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/planning.md +24 -20
  170. package/skills/uipath-maestro-case/references/plugins/tasks/case-management/impl-json.md +4 -4
  171. package/skills/uipath-maestro-case/references/plugins/tasks/case-management/planning.md +25 -21
  172. package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/impl-json.md +30 -22
  173. package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/planning.md +44 -28
  174. package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/impl-json.md +10 -10
  175. package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/planning.md +27 -23
  176. package/skills/uipath-maestro-case/references/plugins/tasks/create-inline-common.md +3 -3
  177. package/skills/uipath-maestro-case/references/plugins/tasks/process/impl-json.md +3 -3
  178. package/skills/uipath-maestro-case/references/plugins/tasks/process/planning.md +25 -22
  179. package/skills/uipath-maestro-case/references/plugins/tasks/rpa/impl-json.md +3 -3
  180. package/skills/uipath-maestro-case/references/plugins/tasks/rpa/planning.md +25 -21
  181. package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/impl-json.md +4 -4
  182. package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/planning.md +5 -4
  183. package/skills/uipath-maestro-case/references/plugins/triggers/event/impl-json.md +9 -9
  184. package/skills/uipath-maestro-case/references/plugins/triggers/event/planning.md +30 -19
  185. package/skills/uipath-maestro-case/references/plugins/triggers/manual/impl-json.md +4 -4
  186. package/skills/uipath-maestro-case/references/plugins/triggers/manual/planning.md +8 -7
  187. package/skills/uipath-maestro-case/references/plugins/triggers/timer/impl-json.md +3 -3
  188. package/skills/uipath-maestro-case/references/plugins/triggers/timer/planning.md +5 -4
  189. package/skills/uipath-maestro-case/references/plugins/variables/bindings/impl-json.md +5 -5
  190. package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +7 -7
  191. package/skills/uipath-maestro-case/references/plugins/variables/global-vars/planning.md +21 -17
  192. package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +29 -21
  193. package/skills/uipath-maestro-case/references/plugins/variables/io-binding/planning.md +23 -21
  194. package/skills/uipath-maestro-case/references/registry-discovery.md +5 -5
  195. package/skills/uipath-maestro-flow/.maintenance/README.md +35 -28
  196. package/skills/uipath-maestro-flow/.maintenance/check-anchors.sh +19 -1
  197. package/skills/uipath-maestro-flow/.maintenance/check-links.sh +3 -0
  198. package/skills/uipath-maestro-flow/.maintenance/check-plugin-pairs.sh +2 -2
  199. package/skills/uipath-maestro-flow/SKILL.md +66 -76
  200. package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +75 -72
  201. package/skills/uipath-maestro-flow/references/author/brownfield.md +90 -0
  202. package/skills/uipath-maestro-flow/references/author/{references/editing-operations-cli.md → editing-operations-cli.md} +9 -4
  203. package/skills/uipath-maestro-flow/references/author/editing-operations-json.md +373 -0
  204. package/skills/uipath-maestro-flow/references/author/editing-operations.md +103 -0
  205. package/skills/uipath-maestro-flow/references/author/{references/greenfield.md → greenfield.md} +32 -20
  206. package/skills/uipath-maestro-flow/references/author/planning-arch.md +342 -0
  207. package/skills/uipath-maestro-flow/references/author/planning-impl.md +283 -0
  208. package/skills/uipath-maestro-flow/references/author/plugins/agent/impl.md +227 -0
  209. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agent/planning.md +2 -2
  210. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agentic-process/impl.md +2 -2
  211. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agentic-process/planning.md +1 -1
  212. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/api-workflow/impl.md +2 -2
  213. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/api-workflow/planning.md +1 -1
  214. package/skills/uipath-maestro-flow/references/author/plugins/batch-transform/impl.md +171 -0
  215. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/batch-transform/planning.md +1 -1
  216. package/skills/uipath-maestro-flow/references/author/plugins/connector/impl.md +449 -0
  217. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector/planning.md +3 -3
  218. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector-trigger/impl.md +20 -18
  219. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector-trigger/planning.md +2 -2
  220. package/skills/uipath-maestro-flow/references/author/plugins/data-fabric/impl.md +427 -0
  221. package/skills/uipath-maestro-flow/references/author/plugins/data-fabric/planning.md +185 -0
  222. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/decision/impl.md +5 -0
  223. package/skills/uipath-maestro-flow/references/author/plugins/delay/impl.md +38 -0
  224. package/skills/uipath-maestro-flow/references/author/plugins/end/impl.md +56 -0
  225. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/flow/impl.md +2 -2
  226. package/skills/uipath-maestro-flow/references/author/plugins/hitl/impl.md +178 -0
  227. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/hitl/planning.md +14 -1
  228. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/http/impl-connector.md +4 -4
  229. package/skills/uipath-maestro-flow/references/author/plugins/http/impl-manual.md +68 -0
  230. package/skills/uipath-maestro-flow/references/author/plugins/http/impl.md +173 -0
  231. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/http/planning.md +3 -3
  232. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-agent/impl.md +6 -6
  233. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-agent/planning.md +1 -1
  234. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-voice-agent/impl.md +4 -4
  235. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-voice-agent/planning.md +1 -1
  236. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/ixp/impl.md +8 -8
  237. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/loop/impl.md +1 -1
  238. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/loop/planning.md +1 -1
  239. package/skills/uipath-maestro-flow/references/author/plugins/merge/impl.md +43 -0
  240. package/skills/uipath-maestro-flow/references/author/plugins/merge/planning.md +24 -0
  241. package/skills/uipath-maestro-flow/references/author/plugins/rpa/impl.md +117 -0
  242. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/rpa/planning.md +1 -1
  243. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/scheduled-trigger/impl.md +6 -8
  244. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/script/impl.md +5 -5
  245. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/script/planning.md +1 -1
  246. package/skills/uipath-maestro-flow/references/author/plugins/subflow/impl.md +164 -0
  247. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/subflow/planning.md +1 -1
  248. package/skills/uipath-maestro-flow/references/author/plugins/summarize/impl.md +189 -0
  249. package/skills/uipath-maestro-flow/references/author/plugins/summarize/planning.md +66 -0
  250. package/skills/uipath-maestro-flow/references/author/plugins/switch/planning.md +34 -0
  251. package/skills/uipath-maestro-flow/references/author/plugins/terminate/impl.md +48 -0
  252. package/skills/uipath-maestro-flow/references/author/plugins/transform/impl.md +241 -0
  253. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/transform/planning.md +1 -1
  254. package/skills/uipath-maestro-flow/references/diagnose/CAPABILITY.md +39 -37
  255. package/skills/uipath-maestro-flow/references/diagnose/{references/failure-modes.md → failure-modes.md} +22 -22
  256. package/skills/uipath-maestro-flow/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +60 -1
  257. package/skills/uipath-maestro-flow/references/evaluate/CAPABILITY.md +27 -25
  258. package/skills/uipath-maestro-flow/references/evaluate/{references/commands-reference.md → commands-reference.md} +58 -7
  259. package/skills/uipath-maestro-flow/references/evaluate/eval-sets-guide.md +227 -0
  260. package/skills/uipath-maestro-flow/references/evaluate/upload-safety.md +94 -0
  261. package/skills/uipath-maestro-flow/references/operate/CAPABILITY.md +21 -21
  262. package/skills/uipath-maestro-flow/references/operate/{references/manage.md → manage.md} +4 -4
  263. package/skills/uipath-maestro-flow/references/operate/run.md +121 -0
  264. package/skills/uipath-maestro-flow/references/operate/{references/ship.md → ship.md} +5 -5
  265. package/skills/uipath-maestro-flow/references/shared/action-nodes.md +30 -22
  266. package/skills/uipath-maestro-flow/references/shared/cli-commands.md +76 -184
  267. package/skills/uipath-maestro-flow/references/shared/cli-conventions.md +49 -60
  268. package/skills/uipath-maestro-flow/references/shared/file-format.md +32 -11
  269. package/skills/uipath-maestro-flow/references/shared/node-output-wiring.md +49 -104
  270. package/skills/uipath-maestro-flow/references/shared/ux-narration-and-todos.md +66 -103
  271. package/skills/uipath-maestro-flow/references/shared/variables-and-expressions.md +4 -4
  272. package/skills/uipath-planner/SKILL.md +1 -1
  273. package/skills/uipath-planner/assets/templates/case/case-sdd-template.md +5 -3
  274. package/skills/uipath-planner/references/case/case-design-lane-guide.md +1 -1
  275. package/skills/uipath-planner/references/case/case-design-layers-guide.md +2 -2
  276. package/skills/uipath-planner/references/non-pdd-lane-guide.md +2 -1
  277. package/skills/uipath-planner/references/pdd-driven-lane-guide.md +3 -2
  278. package/skills/uipath-planner/references/sdd-generation-guide.md +1 -0
  279. package/skills/uipath-planner/scripts/case/audit_sdd.py +77 -1
  280. package/skills/uipath-platform/SKILL.md +6 -4
  281. package/skills/uipath-platform/references/integration-service/activities.md +7 -4
  282. package/skills/uipath-platform/references/integration-service/reference-resolution.md +28 -0
  283. package/skills/uipath-platform/references/integration-service/resources.md +11 -0
  284. package/skills/uipath-platform/references/integration-service/triggers.md +2 -2
  285. package/skills/uipath-platform/references/licensing/diagnose/CAPABILITY.md +80 -0
  286. package/skills/uipath-platform/references/licensing/diagnose/references/failure-modes.md +147 -0
  287. package/skills/uipath-platform/references/licensing/diagnose/references/troubleshooting-guide.md +125 -0
  288. package/skills/uipath-platform/references/licensing/licensing.md +3 -0
  289. package/skills/uipath-platform/references/licensing/user-licenses-allocations.md +5 -0
  290. package/skills/uipath-platform/references/orchestrator/run-jobs.md +11 -2
  291. package/skills/uipath-platform/references/traces/feedback.md +4 -4
  292. package/skills/uipath-platform/references/traces/traces.md +1 -1
  293. package/skills/uipath-process-mining/SKILL.md +6 -6
  294. package/skills/uipath-process-mining/references/lifecycle-and-rbac.md +10 -8
  295. package/skills/uipath-process-mining/references/model-editing.md +1 -1
  296. package/skills/uipath-process-mining/references/querying.md +4 -3
  297. package/skills/uipath-review/SKILL.md +171 -541
  298. package/skills/uipath-review/references/agents/agents-lowcode-rules.md +73 -92
  299. package/skills/uipath-review/references/agents/guardrails/coded-guardrails-review.md +4 -0
  300. package/skills/uipath-review/references/agents/guardrails/guardrails-review.md +73 -180
  301. package/skills/uipath-review/references/architecture-assessment-guide.md +93 -105
  302. package/skills/uipath-review/references/review-workflow-guide.md +1 -1
  303. package/skills/uipath-review/references/rpa/modern-studio-issues.md +44 -44
  304. package/skills/uipath-review/references/rpa/rpa-common-issues.md +251 -321
  305. package/skills/uipath-review/references/rpa/rpa-review-checklist.md +1 -1
  306. package/skills/uipath-review/references/rule-catalog-workflow.md +25 -45
  307. package/skills/uipath-review/references/rule-format.md +21 -21
  308. package/skills/uipath-rpa/.maintenance/pattern-card-maintenance.md +1 -1
  309. package/skills/uipath-rpa/CLAUDE.md +4 -5
  310. package/skills/uipath-rpa/SKILL.md +40 -246
  311. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/FindText.md +2 -10
  312. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetColorAtPosition.md +2 -10
  313. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetCursorPosition.md +2 -10
  314. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetField.md +13 -13
  315. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetFieldAtPosition.md +2 -10
  316. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetScreenArea.md +27 -8
  317. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetText.md +2 -14
  318. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetTextAtPosition.md +2 -10
  319. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/MoveCursor.md +3 -11
  320. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/MoveCursorToText.md +2 -10
  321. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendControlKey.md +2 -8
  322. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendKeys.md +2 -10
  323. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendKeysSecure.md +2 -10
  324. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SetField.md +14 -13
  325. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SetFieldAtPosition.md +4 -7
  326. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession/_common-options.md +29 -0
  327. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession/authoring-paths.md +58 -0
  328. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession.md +197 -11
  329. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitFieldText.md +2 -10
  330. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitScreenReady.md +9 -10
  331. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitScreenText.md +2 -14
  332. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitTextAtPosition.md +2 -10
  333. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities.json +271 -0
  334. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/coded/coded-api.md +61 -3
  335. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/overview.md +76 -0
  336. package/skills/uipath-rpa/references/cli-reference.md +63 -29
  337. package/skills/uipath-rpa/references/coded/codedworkflow-reference.md +59 -1
  338. package/skills/uipath-rpa/references/coded/operations-guide.md +2 -1
  339. package/skills/uipath-rpa/references/debugging.md +29 -12
  340. package/skills/uipath-rpa/references/environment-setup.md +54 -1
  341. package/skills/uipath-rpa/references/execution-maps-guide.md +10 -9
  342. package/skills/uipath-rpa/references/legacy/activity-docs/_INVOKE-CODE.md +1 -1
  343. package/skills/uipath-rpa/references/uia-starter-guide.md +46 -8
  344. package/skills/uipath-rpa/references/xaml/common-pitfalls.md +3 -4
  345. package/skills/uipath-rpa/references/xaml/csharp-activity-binding-guide.md +7 -8
  346. package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +132 -42
  347. package/skills/uipath-solution/SKILL.md +9 -6
  348. package/skills/uipath-solution/references/activate-and-manage.md +11 -6
  349. package/skills/uipath-solution/references/develop-solution.md +39 -28
  350. package/skills/uipath-solution/references/pack-and-deploy.md +49 -1
  351. package/skills/uipath-solution/references/scenarios/failure-modes.md +1 -1
  352. package/skills/uipath-solution/references/scenarios/intra-solution-references.md +3 -3
  353. package/skills/uipath-solution/references/scenarios/manual-edits.md +1 -1
  354. package/skills/uipath-solution/references/scenarios.md +2 -2
  355. package/skills/uipath-solution/references/solution-overview.md +15 -6
  356. package/skills/uipath-tasks/SKILL.md +11 -6
  357. package/skills/uipath-tasks/references/task-assignment.md +5 -0
  358. package/skills/uipath-tasks/references/task-catalogs.md +7 -4
  359. package/skills/uipath-tasks/references/task-completion.md +3 -1
  360. package/skills/uipath-tasks/references/task-data.md +3 -3
  361. package/skills/uipath-tasks/references/task-lifecycle.md +11 -0
  362. package/skills/uipath-tasks/references/task-metadata.md +4 -3
  363. package/skills/uipath-test/SKILL.md +13 -28
  364. package/skills/uipath-test/references/failure-triage-guide.md +90 -0
  365. package/skills/uipath-test/references/playwright-first-mile-guide.md +2 -2
  366. package/skills/uipath-test/references/publish-and-link-guide.md +0 -1
  367. package/skills/uipath-test/references/test-result-report-guide.md +1 -2
  368. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/interpretations/healing-agent-data.md +1 -1
  369. package/skills/uipath-troubleshoot/references/presenting.md +1 -1
  370. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/folder-not-accessible.md +1 -1
  371. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/generic-error-400.md +4 -4
  372. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/integration-service-400.md +2 -2
  373. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/job-operation-timeout.md +1 -1
  374. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/no-suitable-runtime-machine.md +1 -1
  375. package/version-manifest.json +2 -2
  376. package/skills/uipath-maestro-case/scripts/audit_plan.py +0 -231
  377. package/skills/uipath-maestro-flow/references/author/references/brownfield.md +0 -93
  378. package/skills/uipath-maestro-flow/references/author/references/editing-operations-json.md +0 -545
  379. package/skills/uipath-maestro-flow/references/author/references/editing-operations.md +0 -131
  380. package/skills/uipath-maestro-flow/references/author/references/planning-arch.md +0 -638
  381. package/skills/uipath-maestro-flow/references/author/references/planning-impl.md +0 -306
  382. package/skills/uipath-maestro-flow/references/author/references/plugins/agent/impl.md +0 -229
  383. package/skills/uipath-maestro-flow/references/author/references/plugins/batch-transform/impl.md +0 -174
  384. package/skills/uipath-maestro-flow/references/author/references/plugins/connector/impl.md +0 -741
  385. package/skills/uipath-maestro-flow/references/author/references/plugins/delay/impl.md +0 -75
  386. package/skills/uipath-maestro-flow/references/author/references/plugins/end/impl.md +0 -65
  387. package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/impl.md +0 -204
  388. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-manual.md +0 -65
  389. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl.md +0 -201
  390. package/skills/uipath-maestro-flow/references/author/references/plugins/merge/impl.md +0 -43
  391. package/skills/uipath-maestro-flow/references/author/references/plugins/merge/planning.md +0 -29
  392. package/skills/uipath-maestro-flow/references/author/references/plugins/rpa/impl.md +0 -121
  393. package/skills/uipath-maestro-flow/references/author/references/plugins/subflow/impl.md +0 -230
  394. package/skills/uipath-maestro-flow/references/author/references/plugins/summarize/impl.md +0 -198
  395. package/skills/uipath-maestro-flow/references/author/references/plugins/summarize/planning.md +0 -71
  396. package/skills/uipath-maestro-flow/references/author/references/plugins/switch/planning.md +0 -38
  397. package/skills/uipath-maestro-flow/references/author/references/plugins/terminate/impl.md +0 -48
  398. package/skills/uipath-maestro-flow/references/author/references/plugins/transform/impl.md +0 -287
  399. package/skills/uipath-maestro-flow/references/evaluate/references/eval-sets-guide.md +0 -226
  400. package/skills/uipath-maestro-flow/references/evaluate/references/upload-safety.md +0 -82
  401. package/skills/uipath-maestro-flow/references/operate/references/run.md +0 -99
  402. /package/skills/uipath-maestro-bpmn/references/diagnose/{references/failure-modes.md → failure-modes.md} +0 -0
  403. /package/skills/uipath-maestro-bpmn/references/operate/{references/manage.md → manage.md} +0 -0
  404. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/decision/planning.md +0 -0
  405. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/delay/planning.md +0 -0
  406. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/end/planning.md +0 -0
  407. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/flow/planning.md +0 -0
  408. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/ixp/planning.md +0 -0
  409. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/queue/impl.md +0 -0
  410. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/queue/planning.md +0 -0
  411. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/scheduled-trigger/planning.md +0 -0
  412. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/switch/impl.md +0 -0
  413. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/terminate/planning.md +0 -0
  414. /package/skills/uipath-maestro-flow/references/evaluate/{references/evaluators-guide.md → evaluators-guide.md} +0 -0
  415. /package/skills/uipath-maestro-flow/references/evaluate/{references/running-guide.md → running-guide.md} +0 -0
@@ -0,0 +1,465 @@
1
+ # Data Fabric Integration for Coded Agents
2
+
3
+ How to query and manage UiPath Data Fabric entities from coded agents. Two integration paths exist — choose based on the use case.
4
+
5
+ ## Step 1: Discover Available Entities
6
+
7
+ Before choosing a path, discover what entities exist. Start with folder-scoped listing — most entities live in a specific folder (commonly `Shared`):
8
+
9
+ ```bash
10
+ # List entities in the default Shared folder
11
+ uip df entities list --folder-path "Shared" --output table
12
+
13
+ # If the user specifies a different folder
14
+ uip df entities list --folder-path "<FolderName>" --output table
15
+
16
+ # Get full details for a specific entity (fields, types, IDs)
17
+ uip df entities get --name "<EntityName>" --folder-path "Shared"
18
+ ```
19
+
20
+ Only fall back to `--include-folders` if the entity isn't found in the expected folder:
21
+
22
+ ```bash
23
+ # Search across all folders (can return many results)
24
+ uip df entities list --include-folders --output table
25
+ ```
26
+
27
+ Each entity in the output has:
28
+ - **`Id`** (UUID) — the entity identifier needed for `DataFabricEntityItem`
29
+ - **`Name`** — the entity name used in SDK calls (`entity_key`)
30
+ - **`FolderId`** (UUID) — the folder key needed for `DataFabricEntityItem`
31
+ - **`Fields`** — column names, types, and relationships
32
+
33
+ **Recommend an entity to the user** based on their use case. For example, if they ask about "customer orders," look for entities with names like `Orders`, `SalesOrder`, or similar. Show them the matching entities and their fields before proceeding.
34
+
35
+ ## Step 2: Choose the Integration Path
36
+
37
+ | Path | Best for | Trade-off |
38
+ |------|----------|-----------|
39
+ | **SDK direct** (`sdk.entities`) | The query shape is known at build time — same filter, same fields every time | Reliable, no LLM cost, but you code every query |
40
+ | **`create_datafabric_tool`** | Users ask freeform questions the agent can't anticipate | Flexible, but adds an inner LLM call for SQL generation |
41
+
42
+ **Rule of thumb:** If the user describes a fixed operation (e.g. "look up orders by customer name"), use the SDK. If they say "users can ask anything" or "I can't predict the questions," use `create_datafabric_tool`.
43
+
44
+ **CRITICAL: For freeform/unpredictable queries, always use `create_datafabric_tool` from `uipath_langchain.agent.tools`.** Do NOT build a custom NL-to-SQL solution, do NOT use internal functions like `create_datafabric_query_tool`, and do NOT wrap raw SDK calls to handle freeform questions. The `create_datafabric_tool` factory handles schema resolution, SQL generation, error correction, and caching — reimplementing this is fragile and unsupported.
45
+
46
+ Both paths can coexist in a single agent — use SDK for known operations and `create_datafabric_tool` for open-ended exploration.
47
+
48
+ ---
49
+
50
+ ## Path 1: SDK Direct Access (`sdk.entities`)
51
+
52
+ Use the Python SDK's `EntitiesService` for deterministic CRUD operations. No LLM intermediary — the agent code specifies exactly what to fetch or write.
53
+
54
+ **Fixed-shape does not mean inline.** Even when the query is always the same, expose each SDK call as a `@tool`-decorated function and hand it to the agent (see § Wiring into a LangGraph Agent). Do NOT call `sdk.entities.*` directly inside a plain graph node — a tool keeps the SDK call bindable, testable, and invocable by the agent.
55
+
56
+ ### Setup
57
+
58
+ ```python
59
+ from uipath.platform import UiPath
60
+
61
+ # CRITICAL: Never instantiate at module level — always inside a function/node.
62
+ # Module-level UiPath() fails during `uip codedagent init` introspection.
63
+ sdk = UiPath()
64
+ ```
65
+
66
+ ### Reading Records
67
+
68
+ `list_records` supports pagination only — it has NO `filter`/`select`/`orderby` parameters. To filter, sort, or project, use `retrieve_records` (see Structured Query with Filters below).
69
+
70
+ ```python
71
+ # List with pagination
72
+ records = await sdk.entities.list_records_async(
73
+ entity_key="Orders",
74
+ start=0,
75
+ limit=50,
76
+ )
77
+
78
+ # Single record by ID
79
+ record = await sdk.entities.get_record_async(
80
+ entity_key="Orders",
81
+ record_id="abc-123",
82
+ )
83
+ ```
84
+
85
+ ### Structured Query with Filters
86
+
87
+ For complex filters, aggregations, and joins — use `retrieve_records` with typed filter objects:
88
+
89
+ ```python
90
+ from uipath.platform.entities import (
91
+ EntityQueryFilter,
92
+ EntityQueryFilterGroup,
93
+ EntityQuerySortOption,
94
+ EntityAggregate,
95
+ EntityAggregateFunction,
96
+ LogicalOperator,
97
+ QueryFilterOperator,
98
+ )
99
+
100
+ filter_group = EntityQueryFilterGroup(
101
+ logical_operator=LogicalOperator.And,
102
+ query_filters=[
103
+ EntityQueryFilter(
104
+ field_name="Status",
105
+ operator=QueryFilterOperator.Equals,
106
+ value="Open",
107
+ ),
108
+ EntityQueryFilter(
109
+ field_name="Total",
110
+ operator=QueryFilterOperator.GreaterThan,
111
+ value="1000",
112
+ ),
113
+ ],
114
+ )
115
+
116
+ result = await sdk.entities.retrieve_records_async(
117
+ entity_key="Orders",
118
+ filter_group=filter_group,
119
+ sort_options=[EntityQuerySortOption(field_name="Total", is_descending=True)],
120
+ selected_fields=["OrderId", "CustomerName", "Total"],
121
+ limit=20,
122
+ )
123
+
124
+ for record in result.items:
125
+ print(record.id, record.model_extra)
126
+ ```
127
+
128
+ ### Aggregation
129
+
130
+ ```python
131
+ result = await sdk.entities.retrieve_records_async(
132
+ entity_key="Orders",
133
+ aggregates=[
134
+ EntityAggregate(
135
+ function=EntityAggregateFunction.Sum,
136
+ field="Total",
137
+ alias="total_revenue",
138
+ ),
139
+ EntityAggregate(
140
+ function=EntityAggregateFunction.Count,
141
+ field="Id",
142
+ alias="order_count",
143
+ ),
144
+ ],
145
+ group_by=["Status"],
146
+ )
147
+ ```
148
+
149
+ ### Writing Records
150
+
151
+ ```python
152
+ # Single insert (fires triggers)
153
+ record = await sdk.entities.insert_record_async(
154
+ entity_key="Orders",
155
+ data={"CustomerName": "Acme Corp", "Total": 5000, "Status": "Open"},
156
+ )
157
+
158
+ # Single update (fires triggers)
159
+ updated = await sdk.entities.update_record_async(
160
+ entity_key="Orders",
161
+ record_id=record.id,
162
+ data={"Status": "Closed"},
163
+ )
164
+
165
+ # Single delete (fires triggers)
166
+ await sdk.entities.delete_record_async(entity_key="Orders", record_id=record.id)
167
+
168
+ # Batch insert (does NOT fire triggers)
169
+ batch_result = await sdk.entities.insert_records_async(
170
+ entity_key="Orders",
171
+ records=[
172
+ {"CustomerName": "Acme", "Total": 5000},
173
+ {"CustomerName": "Globex", "Total": 3000},
174
+ ],
175
+ )
176
+ # Check batch_result.failure_records for errors
177
+ ```
178
+
179
+ ### File Attachments
180
+
181
+ ```python
182
+ # Upload
183
+ await sdk.entities.upload_attachment(
184
+ entity_id="<entity-uuid>",
185
+ record_id="<record-uuid>",
186
+ field_name="Invoice",
187
+ file_path="/path/to/invoice.pdf",
188
+ )
189
+
190
+ # Download
191
+ content: bytes = await sdk.entities.download_attachment_async(
192
+ entity_id="<entity-uuid>",
193
+ record_id="<record-uuid>",
194
+ field_name="Invoice",
195
+ )
196
+ ```
197
+
198
+ ### Wiring into a LangGraph Agent
199
+
200
+ Wrap every SDK call as a LangChain `@tool` so the agent can invoke it. This applies to fixed-shape queries too — the deterministic query lives inside the tool body; the agent decides when to call it. Never place `sdk.entities.*` calls in a plain graph node.
201
+
202
+ ```python
203
+ from langchain_core.tools import tool
204
+ from uipath.platform import UiPath
205
+ from uipath.platform.entities import (
206
+ EntityQueryFilter,
207
+ EntityQueryFilterGroup,
208
+ LogicalOperator,
209
+ QueryFilterOperator,
210
+ )
211
+
212
+
213
+ @tool
214
+ async def get_open_orders(customer_name: str) -> str:
215
+ """Get all open orders for a specific customer.
216
+
217
+ Args:
218
+ customer_name: The customer name to look up.
219
+ """
220
+ sdk = UiPath()
221
+ result = await sdk.entities.retrieve_records_async(
222
+ entity_key="Orders",
223
+ filter_group=EntityQueryFilterGroup(
224
+ logical_operator=LogicalOperator.And,
225
+ query_filters=[
226
+ EntityQueryFilter(
227
+ field_name="CustomerName",
228
+ operator=QueryFilterOperator.Equals,
229
+ value=customer_name,
230
+ ),
231
+ EntityQueryFilter(
232
+ field_name="Status",
233
+ operator=QueryFilterOperator.Equals,
234
+ value="Open",
235
+ ),
236
+ ],
237
+ ),
238
+ selected_fields=["OrderId", "Total", "CreatedTime"],
239
+ limit=50,
240
+ )
241
+ if not result.items:
242
+ return f"No open orders found for {customer_name}."
243
+ lines = [f"- {r.model_extra['OrderId']}: ${r.model_extra['Total']}" for r in result.items]
244
+ return f"Open orders for {customer_name}:\n" + "\n".join(lines)
245
+
246
+
247
+ @tool
248
+ async def close_order(order_id: str) -> str:
249
+ """Mark an order as closed.
250
+
251
+ Args:
252
+ order_id: The record ID of the order to close.
253
+ """
254
+ sdk = UiPath()
255
+ await sdk.entities.update_record_async(
256
+ entity_key="Orders",
257
+ record_id=order_id,
258
+ data={"Status": "Closed"},
259
+ )
260
+ return f"Order {order_id} closed."
261
+ ```
262
+
263
+ Then add to your agent graph:
264
+
265
+ ```python
266
+ from langchain_core.messages import SystemMessage
267
+ from uipath_langchain.agent.react.agent import create_agent
268
+ from uipath_langchain.chat import UiPathChat
269
+
270
+ def _make_llm():
271
+ """Lazy LLM factory — never call at module level."""
272
+ return UiPathChat(model="gpt-4.1-mini-2025-04-14")
273
+
274
+ graph = create_agent(_make_llm(), tools=[get_open_orders, close_order], messages=[SystemMessage("...")])
275
+ ```
276
+
277
+ ---
278
+
279
+ ## Path 2: DataFabric Tool (`create_datafabric_tool`)
280
+
281
+ Use `create_datafabric_tool` when end-users ask freeform questions that the agent can't anticipate at build time. This is the **only supported way** to add NL-to-SQL querying to a coded agent. The tool runs an inner LLM sub-graph that translates natural language to SQL, executes it against Data Fabric, and returns results.
282
+
283
+ ### Required Import
284
+
285
+ ```python
286
+ # This is the ONLY correct import. Do NOT use create_datafabric_query_tool
287
+ # or any other function from internal submodules.
288
+ from uipath_langchain.agent.tools import create_datafabric_tool
289
+ ```
290
+
291
+ ### Setup
292
+
293
+ Use the entity ID, name, and folder key from Step 1 discovery.
294
+
295
+ ### Usage
296
+
297
+ ```python
298
+ from langchain_core.messages import SystemMessage
299
+ from uipath.platform.entities import DataFabricEntityItem
300
+ from uipath_langchain.agent.react.agent import create_agent
301
+ from uipath_langchain.agent.tools import create_datafabric_tool
302
+ from uipath_langchain.chat import UiPathChat
303
+
304
+
305
+ def _make_llm():
306
+ """Lazy LLM factory — never call at module level."""
307
+ return UiPathChat(model="gpt-4.1-mini-2025-04-14")
308
+
309
+
310
+ system_prompt = "Answer questions using only the configured Data Fabric entities."
311
+
312
+ llm = _make_llm()
313
+ datafabric_tool = create_datafabric_tool(
314
+ llm=llm,
315
+ name="query_orders",
316
+ description="Query order and customer data from Data Fabric.",
317
+ base_system_prompt=system_prompt,
318
+ entities=[
319
+ DataFabricEntityItem(
320
+ id="1312e893-8295-f111-9b33-0022482a9eea",
321
+ name="Orders",
322
+ folder_key="379fec63-62b1-41ec-b2fc-718f8f7dda3c",
323
+ ),
324
+ DataFabricEntityItem(
325
+ id="a1b2c3d4-5678-90ab-cdef-1234567890ab",
326
+ name="Customers",
327
+ folder_key="379fec63-62b1-41ec-b2fc-718f8f7dda3c",
328
+ ),
329
+ ],
330
+ )
331
+
332
+ graph = create_agent(llm, tools=[datafabric_tool], messages=[SystemMessage(system_prompt)])
333
+ ```
334
+
335
+ ### Key Design Constraint
336
+
337
+ **The same instruction string must reach both levels: pass it as `messages=[SystemMessage(...)]` to `create_agent` and as `base_system_prompt` to `create_datafabric_tool`.** The tool forwards it to the inner SQL-generation sub-graph so the agent's instructions apply consistently at both levels.
338
+
339
+ ### How It Works Internally
340
+
341
+ 1. Agent receives a freeform user question
342
+ 2. Agent calls the `datafabric_tool` with a `user_query` string
343
+ 3. Inner LLM sub-graph resolves entity schemas (lazy, cached after first call)
344
+ 4. Inner LLM generates a SQL SELECT against the entity schemas
345
+ 5. SQL executes against Data Fabric; errors loop back to the LLM for self-correction
346
+ 6. Results return to the outer agent as text
347
+
348
+ ### `create_datafabric_tool` Signature
349
+
350
+ ```python
351
+ def create_datafabric_tool(
352
+ *,
353
+ llm: BaseChatModel, # LLM for the inner SQL generation loop
354
+ name: str, # Tool name exposed to the outer agent
355
+ description: str, # Tool description for agent tool selection
356
+ entities: Sequence[DataFabricEntityItem], # Entities available to query
357
+ base_system_prompt: str, # Forwarded to inner sub-graph
358
+ ) -> BaseTool
359
+ ```
360
+
361
+ ### `DataFabricEntityItem` Fields
362
+
363
+ | Field | Type | Required | Source |
364
+ |-------|------|----------|--------|
365
+ | `id` | `str` (UUID) | Yes | `uip df entities list` |
366
+ | `name` | `str` | Yes | Entity display name |
367
+ | `folder_key` | `str` (UUID) | Yes | `uip df entities list` or Orchestrator folder ID. Tenant-level entities: pass the discovered all-zeros `FolderId` (`00000000-0000-0000-0000-000000000000`) as-is |
368
+ | `entity_key` | `str` | No | Technical entity identifier |
369
+ | `description` | `str` | No | Helps the LLM understand the entity's purpose |
370
+
371
+ ---
372
+
373
+ ## Combining Both Paths
374
+
375
+ A single agent can use both paths. Use SDK tools for known operations and the DataFabric tool for open-ended exploration:
376
+
377
+ ```python
378
+ from langchain_core.messages import SystemMessage
379
+ from langchain_core.tools import tool
380
+ from uipath.platform import UiPath
381
+ from uipath.platform.entities import DataFabricEntityItem
382
+ from uipath_langchain.agent.react.agent import create_agent
383
+ from uipath_langchain.agent.tools import create_datafabric_tool
384
+ from uipath_langchain.chat import UiPathChat
385
+
386
+
387
+ # Deterministic tool — known query shape
388
+ @tool
389
+ async def close_order(order_id: str) -> str:
390
+ """Mark an order as closed. Use when the user asks to close a specific order.
391
+
392
+ Args:
393
+ order_id: The record ID of the order.
394
+ """
395
+ sdk = UiPath()
396
+ await sdk.entities.update_record_async(
397
+ entity_key="Orders", record_id=order_id, data={"Status": "Closed"}
398
+ )
399
+ return f"Order {order_id} closed."
400
+
401
+
402
+ def _make_llm():
403
+ """Lazy LLM factory — never call at module level."""
404
+ return UiPathChat(model="gpt-4.1-mini-2025-04-14")
405
+
406
+
407
+ system_prompt = (
408
+ "You are an order management assistant. "
409
+ "Use query_orders for data questions. Use close_order to close orders."
410
+ )
411
+
412
+ llm = _make_llm()
413
+ # NL-to-SQL tool — freeform queries
414
+ query_tool = create_datafabric_tool(
415
+ llm=llm,
416
+ name="query_orders",
417
+ description="Query order and customer data using natural language.",
418
+ base_system_prompt=system_prompt,
419
+ entities=[
420
+ DataFabricEntityItem(
421
+ id="1312e893-8295-f111-9b33-0022482a9eea",
422
+ name="Orders",
423
+ folder_key="379fec63-62b1-41ec-b2fc-718f8f7dda3c",
424
+ ),
425
+ ],
426
+ )
427
+
428
+ graph = create_agent(llm, tools=[query_tool, close_order], messages=[SystemMessage(system_prompt)])
429
+ ```
430
+
431
+ ---
432
+
433
+ ## Gotchas
434
+
435
+ 1. **Never instantiate `UiPath()` or `UiPathChat()` at module level** — they read auth credentials at construction time. `uip codedagent init` imports your module to introspect it, and module-level construction will fail. Wrap in a lazy factory function.
436
+
437
+ 2. **For freeform queries, use `create_datafabric_tool` — not a custom solution.** Import it from `uipath_langchain.agent.tools`. Do NOT use `create_datafabric_query_tool` or any other internal function — those are implementation details and may change without notice.
438
+
439
+ 3. **SDK-direct calls are always `@tool`-wrapped — even fixed-shape ones.** "Same query every time" describes the tool's body, not a reason to skip the tool. An `sdk.entities.*` call inline in a graph node is not invocable by the agent and is the most common shape mistake on this path.
440
+
441
+ 4. **Single vs. batch trigger behavior** — `insert_record` / `update_record` / `delete_record` fire entity triggers. Batch variants (`insert_records`, `update_records`, `delete_records`) do **not**.
442
+
443
+ 5. **SQL query constraints** — `query_entity_records` only accepts SELECT statements. Queries without WHERE must include LIMIT. Subqueries, UNION, WITH, and DML/DDL are forbidden.
444
+
445
+ 6. **Entity schemas resolve lazily** in `create_datafabric_tool` — the first invocation fetches schemas from Data Fabric and caches them. Subsequent calls reuse the cache.
446
+
447
+ 7. **Reserved field names** — `Id`, `CreatedBy`, `CreateTime`, `UpdatedBy`, `UpdateTime` are system fields and cannot be used as user field names.
448
+
449
+ ## Comparison with Low-Code DataFabric Context
450
+
451
+ Low-code agents use `contextType: "datafabricentityset"` in `resource.json` — see [../../lowcode/capabilities/context/datafabric.md](../../lowcode/capabilities/context/datafabric.md). The coded agent paths above are the programmatic equivalent. The key differences:
452
+
453
+ | | Low-code | Coded (SDK) | Coded (Tool) |
454
+ |-|----------|-------------|--------------|
455
+ | Configuration | `resource.json` | Python code | `create_datafabric_tool()` call |
456
+ | Query flexibility | NL-to-SQL via built-in tool | Full programmatic control | NL-to-SQL via inner sub-graph |
457
+ | Write support | No | Yes (single + batch) | No (read-only SQL) |
458
+ | LLM cost per query | Yes | No | Yes |
459
+
460
+ ## References
461
+
462
+ - [sdk-services.md](sdk-services.md) — Full SDK services reference
463
+ - [context-grounding.md](context-grounding.md) — Context Grounding (RAG over documents, separate from Data Fabric)
464
+ - [../../lowcode/capabilities/context/datafabric.md](../../lowcode/capabilities/context/datafabric.md) — Low-code DataFabric context
465
+ - Sample: `uipath-langchain-python/samples/datafabric-coded-agent/` — Working coded agent example
@@ -14,6 +14,11 @@ Both workflows are driven by live data — the catalog (`uip agent guardrails ca
14
14
 
15
15
  > Full three-fetch mandate applies to **Recommend mode**. In **Validate mode** of an existing guardrail the SDK docs are the authoritative, sufficient source for a validator's scope/stage — `catalog` (relevance metadata) and `list` (tenant entitlement) are recommended cross-checks, not a hard prerequisite for a scope/placement fix. See [Validate Mode](#validate-mode).
16
16
 
17
+ > **The SDK docs are authoritative for shape, never for availability.** They carry `Platform Availability`
18
+ > notes for features still rolling out (BYOG, LLM-as-judge). Those are product-wide statements, not facts
19
+ > about this tenant — only `uip agent guardrails list` decides that. Never withhold or down-rank a
20
+ > recommendation because a fetched page called the feature "not enabled on every tenant yet".
21
+
17
22
  **Required first operation in both modes:** use `WebFetch` on
18
23
  `https://uipath.github.io/uipath-python/core/guardrails/` before catalog calls,
19
24
  project inspection, analysis, or edits. A coded guardrail recommendation or
@@ -24,6 +24,8 @@ Add guardrails to a Python coded agent (LangChain/LangGraph) in two styles: **mi
24
24
  - Entity type names or their allowed values
25
25
  - Import paths
26
26
 
27
+ > **That authority covers shape, not availability.** These pages carry `Platform Availability` notes for features still rolling out (BYOG, LLM-as-judge). Those notes are product-wide, never a statement about the tenant in front of you — [Check Tenant Availability](#check-tenant-availability-mandatory-for-built-in-ai-validators) below is the only authority for that. A validator the docs describe as "not enabled on every tenant yet" can still be `Available` here; author it.
28
+
27
29
  When available, the `langchain/guardrails/` page documents three actions — **`LogAction`**, **`BlockAction`**, and
28
30
  **`EscalateAction`** (human-in-the-loop). Treat the fetched page as the source of truth for `EscalateAction`'s
29
31
  parameters, supported scopes, and stages; the operational wiring it doesn't cover (the suspend->resume UX, the
@@ -13,12 +13,14 @@ If the user has not named one, your ENTIRE response must be a question that list
13
13
  | Pattern | When | LangGraph | LlamaIndex |
14
14
  |---|---|---|---|
15
15
  | API trigger | Resumed via an Orchestrator inbox URL; no Action Center involved | `interrupt({...})` | `InputRequiredEvent(...)` |
16
- | Action Center task | Structured form for a human reviewer | `interrupt(CreateTask(...))` | `CreateTaskEvent(...)` |
17
- | Escalation task | Task flagged as escalation | `interrupt(CreateEscalation(...))` | use `CreateTaskEvent` (no event-level distinction) |
18
- | Wait for existing task | A task was already created elsewhere; resume when it completes | `interrupt(WaitTask(...))` | `WaitTaskEvent(...)` |
16
+ | Action Center task | Structured form for a human reviewer, described as a normal review / sign-off task. Resume delivers only the task `data` | `interrupt(CreateTask(...))` | `CreateTaskEvent(...)` |
17
+ | Escalation task | The request calls the hand-off an escalation (`escalate`, `escalation`, "needs sign-off above a limit"), or the agent must branch on the reviewer's approve/reject outcome. Resume delivers the full `Task` (incl. `action`) | `interrupt(CreateEscalation(...))` | use `CreateTaskEvent` (no event-level distinction) |
18
+ | Wait for existing task | A task was already created elsewhere; resume when it completes. Same split as above: `WaitTask` resumes with the task `data`; `WaitEscalation` resumes with the full `Task` (incl. `action`) | `interrupt(WaitTask(...))` / `interrupt(WaitEscalation(...))` | `WaitTaskEvent(...)` |
19
19
  | Invoke a process | Trigger an RPA process; resume on completion | `interrupt(InvokeProcess(...))` | `InvokeProcessEvent(...)` |
20
20
  | Wait for existing job | A job is running elsewhere; resume on its completion | `interrupt(WaitJob(...))` | `WaitJobEvent(...)` |
21
21
 
22
+ **Task vs Escalation is decided by the request's wording, not by preference — for both the create pair and the wait pair.** "Escalate" / "escalation" / must act on the approve-reject decision → `CreateEscalation` / `WaitEscalation`. "Review task" / "sign-off" / "not an escalation" / only carry the reviewer's input forward → `CreateTask` / `WaitTask`. Never substitute one for the other: they resume with different payloads (see § Escalation Variant).
23
+
22
24
  OpenAI Agents has no first-class HITL support. Coded Function (no framework) has no checkpoint/resume — call `sdk.tasks.create()` then `sdk.tasks.retrieve()` synchronously if a synchronous human step is needed.
23
25
 
24
26
  LangGraph models live in `uipath.platform.common`; LlamaIndex events live in `uipath_llamaindex.models.events`.
@@ -56,7 +58,7 @@ class GraphState(MessagesState):
56
58
  request: str
57
59
  approval_status: str | None = None
58
60
 
59
- async def escalate_to_human(state: GraphState) -> Command:
61
+ async def request_review(state: GraphState) -> Command:
60
62
  task_output = interrupt(CreateTask(
61
63
  app_name="RequestReview",
62
64
  app_folder_path="MyFolderPath",
@@ -86,7 +88,7 @@ async def escalate_to_human(state: GraphState) -> Command:
86
88
 
87
89
  ### Escalation Variant
88
90
 
89
- Swap `CreateTask` for `CreateEscalation` when the task is an escalation. It is the same task shape: `CreateEscalation` extends `CreateTask` with the same fields. Difference is the resume return value: escalation returns the full `Task`; normal task returns `task.data`.
91
+ Use `CreateEscalation` whenever the request describes the hand-off as an escalation (a threshold breach routed to a manager / director, "escalate to a reviewer"), or when the agent must act on whether the reviewer approved or rejected. It is the same task shape: `CreateEscalation` extends `CreateTask` with the same fields. Difference is the resume return value: escalation returns the full `Task` (so `task_output.action` / `task_output.data` are both available); normal task returns only `task.data`. Do not use `CreateTask` for an escalation — its resume payload has no `action`, so approve/reject cannot be read back.
90
92
 
91
93
  ```python
92
94
  from uipath.platform.common import CreateEscalation
@@ -113,6 +115,8 @@ async def monitor_task(state: GraphState) -> Command:
113
115
  return Command(update={"task_result": task_output})
114
116
  ```
115
117
 
118
+ `WaitTask` resumes with the task's `data` only. Swap in `WaitEscalation` (same fields, `from uipath.platform.common import WaitEscalation`) when the existing task is an escalation, or the agent must branch on the reviewer's approve/reject `action` — it resumes with the full `Task`. Same rule as `CreateTask` vs `CreateEscalation`.
119
+
116
120
  **LlamaIndex equivalent:** `ctx.write_event_to_stream(WaitTaskEvent(action=...))`
117
121
 
118
122
  ## InvokeProcess — Call RPA Automation
@@ -143,10 +147,12 @@ output = interrupt(WaitJob(job=background_job, process_folder_path="Workflows"))
143
147
 
144
148
  ### Conditional Interrupt
145
149
 
150
+ Threshold breach routed to a director is an escalation → `CreateEscalation`.
151
+
146
152
  ```python
147
153
  async def conditional_workflow(state: GraphState) -> Command:
148
154
  if state["amount"] > 10000:
149
- result = interrupt(CreateTask(
155
+ result = interrupt(CreateEscalation(
150
156
  assignee="finance-director@example.com",
151
157
  title="Approve Large Request",
152
158
  app_name="ApprovalProcess",
@@ -36,7 +36,7 @@ Fallback discovery paths if the deploy output is unavailable or unparseable, **t
36
36
 
37
37
  If all paths return empty / 404, the deploy command's stdout JSON is authoritative — re-run the deploy and capture its output rather than chasing post-hoc discovery endpoints.
38
38
 
39
- For the flow node JSON shape, see the uipath-maestro-flow skill agent-plugin reference (Published variant). `model.section` is `"Published"`.
39
+ For the flow node JSON shape, see the uipath-maestro-flow skill agent-plugin reference (Published variant). Registry output marks the published variant with `category: "agent.published"` and omits `model.section`.
40
40
 
41
41
  ---
42
42
 
@@ -75,7 +75,7 @@ Coded agents use `location: "external"`.
75
75
  | Node type | `uipath.core.agent.<resourceKey>` (local, from `project add`) | `uipath.core.agent.<resourceKey>` (Orchestrator-assigned) | `uipath.agent.resource.tool.agent` |
76
76
  | Lifecycle | `uip solution upload` (single pass) | `uip codedagent deploy` | `uip codedagent deploy` |
77
77
  | Runtime lookup | Studio Web projects API | Orchestrator Releases API | Orchestrator (via parent agent) |
78
- | `model.section` | `"In this solution"` | `"Published"` or absent | n/a |
78
+ | `model.section` | `"In this solution"` | absent (`category: "agent.published"`) | n/a |
79
79
  | Cross-flow reuse | No | Yes | Yes |
80
80
 
81
81
  ---
@@ -283,6 +283,54 @@ Or have the terminal node compute the full aggregate and emit it.
283
283
 
284
284
  ---
285
285
 
286
+ ## Available Tools
287
+
288
+ The `uipath-langchain` package provides UiPath-specific LangChain tools:
289
+
290
+ | Tool | Import | Purpose |
291
+ |------|--------|---------|
292
+ | Process invocation | `uipath_langchain.agent.tools import create_process_tool` | Trigger UiPath processes |
293
+ | Escalation (HITL) | `uipath_langchain.agent.tools import create_escalation_tool` | Send to human reviewer |
294
+ | Context search | `uipath_langchain.retrievers import ContextGroundingRetriever` | Search Context Grounding indexes |
295
+ | MCP tools | `uipath_langchain.agent.tools import open_mcp_tools` | Connect to MCP servers |
296
+
297
+ > **Context Grounding retrieval in LangGraph:** always use `ContextGroundingRetriever` from `uipath_langchain.retrievers` — not `sdk.context_grounding.search()` / `search_async()`. The LangChain retriever integrates natively with the graph pipeline and declares `index_name` + `folder_path` at one call site — the exact shape the `index` binding entry needs (see [../lifecycle/bindings-reference.md](../lifecycle/bindings-reference.md)). See [../capabilities/context-grounding.md](../capabilities/context-grounding.md) for usage examples.
298
+
299
+ ### Context Grounding RAG Example
300
+
301
+ Minimal RAG shape: retrieval node + answer node.
302
+
303
+ ```python
304
+ from typing import TypedDict
305
+
306
+ from langchain_core.messages import HumanMessage, SystemMessage
307
+ from uipath_langchain.chat.models import UiPathAzureChatOpenAI
308
+ from uipath_langchain.retrievers import ContextGroundingRetriever
309
+
310
+ class GraphState(TypedDict):
311
+ question: str
312
+ snippets: list[str]
313
+ answer: str
314
+
315
+ async def retrieve(state: GraphState) -> dict:
316
+ retriever = ContextGroundingRetriever(index_name="company_docs", folder_path="Shared")
317
+ documents = await retriever.ainvoke(state["question"])
318
+ return {"snippets": [doc.page_content for doc in documents]}
319
+
320
+ async def answer(state: GraphState) -> dict:
321
+ context = "\n\n".join(state["snippets"])
322
+ llm = UiPathAzureChatOpenAI(temperature=0)
323
+ response = await llm.ainvoke([
324
+ SystemMessage(content="Answer only from the provided context."),
325
+ HumanMessage(content=f"Context:\n{context}\n\nQuestion: {state['question']}"),
326
+ ])
327
+ return {"answer": response.content}
328
+ ```
329
+
330
+ Wire `retrieve → answer` as in § Building the Graph.
331
+
332
+ ---
333
+
286
334
  ## Tracing
287
335
 
288
336
  LangGraph agents get **automatic tracing** — you do NOT need `@traced()` on graph nodes. The UiPath LangGraph runtime instruments all node executions, LLM calls, and tool invocations automatically.
@@ -393,19 +441,3 @@ Both are valid — pick based on the agent's needs:
393
441
  See `../capabilities/conversational-agents.md` § Running Locally for the `--keep-state-file` flag (required on every turn) and § Wire Envelope for the `turn1.json` shape.
394
442
 
395
443
  ---
396
-
397
- ## Available Tools
398
-
399
- The `uipath-langchain` package provides UiPath-specific LangChain tools:
400
-
401
- | Tool | Import | Purpose |
402
- |------|--------|---------|
403
- | Process invocation | `uipath_langchain.agent.tools import create_process_tool` | Trigger UiPath processes |
404
- | Escalation (HITL) | `uipath_langchain.agent.tools import create_escalation_tool` | Send to human reviewer |
405
- | Context search | `uipath_langchain.retrievers import ContextGroundingRetriever` | Search Context Grounding indexes |
406
- | MCP tools | `uipath_langchain.agent.tools import open_mcp_tools` | Connect to MCP servers |
407
-
408
- > **Context Grounding retrieval in LangGraph:** always use `ContextGroundingRetriever` from `uipath_langchain.retrievers` — not `sdk.context_grounding.search()` / `search_async()`. The LangChain retriever integrates natively with the graph pipeline and auto-generates the correct `index` binding. See [../capabilities/context-grounding.md](../capabilities/context-grounding.md) for usage examples.
409
-
410
- ---
411
-
@@ -4,7 +4,7 @@ A lightweight integration for running OpenAI Agents SDK agents on the UiPath pla
4
4
 
5
5
  > **Note:** This is a streamlined integration focused on agent execution and streaming. It does **not** support Human-in-the-Loop (HITL), state persistence/checkpointing, or UiPath process invocation from within agents. For workflows that need those features, use the [LangGraph](langgraph-integration.md) or [LlamaIndex](llamaindex-integration.md) integrations instead.
6
6
 
7
- > **STOP — input shape decides framework fit.** OpenAI Agents accept **only** a `messages` conversation input ([Input](#input) § CONSTRAINT). When the requested input is not a conversation, do NOT map it onto `messages` and proceed — STOP before scaffolding, tell the user, and let them choose another framework (e.g. [LangGraph](langgraph-integration.md)).
7
+ > **STOP — input shape decides framework fit.** The OpenAI Agents SDK runner accepts **only** a `messages` conversation input ([Input](#input) § CONSTRAINT) — an SDK constraint, not a UiPath one; UiPath merely surfaces it as the required `messages` field in the generated schema. When the requested input is not a conversation, do NOT map it onto `messages` and proceed — STOP before scaffolding, tell the user, and let them choose another framework (e.g. [LangGraph](langgraph-integration.md)).
8
8
 
9
9
  ## Scaffolding a New Project
10
10
 
@@ -67,7 +67,17 @@ content/
67
67
  └── uv.lock
68
68
  ```
69
69
 
70
- Control file inclusion via `packOptions` in `uipath.json`:
70
+ Control file inclusion and exclusion via `packOptions` in `uipath.json`:
71
+
72
+ | Property | Type | Required | Default | Description |
73
+ |----------|------|----------|---------|-------------|
74
+ | `fileExtensionsIncluded` | `string[]` | No | `[".py", ".mermaid", ".json", ".yaml", ".yml", ".md"]` | File extensions to include in the package |
75
+ | `filesIncluded` | `string[]` | No | `["pyproject.toml"]` | Specific files to always include |
76
+ | `filesExcluded` | `string[]` | No | `[]` | Specific files to exclude |
77
+ | `directoriesExcluded` | `string[]` | No | `[]` | Directories to exclude from packaging |
78
+ | `includeUvLock` | `boolean` | No | `false` | Whether to include `uv.lock` file |
79
+
80
+ **Example:**
71
81
 
72
82
  ```json
73
83
  {