@uipath/skills 1.202.0-preview.763 → 1.202.0-preview.771
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/README.md +2 -2
- package/assets/skill-status.json +2 -2
- package/package.json +1 -1
- package/skills/uipath-agents/references/lowcode/agent-definition.md +1 -1
- package/skills/uipath-agents/references/lowcode/critical-rules/conversational-critical-rules.md +3 -1
- package/skills/uipath-agents/references/lowcode/lowcode.md +1 -2
- package/skills/uipath-agents/references/lowcode/project-lifecycle.md +2 -2
- package/skills/uipath-agents/references/lowcode/prompting/conversational-agent-prompting-guide.md +2 -2
- package/skills/uipath-maestro-flow/references/author/plugins/conversational-agent/impl.md +19 -1
- package/skills/uipath-maestro-flow/references/author/plugins/conversational-agent/planning.md +1 -1
- package/version-manifest.json +1 -1
package/README.md
CHANGED
|
@@ -113,7 +113,7 @@ Every skill's maturity is tracked in [`assets/skill-status.json`](assets/skill-s
|
|
|
113
113
|
| `uipath-feedback` | Stable |
|
|
114
114
|
| `uipath-functions` | Preview |
|
|
115
115
|
| `uipath-governance` | In-development |
|
|
116
|
-
| `uipath-human-in-the-loop` |
|
|
116
|
+
| `uipath-human-in-the-loop` | Stable |
|
|
117
117
|
| `uipath-insights` | Preview |
|
|
118
118
|
| `uipath-ixp` | In-development |
|
|
119
119
|
| `uipath-maestro-bpmn` | In-development |
|
|
@@ -126,7 +126,7 @@ Every skill's maturity is tracked in [`assets/skill-status.json`](assets/skill-s
|
|
|
126
126
|
| `uipath-review` | Preview |
|
|
127
127
|
| `uipath-rpa` | Stable |
|
|
128
128
|
| `uipath-solution` | Preview |
|
|
129
|
-
| `uipath-tasks` |
|
|
129
|
+
| `uipath-tasks` | Stable |
|
|
130
130
|
| `uipath-test` | In-development |
|
|
131
131
|
| `uipath-troubleshoot` | Preview |
|
|
132
132
|
|
package/assets/skill-status.json
CHANGED
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
"last_synced": null
|
|
107
107
|
},
|
|
108
108
|
"uipath-human-in-the-loop": {
|
|
109
|
-
"status": "
|
|
109
|
+
"status": "stable",
|
|
110
110
|
"confluence": {
|
|
111
111
|
"page_id": null,
|
|
112
112
|
"url": null
|
|
@@ -210,7 +210,7 @@
|
|
|
210
210
|
"last_synced": null
|
|
211
211
|
},
|
|
212
212
|
"uipath-tasks": {
|
|
213
|
-
"status": "
|
|
213
|
+
"status": "stable",
|
|
214
214
|
"confluence": {
|
|
215
215
|
"page_id": null,
|
|
216
216
|
"url": null
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uipath/skills",
|
|
3
|
-
"version": "1.202.0-preview.
|
|
3
|
+
"version": "1.202.0-preview.771",
|
|
4
4
|
"description": "UiPath agent skills for Claude Code, Codex, Cursor, Copilot, Gemini and OpenCode — RPA, UI automation, UI testing, coded agents/apps/workflows, and troubleshooting. Distributed as the UiPath Claude Code plugin.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "UiPath"
|
|
@@ -235,7 +235,7 @@ For **conversational agents**, each agent run handles one conversational exchang
|
|
|
235
235
|
|
|
236
236
|
For **autonomous agents**, the `outputSchema` defines the output properties of the agent.
|
|
237
237
|
|
|
238
|
-
For **conversational agents**, the `outputSchema` should not be modified, and thus always left empty. See [critical-rules/conversational-critical-rules.md](critical-rules/conversational-critical-rules.md) anti-pattern 1.
|
|
238
|
+
For **conversational agents**, the `outputSchema` should not be modified, and thus always left empty. The exception is a conversational agent scaffolded inline in a Maestro Flow, which does support structured outputs and is authored under the `uipath-maestro-flow` skill. See [critical-rules/conversational-critical-rules.md](critical-rules/conversational-critical-rules.md) anti-pattern 1.
|
|
239
239
|
|
|
240
240
|
|
|
241
241
|
## Messages
|
package/skills/uipath-agents/references/lowcode/critical-rules/conversational-critical-rules.md
CHANGED
|
@@ -8,7 +8,9 @@ These rules are the canonical source for rules specific to low-code conversation
|
|
|
8
8
|
|
|
9
9
|
## What NOT to Do
|
|
10
10
|
|
|
11
|
-
1. **Do not add properties to the `outputSchema` of a conversational agent.** After initialization, leave `outputSchema` empty.
|
|
11
|
+
1. **Do not add properties to the `outputSchema` of a conversational agent built here.** After initialization, leave `outputSchema` empty. Standalone, in-solution and published conversational agents do not support structured outputs — the runtime streams responses/tool-call events during the execution, so the final output is not relevant for the end-user in the conversation, and a populated schema is never filled.
|
|
12
|
+
|
|
13
|
+
**The exception is a conversational agent scaffolded inline in a Maestro Flow** (a `uipath.agent.conversational` node), authored under the `uipath-maestro-flow` skill. These inline conversational agent nodes allow structured outputs for branching capabilities, such as handing the conversation between several single-prompt conversational agent nodes.
|
|
12
14
|
|
|
13
15
|
2. **Do not author any `builtInValidator` guardrail on a conversational agent, and do not set `selector.scopes` to anything other than `["Tool"]`.** Built-in validators (any `$guardrailType: "builtInValidator"`) are autonomous-only; Agent- and Llm-scoped guardrails are likewise not honored. Author the Custom `Tool` guardrail at the `agent.json` root `guardrails[]` (authoritative for UI + runtime) and mirror it into the tool's `resources/<Tool>/resource.json` → `guardrail.policies[]`; a guardrail only in the tool resource is invisible in Studio Web and does not run on the Unified (Python) runtime, per Critical Rule 1.
|
|
14
16
|
|
|
@@ -22,14 +22,13 @@ UiPath low-code agents come in **two variants**, both sharing this skill.
|
|
|
22
22
|
|
|
23
23
|
2. Conversational agents are intended for use-cases involving multi-turn conversations / fast latency with real-time user-interaction / streamed responses.
|
|
24
24
|
|
|
25
|
-
> Currently, conversational agents are only standalone and not yet supported to be inline in a flow, so inline-in-flow use-cases should always use an autonomous agent.
|
|
26
25
|
> After deployment, conversational agents are interacted with through the UiPath Conversation Service, which manages conversation history and exposes a CLI/SDK for client UIs. Each user-initiated exchange invokes the agent for a single turn, streaming events back to the client.
|
|
26
|
+
> A standalone conversational agent is the simplest way to build a back-and-forth chat assistant driven by a single system prompt. For chats that need more — routing between several agents, deterministic replies, or behind-the-scenes automations running while the conversation continues — direct the user to the `uipath-maestro-flow` skill.
|
|
27
27
|
|
|
28
28
|
In summary:
|
|
29
29
|
| Signal | Variant |
|
|
30
30
|
|---|---|
|
|
31
31
|
| User wants general input → output execution | **Autonomous** |
|
|
32
|
-
| User wants inline-in-flow | **Autonomous** |
|
|
33
32
|
| `agent.json` has `metadata.isConversational: false` or unset | **Autonomous** |
|
|
34
33
|
| User wants multi-turn chat / fast latency with real-time user-interaction / streamed responses | **Conversational** |
|
|
35
34
|
| Existing `agent.json` has `metadata.isConversational: true` | **Conversational** |
|
|
@@ -30,7 +30,7 @@ The `<path>` argument is relative or absolute; the command can run from any dire
|
|
|
30
30
|
- `--model <model>` — LLM model to use (default: `gpt-5.4` for autonomous, `anthropic.claude-sonnet-4-5-20250929-v1:0` for conversational). This default is stale; override it post-init — discover current tenant models with `uip agent model list` and select per [model-selection-guide.md](model-selection-guide.md). Pass `--model` at init or edit `settings.model` after.
|
|
31
31
|
- `--system-prompt <prompt>` — Initial system prompt for the agent
|
|
32
32
|
- `--force` — Overwrite existing directory if non-empty
|
|
33
|
-
- `--inline-in-flow` — Scaffold an inline agent inside a flow project (see below).
|
|
33
|
+
- `--inline-in-flow` — Scaffold an inline agent inside a flow project (see below).
|
|
34
34
|
|
|
35
35
|
#### Inline mode: `--inline-in-flow`
|
|
36
36
|
|
|
@@ -45,7 +45,7 @@ uip agent init "<FLOW_PROJECT_DIR>" --inline-in-flow --output json
|
|
|
45
45
|
{ "Result": "Success", "Code": "LowCodeAgentInitInline", "Data": { "Status": "Inline agent created inside flow project", "Path": "/path/to/FlowProject/<uuid>", "ProjectId": "<uuid>", "Model": "gpt-4o-2024-11-20" } }
|
|
46
46
|
```
|
|
47
47
|
|
|
48
|
-
After scaffolding, add a `uipath.agent.autonomous` node to the flow with `inputs.source = <ProjectId>` and no node instance `model` block. See [capabilities/inline-in-flow/inline-in-flow.md](capabilities/inline-in-flow/inline-in-flow.md) for the full structure.
|
|
48
|
+
After scaffolding an autonomous agent, add a `uipath.agent.autonomous` node to the flow with `inputs.source = <ProjectId>` and no node instance `model` block. See [capabilities/inline-in-flow/inline-in-flow.md](capabilities/inline-in-flow/inline-in-flow.md) for the full structure. Inline conversational agents are added with a `uipath.agent.conversational` node and are authored under the `uipath-maestro-flow` skill.
|
|
49
49
|
|
|
50
50
|
### `uip agent guardrails list`
|
|
51
51
|
|
package/skills/uipath-agents/references/lowcode/prompting/conversational-agent-prompting-guide.md
CHANGED
|
@@ -103,7 +103,7 @@ User message: `""` — left blank. The Conversational Service injects the user t
|
|
|
103
103
|
| Field | Default | Change when |
|
|
104
104
|
|-------|---------|-------------|
|
|
105
105
|
| `inputSchema` | `{ "properties": {} }` | Add fields only when per-exchange, variable-based context beyond conversation history is genuinely needed. Reserved names: `messages`, `uipath__*` ([critical-rules/conversational-critical-rules.md](../critical-rules/conversational-critical-rules.md) Anti-patterns 4 and 5). |
|
|
106
|
-
| `outputSchema` | `{ "type": "object", "properties": {} }` | **Never populate** — runtime streams events, does not fill output ([critical-rules/conversational-critical-rules.md](../critical-rules/conversational-critical-rules.md) Anti-pattern 1). |
|
|
106
|
+
| `outputSchema` | `{ "type": "object", "properties": {} }` | **Never populate** — runtime streams events, does not fill output. Exception: inline-in-flow conversational agents, authored under the `uipath-maestro-flow` skill ([critical-rules/conversational-critical-rules.md](../critical-rules/conversational-critical-rules.md) Anti-pattern 1). |
|
|
107
107
|
| `messages[1].content` | `""` | **Keep blank** — Conversational Service injects the user turn at runtime ([critical-rules/conversational-critical-rules.md](../critical-rules/conversational-critical-rules.md) Anti-pattern 3). |
|
|
108
108
|
| `settings.temperature` | `0` | Raise for open-ended brainstorming or casual chats. Keep `0` for factual support flows. |
|
|
109
109
|
| `settings.maxTokens` | `64000` | Set ≤ the model's `MaxTokens` cap — see [model-selection-guide.md](../model-selection-guide.md#1-discover-primary-path). |
|
|
@@ -115,7 +115,7 @@ User message: `""` — left blank. The Conversational Service injects the user t
|
|
|
115
115
|
- **Vague role** — "You are a helpful agentic assistant." Name the role and bound the scope.
|
|
116
116
|
- **No tool-call criteria** — agent over-calls or under-calls tools.
|
|
117
117
|
- **Long tool-call loops** - agent runtime may stop and require the user to confirm continuation after a single agent run (turn) consists of a series of over 8 steps that each involve tool-call(s). Note that this is not a limitation on total parallel tool-calls on any individual step, so aim to parallelize tool-calls when possible and/or ask for user-confirmation to break up long loops of sequential steps.
|
|
118
|
-
- **Populating `outputSchema`** — runtime streams events; populated schemas never get filled and confuse the agent ([critical-rules/conversational-critical-rules.md](../critical-rules/conversational-critical-rules.md) Anti-pattern 1).
|
|
118
|
+
- **Populating `outputSchema`** — runtime streams events; populated schemas never get filled and confuse the agent. Exception: inline-in-flow conversational agents ([critical-rules/conversational-critical-rules.md](../critical-rules/conversational-critical-rules.md) Anti-pattern 1).
|
|
119
119
|
- **Templating data into the user message** — the user message content stays blank; per-exchange context goes into the **system prompt** via `inputSchema` templating.
|
|
120
120
|
- **Adding `messages` or `uipath__*` to `inputSchema`** — reserved names; runtime injects ([critical-rules/conversational-critical-rules.md](../critical-rules/conversational-critical-rules.md) Anti-patterns 4 and 5).
|
|
121
121
|
- **Using built-in validator guardrails (PII, harmful content, etc.) or `Agent`/`Llm` scopes** — built-in validators are autonomous-only and silently ignored; conversational agents support only Custom deterministic `Tool`-scoped guardrails ([critical-rules/conversational-critical-rules.md](../critical-rules/conversational-critical-rules.md) Critical Rule 1).
|
|
@@ -206,7 +206,7 @@ Reads recent exchanges without waiting. Rarely needed, and constrained — see [
|
|
|
206
206
|
|
|
207
207
|
## Structured Outputs
|
|
208
208
|
|
|
209
|
-
In addition to responding to the chat, an **inline** conversational agent can also return named fields for a downstream node to route on.
|
|
209
|
+
In addition to responding to the chat, an **inline** conversational agent can also return named fields for a downstream node to route on. Imported standalone conversational agents (published or in-solution) do not support structured output fields.
|
|
210
210
|
|
|
211
211
|
Declare each field in two places or it yields nothing at run time:
|
|
212
212
|
|
|
@@ -217,6 +217,24 @@ Declare each field in two places or it yields nothing at run time:
|
|
|
217
217
|
|
|
218
218
|
Bind it downstream as `$vars.<agentNodeId>.output.shouldHandoff`. Writing one side without the other passes `agent validate` and `flow validate` — nothing checks the pair.
|
|
219
219
|
|
|
220
|
+
### Prompting: what goes where
|
|
221
|
+
|
|
222
|
+
The prompts that drive the agent's chat replies and structured output differ:
|
|
223
|
+
|
|
224
|
+
| Generated | Driven by |
|
|
225
|
+
| --- | --- |
|
|
226
|
+
| the chat reply | the system prompt **only** |
|
|
227
|
+
| the structured outputs | the system prompt **plus** each field's `description` |
|
|
228
|
+
|
|
229
|
+
So split the instructions by destination — *what to say* and *response instructions* in the system prompt, *how to fill the field* in that field's `description` (write the same description in both `agentOutputVariables[]` and `outputSchema.properties`):
|
|
230
|
+
|
|
231
|
+
| Where | Example |
|
|
232
|
+
| --- | --- |
|
|
233
|
+
| system prompt | "Thank the user when they would like to end the conversation." |
|
|
234
|
+
| `endConversation` (boolean) `description` | "Set to true when the user intends to end the conversation." |
|
|
235
|
+
|
|
236
|
+
**Do not name the output field and how to set it in the system prompt.** An instruction like "set `endConversation` to `true` when the user says goodbye" in the system prompt may make the LLM emit the structured value to the chat or look for a tool to set the output variables.
|
|
237
|
+
|
|
220
238
|
## Wire the Edges
|
|
221
239
|
|
|
222
240
|
An **inline** agent leaves on `success`; an in-solution or published one leaves on `output`. The smallest loop:
|
package/skills/uipath-maestro-flow/references/author/plugins/conversational-agent/planning.md
CHANGED
|
@@ -129,5 +129,5 @@ In the architectural plan:
|
|
|
129
129
|
- `chat-agent: <description>` — one line per agent; omit for a scripted chat. Inline: Reuse the [inline-agent](../inline-agent/planning.md) annotations. In-solution or published: `<agent-name> in <folder-path>`.
|
|
130
130
|
- `chat-agent-flavor: <agent-name> = inline | in-solution | published` — one per agent above; decides the node type (`uipath.agent.conversational` for inline, `uipath.core.agent.*` for the others — see the [flavor table](#pick-the-agent-flavor-before-you-build) for which suffix each takes) and on which port (`success` for inline, `output` for the others)
|
|
131
131
|
- `chat-send-message: <purpose>` — one line per flow-authored message (loading messages, handoff notice, node output results); a scripted chat consists mostly of these
|
|
132
|
-
- `chat-structured-output: <agent-name> = <fieldName>` — only when the flow branches on that conversational agent's reply; forces that conversational agent to inline flavor because in-solution and published conversational agents have no structured outputs
|
|
132
|
+
- `chat-structured-output: <agent-name> = <fieldName>` — only when the flow branches on that conversational agent's reply; forces that conversational agent to inline flavor because in-solution and published conversational agents have no structured outputs.
|
|
133
133
|
- Tools, contexts, and escalations on any inline chat agent reuse the [inline-agent](../inline-agent/planning.md) annotations
|
package/version-manifest.json
CHANGED