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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.cursor-plugin/plugin.json +1 -1
  4. package/CODEOWNERS +41 -29
  5. package/README.md +1 -0
  6. package/assets/skill-status.json +13 -2
  7. package/assets/uip-catalog-snapshot.json +95 -46
  8. package/package.json +2 -1
  9. package/skills/uipath-admin/SKILL.md +107 -197
  10. package/skills/uipath-admin/references/audit-commands.md +69 -120
  11. package/skills/uipath-admin/references/audit-workflow-guide.md +101 -152
  12. package/skills/uipath-admin/references/authorization/authorization-commands.md +121 -210
  13. package/skills/uipath-admin/references/authorization/check-access.md +39 -63
  14. package/skills/uipath-admin/references/authorization/grant-permissions.md +38 -49
  15. package/skills/uipath-admin/references/authorization/permission-catalog.md +32 -34
  16. package/skills/uipath-admin/references/authorization/role-assignment-management.md +96 -99
  17. package/skills/uipath-admin/references/authorization/role-management.md +113 -142
  18. package/skills/uipath-admin/references/diagnose/CAPABILITY.md +13 -14
  19. package/skills/uipath-admin/references/diagnose/{references/failure-modes.md → failure-modes.md} +90 -46
  20. package/skills/uipath-admin/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +21 -14
  21. package/skills/uipath-admin/references/external-app-management.md +42 -39
  22. package/skills/uipath-admin/references/identity-commands.md +72 -625
  23. package/skills/uipath-admin/references/identity-troubleshoot-guide.md +73 -95
  24. package/skills/uipath-admin/references/ip-restriction/bypass-rule-management.md +25 -54
  25. package/skills/uipath-admin/references/ip-restriction/enforcement-management.md +19 -31
  26. package/skills/uipath-admin/references/ip-restriction/ip-range-management.md +48 -45
  27. package/skills/uipath-admin/references/ip-restriction/ip-restriction-commands.md +89 -146
  28. package/skills/uipath-admin/references/key-concepts.md +24 -0
  29. package/skills/uipath-admin/references/organization-management.md +49 -70
  30. package/skills/uipath-admin/references/organizations-commands.md +39 -74
  31. package/skills/uipath-admin/references/pat-management.md +25 -38
  32. package/skills/uipath-admin/references/robot-account-management.md +16 -14
  33. package/skills/uipath-admin/references/smtp-management.md +19 -14
  34. package/skills/uipath-admin/references/tenant-management.md +1 -1
  35. package/skills/uipath-admin/references/tenants-commands.md +82 -148
  36. package/skills/uipath-admin/references/user-management.md +70 -56
  37. package/skills/uipath-agents/SKILL.md +4 -3
  38. package/skills/uipath-agents/references/authentication.md +4 -3
  39. package/skills/uipath-agents/references/coded/capabilities/datafabric.md +465 -0
  40. package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails-recommend.md +5 -0
  41. package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails.md +2 -0
  42. package/skills/uipath-agents/references/coded/capabilities/human-in-the-loop.md +12 -6
  43. package/skills/uipath-agents/references/coded/flow-integration.md +2 -2
  44. package/skills/uipath-agents/references/coded/frameworks/langgraph-integration.md +48 -16
  45. package/skills/uipath-agents/references/coded/frameworks/openai-agents-integration.md +1 -1
  46. package/skills/uipath-agents/references/coded/lifecycle/deployment.md +11 -1
  47. package/skills/uipath-agents/references/coded/quickstart.md +11 -8
  48. package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +3 -3
  49. package/skills/uipath-agents/references/lowcode/capabilities/memory/memory.md +19 -2
  50. package/skills/uipath-agents/references/lowcode/evaluations/evaluate.md +2 -2
  51. package/skills/uipath-agents/references/lowcode/evaluations/orchestrator-eval-run.md +409 -155
  52. package/skills/uipath-agents/references/lowcode/evaluations/running-evaluations.md +2 -2
  53. package/skills/uipath-agents/references/lowcode/prompting/autonomous-agent-prompting-guide.md +1 -1
  54. package/skills/uipath-aops/SKILL.md +313 -0
  55. package/skills/uipath-aops/assets/templates/pipeline-dto-template.json +15 -0
  56. package/skills/uipath-aops/references/discovery-flow.md +312 -0
  57. package/skills/uipath-aops/references/migration-guide.md +146 -0
  58. package/skills/uipath-aops/references/pipeline-dto-guide.md +276 -0
  59. package/skills/uipath-aops/references/save-and-run-guide.md +156 -0
  60. package/skills/uipath-api-workflow/SKILL.md +48 -6
  61. package/skills/uipath-api-workflow/assets/templates/file-base64-roundtrip-example.json +154 -0
  62. package/skills/uipath-api-workflow/assets/templates/nested-control-flow-example.json +0 -1
  63. package/skills/uipath-api-workflow/references/cli-reference.md +20 -1
  64. package/skills/uipath-api-workflow/references/expressions-and-context.md +19 -0
  65. package/skills/uipath-api-workflow/references/files-and-base64.md +153 -0
  66. package/skills/uipath-api-workflow/references/operating-published-workflows.md +3 -2
  67. package/skills/uipath-api-workflow/references/task-types.md +89 -3
  68. package/skills/uipath-api-workflow/references/testing-and-evals.md +224 -0
  69. package/skills/uipath-api-workflow/references/troubleshooting.md +124 -4
  70. package/skills/uipath-coded-apps/SKILL.md +4 -2
  71. package/skills/uipath-coded-apps/assets/scripts/dashboards/build-dashboard.mjs +1 -1
  72. package/skills/uipath-coded-apps/references/dashboards/CAPABILITY.md +11 -1
  73. package/skills/uipath-coded-apps/references/dashboards/plugins/build/impl.md +5 -3
  74. package/skills/uipath-coded-apps/references/dashboards/plugins/deploy/impl.md +1 -0
  75. package/skills/uipath-coded-apps/references/oauth-client-setup.md +2 -0
  76. package/skills/uipath-coded-apps/references/pack-publish-deploy.md +18 -0
  77. package/skills/uipath-coded-apps/references/sdk/orchestrator.md +4 -0
  78. package/skills/uipath-connector-builder/SKILL.md +7 -5
  79. package/skills/uipath-connector-builder/references/debugging.md +5 -1
  80. package/skills/uipath-connector-builder/references/element-json.md +3 -1
  81. package/skills/uipath-connector-builder/references/standard-resources.md +37 -6
  82. package/skills/uipath-functions/SKILL.md +134 -222
  83. package/skills/uipath-functions/references/js/authoring-guide.md +141 -0
  84. package/skills/uipath-functions/references/js/bindings-guide.md +120 -0
  85. package/skills/uipath-functions/references/js/calling-uipath-apis-guide.md +112 -0
  86. package/skills/uipath-functions/references/js/coded-app-wiring-guide.md +103 -0
  87. package/skills/uipath-functions/references/js/deployment-guide.md +109 -0
  88. package/skills/uipath-functions/references/js/http-semantics-guide.md +80 -0
  89. package/skills/uipath-functions/references/js/job-mode-guide.md +114 -0
  90. package/skills/uipath-functions/references/js/local-dev-guide.md +107 -0
  91. package/skills/uipath-functions/references/python/workflow-guide.md +224 -0
  92. package/skills/uipath-governance/SKILL.md +9 -8
  93. package/skills/uipath-governance/references/compliance-pack/catalog/impl.md +36 -8
  94. package/skills/uipath-governance/references/compliance-pack/coverage/impl.md +14 -12
  95. package/skills/uipath-governance/references/compliance-pack/disable/impl.md +5 -3
  96. package/skills/uipath-governance/references/compliance-pack/full-apply/impl.md +7 -5
  97. package/skills/uipath-governance/references/compliance-pack/partial-apply/impl.md +14 -7
  98. package/skills/uipath-governance/references/compliance-pack/partial-apply/planning.md +3 -1
  99. package/skills/uipath-governance/references/compliance-pack/preview-gate.md +1 -1
  100. package/skills/uipath-governance/references/compliance-pack/query/impl.md +4 -2
  101. package/skills/uipath-governance/references/diagnose/CAPABILITY.md +12 -12
  102. package/skills/uipath-governance/references/diagnose/{references/failure-modes.md → failure-modes.md} +5 -5
  103. package/skills/uipath-governance/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +2 -2
  104. package/skills/uipath-governance/references/disambiguation-guide.md +15 -7
  105. package/skills/uipath-human-in-the-loop/SKILL.md +107 -9
  106. package/skills/uipath-human-in-the-loop/references/hitl-casetask-action.md +413 -0
  107. package/skills/uipath-insights/SKILL.md +21 -14
  108. package/skills/uipath-insights/references/alerts-reads-guide.md +242 -0
  109. package/skills/uipath-insights/references/filter-discovery-guide.md +1 -1
  110. package/skills/uipath-insights/references/jobs-commands-guide.md +2 -2
  111. package/skills/uipath-ixp/references/cli-reference.md +1 -1
  112. package/skills/uipath-ixp/references/improve-prompts-guide.md +5 -6
  113. package/skills/uipath-maestro-bpmn/SKILL.md +87 -15
  114. package/skills/uipath-maestro-bpmn/references/diagnose/CAPABILITY.md +10 -10
  115. package/skills/uipath-maestro-bpmn/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +1 -1
  116. package/skills/uipath-maestro-bpmn/references/expression-authoring.md +12 -2
  117. package/skills/uipath-maestro-bpmn/references/operate/CAPABILITY.md +12 -12
  118. package/skills/uipath-maestro-bpmn/references/operate/{references/run.md → run.md} +2 -2
  119. package/skills/uipath-maestro-bpmn/references/operate/{references/ship.md → ship.md} +3 -3
  120. package/skills/uipath-maestro-bpmn/references/patterns/ai-decision-review-guide.md +138 -0
  121. package/skills/uipath-maestro-bpmn/references/patterns/approval-chain-guide.md +136 -0
  122. package/skills/uipath-maestro-bpmn/references/patterns/composing-guide.md +113 -0
  123. package/skills/uipath-maestro-bpmn/references/patterns/external-wait-guide.md +145 -0
  124. package/skills/uipath-maestro-bpmn/references/patterns/failure-escalation-guide.md +103 -0
  125. package/skills/uipath-maestro-bpmn/references/patterns/high-volume-batch-guide.md +107 -0
  126. package/skills/uipath-maestro-bpmn/references/patterns/queue-distribution-guide.md +129 -0
  127. package/skills/uipath-maestro-bpmn/references/patterns/smart-triage-guide.md +129 -0
  128. package/skills/uipath-maestro-bpmn/references/registry-workflow.md +15 -0
  129. package/skills/uipath-maestro-bpmn/references/shared/local-metadata-regeneration-guide.md +67 -36
  130. package/skills/uipath-maestro-bpmn/references/shared/project-layout.md +6 -5
  131. package/skills/uipath-maestro-bpmn/references/structural-bpmn.md +23 -5
  132. package/skills/uipath-maestro-bpmn/validator/bpmn-spec.json +101 -53
  133. package/skills/uipath-maestro-case/SKILL.md +23 -24
  134. package/skills/uipath-maestro-case/references/bindings-and-expressions.md +30 -17
  135. package/skills/uipath-maestro-case/references/bindings-v2-sync.md +5 -5
  136. package/skills/uipath-maestro-case/references/brownfield.md +3 -3
  137. package/skills/uipath-maestro-case/references/case-commands.md +8 -4
  138. package/skills/uipath-maestro-case/references/case-editing-operations.md +19 -19
  139. package/skills/uipath-maestro-case/references/case-schema.md +17 -3
  140. package/skills/uipath-maestro-case/references/connector-integration.md +25 -16
  141. package/skills/uipath-maestro-case/references/connector-trigger-impl.md +15 -15
  142. package/skills/uipath-maestro-case/references/connector-trigger-planning.md +32 -29
  143. package/skills/uipath-maestro-case/references/entry-points-sync.md +2 -1
  144. package/skills/uipath-maestro-case/references/evals/evals.json +11 -11
  145. package/skills/uipath-maestro-case/references/implementation.md +74 -44
  146. package/skills/uipath-maestro-case/references/phased-execution.md +23 -21
  147. package/skills/uipath-maestro-case/references/placeholder-tasks.md +28 -23
  148. package/skills/uipath-maestro-case/references/planning.md +37 -252
  149. package/skills/uipath-maestro-case/references/plugins/case/impl-json.md +3 -3
  150. package/skills/uipath-maestro-case/references/plugins/case/planning.md +8 -6
  151. package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/impl-json.md +3 -3
  152. package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/planning.md +11 -10
  153. package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/impl-json.md +6 -6
  154. package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/planning.md +12 -12
  155. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +4 -4
  156. package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +10 -9
  157. package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md +5 -5
  158. package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/planning.md +16 -14
  159. package/skills/uipath-maestro-case/references/plugins/logging/impl-json.md +3 -3
  160. package/skills/uipath-maestro-case/references/plugins/sla/impl-json.md +15 -15
  161. package/skills/uipath-maestro-case/references/plugins/sla/planning.md +20 -21
  162. package/skills/uipath-maestro-case/references/plugins/stages/impl-json.md +6 -6
  163. package/skills/uipath-maestro-case/references/plugins/stages/planning.md +9 -9
  164. package/skills/uipath-maestro-case/references/plugins/tasks/action/impl-json.md +9 -9
  165. package/skills/uipath-maestro-case/references/plugins/tasks/action/planning.md +38 -38
  166. package/skills/uipath-maestro-case/references/plugins/tasks/agent/impl-json.md +3 -3
  167. package/skills/uipath-maestro-case/references/plugins/tasks/agent/planning.md +24 -20
  168. package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/impl-json.md +3 -3
  169. package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/planning.md +24 -20
  170. package/skills/uipath-maestro-case/references/plugins/tasks/case-management/impl-json.md +4 -4
  171. package/skills/uipath-maestro-case/references/plugins/tasks/case-management/planning.md +25 -21
  172. package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/impl-json.md +30 -22
  173. package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/planning.md +44 -28
  174. package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/impl-json.md +10 -10
  175. package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/planning.md +27 -23
  176. package/skills/uipath-maestro-case/references/plugins/tasks/create-inline-common.md +3 -3
  177. package/skills/uipath-maestro-case/references/plugins/tasks/process/impl-json.md +3 -3
  178. package/skills/uipath-maestro-case/references/plugins/tasks/process/planning.md +25 -22
  179. package/skills/uipath-maestro-case/references/plugins/tasks/rpa/impl-json.md +3 -3
  180. package/skills/uipath-maestro-case/references/plugins/tasks/rpa/planning.md +25 -21
  181. package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/impl-json.md +4 -4
  182. package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/planning.md +5 -4
  183. package/skills/uipath-maestro-case/references/plugins/triggers/event/impl-json.md +9 -9
  184. package/skills/uipath-maestro-case/references/plugins/triggers/event/planning.md +30 -19
  185. package/skills/uipath-maestro-case/references/plugins/triggers/manual/impl-json.md +4 -4
  186. package/skills/uipath-maestro-case/references/plugins/triggers/manual/planning.md +8 -7
  187. package/skills/uipath-maestro-case/references/plugins/triggers/timer/impl-json.md +3 -3
  188. package/skills/uipath-maestro-case/references/plugins/triggers/timer/planning.md +5 -4
  189. package/skills/uipath-maestro-case/references/plugins/variables/bindings/impl-json.md +5 -5
  190. package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +7 -7
  191. package/skills/uipath-maestro-case/references/plugins/variables/global-vars/planning.md +21 -17
  192. package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +29 -21
  193. package/skills/uipath-maestro-case/references/plugins/variables/io-binding/planning.md +23 -21
  194. package/skills/uipath-maestro-case/references/registry-discovery.md +5 -5
  195. package/skills/uipath-maestro-flow/.maintenance/README.md +35 -28
  196. package/skills/uipath-maestro-flow/.maintenance/check-anchors.sh +19 -1
  197. package/skills/uipath-maestro-flow/.maintenance/check-links.sh +3 -0
  198. package/skills/uipath-maestro-flow/.maintenance/check-plugin-pairs.sh +2 -2
  199. package/skills/uipath-maestro-flow/SKILL.md +66 -76
  200. package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +75 -72
  201. package/skills/uipath-maestro-flow/references/author/brownfield.md +90 -0
  202. package/skills/uipath-maestro-flow/references/author/{references/editing-operations-cli.md → editing-operations-cli.md} +9 -4
  203. package/skills/uipath-maestro-flow/references/author/editing-operations-json.md +373 -0
  204. package/skills/uipath-maestro-flow/references/author/editing-operations.md +103 -0
  205. package/skills/uipath-maestro-flow/references/author/{references/greenfield.md → greenfield.md} +32 -20
  206. package/skills/uipath-maestro-flow/references/author/planning-arch.md +342 -0
  207. package/skills/uipath-maestro-flow/references/author/planning-impl.md +283 -0
  208. package/skills/uipath-maestro-flow/references/author/plugins/agent/impl.md +227 -0
  209. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agent/planning.md +2 -2
  210. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agentic-process/impl.md +2 -2
  211. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agentic-process/planning.md +1 -1
  212. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/api-workflow/impl.md +2 -2
  213. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/api-workflow/planning.md +1 -1
  214. package/skills/uipath-maestro-flow/references/author/plugins/batch-transform/impl.md +171 -0
  215. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/batch-transform/planning.md +1 -1
  216. package/skills/uipath-maestro-flow/references/author/plugins/connector/impl.md +449 -0
  217. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector/planning.md +3 -3
  218. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector-trigger/impl.md +20 -18
  219. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector-trigger/planning.md +2 -2
  220. package/skills/uipath-maestro-flow/references/author/plugins/data-fabric/impl.md +427 -0
  221. package/skills/uipath-maestro-flow/references/author/plugins/data-fabric/planning.md +185 -0
  222. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/decision/impl.md +5 -0
  223. package/skills/uipath-maestro-flow/references/author/plugins/delay/impl.md +38 -0
  224. package/skills/uipath-maestro-flow/references/author/plugins/end/impl.md +56 -0
  225. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/flow/impl.md +2 -2
  226. package/skills/uipath-maestro-flow/references/author/plugins/hitl/impl.md +178 -0
  227. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/hitl/planning.md +14 -1
  228. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/http/impl-connector.md +4 -4
  229. package/skills/uipath-maestro-flow/references/author/plugins/http/impl-manual.md +68 -0
  230. package/skills/uipath-maestro-flow/references/author/plugins/http/impl.md +173 -0
  231. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/http/planning.md +3 -3
  232. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-agent/impl.md +6 -6
  233. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-agent/planning.md +1 -1
  234. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-voice-agent/impl.md +4 -4
  235. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-voice-agent/planning.md +1 -1
  236. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/ixp/impl.md +8 -8
  237. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/loop/impl.md +1 -1
  238. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/loop/planning.md +1 -1
  239. package/skills/uipath-maestro-flow/references/author/plugins/merge/impl.md +43 -0
  240. package/skills/uipath-maestro-flow/references/author/plugins/merge/planning.md +24 -0
  241. package/skills/uipath-maestro-flow/references/author/plugins/rpa/impl.md +117 -0
  242. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/rpa/planning.md +1 -1
  243. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/scheduled-trigger/impl.md +6 -8
  244. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/script/impl.md +5 -5
  245. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/script/planning.md +1 -1
  246. package/skills/uipath-maestro-flow/references/author/plugins/subflow/impl.md +164 -0
  247. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/subflow/planning.md +1 -1
  248. package/skills/uipath-maestro-flow/references/author/plugins/summarize/impl.md +189 -0
  249. package/skills/uipath-maestro-flow/references/author/plugins/summarize/planning.md +66 -0
  250. package/skills/uipath-maestro-flow/references/author/plugins/switch/planning.md +34 -0
  251. package/skills/uipath-maestro-flow/references/author/plugins/terminate/impl.md +48 -0
  252. package/skills/uipath-maestro-flow/references/author/plugins/transform/impl.md +241 -0
  253. package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/transform/planning.md +1 -1
  254. package/skills/uipath-maestro-flow/references/diagnose/CAPABILITY.md +39 -37
  255. package/skills/uipath-maestro-flow/references/diagnose/{references/failure-modes.md → failure-modes.md} +22 -22
  256. package/skills/uipath-maestro-flow/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +60 -1
  257. package/skills/uipath-maestro-flow/references/evaluate/CAPABILITY.md +27 -25
  258. package/skills/uipath-maestro-flow/references/evaluate/{references/commands-reference.md → commands-reference.md} +58 -7
  259. package/skills/uipath-maestro-flow/references/evaluate/eval-sets-guide.md +227 -0
  260. package/skills/uipath-maestro-flow/references/evaluate/upload-safety.md +94 -0
  261. package/skills/uipath-maestro-flow/references/operate/CAPABILITY.md +21 -21
  262. package/skills/uipath-maestro-flow/references/operate/{references/manage.md → manage.md} +4 -4
  263. package/skills/uipath-maestro-flow/references/operate/run.md +121 -0
  264. package/skills/uipath-maestro-flow/references/operate/{references/ship.md → ship.md} +5 -5
  265. package/skills/uipath-maestro-flow/references/shared/action-nodes.md +30 -22
  266. package/skills/uipath-maestro-flow/references/shared/cli-commands.md +76 -184
  267. package/skills/uipath-maestro-flow/references/shared/cli-conventions.md +49 -60
  268. package/skills/uipath-maestro-flow/references/shared/file-format.md +32 -11
  269. package/skills/uipath-maestro-flow/references/shared/node-output-wiring.md +49 -104
  270. package/skills/uipath-maestro-flow/references/shared/ux-narration-and-todos.md +66 -103
  271. package/skills/uipath-maestro-flow/references/shared/variables-and-expressions.md +4 -4
  272. package/skills/uipath-planner/SKILL.md +1 -1
  273. package/skills/uipath-planner/assets/templates/case/case-sdd-template.md +5 -3
  274. package/skills/uipath-planner/references/case/case-design-lane-guide.md +1 -1
  275. package/skills/uipath-planner/references/case/case-design-layers-guide.md +2 -2
  276. package/skills/uipath-planner/references/non-pdd-lane-guide.md +2 -1
  277. package/skills/uipath-planner/references/pdd-driven-lane-guide.md +3 -2
  278. package/skills/uipath-planner/references/sdd-generation-guide.md +1 -0
  279. package/skills/uipath-planner/scripts/case/audit_sdd.py +77 -1
  280. package/skills/uipath-platform/SKILL.md +6 -4
  281. package/skills/uipath-platform/references/integration-service/activities.md +7 -4
  282. package/skills/uipath-platform/references/integration-service/reference-resolution.md +28 -0
  283. package/skills/uipath-platform/references/integration-service/resources.md +11 -0
  284. package/skills/uipath-platform/references/integration-service/triggers.md +2 -2
  285. package/skills/uipath-platform/references/licensing/diagnose/CAPABILITY.md +80 -0
  286. package/skills/uipath-platform/references/licensing/diagnose/references/failure-modes.md +147 -0
  287. package/skills/uipath-platform/references/licensing/diagnose/references/troubleshooting-guide.md +125 -0
  288. package/skills/uipath-platform/references/licensing/licensing.md +3 -0
  289. package/skills/uipath-platform/references/licensing/user-licenses-allocations.md +5 -0
  290. package/skills/uipath-platform/references/orchestrator/run-jobs.md +11 -2
  291. package/skills/uipath-platform/references/traces/feedback.md +4 -4
  292. package/skills/uipath-platform/references/traces/traces.md +1 -1
  293. package/skills/uipath-process-mining/SKILL.md +6 -6
  294. package/skills/uipath-process-mining/references/lifecycle-and-rbac.md +10 -8
  295. package/skills/uipath-process-mining/references/model-editing.md +1 -1
  296. package/skills/uipath-process-mining/references/querying.md +4 -3
  297. package/skills/uipath-review/SKILL.md +171 -541
  298. package/skills/uipath-review/references/agents/agents-lowcode-rules.md +73 -92
  299. package/skills/uipath-review/references/agents/guardrails/coded-guardrails-review.md +4 -0
  300. package/skills/uipath-review/references/agents/guardrails/guardrails-review.md +73 -180
  301. package/skills/uipath-review/references/architecture-assessment-guide.md +93 -105
  302. package/skills/uipath-review/references/review-workflow-guide.md +1 -1
  303. package/skills/uipath-review/references/rpa/modern-studio-issues.md +44 -44
  304. package/skills/uipath-review/references/rpa/rpa-common-issues.md +251 -321
  305. package/skills/uipath-review/references/rpa/rpa-review-checklist.md +1 -1
  306. package/skills/uipath-review/references/rule-catalog-workflow.md +25 -45
  307. package/skills/uipath-review/references/rule-format.md +21 -21
  308. package/skills/uipath-rpa/.maintenance/pattern-card-maintenance.md +1 -1
  309. package/skills/uipath-rpa/CLAUDE.md +4 -5
  310. package/skills/uipath-rpa/SKILL.md +40 -246
  311. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/FindText.md +2 -10
  312. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetColorAtPosition.md +2 -10
  313. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetCursorPosition.md +2 -10
  314. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetField.md +13 -13
  315. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetFieldAtPosition.md +2 -10
  316. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetScreenArea.md +27 -8
  317. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetText.md +2 -14
  318. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetTextAtPosition.md +2 -10
  319. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/MoveCursor.md +3 -11
  320. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/MoveCursorToText.md +2 -10
  321. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendControlKey.md +2 -8
  322. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendKeys.md +2 -10
  323. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendKeysSecure.md +2 -10
  324. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SetField.md +14 -13
  325. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SetFieldAtPosition.md +4 -7
  326. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession/_common-options.md +29 -0
  327. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession/authoring-paths.md +58 -0
  328. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession.md +197 -11
  329. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitFieldText.md +2 -10
  330. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitScreenReady.md +9 -10
  331. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitScreenText.md +2 -14
  332. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitTextAtPosition.md +2 -10
  333. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities.json +271 -0
  334. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/coded/coded-api.md +61 -3
  335. package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/overview.md +76 -0
  336. package/skills/uipath-rpa/references/cli-reference.md +63 -29
  337. package/skills/uipath-rpa/references/coded/codedworkflow-reference.md +59 -1
  338. package/skills/uipath-rpa/references/coded/operations-guide.md +2 -1
  339. package/skills/uipath-rpa/references/debugging.md +29 -12
  340. package/skills/uipath-rpa/references/environment-setup.md +54 -1
  341. package/skills/uipath-rpa/references/execution-maps-guide.md +10 -9
  342. package/skills/uipath-rpa/references/legacy/activity-docs/_INVOKE-CODE.md +1 -1
  343. package/skills/uipath-rpa/references/uia-starter-guide.md +46 -8
  344. package/skills/uipath-rpa/references/xaml/common-pitfalls.md +3 -4
  345. package/skills/uipath-rpa/references/xaml/csharp-activity-binding-guide.md +7 -8
  346. package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +132 -42
  347. package/skills/uipath-solution/SKILL.md +9 -6
  348. package/skills/uipath-solution/references/activate-and-manage.md +11 -6
  349. package/skills/uipath-solution/references/develop-solution.md +39 -28
  350. package/skills/uipath-solution/references/pack-and-deploy.md +49 -1
  351. package/skills/uipath-solution/references/scenarios/failure-modes.md +1 -1
  352. package/skills/uipath-solution/references/scenarios/intra-solution-references.md +3 -3
  353. package/skills/uipath-solution/references/scenarios/manual-edits.md +1 -1
  354. package/skills/uipath-solution/references/scenarios.md +2 -2
  355. package/skills/uipath-solution/references/solution-overview.md +15 -6
  356. package/skills/uipath-tasks/SKILL.md +11 -6
  357. package/skills/uipath-tasks/references/task-assignment.md +5 -0
  358. package/skills/uipath-tasks/references/task-catalogs.md +7 -4
  359. package/skills/uipath-tasks/references/task-completion.md +3 -1
  360. package/skills/uipath-tasks/references/task-data.md +3 -3
  361. package/skills/uipath-tasks/references/task-lifecycle.md +11 -0
  362. package/skills/uipath-tasks/references/task-metadata.md +4 -3
  363. package/skills/uipath-test/SKILL.md +13 -28
  364. package/skills/uipath-test/references/failure-triage-guide.md +90 -0
  365. package/skills/uipath-test/references/playwright-first-mile-guide.md +2 -2
  366. package/skills/uipath-test/references/publish-and-link-guide.md +0 -1
  367. package/skills/uipath-test/references/test-result-report-guide.md +1 -2
  368. package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/interpretations/healing-agent-data.md +1 -1
  369. package/skills/uipath-troubleshoot/references/presenting.md +1 -1
  370. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/folder-not-accessible.md +1 -1
  371. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/generic-error-400.md +4 -4
  372. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/integration-service-400.md +2 -2
  373. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/job-operation-timeout.md +1 -1
  374. package/skills/uipath-troubleshoot/references/products/maestro/playbooks/no-suitable-runtime-machine.md +1 -1
  375. package/version-manifest.json +2 -2
  376. package/skills/uipath-maestro-case/scripts/audit_plan.py +0 -231
  377. package/skills/uipath-maestro-flow/references/author/references/brownfield.md +0 -93
  378. package/skills/uipath-maestro-flow/references/author/references/editing-operations-json.md +0 -545
  379. package/skills/uipath-maestro-flow/references/author/references/editing-operations.md +0 -131
  380. package/skills/uipath-maestro-flow/references/author/references/planning-arch.md +0 -638
  381. package/skills/uipath-maestro-flow/references/author/references/planning-impl.md +0 -306
  382. package/skills/uipath-maestro-flow/references/author/references/plugins/agent/impl.md +0 -229
  383. package/skills/uipath-maestro-flow/references/author/references/plugins/batch-transform/impl.md +0 -174
  384. package/skills/uipath-maestro-flow/references/author/references/plugins/connector/impl.md +0 -741
  385. package/skills/uipath-maestro-flow/references/author/references/plugins/delay/impl.md +0 -75
  386. package/skills/uipath-maestro-flow/references/author/references/plugins/end/impl.md +0 -65
  387. package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/impl.md +0 -204
  388. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-manual.md +0 -65
  389. package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl.md +0 -201
  390. package/skills/uipath-maestro-flow/references/author/references/plugins/merge/impl.md +0 -43
  391. package/skills/uipath-maestro-flow/references/author/references/plugins/merge/planning.md +0 -29
  392. package/skills/uipath-maestro-flow/references/author/references/plugins/rpa/impl.md +0 -121
  393. package/skills/uipath-maestro-flow/references/author/references/plugins/subflow/impl.md +0 -230
  394. package/skills/uipath-maestro-flow/references/author/references/plugins/summarize/impl.md +0 -198
  395. package/skills/uipath-maestro-flow/references/author/references/plugins/summarize/planning.md +0 -71
  396. package/skills/uipath-maestro-flow/references/author/references/plugins/switch/planning.md +0 -38
  397. package/skills/uipath-maestro-flow/references/author/references/plugins/terminate/impl.md +0 -48
  398. package/skills/uipath-maestro-flow/references/author/references/plugins/transform/impl.md +0 -287
  399. package/skills/uipath-maestro-flow/references/evaluate/references/eval-sets-guide.md +0 -226
  400. package/skills/uipath-maestro-flow/references/evaluate/references/upload-safety.md +0 -82
  401. package/skills/uipath-maestro-flow/references/operate/references/run.md +0 -99
  402. /package/skills/uipath-maestro-bpmn/references/diagnose/{references/failure-modes.md → failure-modes.md} +0 -0
  403. /package/skills/uipath-maestro-bpmn/references/operate/{references/manage.md → manage.md} +0 -0
  404. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/decision/planning.md +0 -0
  405. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/delay/planning.md +0 -0
  406. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/end/planning.md +0 -0
  407. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/flow/planning.md +0 -0
  408. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/ixp/planning.md +0 -0
  409. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/queue/impl.md +0 -0
  410. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/queue/planning.md +0 -0
  411. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/scheduled-trigger/planning.md +0 -0
  412. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/switch/impl.md +0 -0
  413. /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/terminate/planning.md +0 -0
  414. /package/skills/uipath-maestro-flow/references/evaluate/{references/evaluators-guide.md → evaluators-guide.md} +0 -0
  415. /package/skills/uipath-maestro-flow/references/evaluate/{references/running-guide.md → running-guide.md} +0 -0
@@ -0,0 +1,373 @@
1
+ # Flow Editing Operations — Edit / Write Strategy
2
+
3
+ Modify `.flow` files with `Edit` and `Write` (read-modify-write). This requires manual management of definitions, variables, bindings, and edges.
4
+
5
+ > Use `Edit` by default; use `Write` only when ≥70% of nodes change. Recipes show the JSON for an `Edit` call's `new_string`. `python`, `node`, `jq`, `sed`, `awk`, and shell heredocs are last-resort mutation tools and require explicit user approval after surfacing trade-offs; see the SKILL.md rule on scripted mutations and [editing-operations.md — Why not Python / Node / jq / sed?](editing-operations.md#why-not-python--node--jq--sed).
6
+ >
7
+ > Use this strategy for all non-carve-out `.flow` edits. Use Flow CLI only for connector activity, connector-trigger, and managed HTTP carve-outs documented by their plugins. Inline-agent lifecycle uses `uip agent init --inline-in-flow`, `uip agent refresh --inline-in-flow`, and `uip agent validate --inline-in-flow`; author the `uipath.agent.autonomous` node and edges with this guide. See [editing-operations.md](editing-operations.md) for the strategy selection matrix.
8
+
9
+ ## Key Differences from CLI
10
+
11
+ | Concern | CLI handles | Edit / Write — you must |
12
+ |---|---|---|
13
+ | Definitions | Copies from registry cache | Copy the returned node definition object from `uip maestro flow registry get` into `definitions[]`. |
14
+ | Node variables | Adds to `variables.nodes` | Add output entries manually or regenerate them. |
15
+ | Delete cleanup | Removes connected edges | Remove every edge referencing the node. |
16
+ | Orphan cleanup | Removes unused definitions and orphaned bindings | Remove unreferenced definitions; remove connector bindings only when no remaining node uses that connector. |
17
+ | `targetPort` | Sets it | Set it on every edge; validation rejects omissions. |
18
+ | `bindings_v2.json` | Managed by `node configure` | Prefer the CLI carve-out for connector/managed HTTP configuration. Under the fallback, author top-level `.flow` `bindings[]` and touch generated files only when the plugin explicitly says to. |
19
+
20
+ ## Pre-flight Checklist
21
+
22
+ Before editing, complete all applicable items:
23
+
24
+ 1. **Locate the canonical `.flow` file.** Run `find . -name project.uiproj -type f`. The flow project directory contains `project.uiproj`; the canonical `.flow` is its sibling, not the solution root. For nested paths created by `uip solution init <Name>` + `uip maestro flow init <Name>`, edit `<Name>/<Name>/<Name>.flow`, not `<Name>/<Name>.flow`. Pin every `Edit` / `Write` call to that sibling. `uip maestro flow validate <PATH>.flow` accepts misplaced files, so validation does not establish the target; colocation does.
25
+ 2. **Definitions and versions.** For each new type, run `uip maestro flow registry get <type> --output json`. Copy the returned node definition verbatim into `definitions[]`, one per unique `type:typeVersion`. It may be `Data.Node` or the top-level object containing `nodeType`, `version`, and `handleConfiguration`; copy the node object, not the `Result` / `Code` envelope. Set each instance `typeVersion` to the exact definition `version` string; do not normalize. For documented `uip maestro flow node add` carve-outs (managed HTTP, connector activities, connector triggers), use the CLI; see [http/impl.md — Step 1](plugins/http/impl.md#add-the-node).
26
+ 3. **Unique ID.** Use a non-colliding camelCase ID, preferably meaningful because it appears in `$vars.<nodeId>.*` expressions.
27
+ 4. **Edges.** Set `sourcePort` and `targetPort` on every edge. Use `sourcePort`, never `sourceHandle`; `sourceHandle` is not in the `.flow` schema. Look up ports in plugin `planning.md` or [file-format.md — Standard ports](../shared/file-format.md). If `sourcePort: "error"`, set `inputs.errorHandlingEnabled: true` on the source; set it only when an `error` edge exists. See [file-format.md — Default: off](../shared/file-format.md#default-off--enable-only-for-a-failure-the-flow-actually-handles).
28
+ 5. **Outputs.** End-style nodes consume `outputs` at runtime to map workflow-level `out` variables; see [end/impl.md](plugins/end/impl.md). Action/trigger instance `outputs` are not consumed by BPMN serialization; the manifest `outputDefinition` is used. A matching block is documentation only; `$vars.<sourceNodeId>.output` requires `variables.nodes[]`.
29
+ 6. **Node variables.** Add one `variables.nodes[]` entry for every data-producing node output: `output` for action/trigger nodes and `error` for action nodes. Use `{ "id": "<nodeId>.<outputId>", "type": "object", "binding": { "nodeId": "<nodeId>", "outputId": "<outputId>" } }`. The BPMN emitter uses these declarations; validation may pass while runtime resolves `undefined`. `uip maestro flow format` regenerates this block from `nodes[]` + `definitions[]`.
30
+ 7. **Delete cascade.** Remove the node, every edge whose `sourceNodeId` or `targetNodeId` matches it, unused definitions, its `variables.nodes` and `variableUpdates` entries, and connector bindings only when no remaining node uses that connector.
31
+
32
+ > **Anti-pattern:** editing a `.flow` not colocated with `project.uiproj`. It is invisible to `uip maestro flow debug`, Studio, and discovery via `**/project.uiproj`; `uip maestro flow validate <PATH>.flow` can still pass. Always edit the sibling `.flow`.
33
+
34
+ ## Edit Tooling
35
+
36
+ | Operation | Mechanic | Rule |
37
+ |---|---|---|
38
+ | Surgical leaf string/number/bool | `Edit` | Use one unique substring; re-`Read` after rewrites because matching is whitespace-sensitive. |
39
+ | New node, edge, definition, or variable | `Read` whole file → reconstruct in chat → `Write` whole file | Preserve field order; avoid dropping fields on files >1000 lines. |
40
+ | Nested replacement, field insertion, idempotent splice | `Edit` / `Write`; `python3` heredoc only after explicit user approval | Prefer direct authoring; scripts bypass safeguards and require diff review. |
41
+ | One-shot extraction/single-field CLI JSON mutation | `jq` | Use only when `--output-filter` cannot express it. |
42
+
43
+ The CLI has no `node update`; directly author node `inputs`, definition swaps, and array splices. For several same-file `Edit`s, anchor each on its target array's opening key, never top-level key order; beware recurring `"nodes": [` / `"edges": [` inside `definitions[]` and `subflows.<id>`. See [editing-operations.md — Parallel same-file Edits](editing-operations.md#parallel-same-file-edits).
44
+
45
+ ### Scripted structural rewrite
46
+
47
+ Use only after explicit approval:
48
+
49
+ ```bash
50
+ python3 - <<'PY'
51
+ import json
52
+ flow = json.load(open("<FILE>.flow"))
53
+ # Mutate flow here — splice arrays, set nested fields, replace objects.
54
+ # Example: insert/overwrite a field on every node of a given type
55
+ for node in flow["nodes"]:
56
+ if node.get("type") == "<NODE_TYPE>":
57
+ node.setdefault("inputs", {})["<FIELD>"] = "<VALUE>"
58
+ json.dump(flow, open("<FILE>.flow", "w"), indent=2)
59
+ PY
60
+ uip maestro flow validate <FILE>.flow --output json
61
+ ```
62
+
63
+ Preserve canonical 2-space indent. `flow format` normalizes layout but does not re-indent unrelated structure. Whole-file `Write` is lossy and risks clobbering CLI-owned `bindings[]` / `inputs.detail`, especially on files >500 lines or containing connector/managed-HTTP nodes; prefer `Edit` in place.
64
+
65
+ ### `--output-filter` for CLI JSON
66
+
67
+ Run the CLI's JMESPath filter for read-only extraction; expressions start at the `Data` envelope and omit `Data.`. See [shared/cli-conventions.md §3](../shared/cli-conventions.md#3-prefer---output-filter-for-extraction).
68
+
69
+ ```bash
70
+ uip solution upload --output json --output-filter "DesignerUrl"
71
+ uip maestro flow registry get <node-type> --output json --output-filter "Node"
72
+ ```
73
+
74
+ Use `jq` / `python3` only when JMESPath cannot express multi-step joins, format conversion, or conditional output computed from multiple fields.
75
+
76
+ ## Primitive Operations
77
+
78
+ ### Add a node
79
+
80
+ **Tool:** `Edit` into `nodes[]`, `definitions[]`, `variables.nodes`, and `layout.nodes`.
81
+
82
+ 1. Run `uip maestro flow registry get <node-type> --output json`; copy `Data.Node` or the top-level node object verbatim.
83
+ 2. Add an instance with the required shape:
84
+
85
+ ```json
86
+ {
87
+ "id": "<UNIQUE_NODE_ID>",
88
+ "type": "<NODE_TYPE>",
89
+ "typeVersion": "<DEFINITION_VERSION>",
90
+ "display": { "label": "<LABEL>" },
91
+ "inputs": {},
92
+ "outputs": {
93
+ "error": {
94
+ "type": "object",
95
+ "description": "Error information if the <node type> fails",
96
+ "source": "=Error",
97
+ "var": "error"
98
+ }
99
+ }
100
+ }
101
+ ```
102
+
103
+ For every node inside a `core.logic.loop` body, add `"parentId": "<LOOP_NODE_ID>"`; otherwise loop context and `$vars.<loopId>.currentItem` are unavailable. See [loop/impl.md](plugins/loop/impl.md).
104
+
105
+ Every node, including `core.control.end` and `core.logic.terminate`, requires `display: { "label": "<label>" }`. Do not add `ui` or an instance `model`; use layout. Definitions provide BPMN type, `serviceType`, event definition, and binding/context templates. Instance identity belongs in `inputs`: `entryPointId` / `isDefaultEntryPoint` for triggers, `color` / `content` for sticky notes, and `source` for `uipath.agent.autonomous` and every `uipath.agent.resource.*` node. Their definitions declare `model.source: true`; do not write `"model": { "source": ... }`. See [file-format.md — Instance-specific identity fields](../shared/file-format.md#instance-specific-identity-fields).
106
+
107
+ Orchestrator-job nodes (`api-workflow`, `rpa-workflow`, `agent`, `agentic-process`, `function`) declare `error` only with `source: "=Error"`; `output` is derived. Their converter copies authored `source` verbatim and injects `{name: "output", type: "jsonSchema", source: "=this", var: "output"}` only when non-empty `outputs` omits `output`. A wrong source such as `=result.response` makes downstream `$vars.{nodeId}.output` null while validation passes. Other action/trigger nodes ignore instance `outputs`; End / Terminate nodes are exceptions. See [end/impl.md](plugins/end/impl.md) and [file-format.md — Node outputs](../shared/file-format.md#node-outputs).
108
+
109
+ 3. Add one exact registry definition per unique `type:typeVersion`; match instance `typeVersion` to its `version`.
110
+ 4. For `uipath.core.rpa-workflow.*`, `uipath.core.agent.*`, `uipath.core.flow.*`, `uipath.core.agentic-process.*`, `uipath.core.api-workflow.*`, or `uipath.core.human-task.*`, add two top-level `bindings[]` entries per resource (`name` and `folderPath`) with `resourceKey` exactly matching `definition.model.bindings.resourceKey`. Keep `<bindings.*>` placeholders verbatim; the emitter rewrites them by `(resourceKey, name)`. Missing entries may pass validation but fail debug with "Folder does not exist or the user does not have access to the folder."
111
+ 5. Add `variables.nodes` entries for `output` and action-node `error`:
112
+
113
+ ```json
114
+ [
115
+ {
116
+ "id": "<NODE_ID>.output",
117
+ "type": "object",
118
+ "description": "<Output description>",
119
+ "binding": { "nodeId": "<NODE_ID>", "outputId": "output" }
120
+ },
121
+ {
122
+ "id": "<NODE_ID>.error",
123
+ "type": "object",
124
+ "description": "Error information if the node fails",
125
+ "binding": { "nodeId": "<NODE_ID>", "outputId": "error" }
126
+ }
127
+ ]
128
+ ```
129
+
130
+ 6. Add this placeholder to top-level `layout.nodes`:
131
+
132
+ ```json
133
+ "<UNIQUE_NODE_ID>": {
134
+ "position": { "x": 0, "y": 0 },
135
+ "size": { "width": 96, "height": 96 },
136
+ "collapsed": false
137
+ }
138
+ ```
139
+
140
+ Run `uip maestro flow format <ProjectName>.flow` after structural edits. It regenerates `variables.nodes[]`, arranges nodes horizontally, sets canvas sizes (inline agents 288×96, containers 560×320, others 96×96), and recurses into subflows. Do not calculate coordinates manually.
141
+
142
+ ### Delete a node
143
+
144
+ **Tool:** `Edit`.
145
+
146
+ 1. Remove it from `nodes[]`.
147
+ 2. Remove all edges whose `sourceNodeId` or `targetNodeId` is its ID.
148
+ 3. Remove its definition only if no node uses that `type`.
149
+ 4. Remove its `variables.nodes` entry and `variableUpdates` entries keyed by its ID.
150
+ 5. For connector nodes, remove the `bindings_v2.json` binding only if no other node uses that connector; bindings are shared by connector level and keyed by `metadata.Connector`.
151
+
152
+ ### Add an edge
153
+
154
+ **Tool:** `Edit` into `edges[]`:
155
+
156
+ ```json
157
+ {
158
+ "id": "edge_<SOURCE_NODE_ID>_<SOURCE_PORT>_<TARGET_NODE_ID>_<TARGET_PORT>",
159
+ "sourceNodeId": "<SOURCE_NODE_ID>",
160
+ "sourcePort": "<SOURCE_PORT>",
161
+ "targetNodeId": "<TARGET_NODE_ID>",
162
+ "targetPort": "<TARGET_PORT>"
163
+ }
164
+ ```
165
+
166
+ The ID must exactly follow that pattern, never be a bare UUID or start with a digit. `targetPort` is mandatory; use `sourcePort`, not `sourceHandle`. For `sourcePort: "error"`, set source `inputs.errorHandlingEnabled: true`, and never set that flag without an `error` edge. Look up ports in plugin `planning.md` or [file-format.md — Standard ports](../shared/file-format.md).
167
+
168
+ ### Delete an edge
169
+
170
+ **Tool:** `Edit`; remove the edge by its `id`.
171
+
172
+ ### Update node inputs
173
+
174
+ **Tool:** `Edit` in place; preserve node IDs and `$vars` references.
175
+
176
+ ```json
177
+ {
178
+ "id": "checkStatus",
179
+ "type": "core.logic.decision",
180
+ "inputs": { "expression": "$vars.fetchData.output.statusCode === 200" }
181
+ }
182
+ ```
183
+
184
+ ## Variable Operations
185
+
186
+ These are `Edit`-only; the CLI has no variable-management fallback.
187
+
188
+ ### Add a workflow variable
189
+
190
+ Add to `variables.globals`:
191
+
192
+ ```json
193
+ {
194
+ "id": "<VARIABLE_ID>",
195
+ "direction": "in|out|inout",
196
+ "type": "string|number|boolean|object|array|file",
197
+ "defaultValue": "<OPTIONAL_DEFAULT>",
198
+ "description": "<OPTIONAL_DESCRIPTION>"
199
+ }
200
+ ```
201
+
202
+ Map every `out` variable on every reachable End node. Add `variableUpdates` for nodes modifying `inout` state. Attachment-carrying inputs must use `"type": "file"`, not `"object"`, or attachment binding breaks and IxP extraction faults with `[430002]`; see [plugins/ixp/impl.md#debug](plugins/ixp/impl.md#debug). See [variables-and-expressions.md](../shared/variables-and-expressions.md).
203
+
204
+ ### Add output mapping on an End node
205
+
206
+ On every reachable End node, map every `out` variable:
207
+
208
+ ```json
209
+ {
210
+ "id": "doneSuccess",
211
+ "type": "core.control.end",
212
+ "typeVersion": "1.0.0",
213
+ "display": { "label": "Done" },
214
+ "inputs": {},
215
+ "outputs": { "<VARIABLE_ID>": { "source": "=js:<EXPRESSION>" } }
216
+ }
217
+ ```
218
+
219
+ Each key must match an `out` variable ID; missing mappings silently fail at runtime.
220
+
221
+ ### Add a variable update
222
+
223
+ Add under `variables.variableUpdates.<NODE_ID>`:
224
+
225
+ ```json
226
+ {
227
+ "variables": {
228
+ "variableUpdates": {
229
+ "<NODE_ID>": [
230
+ {
231
+ "variableId": "<INOUT_VARIABLE_ID>",
232
+ "expression": {
233
+ "type": "jsExpression",
234
+ "expression": "<BARE_JS_NO_PREFIX>",
235
+ "fieldType": "<TARGET_VARIABLE_TYPE>"
236
+ }
237
+ }
238
+ ]
239
+ }
240
+ }
241
+ }
242
+ ```
243
+
244
+ Only `inout` variables can be updated; `in` variables are read-only. `expression` is an object, not a `=js:` string. Set `fieldType` to the declared target type (`integer` → `number`); validation does not cross-check mismatches. The string form fails with `[MIGRATION] Workflow migration failed at 1.9→1.10 … Offending field(s): variables.variableUpdates.<NODE_ID>.0.expression`. No CLI command exists for variable updates.
245
+
246
+ ## Composite Operations
247
+
248
+ ### Insert a node between two existing nodes
249
+
250
+ **Tool:** `Edit` × 3: delete the old edge; add the node, definition, variables, and layout; add upstream → new and new → downstream edges with valid source and target ports.
251
+
252
+ ### Insert a decision branch
253
+
254
+ **Tool:** `Edit` × 3: delete the old edge; add the decision with `inputs.expression`; add upstream → decision (`targetPort: "input"`), decision → true (`sourcePort: "true"`, `targetPort: "input"`), and decision → false (`sourcePort: "false"`, `targetPort: "input"`) edges.
255
+
256
+ ### Remove a node and reconnect
257
+
258
+ **Tool:** `Edit` × 4: record upstream/downstream edges; remove the node and incident edges; prune orphan definitions; add the direct reconnect edge.
259
+
260
+ ### Replace a mock with a real resource node
261
+
262
+ **Tool:** `Edit` multiple calls.
263
+
264
+ 1. Check in-solution first and run `uip maestro flow registry get "<RESOURCE_NODE_TYPE>" --local --output json`; if unavailable, run `uip maestro flow registry get "<RESOURCE_NODE_TYPE>" --output json`.
265
+ 2. Record mock connections; remove the mock and incident edges.
266
+ 3. Add the real node with correct `type`, exact `typeVersion`, resolved `inputs`, action-node `outputs` (`output` + `error`), and no `model` block.
267
+ 4. Copy its registry definition verbatim.
268
+ 5. Add two top-level `bindings[]` entries per resource (`name` + `folderPath`) with matching `resourceKey`.
269
+ 6. Re-create edges with the new ID and add `variables.nodes` entries.
270
+ 7. Run `uip maestro flow validate <ProjectName>.flow --output json`.
271
+
272
+ ### Replace manual trigger with scheduled trigger
273
+
274
+ **Tool:** `Edit` × 2.
275
+
276
+ 1. Change `core.trigger.manual` to `core.trigger.scheduled` in place and retain `entryPointId`:
277
+
278
+ ```json
279
+ "inputs": {
280
+ "entryPointId": "<existing-uuid>",
281
+ "timerType": "timeCycle",
282
+ "timerPreset": "R/PT1H"
283
+ }
284
+ ```
285
+
286
+ 2. Replace the manual definition with the exact definition from `uip maestro flow registry get core.trigger.scheduled --output json`.
287
+ 3. Run `uip maestro flow validate <ProjectName>.flow --output json`.
288
+
289
+ ### Create a subflow
290
+
291
+ **Tool:** `Edit` (or `Write` when scaffolding from a template).
292
+
293
+ 1. Add a `core.subflow` parent with `display`, inputs, and error output (the JSON below pins `typeVersion`):
294
+
295
+ ```json
296
+ {
297
+ "id": "<SUBFLOW_NODE_ID>",
298
+ "type": "core.subflow",
299
+ "typeVersion": "1.0.0",
300
+ "display": { "label": "<LABEL>" },
301
+ "inputs": { "<IN_VAR>": "=js:<EXPRESSION>" },
302
+ "outputs": {
303
+ "error": {
304
+ "type": "object",
305
+ "description": "Error information if the subflow fails",
306
+ "source": "=Error",
307
+ "var": "error"
308
+ }
309
+ }
310
+ }
311
+ ```
312
+
313
+ 2. Add `subflows.<SUBFLOW_NODE_ID>` with independent `nodes`, `edges`, `variables`, and `layout`; its variables include `in` variables with `triggerNodeId`, `out` variables, and `variables.nodes`.
314
+ 3. Match subflow `in` variable IDs to parent input keys; map every `out` variable on its End node.
315
+ 4. Parent `$vars` are not visible inside; pass values through inputs.
316
+ 5. Put subflow positions in its own `layout.nodes`, never top-level layout. See [subflow/impl.md](plugins/subflow/impl.md).
317
+
318
+ ## Connector Node Configuration (Edit / Write fallback)
319
+
320
+ Prefer `uip maestro flow node configure`. If using the fallback, use `Edit` for node configuration and `Edit` (or `Write` for a fresh file) for `bindings_v2.json`.
321
+
322
+ ### 1. `inputs.detail` on the node
323
+
324
+ ```json
325
+ {
326
+ "inputs": {
327
+ "detail": {
328
+ "connectionId": "<CONNECTION_UUID>",
329
+ "folderKey": "<FOLDER_KEY>",
330
+ "method": "<HTTP_METHOD>",
331
+ "endpoint": "<API_PATH>",
332
+ "bodyParameters": { "<FIELD>": "<VALUE>" },
333
+ "queryParameters": { "<FIELD>": "<VALUE>" },
334
+ "pathParameters": { "<PLACEHOLDER>": "<VALUE>" }
335
+ }
336
+ }
337
+ }
338
+ ```
339
+
340
+ Source metadata from either command. Run `uip maestro flow registry get <node-type> --connection-id <id> --output json`: `method` ← `connectorMethodInfo.method`; `endpoint` ← `connectorMethodInfo.path`; `bodyParameters.<name>` ← `inputDefinition.fields[].name`; `queryParameters.<name>` ← `connectorMethodInfo.parameters[]` where `type: query`; `pathParameters.<name>` ← `connectorMethodInfo.parameters[]` where `type: path`, matching a `{placeholder}` in `endpoint`.
341
+
342
+ Or run `uip is resources describe <connector-key> <objectName> --connection-id <id> --operation <Op> --output json`: `method` ← `availableOperations[].method`; `endpoint` ← `availableOperations[].path`; `bodyParameters.<name>` ← `requestFields[].name`; `queryParameters.<name>` ← `parameters[]` where `type: query`; `pathParameters.<name>` ← `parameters[]` where `type: path`, matching a `{placeholder}` in `endpoint`.
343
+
344
+ ### 2. Connection binding in `bindings_v2.json`
345
+
346
+ ```json
347
+ {
348
+ "version": "2.0",
349
+ "resources": [
350
+ {
351
+ "resource": "Connection",
352
+ "key": "<CONNECTION_UUID>",
353
+ "id": "Connection<CONNECTION_UUID>",
354
+ "value": {
355
+ "ConnectionId": {
356
+ "defaultValue": "<CONNECTION_UUID>",
357
+ "isExpression": false,
358
+ "displayName": "<CONNECTOR_KEY> connection"
359
+ }
360
+ },
361
+ "metadata": {
362
+ "ActivityName": "<ACTIVITY_DISPLAY_NAME>",
363
+ "BindingsVersion": "2.2",
364
+ "DisplayLabel": "<CONNECTOR_KEY> connection",
365
+ "UseConnectionService": "true",
366
+ "Connector": "<CONNECTOR_KEY>"
367
+ }
368
+ }
369
+ ]
370
+ }
371
+ ```
372
+
373
+ See [connector/impl.md](plugins/connector/impl.md) for the complete schema and multi-connector examples.
@@ -0,0 +1,103 @@
1
+ # Flow Editing Operations
2
+
3
+ Strategy selection and shared concepts for modifying `.flow` files. Author non-carve-out structural changes directly in `.flow`; reserve CLI for documented product-managed configuration carve-outs.
4
+
5
+ ## Tool Selection Ladder
6
+
7
+ Pick the lowest-numbered tool that fits. If none fits, stop and ask the user. Scripting languages (`python`, `node`, `jq`, `sed`, `awk`, shell heredocs) are a last resort and require explicit user approval; see rung 4.
8
+
9
+ 1. **CLI-managed carve-outs only:** use the relevant plugin workflow for connector activity, connector-trigger, or managed HTTP operations when the CLI populates product-managed state (`inputs.detail`, `bindings_v2.json`, connection resources).
10
+ 2. **Structural `.flow` mutations:** use `Edit` for all OOTB node CRUD, edges, variables, in-place values, output mapping, subflows, scheduled triggers, non-connector resources, and inline-agent nodes/wiring.
11
+ 3. **Wholesale rewrite:** use `Write` only when ≥70% of nodes change, such as scaffolding from a template. Never use it on a flow containing CLI-owned nodes (connector, connector-trigger, managed HTTP): it clobbers their CLI-owned `bindings[]` / `inputs.detail`, which `flow validate` will not catch. Use `Edit` (rung 2). If using `Write`, run `node configure` **as the last write** to touch `inputs.detail` / `bindings[]`; a later `Write` re-clobbers it. See [CAPABILITY.md — Node ownership](CAPABILITY.md#node-ownership--who-authors-the-node).
12
+ 4. **Anything else:** stop and ask the user. Before any scripting language, surface the trade-offs (state bypass, opaque diff, no interruption point) and offer exactly: **Use `Edit` instead** / **Use `Write` (full rewrite)** / **Approve the script for this change** / **Cancel** / **Something else**. Proceed only after explicit approval for this specific change. See the dropdown question rule in [SKILL.md](../../SKILL.md).
13
+
14
+ ### Why not Python / Node / jq / sed?
15
+
16
+ CLI auto-manages cross-cutting state (`definitions[]`, `variables.nodes`, edge references, layout); scripting bypasses that and requires hand-rolling it. `Edit` provides a line-by-line diff and is atomic per call; sequential calls remain interruptible, unlike one script. If a change is too tangled for sequential `Edit` calls, use `Write` for the whole file or stop and ask the user. See [editing-operations-json.md](editing-operations-json.md) and the SKILL.md rule on forbidden tools.
17
+
18
+ Use Edit / Write for all non-carve-out `.flow` edits. Flow CLI is not an opt-in alternative for OOTB structural edits. Use CLI only for connector activity, connector-trigger, and managed HTTP carve-outs. Inline-agent project lifecycle commands (`uip agent init --inline-in-flow`, `uip agent refresh --inline-in-flow`, `uip agent validate --inline-in-flow`) are allowed for the agent project, but author the `uipath.agent.autonomous` flow node and edges directly in `.flow` JSON.
19
+
20
+ | Strategy | Guide | When to use |
21
+ |---|---|---|
22
+ | **Edit / Write** (required outside carve-outs) | [editing-operations-json.md](editing-operations-json.md) | Node/edge CRUD, variables, subflows, output mapping, in-place input updates, scheduled triggers, non-connector resources, inline-agent flow node/wiring. |
23
+ | **CLI** (carve-outs only) | [editing-operations-cli.md](editing-operations-cli.md) | Connector activity, connector-trigger, and managed HTTP workflows documented by their plugins. |
24
+
25
+ ## Operation Matrix
26
+
27
+ **Edit / Write is required outside the carve-out rows.**
28
+
29
+ | Operation | Default | Notes |
30
+ |---|---|---|
31
+ | Add a node | **Edit / Write** | Includes HITL QuickForm; wire `completed` after adding. |
32
+ | Add a managed HTTP node | **CLI** (carve-out) `node add`, then CLI `node configure` | Run `uip maestro flow node add <file>.flow core.action.http.v2 ...`; do not hand-author `definitions[]`. See [http/impl.md — Step 1](plugins/http/impl.md#add-the-node). |
33
+ | Delete a node; add/delete an edge; update non-carve-out inputs; add/edit a workflow variable; add a variable update; map End-node outputs | **Edit** | In-place input edits preserve node ID and `$vars`; variable updates are Edit-only. Every edge needs `targetPort` (Rule #6). |
34
+ | Create a subflow | **Edit / Write** | Edit-only, or `Write` for a fresh template. |
35
+ | Replace a non-connector trigger; replace a non-connector mock; insert a node; insert a decision branch; remove a node and reconnect | **Edit** | — |
36
+ | Configure a connector node or connector trigger | **CLI** (carve-out) | Run `uip maestro flow node configure --detail`; it auto-populates `inputs.detail` + `bindings_v2.json`. Hand-authored `inputs.detail` skips `essentialConfiguration` and fails at runtime — no Edit fallback. |
37
+ | Configure a managed HTTP node | **CLI** (carve-out) | Use the documented managed HTTP workflow for `inputs.detail` and connection resources. |
38
+ | Add an inline agent node | **Edit / Write** | Scaffold with `uip agent init --inline-in-flow`, then add the `uipath.agent.autonomous` node and edges directly. |
39
+
40
+ For managed HTTP `inputs.branches` / `timeout` / `retryCount`, set them at `node add --input` time; change them by `uip maestro flow node remove` and re-add with new `--input`. Variable declaration CLI commands `uip maestro flow variable add\|list\|remove` exist for eval inputs; see [variables-and-expressions.md § Variable Management via CLI](../shared/variables-and-expressions.md#variable-management-via-cli).
41
+
42
+ For structural changes followed by a carve-out, edit the `.flow` first, then run only the relevant plugin `impl.md` workflow, such as configuring a managed HTTP or connector node. Otherwise use `Edit`, or `Write` for a wholesale rewrite.
43
+
44
+ ## Shared Rules
45
+
46
+ ### Definitions
47
+
48
+ - Ensure every unique `type:typeVersion` pair in `nodes` has a matching `definitions` entry.
49
+ - Run `uip maestro flow registry get <node-type> --output json` and copy the returned node definition object (`Data.Node` or the top-level node object, depending on CLI/plugin version).
50
+ - Never hand-write definitions; use one definition per unique type, not per node instance.
51
+
52
+ ### Layout
53
+
54
+ - Treat `layout.nodes` and `subflows[<id>].layout` as owned by `uip maestro flow format`; do not hand-compute coordinates.
55
+ - Placeholder `position` values such as `{ x: 0, y: 0 }` are acceptable while authoring.
56
+ - Run `uip maestro flow format <file>.flow` after edits and before publish/debug; see [cli-commands.md](../shared/cli-commands.md#uip-maestro-flow-format).
57
+
58
+ ### Edges
59
+
60
+ - Give every edge a `targetPort`; validation rejects edges without it.
61
+ - See [file-format.md — Standard ports](../shared/file-format.md) for port names.
62
+ - Use these dynamic ports: decision (`true`/`false), switch (`case-{id}`/`default`), HTTP (`branch-{id}`/`default`), loop (`start`/`continue`/`break` inner, `success`/`error` outer).
63
+
64
+ ### Validation
65
+
66
+ - Run `uip maestro flow validate <ProjectName>.flow --output json` **once** after all edits complete.
67
+ - Do not validate after each individual edit; intermediate states may be invalid.
68
+ - Validation checks JSON schema, definitions coverage, edge references, and unique IDs, but does **not** check connector configuration, connection health, expression correctness, or required-field completeness.
69
+
70
+ ### Parallel Same-File Edits
71
+
72
+ For any turn issuing more than one `Edit` against the same `.flow` (greenfield T2 or brownfield):
73
+
74
+ - Serialize same-file Edits in execution order. Each later Edit runs against the prior text; an `old_string` overlapping removed or shifted text fails with "string not found."
75
+ - Anchor each Edit on its target array's OWN opening key (`"nodes": [`, `"edges": [`, `"definitions": [`, or `layout.nodes`), located in the text just read. Never anchor on "the key that follows X"; top-level key order and presence are not guaranteed (see [file-format.md](../shared/file-format.md#top-level-structure)).
76
+ - Because `"nodes": [` and `"edges": [` recur inside inline `definitions[]` and `subflows.<id>`, use the 2-space-indented top-level occurrence and extend until the match is unique.
77
+ - Insert at the array head, immediately after `[`, so `old_string` never spans the closing `]`.
78
+
79
+ See the full anchor table and example: [greenfield.md — Anchoring parallel `.flow` Edits](greenfield.md#anchoring-parallel-flow-edits--anchor-on-what-you-read-not-on-key-order).
80
+
81
+ ### Expression Prefixes
82
+
83
+ - Use `=js:` on value expressions: End output `source`, variable updates, HTTP input fields, and node `inputs` values.
84
+ - Do **not** use `=js:` on condition expressions: decision `expression`, switch case `expression`, and HTTP branch `conditionExpression`; evaluate these as JS automatically.
85
+
86
+ See [variables-and-expressions.md](../shared/variables-and-expressions.md).
87
+
88
+ ## Quick Reference
89
+
90
+ | I need to... | Go to |
91
+ |---|---|
92
+ | Add/delete nodes or edges | [Edit/Write guide](editing-operations-json.md) |
93
+ | Change a node's inputs | [Edit/Write guide — Update node inputs](editing-operations-json.md#update-node-inputs) |
94
+ | Configure a connector node | [CLI guide — Configure a connector node](editing-operations-cli.md#configure-a-connector-node) (carve-out) or [Edit/Write guide — Connector Node Configuration](editing-operations-json.md#connector-node-configuration-edit--write-fallback) (fallback) |
95
+ | Manage variables | [Edit/Write guide — Variable Operations](editing-operations-json.md#variable-operations) |
96
+ | Map outputs on End nodes | [Edit/Write guide — Add output mapping](editing-operations-json.md#add-output-mapping-on-an-end-node) |
97
+ | Create a subflow | [Edit/Write guide — Create a subflow](editing-operations-json.md#create-a-subflow) |
98
+ | Replace a mock placeholder (non-connector) | [Edit/Write guide — Replace a mock](editing-operations-json.md#replace-a-mock-with-a-real-resource-node) |
99
+ | Replace a trigger type (non-connector) | [Edit/Write guide — Replace trigger](editing-operations-json.md#replace-manual-trigger-with-scheduled-trigger) |
100
+ | Replace a trigger type (connector trigger) | [CLI guide — Replace trigger](editing-operations-cli.md#replace-manual-trigger-with-connector-trigger) (carve-out) |
101
+ | Understand the `.flow` JSON schema | [file-format.md](../shared/file-format.md) |
102
+ | Look up CLI flags and syntax | [cli-commands.md](../shared/cli-commands.md) |
103
+ | Work with variables and expressions | [variables-and-expressions.md](../shared/variables-and-expressions.md) |