@uipath/maestro-builder-sdk 6.42.0 → 6.44.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/dist/api-index.md +104 -103
- package/dist/api-members.md +319 -317
- package/dist/check.d.ts +0 -19
- package/dist/check.js +140 -1042
- package/dist/compile-cli.js +2 -1
- package/dist/core/actions.d.ts +10 -713
- package/dist/core/actions.js +0 -193
- package/dist/core/agent-sidecar.d.ts +186 -0
- package/dist/core/agent-sidecar.js +409 -0
- package/dist/core/agent-tool-resources.d.ts +62 -0
- package/dist/core/agent-tool-resources.js +81 -0
- package/dist/{config.js → core/connector-configuration.js} +2 -2
- package/dist/core/form-field-type.d.ts +7 -0
- package/dist/core/form-field-type.js +12 -2
- package/dist/core/node-id-placeholder.d.ts +8 -0
- package/dist/core/node-id-placeholder.js +10 -0
- package/dist/core/ts-literal.d.ts +6 -0
- package/dist/core/ts-literal.js +15 -0
- package/dist/core/typed-raw-node.js +0 -5
- package/dist/decompile.js +239 -857
- package/dist/flow-expr-check.js +5 -0
- package/dist/flow-node-registry.js +2 -1
- package/dist/flow-node-type.d.ts +139 -6
- package/dist/flow-sdk.d.ts +41 -5
- package/dist/flow-sdk.js +15 -1
- package/dist/flow-step-variables.d.ts +4 -0
- package/dist/flow-step-variables.js +22 -0
- package/dist/loop-version.d.ts +23 -6
- package/dist/loop-version.js +37 -15
- package/dist/nodes/agent/flow/check.d.ts +88 -0
- package/dist/nodes/agent/flow/check.js +873 -0
- package/dist/nodes/agent/flow/factories.d.ts +134 -0
- package/dist/nodes/agent/flow/factories.js +143 -0
- package/dist/nodes/agent/flow/family.d.ts +3 -0
- package/dist/nodes/agent/flow/family.js +8 -0
- package/dist/nodes/agent/flow/index.d.ts +3 -0
- package/dist/nodes/agent/flow/index.js +3 -0
- package/dist/nodes/agent/flow/inline-agent-lift.d.ts +44 -0
- package/dist/nodes/agent/flow/inline-agent-lift.js +572 -0
- package/dist/nodes/agent/flow/inline-agent.d.ts +15 -0
- package/dist/nodes/agent/flow/inline-agent.js +526 -0
- package/dist/nodes/agent/flow/node-type.d.ts +20 -0
- package/dist/nodes/agent/flow/node-type.js +422 -0
- package/dist/nodes/agent/flow/resources.d.ts +502 -0
- package/dist/nodes/agent/flow/resources.js +1409 -0
- package/dist/nodes/agent/flow/spec.d.ts +448 -0
- package/dist/nodes/agent/flow/spec.js +1 -0
- package/dist/nodes/hitl/flow/check.js +15 -0
- package/dist/nodes/hitl/flow/node-type.js +18 -3
- package/dist/nodes/process/flow/check.d.ts +40 -2
- package/dist/nodes/process/flow/check.js +156 -0
- package/dist/nodes/process/flow/factories.d.ts +58 -3
- package/dist/nodes/process/flow/factories.js +59 -2
- package/dist/nodes/process/flow/node-type.d.ts +4 -1
- package/dist/nodes/process/flow/node-type.js +198 -12
- package/dist/nodes/process/flow/spec.d.ts +112 -5
- package/dist/serialize.d.ts +9 -54
- package/dist/serialize.js +102 -2777
- package/package.json +2 -2
- /package/dist/{config.d.ts → core/connector-configuration.d.ts} +0 -0
- /package/dist/{ixp-definition.json → core/ixp-definition.json} +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The process family's authoring types — an RPA process (`uipath.core.rpa-workflow.<key>`),
|
|
3
3
|
* an API workflow (`uipath.core.api-workflow.<key>`), a published function
|
|
4
|
-
* (`uipath.core.function.<key>`)
|
|
5
|
-
* `uipath.core.flow.<key>`, `uipath.core.case-management.<key>`)
|
|
6
|
-
* entries in `FlowActionSpecs`. Moved
|
|
7
|
-
*
|
|
8
|
-
*
|
|
4
|
+
* (`uipath.core.function.<key>`), an agentic process (`uipath.core.agentic-process.<key>`,
|
|
5
|
+
* `uipath.core.flow.<key>`, `uipath.core.case-management.<key>`) and a published agent
|
|
6
|
+
* (`uipath.core.agent.<key>`) — and their kinds' entries in `FlowActionSpecs`. Moved
|
|
7
|
+
* from core/actions.ts in Phase 4 of docs/NODE_TYPE_ARCHITECTURE_DESIGN.md.
|
|
8
|
+
* `ProcessLocation` stays in core: `core/process-resource.ts` reads it.
|
|
9
9
|
*/
|
|
10
10
|
import type { ProcessLocation, ReturnFieldType } from '../../../core/actions.js';
|
|
11
11
|
export interface RpaWorkflowInputs {
|
|
@@ -232,6 +232,109 @@ export type AgenticProcessCompletion = {
|
|
|
232
232
|
};
|
|
233
233
|
/** What `agenticProcess()` takes: the shared fields plus the completion policy. */
|
|
234
234
|
export type AgenticProcessInputs = AgenticProcessInputsBase & AgenticProcessCompletion;
|
|
235
|
+
/**
|
|
236
|
+
* Which KIND of agent project was published behind a `uipath.core.agent.<key>`
|
|
237
|
+
* resource. Display-only — see {@link AgentInputs.flavour}.
|
|
238
|
+
*/
|
|
239
|
+
export type AgentFlavour = 'coded' | 'lowcode';
|
|
240
|
+
/** Where a published agent lives: deployed to a folder (`'published'`) or a sibling project of the same solution (`'in-solution'`). */
|
|
241
|
+
export type AgentLocation = ProcessLocation;
|
|
242
|
+
/** What `agent()` takes: the agent resource to start, its arguments, and the output fields a read may name. */
|
|
243
|
+
export interface AgentInputs {
|
|
244
|
+
/**
|
|
245
|
+
* The agent resource key (a GUID). It becomes the node's TYPE,
|
|
246
|
+
* `uipath.core.agent.<key>`. For a published agent this is the Orchestrator
|
|
247
|
+
* release key; for an in-solution sibling it is `resource.key` from
|
|
248
|
+
* `resources/solution_folder/process/agent/<project>.json`.
|
|
249
|
+
*
|
|
250
|
+
* Find it with `uip or processes list --all-folders --process-type Agent` (an agent's
|
|
251
|
+
* `ProcessKey` reads `<project>.agent.<name>`; the GUID you want is the row's
|
|
252
|
+
* **`Key`**) or `uip maestro flow registry search uipath.core.agent`.
|
|
253
|
+
*
|
|
254
|
+
* Pass `--limit`: `--all-folders` returns 50 rows and reports the truncation
|
|
255
|
+
* only in `Pagination.HasMore`, so an agent that exists can look absent.
|
|
256
|
+
*/
|
|
257
|
+
key: string;
|
|
258
|
+
/** The agent project name. */
|
|
259
|
+
name: string;
|
|
260
|
+
/**
|
|
261
|
+
* Where the referenced agent lives. Published is the backward-compatible
|
|
262
|
+
* default. Use `in-solution` only after registering a sibling agent project
|
|
263
|
+
* with `uip solution projects add`.
|
|
264
|
+
*/
|
|
265
|
+
location?: AgentLocation;
|
|
266
|
+
/**
|
|
267
|
+
* The Orchestrator folder holding it — e.g.
|
|
268
|
+
* `'Shared/uipath-maestro-flow/CountLetters LowCode'`.
|
|
269
|
+
*
|
|
270
|
+
* **Not optional, and not cosmetic.** Agent names are unique per FOLDER, not per
|
|
271
|
+
* tenant: `codereval/DefaultTenant` carries two agents called `CountLetters`,
|
|
272
|
+
* one in `Shared` and one in `Shared/uipath-maestro-flow/CountLetters CodedAgent`,
|
|
273
|
+
* with different release keys. The release is resolved by listing THIS
|
|
274
|
+
* folder, so the folder is what picks the agent you meant. Required for a
|
|
275
|
+
* published agent; omit it for an in-solution sibling.
|
|
276
|
+
*/
|
|
277
|
+
folderPath?: string;
|
|
278
|
+
/**
|
|
279
|
+
* The sibling agent project's `resource.projectKey`, read from
|
|
280
|
+
* `resources/solution_folder/process/agent/<project>.json`. Required only
|
|
281
|
+
* when `location` is `in-solution`.
|
|
282
|
+
*/
|
|
283
|
+
projectId?: string;
|
|
284
|
+
/**
|
|
285
|
+
* The AGENT's own input arguments, by its own argument names (e.g.
|
|
286
|
+
* `{ inputString: 'arrow' }`). Every agent declares its own — read them from
|
|
287
|
+
* `uip maestro flow registry get uipath.core.agent.<agent>` under
|
|
288
|
+
* `inputDefinition.properties`.
|
|
289
|
+
*
|
|
290
|
+
* **Required, unlike the other job families' `inputs`.** An agent node with
|
|
291
|
+
* nothing bound is one the platform REWRITES behind your back: flow-v1's
|
|
292
|
+
* `applyEmptyInputFloor` seeds `JobArguments: { input: <empty-for-declared-type> }`
|
|
293
|
+
* — a key named `input`, which is not in the agent's own schema unless the agent
|
|
294
|
+
* happens to declare one — because the Python agent runner validates the body
|
|
295
|
+
* against a schema with a required `input` field and rejects a bare `{}` with
|
|
296
|
+
* *"Field required: input"* (the pod then exits `0x33`). Locally the envelope
|
|
297
|
+
* passes straight through and the run is green, so nothing but a checker can see
|
|
298
|
+
* it. Pass `{}` explicitly if you really mean "no arguments" and `check` will
|
|
299
|
+
* tell you what the platform will do with it.
|
|
300
|
+
*/
|
|
301
|
+
inputs: Record<string, unknown>;
|
|
302
|
+
/**
|
|
303
|
+
* The agent's OUTPUT fields and their types (e.g.
|
|
304
|
+
* `{ count: 'integer', inputString: 'string' }`). Required if anything reads the
|
|
305
|
+
* step's output, for the same reason as `rpaWorkflow`'s: the schema lives on the
|
|
306
|
+
* tenant and authoring happens offline, so an undeclared read is rejected —
|
|
307
|
+
* rightly, since nothing offline could tell a real field from a typo.
|
|
308
|
+
*
|
|
309
|
+
* `uip maestro flow registry get uipath.core.agent.<agent>` shows what the
|
|
310
|
+
* platform declares, under `outputDefinition.output.schema.properties`.
|
|
311
|
+
*
|
|
312
|
+
* **Case matters.** The agent answers with the field names its own definition
|
|
313
|
+
* declares (`count`, not `Count`). It used to be a live-only trap: a poller that
|
|
314
|
+
* read the job through `uip agent run status` got a PascalCased envelope, so a
|
|
315
|
+
* read of `count` was right offline and `undefined` live (flow-builder-sdk #122).
|
|
316
|
+
* Declare the names the definition declares.
|
|
317
|
+
*
|
|
318
|
+
* @enforcedBy AGENT_READ_WITHOUT_RETURNS Reading a field off the result requires
|
|
319
|
+
* declaring it here.
|
|
320
|
+
*/
|
|
321
|
+
returns?: Record<string, ReturnFieldType>;
|
|
322
|
+
/**
|
|
323
|
+
* Whether the published resource is a CODED agent project (LangGraph /
|
|
324
|
+
* LlamaIndex / OpenAI Agents) or a low-code one built in Agent Builder.
|
|
325
|
+
*
|
|
326
|
+
* **Display-only, and it is the only thing that differs.** `registry get` on a
|
|
327
|
+
* coded and a low-code agent returns the same node type, the same
|
|
328
|
+
* `Orchestrator.StartAgentJob` service type, the same `sortOrder` and the
|
|
329
|
+
* same bindings shape; the single difference is `display.icon` —
|
|
330
|
+
* `coded-agent` vs `autonomous-agent`. Which one a given resource is cannot be
|
|
331
|
+
* known offline, so it is stated here rather than guessed. Check with
|
|
332
|
+
* `uip maestro flow registry get uipath.core.agent.<agent>` → `display.icon`.
|
|
333
|
+
*
|
|
334
|
+
* Defaults to `'lowcode'`. Nothing in the runtime keys on it.
|
|
335
|
+
*/
|
|
336
|
+
flavour?: AgentFlavour;
|
|
337
|
+
}
|
|
235
338
|
declare module '../../../core/actions.js' {
|
|
236
339
|
interface FlowActionSpecs {
|
|
237
340
|
/** The spec {@link rpaWorkflow} builds. */
|
|
@@ -250,6 +353,10 @@ declare module '../../../core/actions.js' {
|
|
|
250
353
|
agenticProcess: {
|
|
251
354
|
inputs: AgenticProcessInputs;
|
|
252
355
|
};
|
|
356
|
+
/** The spec {@link agent} builds. */
|
|
357
|
+
agent: {
|
|
358
|
+
inputs: AgentInputs;
|
|
359
|
+
};
|
|
253
360
|
}
|
|
254
361
|
}
|
|
255
362
|
export {};
|
package/dist/serialize.d.ts
CHANGED
|
@@ -13,31 +13,6 @@ import { connectorInputErrors as coreConnectorInputErrors } from './core/connect
|
|
|
13
13
|
* dropping it would make `check` quietly accept what `compile` throws on.
|
|
14
14
|
*/
|
|
15
15
|
export declare function connectorInputErrors(rc: Parameters<typeof coreConnectorInputErrors>[0], inputs: Record<string, unknown>, resolutions?: Parameters<typeof coreConnectorInputErrors>[2], lookups?: Parameters<typeof coreConnectorInputErrors>[3]): string | undefined;
|
|
16
|
-
/**
|
|
17
|
-
* Every tool resource identity `compile` writes, read off the tables its
|
|
18
|
-
* writers use — so a tool kind cannot be written without being owned, or owned
|
|
19
|
-
* without being written (#935: the #920 built-in files were written as
|
|
20
|
-
* `internal` and never pruned, because ownership was a hand-kept list in
|
|
21
|
-
* `compile-cli.ts` that did not have them).
|
|
22
|
-
*
|
|
23
|
-
* * `types` — the resource `type`s compile owns OUTRIGHT: every deployed-resource
|
|
24
|
-
* kind's, and `integration` (connector tools, since #867).
|
|
25
|
-
* * `internalToolTypes` — `internal` is shared with designer-only built-ins
|
|
26
|
-
* (`load-attachments`, `create-file`, `jev-classifier`), so for it ownership
|
|
27
|
-
* is the `properties.toolType`, and only the ones compile writes.
|
|
28
|
-
*/
|
|
29
|
-
export declare const COMPILE_WRITTEN_TOOL_RESOURCES: {
|
|
30
|
-
readonly types: ReadonlySet<string>;
|
|
31
|
-
readonly internalToolTypes: ReadonlySet<string>;
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* Does `compile` own this `resources/<id>/resource.json` — would a compile have
|
|
35
|
-
* written it, so one this compile did not write is stale rather than someone
|
|
36
|
-
* else's? Everything it says no to belongs to the designer or to `uip agent
|
|
37
|
-
* refresh` (escalation, mcp, designer-only built-ins, the kinds the SDK cannot
|
|
38
|
-
* derive), and is never deleted.
|
|
39
|
-
*/
|
|
40
|
-
export declare function compileOwnsResource(body: Record<string, unknown> | undefined): boolean;
|
|
41
16
|
/**
|
|
42
17
|
* A compile-time observation that does not stop emission. `check()` has its
|
|
43
18
|
* diagnostics; this is the serializer's own channel for things it can only see
|
|
@@ -129,9 +104,8 @@ export declare function serializeWithSidecars(built: BuiltFlow, opts?: Serialize
|
|
|
129
104
|
/**
|
|
130
105
|
* The node type a typed action compiles to, when that type's definition is
|
|
131
106
|
* bundled in `core-definitions.json`. `undefined` for a family whose definition
|
|
132
|
-
* is built per tenant or per call (connector,
|
|
133
|
-
*
|
|
134
|
-
* does not lower by kind.
|
|
107
|
+
* is built per tenant or per call (connector, ixpExtract) and for a spec this
|
|
108
|
+
* SDK does not lower by kind.
|
|
135
109
|
*
|
|
136
110
|
* A registered kind (flow-node-registry.ts) is not listed: its type is the
|
|
137
111
|
* registry's.
|
|
@@ -141,17 +115,16 @@ export declare function bundledActionNodeType(spec: {
|
|
|
141
115
|
inputs?: any;
|
|
142
116
|
} | undefined): string | undefined;
|
|
143
117
|
/**
|
|
144
|
-
* The definition serialize synthesizes for a
|
|
145
|
-
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
*
|
|
118
|
+
* The definition serialize synthesizes for a kind that has no bundled one and
|
|
119
|
+
* is not on the node-type registry: an `ixpExtract` step. Its node type carries
|
|
120
|
+
* a tenant's key, so the SDK builds the definition per call, transcribed from
|
|
121
|
+
* what `registry get` returns. `undefined` for every other kind (a bundled
|
|
122
|
+
* family, a connector, a container, a registered kind — the published process
|
|
123
|
+
* resources and the agent build theirs in nodes/process/flow/).
|
|
150
124
|
*
|
|
151
125
|
* The emit path builds its definition here, and `check` asks this same
|
|
152
126
|
* definition whether the node has an error port (#1040), so the two cannot
|
|
153
|
-
* disagree.
|
|
154
|
-
* `uipath.core.function.<key>@1.0.0` with `supportsErrorHandling: true`.
|
|
127
|
+
* disagree.
|
|
155
128
|
*
|
|
156
129
|
* Throws what the family's builder throws for an unusable spec (an
|
|
157
130
|
* `ixpExtract` project that is not a node type).
|
|
@@ -160,24 +133,6 @@ export declare function perCallDefinition(spec: {
|
|
|
160
133
|
kind?: string;
|
|
161
134
|
inputs?: any;
|
|
162
135
|
} | undefined): any | undefined;
|
|
163
|
-
/**
|
|
164
|
-
* The definition version serialize emits for a typed action step that is not
|
|
165
|
-
* yet on the node-type registry: the author's `{ version }` when given,
|
|
166
|
-
* otherwise the version the step's inputs select, otherwise `undefined` (the
|
|
167
|
-
* pinned default). One such family picks a version itself: `inlineAgent`
|
|
168
|
-
* takes the newest bundled version, not the first bundled entry.
|
|
169
|
-
*
|
|
170
|
-
* The emit paths read their version here, and `check` resolves the definition
|
|
171
|
-
* it asks about with this same version (#1041), so the two cannot pick
|
|
172
|
-
* different definitions. For instance `inlineAgent({ ... })` gives the newest
|
|
173
|
-
* bundled version in both. A registered family (e.g. `dataFabricRead`, whose
|
|
174
|
-
* `resultMode` selects `core.datafabric.read@1.4`) gets the same guarantee from
|
|
175
|
-
* the registry's `resolveVersion`, which check and serialize both call.
|
|
176
|
-
*/
|
|
177
|
-
export declare function actionVersion(spec: {
|
|
178
|
-
kind?: string;
|
|
179
|
-
inputs?: any;
|
|
180
|
-
} | undefined, explicit: string | undefined): string | undefined;
|
|
181
136
|
/**
|
|
182
137
|
* The bundled definition of `nodeType` that `makeNode` resolves: the author's
|
|
183
138
|
* exact `{ version }` when given, otherwise the pinned default (the first
|