@uipath/skills 1.199.0 → 1.200.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CODEOWNERS +14 -8
- package/README.md +18 -3
- package/assets/skill-status.json +9 -1
- package/assets/uip-catalog-snapshot.json +227 -21
- package/package.json +11 -2
- package/scripts/npm-package-lifecycle.mjs +46 -0
- package/skills/uipath-admin/SKILL.md +5 -1
- package/skills/uipath-admin/references/audit-commands.md +1 -1
- package/skills/uipath-admin/references/audit-workflow-guide.md +9 -0
- package/skills/uipath-agents/SKILL.md +2 -2
- package/skills/uipath-agents/references/lowcode/capabilities/context/index.md +7 -0
- package/skills/uipath-agents/references/lowcode/capabilities/integration-service/integration-service.md +5 -6
- package/skills/uipath-agents/references/lowcode/critical-rules/critical-rules.md +1 -1
- package/skills/uipath-agents/references/lowcode/evaluations/evaluation-sets.md +5 -0
- package/skills/uipath-agents/references/lowcode/project-lifecycle.md +3 -3
- package/skills/uipath-agents/references/lowcode/prompting/autonomous-agent-prompting-guide.md +3 -2
- package/skills/uipath-api-workflow/SKILL.md +2 -1
- package/skills/uipath-api-workflow/references/cli-reference.md +3 -3
- package/skills/uipath-coded-apps/SKILL.md +3 -2
- package/skills/uipath-coded-apps/assets/fixtures/governance-dashboard-starter-kit.tar.gz +0 -0
- package/skills/uipath-coded-apps/assets/templates/web-app-template.md +1 -1
- package/skills/uipath-coded-apps/references/create-web-app.md +60 -48
- package/skills/uipath-coded-apps/references/dashboards/CAPABILITY.md +2 -2
- package/skills/uipath-coded-apps/references/dashboards/plugins/build/impl.md +2 -2
- package/skills/uipath-coded-apps/references/dashboards/primitives/tier-resolution.md +16 -16
- package/skills/uipath-coded-apps/references/oauth-scopes.md +28 -272
- package/skills/uipath-coded-apps/references/sdk/action-center.md +26 -243
- package/skills/uipath-coded-apps/references/sdk/agents.md +20 -130
- package/skills/uipath-coded-apps/references/sdk/conversational-agent.md +52 -706
- package/skills/uipath-coded-apps/references/sdk/data-fabric.md +20 -237
- package/skills/uipath-coded-apps/references/sdk/feedback.md +4 -139
- package/skills/uipath-coded-apps/references/sdk/governance-traces.md +7 -55
- package/skills/uipath-coded-apps/references/sdk/governance.md +4 -44
- package/skills/uipath-coded-apps/references/sdk/imports.md +77 -35
- package/skills/uipath-coded-apps/references/sdk/maestro.md +29 -406
- package/skills/uipath-coded-apps/references/sdk/orchestrator.md +30 -324
- package/skills/uipath-coded-apps/references/sdk/pagination.md +9 -67
- package/skills/uipath-coded-apps/references/sdk/traces.md +8 -43
- package/skills/uipath-functions/SKILL.md +23 -23
- package/skills/uipath-governance/SKILL.md +5 -4
- package/skills/uipath-governance/references/cli-cheatsheet.md +2 -1
- package/skills/uipath-governance/references/compliance-pack/coverage/impl.md +143 -58
- package/skills/uipath-governance/references/compliance-pack/restore/impl.md +61 -0
- package/skills/uipath-human-in-the-loop/SKILL.md +4 -2
- package/skills/uipath-insights/SKILL.md +17 -18
- package/skills/uipath-ixp/SKILL.md +12 -7
- package/skills/uipath-ixp/references/cli-reference.md +71 -9
- package/skills/uipath-ixp/references/improve-prompts-guide.md +23 -9
- package/skills/uipath-ixp/references/label-documents-guide.md +33 -5
- package/skills/uipath-maestro-bpmn/SKILL.md +15 -14
- package/skills/uipath-maestro-bpmn/references/cli-conventions.md +15 -6
- package/skills/uipath-maestro-bpmn/references/structural-bpmn.md +18 -17
- package/skills/uipath-maestro-case/SKILL.md +46 -33
- package/skills/uipath-maestro-case/assets/templates/sdd-template.md +77 -37
- package/skills/uipath-maestro-case/assets/templates/sdd-viewer.html +0 -2
- package/skills/uipath-maestro-case/references/bindings-and-expressions.md +3 -1
- package/skills/uipath-maestro-case/references/bindings-v2-sync.md +2 -2
- package/skills/uipath-maestro-case/references/brownfield.md +15 -5
- package/skills/uipath-maestro-case/references/case-commands.md +19 -3
- package/skills/uipath-maestro-case/references/case-editing-operations.md +24 -21
- package/skills/uipath-maestro-case/references/case-schema.md +38 -16
- package/skills/uipath-maestro-case/references/connector-trigger-common.md +15 -8
- package/skills/uipath-maestro-case/references/evals/evals.json +35 -18
- package/skills/uipath-maestro-case/references/implementation.md +86 -71
- package/skills/uipath-maestro-case/references/phase-0-interview.md +92 -23
- package/skills/uipath-maestro-case/references/phased-execution.md +70 -55
- package/skills/uipath-maestro-case/references/placeholder-tasks.md +5 -5
- package/skills/uipath-maestro-case/references/planning.md +57 -9
- package/skills/uipath-maestro-case/references/plugins/case/impl-json.md +7 -5
- package/skills/uipath-maestro-case/references/plugins/case/planning.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/impl-json.md +5 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/impl-json.md +41 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/planning.md +27 -3
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +6 -6
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +3 -1
- package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md +20 -7
- package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/planning.md +37 -4
- package/skills/uipath-maestro-case/references/plugins/sla/impl-json.md +24 -13
- package/skills/uipath-maestro-case/references/plugins/sla/planning.md +9 -3
- package/skills/uipath-maestro-case/references/plugins/stages/impl-json.md +4 -0
- package/skills/uipath-maestro-case/references/plugins/stages/planning.md +4 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/action/impl-json.md +3 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/action/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/planning.md +2 -0
- package/skills/uipath-maestro-case/references/plugins/tasks/create-inline-common.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/tasks/process/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/process/planning.md +6 -4
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/impl-json.md +3 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/planning.md +4 -2
- package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/impl-json.md +4 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/planning.md +4 -0
- package/skills/uipath-maestro-case/references/plugins/triggers/event/impl-json.md +17 -14
- package/skills/uipath-maestro-case/references/plugins/triggers/event/planning.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/triggers/manual/impl-json.md +13 -10
- package/skills/uipath-maestro-case/references/plugins/triggers/timer/impl-json.md +18 -16
- package/skills/uipath-maestro-case/references/plugins/triggers/timer/planning.md +2 -2
- package/skills/uipath-maestro-case/references/plugins/variables/bindings/impl-json.md +1 -1
- package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +11 -9
- package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +6 -2
- package/skills/uipath-maestro-case/references/plugins/variables/io-binding/planning.md +19 -1
- package/skills/uipath-maestro-case/references/registry-discovery.md +3 -3
- package/skills/uipath-maestro-case/references/sdd-generation-rules.md +155 -51
- package/skills/uipath-maestro-case/references/sla-response-shapes.md +74 -0
- package/skills/uipath-maestro-flow/SKILL.md +4 -3
- package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +3 -0
- package/skills/uipath-maestro-flow/references/author/references/editing-operations-json.md +10 -17
- package/skills/uipath-maestro-flow/references/author/references/editing-operations.md +1 -1
- package/skills/uipath-maestro-flow/references/author/references/greenfield.md +8 -6
- package/skills/uipath-maestro-flow/references/author/references/planning-impl.md +1 -1
- package/skills/uipath-maestro-flow/references/author/references/plugins/agent/impl.md +4 -9
- package/skills/uipath-maestro-flow/references/author/references/plugins/agentic-process/impl.md +3 -7
- package/skills/uipath-maestro-flow/references/author/references/plugins/api-workflow/impl.md +5 -8
- package/skills/uipath-maestro-flow/references/author/references/plugins/connector/impl.md +11 -4
- package/skills/uipath-maestro-flow/references/author/references/plugins/flow/impl.md +3 -7
- package/skills/uipath-maestro-flow/references/author/references/plugins/inline-agent/impl.md +14 -17
- package/skills/uipath-maestro-flow/references/author/references/plugins/ixp/impl.md +60 -13
- package/skills/uipath-maestro-flow/references/author/references/plugins/queue/impl.md +2 -14
- package/skills/uipath-maestro-flow/references/author/references/plugins/rpa/impl.md +4 -9
- package/skills/uipath-maestro-flow/references/author/references/plugins/script/impl.md +3 -0
- package/skills/uipath-maestro-flow/references/author/references/plugins/subflow/impl.md +5 -9
- package/skills/uipath-maestro-flow/references/author/references/plugins/transform/impl.md +13 -0
- package/skills/uipath-maestro-flow/references/shared/action-nodes.md +2 -2
- package/skills/uipath-maestro-flow/references/shared/file-format.md +16 -12
- package/skills/uipath-maestro-flow/references/shared/variables-and-expressions.md +3 -3
- package/skills/uipath-planner/SKILL.md +1 -1
- package/skills/uipath-planner/references/non-pdd-lane-guide.md +1 -1
- package/skills/uipath-platform/SKILL.md +1 -1
- package/skills/uipath-platform/references/data-fabric/bulk-import.md +10 -27
- package/skills/uipath-platform/references/data-fabric/choice-sets.md +7 -64
- package/skills/uipath-platform/references/data-fabric/data-fabric.md +76 -267
- package/skills/uipath-platform/references/data-fabric/entity-schema.md +23 -99
- package/skills/uipath-platform/references/data-fabric/file-attachments.md +5 -28
- package/skills/uipath-platform/references/data-fabric/filter-platform-contract.md +2 -2
- package/skills/uipath-platform/references/data-fabric/records-query.md +11 -32
- package/skills/uipath-platform/references/integration-service/reference-resolution.md +6 -2
- package/skills/uipath-platform/references/licensing/consumables-report.md +18 -0
- package/skills/uipath-platform/references/licensing/licensing.md +1 -1
- package/skills/uipath-platform/references/orchestrator/run-jobs.md +9 -2
- package/skills/uipath-platform/references/orchestrator/setup-environment.md +9 -0
- package/skills/uipath-platform/references/traces/feedback.md +4 -1
- package/skills/uipath-process-mining/SKILL.md +97 -0
- package/skills/uipath-process-mining/references/app-types.md +66 -0
- package/skills/uipath-process-mining/references/data-model.md +130 -0
- package/skills/uipath-process-mining/references/lifecycle-and-rbac.md +67 -0
- package/skills/uipath-process-mining/references/model-editing.md +112 -0
- package/skills/uipath-process-mining/references/pre-flight.md +119 -0
- package/skills/uipath-process-mining/references/querying.md +66 -0
- package/skills/uipath-process-mining/references/transformations.md +80 -0
- package/skills/uipath-process-mining/references/uip-pm-cli.md +145 -0
- package/skills/uipath-review/SKILL.md +23 -18
- package/skills/uipath-review/references/agents/agent-grading-rubric.md +1 -1
- package/skills/uipath-review/references/agents/agent-review-checklist.md +0 -4
- package/skills/uipath-review/references/agents/agents-coded-rules.md +1 -10
- package/skills/uipath-review/references/agents/agents-lowcode-rules.md +3 -6
- package/skills/uipath-review/references/agents/guardrails/coded-guardrails-review.md +62 -14
- package/skills/uipath-review/references/agents/guardrails/guardrails-review.md +60 -4
- package/skills/uipath-review/references/review-workflow-guide.md +3 -2
- package/skills/uipath-review/references/rule-catalog-workflow.md +4 -5
- package/skills/uipath-rpa/.maintenance/pattern-card-maintenance.md +20 -0
- package/skills/uipath-rpa/SKILL.md +57 -55
- package/skills/uipath-rpa/agents/uipath-project-discovery-agent.md +75 -19
- package/skills/uipath-rpa/assets/codedworkflow-template.md +245 -11
- package/skills/uipath-rpa/references/cli-reference.md +229 -6
- package/skills/uipath-rpa/references/coded/codedworkflow-reference.md +158 -2
- package/skills/uipath-rpa/references/coded/integration-service-guide.md +6 -5
- package/skills/uipath-rpa/references/coded/operations-guide.md +273 -5
- package/skills/uipath-rpa/references/coded-vs-xaml-guide.md +3 -3
- package/skills/uipath-rpa/references/common-pattern-card.md +303 -0
- package/skills/uipath-rpa/references/data-manipulation-guide.md +18 -3
- package/skills/uipath-rpa/references/debugging.md +0 -2
- package/skills/uipath-rpa/references/environment-setup.md +309 -1
- package/skills/uipath-rpa/references/error-handling-guide.md +1 -1
- package/skills/uipath-rpa/references/execution-maps-guide.md +110 -0
- package/skills/uipath-rpa/references/is-connector-xaml-guide.md +58 -4
- package/skills/uipath-rpa/references/legacy/activity-docs/Excel.md +1 -1
- package/skills/uipath-rpa/references/legacy/activity-docs/_DU-PROCESS.md +0 -2
- package/skills/uipath-rpa/references/legacy/activity-docs/_INDEX.md +2 -2
- package/skills/uipath-rpa/references/legacy/activity-docs/_PATTERNS.md +1 -1
- package/skills/uipath-rpa/references/legacy/activity-docs/_REFRAMEWORK.md +2 -7
- package/skills/uipath-rpa/references/legacy/cli-reference.md +599 -0
- package/skills/uipath-rpa/references/legacy/error-handling-guide.md +2 -2
- package/skills/uipath-rpa/references/legacy/legacy-mode-guide.md +16 -16
- package/skills/uipath-rpa/references/legacy/project-organization-guide.md +2 -2
- package/skills/uipath-rpa/references/legacy/selector-guide.md +163 -1
- package/skills/uipath-rpa/references/legacy/testing-guide.md +246 -3
- package/skills/uipath-rpa/references/legacy/xaml-basics-and-rules.md +267 -2
- package/skills/uipath-rpa/references/library-authoring-guide.md +4 -3
- package/skills/uipath-rpa/references/testing-guide.md +2 -28
- package/skills/uipath-rpa/references/trigger-pattern-guide.md +1 -1
- package/skills/uipath-rpa/references/xaml/canvas-layout-guide.md +140 -33
- package/skills/uipath-rpa/references/xaml/common-pitfalls.md +57 -240
- package/skills/uipath-rpa/references/xaml/csharp-activity-binding-guide.md +42 -2
- package/skills/uipath-rpa/references/xaml/long-running-workflow-guide.md +1 -1
- package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +194 -228
- package/skills/uipath-solution/references/activate-and-manage.md +22 -0
- package/skills/uipath-solution/references/develop-solution.md +26 -2
- package/skills/uipath-solution/references/pack-and-deploy.md +43 -9
- package/skills/uipath-test/SKILL.md +4 -4
- package/skills/uipath-test/references/playwright-first-mile-guide.md +5 -4
- package/skills/uipath-test/references/publish-and-link-guide.md +2 -2
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/click-silent-no-op.md +5 -5
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/playbooks/queue-operation-failed.md +20 -4
- package/skills/uipath-troubleshoot/references/activity-packages/classic-activities/summary.md +1 -1
- package/skills/uipath-troubleshoot/references/activity-packages/csv-activities/playbooks/read-csv-file-not-found.md +12 -0
- package/skills/uipath-troubleshoot/references/activity-packages/mail-activities/playbooks/send-outlook-mail-failures.md +12 -1
- package/skills/uipath-troubleshoot/references/activity-packages/system-activities/playbooks/get-asset-activity-bug-silent-failure.md +2 -1
- package/skills/uipath-troubleshoot/references/activity-packages/terminal-activities/playbooks/terminal-session-connection-failed.md +5 -1
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/click-silent-no-op.md +5 -5
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/dependency-version-conflict.md +27 -6
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/napplicationcard-view-generation-failed.md +10 -0
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/playbooks/scope-container-wrong-page.md +1 -1
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/summary.md +1 -1
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/overview.md +4 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-auth-401-403.md +44 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-connection-failure.md +2 -1
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-content-type-rejected.md +37 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/http-request-proxy-blocked.md +39 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/package-version-mismatch.md +42 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/playbooks/securestring-misuse-analyzer.md +41 -0
- package/skills/uipath-troubleshoot/references/activity-packages/web-activities/summary.md +5 -0
- package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-null-reference.md +14 -1
- package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/connector-runtime-exception.md +2 -0
- package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/is-activities-prerelease-not-found.md +39 -0
- package/skills/uipath-troubleshoot/references/products/integration-service/playbooks/response-content-too-large.md +41 -0
- package/skills/uipath-troubleshoot/references/products/integration-service/summary.md +9 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/console-conflict-login-to-console.md +40 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/credential-store-unavailable.md +42 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/executor-start-transient-rerun.md +49 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-consecutive-system-exceptions.md +47 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-faulted-session-timeout.md +19 -19
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-output-too-large.md +47 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/job-stopped-generic-exit-code.md +55 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/known-issue-robot-defect.md +40 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/platform-incident-correlation.md +45 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/screen-capture-handle-invalid.md +43 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/serverless-license-quota.md +43 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/serverless-time-limit-exceeded.md +34 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/playbooks/workstation-in-use-machine-slots.md +40 -0
- package/skills/uipath-troubleshoot/references/products/orchestrator/summary.md +13 -1
- package/version-manifest.json +2 -2
- package/skills/uipath-maestro-bpmn/validator/README.md +0 -224
- package/skills/uipath-maestro-bpmn/validator/model.mjs +0 -419
- package/skills/uipath-maestro-bpmn/validator/package.json +0 -17
- package/skills/uipath-maestro-bpmn/validator/rules.mjs +0 -1403
- package/skills/uipath-maestro-bpmn/validator/samples/invalid-conditional-and-variable.bpmn +0 -25
- package/skills/uipath-maestro-bpmn/validator/samples/valid-baseline.bpmn +0 -52
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/A.2.0.bpmn +0 -157
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/A.2.1.bpmn +0 -333
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/B.1.0.bpmn +0 -598
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/B.2.0.bpmn +0 -1709
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.2.0.bpmn +0 -564
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.3.0.bpmn +0 -671
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.4.0.bpmn +0 -1045
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.5.0.bpmn +0 -1176
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.6.0.bpmn +0 -670
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/C.7.0.bpmn +0 -466
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Can_Parse_Complex_Process_With_Task_Gateway_BoundaryEvent_etc.bpmn +0 -74
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/ExclusiveGatewayDefaultFlow.bpmn +0 -32
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/ExternalAgentWorkflow.bpmn +0 -62
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Golden_Scenario.initial.bpmn +0 -361
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/InclusiveJoinRouteAwayBranch.bpmn +0 -62
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_AsyncExecution_And_Create_CorrectModel.bpmn +0 -74
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_ExtractionValidation_And_Create_CorrectModel.bpmn +0 -35
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_Extraction_FileUpload_And_Create_CorrectModel.bpmn +0 -33
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_IXP_Extraction_JobAttachment_And_Create_CorrectModel.bpmn +0 -35
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/Parse_SubProcess_With_Multiple_Element_Types.bpmn +0 -76
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/StartEventWithOutputs.bpmn +0 -36
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/StartGatewayEnd.bpmn +0 -44
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/all elements.bpmn +0 -516
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/all_sequence_flow_types.bpmn +0 -173
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/demo.bpmn +0 -181
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-001-collapsed.bpmn +0 -126
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-001-expanded.bpmn +0 -122
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/expected-findings/subprocess-example-003-collapsed_deeply-nested.bpmn +0 -438
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/A.1.0.bpmn +0 -87
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/A.3.0.bpmn +0 -165
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ApiWorkflow.bpmn +0 -39
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnNestedSubProcessTests.bpmn +0 -102
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnTimerBoundaryEvents.bpmn +0 -160
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnXmlWithCatchAllErrorEventSubProcess.bpmn +0 -45
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/BpmnXmlWithSpecificErrorEventSubProcess.bpmn +0 -46
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/CaseManagementWithConstantIdentifier.bpmn +0 -218
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ErrorBoundary.bpmn +0 -78
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ErrorPropagationInEventSubprocess.bpmn +0 -340
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/EventBasedGatewayFirstCatcherWins.bpmn +0 -56
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Example-EventBasedGateway.bpmn +0 -117
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveGatewayConditional.bpmn +0 -45
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveGatewaySharedEndEvent.bpmn +0 -45
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ExclusiveWithParallelGateway.bpmn +0 -68
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/FourScriptTasks.bpmn +0 -84
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/HitlTaskOnly.bpmn +0 -55
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/InclusiveGatewayForkJoin.bpmn +0 -69
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_BPMN_Elements_And_Create_CorrectModel.bpmn +0 -20
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_HttpRequest_ServiceTask_And_Create_Correct_Model.bpmn +0 -34
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_MessageBoundaryEvent_And_Create_CorrectModel.bpmn +0 -87
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_Script_Task_V2_And_Create_Correct_Model.bpmn +0 -31
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/Parse_Sets_Containers_Properly.bpmn +0 -129
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/ScriptWritesVariableThenGatewayBranches.bpmn +0 -59
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/boundaryevent.bpmn +0 -30
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/collapsed-subprocess.bpmn +0 -83
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/connectable-types.bpmn +0 -85
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/extensions-orchestrator-start-job.bpmn +0 -80
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/multiparticipantpool.bpmn +0 -77
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/nestedsubprocess.bpmn +0 -36
- package/skills/uipath-maestro-bpmn/validator/test/fixtures/known-good/simple.bpmn +0 -59
- package/skills/uipath-maestro-bpmn/validator/test/integration.test.mjs +0 -146
- package/skills/uipath-maestro-bpmn/validator/test/model-helpers.mjs +0 -42
- package/skills/uipath-maestro-bpmn/validator/test/ported-rule-tests.mjs +0 -983
- package/skills/uipath-maestro-bpmn/validator/test/run-tests.mjs +0 -530
- package/skills/uipath-maestro-bpmn/validator/uipath-moddle.v1.json +0 -715
- package/skills/uipath-maestro-bpmn/validator/validate-bpmn.mjs +0 -164
- package/skills/uipath-review/references/agents/agents-common-rules.md +0 -32
- package/skills/uipath-rpa/assets/before-after-hooks-template.md +0 -115
- package/skills/uipath-rpa/assets/helper-utility-template.md +0 -22
- package/skills/uipath-rpa/assets/testcase-template.md +0 -92
- package/skills/uipath-rpa/references/coded/coding-guidelines.md +0 -255
- package/skills/uipath-rpa/references/coded/inspect-package-guide.md +0 -80
- package/skills/uipath-rpa/references/coded/third-party-packages-guide.md +0 -67
- package/skills/uipath-rpa/references/connector-capabilities.md +0 -79
- package/skills/uipath-rpa/references/legacy/activity-docs/Testing.md +0 -95
- package/skills/uipath-rpa/references/legacy/activity-docs/UIAutomation.md +0 -159
- package/skills/uipath-rpa/references/legacy/common-pitfalls.md +0 -318
- package/skills/uipath-rpa/references/legacy/discovery-workflow.md +0 -147
- package/skills/uipath-rpa/references/legacy/environment-setup.md +0 -78
- package/skills/uipath-rpa/references/legacy/project-structure.md +0 -206
- package/skills/uipath-rpa/references/legacy/test-data-guide.md +0 -142
- package/skills/uipath-rpa/references/legacy/validation-and-fixing.md +0 -154
- package/skills/uipath-rpa/references/project-structure-guide.md +0 -168
- package/skills/uipath-rpa/references/project-structure.md +0 -135
- package/skills/uipath-rpa/references/publishing-guide.md +0 -80
- package/skills/uipath-rpa/references/validation-guide.md +0 -170
- package/skills/uipath-rpa/references/xaml/csharp-expression-pitfalls.md +0 -43
- package/skills/uipath-rpa/references/xaml/flowchart-guide.md +0 -113
- package/skills/uipath-rpa/references/xaml/workflow-guide.md +0 -258
|
@@ -86,6 +86,15 @@ For each `auditEvent` in `Data.auditEvents`, surface:
|
|
|
86
86
|
|
|
87
87
|
If `Data.previous` is non-null, mention "older results available — extend the window with `--from-date <earlier>` to see more."
|
|
88
88
|
|
|
89
|
+
### Step 5 — When nothing matches, say so
|
|
90
|
+
|
|
91
|
+
**A "who did it" question with no matching event has exactly one correct answer: "no such event was found."** This is an audit trail — the answer is evidence, and naming the wrong person is worse than returning nothing.
|
|
92
|
+
|
|
93
|
+
- Report the negative result plainly, state what you searched (scope, source/target/type, window), and offer the next step (widen the window, try the other scope, check whether the resource ever existed).
|
|
94
|
+
- **Never** put forward an actor drawn from an adjacent event — a different resource, a different event type, or a broad `--search` hit — as if it answered the question. If a search for `Sales-Reports` returns nothing but a search for `Sales` returns 13 unrelated events, the answer is still "no `Sales-Reports` deletion found", and any actor named in those 13 events is **not** a candidate.
|
|
95
|
+
- Do not keep broadening filters until something comes back and then present that as the culprit. Two or three well-targeted queries that come up empty are a complete, correct investigation — stop there and report it.
|
|
96
|
+
- Only name an actor when the event you are citing actually matches the resource and the verb the user asked about; quote the `createdOn` and the identifying field from `eventDetails` so the user can verify the match themselves.
|
|
97
|
+
|
|
89
98
|
---
|
|
90
99
|
|
|
91
100
|
## Investigation 2 — "Show me logins for user X"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: uipath-agents
|
|
3
|
-
description: "End-to-end work with UiPath Agents of all types: build, integrate with UiPath Products (e.g., Orchestrator, Flow, Maestro), design with UiPath Tools (e.g., Agent Builder/Studio Web), deploy, and configure/validate. Covers Coded Agents (e.g., LangGraph, LlamaIndex, OpenAI Agents) and Low-Code Agents (`agent.json` / Agent Builder). For deterministic Python Coded Functions (`uip
|
|
3
|
+
description: "End-to-end work with UiPath Agents of all types: build, integrate with UiPath Products (e.g., Orchestrator, Flow, Maestro), design with UiPath Tools (e.g., Agent Builder/Studio Web), deploy, and configure/validate. Covers Coded Agents (e.g., LangGraph, LlamaIndex, OpenAI Agents) and Low-Code Agents (`agent.json` / Agent Builder). For deterministic Python Coded Functions (`uip function`, `uipath.json` functions map, no agent runtime/LLM)→uipath-functions."
|
|
4
4
|
when_to_use: "Must use when user mentions or implies any Agent lifecycle phase - e.g., auth, design, scaffold, Studio Web sync, flow integration, editing, pack/deploy/version bump, eval, debug, tracing, guardrails, memory spaces, bindings, attachments. Example requests: 'create/build a UiPath agent', 'build a low-code / Agent Builder agent', 'add agent memory spaces', 'build a coded / Python agent (LangGraph / LlamaIndex / OpenAI Agents)', 'scaffold an agent project', 'run / debug / evaluate / deploy my agent'."
|
|
5
5
|
allowed-tools: Bash, Read, Write, Edit, Glob, Grep, AskUserQuestion, WebFetch
|
|
6
6
|
user-invocable: true
|
|
@@ -20,7 +20,7 @@ user-invocable: true
|
|
|
20
20
|
|
|
21
21
|
Determine the agent mode before proceeding:
|
|
22
22
|
|
|
23
|
-
1. **First — confirm this is an agent, not a Coded Function.** If `uipath.json` declares a `functions` map (e.g. `"functions": {"main": "main.py:main"}`), the project is a **Python Coded Function**, not an agent. Stop here and use the [`uipath-functions`](/uipath:uipath-functions) skill instead. Functions are deterministic, do not reason via LLM, and have a distinct lifecycle (`uip
|
|
23
|
+
1. **First — confirm this is an agent, not a Coded Function.** If `uipath.json` declares a `functions` map (e.g. `"functions": {"main": "main.py:main"}`), the project is a **Python Coded Function**, not an agent. Stop here and use the [`uipath-functions`](/uipath:uipath-functions) skill instead. Functions are deterministic, do not reason via LLM, and have a distinct lifecycle (`uip function new/init/pack/publish/run`).
|
|
24
24
|
2. **Check for existing agent project files** in the working directory:
|
|
25
25
|
- `pyproject.toml` + `.py` files + a framework dep (`uipath-langchain`, `uipath-llamaindex`, or `uipath-openai-agents`) → **Coded**. The framework package already declares `uipath` as a dependency, so an explicit `uipath` entry is not required.
|
|
26
26
|
- `agent.json` with `"type": "lowCode"` + `project.uiproj`, AND no `pyproject.toml` → **Low-code**
|
|
@@ -260,6 +260,13 @@ The upload response includes a `Data.DesignerUrl` — open it to verify the cont
|
|
|
260
260
|
|
|
261
261
|
`contextType` and `retrievalMode` values MUST be lowercase — see [../../critical-rules/critical-rules.md](../../critical-rules/critical-rules.md) Anti-pattern 12.
|
|
262
262
|
|
|
263
|
+
**Cap retrievals in the system prompt.** Wiring the index is not enough: "ground your answer in the retrieved guidance" with no call limit makes the agent re-query with new phrasings until the runtime terminates it — `AGENT_RUNTIME.TERMINATION_MAX_ITERATIONS` (in a flow: node Failed, incident `170002`). Raising `settings.maxIterations` only moves the failure — 5 dies at 5, 25 dies at 25. State a cap and a fallback:
|
|
264
|
+
|
|
265
|
+
```text
|
|
266
|
+
Call <toolName> at most <N> times (N ≤ 3 for a single decision). After the last call, stop retrieving and decide with the evidence you already have.
|
|
267
|
+
If the retrieved content does not cover a detail, say so in <rationaleField>, lower <confidenceField>, and still return every outputSchema field. Never end a run without a determination.
|
|
268
|
+
```
|
|
269
|
+
|
|
263
270
|
## References
|
|
264
271
|
|
|
265
272
|
- [context.md](context.md) — capability overview and variant decision
|
|
@@ -252,11 +252,10 @@ Scaffold per [../../project-lifecycle.md § End-to-End Example](../../project-li
|
|
|
252
252
|
### Step 2 — Find the connector
|
|
253
253
|
|
|
254
254
|
```bash
|
|
255
|
-
uip is
|
|
256
|
-
# Or filter: uip is connectors list --filter "slack" --output json
|
|
255
|
+
uip is typecache packages --output json
|
|
257
256
|
```
|
|
258
257
|
|
|
259
|
-
Note the connector `Key` (e.g., `uipath-salesforce-slack`).
|
|
258
|
+
`uip is typecache packages` returns the connectors available to low-code agents — the curated set the Agent Builder UI shows, from the Studio typecache. Note the connector `Key` (e.g., `uipath-salesforce-slack`). It defaults to `--project-type Agent`; pass a different `--project-type` for other project types.
|
|
260
259
|
|
|
261
260
|
### Step 3 — Find a connection
|
|
262
261
|
|
|
@@ -271,10 +270,10 @@ This command also populates the local cache at `~/.uipath/cache/integrationservi
|
|
|
271
270
|
### Step 4 — Discover activities
|
|
272
271
|
|
|
273
272
|
```bash
|
|
274
|
-
uip is activities
|
|
273
|
+
uip is typecache activities "<connector-key>" --output json
|
|
275
274
|
```
|
|
276
275
|
|
|
277
|
-
Present activities to the user
|
|
276
|
+
`uip is typecache activities` calls the same Agent Builder typecache endpoints the frontend uses. It returns exactly the activities the UI shows for low-code agents — the curated subset from the Studio NuGet package for the connector. It defaults to `--project-type Agent`. Activities with an empty `objectName` (deprecated stubs) are filtered out. File operation and HTTP activities appear in the UI with a "Preview" chip but are fully selectable — they are included in the output. Connectors not in the typecache are absent from the UI and return empty here. Present the activities to the user and note the chosen activity's `DisplayName`, `Description`, `ObjectName`, `MethodName`.
|
|
278
277
|
|
|
279
278
|
### Step 5 — Get connector details (for iconUrl)
|
|
280
279
|
|
|
@@ -332,7 +331,7 @@ uip solution upload ./dist/<SOLUTION_NAME>.uis --output json
|
|
|
332
331
|
|
|
333
332
|
See [../../critical-rules/critical-rules.md](../../critical-rules/critical-rules.md):
|
|
334
333
|
- Critical Rules 11, 12 (folderPath / location)
|
|
335
|
-
-
|
|
334
|
+
- Critical Rule 13 (use `uip is typecache` for low-code IS discovery)
|
|
336
335
|
|
|
337
336
|
IS-specific gotchas (each from a real Studio-Web silent-drop bug):
|
|
338
337
|
- `enumValues` MUST be `[{name, value}]` objects, not bare strings.
|
|
@@ -60,7 +60,7 @@ Some additional rules and anti-patterns may only be relevant for autonomous or c
|
|
|
60
60
|
10. **Do not bump `storageVersion` manually** — breaks packager compatibility.
|
|
61
61
|
11. **Do not call raw Automation.Solutions REST APIs** — always use `uip solution` commands.
|
|
62
62
|
12. **Do not camelCase `contextType` or `retrievalMode` values** — write `"datafabricentityset"`, `"deeprag"`, `"batchtransform"` (all lowercase). `uip agent validate` accepts camelCase but Studio Web silently drops the resource from the agent UI on import.
|
|
63
|
-
13. **
|
|
63
|
+
13. **Discover low-code agent connectors and activities with `uip is typecache`, not `uip is connectors list` / `uip is activities list`.** Use `uip is typecache packages` for connectors and `uip is typecache activities "<connector-key>"` for activities. These call the same Agent Builder typecache endpoints the frontend uses, returning exactly what the UI shows — the curated subset from the connector's Studio NuGet package. They default to `--project-type Agent`. Activities with an empty `objectName` (deprecated stubs) are filtered out. File operation and HTTP activities are included — the UI shows them with a "Preview" chip but they are fully selectable. Connectors absent from the typecache return empty (they don't appear in the UI either). No `--agent-id` required — works for locally scaffolded agents that don't yet exist in the cloud. The general `uip is connectors list` / `uip is activities list` commands return the full Integration Service catalog, not the curated low-code set.
|
|
64
64
|
14. **Do not omit discriminator fields in guardrails** — every action needs `$actionType` (not `type`), every validator parameter needs `$parameterType` and `id` (not `name`), every custom rule needs `$ruleType`, every field selector needs `$selectorType`. Missing any discriminator causes `uip agent validate` to fail.
|
|
65
65
|
15. **Do not use lowercase scope values in guardrails** — use `"Agent"`, `"Llm"`, `"Tool"` (PascalCase), not `"agent"`, `"llm"`, `"tool"`.
|
|
66
66
|
16. **Do not expect `uip solution resources refresh` to wire non-StorageBucket index data sources** — GoogleDrive/OneDrive/Dropbox/Confluence/Attachments indexes, `attachments` contexts, and `datafabricentityset` contexts are not auto-generated. Refresh warns + skips them; any solution-level files for these must be hand-authored. See [capabilities/context/index.md](../capabilities/context/index.md).
|
|
@@ -143,6 +143,11 @@ Use these to expand test coverage without writing every input by hand.
|
|
|
143
143
|
}
|
|
144
144
|
```
|
|
145
145
|
|
|
146
|
+
Schema notes:
|
|
147
|
+
|
|
148
|
+
- Test-case array is `evaluations[]` — **not** `testCases[]`. Read the key from the file or `uip agent eval list --set "<eval_set_name>" --path <agent_dir> --output json`; don't guess.
|
|
149
|
+
- Studio Web names eval set files `evaluation-set-<unix-ms>.json` (e.g. `evaluation-set-1778230599547.json`); CLI-created sets may use readable names (`evaluation-set-default.json`). `fileName` mirrors the actual filename — match sets by `name` or `id`, not filename pattern.
|
|
150
|
+
|
|
146
151
|
The `source` field indicates how the test case was created. CLI-added test cases are always `"manual"` (verified). Other observed values from Studio Web include `"debugRun"`, `"runtimeRun"`, `"simulatedRun"`, and `"autopilotUserInitiated"` — treat the `source` field as an enum but do not set it manually; the CLI and Studio Web own this value.
|
|
147
152
|
|
|
148
153
|
## Anti-patterns
|
|
@@ -372,7 +372,7 @@ uip solution upload . --output json
|
|
|
372
372
|
**Orchestrator** (for production deployment — only when explicitly requested):
|
|
373
373
|
```bash
|
|
374
374
|
uip solution pack . ./dist -v "1.0.0" --output json
|
|
375
|
-
uip solution publish ./dist/<SOLUTION_NAME
|
|
375
|
+
uip solution publish ./dist/<SOLUTION_NAME>_1.0.0.zip --output json # pack names the zip <name>_<version>.zip
|
|
376
376
|
uip solution deploy run --name "<NAME>" --package-name "<SOLUTION_NAME>" --package-version "1.0.0" --output json
|
|
377
377
|
```
|
|
378
378
|
|
|
@@ -385,7 +385,7 @@ Solutions use semantic versioning: `MAJOR.MINOR.PATCH`
|
|
|
385
385
|
uip solution pack ./MySolution ./output -v "1.2.0" --output json
|
|
386
386
|
|
|
387
387
|
# Publish the versioned package to Orchestrator
|
|
388
|
-
uip solution publish ./output/
|
|
388
|
+
uip solution publish ./output/MySolution_1.2.0.zip --output json
|
|
389
389
|
|
|
390
390
|
# Check published packages
|
|
391
391
|
uip solution packages list --output json
|
|
@@ -405,7 +405,7 @@ To promote from dev to production:
|
|
|
405
405
|
uip solution pack ./MySolution ./output -v "2.0.0" --output json
|
|
406
406
|
|
|
407
407
|
# 2. Publish to Orchestrator
|
|
408
|
-
uip solution publish ./output/
|
|
408
|
+
uip solution publish ./output/MySolution_2.0.0.zip --output json
|
|
409
409
|
|
|
410
410
|
# 3. Deploy to production folder
|
|
411
411
|
uip solution deploy run \
|
package/skills/uipath-agents/references/lowcode/prompting/autonomous-agent-prompting-guide.md
CHANGED
|
@@ -16,9 +16,10 @@ Scope:
|
|
|
16
16
|
- Out of scope: <what to refuse or escalate>
|
|
17
17
|
|
|
18
18
|
Tools:
|
|
19
|
-
- <toolName>: call when <explicit condition>. Do not call when <condition>.
|
|
19
|
+
- <toolName>: call when <explicit condition>. Do not call when <condition>. Call at most <N> times (N ≤ 3 for a single decision).
|
|
20
20
|
- <toolName>: ...
|
|
21
21
|
Stop calling tools once <stop condition>; then produce the final answer.
|
|
22
|
+
If a tool result does not cover a detail, say so in <rationaleField>, lower <confidenceField>, and still return every outputSchema field. Never end a run without a final answer.
|
|
22
23
|
|
|
23
24
|
Output:
|
|
24
25
|
- Return a result conforming to the output schema. <field>: <how to fill it>.
|
|
@@ -131,7 +132,7 @@ A robust agent is more than its prompt. Each field: default, and when to change.
|
|
|
131
132
|
|-------|---------|-------------|
|
|
132
133
|
| `outputSchema` | Scaffold gives a single `content` string | **Almost always** — define typed fields a downstream node can consume. Bare `content` forces brittle string-parsing. |
|
|
133
134
|
| `settings.temperature` | `0` | Keep `0` for extraction/classification/judgment. Raise only when output *variation* is wanted (drafting, brainstorming). |
|
|
134
|
-
| `settings.maxIterations` | `25` |
|
|
135
|
+
| `settings.maxIterations` | `25` | `≤5` only if tool-less and single-shot. Kill switch, not a loop fix: without a per-tool cap the agent loops to the ceiling — observed dying at 5 and at 25 alike (`TERMINATION_MAX_ITERATIONS`). |
|
|
135
136
|
| `settings.maxTokens` | Scaffold value | Set ≤ the model's `MaxTokens` cap — see [model-selection-guide.md](../model-selection-guide.md#1-discover-primary-path). |
|
|
136
137
|
| `settings.model` | `gpt-5.4` | **Always override** — discover + select per [model-selection-guide.md](../model-selection-guide.md). |
|
|
137
138
|
| `guardrails` | `[]` | Add input/output policy enforcement (PII, content, escalation). See [capabilities/guardrails/guardrails.md](../capabilities/guardrails/guardrails.md). |
|
|
@@ -236,7 +236,7 @@ uip solution pack . ./build --name MyApiSolution --version 1.0.0 --output json
|
|
|
236
236
|
|
|
237
237
|
# 6. Publish
|
|
238
238
|
uip login
|
|
239
|
-
uip solution publish ./build/
|
|
239
|
+
uip solution publish ./build/MyApiSolution_1.0.0.zip --tenant MyTenant --output json # pack names the zip <name>_<version>.zip
|
|
240
240
|
```
|
|
241
241
|
|
|
242
242
|
## Reference Navigation
|
|
@@ -253,6 +253,7 @@ uip solution publish ./build/MyApiSolution.zip --tenant MyTenant --output json
|
|
|
253
253
|
| [references/operating-published-workflows.md](references/operating-published-workflows.md) | **Operating + diagnosing a published workflow** — invoke via HTTP/schedule/event triggers, manage Integration Service connections (`uip is connections`), start/list/stop Orchestrator jobs (`uip or jobs`), read cloud-run logs/traces (`uip or jobs logs`, `uip traces spans get`). Delegates depth to `uipath-platform` / `uipath-troubleshoot` |
|
|
254
254
|
| [references/troubleshooting.md](references/troubleshooting.md) | Failed runs, structure/expression/loop/nesting/response/validation pitfalls, packaging errors, publish errors, debugging strategy |
|
|
255
255
|
|
|
256
|
+
|
|
256
257
|
## Templates
|
|
257
258
|
|
|
258
259
|
| File | Description |
|
|
@@ -429,7 +429,7 @@ uip solution pack <solutionPath> <outputPath> \
|
|
|
429
429
|
| Argument / Flag | Required | Description |
|
|
430
430
|
|-----------------|----------|-------------|
|
|
431
431
|
| `<solutionPath>` | yes | Path to solution folder or `.uis`/`.uipx` file. |
|
|
432
|
-
| `<outputPath>` | yes | Output directory for the `.zip`. |
|
|
432
|
+
| `<outputPath>` | yes | Output directory for the `.zip`. The file lands as `<outputPath>/<name>_<version>.zip` — underscore, not a dot. |
|
|
433
433
|
| `-n, --name <name>` | no | Package name. Defaults to solution folder name. |
|
|
434
434
|
| `-v, --version <version>` | no | Package version. Default `1.0.0`. |
|
|
435
435
|
| `--login-validity <minutes>` | no | Min minutes before token refresh. Default `10`. |
|
|
@@ -507,8 +507,8 @@ uip solution pack . ./build \
|
|
|
507
507
|
--version 1.0.0 \
|
|
508
508
|
--output json
|
|
509
509
|
|
|
510
|
-
# 6. Publish
|
|
511
|
-
uip solution publish ./build/
|
|
510
|
+
# 6. Publish — pack names the zip <name>_<version>.zip
|
|
511
|
+
uip solution publish ./build/MyApiSolution_1.0.0.zip \
|
|
512
512
|
--tenant MyTenant \
|
|
513
513
|
--output json
|
|
514
514
|
```
|
|
@@ -47,9 +47,10 @@ Build, debug, and deploy UiPath Coded Web Applications and Coded Action Apps usi
|
|
|
47
47
|
13. **Inspect the DF schema before writing analytics, filters, or seeds.** Run `uip df entities get <ENTITY_ID> --output json` to inspect fields and types. At runtime, use `entities.getById(<id>)` from the app's authenticated session. DF doesn't behave like a typical RDBMS; see [sdk/data-fabric.md](references/sdk/data-fabric.md) "Anti-shapes & gotchas".
|
|
48
48
|
14. **Every list call returns ONE page — even with no options. There is no "give me everything" path.** Applies to `getAll`, `getAllRecords`, `queryRecordsById`, `getFileMetaData`, etc. `getAll()` with no options does NOT return all rows; the SDK sends no `pageSize` and the **server** applies its own cap, wrapped in a misleadingly-named `NonPaginatedResponse`. To list every row from a source that may exceed the cap, you MUST loop the cursor: `while (page.hasNextPage) { page = await getAll({ cursor: page.nextCursor }) }` and accumulate `items`. Reading `result.items.length` after a single call is almost always a bug. See [sdk/pagination.md](references/sdk/pagination.md).
|
|
49
49
|
15. **Tables of dynamic data must paginate, not dump all rows in one scroll.** Page size 25–50 with next/prev/page-number controls and a "Showing X–Y of Z" summary. Top-N + "see all" is acceptable for explicitly summary panels (e.g., "Top 10 oldest"). Infinite-scroll-of-N-rows is unusable for operational dashboards. Applies to any table backed by any service (DF entities, Tasks, Jobs, Conversations, Process Instances, etc.). See [patterns.md](references/patterns.md) "Tabular Data".
|
|
50
|
-
16. **When adding any new SDK method call, verify the configured OAuth scope already includes the required scope** — both dashboards and web apps read the `scope` key from `uipath.json`. Write operations, action methods (`Jobs.stop`, `Tasks.complete`, `ProcessInstances.cancel`, etc.), or first use of a new service typically need broader scopes than read-only flows. Mismatched scopes fail silently with `401` / `403` on the first call. See [oauth-scopes.md](references/oauth-scopes.md) for the per-method
|
|
50
|
+
16. **When adding any new SDK method call, verify the configured OAuth scope already includes the required scope** — both dashboards and web apps read the `scope` key from `uipath.json`. Write operations, action methods (`Jobs.stop`, `Tasks.complete`, `ProcessInstances.cancel`, etc.), or first use of a new service typically need broader scopes than read-only flows. Mismatched scopes fail silently with `401` / `403` on the first call. See [oauth-scopes.md](references/oauth-scopes.md) for scope bundles and the per-method lookup protocol (the per-method table ships inside the SDK package at `node_modules/@uipath/uipath-typescript/docs/oauth-scopes.md`).
|
|
51
51
|
17. **Never call `sdk.initialize()` in an action app.** That is web-app-only — it starts a PKCE OAuth redirect. Action apps run in Action Center's iframe with a host-injected session: construct `new UiPath()` (no args) and use it directly. See [create-action-app.md](references/create-action-app.md) `src/uipath.ts`.
|
|
52
52
|
18. **Never make the user type magic phrases.** Whenever you ask the user to pick between known options (app type, build/edit/deploy intent, OAuth setup, deploy pinning), present a **structured choice** via the host coding agent's native question tool (selectable options) when one exists. Mechanics: one option per choice with a short bold label + one-line description of what picking it does; put the recommended option **first** and suffix its label "(Recommended)"; keep to **at most 4 options** (reserve one slot for an escape option like *Make changes* / *Cancel* when applicable). If there are 5+ candidates, or the host agent has no question tool, render a plain numbered list instead and accept the number or the option label as the answer. A free-text reply must always remain valid (e.g. a plan-change request) and takes precedence over the options. **Exception — never put a question in the same response as a long output:** plan-approval gates are free-text by design (the plan ends with "confirm or tell me what to change"); structured questions fire only on later, short turns. See `references/dashboards/plugins/build/impl.md`.
|
|
53
|
+
19. **Never guess SDK method signatures — read the installed types.** The authoritative reference for method names, parameters, return types, and usage examples is `node_modules/@uipath/uipath-typescript/dist/<subpath>/index.d.ts` (full JSDoc; matches the installed SDK version exactly). Before calling a service you have not used in this session, Read its `.d.ts`. If `node_modules` is absent, run the install step first — the app cannot build without it. The `references/sdk/*.md` files deliberately do NOT list signatures; they cover only scopes, calling conventions, and traps the types cannot express. See [references/sdk/imports.md](references/sdk/imports.md) for the missing-capability protocol. **Boundary: read the `.d.ts`, never the compiled bundle.** `dist/*.mjs` / `*.js` is minified implementation, not API — reading it dead-ends. A grep with no output **confirms absence**; treat a genuine gap as unsupported (use the documented alternative) rather than escalating the search into the bundle.
|
|
53
54
|
|
|
54
55
|
## Disambiguation — Apps vs Dashboards
|
|
55
56
|
|
|
@@ -168,7 +169,7 @@ To change any of these values, edit `uipath.json`.
|
|
|
168
169
|
|
|
169
170
|
## SDK Module Imports
|
|
170
171
|
|
|
171
|
-
See [references/sdk/imports.md](references/sdk/imports.md) for the
|
|
172
|
+
See [references/sdk/imports.md](references/sdk/imports.md) for the lookup protocol (subpaths and classes are discovered from the installed package — `ls node_modules/@uipath/uipath-typescript/dist/`), type import conventions, and anti-pattern examples. Core rules are listed under **Anti-patterns** below.
|
|
172
173
|
|
|
173
174
|
## Key Concepts
|
|
174
175
|
|
|
Binary file
|
|
@@ -6,7 +6,7 @@ Ready-to-use boilerplate for a new UiPath Coded Web App (Vite + React + TypeScri
|
|
|
6
6
|
|
|
7
7
|
Files are grouped below by path. When a file differs between the two paths, its variants appear as `Q6 = no (bare Tailwind)` / `Q6 = yes (apollo-wind)` subsections; a single block means the file is shared verbatim. The only real divergence is the component layer: Q6 = yes adds `@uipath/apollo-wind` components, Apollo design tokens, and a light/dark theme toggle; Q6 = no leaves bare Tailwind so you bring your own component library.
|
|
8
8
|
|
|
9
|
-
The substitution table in [Step
|
|
9
|
+
The substitution table in [Step 5.1](../../references/create-web-app.md#51--write-project-files-from-templates) says which subsection to use per path.
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
@@ -2,32 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
Scaffold a new UiPath Coded Web Application using Vite + React + TypeScript with the `@uipath/uipath-typescript` SDK.
|
|
4
4
|
|
|
5
|
+
Order matters: the project is scaffolded and the SDK **installed before scopes are determined**, so the scope decision reads the per-method scope table shipped inside the installed package (version-exact) instead of relying on memorized tables.
|
|
6
|
+
|
|
5
7
|
## Pre-flight: Collect Required Information
|
|
6
8
|
|
|
7
9
|
**CRITICAL: You do NOT know these values. You CANNOT infer or assume them. Ask the user and wait for their reply before writing any files.**
|
|
8
10
|
|
|
9
|
-
### Step 1 —
|
|
10
|
-
|
|
11
|
-
**Before asking the user any setup questions**, figure out what the app needs:
|
|
12
|
-
|
|
13
|
-
1. From the user's **request**, identify which UiPath services the app will use (e.g., Entities, Tasks, Processes, Maestro, Conversational Agent, Buckets, etc.).
|
|
14
|
-
2. Read [oauth-scopes.md](oauth-scopes.md) and collect the exact scopes required for every method those services expose.
|
|
15
|
-
3. Compose the full deduplicated space-separated scopes string.
|
|
16
|
-
|
|
17
|
-
You need these scopes **before** Step 2 so you can tell the user exactly what scopes to configure on their Client ID.
|
|
18
|
-
|
|
19
|
-
### Step 2 — Ask the user for setup info
|
|
11
|
+
### Step 1 — Ask the user for setup info
|
|
20
12
|
|
|
21
|
-
Output the following text directly
|
|
13
|
+
Output the following text directly. **Do NOT call any tools yet — just output this text and wait for the user's reply.**
|
|
22
14
|
|
|
23
15
|
---
|
|
24
16
|
|
|
25
|
-
Here's
|
|
26
|
-
|
|
27
|
-
**OAuth scopes:** `<scopes>`
|
|
17
|
+
Here's how OAuth will be set up:
|
|
28
18
|
|
|
29
19
|
**Redirect URI:** `http://localhost:5173` (the local dev URL — stored as `redirectUri` in `uipath.json` and injected as the `uipath:redirect-uri` meta tag; the platform injects the production URI automatically at deploy)
|
|
30
20
|
|
|
21
|
+
**OAuth scopes:** determined after the project is scaffolded — I'll read the exact per-method requirements from the installed SDK and configure them on the OAuth client in Step 4.
|
|
22
|
+
|
|
31
23
|
Please answer these questions to continue:
|
|
32
24
|
|
|
33
25
|
**1. App name** — lowercase kebab-case project folder name (e.g. `my-dashboard`)
|
|
@@ -41,9 +33,9 @@ Please answer these questions to continue:
|
|
|
41
33
|
|
|
42
34
|
**4. Tenant name** — your UiPath tenant (often `DefaultTenant`)
|
|
43
35
|
|
|
44
|
-
**5. Client ID** — do you have an existing OAuth External Application client ID
|
|
45
|
-
- If yes, paste it
|
|
46
|
-
- If no, say **"create one"** and I'll
|
|
36
|
+
**5. Client ID** — do you have an existing OAuth External Application client ID you want to reuse?
|
|
37
|
+
- If yes, paste it — I'll tell you the exact scopes it needs (and can add missing ones via the `uip admin external-apps` CLI) once they're determined in Step 4
|
|
38
|
+
- If no, say **"create one"** and I'll set it up via the `uip admin external-apps` CLI with the right scopes
|
|
47
39
|
|
|
48
40
|
**6. Default UI styling** — apply UiPath's Apollo Vertex design system (`@uipath/apollo-wind` components, semantic tokens, and a light/dark theme toggle out of the box)?
|
|
49
41
|
- `yes` *(recommended)* — apollo-wind + `next-themes` on top of Tailwind: Apollo Vertex design system, light/dark theme toggle out of the box
|
|
@@ -53,37 +45,23 @@ Please answer these questions to continue:
|
|
|
53
45
|
|
|
54
46
|
**Wait for the user's reply before proceeding.**
|
|
55
47
|
|
|
56
|
-
### Step 2
|
|
57
|
-
|
|
58
|
-
Create it with the `uip admin external-apps` CLI — read [oauth-client-setup.md](oauth-client-setup.md) for prerequisites and full flags. Confirm `uip` is authenticated (`uip login status --output json`), then:
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
uip admin external-apps create "<app name>" \
|
|
62
|
-
--non-confidential \
|
|
63
|
-
--user-scope "<scopes from Step 1>" \
|
|
64
|
-
--redirect-uri "http://localhost:5173,http://localhost:5173/" \
|
|
65
|
-
--output json
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
Parse `id` from the response — that is the Client ID. If the CLI returns `403` (no admin permission) or can't authenticate, use the [Manual portal fallback](oauth-client-setup.md#manual-portal-fallback).
|
|
69
|
-
|
|
70
|
-
### Step 3 — Resolve org name (if not provided)
|
|
48
|
+
### Step 2 — Resolve org name (if not provided)
|
|
71
49
|
|
|
72
50
|
If the user typed their org name, use it. If they said "find from browser", navigate to the UiPath cloud host for their environment and extract the org name from the URL path (first segment after the domain).
|
|
73
51
|
|
|
74
52
|
---
|
|
75
53
|
|
|
76
|
-
## Step
|
|
54
|
+
## Step 3 — Scaffold the Project
|
|
77
55
|
|
|
78
|
-
Once you have
|
|
56
|
+
Once you have the answers (app name, environment, org, tenant, styling), execute the steps below in order. All steps after Step 3.2 run from inside the new project directory.
|
|
79
57
|
|
|
80
58
|
> **Set `timeout: 300000`** (5 minutes) on every Bash call that runs `npm install` or `npm create vite` — these can take several minutes and the default 2-minute timeout is not enough.
|
|
81
59
|
|
|
82
|
-
###
|
|
60
|
+
### 3.1 — Resolve the base URL
|
|
83
61
|
|
|
84
|
-
Map the `<environment>` answer from Step
|
|
62
|
+
Map the `<environment>` answer from Step 1 to a base URL using the table in [SKILL.md](../SKILL.md) (Production → `https://api.uipath.com`, Staging → `https://staging.api.uipath.com`, Alpha → `https://alpha.api.uipath.com`). If the user gave a custom URL, use that verbatim. Store as `<base-url>`.
|
|
85
63
|
|
|
86
|
-
###
|
|
64
|
+
### 3.2 — Create the Vite project
|
|
87
65
|
|
|
88
66
|
```bash
|
|
89
67
|
npx --yes create-vite@latest <app-name> --template react-ts
|
|
@@ -91,7 +69,7 @@ npx --yes create-vite@latest <app-name> --template react-ts
|
|
|
91
69
|
|
|
92
70
|
Then `cd` into `<app-name>`. Every subsequent step runs from this directory.
|
|
93
71
|
|
|
94
|
-
###
|
|
72
|
+
### 3.3 — Install dependencies
|
|
95
73
|
|
|
96
74
|
Run these as **separate commands** in order. The `--@uipath:registry` flag binds only to commands installing `@uipath/*` packages — do not apply it to the others, and do not run a bare `npm install` with the flag.
|
|
97
75
|
|
|
@@ -125,9 +103,9 @@ npm install -D tailwindcss@4 @tailwindcss/postcss postcss autoprefixer
|
|
|
125
103
|
|
|
126
104
|
- **If `default styling = no`** — keep the SDK + Tailwind baseline above and bring your own component library. No extra dependencies needed.
|
|
127
105
|
|
|
128
|
-
###
|
|
106
|
+
### 3.4 — Remove Vite defaults that will be overwritten
|
|
129
107
|
|
|
130
|
-
`npx create-vite` ships default versions of files we replace in Step
|
|
108
|
+
`npx create-vite` ships default versions of files we replace in Step 5. Delete them first so the Write tool can create them fresh — otherwise each Write requires a Read-first round-trip and produces a benign-but-noisy "Error writing file" message.
|
|
131
109
|
|
|
132
110
|
- **`default styling = yes`** — also overwrites `src/main.tsx` to wrap `<App>` in the theme provider:
|
|
133
111
|
|
|
@@ -141,7 +119,41 @@ npm install -D tailwindcss@4 @tailwindcss/postcss postcss autoprefixer
|
|
|
141
119
|
rm vite.config.ts src/App.tsx src/index.css
|
|
142
120
|
```
|
|
143
121
|
|
|
144
|
-
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## Step 4 — Determine Scopes & Configure the OAuth Client
|
|
125
|
+
|
|
126
|
+
The SDK is now installed, so the version-exact scope reference is on disk.
|
|
127
|
+
|
|
128
|
+
### 4.1 — Determine required scopes
|
|
129
|
+
|
|
130
|
+
1. From the user's **request**, identify which UiPath services the app will use (e.g., Entities, Tasks, Processes, Maestro, Conversational Agent, Buckets, etc.).
|
|
131
|
+
2. Start from the **Common Scope Bundles** table in [oauth-scopes.md](oauth-scopes.md) — bundles grant the service family, not just today's methods, so the app has headroom as it evolves.
|
|
132
|
+
3. For services or methods outside the bundles — and to verify write/action methods — read the per-method table shipped in the package: `node_modules/@uipath/uipath-typescript/docs/oauth-scopes.md`. If the installed SDK predates that file, use the fallback in [oauth-scopes.md](oauth-scopes.md).
|
|
133
|
+
4. If the app embeds a `@uipath/ui-widgets-*` component, add the widget scopes from [oauth-scopes.md](oauth-scopes.md) § Widgets.
|
|
134
|
+
5. Compose the full deduplicated space-separated scopes string. Store as `<scopes>` — Step 5 writes it into `uipath.json`.
|
|
135
|
+
|
|
136
|
+
### 4.2 — Create or verify the External Application
|
|
137
|
+
|
|
138
|
+
**If the user said "create one":** create it with the `uip admin external-apps` CLI — read [oauth-client-setup.md](oauth-client-setup.md) for prerequisites and full flags. Confirm `uip` is authenticated (`uip login status --output json`), then:
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
uip admin external-apps create "<app name>" \
|
|
142
|
+
--non-confidential \
|
|
143
|
+
--user-scope "<scopes>" \
|
|
144
|
+
--redirect-uri "http://localhost:5173,http://localhost:5173/" \
|
|
145
|
+
--output json
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
Parse `id` from the response — that is the Client ID. If the CLI returns `403` (no admin permission) or can't authenticate, use the [Manual portal fallback](oauth-client-setup.md#manual-portal-fallback).
|
|
149
|
+
|
|
150
|
+
**If the user pasted an existing Client ID:** show them `<scopes>` and ask whether the External Application already has all of them. If scopes are missing, offer to add them via the `add-scopes` operation in [oauth-client-setup.md](oauth-client-setup.md), or let the user update the app manually. A missing scope at the External Application means the token request is rejected entirely; a scope granted to the app but missing from `uipath.json` causes silent `401`/`403` on first call.
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## Step 5 — Write Project Files
|
|
155
|
+
|
|
156
|
+
### 5.1 — Write project files from templates
|
|
145
157
|
|
|
146
158
|
All file content lives in [../assets/templates/web-app-template.md](../assets/templates/web-app-template.md). For each row below, copy the named section from that file verbatim into the path shown, applying the listed substitutions. Create `src/hooks/` first; the rest of the directories already exist from `create-vite`.
|
|
147
159
|
|
|
@@ -160,13 +172,13 @@ All file content lives in [../assets/templates/web-app-template.md](../assets/te
|
|
|
160
172
|
|
|
161
173
|
> **No `tailwind.config.js` on either path** — Tailwind configuration lives directly in `src/index.css`. No `.env` file either — `uipath.json` (committed) is the single config source for the SDK.
|
|
162
174
|
|
|
163
|
-
###
|
|
175
|
+
### 5.2 — `.gitignore`
|
|
164
176
|
|
|
165
177
|
Neither path writes a `.env`, and `uipath.json` is committed (it holds the SDK config — a public OAuth client ID plus org/tenant/base-URL/redirect-URI, no secrets), so no `.gitignore` change is needed for OAuth config. The project `.uipath/` directory created by `codedapp` commands must stay gitignored — it is covered by `npx create-vite`'s default plus `uip codedapp`'s conventions. Verify with `cat .gitignore | grep -i uipath` and add `.uipath/` if missing.
|
|
166
178
|
|
|
167
|
-
###
|
|
179
|
+
### 5.3 — Verify the scaffold
|
|
168
180
|
|
|
169
|
-
First, confirm all expected files for your Q6 branch exist. If any are missing, re-run the corresponding row from Step
|
|
181
|
+
First, confirm all expected files for your Q6 branch exist. If any are missing, re-run the corresponding row from Step 5.1.
|
|
170
182
|
|
|
171
183
|
- **`default styling = yes`:** `vite.config.ts`, `uipath.json`, `postcss.config.js`, `src/index.css`, `src/hooks/useAuth.tsx`, `src/components/Theme.tsx`, `src/main.tsx`, `src/App.tsx`
|
|
172
184
|
- **`default styling = no`:** `vite.config.ts`, `uipath.json`, `postcss.config.js`, `src/index.css`, `src/hooks/useAuth.tsx`, `src/App.tsx`
|
|
@@ -195,7 +207,7 @@ const { sdk } = useAuth();
|
|
|
195
207
|
export const assets = new Assets(sdk);
|
|
196
208
|
```
|
|
197
209
|
|
|
198
|
-
|
|
210
|
+
Subpaths and classes are discovered from the installed package — see the lookup protocol in [sdk/imports.md](sdk/imports.md). The `useAuth` hook implementation and the SDK methods it uses internally are documented in the `## src/hooks/useAuth.tsx` section of [../assets/templates/web-app-template.md](../assets/templates/web-app-template.md).
|
|
199
211
|
|
|
200
212
|
---
|
|
201
213
|
|
|
@@ -211,9 +223,9 @@ const items = await assets.getAll({ folderId: 123 }); // replace 123 with your O
|
|
|
211
223
|
const records = await entities.getAllRecords('<entity-id>'); // entity ID is a UUID — look it up via entities.getAll() or the Data Fabric portal (not the friendly name)
|
|
212
224
|
```
|
|
213
225
|
|
|
214
|
-
|
|
226
|
+
Method signatures come from the installed types (`node_modules/@uipath/uipath-typescript/dist/<subpath>/index.d.ts`); per-method scopes from the shipped `node_modules/@uipath/uipath-typescript/docs/oauth-scopes.md` — see [oauth-scopes.md](oauth-scopes.md) for bundles and the lookup protocol.
|
|
215
227
|
|
|
216
|
-
If the user wants a **Document Understanding validation UI** (review/correct extraction results), embed the Validation Station widget — see [widgets/validation-station.md](widgets/validation-station.md). Required scope: `OR.Buckets` (plus `OR.Tasks` if the widget completes an Action Center task on save). Add to the `scope` field in `uipath.json` during
|
|
228
|
+
If the user wants a **Document Understanding validation UI** (review/correct extraction results), embed the Validation Station widget — see [widgets/validation-station.md](widgets/validation-station.md). Required scope: `OR.Buckets` (plus `OR.Tasks` if the widget completes an Action Center task on save). Add to the `scope` field in `uipath.json` during Step 4.
|
|
217
229
|
|
|
218
230
|
When implementing specific SDK services, read the corresponding reference:
|
|
219
231
|
|
|
@@ -49,7 +49,7 @@ Fire all of these simultaneously. Use multiple tool calls in one response — do
|
|
|
49
49
|
| `references/dashboards/aesthetic/layout-patterns.md` *(from skill root)* | Layout rules |
|
|
50
50
|
| `references/dashboards/aesthetic/charting.md` *(from skill root)* | Chart-type selection, colour tokens, delta polarity |
|
|
51
51
|
| `assets/scripts/dashboards/capability-registry.json` *(from skill root)* | Metric catalog (T1/T2 display hints) |
|
|
52
|
-
| `references/sdk/agents.md` *(from skill root)* | Agents + Agent Memory (Insights RTM
|
|
52
|
+
| `references/sdk/agents.md` *(from skill root)* | Agents + Agent Memory (Insights RTM) — validate agent/memory metrics |
|
|
53
53
|
| `references/sdk/orchestrator.md` *(from skill root)* | Jobs/Queues/Processes methods — validate job/process metrics |
|
|
54
54
|
|
|
55
55
|
**Conditional reads (add to the same parallel message if the request mentions these):**
|
|
@@ -60,7 +60,7 @@ Fire all of these simultaneously. Use multiple tool calls in one response — do
|
|
|
60
60
|
| cases, process instances, Maestro, SLA, top/slowest/failing processes or cases, element stats | `references/sdk/maestro.md` *(from skill root)* |
|
|
61
61
|
| traces, spans, trace-level errors/latency/units | `references/sdk/traces.md` *(from skill root)* |
|
|
62
62
|
| governance, policy, compliance, denials, blocked actions, allow/deny, enforcement | `references/sdk/governance.md` *(from skill root)* — Insights-API governance (`policy-denials`, `governance-verdicts`) |
|
|
63
|
-
| **EXPLICIT runtime compliance / a standard or pack / ISO clause / "rule(s) violated"** (agent runs checked against standards) | `references/sdk/governance-traces.md` *(from skill root)* — gated, org-admin (`AgentTraces` governance decisions
|
|
63
|
+
| **EXPLICIT runtime compliance / a standard or pack / ISO clause / "rule(s) violated"** (agent runs checked against standards) | `references/sdk/governance-traces.md` *(from skill root)* — gated, org-admin (`AgentTraces` governance decisions). Generic "governance/policy" stays on the row above |
|
|
64
64
|
|
|
65
65
|
**1 blocking command (instant, local — routes build vs edit, so the plan needs it):**
|
|
66
66
|
|
|
@@ -87,7 +87,7 @@ The plan message ends there — no OAuth talk in the plan, no tool calls in the
|
|
|
87
87
|
> views) when the prompt signals runtime-governance intent — "governance/policy violation(s)", "compliance",
|
|
88
88
|
> a standard/pack reference (`ISO 42001`, `A.8.4`, "standard", "pack"), or runtime-governance terms. Then read
|
|
89
89
|
> `sdk/governance-traces.md` and build the modules on `AgentTraces.getGovernanceDecisions` /
|
|
90
|
-
> `getGovernanceSummary
|
|
90
|
+
> `getGovernanceSummary`. NEVER add them to a plain agent-health/ops dashboard. They need an
|
|
91
91
|
> **org-admin** caller — a 403 means the user's account lacks governance access (say so; the rest of the
|
|
92
92
|
> dashboard still builds). Widgets honor the dashboard time range like any other metric.
|
|
93
93
|
|
|
@@ -275,7 +275,7 @@ If both fail: direct the user to `<CLOUD_URL>/<ORG>/portal_/adminui/#/externalAp
|
|
|
275
275
|
|
|
276
276
|
**The build subagent (Phase 4) authors these modules and applies this check — it is NOT done in the main thread.** When the subagent writes each `metrics/<name>.ts` from the SDK references, it cross-checks every one against the **Example response** and **semantics notes** in the relevant `references/sdk/*.md` file (already loaded in the parallel blast). For each metric, confirm:
|
|
277
277
|
|
|
278
|
-
1. **The field you filter or read on appears in the example response** — with the value you expect. Not just "the field exists in the type" (both `sourceType` and `packageType` exist) — the example shows the real *value*.
|
|
278
|
+
1. **The field you filter or read on appears in the example response** — with the value you expect. Not just "the field exists in the type" (both `sourceType` and `packageType` exist) — the example shows the real *value*. SDK field names work in `$filter`/`orderby` (the SDK rewrites them to API names — see `orchestrator.md § OData filter field names`); `folderId` is header-scoped, never a `$filter` field, and there is no server-side name filter — match `processName` client-side.
|
|
279
279
|
2. **No semantics note warns against your choice.** The references flag the traps types can't express.
|
|
280
280
|
3. **Your return shape matches the example** — `.items` vs `.data` vs a top-level array, and the exact field names you map to `xKey`/`yKey`/columns.
|
|
281
281
|
4. **Table column keys match the return shape.** For a `data-table`/`ranked-table`, every `columns`/`columnDefs` key must be a field your module actually returns per row — a key with no matching field renders an empty `—` column. Tables use `columns`/`columnDefs` (NOT `detailColumns`, which only feeds chart drill-down views); a T3 table with no columns is rejected by the build.
|
|
@@ -106,19 +106,19 @@ The build type-checks all `metrics/*.ts` modules in isolation (Stage A) before g
|
|
|
106
106
|
|
|
107
107
|
The registry entry describes the metric and expected SDK call. Use it as your guide, then write the correct `metrics/<name>.ts` module from the SDK documentation.
|
|
108
108
|
|
|
109
|
-
| Metric name | What it shows | Registry template | SDK hint
|
|
109
|
+
| Metric name | What it shows | Registry template | SDK hint |
|
|
110
110
|
|-------------|--------------|-------------------|--------------------|
|
|
111
111
|
| `active-agents-kpi` | Count of active agents | `kpi-card` | `Agents.getAll(start, end)` → `{ items }`; return `[{ count: items.length }]` |
|
|
112
|
-
| `agent-consumption` | Agents ranked by AGU/PLTU | `ranked-table` |
|
|
112
|
+
| `agent-consumption` | Agents ranked by AGU/PLTU | `ranked-table` | `Agents.getTopConsumption(start, end, { limit: 10 })` → `{ agents: [{ agentName, consumedAGUQuantity, consumedPLTUQuantity }] }`; module returns `.agents` |
|
|
113
113
|
| `agent-health` | Agents ranked by health score | `ranked-table` | `Agents.getAll(start, end, { orderBy: { column: AgentListSortColumn.HealthScore } })` → `{ items }` (healthScore 0–100, lastIncidentType) |
|
|
114
114
|
| `agent-error-timeline` | Agent errors over time | `area-chart` | `Agents.getErrorsTimeline(start, end)` → BARE `[{ name, value, date }]`; module sums `value` per `date` |
|
|
115
115
|
| `agent-latency-timeline` | P50/P95 latency over time | `multi-line-chart` | `Agents.getLatencyTimeline(start, end)` → BARE `[{ name:'P50'\|'P95', value (ms), date }]`; module pivots to `[{ date, P50, P95 }]` |
|
|
116
116
|
| `agent-consumption-timeline` | AGU consumed over time | `area-chart` | `Agents.getConsumptionTimeline(start, end)` → BARE `[{ timeSlice, aguConsumption }]` (native shape) |
|
|
117
117
|
| `agent-errors` | Error classes ranked | `ranked-table` | `Agents.getErrors(start, end, { orderBy: { column: AgentErrorSortColumn.ExecutionCount, desc: true } })` → `{ items }` |
|
|
118
|
-
| `agents-by-errors` | Agents ranked by error count | `ranked-table` |
|
|
119
|
-
| `agent-incident-distribution` | Errors vs escalations vs policy | `donut-chart` |
|
|
120
|
-
| `agent-success-rate` | Job success rate + delta | `kpi-card` |
|
|
121
|
-
| `agent-unit-consumption-summary` | Total AGU consumed + delta | `kpi-card` |
|
|
118
|
+
| `agents-by-errors` | Agents ranked by error count | `ranked-table` | `Agents.getTopErrorCount(start, end, { limit: 10 })` → `{ data: [{ name, count }] }`; module returns `data.map(a => ({ name: a.name, value: a.count }))` |
|
|
119
|
+
| `agent-incident-distribution` | Errors vs escalations vs policy | `donut-chart` | `Agents.getIncidentDistribution(start, end)` → `{ errorCount, escalationCount, policyCount }`; module → 3 `[{ name, value }]` rows |
|
|
120
|
+
| `agent-success-rate` | Job success rate + delta | `kpi-card` | `Agents.getSummary(start, end, { lookbackPeriodAnalysis: true })`; return `[{ value: currentPeriodSummary.successRate, previous: lookbackPeriodSummary?.successRate }]` |
|
|
121
|
+
| `agent-unit-consumption-summary` | Total AGU consumed + delta | `kpi-card` | `Agents.getUnitConsumptionSummary(start, end, { lookbackPeriodAnalysis: true })`; sum `totalAgentUnitConsumption.{completeJobs,incompleteJobs}` for value + previous |
|
|
122
122
|
| `trace-error-timeline` | Trace errors over time | `area-chart` | `AgentTraces.getErrorsTimeline({ startTime, endTime })` → BARE `[{ name, value, date }]` (see `sdk/traces.md`) |
|
|
123
123
|
| `trace-latency-timeline` | Trace latency over time | `area-chart` | `AgentTraces.getLatencyTimeline({ startTime, endTime })` → BARE `[{ name, value (s), date }]`; module averages per date |
|
|
124
124
|
| `agent-unit-consumption` | AGU/PLTU per agent | `ranked-table` | `AgentTraces.getUnitConsumption({ startTime, endTime })` → BARE `[{ agentId, agentUnitsConsumed, platformUnitsConsumed }]` |
|
|
@@ -396,7 +396,7 @@ export const fetchDetail: MetricFn = async (sdk) => {
|
|
|
396
396
|
A dedicated capability for **agent governance/compliance violations against standards** (catalog keys
|
|
397
397
|
`agent-governance-violations`, `violations-by-standard`, `violations-by-rule`, `violations-by-hook`,
|
|
398
398
|
`matched-rules-by-action`, `agents-by-violations`, `recent-violations`, `agent-compliance-report`,
|
|
399
|
-
`rule-evaluations-by-outcome`, `rule-evaluations-by-hook`, `rule-compliance`). Backed by the SDK
|
|
399
|
+
`rule-evaluations-by-outcome`, `rule-evaluations-by-hook`, `rule-compliance`). Backed by the SDK
|
|
400
400
|
Insights endpoints `AgentTraces.getGovernanceDecisions` / `getGovernanceSummary` — full contract + module
|
|
401
401
|
patterns in [`sdk/governance-traces.md`](../../sdk/governance-traces.md). **Org-admin required** (403 for
|
|
402
402
|
other callers — surface it, EmptyState the widget, build the rest). Widgets honor the dashboard time range
|
|
@@ -429,11 +429,11 @@ EmptyState when the window has no governance data — un-instrumented agents mus
|
|
|
429
429
|
|
|
430
430
|
## T0 — Hard Refuse
|
|
431
431
|
|
|
432
|
-
**Refuse ONLY the specific metric — not the whole dashboard.** Always offer an alternative.
|
|
432
|
+
**Refuse ONLY the specific metric — not the whole dashboard.** Always offer an alternative. **"No direct endpoint" ≠ "impossible": if the alternative is a metric you can derive from a read method (e.g. a Jobs trend), BUILD that widget — do not drop it.** Only rows whose alternative is a genuinely *different* metric (cost, RAM, …) are true refusals.
|
|
433
433
|
|
|
434
434
|
| User asks for | Why impossible | Suggest instead |
|
|
435
435
|
|--------------|----------------|-----------------|
|
|
436
|
-
| Agent **invocation
|
|
436
|
+
| Agent **invocation volume / count over time** (runs/calls per period) | SDK 1.5.0 has error/latency/consumption timelines but no invocation-count endpoint | **Not a refusal — BUILD it** as a T3 Jobs trend: `new Jobs(sdk).getAll({ filter: "ProcessType eq 'Agent'" })` bucketed by period. Agent job runs ARE agent invocations, so this answers the ask; do NOT omit the widget. (Use `agent-consumption-timeline`/`agent-error-timeline` only if the user specifically wants AGU/errors.) |
|
|
437
437
|
| Agent cost in dollars | Platform tracks AGU/PLTU units, not currency | `agent-consumption` for per-agent unit totals |
|
|
438
438
|
| CPU/RAM per agent | Not exposed by any API ("Agent Memory" = memory entries, not RAM) | `agent-health`; or `agent-memory-timeline` if they meant the Memory feature |
|
|
439
439
|
| Who triggered a job | Job records have no end-user identity | `job-completion-trend` grouped by process; `policy-denials` includes `actorIdentityId` for governance events |
|
|
@@ -448,10 +448,10 @@ Full method signatures, response types, and field names live in `references/sdk/
|
|
|
448
448
|
|
|
449
449
|
| Domain | Reference file | Key service classes |
|
|
450
450
|
|--------|---------------|---------------------|
|
|
451
|
-
| Agents + Agent Memory (Insights RTM
|
|
452
|
-
| Agent Traces (Insights RTM
|
|
453
|
-
| Governance (Insights RTM
|
|
454
|
-
| Agent runtime-governance decisions (GATED, org-admin
|
|
451
|
+
| Agents + Agent Memory (Insights RTM) | `sdk/agents.md` *(from skill root)* | `Agents`, `AgentMemory` |
|
|
452
|
+
| Agent Traces (Insights RTM) | `sdk/traces.md` *(from skill root)* | `AgentTraces` |
|
|
453
|
+
| Governance (Insights RTM) | `sdk/governance.md` *(from skill root)* | `Governance` |
|
|
454
|
+
| Agent runtime-governance decisions (GATED, org-admin) | `sdk/governance-traces.md` *(from skill root)* | `AgentTraces.getGovernanceDecisions` / `getGovernanceSummary` |
|
|
455
455
|
| Jobs, Queues, Processes, Assets | `sdk/orchestrator.md` *(from skill root)* | `Jobs`, `Queues`, `Processes`, `Assets` |
|
|
456
456
|
| Tasks | `sdk/action-center.md` *(from skill root)* | `Tasks` |
|
|
457
457
|
| Cases, Process Instances, Maestro Insights/SLA | `sdk/maestro.md` *(from skill root)* | `Cases`, `CaseInstances`, `MaestroProcesses` |
|
|
@@ -461,14 +461,14 @@ Full method signatures, response types, and field names live in `references/sdk/
|
|
|
461
461
|
|
|
462
462
|
**Calling conventions — don't mix them up:**
|
|
463
463
|
- `Agents.getAll / getErrors / getErrorsTimeline / getConsumptionTimeline / getLatencyTimeline(startTime, endTime, options?)` — positional `Date` args. `getAll`/`getErrors` return rows on `.items`; the three timeline methods return a **bare array**
|
|
464
|
-
-
|
|
464
|
+
- `Agents.getSummary / getTopErrorCount / getTopConsumption / getIncidentDistribution / getUnitConsumptionSummary(startTime, endTime, options?)` — positional `Date` args; see `sdk/agents.md § Insights aggregates`. `getSummary` / `getUnitConsumptionSummary` accept `{ lookbackPeriodAnalysis: true }` to return the prior window for a delta in ONE call
|
|
465
465
|
- `AgentTraces.getErrorsTimeline / getLatencyTimeline / getUnitConsumption({ startTime?, endTime?, … })` — ONE options object, dates inside, returns a **bare array** (see `sdk/traces.md`)
|
|
466
466
|
- `AgentMemory.getTimeline({ startTime?, endTime?, … })` — ONE options object, dates inside, returns a **bare array**
|
|
467
467
|
- `Governance.getPolicyTraces(startTime, options?)` — required positional `startTime`, rest in options, rows on `.items`; `getOperationSummary` returns a **single object** (wrap into rows in the module)
|
|
468
|
-
-
|
|
468
|
+
- `AgentTraces.getGovernanceDecisions(startTime, options?)` — required positional `startTime`, rows on `.items`, paginated; `AgentTraces.getGovernanceSummary(startTime, options?)` — returns a **single object** (`byAction`/`byMode` empty unless `sections` opts in). Both org-admin (see `sdk/governance-traces.md`)
|
|
469
469
|
- `Cases` / `MaestroProcesses.getTopRunCount / getTopFaultedCount / getTopExecutionDuration / getTopElementFailedCount / getInstanceStatusTimeline(start, end, options?)` — positional `Date`s, **bare array**; `getElementStats(processKey, packageId, start, end, version)` all positional, bare array (see `sdk/maestro.md`)
|
|
470
470
|
- `CaseInstances.getSlaSummary({ startTimeUtc?, endTimeUtc?, … })` — options object, rows on `.items`; `getStagesSlaSummary(options?)` — **bare array**. SLA methods need `PIMS` on top of the Insights scopes
|
|
471
471
|
|
|
472
472
|
**Non-Insights services:** access items via `result?.items ?? result?.value ?? []`
|
|
473
473
|
|
|
474
|
-
**OData filters
|
|
474
|
+
**OData filters:** `filter` / `orderby` / `select` / `expand` now accept **SDK field names** (the camelCase TS property names, e.g. `processType`, `state`) in addition to the wire/API names (`ProcessType`, `State`). Existing wire-name filters like `"ProcessType eq 'Agent'"` / `"State eq 'Faulted'"` still work — no migration needed; prefer whichever reads clearer.
|