@uipath/skills 1.196.0 → 1.197.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 (592) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +5 -2
  3. package/CODEOWNERS +22 -7
  4. package/README.md +14 -1
  5. package/assets/skill-status.json +14 -1
  6. package/assets/uip-catalog-snapshot.json +13 -2
  7. package/hooks/hooks.json +12 -0
  8. package/hooks/send-telemetry.sh +445 -0
  9. package/hooks/suggest-permissions.sh +6 -0
  10. package/package.json +1 -1
  11. package/skills/uipath-admin/SKILL.md +24 -4
  12. package/skills/uipath-admin/references/audit-commands.md +25 -21
  13. package/skills/uipath-admin/references/audit-workflow-guide.md +26 -25
  14. package/skills/uipath-admin/references/diagnose/CAPABILITY.md +74 -0
  15. package/skills/uipath-admin/references/diagnose/references/failure-modes.md +228 -0
  16. package/skills/uipath-admin/references/diagnose/references/troubleshooting-guide.md +106 -0
  17. package/skills/uipath-admin/references/identity-troubleshoot-guide.md +251 -0
  18. package/skills/uipath-agents/SKILL.md +12 -8
  19. package/skills/uipath-agents/references/coded/capabilities/context-grounding.md +2 -0
  20. package/skills/uipath-agents/references/coded/capabilities/conversational-agents.md +2 -0
  21. package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails-recommend.md +12 -7
  22. package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails.md +141 -1
  23. package/skills/uipath-agents/references/coded/capabilities/human-in-the-loop.md +2 -0
  24. package/skills/uipath-agents/references/coded/capabilities/integration-service.md +19 -33
  25. package/skills/uipath-agents/references/coded/lifecycle/bindings-reference.md +54 -22
  26. package/skills/uipath-agents/references/coded/lifecycle/build.md +1 -0
  27. package/skills/uipath-agents/references/coded/lifecycle/evaluations/evaluation-sets.md +5 -1
  28. package/skills/uipath-agents/references/coded/lifecycle/setup.md +3 -1
  29. package/skills/uipath-agents/references/coded/quickstart.md +11 -10
  30. package/skills/uipath-agents/references/coded-vs-lowcode-guide.md +1 -0
  31. package/skills/uipath-agents/references/context-grounding-patterns.md +1 -1
  32. package/skills/uipath-agents/references/lowcode/agent-definition.md +97 -12
  33. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/analyze-attachments.md +2 -2
  34. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/batch-transform/impl-json.md +40 -14
  35. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/built-in-tools.md +4 -3
  36. package/skills/uipath-agents/references/lowcode/capabilities/built-in-tools/deeprag/impl-json.md +38 -6
  37. package/skills/uipath-agents/references/lowcode/capabilities/context/attachments.md +1 -1
  38. package/skills/uipath-agents/references/lowcode/capabilities/context/context.md +1 -1
  39. package/skills/uipath-agents/references/lowcode/capabilities/context/datafabric.md +1 -1
  40. package/skills/uipath-agents/references/lowcode/capabilities/context/index.md +7 -3
  41. package/skills/uipath-agents/references/lowcode/capabilities/escalation/escalation.md +49 -38
  42. package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails-recommend.md +3 -1
  43. package/skills/uipath-agents/references/lowcode/capabilities/guardrails/guardrails.md +49 -49
  44. package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +34 -14
  45. package/skills/uipath-agents/references/lowcode/capabilities/integration-service/integration-service.md +1 -1
  46. package/skills/uipath-agents/references/lowcode/capabilities/memory/memory.md +2 -0
  47. package/skills/uipath-agents/references/lowcode/capabilities/process/process.md +2 -2
  48. package/skills/uipath-agents/references/lowcode/capabilities/process/solution-files.md +1 -1
  49. package/skills/uipath-agents/references/lowcode/critical-rules/autonomous-critical-rules.md +15 -0
  50. package/skills/uipath-agents/references/lowcode/critical-rules/conversational-critical-rules.md +19 -0
  51. package/skills/uipath-agents/references/lowcode/{critical-rules.md → critical-rules/critical-rules.md} +25 -27
  52. package/skills/uipath-agents/references/lowcode/debug.md +6 -3
  53. package/skills/uipath-agents/references/lowcode/evaluations/evaluate.md +2 -0
  54. package/skills/uipath-agents/references/lowcode/lowcode.md +29 -6
  55. package/skills/uipath-agents/references/lowcode/model-selection-guide.md +4 -1
  56. package/skills/uipath-agents/references/lowcode/project-lifecycle.md +20 -8
  57. package/skills/uipath-agents/references/lowcode/prompting/agent-prompting-guide.md +17 -0
  58. package/skills/uipath-agents/references/lowcode/{agent-prompting-guide.md → prompting/autonomous-agent-prompting-guide.md} +9 -11
  59. package/skills/uipath-agents/references/lowcode/prompting/conversational-agent-prompting-guide.md +123 -0
  60. package/skills/uipath-agents/references/lowcode/solution-resources.md +1 -1
  61. package/skills/uipath-api-workflow/SKILL.md +32 -12
  62. package/skills/uipath-api-workflow/references/cli-reference.md +110 -22
  63. package/skills/uipath-api-workflow/references/connector-activity-discovery.md +43 -4
  64. package/skills/uipath-api-workflow/references/troubleshooting.md +23 -7
  65. package/skills/uipath-api-workflow/references/workflow-file-format.md +25 -7
  66. package/skills/uipath-coded-apps/SKILL.md +55 -12
  67. package/skills/uipath-coded-apps/assets/fixtures/governance-dashboard-starter-kit.tar.gz +0 -0
  68. package/skills/uipath-coded-apps/assets/scripts/dashboards/build-dashboard.mjs +1371 -0
  69. package/skills/uipath-coded-apps/assets/scripts/dashboards/capability-registry.json +845 -0
  70. package/skills/uipath-coded-apps/assets/scripts/dashboards/flows/build.mjs +338 -0
  71. package/skills/uipath-coded-apps/assets/scripts/dashboards/flows/edit.mjs +248 -0
  72. package/skills/uipath-coded-apps/assets/scripts/dashboards/flows/template.mjs +82 -0
  73. package/skills/uipath-coded-apps/assets/scripts/dashboards/flows/upgrade.mjs +73 -0
  74. package/skills/uipath-coded-apps/assets/scripts/dashboards/lifecycle.mjs +207 -0
  75. package/skills/uipath-coded-apps/assets/scripts/dashboards/setup-admin-folder.mjs +146 -0
  76. package/skills/uipath-coded-apps/assets/scripts/dashboards/tests/regime-eject.test.mjs +124 -0
  77. package/skills/uipath-coded-apps/assets/scripts/dashboards/tests/resolution.test.mjs +1635 -0
  78. package/skills/uipath-coded-apps/assets/templates/action-app/app-template.css +9 -0
  79. package/skills/uipath-coded-apps/assets/templates/action-app/document-tab-template.css +139 -0
  80. package/skills/uipath-coded-apps/assets/templates/action-app/form-template.css +442 -0
  81. package/skills/uipath-coded-apps/assets/templates/action-app/index-template.css +111 -0
  82. package/skills/uipath-coded-apps/assets/templates/action-app-template.md +357 -152
  83. package/skills/uipath-coded-apps/assets/templates/web-app-template.md +255 -78
  84. package/skills/uipath-coded-apps/references/create-action-app.md +284 -195
  85. package/skills/uipath-coded-apps/references/create-web-app.md +64 -26
  86. package/skills/uipath-coded-apps/references/dashboards/CAPABILITY.md +179 -0
  87. package/skills/uipath-coded-apps/references/dashboards/aesthetic/charting.md +138 -0
  88. package/skills/uipath-coded-apps/references/dashboards/aesthetic/layout-patterns.md +152 -0
  89. package/skills/uipath-coded-apps/references/dashboards/plugins/build/impl.md +423 -0
  90. package/skills/uipath-coded-apps/references/dashboards/plugins/deploy/impl.md +322 -0
  91. package/skills/uipath-coded-apps/references/dashboards/primitives/customization.md +66 -0
  92. package/skills/uipath-coded-apps/references/dashboards/primitives/detail-views.md +64 -0
  93. package/skills/uipath-coded-apps/references/dashboards/primitives/incremental-editor.md +92 -0
  94. package/skills/uipath-coded-apps/references/dashboards/primitives/state-file.md +64 -0
  95. package/skills/uipath-coded-apps/references/dashboards/primitives/tier-resolution.md +474 -0
  96. package/skills/uipath-coded-apps/references/debug.md +15 -21
  97. package/skills/uipath-coded-apps/references/oauth-client-setup.md +5 -5
  98. package/skills/uipath-coded-apps/references/oauth-scopes.md +64 -2
  99. package/skills/uipath-coded-apps/references/pack-publish-deploy.md +12 -5
  100. package/skills/uipath-coded-apps/references/patterns.md +10 -5
  101. package/skills/uipath-coded-apps/references/sdk/action-center.md +32 -6
  102. package/skills/uipath-coded-apps/references/sdk/agents.md +241 -0
  103. package/skills/uipath-coded-apps/references/sdk/governance-traces.md +186 -0
  104. package/skills/uipath-coded-apps/references/sdk/governance.md +72 -0
  105. package/skills/uipath-coded-apps/references/sdk/imports.md +4 -0
  106. package/skills/uipath-coded-apps/references/sdk/maestro.md +114 -0
  107. package/skills/uipath-coded-apps/references/sdk/orchestrator.md +80 -4
  108. package/skills/uipath-coded-apps/references/sdk/pagination.md +2 -0
  109. package/skills/uipath-coded-apps/references/sdk/traces.md +89 -0
  110. package/skills/uipath-coded-apps/references/widgets/validation-station.md +308 -0
  111. package/skills/uipath-coded-apps/scripts/validate-action-schema.js +241 -0
  112. package/skills/uipath-connector-builder/SKILL.md +192 -0
  113. package/skills/uipath-connector-builder/references/auth.md +171 -0
  114. package/skills/uipath-connector-builder/references/configuration.md +130 -0
  115. package/skills/uipath-connector-builder/references/debugging.md +80 -0
  116. package/skills/uipath-connector-builder/references/element-json.md +148 -0
  117. package/skills/uipath-connector-builder/references/events.md +132 -0
  118. package/skills/uipath-connector-builder/references/hooks.md +198 -0
  119. package/skills/uipath-connector-builder/references/overview.md +78 -0
  120. package/skills/uipath-connector-builder/references/standard-resources.md +111 -0
  121. package/skills/uipath-connector-builder/references/system-resources.md +85 -0
  122. package/skills/uipath-feedback/SKILL.md +43 -29
  123. package/skills/{uipath-agents/references/coded/frameworks/coded-functions.md → uipath-functions/SKILL.md} +36 -23
  124. package/skills/uipath-governance/SKILL.md +49 -8
  125. package/skills/uipath-governance/references/aops-policy/aops-policy-commands.md +10 -10
  126. package/skills/uipath-governance/references/aops-policy/aops-policy-deploy-guide.md +7 -7
  127. package/skills/uipath-governance/references/auth-context.md +101 -0
  128. package/skills/uipath-governance/references/cli-cheatsheet.md +207 -0
  129. package/skills/uipath-governance/references/compliance-pack/catalog/impl.md +79 -0
  130. package/skills/uipath-governance/references/compliance-pack/coverage/impl.md +141 -0
  131. package/skills/uipath-governance/references/compliance-pack/disable/impl.md +39 -0
  132. package/skills/uipath-governance/references/compliance-pack/full-apply/impl.md +164 -0
  133. package/skills/uipath-governance/references/compliance-pack/partial-apply/impl.md +266 -0
  134. package/skills/uipath-governance/references/compliance-pack/partial-apply/merge-overrides-guide.md +28 -0
  135. package/skills/uipath-governance/references/compliance-pack/partial-apply/planning.md +82 -0
  136. package/skills/uipath-governance/references/compliance-pack/partial-apply/synthesize-formdata-guide.md +22 -0
  137. package/skills/uipath-governance/references/compliance-pack/preview-gate.md +43 -0
  138. package/skills/uipath-governance/references/compliance-pack/query/impl.md +75 -0
  139. package/skills/uipath-governance/references/diagnose/CAPABILITY.md +71 -0
  140. package/skills/uipath-governance/references/diagnose/references/failure-modes.md +201 -0
  141. package/skills/uipath-governance/references/diagnose/references/troubleshooting-guide.md +137 -0
  142. package/skills/uipath-governance/references/disambiguation-guide.md +15 -0
  143. package/skills/uipath-governance/scripts/merge-overrides.mjs +81 -0
  144. package/skills/uipath-governance/scripts/synthesize-formdata.mjs +86 -0
  145. package/skills/uipath-human-in-the-loop/SKILL.md +30 -25
  146. package/skills/uipath-human-in-the-loop/references/hitl-node-apptask.md +38 -4
  147. package/skills/uipath-human-in-the-loop/references/hitl-node-coded-action-app.md +2 -3
  148. package/skills/uipath-human-in-the-loop/references/hitl-node-quickform.md +92 -34
  149. package/skills/uipath-ixp/SKILL.md +120 -0
  150. package/skills/uipath-ixp/references/cli-reference.md +121 -0
  151. package/skills/uipath-ixp/references/improve-prompts-guide.md +283 -0
  152. package/skills/uipath-ixp/references/label-documents-guide.md +207 -0
  153. package/skills/uipath-ixp/references/project-setup-guide.md +90 -0
  154. package/skills/uipath-maestro-bpmn/SKILL.md +167 -68
  155. package/skills/uipath-maestro-bpmn/references/cli-conventions.md +47 -0
  156. package/skills/uipath-maestro-bpmn/references/diagnose/CAPABILITY.md +6 -6
  157. package/skills/uipath-maestro-bpmn/references/operate/CAPABILITY.md +3 -3
  158. package/skills/uipath-maestro-bpmn/references/registry-workflow.md +199 -0
  159. package/skills/uipath-maestro-bpmn/references/structural-bpmn.md +500 -0
  160. package/skills/uipath-maestro-bpmn/validator/README.md +214 -0
  161. package/skills/uipath-maestro-bpmn/validator/bpmn-spec.json +2477 -0
  162. package/skills/uipath-maestro-bpmn/validator/model.mjs +419 -0
  163. package/skills/uipath-maestro-bpmn/validator/package.json +17 -0
  164. package/skills/uipath-maestro-bpmn/validator/rules.mjs +1403 -0
  165. package/skills/uipath-maestro-bpmn/validator/samples/invalid-conditional-and-variable.bpmn +25 -0
  166. package/skills/uipath-maestro-bpmn/validator/samples/valid-baseline.bpmn +52 -0
  167. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/A.2.0.bpmn +157 -0
  168. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/A.2.1.bpmn +333 -0
  169. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/B.1.0.bpmn +598 -0
  170. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/B.2.0.bpmn +1709 -0
  171. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.2.0.bpmn +564 -0
  172. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.3.0.bpmn +671 -0
  173. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.4.0.bpmn +1045 -0
  174. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.5.0.bpmn +1176 -0
  175. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.6.0.bpmn +670 -0
  176. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.7.0.bpmn +466 -0
  177. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Can_Parse_Complex_Process_With_Task_Gateway_BoundaryEvent_etc.bpmn +74 -0
  178. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/ExclusiveGatewayDefaultFlow.bpmn +32 -0
  179. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/ExternalAgentWorkflow.bpmn +62 -0
  180. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Golden_Scenario.initial.bpmn +361 -0
  181. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/InclusiveJoinRouteAwayBranch.bpmn +62 -0
  182. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_AsyncExecution_And_Create_CorrectModel.bpmn +74 -0
  183. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_ExtractionValidation_And_Create_CorrectModel.bpmn +35 -0
  184. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_Extraction_FileUpload_And_Create_CorrectModel.bpmn +33 -0
  185. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_Extraction_JobAttachment_And_Create_CorrectModel.bpmn +35 -0
  186. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_SubProcess_With_Multiple_Element_Types.bpmn +76 -0
  187. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/StartEventWithOutputs.bpmn +36 -0
  188. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/StartGatewayEnd.bpmn +44 -0
  189. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/all elements.bpmn +516 -0
  190. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/all_sequence_flow_types.bpmn +173 -0
  191. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/demo.bpmn +181 -0
  192. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-001-collapsed.bpmn +126 -0
  193. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-001-expanded.bpmn +122 -0
  194. package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-003-collapsed_deeply-nested.bpmn +438 -0
  195. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/A.1.0.bpmn +87 -0
  196. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/A.3.0.bpmn +165 -0
  197. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ApiWorkflow.bpmn +39 -0
  198. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnNestedSubProcessTests.bpmn +102 -0
  199. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnTimerBoundaryEvents.bpmn +160 -0
  200. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnXmlWithCatchAllErrorEventSubProcess.bpmn +45 -0
  201. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnXmlWithSpecificErrorEventSubProcess.bpmn +46 -0
  202. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/CaseManagementWithConstantIdentifier.bpmn +218 -0
  203. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ErrorBoundary.bpmn +78 -0
  204. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ErrorPropagationInEventSubprocess.bpmn +340 -0
  205. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/EventBasedGatewayFirstCatcherWins.bpmn +56 -0
  206. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Example-EventBasedGateway.bpmn +117 -0
  207. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveGatewayConditional.bpmn +45 -0
  208. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveGatewaySharedEndEvent.bpmn +45 -0
  209. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveWithParallelGateway.bpmn +68 -0
  210. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/FourScriptTasks.bpmn +84 -0
  211. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/HitlTaskOnly.bpmn +55 -0
  212. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/InclusiveGatewayForkJoin.bpmn +69 -0
  213. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_BPMN_Elements_And_Create_CorrectModel.bpmn +20 -0
  214. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_HttpRequest_ServiceTask_And_Create_Correct_Model.bpmn +34 -0
  215. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_MessageBoundaryEvent_And_Create_CorrectModel.bpmn +87 -0
  216. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_Script_Task_V2_And_Create_Correct_Model.bpmn +31 -0
  217. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_Sets_Containers_Properly.bpmn +129 -0
  218. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ScriptWritesVariableThenGatewayBranches.bpmn +55 -0
  219. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/boundaryevent.bpmn +30 -0
  220. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/collapsed-subprocess.bpmn +83 -0
  221. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/connectable-types.bpmn +85 -0
  222. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/extensions-orchestrator-start-job.bpmn +80 -0
  223. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/multiparticipantpool.bpmn +77 -0
  224. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/nestedsubprocess.bpmn +36 -0
  225. package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/simple.bpmn +59 -0
  226. package/skills/uipath-maestro-bpmn/validator/test/integration.test.mjs +146 -0
  227. package/skills/uipath-maestro-bpmn/validator/test/model-helpers.mjs +42 -0
  228. package/skills/uipath-maestro-bpmn/validator/test/ported-rule-tests.mjs +983 -0
  229. package/skills/uipath-maestro-bpmn/validator/test/run-tests.mjs +530 -0
  230. package/skills/uipath-maestro-bpmn/validator/uipath-moddle.v1.json +715 -0
  231. package/skills/uipath-maestro-bpmn/validator/validate-bpmn.mjs +164 -0
  232. package/skills/uipath-maestro-case/SKILL.md +5 -1
  233. package/skills/uipath-maestro-case/assets/templates/sdd-template-examples.md +10 -0
  234. package/skills/uipath-maestro-case/assets/templates/sdd-template.md +89 -17
  235. package/skills/uipath-maestro-case/references/bindings-and-expressions.md +26 -0
  236. package/skills/uipath-maestro-case/references/case-editing-operations.md +3 -0
  237. package/skills/uipath-maestro-case/references/implementation.md +11 -4
  238. package/skills/uipath-maestro-case/references/phase-0-interview.md +8 -7
  239. package/skills/uipath-maestro-case/references/phased-execution.md +2 -1
  240. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +21 -0
  241. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +2 -0
  242. package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +15 -9
  243. package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +131 -4
  244. package/skills/uipath-maestro-case/references/sdd-generation-rules.md +94 -17
  245. package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +1 -1
  246. package/skills/uipath-maestro-flow/references/author/references/planning-arch.md +2 -2
  247. package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/impl.md +11 -11
  248. package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/planning.md +6 -6
  249. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-connector.md +4 -1
  250. package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/impl.md +157 -122
  251. package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/planning.md +16 -4
  252. package/skills/uipath-maestro-flow/references/evaluate/references/commands-reference.md +8 -8
  253. package/skills/uipath-maestro-flow/references/evaluate/references/running-guide.md +3 -3
  254. package/skills/uipath-maestro-flow/references/shared/cli-commands.md +1 -1
  255. package/skills/uipath-planner/SKILL.md +19 -8
  256. package/skills/uipath-planner/assets/templates/agent-sdd-template.md +14 -0
  257. package/skills/uipath-planner/assets/templates/api-workflow-sdd-template.md +14 -0
  258. package/skills/uipath-planner/assets/templates/case-sdd-template.md +14 -0
  259. package/skills/uipath-planner/assets/templates/coded-app-sdd-template.md +14 -0
  260. package/skills/uipath-planner/assets/templates/flow-sdd-template.md +14 -0
  261. package/skills/uipath-planner/assets/templates/rpa-sdd-template.md +40 -5
  262. package/skills/uipath-planner/references/asdd-crosswalk-guide.md +55 -0
  263. package/skills/uipath-planner/references/attended-reauth-pattern-guide.md +43 -0
  264. package/skills/uipath-planner/references/multi-skill-patterns-guide.md +4 -0
  265. package/skills/uipath-planner/references/non-pdd-lane-guide.md +2 -0
  266. package/skills/uipath-planner/references/pdd-analysis-guide.md +24 -1
  267. package/skills/uipath-planner/references/pdd-driven-lane-guide.md +6 -2
  268. package/skills/uipath-planner/references/plan-and-tasks-format.md +2 -0
  269. package/skills/uipath-planner/references/platform-availability-guide.md +43 -0
  270. package/skills/uipath-planner/references/product-selection-guide.md +20 -0
  271. package/skills/uipath-planner/references/sdd-generation-guide.md +90 -21
  272. package/skills/uipath-planner/references/tenant-library-search-guide.md +5 -1
  273. package/skills/uipath-planner/scripts/docx-extract.sh +54 -0
  274. package/skills/uipath-planner/scripts/sdd-to-docx.sh +76 -0
  275. package/skills/uipath-platform/SKILL.md +54 -7
  276. package/skills/uipath-platform/references/context-grounding/index-management.md +123 -0
  277. package/skills/uipath-platform/references/data-fabric/bulk-import.md +86 -0
  278. package/skills/{uipath-data-fabric/references → uipath-platform/references/data-fabric}/choice-sets.md +33 -12
  279. package/skills/uipath-platform/references/data-fabric/data-fabric.md +352 -0
  280. package/skills/uipath-platform/references/data-fabric/entity-schema.md +444 -0
  281. package/skills/uipath-platform/references/data-fabric/file-attachments.md +122 -0
  282. package/skills/{uipath-data-fabric/references → uipath-platform/references/data-fabric}/filter-platform-contract.md +3 -3
  283. package/skills/{uipath-data-fabric/references → uipath-platform/references/data-fabric}/records-query.md +46 -10
  284. package/skills/uipath-platform/references/integration-service/http-request.md +15 -1
  285. package/skills/uipath-platform/references/integration-service/vendor-docs-registry.json +173 -0
  286. package/skills/uipath-platform/references/uip-commands.md +12 -4
  287. package/skills/uipath-review/SKILL.md +53 -12
  288. package/skills/uipath-review/references/agents/agent-common-issues.md +1 -1
  289. package/skills/uipath-review/references/agents/agent-grading-rubric.md +133 -0
  290. package/skills/uipath-review/references/agents/agent-review-checklist.md +23 -3
  291. package/skills/uipath-review/references/agents/agents-coded-rules.md +7 -0
  292. package/skills/uipath-review/references/agents/agents-lowcode-rules.md +13 -3
  293. package/skills/uipath-review/references/agents/guardrails/guardrails-review.md +198 -0
  294. package/skills/uipath-review/references/architecture-assessment-guide.md +2 -0
  295. package/skills/uipath-review/references/review-workflow-guide.md +9 -5
  296. package/skills/uipath-review/references/rule-catalog-workflow.md +3 -3
  297. package/skills/uipath-rpa/SKILL.md +18 -6
  298. package/skills/uipath-rpa/references/cli-reference.md +57 -3
  299. package/skills/uipath-rpa/references/common-activity-card.md +1 -1
  300. package/skills/uipath-rpa/references/connector-capabilities.md +2 -0
  301. package/skills/uipath-rpa/references/data-manipulation-guide.md +311 -0
  302. package/skills/uipath-rpa/references/environment-setup.md +0 -2
  303. package/skills/uipath-rpa/references/error-handling-guide.md +381 -0
  304. package/skills/uipath-rpa/references/is-connector-xaml-guide.md +127 -11
  305. package/skills/uipath-rpa/references/reframework-guide.md +2 -0
  306. package/skills/uipath-rpa/references/testing-guide.md +19 -0
  307. package/skills/uipath-rpa/references/ui-automation-guide.md +129 -18
  308. package/skills/uipath-rpa/references/uia-configure-target-workflows.md +22 -1
  309. package/skills/uipath-rpa/references/uia-elements-interaction-guide.md +93 -0
  310. package/skills/uipath-rpa/references/xaml/canvas-layout-guide.md +41 -4
  311. package/skills/uipath-rpa/references/xaml/common-pitfalls.md +12 -3
  312. package/skills/uipath-rpa/references/xaml/flowchart-guide.md +113 -0
  313. package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +5 -9
  314. package/skills/uipath-solution/SKILL.md +11 -8
  315. package/skills/uipath-solution/references/pack-and-deploy.md +18 -1
  316. package/skills/uipath-solution/references/solution-overview.md +3 -0
  317. package/skills/uipath-test/SKILL.md +2 -1
  318. package/skills/uipath-troubleshoot/SKILL.md +24 -26
  319. package/skills/uipath-troubleshoot/agents/depth-verifier.md +24 -25
  320. package/skills/uipath-troubleshoot/agents/hypothesis-generator.md +8 -4
  321. package/skills/uipath-troubleshoot/agents/hypothesis-tester.md +85 -38
  322. package/skills/uipath-troubleshoot/agents/presenter.md +7 -7
  323. package/skills/uipath-troubleshoot/agents/scope-checker.md +3 -6
  324. package/skills/uipath-troubleshoot/agents/shared.md +26 -21
  325. package/skills/uipath-troubleshoot/agents/triage.md +117 -49
  326. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/investigation_guide.md +43 -0
  327. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/overview.md +57 -0
  328. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-action-failed-after-find.md +100 -0
  329. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-cell-targeting-failures.md +111 -0
  330. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-element-not-found.md +125 -0
  331. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-get-text-empty-or-wrong-result.md +117 -0
  332. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-invalid-descriptor.md +102 -0
  333. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-scope-setup-failures.md +136 -0
  334. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-scroll-search-failures.md +114 -0
  335. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-server-auth-throttling-network.md +95 -0
  336. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/playbooks/cv-silent-failures-and-false-results.md +124 -0
  337. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/presentation.md +8 -0
  338. package/skills/uipath-troubleshoot/references/activity-packages/cv-activities/summary.md +15 -0
  339. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/investigation_guide.md +42 -0
  340. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/overview.md +41 -0
  341. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/playbooks/connect-to-database-failures.md +104 -0
  342. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/playbooks/execute-non-query-failures.md +97 -0
  343. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/playbooks/execute-query-failures.md +134 -0
  344. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/playbooks/start-transaction-failures.md +94 -0
  345. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/presentation.md +10 -0
  346. package/skills/uipath-troubleshoot/references/activity-packages/database-activities/summary.md +10 -0
  347. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/investigation_guide.md +27 -9
  348. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/overview.md +51 -10
  349. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/append-range-failures.md +146 -0
  350. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/delete-range-failures.md +126 -0
  351. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/excel-application-card-failures.md +139 -0
  352. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/excel-application-scope-failures.md +118 -0
  353. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/execute-macro-failures.md +149 -0
  354. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/playbooks/write-range-failures.md +145 -0
  355. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/presentation.md +12 -7
  356. package/skills/uipath-troubleshoot/references/activity-packages/excel-activities/summary.md +6 -0
  357. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/investigation_guide.md +1 -0
  358. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/overview.md +12 -4
  359. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/connection-and-auth-failures.md +55 -0
  360. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/drive-file-not-found.md +18 -10
  361. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/get-newest-email-not-found.md +9 -8
  362. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/invalid-or-null-input.md +68 -0
  363. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/transient-and-timeout-errors.md +52 -0
  364. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/playbooks/upload-storage-quota-exceeded.md +1 -1
  365. package/skills/uipath-troubleshoot/references/activity-packages/gsuite-activities/summary.md +5 -2
  366. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/overview.md +28 -0
  367. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/delete-outlook-mail-failures.md +105 -0
  368. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/get-outlook-mail-failures.md +109 -0
  369. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/move-outlook-mail-failures.md +97 -0
  370. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/send-outlook-mail-failures.md +95 -0
  371. package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/summary.md +8 -0
  372. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/investigation_guide.md +23 -0
  373. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/overview.md +9 -0
  374. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/application-scope-misconfigured.md +49 -0
  375. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/authentication-token-invalid.md +53 -0
  376. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/copy-item-argument-null.md +34 -0
  377. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/create-folder-invalid-path.md +36 -0
  378. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/download-file-conversion-or-destination.md +40 -0
  379. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/drive-item-not-found.md +1 -1
  380. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/email-trigger-connection-event-failure.md +45 -0
  381. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/insufficient-graph-scope.md +44 -0
  382. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/legacy-mail-null-reference.md +43 -0
  383. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/mail-folder-not-found.md +4 -3
  384. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/mail-invalid-odata-query.md +43 -0
  385. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/mail-message-not-found.md +45 -0
  386. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/request-throttled.md +45 -0
  387. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/send-mail-rejected.md +52 -0
  388. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/transient-service-error.md +48 -0
  389. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/playbooks/upload-file-quota-or-size.md +47 -0
  390. package/skills/uipath-troubleshoot/references/activity-packages/o365-activities/summary.md +15 -1
  391. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/investigation_guide.md +32 -0
  392. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/overview.md +38 -0
  393. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/invoke-method-failures.md +57 -0
  394. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/invoke-python-method-pipe-is-broken.md +44 -0
  395. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/load-script-failures.md +62 -0
  396. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/python-path-not-valid.md +39 -0
  397. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/python-scope-architecture-version-mismatch.md +41 -0
  398. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/playbooks/working-folder-relative-path.md +34 -0
  399. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/presentation.md +9 -0
  400. package/skills/uipath-troubleshoot/references/activity-packages/python-activities/summary.md +12 -0
  401. package/skills/uipath-troubleshoot/references/activity-packages/system-activities/playbooks/get-asset-activity-bug-silent-failure.md +1 -1
  402. package/skills/uipath-troubleshoot/references/activity-packages/system-activities/playbooks/get-asset-robot-not-authenticated.md +29 -22
  403. package/skills/uipath-troubleshoot/references/activity-packages/system-activities/summary.md +1 -1
  404. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/investigation_guide.md +30 -0
  405. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/overview.md +36 -0
  406. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/deserialize-malformed-input.md +36 -0
  407. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/deserialize-null-input.md +35 -0
  408. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/deserialize-type-mismatch.md +40 -0
  409. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-client-null-reference.md +34 -0
  410. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-connection-failure.md +48 -0
  411. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-timeout.md +40 -0
  412. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/net-http-request-aggregate-failure.md +38 -0
  413. package/skills/uipath-troubleshoot/references/activity-packages/web-activities/summary.md +13 -0
  414. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/investigation_guide.md +55 -0
  415. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/overview.md +82 -0
  416. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/add-picture-failures.md +51 -0
  417. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/append-text-missing-container.md +31 -0
  418. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/append-text-zero-byte-file.md +32 -0
  419. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/export-pdf-com-hang.md +46 -0
  420. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/export-pdf-missing-output-dir.md +32 -0
  421. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/export-pdf-output-path-format.md +35 -0
  422. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/read-text-doc-format.md +30 -0
  423. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/read-text-missing-container.md +29 -0
  424. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/read-text-protected-view.md +32 -0
  425. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-com-busy.md +35 -0
  426. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-file-locked.md +33 -0
  427. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-headers-textboxes-skipped.md +30 -0
  428. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-length-limit.md +30 -0
  429. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-loop-template-overwrite.md +31 -0
  430. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-multiline-formatting.md +31 -0
  431. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-silent-no-substitution.md +32 -0
  432. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/replace-text-version-mismatch.md +30 -0
  433. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-com-interop-failures.md +52 -0
  434. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-com-start-background-session0.md +50 -0
  435. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-export-pdf-com-wrong-thread.md +46 -0
  436. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-open-sharepoint-url-com-command-failed.md +45 -0
  437. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-cannot-create-unknown-type.md +30 -0
  438. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-com-not-installed.md +35 -0
  439. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-file-corrupted.md +34 -0
  440. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-file-path-not-found.md +36 -0
  441. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/playbooks/word-scope-hangs-background-prompt.md +34 -0
  442. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/presentation.md +11 -0
  443. package/skills/uipath-troubleshoot/references/activity-packages/word-activities/summary.md +38 -0
  444. package/skills/uipath-troubleshoot/references/products/integration-service/investigation_guide.md +9 -0
  445. package/skills/uipath-troubleshoot/references/products/integration-service/overview.md +7 -0
  446. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connection-invalid.md +9 -0
  447. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-aggregate-exception.md +30 -0
  448. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-general-exception.md +43 -0
  449. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-null-reference.md +36 -0
  450. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-remote-exception.md +31 -0
  451. package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-runtime-exception.md +40 -0
  452. package/skills/uipath-troubleshoot/references/products/integration-service/summary.md +5 -0
  453. package/skills/uipath-troubleshoot/references/products/maestro/investigation_guide.md +2 -1
  454. package/skills/uipath-troubleshoot/references/products/orchestrator/investigation_guide.md +105 -10
  455. package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-faulted-logon-failure.md +1 -1
  456. package/skills/uipath-troubleshoot/references/summary.md +59 -3
  457. package/skills/uipath-troubleshoot/schemas/evidence.schema.md +48 -0
  458. package/skills/uipath-troubleshoot/schemas/hypotheses.schema.md +22 -7
  459. package/skills/uipath-troubleshoot/schemas/scope-check.schema.md +1 -1
  460. package/skills/uipath-troubleshoot/schemas/state.schema.md +81 -6
  461. package/version-manifest.json +2 -2
  462. package/skills/uipath-data-fabric/SKILL.md +0 -239
  463. package/skills/uipath-data-fabric/references/bulk-import.md +0 -73
  464. package/skills/uipath-data-fabric/references/entity-schema.md +0 -391
  465. package/skills/uipath-data-fabric/references/file-attachments.md +0 -65
  466. package/skills/uipath-maestro-bpmn/.maintenance/README.md +0 -241
  467. package/skills/uipath-maestro-bpmn/.maintenance/check-all.sh +0 -41
  468. package/skills/uipath-maestro-bpmn/.maintenance/check-anchors.sh +0 -83
  469. package/skills/uipath-maestro-bpmn/.maintenance/check-depth.sh +0 -132
  470. package/skills/uipath-maestro-bpmn/.maintenance/check-link-text.sh +0 -123
  471. package/skills/uipath-maestro-bpmn/.maintenance/check-links.sh +0 -70
  472. package/skills/uipath-maestro-bpmn/.maintenance/check-orphans.sh +0 -93
  473. package/skills/uipath-maestro-bpmn/.maintenance/check-plugin-pairs.sh +0 -39
  474. package/skills/uipath-maestro-bpmn/.maintenance/check-real-pack.sh +0 -79
  475. package/skills/uipath-maestro-bpmn/.maintenance/check-template.sh +0 -42
  476. package/skills/uipath-maestro-bpmn/.maintenance/check-uip-commands.sh +0 -266
  477. package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.py +0 -1255
  478. package/skills/uipath-maestro-bpmn/.maintenance/check-validation-fixtures.sh +0 -8
  479. package/skills/uipath-maestro-bpmn/fixtures/validation/README.md +0 -94
  480. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/agent-invocation.bpmn +0 -62
  481. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/bindings_v2.json +0 -37
  482. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/entry-points.json +0 -21
  483. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/operate.json +0 -9
  484. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/package-descriptor.json +0 -10
  485. package/skills/uipath-maestro-bpmn/fixtures/validation/agent-invocation/project.uiproj +0 -7
  486. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/bindings_v2.json +0 -68
  487. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/contract-variants.bpmn +0 -270
  488. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/entry-points.json +0 -25
  489. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/operate.json +0 -9
  490. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/package-descriptor.json +0 -10
  491. package/skills/uipath-maestro-bpmn/fixtures/validation/contract-variants/project.uiproj +0 -7
  492. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/bindings_v2.json +0 -19
  493. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/entry-points.json +0 -25
  494. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/gateway-boundary-error.bpmn +0 -91
  495. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/operate.json +0 -9
  496. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/package-descriptor.json +0 -10
  497. package/skills/uipath-maestro-bpmn/fixtures/validation/gateway-boundary-error/project.uiproj +0 -7
  498. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/bindings_v2.json +0 -4
  499. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/entry-points.json +0 -25
  500. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/imported-brownfield-preservation.bpmn +0 -63
  501. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/operate.json +0 -9
  502. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/package-descriptor.json +0 -10
  503. package/skills/uipath-maestro-bpmn/fixtures/validation/imported-brownfield-preservation/project.uiproj +0 -7
  504. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/bindings_v2.json +0 -52
  505. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/entry-points.json +0 -21
  506. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/integration-service-enriched.bpmn +0 -65
  507. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/operate.json +0 -9
  508. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/package-descriptor.json +0 -10
  509. package/skills/uipath-maestro-bpmn/fixtures/validation/integration-service-enriched/project.uiproj +0 -7
  510. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/bindings_v2.json +0 -4
  511. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/entry-points.json +0 -25
  512. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/linear-process.bpmn +0 -55
  513. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/operate.json +0 -9
  514. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/package-descriptor.json +0 -10
  515. package/skills/uipath-maestro-bpmn/fixtures/validation/linear-process/project.uiproj +0 -7
  516. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/bindings_v2.json +0 -20
  517. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/entry-points.json +0 -17
  518. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/operate.json +0 -9
  519. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/package-descriptor.json +0 -10
  520. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/project.uiproj +0 -7
  521. package/skills/uipath-maestro-bpmn/fixtures/validation/registry-coverage-matrix/registry-coverage-matrix.bpmn +0 -207
  522. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/bindings_v2.json +0 -4
  523. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/entry-points.json +0 -33
  524. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/operate.json +0 -9
  525. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/package-descriptor.json +0 -10
  526. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/project.uiproj +0 -7
  527. package/skills/uipath-maestro-bpmn/fixtures/validation/subprocess-multi-instance/subprocess-multi-instance.bpmn +0 -94
  528. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/bindings_v2.json +0 -124
  529. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/entry-points.json +0 -25
  530. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/operate.json +0 -9
  531. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/package-descriptor.json +0 -10
  532. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/project.uiproj +0 -7
  533. package/skills/uipath-maestro-bpmn/fixtures/validation/wrapper-family-contract/wrapper-family-contract.bpmn +0 -151
  534. package/skills/uipath-maestro-bpmn/references/author/CAPABILITY.md +0 -141
  535. package/skills/uipath-maestro-bpmn/references/author/references/brownfield.md +0 -48
  536. package/skills/uipath-maestro-bpmn/references/author/references/editing-operations.md +0 -75
  537. package/skills/uipath-maestro-bpmn/references/author/references/greenfield.md +0 -41
  538. package/skills/uipath-maestro-bpmn/references/author/references/planning-arch.md +0 -82
  539. package/skills/uipath-maestro-bpmn/references/author/references/planning-impl.md +0 -104
  540. package/skills/uipath-maestro-bpmn/references/author/references/plugins/agents/impl.md +0 -34
  541. package/skills/uipath-maestro-bpmn/references/author/references/plugins/agents/planning.md +0 -38
  542. package/skills/uipath-maestro-bpmn/references/author/references/plugins/api-workflows/impl.md +0 -37
  543. package/skills/uipath-maestro-bpmn/references/author/references/plugins/api-workflows/planning.md +0 -28
  544. package/skills/uipath-maestro-bpmn/references/author/references/plugins/business-rules/impl.md +0 -36
  545. package/skills/uipath-maestro-bpmn/references/author/references/plugins/business-rules/planning.md +0 -29
  546. package/skills/uipath-maestro-bpmn/references/author/references/plugins/call-activity-subprocess/impl.md +0 -67
  547. package/skills/uipath-maestro-bpmn/references/author/references/plugins/call-activity-subprocess/planning.md +0 -29
  548. package/skills/uipath-maestro-bpmn/references/author/references/plugins/connectors/impl.md +0 -29
  549. package/skills/uipath-maestro-bpmn/references/author/references/plugins/connectors/planning.md +0 -33
  550. package/skills/uipath-maestro-bpmn/references/author/references/plugins/gateways/impl.md +0 -32
  551. package/skills/uipath-maestro-bpmn/references/author/references/plugins/gateways/planning.md +0 -34
  552. package/skills/uipath-maestro-bpmn/references/author/references/plugins/hitl/impl.md +0 -42
  553. package/skills/uipath-maestro-bpmn/references/author/references/plugins/hitl/planning.md +0 -30
  554. package/skills/uipath-maestro-bpmn/references/author/references/plugins/integration-service/impl.md +0 -134
  555. package/skills/uipath-maestro-bpmn/references/author/references/plugins/integration-service/planning.md +0 -67
  556. package/skills/uipath-maestro-bpmn/references/author/references/plugins/multi-instance/impl.md +0 -50
  557. package/skills/uipath-maestro-bpmn/references/author/references/plugins/multi-instance/planning.md +0 -29
  558. package/skills/uipath-maestro-bpmn/references/author/references/plugins/queues/impl.md +0 -29
  559. package/skills/uipath-maestro-bpmn/references/author/references/plugins/queues/planning.md +0 -29
  560. package/skills/uipath-maestro-bpmn/references/author/references/plugins/rpa-jobs/impl.md +0 -35
  561. package/skills/uipath-maestro-bpmn/references/author/references/plugins/rpa-jobs/planning.md +0 -29
  562. package/skills/uipath-maestro-bpmn/references/author/references/plugins/script/impl.md +0 -118
  563. package/skills/uipath-maestro-bpmn/references/author/references/plugins/script/planning.md +0 -30
  564. package/skills/uipath-maestro-bpmn/references/author/references/plugins/sequence-flows/impl.md +0 -30
  565. package/skills/uipath-maestro-bpmn/references/author/references/plugins/sequence-flows/planning.md +0 -30
  566. package/skills/uipath-maestro-bpmn/references/author/references/plugins/service-tasks/impl.md +0 -33
  567. package/skills/uipath-maestro-bpmn/references/author/references/plugins/service-tasks/planning.md +0 -31
  568. package/skills/uipath-maestro-bpmn/references/author/references/plugins/signals/impl.md +0 -33
  569. package/skills/uipath-maestro-bpmn/references/author/references/plugins/signals/planning.md +0 -46
  570. package/skills/uipath-maestro-bpmn/references/author/references/plugins/start-end-events/impl.md +0 -59
  571. package/skills/uipath-maestro-bpmn/references/author/references/plugins/start-end-events/planning.md +0 -37
  572. package/skills/uipath-maestro-bpmn/references/author/references/plugins/waits-triggers/impl.md +0 -40
  573. package/skills/uipath-maestro-bpmn/references/author/references/plugins/waits-triggers/planning.md +0 -34
  574. package/skills/uipath-maestro-bpmn/references/author/references/supported-elements.md +0 -123
  575. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/README.md +0 -29
  576. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/agent-job.md +0 -36
  577. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/api-workflow.md +0 -29
  578. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/business-rule.md +0 -18
  579. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/call-activity.md +0 -56
  580. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/hitl.md +0 -17
  581. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/http-request.md +0 -119
  582. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/queue.md +0 -21
  583. package/skills/uipath-maestro-bpmn/references/author/references/task-recipes/rpa-job.md +0 -23
  584. package/skills/uipath-maestro-bpmn/references/author/references/validation.md +0 -118
  585. package/skills/uipath-maestro-bpmn/references/shared/bpmn-xml-contract.md +0 -197
  586. package/skills/uipath-maestro-bpmn/references/shared/cli-conventions.md +0 -46
  587. package/skills/uipath-maestro-bpmn/references/shared/error-handling.md +0 -82
  588. package/skills/uipath-maestro-bpmn/references/shared/variables-bindings-expressions.md +0 -150
  589. package/skills/uipath-maestro-bpmn/references/shared/wrapper-shells.md +0 -554
  590. /package/skills/uipath-maestro-bpmn/references/{shared/expression-authoring.md → expression-authoring.md} +0 -0
  591. /package/skills/uipath-maestro-bpmn/references/{shared/public-safety.md → public-safety.md} +0 -0
  592. /package/{agents → skills/uipath-rpa/agents}/uipath-project-discovery-agent.md +0 -0
@@ -0,0 +1,148 @@
1
+ # element.json Reference
2
+
3
+ The core connector definition at `app/element/element.json`. Udon reads it to know how
4
+ to authenticate, call vendor APIs, map parameters, and apply hooks.
5
+
6
+ **How it's edited.** Use the orchestrator verbs — `init` (creates the shell; seeds the
7
+ connector-level fields and `base.url`), `auth set` (the whole authentication block +
8
+ config keys), `activity create` (`resources[]` + the SR), `auth system create` (system
9
+ `resources[]` entries). Edit a long-tail field no verb exposes (`displayOrder`,
10
+ `extended`, `typeOauth`, `cloneable`, a single param) surgically with `state patch`. The
11
+ command map and workflows live in SKILL.md — don't re-derive them here.
12
+
13
+ ## Top-Level Fields
14
+
15
+ | Field | Type | Description |
16
+ |-------|------|-------------|
17
+ | `key` | string | Element key. For a design connector: `design-{org}-{slug}` (derived by `init` from `--name` + `--organization`). |
18
+ | `name` / `description` | string | Catalog display values (`init --name` / `--description`). |
19
+ | `hub` | string | Legacy/obsolete. Paths work with or without the hub prefix. Don't set on new connectors. |
20
+ | `authentication` | object | `{ "type": "oauth2" }` — primary auth type. Multi-auth uses an `authentication.type` COMBO config with groupControl. Owned by `auth set`. |
21
+ | `typeOauth` | boolean | `true` if primary auth is any OAuth/JWT variant. Set by `auth set`. |
22
+ | `configuration` | array | Config entries (auth creds, base URL, pagination, events). See [configuration.md](configuration.md). |
23
+ | `resources` | array | One entry per HTTP method per endpoint. |
24
+ | `parameters` | array | Global parameters (headers, auth mappings). Same schema as resource parameters. Add a header with `init --header VendorName=value`; remove with `init header delete <VendorName>`. |
25
+ | `hooks` | array | Global hooks applied to ALL requests (`activity hook create --global`). See [hooks.md](hooks.md). |
26
+ | `paginatorVersion` | int/string | Paginator engine: `2` standard, `"V3"` newer. |
27
+ | `publishStatus` | string | `"draft"` or `"published"`. |
28
+ | `protocolType` | string | Almost always `"http"`. |
29
+ | `cloneable` / `extended` / `transformationsEnabled` | boolean | Usually true / false / true. |
30
+ | `elementMetadata` | object | Embedded object INSIDE element.json (`key`, `name`, `authenticationTypes[]`, `discovery`, `api`, `bulk`, `pollingResources`) — distinct from the separate `element-metadata.json` file, which holds catalog flags (`hasEvents`, `hasHttpRequest`, categories, and `latestVersion` — `init` seeds it to `"1.0.0"`). |
31
+
32
+ ## resources[]
33
+
34
+ Each entry = ONE HTTP method for ONE endpoint. An "accounts" resource created with
35
+ GET/GETBYID/POST/PATCH/DELETE has 5 entries (one `activity create` call writes them all).
36
+
37
+ | Field | Required | Description |
38
+ |-------|----------|-------------|
39
+ | `method` | yes | Udon method: GET, GETBYID, POST, PATCH, PUT, DELETE. |
40
+ | `path` | yes | Udon path / IS slug (e.g. `/accounts`). Hub prefix is legacy/optional. |
41
+ | `vendorPath` | yes | Vendor API path. May differ from `path` (`--vendor-path`, per-method `--method-vendor-path`). |
42
+ | `vendorMethod` | yes | Vendor HTTP method (usually same as `method`). |
43
+ | `type` | yes | Resource type — see below (`--resource-type`). |
44
+ | `standardResourceName` | no | Canonical link to the SR file. Absent on system resources. |
45
+ | `rootKey` | no | JSON path to the list array (`--root-key`, e.g. `"value"`, `"data.items"`). |
46
+ | `nextPageKey` | no | Non-standard next-page token location (`--next-page-key`). |
47
+ | query-param vendor names | no | On a LIST GET, the CEQL filter + pagination query params default to vendor names `where`/`pageSize`. Override to the vendor's real names with `--filter-param` (e.g. `sysparm_query`), `--page-size-param` (e.g. `sysparm_limit`, `per_page`), and `--offset-param` (e.g. `sysparm_offset`, `page`) — the offset param is ADDED only when named. These set `vendorName` while the activity-input `name` stays canonical, and never apply to by-id reads. |
48
+ | `parameters` | no | Per-resource parameter mappings (`activity param create`; see below). |
49
+ | `hooks` | no | Hook refs for this resource+method (`activity hook create`). |
50
+ | `expressions` | no | `requestBodyRoot` / `responseBodyRoot` for JSON-path wrap/unwrap. |
51
+
52
+ For by-id methods (`GETBYID`/`PATCH`/`PUT`/`DELETE`) `activity create` auto-adds the
53
+ `/{primaryKey}` path param — ALWAYS for `GETBYID`, and for the write methods only on a CRUD
54
+ activity (one that also has `GET`/`GETBYID`); a write-only activity keeps its base path.
55
+ Details in [standard-resources.md](standard-resources.md) §"by-id methods".
56
+
57
+ ### Resource types
58
+ `api` (discoverable, in CRUD dropdowns), `apiNoDocumentation` (hidden but callable),
59
+ `apiElementRequest` (routes back through Udon; still appears in CRUD unless `isHidden`),
60
+ plus the 13 **system types** (no SR file) created via `auth system create`:
61
+ `onProvision`, `onDelete`, `onRefresh`, `provisionAuthValidation`, `oauthOnAuthroizeUrl`
62
+ (historical typo — keep it), `oauthOnTokenExchange`, `oauthOnTokenRefresh`,
63
+ `oauthOnTokenRevoke`, `oauth1OnTokenRequest`, `oauth2ClientCredentials`,
64
+ `onProvisionWebhook`, `onDeleteWebhook`, `onProvisionCacheVendorDataAsync`.
65
+ [system-resources.md](system-resources.md) is the authoritative list with override paths.
66
+
67
+ ## parameters[] (global and per-resource)
68
+
69
+ Same schema at both levels. element.json is the **source of truth** for contract fields
70
+ (`name`, `vendorName`, `type`, `vendorType`, `dataType`, `vendorDataType`, `required`,
71
+ `description`, `source`); linked SR params auto-reconcile on every write. SR-only UI
72
+ fields (`displayName`, `requestCurated`, `sortOrder`, `design`) are preserved. Add with
73
+ `activity param create --resource <name> --method <VERB> --name <p> --type <type>` (`--type`
74
+ e.g. `path`/`query`/`header`/`body` — the full accepted enum is listed below).
75
+
76
+ | Field | Required | Description |
77
+ |-------|----------|-------------|
78
+ | `name` | yes | Udon-side name. For `type:"value"`, this IS the literal value. |
79
+ | `vendorName` | yes | Vendor-side name. |
80
+ | `type` | yes | WHERE the value comes from (source). |
81
+ | `vendorType` | yes | WHERE it goes in the vendor request (destination). |
82
+ | `dataType` / `source` / `required` / `design` | no | Hints, request/response, requiredness, UI. |
83
+
84
+ `type`/`vendorType` values: `configuration`, `header`, `path`, `query`, `file`, `form`,
85
+ `multipart`, `value`, `customValue`, `body`, `bodyField`, `prevBody`, `prevBodyField`,
86
+ `bodyToken`, `no-op`.
87
+
88
+ Common patterns:
89
+ ```json
90
+ {"name": "application/json", "vendorName": "Accept", "type": "value", "vendorType": "header"}
91
+ {"name": "id", "vendorName": "customerId", "type": "path", "vendorType": "path"}
92
+ {"name": "oauth.user.token", "vendorName": "Authorization", "type": "configuration", "vendorType": "header"}
93
+ {"name": "pageSize", "vendorName": "limit", "type": "query", "vendorType": "query"}
94
+ ```
95
+
96
+ ### Static / constant query parameters — use `type:"value"`, NOT a query string
97
+
98
+ A **constant** query param the connector must always send (an API version, a fixed
99
+ `format=json`, a feature flag) MUST be modelled as a `value` param whose `name` holds the
100
+ literal value and whose `vendorType` is `query`:
101
+ ```json
102
+ {"name": "2023-07-31", "vendorName": "api-version", "type": "value", "vendorType": "query"}
103
+ ```
104
+ This sends `?api-version=2023-07-31` exactly as written and never prompts the connection
105
+ user. **Do NOT leave the constant in the vendor path as a query string** (e.g.
106
+ `vendorPath: "/info?api-version=2023-07-31"`): on import the server parses that `?k=v`
107
+ into a `type:"query"` param that is *required user input with no value*, so every runtime
108
+ call (and `provisionAuthValidation` / connection test) fails with "value for 'api-version'
109
+ not passed". This applies everywhere a vendor path is set — activity resources AND the
110
+ auth-validation path (`auth set --validation-vendor-path`). The CLI `activity`/`auth`
111
+ verbs now auto-extract a trailing `?k=v` into a `value` param for you, so prefer passing a
112
+ clean base path; if you ever hand-edit `element.json`, follow the rule yourself. A `value`
113
+ param is stored in **plaintext** — only for non-secret constants; a secret belongs in an
114
+ encrypted `configuration` entry referenced via `type:"configuration"`, never a literal.
115
+
116
+ ### Value interpolation (`${...}`)
117
+ For `type:"value"` params, Udon substitutes `${<namespace>.<key>}` in the `name` field at
118
+ request time. Namespaces: `configuration`, `header`, `body`. Special tokens (no prefix):
119
+ `${webhookCallbackUrl}`, `${elementWebhookCallbackUrl}`, `${encodedId}`, `${date}`,
120
+ `${date:FORMAT}` / `${gmtDate:FORMAT}` / `${dateTimeZone:TZ:FORMAT}` (event-poller only — see [events.md](events.md)).
121
+ This is how a prefix like `Bearer <token>` is applied without a hook:
122
+ ```json
123
+ {"name": "Bearer ${configuration.oauth.user.token}", "vendorName": "Authorization", "type": "value", "vendorType": "header"}
124
+ ```
125
+ Unresolved tokens are left verbatim (silent failure) — validate spellings against
126
+ `configuration[]`. No escape for a literal `{`. Prefer `type:"configuration"` for a 1:1
127
+ map; use `type:"value"` + interpolation when you need a prefix/suffix/composition.
128
+
129
+ ## Editing surgically with `state patch`
130
+ The no-merge round-trip rule (query → edit → patch the COMPLETE object back) is SKILL.md
131
+ Rule 5. element.json-specific pointer detail: resource pointers URL-encode the path
132
+ (`/contacts` → `%2Fcontacts`, e.g. `element.json/resources/GET/%2Fcontacts`);
133
+ `element-metadata.json` has no addressable sub-paths (round-trip the whole file); `--op remove`
134
+ deletes one addressed item (e.g. a parameter by index); `state query --help` prints the grammar.
135
+
136
+ ## Hook execution order
137
+ Global hooks wrap resource hooks around the vendor call. Canonical order, context vars,
138
+ naming, and the token-derived base-URL pattern: [hooks.md](hooks.md).
139
+
140
+ ## Expressions
141
+ `requestBodyRoot` wraps the body (`"contact"` → `{"contact": ...}`); `responseBodyRoot`
142
+ unwraps the response (`"data.items"`). Both are real element.json fields but have NO builder
143
+ flag — author them by `state patch` of the whole resource entry (`"expressions": {...}`), then
144
+ `validate`. For a plain list unwrap prefer `rootKey` (`--root-key`), which the CLI does expose.
145
+
146
+ ## See also
147
+ - [configuration.md](configuration.md), [standard-resources.md](standard-resources.md),
148
+ [hooks.md](hooks.md), [system-resources.md](system-resources.md), [auth.md](auth.md)
@@ -0,0 +1,132 @@
1
+ # Events Reference
2
+
3
+ Events detect vendor-side changes (CREATED / UPDATED / DELETED). Two mechanisms:
4
+ **polling** (periodic API calls) and **webhooks** (vendor pushes notifications). An event
5
+ source is always an existing activity — wire it AFTER the activity exists.
6
+
7
+ ## How events are configured NOW
8
+
9
+ `uip is connectors builder trigger create` is the single entry point, and it **authors a
10
+ polling trigger** — it always wires the polling loop and always writes a polling-shaped SR
11
+ `metadata.events` (`eventMode: ["polling"]`), regardless of `--event-kind`. One call seeds the
12
+ event config bundle, writes the per-resource poller config, sets the SR `metadata.events`, and
13
+ flips `hasEvents`. The activity must already exist — `trigger create` HARD-FAILS if its SR is
14
+ missing. Runnable workflow: SKILL.md → "Add a polling trigger".
15
+
16
+ **Webhook caveat.** `--event-kind webhook | all` only adds the webhook CONFIG KEYS (below) to
17
+ the bundle; it does NOT implement webhook delivery and does NOT change the polling-shaped SR
18
+ metadata. A working webhook still needs `onProvisionWebhook`/`onDeleteWebhook` system resources
19
+ plus a post hook (see [system-resources.md](system-resources.md), [hooks.md](hooks.md)). And
20
+ `--updated-date-field` is REQUIRED even for `webhook`/`all`.
21
+
22
+ Key flags (`trigger create`):
23
+ - `--resource-name <name>` — existing activity/standard-resource to wire (required).
24
+ - `--event-kind polling | webhook | all` — which config bundle to seed (default `polling`).
25
+ - `--updated-date-field <field>` — vendor last-modified field, e.g. `LastModifiedDate` (REQUIRED for every `--event-kind`).
26
+ - `--created-date-field <field>` — defaults to `--updated-date-field`.
27
+ - `--id-field <field>` — primary key (defaults to `Id`).
28
+ - `--date-format <mask>` / `--created-date-format <mask>` — timestamp mask (created defaults to updated).
29
+ - `--event-types <csv>` — defaults to `CREATED,UPDATED,DELETED`.
30
+ - `--polling-url <url>` — explicit; auto-generated from the GET path when omitted.
31
+ - `--date-timezone <tz>` — default `GMT`.
32
+ - `--polling-resource-label <label>` — label in `elementMetadata.pollingResources`.
33
+ - `--override <key>=<value>` — per-entry defaultValue override for the event preset (repeatable).
34
+
35
+ These are the flags with non-obvious defaults/semantics; `trigger create --help` is the
36
+ always-current full list.
37
+
38
+ ## What gets written
39
+
40
+ 1. `element-metadata.json → hasEvents: true` (without it, events never fire).
41
+ 2. `element.json → configuration[]` — the event config keys (the preset bundle).
42
+ 3. `standard-resources/<name>.json → metadata.events` — per-resource event metadata.
43
+ 4. `element.json/configuration/event.poller.configuration` — the polling JSON blob below.
44
+
45
+ ## Polling config keys (the bundle)
46
+
47
+ `event.notification.enabled` (master switch), `event.vendor.type` (`polling` / `webhook`),
48
+ `event.poller.refresh_interval` (minutes, default 15), `event.poller.configuration`
49
+ (JSON blob below), `event.notification.callback.url`, `event.raw.enabled`.
50
+
51
+ ## event.poller.configuration JSON
52
+
53
+ Each resource is keyed by its **normalized resource name** — `trigger create` derives the key
54
+ as `resourceName` with `/` and `::` replaced by `_` (so `accounts` → `accounts`, `crm/leads`
55
+ → `crm_leads`). It is NEVER literally `"events"`.
56
+ ```json
57
+ {
58
+ "accounts": {
59
+ "url": "/accounts?where=LastModifiedDate>'${gmtDate:yyyy-MM-dd'T'HH:mm:ss.SSS'Z'}'",
60
+ "idField": "Id",
61
+ "datesConfiguration": {
62
+ "updatedDateField": "LastModifiedDate",
63
+ "updatedDateFormat": "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
64
+ "updatedDateTimezone": "GMT",
65
+ "createdDateField": "CreatedDate",
66
+ "createdDateFormat": "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
67
+ },
68
+ "createdCheckTolerance": 10
69
+ }
70
+ }
71
+ ```
72
+ Per-resource fields: `url` (required — IS slug path with the generated `${gmtDate:FORMAT}` /
73
+ `${dateTimeZone:TZ:FORMAT}` poll-time placeholder; see the placeholder note below),
74
+ `idField` (required — unique key), `datesConfiguration` (required),
75
+ `createdCheckTolerance` (sec, default 10), `filterByUpdatedDate`, `filterByCurrentDate`,
76
+ `pageSize`, `pollDelay`, `batchSize`, `postHooks`, `postHookPipelines`, `useLastPollDate`,
77
+ `useHydrationBeforePostHooks`, `objectName`, `parameters`.
78
+
79
+ `datesConfiguration`: `updatedDateField`, `updatedDateFormat` (Java SimpleDateFormat),
80
+ `updatedDateTimezone` (default GMT), `createdDateField`, `createdDateFormat`
81
+ (defaults to updated), `createdDateTimezone`.
82
+
83
+ `trigger create` GENERATES the poll-time placeholder from `--date-timezone`: the default `GMT`
84
+ yields `${gmtDate:FORMAT}`; any other timezone yields `${dateTimeZone:<TZ>:FORMAT}`. (`${date:FORMAT}`,
85
+ local time, is also a valid runtime token if you hand-author a URL.) Each is replaced at runtime
86
+ with the last poll time; the FORMAT must match what the vendor accepts (e.g. Salesforce
87
+ `yyyy-MM-dd'T'HH:mm:ss.SSSZ`, most REST `yyyy-MM-dd'T'HH:mm:ss'Z'`, ISO `yyyy-MM-dd'T'HH:mm:ssXXX`,
88
+ or epoch millis).
89
+
90
+ To tweak one key after `trigger create`, `state query` the entry then `state patch` the
91
+ complete object back (patch REPLACES — see [debugging.md](debugging.md)).
92
+
93
+ ## Webhook config keys (`--event-kind webhook` or `all`)
94
+
95
+ `event.notification.callback.headers`, `event.notification.signature.key` (HMAC),
96
+ `event.notification.basic.username`, `event.notification.basic.password`,
97
+ `event.notification.instance.finder`. Webhooks usually need `onProvisionWebhook` /
98
+ `onDeleteWebhook` system resources + a post hook (see
99
+ [system-resources.md](system-resources.md), [hooks.md](hooks.md)).
100
+
101
+ ## SR-level event metadata (`metadata.events`)
102
+
103
+ `trigger create` writes this — DON'T hand-author it. The shape periodic requires (a flat
104
+ `{type:"polling", …}` is silently IGNORED — `event-operations` comes back empty and the trigger
105
+ never fires):
106
+
107
+ ```json
108
+ "events": {
109
+ "eventMode": ["polling"],
110
+ "polling": {
111
+ "configuration": {
112
+ "datesConfiguration": { "updatedDateField": "...", "updatedDateFormat": "...",
113
+ "updatedDateTimezone": "GMT", "createdDateField": "...", "createdDateFormat": "..." },
114
+ "idField": "id",
115
+ "url": "/tickets?where=modifiedTime>'${gmtDate:...}'",
116
+ "useLastPollDate": true
117
+ },
118
+ "eventTypes": [
119
+ { "operation": "CREATED", "displayName": "Record Created", "description": "..." },
120
+ { "operation": "UPDATED", "displayName": "Record Updated", "description": "..." }
121
+ ]
122
+ }
123
+ }
124
+ ```
125
+
126
+ Each `eventTypes[]` entry: `operation` (CREATED / UPDATED / DELETED / a curated op like
127
+ TICKET_CLOSED), `displayName`, `description`, optional `objectName`. Top-level `eventMode` is the
128
+ array `["polling"]` (or `["webhooks"]` / `["fps"]`). Confirm a published trigger surfaced with
129
+ `uip is connectors event-operations <custom-key>` — a non-empty list means it's wired.
130
+
131
+ ## See also
132
+ - [configuration.md](configuration.md), [debugging.md](debugging.md), [standard-resources.md](standard-resources.md)
@@ -0,0 +1,198 @@
1
+ # Hooks Reference
2
+
3
+ Hooks are JavaScript files that transform requests before they hit the vendor
4
+ (`preRequest`) or transform responses before returning to the caller (`postRequest`).
5
+
6
+ ## Decide first: hook or built-in?
7
+
8
+ A hook is JS you maintain forever, run in a sandboxed JS engine. **Reach for one only when no
9
+ declarative feature does the job** — across shipped connectors the largest category of hooks
10
+ (static headers, constant query params, one-line response unwraps) is avoidable. Check this
11
+ table first:
12
+
13
+ | You want to… | Use this built-in (NO hook) | Write a hook ONLY when… |
14
+ |---|---|---|
15
+ | Add a constant/credential header (`Authorization: Bearer`, `Accept`) | `type:"value"` param + `${configuration.<key>}`, or `type:"configuration"` for a 1:1 map — [element-json.md](element-json.md) §"Value interpolation" | the value is *computed* (a signature, JWT-derived id, conditional on input) |
16
+ | Send a constant query param (`api-version`, `format=json`) | `type:"value"` query param — [element-json.md](element-json.md) §"Static / constant query parameters" | the param's presence/value depends on input |
17
+ | Per-connection host / region / instance in a URL | `{placeholder}` in the URL + auto-seeded config — [configuration.md](configuration.md) §"Templated (per-instance / per-region / per-workspace) hosts" | the host must be *derived* from a token/response and validated |
18
+ | Return the inner list from a wrapper (`{data:[…]}`, `{value:[…]}`) | `rootKey` (`activity create --root-key`) — [element-json.md](element-json.md) §resources[] | the reshape flattens, computes, or joins fields |
19
+ | Wrap the request body (`{…}` → `{"contact":…}`) | `requestBodyRoot` — no builder flag; see [element-json.md](element-json.md) §Expressions | the body is restructured by input value |
20
+ | Rename a list/filter/page param (or any param) to the vendor's name | `--filter-param` / `--page-size-param` / `--offset-param` (generated list params), else `activity param create --vendor-name` — [element-json.md](element-json.md) §resources[] | the value must be transformed, not just renamed |
21
+ | Standard offset / cursor / page pagination | pagination preset ([configuration.md](configuration.md) §"Pagination keys") + `activity create --pagination-type` / `--next-page-key` (`paginatorVersion` is top-level — [element-json.md](element-json.md)) | the cursor is derived from the payload with stateful logic |
22
+ | Verify credentials at connect time | `provisionAuthValidation` system resource — [system-resources.md](system-resources.md) §provisionAuthValidation | only to ADD a postRequest hook for a *computed* `connection_identity` or a custom vendor-error message — never to replace the check |
23
+ | Show a connection's display name from a plain response/config field | `connection.identity.lookup.key` config = the field's path (in the base preset; add via `state patch` if absent) — no hook | the identity must be *computed/combined* from several values |
24
+
25
+ If the third column applies — or your need is in the next list — a hook is the correct tool.
26
+
27
+ ## Hooks that earn their keep
28
+
29
+ These genuinely need JS — no declarative feature expresses them (request-side → `preRequest`,
30
+ response-side → `postRequest`). Each is a real shipped pattern:
31
+
32
+ - **Delimited-string ↔ JSON** — CSV recipients → `[{emailAddress}]`, `name:value;` pairs → arrays, a comma list → a typed object (often with input validation).
33
+ - **Query-language assembly** — build JQL / SOQL / CEQL / OData `$filter` (or dialect SQL) from several typed params.
34
+ - **Conditional body reshape by value** — enum label → vendor code, `field` → `field@odata.bind`, flat fields → nested arrays.
35
+ - **Multipart / upload-session / MIME assembly** — create-upload-session then hand off the URL; file-vs-`urlSource` dual mode.
36
+ - **Multi-call orchestration** — a secondary call via `require('axios')`, a thread→run→poll state machine, read-modify-write. Chains via `request_previous_response`.
37
+ - **Object-discovery metadata synthesis** — vendor field schema → typed UiPath field metadata (`type`/`format`/`mask`/`enum`) at runtime.
38
+ - **Connection facts derived from a token/response** — instance/base URL, org/cloud/tenant id (JWT decode), validated and persisted. Recipe below.
39
+ - **`connection_identity` (computed)** — `done({connection_identity: name})` when the display name must be built/combined; a plain field uses the `connection.identity.lookup.key` config (no hook).
40
+ - **Context-dependent error rewriting** — a raw 4xx → actionable guidance ("wrong region — verify .com/.in/.eu"), or eventual-consistency → retry. (NOT a bare pass-through.)
41
+ - **Conditional status-code mapping** — 304→empty 200, 409→200, a 202 async callback.
42
+ - **Stateful polling cursors** — per-entity token maps, delta-link self-healing, last-id cursors. Beyond the pagination preset.
43
+ - **Vendor quirks no flag covers** — empty-body / strip `Content-Type`, path `decodeURIComponent`, custom date formats, dynamic signatures (RS256 JWT), deeply-nested array→object hoist (find-by-attribute), chunked/streamed response reassembly.
44
+
45
+ ## Recognizing an avoidable hook
46
+
47
+ Patterns shipped connectors hand-wrote when a built-in (table above) would do — delete or never add:
48
+
49
+ - **Anything in the decision table's left column** — plain response unwrap (`response_body.value`/`.data`, the biggest cluster), static/credential header, constant query param, host templating, body wrap, param rename.
50
+ - **Constant body fields** (`enableAutoReply:false`) → a `type:"value"` param with `vendorType:"bodyField"`.
51
+ - **Bare error pass-through** (`if(response_iserror){done();return;}` with nothing after) — delete it; the runtime already surfaces vendor errors.
52
+ - **The same response transform copied across resources** (e.g. de-prefixing Graph `@odata.*` keys — itself hook-only: the builder has no declarative response-key rename) — make it one `--global` hook (see §Naming).
53
+
54
+ ## Authoring a hook
55
+
56
+ Use `uip is connectors builder activity hook create` (NOT a standalone `hook create`). It writes
57
+ the `.js` under `hooks/` and registers it in element.json unless `--no-auto-register`.
58
+
59
+ **You write the hook body; the CLI just places and registers it** — there are no per-shape
60
+ scaffold flags. Author the `.js` (the decision table above + `activity hook create --help`, which
61
+ lists the in-scope vars and the `done()` contract, give you everything), then attach it:
62
+
63
+ ```bash
64
+ # resource hook from an agent-written JS file
65
+ uip is connectors builder activity hook create --resource-name accounts --method GET \
66
+ --hook-type postRequest --custom-code-file ./accounts-postRequest.js
67
+
68
+ # global hook
69
+ uip is connectors builder activity hook create --hook-type preRequest --global \
70
+ --custom-code-file ./global-pre.js
71
+ ```
72
+ Scope with `--resource-name` + `--method`, or `--global`; `--hook-type preRequest|postRequest`;
73
+ supply the body with `--custom-code-file <path>` (or `--custom-code <js>`). With no body it writes
74
+ a minimal editable stub. Run `activity hook create --help` for the rest (`--context-params`, `--no-auto-register`).
75
+
76
+ ## Where they live
77
+
78
+ Files in `app/element/hooks/*.js`; registered in element.json `resources[].hooks[]`
79
+ (resource-level) or the top-level `hooks[]` (`--global`).
80
+
81
+ ## Execution order
82
+
83
+ 1. Global preRequest → 2. Resource preRequest → [vendor call] → 3. Resource postRequest
84
+ → 4. Global postRequest. Global hooks always run, even when resource hooks exist.
85
+
86
+ ## Hook reference object
87
+
88
+ ```json
89
+ {"mimeType": "application/javascript", "type": "preRequest", "bodyOrRef": true, "ref": "resource-accounts-GET-preRequest.js", "contextParams": "request_vendor_body,configuration"}
90
+ ```
91
+ `mimeType` (always `application/javascript`), `type` (`preRequest` / `postRequest`),
92
+ `bodyOrRef` (always `true` — the hook body lives in the referenced file, not inline), `ref`
93
+ (filename in `hooks/` — the canonical link), `contextParams` (comma-separated context vars).
94
+
95
+ **`contextParams` is the runtime binding allow-list** — a variable is injected only if it is listed,
96
+ so a wrong list means the vars your code reads come back `undefined` (a silent break). **You don't
97
+ manage it:** `activity hook create` derives it from your hook body, binding exactly the variables the
98
+ code references. Pass `--context-params` only as an escape hatch — to add `multipart_hook_context_items`
99
+ (opt-in; never auto-injected) or to deliberately override the derived set.
100
+
101
+ ## Naming
102
+
103
+ `activity hook create` derives the filename. Resource:
104
+ `resource-{Resource}-{METHOD}-{preRequest|postRequest}.js`; global:
105
+ `global-preRequest.js` / `global-postRequest.js`. Each resource+method+phase maps to its own
106
+ file — you cannot point two resources at one shared file, so when two resources need the same
107
+ logic you copy it. When ONE transform should apply to every request/response (and is safe to run
108
+ on all of them — else guard it inside the hook), write it once as a `--global` hook instead of copying.
109
+
110
+ ## JS engine (Denali)
111
+
112
+ Hooks run in Udon's **Denali** engine, which supports modern JS — shipped hooks freely use
113
+ optional chaining (`?.`), nullish coalescing (`??`), `async`/`await`, and `require()` for a small
114
+ module set: `axios` (secondary HTTP calls — the basis of multi-call orchestration), `crypto`, `url`,
115
+ `querystring`, `util`, `buffer`, `zlib`, `lodash`, `jmespath`, `moment` (the full menu prints in
116
+ `activity hook create --help`). Match the surrounding connector's style. **Every code path MUST end
117
+ with an explicit `done()`** (or `done({...})`) — a hook returns through that call, not via `return`.
118
+
119
+ ## Context vars (what's in scope)
120
+
121
+ A hook reads a fixed set of variables and returns via `done({...})` — never `return`, on **every**
122
+ path. *read* = readable input; *read/write* = readable AND returnable via `done()`; *done()-only* =
123
+ NOT injected (you can't read it; it only has meaning when returned, and needs no `contextParams`
124
+ entry). The full per-variable contract is in `activity hook create --help`; the commonly used set:
125
+
126
+ **preRequest**
127
+
128
+ | var | use | notes |
129
+ |---|---|---|
130
+ | `request_body_map` | read | the curated request body **as a map** — read fields directly (`request_body_map.group`), no `input[0]` wrapper |
131
+ | `request_parameters`, `request_headers`, `request_path_variables` | read | the incoming call |
132
+ | `request_expression` | read | CEQL `where` → `[{attribute,value,operator}]` |
133
+ | `request_previous_response` | read | predecessor's response in a chained resource |
134
+ | `configuration` | read | instance config map — **read-only in preRequest** |
135
+ | `request_vendor_body` | read/write | what's sent to the vendor (string on read; list\|map\|string on write) |
136
+ | `request_vendor_parameters`, `request_vendor_headers`, `request_vendor_method` | read/write | what's sent to the vendor |
137
+ | `request_vendor_path` | read/write | what's sent; **a value starting with `http` becomes the full request URL** |
138
+ | `request_root_key`, `multipart_hook_context_items` | read/write | nest the body / multipart items |
139
+ | `continue: false` | done()-only | skip the vendor call — **the postRequest hook still runs** |
140
+ | `response_body` / `response_status_code` / `response_error_message` | done()-only | short-circuit a response without calling the vendor |
141
+
142
+ **postRequest**
143
+
144
+ | var | use | notes |
145
+ |---|---|---|
146
+ | `response_body` | read/write | the parsed vendor response — **read it here**, and return it to reshape |
147
+ | `response_iserror` | read | `true` unless HTTP **200–207**; read-only (returning it does nothing) |
148
+ | `response_body_raw`, `response_headers`, `response_status_code`, `response_root_key` | read/write | |
149
+ | `request_*`, `request_previous_response` | read | values as sent to the vendor |
150
+ | `configuration` | read/write | **writable here** — persist derived per-connection values (recipe below) |
151
+ | `multipart_hook_context_items` | read/write | |
152
+ | `response_error_message` | done()-only | converts the call to an error (status from `response_status_code`, else 400) |
153
+ | `connection_identity` | done()-only | set the connection's display name (honored in **both** phases) |
154
+ | `metadata_merge` / `merge_objects` | done()-only | object-discovery resources only |
155
+
156
+ `configuration` is the one var whose write-ability differs by phase (read-only pre, writable post): a
157
+ preRequest `configuration` write has no effect — persist derived per-connection values in a
158
+ postRequest hook (recipe below).
159
+
160
+ ## Pattern: base URL (or any per-connection value) derived from a token response
161
+
162
+ Some vendors return the instance/base URL only in the token response (Salesforce
163
+ `instance_url`). There is NO vendor-specific base-url flag — `init --base-url` is static.
164
+ The default OAuth exchange isn't directly hookable, so author a system resource to hang the
165
+ hook on (`auth system create`): an `oauthOnTokenExchange` override (for a field in the token
166
+ response) or an `onProvision` resource (for a value fetched by a follow-up authenticated call) —
167
+ see [system-resources.md](system-resources.md). Its postRequest hook reads the value, VALIDATES
168
+ it (https + allowlisted host), then persists it into THIS connection's config with
169
+ `done({ configuration: {…} })` — the write-back shipped connectors use for tokens. Do **NOT**
170
+ `state patch` it: that edits the connector's static default at authoring time and bakes one
171
+ org's URL into every connection. NEVER log the token.
172
+
173
+ ```javascript
174
+ // postRequest on the token exchange — extract + validate instance_url, never log response_body (holds the token)
175
+ var url = response_body && response_body.instance_url;
176
+ var ok = false;
177
+ if (typeof url === 'string' && url.indexOf('https://') === 0) { // require https
178
+ var host = url.replace('https://', '').split('/')[0].split(':')[0].toLowerCase();
179
+ var allowed = ['.my.salesforce.com', '.force.com']; // SUFFIX allowlist
180
+ for (var i = 0; i < allowed.length; i++) {
181
+ // anchor to the END of the host so 'my.salesforce.com.evil.com' can't pass
182
+ if (host.length > allowed[i].length &&
183
+ host.lastIndexOf(allowed[i]) === host.length - allowed[i].length) { ok = true; break; }
184
+ }
185
+ }
186
+ if (!ok) { done({ response_status_code: 400, response_error_message: 'invalid instance_url' }); return; }
187
+ done({ configuration: { 'base.url': url } }); // persists to THIS connection only
188
+ ```
189
+ Keep secrets out of logs, output, and example commands (SKILL.md Rule 9).
190
+
191
+ ## Hook hygiene
192
+
193
+ - **No `console.log`** — Denali has no logger and stray output leaks into responses. Remove it before validating.
194
+ - **No dead hooks** — delete 0-byte / no-op hook files; an unused `ref` is a `validate` and review smell.
195
+ - **No time-bomb logic** — never hard-code an expiring credential or a "remove in 3 weeks" branch; fix the auth config instead.
196
+
197
+ ## See also
198
+ - [element-json.md](element-json.md), [debugging.md](debugging.md), [system-resources.md](system-resources.md)
@@ -0,0 +1,78 @@
1
+ # Connector Overview — the mental model
2
+
3
+ A connector wraps a vendor's REST API into UiPath Studio activities and triggers.
4
+ **Udon** (the Integration Service runtime) sits between Studio and the vendor API,
5
+ standardising pagination, authentication, parameter mapping, and error handling.
6
+ For the commands that build all of this, see [SKILL.md](../SKILL.md) — this file is
7
+ depth only (no command map, no workflows).
8
+
9
+ **Glossary** (used throughout these references): **Udon** = the runtime executor that
10
+ renders the connection form, runs the auth flow, calls the vendor, and applies hooks at
11
+ request time. **periodic** = the build/template tooling that validates and packages the
12
+ connector on disk. **IS** = Integration Service (the UiPath product); an **IS slug** is the
13
+ IS-side resource path `/<object>` (vs the vendor path). When a doc says "the server", read it
14
+ as Udon at runtime. The CLI noun for an endpoint is **activity** (an element.json resource
15
+ entry + its standard-resource file).
16
+
17
+ ## The 5 CRUD activities + curated + HTTP Request
18
+
19
+ Every connector automatically gets 5 CRUD activities, each a dropdown listing every
20
+ standard resource that implements that method:
21
+
22
+ | Activity | Method | Description |
23
+ |----------|----------|------------------------------------------|
24
+ | List | GET | Filtered list. Supports CEQL query. |
25
+ | Get | GETBYID | Retrieve a single record by ID. |
26
+ | Create | POST | Insert a new record. |
27
+ | Update | PATCH/PUT| Modify an existing record. |
28
+ | Delete | DELETE | Remove a record by ID. |
29
+
30
+ A **curated activity** is a standalone activity shown alongside the 5 CRUDs (e.g.
31
+ "Get Support Request"), produced from a `metadata.method.{METHOD}.curated` block in the
32
+ SR file. `activity create` auto-curates every method by default. Field visibility
33
+ (`requestCurated`/`responseCurated`) and `design.position`:
34
+ [standard-resources.md](standard-resources.md). Every connector also gets a free
35
+ **HTTP Request** activity (hide it via `hasHttpRequest` in element-metadata.json).
36
+
37
+ ## File layout (periodic-{elementKey}/)
38
+
39
+ ```text
40
+ app/element/
41
+ ├── element.json # Core definition: auth, configuration[], resources[], parameters[], hooks[]
42
+ ├── element-metadata.json # Catalog entry: name, categories, capability flags, latestVersion
43
+ ├── image.svg # Icon
44
+ ├── hooks/*.js # JS pre/post request transformers (extracted from element.json by scripts/build)
45
+ ├── standard-resources/*.json # Per-object metadata: fields, methods, curated, events
46
+ └── event-hook/ # Event/polling hook definitions
47
+ ```
48
+
49
+ ## How the files link
50
+
51
+ element.json tells Udon HOW to call the vendor (vendorPath, parameters, hooks).
52
+ Standard resources tell Udon WHAT the data looks like (fields, types, method config).
53
+
54
+ 1. **resource entry → SR file**: `standardResourceName` is the canonical link
55
+ (`"accounts"` → `standard-resources/accounts.json`). Linkage rule + the older path-match
56
+ fallback: [standard-resources.md](standard-resources.md).
57
+ 2. **resource entry → hook files**: each `resources[].hooks[].ref` names a file in `hooks/`.
58
+ 3. **global hooks**: top-level `hooks[]`, same `ref` field; always run for every request.
59
+ 4. **system resources**: element.json resource entries with NO SR file and no
60
+ `standardResourceName` → never appear as activities. Internal only (onProvision,
61
+ oauthOnTokenRefresh, provisionAuthValidation). Override a built-in by matching its path.
62
+
63
+ ## Connector key format
64
+
65
+ - Official UiPath: `uipath-{vendor}-{product}` (e.g. `uipath-salesforce-sfdc`).
66
+ - Custom / design: `design-{org}-{slug}` — `init --organization <ORG>` derives it from the
67
+ org slug + `--name`. Repo name = `periodic-` + key (e.g. `periodic-design-myorg-acme`).
68
+
69
+ ## Scope
70
+
71
+ In scope: RESTful JSON APIs, a single base URL, polling/webhook triggers, JS hooks. Out of
72
+ scope: GraphQL, SOAP/XML, SDKs, multiple base URLs. The builder authors connectors by hand
73
+ from the vendor's API docs; it has no OpenAPI/Postman import command.
74
+
75
+ ## See also
76
+ - [element-json.md](element-json.md) — element.json internals
77
+ - [configuration.md](configuration.md) — config + auth keys
78
+ - [standard-resources.md](standard-resources.md) — SR / field shape