@minded-ai/mindedjs 3.1.26 → 3.1.28

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.
@@ -1 +1 @@
1
- {"version":3,"file":"validateAgent.d.ts","sourceRoot":"","sources":["../../src/cli/validateAgent.ts"],"names":[],"mappings":"AAsaA;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8J1E"}
1
+ {"version":3,"file":"validateAgent.d.ts","sourceRoot":"","sources":["../../src/cli/validateAgent.ts"],"names":[],"mappings":"AAyaA;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8J1E"}
@@ -267,6 +267,9 @@ function validateFlow(flowPath) {
267
267
  if (node.inputSchema !== undefined && !Array.isArray(node.inputSchema)) {
268
268
  errors.push(`${nodeIndex} "${node.name}": tool node "inputSchema" must be an array`);
269
269
  }
270
+ if (node.outputSchema !== undefined && !Array.isArray(node.outputSchema)) {
271
+ errors.push(`${nodeIndex} "${node.name}": tool node "outputSchema" must be an array`);
272
+ }
270
273
  break;
271
274
  case 'junction':
272
275
  // Junction only requires name and type, which we already checked
@@ -1 +1 @@
1
- {"version":3,"file":"validateAgent.js","sourceRoot":"","sources":["../../src/cli/validateAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateAgent.js","sourceRoot":"","sources":["../../src/cli/validateAgent.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ This example showcases:
19
19
  ```
20
20
  order-refund-agent/
21
21
  ├── minded.json # Agent configuration
22
- ├── schema.ts # Memory type definition
22
+ ├── agentMemorySchema.ts # Memory type definition
23
23
  ├── agent.ts # Main agent implementation
24
24
  ├── flows/
25
25
  │ └── refundFlow.yaml # Flow definition
@@ -51,7 +51,7 @@ Create your `minded.json` configuration file (see [Project Configuration](../get
51
51
 
52
52
  ### 2. Memory Schema
53
53
 
54
- **`schema.ts`:**
54
+ **`agentMemorySchema.ts`:**
55
55
 
56
56
  ```ts
57
57
  import { z } from 'zod';
@@ -161,7 +161,7 @@ Corresponding project structure:
161
161
  your-project/
162
162
  ├── minded.json # Agent configuration
163
163
  ├── customerSupportAgent.ts # Main agent file (default export)
164
- ├── schema.ts # Memory schema
164
+ ├── agentMemorySchema.ts # Memory schema
165
165
  ├── flows/ # Flow definitions
166
166
  │ ├── mainFlow.yaml
167
167
  │ └── escalationFlow.yaml
@@ -59,7 +59,7 @@ edges:
59
59
 
60
60
  ### 3. Memory Schema
61
61
 
62
- Create `schema.ts`:
62
+ Create `agentMemorySchema.ts`:
63
63
 
64
64
  ```ts
65
65
  import { z } from 'zod';
@@ -201,7 +201,7 @@ Here's a comprehensive example of a Zendesk customer support agent:
201
201
  ```
202
202
  zendesk-agent/
203
203
  ├── minded.json
204
- ├── schema.ts
204
+ ├── agentMemorySchema.ts
205
205
  ├── zendeskAgent.ts
206
206
  ├── flows/
207
207
  │ └── supportFlow.yaml
@@ -232,7 +232,7 @@ zendesk-agent/
232
232
 
233
233
  ### Memory Schema
234
234
 
235
- **`schema.ts`:**
235
+ **`agentMemorySchema.ts`:**
236
236
 
237
237
  ```typescript
238
238
  import { z } from 'zod';
@@ -1,74 +1,62 @@
1
1
  # Flows
2
2
 
3
- Flows are the **core orchestration mechanism** in MindedJS that define how your AI agent processes conversations through a series of connected nodes. A flow represents a complete run of an AI agent that handles user interactions from trigger to completion.
3
+ Flows are the core orchestration mechanism in MindedJS that define how your AI agent processes conversations. A flow represents a complete conversation pathway from trigger to completion, consisting of nodes (processing units), edges (routing logic), and memory (shared state).
4
4
 
5
- ## What are Flows?
5
+ ## Flow Structure
6
6
 
7
- Flows define the **conversation logic** and **decision-making pathways** for your AI agent. Each flow consists of:
8
-
9
- * **Nodes** - Processing units that handle specific tasks
10
- * **Edges** - Routing logic that connects nodes
11
- * **Memory** - Shared state that persists throughout the flow
12
- * **Configuration** - Settings that control flow behavior
7
+ Every flow follows this YAML structure:
13
8
 
14
9
  ```yaml
15
- name: Customer Support Flow
16
- nodes:
10
+ id: flow-id # Unique flow identifier
11
+ name: Flow Name # Human-readable flow name
12
+ nodes: # Array of processing nodes
17
13
  - type: trigger
18
- triggerType: webhook
19
- name: Customer Request
20
-
21
- - type: promptNode
22
- name: Support Agent
23
- prompt: |
24
- You are a helpful customer support agent.
25
- Assist the customer with their inquiry.
26
- llmConfig:
27
- name: ChatOpenAI
28
- properties:
29
- model: gpt-4o
14
+ name: node-name
15
+ displayName: Node Name
16
+ # ... node-specific properties
30
17
 
31
- edges:
32
- - source: Customer Request
33
- target: Support Agent
18
+ edges: # Array of routing connections
19
+ - source: source-node-name
20
+ target: target-node-name
34
21
  type: stepForward
22
+ # ... edge-specific properties
35
23
  ```
36
24
 
37
- ## Flow Components Overview
25
+ ### Flow Properties
38
26
 
39
- | Component | Purpose | Description |
40
- | ------------------------------------------------ | ---------- | ---------------------------------------------------- |
41
- | [**Nodes**](nodes.md) | Processing | Handle specific tasks like LLM calls, tool execution |
42
- | [**Edges**](edges.md) | Routing | Define transitions and decision logic between nodes |
43
- | [**Memory**](../platform/memory.md) | State | Shared context that persists throughout the flow |
44
- | [**Configuration**](flows.md#flow-configuration) | Settings | Flow-level settings and metadata |
27
+ - `id` (string, required): Unique identifier for the flow
28
+ - `name` (string, required): Human-readable name for the flow
29
+ - `nodes` (array, required): Array of node definitions
30
+ - `edges` (array, required): Array of edge definitions connecting nodes
45
31
 
46
- ## Basic Flow Structure
32
+ ## Flow Components
47
33
 
48
- Every flow follows this YAML structure:
49
-
50
- ```yaml
51
- name: Flow Name # Required: Human-readable flow identifier
52
- nodes: # Required: Array of processing nodes
53
- - type: trigger # Node type
54
- name: Node Name # Unique node identifier
55
- # ... node-specific config
56
-
57
- edges: # Required: Array of routing connections
58
- - source: Source Node # Source node name
59
- target: Target Node # Target node name
60
- type: stepForward # Edge type
61
- # ... edge-specific config
62
- ```
34
+ | Component | Purpose | Description |
35
+ |--------------------------------| ---------- | ---------------------------------------------------- |
36
+ | [**Nodes**](nodes.md) | Processing | Handle specific tasks like LLM calls, tool execution |
37
+ | [**Edges**](edges.md) | Routing | Define transitions and decision logic between nodes |
38
+ | [**Memory**](../sdk/memory.md) | State | Shared context that persists throughout the flow |
63
39
 
64
- ## Nodes in Flows
40
+ ## Example
65
41
 
66
- Flows orchestrate different types of nodes to handle various aspects of conversation processing. For detailed information about each node type, see the [**Nodes documentation**](nodes.md).
67
-
68
- ## Edges in Flows
69
-
70
- Edges define how your flow moves between nodes based on different conditions. For comprehensive information about edge types and routing logic, see the [**Edges documentation**](edges.md).
42
+ ```yaml
43
+ id: customer-support-flow
44
+ name: Customer Support Flow
45
+ nodes:
46
+ - type: trigger
47
+ triggerType: webhook
48
+ name: customer-request
49
+ displayName: Customer Request
71
50
 
72
- ## Memory in Flows
51
+ - type: promptNode
52
+ name: support-agent
53
+ displayName: Support Agent
54
+ prompt: |
55
+ You are a helpful customer support agent.
56
+ Assist the customer with their inquiry.
73
57
 
74
- Memory provides shared state that persists throughout flow execution, allowing nodes to access and modify data from previous steps.
58
+ edges:
59
+ - source: customer-request
60
+ target: support-agent
61
+ type: stepForward
62
+ ```
@@ -2,23 +2,61 @@
2
2
 
3
3
  Nodes are the building blocks of MindedJS flows - discrete processing units that handle different aspects of your agent's workflow.
4
4
 
5
+ ## Common Node Properties
6
+
7
+ All nodes require these fields:
8
+
9
+ - `name` (string, required): Unique identifier for the node
10
+ - `type` (NodeType, required): The node type (see table below)
11
+ - `displayName` (string, required): Human-readable label shown in the editor
12
+
5
13
  ## Node Types Overview
6
14
 
7
- | Node Type | Purpose | Description |
8
- | --------------------------------------- | -------------- | ---------------------------------------- |
9
- | [**Trigger**](nodes.md#trigger-nodes) | Entry Points | Start flows from various sources |
10
- | [**Prompt**](nodes.md#prompt-nodes) | LLM Processing | Generate responses using language models |
11
- | [**Tool**](nodes.md#tool-nodes) | Actions | Execute external functions and APIs |
12
- | [**Junction**](nodes.md#junction-nodes) | Flow Control | Route and organize flow logic |
13
- | [**Jump To**](nodes.md#jump-to-nodes) | Flow Control | Jump to specific nodes or subflows |
15
+ | Node Type (`NodeType`) | Purpose | Description |
16
+ |--------------------------------------| -------------- | ---------------------------------------- |
17
+ | [`trigger`](#trigger-nodes) | Entry Points | Start flows from various sources |
18
+ | [`promptNode`](#prompt-nodes) | LLM Processing | Generate responses using language models |
19
+ | [`tool`](#tool-nodes) | Actions | Execute external functions and APIs |
20
+ | [`junction`](#junction-nodes) | Flow Control | Route and organize flow logic |
21
+ | [`jumpToNode`](#jump-to-nodes) | Flow Control | Jump to specific nodes or subflows |
22
+ | [`browserTask`](#browser-task-nodes) | Automation | AI-powered web page interactions |
14
23
 
15
24
  ## Trigger Nodes
16
25
 
17
26
  Trigger nodes are entry points that start your flows and initialize them with memory and messages.
18
27
 
19
- ### Trigger Types
28
+ ### Trigger Nodes Properties
29
+
30
+ - `type` (NodeType, required): Always `trigger`
31
+ - `triggerType` (string, required): The type of trigger to use. See the table below for details.
32
+
33
+ | `triggerType` | Description |
34
+ |---------------|-----------------------------------------------------------------|
35
+ | `webhook` | Triggered by HTTP webhook calls |
36
+ | `app` | Triggered by external app events (e.g., Zendesk ticket created) |
37
+ | `schedule` | Triggered on a cron schedule |
38
+
39
+ #### Webhook Trigger (`webhook`)
40
+
41
+ Triggered by HTTP requests to the agent's webhook endpoint.
42
+
43
+ **Properties**:
20
44
 
21
- #### App Trigger
45
+ - `autoTrigger` (boolean, optional): Auto-execute when testing flows in the UI editor
46
+ - `defaultPayload` (string, optional): Default JSON payload for testing in the UI editor
47
+
48
+ ```yaml
49
+ - type: trigger
50
+ triggerType: webhook
51
+ name: payment-webhook
52
+ displayName: Payment Webhook
53
+ autoTrigger: true
54
+ defaultPayload: '{"orderId": "123"}'
55
+ ```
56
+
57
+ #### App Trigger (`app`)
58
+
59
+ Triggered by external application events.
22
60
 
23
61
  ```yaml
24
62
  - type: trigger
@@ -28,13 +66,21 @@ Trigger nodes are entry points that start your flows and initialize them with me
28
66
  appTriggerId: zendesk-new-ticket
29
67
  ```
30
68
 
31
- #### Webhook Trigger
69
+ #### Schedule Trigger (`schedule`)
70
+
71
+ Triggered on a cron schedule.
72
+
73
+ **Properties**:
74
+
75
+ - `cronExpression` (string, required): Cron expression (e.g., `0 9 * * *` for daily at 9 AM)
76
+ - `timezone` (string, optional): Timezone for the schedule (defaults to UTC)
32
77
 
33
78
  ```yaml
34
79
  - type: trigger
35
- triggerType: webhook
36
- name: payment-failed-notification
37
- displayName: Payment Failed Notification
80
+ triggerType: schedule
81
+ name: daily-report
82
+ displayName: Daily Report
83
+ cronExpression: '0 9 * * *'
38
84
  ```
39
85
 
40
86
  ### Trigger Implementation
@@ -42,18 +88,21 @@ Trigger nodes are entry points that start your flows and initialize them with me
42
88
  Handle triggers in your agent code:
43
89
 
44
90
  ```ts
45
- import { events } from 'mindedjs/src/index';
46
- import { HumanMessage } from '@langchain/core/messages';
47
-
48
- agent.on(events.TRIGGER_EVENT, async ({ triggerName, triggerBody }) => {
49
- if (triggerName === 'customer-support-request') {
50
- return {
51
- memory: { customerQuery: triggerBody, timestamp: new Date().toISOString() },
52
- messages: [new HumanMessage(triggerBody)],
53
- };
91
+ import { Agent, AgentEvents } from '@minded-ai/mindedjs';
92
+
93
+ const agent = new Agent({ /* agent options... */ });
94
+
95
+ agent.on(AgentEvents.TRIGGER_EVENT, async ({ triggerName, triggerBody, state }) => {
96
+ if (triggerName === 'payment-webhook' && triggerBody.body?.orderId) {
97
+ state.memory.orderId = triggerBody.body.orderId;
98
+ return { isQualified: true };
54
99
  }
100
+
55
101
  // Return { isQualified: false } to prevent flow execution
102
+ return { isQualified: false };
56
103
  });
104
+
105
+ export default agent;
57
106
  ```
58
107
 
59
108
  ## Prompt Nodes
@@ -66,16 +115,51 @@ Prompt nodes process input through LLM to generate intelligent responses or invo
66
115
  - Collect information from the user.
67
116
  - Invoke (scoped) tools.
68
117
 
69
- ### Handle AI message
118
+ ### Prompt Nodes Properties
119
+
120
+ - `type`: (NodeType, required) Always `promptNode`
121
+ - `prompt` (string, required): The prompt to be sent to the LLM. The prompt is an instruction for what AI message to generate or a (scoped) tool to invoke. This is not general instruction for what the agent should do (e.g. "wait for x").
122
+ - `humanInTheLoop` (boolean, optional): When `true`, pauses execution after this node for human input before continuing. Use this property only if you need to gather an input from the user. Usually combined with a `promptCondition` edge to allow for iterative processing over human input.
123
+ - `canStayOnNode` (boolean, optional): When `true`, allows the node to route back to itself for iterative processing. Usually combined with `humanInTheLoop: true` to allow for iteration over human input.
124
+ - `llmConfig` (boolean, optional): Used to customize the LLM used by the prompt node. Leave empty to use the default LLM configured.
125
+ - `sendAiMessage` (boolean, optional): Default: `true`. When `true` emits `AgentEvents.AI_MESSAGE` event to send the response to the user. When `false`, the AI response is processed internally without sending to the user. Set to `false` for internal calculations, reasoning, or decision-making logic that shouldn't be visible to users.
126
+
127
+ ```yaml
128
+ - type: promptNode
129
+ name: generate-order-confirmation
130
+ displayName: Generate Order Confirmation
131
+ prompt: 'Generate Order Confirmation for {memory.customerName}'
132
+ sendAiMessage: true
133
+ ```
134
+
135
+ ### Handle AI message (`sendAiMessage`)
70
136
 
71
- - Prompt nodes usually result in an AI message being sent to the user. Use the `agent.on(AgentEvents.AI_MESSAGE, callback)` event handle to route the message according to user requirement (e.g. send email, slack message, update Jira ticket etc).
72
- - In development mode (playground), the message is automatically shown in the chat regardless of the message handler.
137
+ Prompt nodes usually result in an AI message being sent to the user. Use the `AgentEvents.AI_MESSAGE` event to route the message according to user requirement (e.g., send email, send a Slack message, update Jira ticket, etc.).
138
+
139
+ ```js
140
+ agent.on(AgentEvents.AI_MESSAGE, ({ message, state }) => {
141
+ // Send message to Slack channel
142
+ slackChat.postMessage({
143
+ ...options,
144
+ test: message
145
+ });
146
+ });;
147
+ ```
148
+
149
+ In development mode (playground), the message is automatically shown in the chat regardless of the message handler.
73
150
 
74
151
  ### Context
75
152
 
76
153
  - Prompt nodes automatically have access to previous nodes' output as context.
77
154
  - You can inject dynamic values into prompts using placeholders that reference memory, environment variables, tool outputs, and system values.
78
155
 
156
+ **Available Placeholders**
157
+
158
+ - [Memory](#memory-placeholders): `{state.memory.propertyName}` or `{memory.propertyName}`
159
+ - [Tool outputs](#toolnode-output-placeholders): `{tools.NodeName.propertyName}`
160
+ - [Environment variables](#environment-variable-placeholders): `{env.VARIABLE_NAME}`
161
+ - [System values](#system-placeholders): `{system.propertyName}`
162
+
79
163
  #### Memory Placeholders
80
164
 
81
165
  Access values from the agent's memory state using `{memory.propertyName}`:
@@ -108,7 +192,7 @@ prompt: 'Validate the following order data and check for any inconsistencies: {m
108
192
 
109
193
  #### Tool/Node Output Placeholders
110
194
 
111
- Access output from previous tool or operator nodes using `{tools.NodeName.field}`:
195
+ Access output from previous tool or operator nodes using `{tools.NodeName.propertyName}`:
112
196
 
113
197
  ```yaml
114
198
  # After a tool node named "lookup-customer" returns {email: "user@example.com", tier: "premium"}
@@ -119,7 +203,7 @@ prompt: 'Send a personalized welcome email to {tools.lookup-customer.email} with
119
203
 
120
204
  ```yaml
121
205
  # After an operator node named "scrape-price" with outputSchema field "price"
122
- prompt: 'Compare the scraped price of ${tools.scrape-price.price} with our database and alert if there is a significant difference'
206
+ prompt: 'Compare the scraped price of {tools.scrape-price.price} with our database and alert if there is a significant difference'
123
207
  ```
124
208
 
125
209
  #### Environment Variable Placeholders
@@ -135,14 +219,16 @@ prompt: 'If the user needs help, direct them to contact support at {env.SUPPORT_
135
219
  ```yaml
136
220
  # API endpoints
137
221
  prompt: 'Fetch the latest order status from {env.API_BASE_URL}/orders and summarize it for the customer'
222
+ ```
138
223
 
224
+ ```yaml
139
225
  # Company information
140
226
  prompt: 'Draft a professional response thanking the customer for choosing {env.COMPANY_NAME} and offer assistance'
141
227
  ```
142
228
 
143
229
  #### System Placeholders
144
230
 
145
- Access built-in system values using `{system.key}`:
231
+ Access built-in system values using `{system.propertyName}`:
146
232
 
147
233
  ```yaml
148
234
  prompt: 'Log this customer inquiry with timestamp {system.currentTime} and respond with an acknowledgment'
@@ -160,29 +246,24 @@ prompt: 'Log this customer inquiry with timestamp {system.currentTime} and respo
160
246
  #### Complete Example
161
247
 
162
248
  ```yaml
163
- - type: promptNode
164
- name: order-confirmation
165
- prompt: |
166
- Order Confirmation for {memory.customerName}
167
-
168
- Order Details:
169
- - Order ID: {memory.orderId}
170
- - Items: {memory.orderItems}
171
- - Total: ${memory.orderTotal}
172
- - Customer Tier: {tools.lookup-customer.tier}
173
- - Shipping to: {memory.shippingAddress.city}
174
-
175
- Support: {env.SUPPORT_EMAIL}
176
- Processed at: {system.currentTime}
249
+ nodes:
250
+ - type: promptNode
251
+ name: order-confirmation
252
+ displayName: Order Confirmation
253
+ prompt: |
254
+ Order Confirmation for {memory.customerName}
255
+
256
+ Order Details:
257
+ - Order ID: {memory.orderId}
258
+ - Items: {memory.orderItems}
259
+ - Total: {memory.orderTotal}
260
+ - Customer Tier: {tools.lookup-customer.tier}
261
+ - Shipping to: {memory.shippingAddress.city}
262
+
263
+ Support: {env.SUPPORT_EMAIL}
264
+ Processed at: {system.currentTime}
177
265
  ```
178
266
 
179
- ### Properties
180
-
181
- - `humanInTheLoop?: boolean` - When `true`, pauses execution after this node for human input before continuing. Use this property only if you need to gather an input from the user. Usually combined with a `promptCondition` edge to allow for iterative processing over human input.
182
- - `canStayOnNode?: boolean` - When `true`, allows the node to route back to itself for iterative processing. Usually combined with `humanInTheLoop: true` to allow for iteration over human input.
183
- - `prompt: string` - The prompt to be sent to the LLM. The prompt is an instruction for what AI message to generate or a (scoped) tool to invoke. This is not general instruction for what the agent should do (e.g. "wait for x").
184
- - `sendAiMessage?: boolean` - When `false`, the AI response is processed internally without sending to the user. Default: `true`. Set to 'false' for internal calculations, reasoning, or decision-making logic that shouldn't be visible to users.
185
-
186
267
  ### Limitations
187
268
 
188
269
  - Prompt nodes can not save information to memory directly. Rather the user & agent messages are stored in the messages array of the state object. Making user's input available to the next prompt nodes or tools in the form of input schema.
@@ -201,17 +282,18 @@ prompt: 'Log this customer inquiry with timestamp {system.currentTime} and respo
201
282
  Use `humanInTheLoop: true` and `canStayOnNode: true` with `promptCondition` edges for iterative information gathering:
202
283
 
203
284
  ```yaml
204
- - type: promptNode
205
- name: collect-customer-info
206
- displayName: Collect Customer Information
207
- prompt: 'Ask the user for their contact information (name, email, phone).'
208
- humanInTheLoop: true
209
- canStayOnNode: true
285
+ nodes:
286
+ - type: promptNode
287
+ name: collect-customer-info
288
+ displayName: Collect Customer Information
289
+ prompt: 'Ask the user for their contact information (name, email, phone).'
290
+ humanInTheLoop: true
291
+ canStayOnNode: true
210
292
 
211
293
  edges:
212
- - source: collect-customer-info
294
+ - type: promptCondition
295
+ source: collect-customer-info
213
296
  target: validate-info
214
- type: promptCondition
215
297
  prompt: 'Has all required information been collected?'
216
298
  ```
217
299
 
@@ -220,28 +302,37 @@ edges:
220
302
  Use standard prompt nodes with `stepForward` edges for one-way notifications:
221
303
 
222
304
  ```yaml
223
- - type: promptNode
224
- name: send-confirmation
225
- displayName: Send Confirmation
226
- prompt: 'Send confirmation: Order {memory.orderId}, Total: {memory.orderTotal}'
305
+ nodes:
306
+ - type: promptNode
307
+ name: send-confirmation
308
+ displayName: Send Confirmation
309
+ prompt: 'Send confirmation: Order {memory.orderId}, Total: {memory.orderTotal}'
227
310
 
228
311
  edges:
229
- - source: process-order
312
+ - type: stepForward
313
+ source: process-order
230
314
  target: send-confirmation
231
- type: stepForward
232
315
  ```
233
316
 
234
317
  ### Custom LLM Configuration
235
318
 
236
- Provide a custom LLM configuration to the prompt node using the `llmConfig` property.
319
+ Provide a custom LLM configuration to the prompt node using the `llmConfig` property with the following fields:
320
+
321
+ - `name`: (required) name of the LLM to use, must be one of `ChatOpenAI`, `AzureChatOpenAI`, `MindedChatOpenAI`.
322
+ - `properties`: (optional) LLM configuration properties
237
323
 
238
324
  ```yaml
239
- llmConfig:
240
- name: ChatOpenAI # or ChatAnthropic
241
- properties:
242
- model: gpt-5.2
243
- temperature: 0
244
- max_tokens: 500
325
+ nodes:
326
+ - type: promptNode
327
+ name: send-confirmation
328
+ displayName: Send Confirmation
329
+ prompt: 'Send confirmation: Order {memory.orderId}, Total: {memory.orderTotal}'
330
+ llmConfig:
331
+ name: ChatOpenAI
332
+ properties:
333
+ model: gpt-5.2
334
+ temperature: 0
335
+ max_tokens: 500
245
336
  ```
246
337
 
247
338
  ### Internal Processing (No User Message)
@@ -267,17 +358,28 @@ The AI response is added to conversation history and available to subsequent nod
267
358
 
268
359
  ## Tool Nodes
269
360
 
270
- Tool nodes execute functions to perform actions like API calls or database queries.
361
+ Tool nodes execute functions to perform actions like API calls, database queries, or external integrations.
362
+
363
+ ### Tool Nodes Properties
271
364
 
272
- ### Basic Tool Node
365
+ - `type` (NodeType, required): Always `tool`
366
+ - `toolName` (string, required): The name of the registered tool function to execute. Must match a tool defined in your agent's tools configuration.
367
+ - `prompt` (string, optional): The prompt to be sent to the LLM to hint how tool parameters should be inferred.
368
+ - `parameters` (object, optional): The parameters to pass to the tool function. Tool parameters values are inferred by an LLM during runtime. You can override specific input parameters directly to ensure deterministic values. Parameters support placeholder syntax to inject dynamic values from memory, environment variables, other tool outputs, and system values. See [Context](#context) for more details.
273
369
 
274
370
  ```yaml
275
371
  - type: tool
276
372
  name: lookup-customer-order
277
373
  displayName: Lookup Customer Order
278
374
  toolName: lookupOrder
375
+ parameters:
376
+ orderId: '{tools.lookup-customer.orderId}'
279
377
  ```
280
378
 
379
+ ### Tool Implementation
380
+
381
+ Tools are registered in your agent code. See [Tools](tools.md) for implementation details.
382
+
281
383
  ## Junction Nodes
282
384
 
283
385
  Junction nodes provide flow control without processing, useful for organizing routing logic.
@@ -293,9 +395,10 @@ Junction nodes provide flow control without processing, useful for organizing ro
293
395
  ### Routing Example
294
396
 
295
397
  ```yaml
296
- - type: junction
297
- name: route-customer-request
298
- displayName: Route Customer Request
398
+ nodes:
399
+ - type: junction
400
+ name: route-customer-request
401
+ displayName: Route Customer Request
299
402
 
300
403
  edges:
301
404
  - source: route-customer-request
@@ -312,13 +415,19 @@ edges:
312
415
 
313
416
  Jump To nodes provide direct navigation to specific nodes, enabling flow transitions and subflow execution.
314
417
 
418
+ ### Jump To Node Properties
419
+
420
+ - `type` (NodeType, required): Always `jumpToNode`
421
+ - `targetNodeId` (string, required) The `name` of the node to jump to. The target node is resolved across all loaded flows at runtime. If the target node doesn't exist, the flow will error.
422
+
315
423
  ### Basic Jump To Node
316
424
 
317
425
  ```yaml
318
- - type: jumpToNode
319
- name: go-to-order-processing
320
- displayName: Go To Order Processing
321
- targetNodeId: process-customer-order
426
+ nodes:
427
+ - type: jumpToNode
428
+ name: go-to-order-processing
429
+ displayName: Go To Order Processing
430
+ targetNodeId: process-customer-order
322
431
  ```
323
432
 
324
433
  ### Cross-Flow Navigation
@@ -327,22 +436,31 @@ Jump To nodes enable navigation between flows. Target nodes can exist in differe
327
436
 
328
437
  ```yaml
329
438
  # flows/mainFlow.yaml
330
- - type: jumpToNode
331
- name: go-to-refund-flow
332
- displayName: Go To Refund Flow
333
- targetNodeId: refund-processor
439
+ nodes:
440
+ - type: jumpToNode
441
+ name: go-to-refund-flow
442
+ displayName: Go To Refund Flow
443
+ targetNodeId: refund-processor # resolves to node in any loaded flow
334
444
  ```
335
445
 
336
- ## Best Practices
337
-
338
- - **Use descriptive names**: `technical-support-specialist` not `agent-1`
339
- - **Keep prompts focused**: Define specific roles and context, avoid overly broad prompts
340
- - **Always include `displayName`**: Required for prompt nodes, recommended for all nodes
446
+ ```yaml
447
+ # flows/refundFlow.yaml
448
+ nodes:
449
+ - type: tool
450
+ name: refund-processor
451
+ displayName: Refund Processor
452
+ toolName: refundOrder
453
+ ```
341
454
 
342
455
  ## Browser Task Nodes
343
456
 
344
457
  Browser task nodes allow your agent to interact with web pages using AI-powered automation.
345
458
 
459
+ ### Browser Task Properties
460
+
461
+ - `type` (NodeType, required): Always `browserTask`
462
+ - `prompt` (string, required): The prompt to be sent to the LLM to instruct the browser task.
463
+
346
464
  ### Basic Browser Task
347
465
 
348
466
  ```yaml
@@ -364,10 +482,14 @@ Specify which AI model to use (default: `gpt-5.2`):
364
482
  model: 'gpt-5.2'
365
483
  ```
366
484
 
485
+ ## Best Practices
486
+
487
+ - **Use descriptive names**: `technical-support-specialist` not `agent-1`
488
+ - **Keep prompts focused**: Define specific roles and context, avoid overly broad prompts
489
+ - **Always include `displayName`**: Required for prompt nodes, recommended for all nodes
490
+
367
491
  ## Next Steps
368
492
 
369
493
  - [**Edges**](edges.md) - Connect nodes with intelligent routing
370
494
  - [**Tools**](tools.md) - Build powerful tool functions
371
495
  - [**Memory Types**](../platform/memory.md) - Design effective state management
372
-
373
- Nodes are your building blocks - combine them strategically to create powerful AI workflows! 🔧
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@minded-ai/mindedjs",
3
- "version": "3.1.26",
3
+ "version": "3.1.28",
4
4
  "description": "MindedJS is a TypeScript library for building agents.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -269,6 +269,9 @@ function validateFlow(flowPath: string): ValidationResult {
269
269
  if (node.inputSchema !== undefined && !Array.isArray(node.inputSchema)) {
270
270
  errors.push(`${nodeIndex} "${node.name}": tool node "inputSchema" must be an array`);
271
271
  }
272
+ if (node.outputSchema !== undefined && !Array.isArray(node.outputSchema)) {
273
+ errors.push(`${nodeIndex} "${node.name}": tool node "outputSchema" must be an array`);
274
+ }
272
275
  break;
273
276
 
274
277
  case 'junction':