@n8n/ai-workflow-builder 1.7.1 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/dist/agents/planner.agent.d.ts +80 -0
  2. package/dist/agents/planner.agent.js +133 -0
  3. package/dist/agents/planner.agent.js.map +1 -0
  4. package/dist/agents/responder.agent.d.ts +44 -9
  5. package/dist/agents/responder.agent.js +123 -85
  6. package/dist/agents/responder.agent.js.map +1 -1
  7. package/dist/agents/supervisor.agent.d.ts +5 -3
  8. package/dist/agents/supervisor.agent.js +6 -5
  9. package/dist/agents/supervisor.agent.js.map +1 -1
  10. package/dist/ai-workflow-builder-agent.service.d.ts +3 -0
  11. package/dist/ai-workflow-builder-agent.service.js +93 -3
  12. package/dist/ai-workflow-builder-agent.service.js.map +1 -1
  13. package/dist/build.tsbuildinfo +1 -1
  14. package/dist/constants.d.ts +3 -2
  15. package/dist/constants.js +5 -4
  16. package/dist/constants.js.map +1 -1
  17. package/dist/llm-config.d.ts +2 -1
  18. package/dist/llm-config.js +25 -1
  19. package/dist/llm-config.js.map +1 -1
  20. package/dist/multi-agent-workflow-subgraphs.d.ts +90 -6
  21. package/dist/multi-agent-workflow-subgraphs.js +94 -17
  22. package/dist/multi-agent-workflow-subgraphs.js.map +1 -1
  23. package/dist/parent-graph-state.d.ts +6 -0
  24. package/dist/parent-graph-state.js +20 -0
  25. package/dist/parent-graph-state.js.map +1 -1
  26. package/dist/prompts/agents/builder.prompt.d.ts +6 -1
  27. package/dist/prompts/agents/builder.prompt.js +535 -387
  28. package/dist/prompts/agents/builder.prompt.js.map +1 -1
  29. package/dist/prompts/agents/discovery.prompt.d.ts +1 -0
  30. package/dist/prompts/agents/discovery.prompt.js +339 -349
  31. package/dist/prompts/agents/discovery.prompt.js.map +1 -1
  32. package/dist/prompts/agents/index.d.ts +6 -0
  33. package/dist/prompts/agents/index.js +21 -0
  34. package/dist/prompts/agents/index.js.map +1 -0
  35. package/dist/prompts/agents/planner.prompt.d.ts +14 -0
  36. package/dist/prompts/agents/planner.prompt.js +77 -0
  37. package/dist/prompts/agents/planner.prompt.js.map +1 -0
  38. package/dist/prompts/agents/responder.prompt.js +35 -2
  39. package/dist/prompts/agents/responder.prompt.js.map +1 -1
  40. package/dist/prompts/agents/supervisor.prompt.js +3 -4
  41. package/dist/prompts/agents/supervisor.prompt.js.map +1 -1
  42. package/dist/prompts/index.d.ts +4 -4
  43. package/dist/prompts/index.js +11 -4
  44. package/dist/prompts/index.js.map +1 -1
  45. package/dist/session-manager.service.d.ts +18 -0
  46. package/dist/session-manager.service.js +154 -1
  47. package/dist/session-manager.service.js.map +1 -1
  48. package/dist/subgraphs/builder.subgraph.d.ts +31 -2
  49. package/dist/subgraphs/builder.subgraph.js +141 -35
  50. package/dist/subgraphs/builder.subgraph.js.map +1 -1
  51. package/dist/subgraphs/discovery.subgraph.d.ts +87 -27
  52. package/dist/subgraphs/discovery.subgraph.js +204 -24
  53. package/dist/subgraphs/discovery.subgraph.js.map +1 -1
  54. package/dist/tools/add-node.tool.d.ts +36 -0
  55. package/dist/tools/add-node.tool.js +28 -8
  56. package/dist/tools/add-node.tool.js.map +1 -1
  57. package/dist/tools/best-practices/triage.js +5 -5
  58. package/dist/tools/builder-tools.js +6 -1
  59. package/dist/tools/builder-tools.js.map +1 -1
  60. package/dist/tools/connect-nodes.tool.js +16 -3
  61. package/dist/tools/connect-nodes.tool.js.map +1 -1
  62. package/dist/tools/get-execution-logs.tool.d.ts +4 -0
  63. package/dist/tools/get-execution-logs.tool.js +104 -0
  64. package/dist/tools/get-execution-logs.tool.js.map +1 -0
  65. package/dist/tools/get-execution-schema.tool.d.ts +4 -0
  66. package/dist/tools/get-execution-schema.tool.js +81 -0
  67. package/dist/tools/get-execution-schema.tool.js.map +1 -0
  68. package/dist/tools/get-expression-data-mapping.tool.d.ts +4 -0
  69. package/dist/tools/get-expression-data-mapping.tool.js +85 -0
  70. package/dist/tools/get-expression-data-mapping.tool.js.map +1 -0
  71. package/dist/tools/get-node-context.tool.d.ts +13 -0
  72. package/dist/tools/get-node-context.tool.js +227 -0
  73. package/dist/tools/get-node-context.tool.js.map +1 -0
  74. package/dist/tools/get-node-parameter.tool.js +1 -2
  75. package/dist/tools/get-node-parameter.tool.js.map +1 -1
  76. package/dist/tools/get-workflow-overview.tool.d.ts +11 -0
  77. package/dist/tools/get-workflow-overview.tool.js +158 -0
  78. package/dist/tools/get-workflow-overview.tool.js.map +1 -0
  79. package/dist/tools/helpers/state.d.ts +1 -0
  80. package/dist/tools/helpers/state.js +10 -0
  81. package/dist/tools/helpers/state.js.map +1 -1
  82. package/dist/tools/submit-questions.tool.d.ts +71 -0
  83. package/dist/tools/submit-questions.tool.js +74 -0
  84. package/dist/tools/submit-questions.tool.js.map +1 -0
  85. package/dist/tools/update-node-parameters.tool.js +2 -3
  86. package/dist/tools/update-node-parameters.tool.js.map +1 -1
  87. package/dist/tools/utils/mermaid.utils.d.ts +9 -1
  88. package/dist/tools/utils/mermaid.utils.js +9 -5
  89. package/dist/tools/utils/mermaid.utils.js.map +1 -1
  90. package/dist/tools/utils/node-creation.utils.d.ts +6 -2
  91. package/dist/tools/utils/node-creation.utils.js +2 -1
  92. package/dist/tools/utils/node-creation.utils.js.map +1 -1
  93. package/dist/tools/validate-configuration.tool.js +15 -7
  94. package/dist/tools/validate-configuration.tool.js.map +1 -1
  95. package/dist/tools/validate-structure.tool.js +3 -3
  96. package/dist/tools/validate-structure.tool.js.map +1 -1
  97. package/dist/types/coordination.d.ts +9 -9
  98. package/dist/types/coordination.js +14 -4
  99. package/dist/types/coordination.js.map +1 -1
  100. package/dist/types/index.d.ts +1 -0
  101. package/dist/types/index.js.map +1 -1
  102. package/dist/types/planning.d.ts +48 -0
  103. package/dist/types/planning.js +3 -0
  104. package/dist/types/planning.js.map +1 -0
  105. package/dist/types/streaming.d.ts +14 -1
  106. package/dist/types/tools.d.ts +16 -0
  107. package/dist/utils/context-builders.d.ts +8 -0
  108. package/dist/utils/context-builders.js +249 -8
  109. package/dist/utils/context-builders.js.map +1 -1
  110. package/dist/utils/coordination-log.d.ts +2 -4
  111. package/dist/utils/coordination-log.js +0 -8
  112. package/dist/utils/coordination-log.js.map +1 -1
  113. package/dist/utils/node-helpers.d.ts +1 -0
  114. package/dist/utils/node-helpers.js +7 -0
  115. package/dist/utils/node-helpers.js.map +1 -1
  116. package/dist/utils/plan-helpers.d.ts +2 -0
  117. package/dist/utils/plan-helpers.js +26 -0
  118. package/dist/utils/plan-helpers.js.map +1 -0
  119. package/dist/utils/stream-processor.js +151 -8
  120. package/dist/utils/stream-processor.js.map +1 -1
  121. package/dist/utils/subgraph-helpers.js +7 -1
  122. package/dist/utils/subgraph-helpers.js.map +1 -1
  123. package/dist/utils/truncate-json.d.ts +5 -0
  124. package/dist/utils/truncate-json.js +18 -0
  125. package/dist/utils/truncate-json.js.map +1 -0
  126. package/dist/validation/checks/credentials.js +2 -6
  127. package/dist/validation/checks/credentials.js.map +1 -1
  128. package/dist/validation/checks/index.d.ts +1 -0
  129. package/dist/validation/checks/index.js +3 -1
  130. package/dist/validation/checks/index.js.map +1 -1
  131. package/dist/validation/checks/parameters.d.ts +4 -0
  132. package/dist/validation/checks/parameters.js +165 -0
  133. package/dist/validation/checks/parameters.js.map +1 -0
  134. package/dist/validation/programmatic.js +2 -0
  135. package/dist/validation/programmatic.js.map +1 -1
  136. package/dist/validation/types.d.ts +3 -1
  137. package/dist/validation/types.js +2 -0
  138. package/dist/validation/types.js.map +1 -1
  139. package/dist/workflow-builder-agent.d.ts +7 -1
  140. package/dist/workflow-builder-agent.js +43 -11
  141. package/dist/workflow-builder-agent.js.map +1 -1
  142. package/package.json +6 -5
  143. package/dist/prompts/agents/configurator.prompt.d.ts +0 -3
  144. package/dist/prompts/agents/configurator.prompt.js +0 -260
  145. package/dist/prompts/agents/configurator.prompt.js.map +0 -1
  146. package/dist/subgraphs/configurator.subgraph.d.ts +0 -158
  147. package/dist/subgraphs/configurator.subgraph.js +0 -234
  148. package/dist/subgraphs/configurator.subgraph.js.map +0 -1
@@ -2,6 +2,7 @@ import type { BaseChatModel } from '@langchain/core/language_models/chat_models'
2
2
  import type { BaseMessage } from '@langchain/core/messages';
3
3
  import type { Logger } from '@n8n/backend-common';
4
4
  import type { INodeTypeDescription } from 'n8n-workflow';
5
+ import type { ResourceLocatorCallback } from '../types/callbacks';
5
6
  import type { BuilderFeatureFlags } from '../workflow-builder-agent';
6
7
  import { BaseSubgraph } from './subgraph-interface';
7
8
  import type { ParentGraphState } from '../parent-graph-state';
@@ -9,6 +10,7 @@ import type { CoordinationLogEntry } from '../types/coordination';
9
10
  import type { DiscoveryContext } from '../types/discovery-types';
10
11
  import type { WorkflowMetadata } from '../types/tools';
11
12
  import type { SimpleWorkflow, WorkflowOperation } from '../types/workflow';
13
+ import { type RLCPrefetchResult } from '../utils/rlc-prefetch';
12
14
  export declare const BuilderSubgraphState: import("@langchain/langgraph").AnnotationRoot<{
13
15
  workflowJSON: import("@langchain/langgraph").BinaryOperatorAggregate<SimpleWorkflow, SimpleWorkflow>;
14
16
  userRequest: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
@@ -24,20 +26,31 @@ export declare const BuilderSubgraphState: import("@langchain/langgraph").Annota
24
26
  expressionValues?: Record<string, import("../workflow-builder-agent").ExpressionValue[]>;
25
27
  } | undefined>;
26
28
  discoveryContext: import("@langchain/langgraph").BinaryOperatorAggregate<DiscoveryContext | null, DiscoveryContext | null>;
29
+ instanceUrl: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
27
30
  messages: import("@langchain/langgraph").BinaryOperatorAggregate<BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[], BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[]>;
28
31
  workflowOperations: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowOperation[] | null, WorkflowOperation[] | null>;
29
32
  cachedTemplates: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowMetadata[], WorkflowMetadata[]>;
33
+ prefetchedRLCOptions: import("@langchain/langgraph").BinaryOperatorAggregate<RLCPrefetchResult[], RLCPrefetchResult[]>;
30
34
  }>;
31
35
  export interface BuilderSubgraphConfig {
32
36
  parsedNodeTypes: INodeTypeDescription[];
33
37
  llm: BaseChatModel;
38
+ llmParameterUpdater?: BaseChatModel;
34
39
  logger?: Logger;
40
+ instanceUrl?: string;
35
41
  featureFlags?: BuilderFeatureFlags;
42
+ resourceLocatorCallback?: ResourceLocatorCallback;
36
43
  }
37
44
  export declare class BuilderSubgraph extends BaseSubgraph<BuilderSubgraphConfig, typeof BuilderSubgraphState.State, typeof ParentGraphState.State> {
38
45
  name: string;
39
46
  description: string;
40
47
  private config?;
48
+ private agent;
49
+ private toolMap;
50
+ private instanceUrl;
51
+ private nodeTypes;
52
+ private resourceLocatorCallback?;
53
+ private logger?;
41
54
  create(config: BuilderSubgraphConfig): import("@langchain/langgraph").CompiledStateGraph<{
42
55
  workflowJSON: SimpleWorkflow;
43
56
  userRequest: string;
@@ -48,9 +61,11 @@ export declare class BuilderSubgraph extends BaseSubgraph<BuilderSubgraphConfig,
48
61
  expressionValues?: Record<string, import("../workflow-builder-agent").ExpressionValue[]>;
49
62
  } | undefined;
50
63
  discoveryContext: DiscoveryContext | null;
64
+ instanceUrl: string;
51
65
  messages: BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[];
52
66
  workflowOperations: WorkflowOperation[] | null;
53
67
  cachedTemplates: WorkflowMetadata[];
68
+ prefetchedRLCOptions: RLCPrefetchResult[];
54
69
  }, {
55
70
  workflowJSON?: SimpleWorkflow | undefined;
56
71
  userRequest?: string | undefined;
@@ -61,10 +76,12 @@ export declare class BuilderSubgraph extends BaseSubgraph<BuilderSubgraphConfig,
61
76
  expressionValues?: Record<string, import("../workflow-builder-agent").ExpressionValue[]>;
62
77
  } | undefined;
63
78
  discoveryContext?: DiscoveryContext | null | undefined;
79
+ instanceUrl?: string | undefined;
64
80
  messages?: BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[] | undefined;
65
81
  workflowOperations?: WorkflowOperation[] | null | undefined;
66
82
  cachedTemplates?: WorkflowMetadata[] | undefined;
67
- }, "tools" | "process_operations" | "__start__" | "agent", {
83
+ prefetchedRLCOptions?: RLCPrefetchResult[] | undefined;
84
+ }, "tools" | "process_operations" | "__start__" | "prefetch_rlc" | "agent", {
68
85
  workflowJSON: import("@langchain/langgraph").BinaryOperatorAggregate<SimpleWorkflow, SimpleWorkflow>;
69
86
  userRequest: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
70
87
  workflowContext: import("@langchain/langgraph").BinaryOperatorAggregate<{
@@ -79,9 +96,11 @@ export declare class BuilderSubgraph extends BaseSubgraph<BuilderSubgraphConfig,
79
96
  expressionValues?: Record<string, import("../workflow-builder-agent").ExpressionValue[]>;
80
97
  } | undefined>;
81
98
  discoveryContext: import("@langchain/langgraph").BinaryOperatorAggregate<DiscoveryContext | null, DiscoveryContext | null>;
99
+ instanceUrl: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
82
100
  messages: import("@langchain/langgraph").BinaryOperatorAggregate<BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[], BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[]>;
83
101
  workflowOperations: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowOperation[] | null, WorkflowOperation[] | null>;
84
102
  cachedTemplates: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowMetadata[], WorkflowMetadata[]>;
103
+ prefetchedRLCOptions: import("@langchain/langgraph").BinaryOperatorAggregate<RLCPrefetchResult[], RLCPrefetchResult[]>;
85
104
  }, {
86
105
  workflowJSON: import("@langchain/langgraph").BinaryOperatorAggregate<SimpleWorkflow, SimpleWorkflow>;
87
106
  userRequest: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
@@ -97,12 +116,17 @@ export declare class BuilderSubgraph extends BaseSubgraph<BuilderSubgraphConfig,
97
116
  expressionValues?: Record<string, import("../workflow-builder-agent").ExpressionValue[]>;
98
117
  } | undefined>;
99
118
  discoveryContext: import("@langchain/langgraph").BinaryOperatorAggregate<DiscoveryContext | null, DiscoveryContext | null>;
119
+ instanceUrl: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
100
120
  messages: import("@langchain/langgraph").BinaryOperatorAggregate<BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[], BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[]>;
101
121
  workflowOperations: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowOperation[] | null, WorkflowOperation[] | null>;
102
122
  cachedTemplates: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowMetadata[], WorkflowMetadata[]>;
123
+ prefetchedRLCOptions: import("@langchain/langgraph").BinaryOperatorAggregate<RLCPrefetchResult[], RLCPrefetchResult[]>;
103
124
  }, import("@langchain/langgraph").StateDefinition, {
125
+ prefetch_rlc: {
126
+ prefetchedRLCOptions: RLCPrefetchResult[];
127
+ };
104
128
  agent: {
105
- messages: import("@langchain/core/messages").AIMessageChunk<import("@langchain/core/messages").MessageStructure>[];
129
+ messages: BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[];
106
130
  };
107
131
  tools: {
108
132
  messages?: BaseMessage[];
@@ -122,6 +146,7 @@ export declare class BuilderSubgraph extends BaseSubgraph<BuilderSubgraphConfig,
122
146
  expressionValues?: Record<string, import("../workflow-builder-agent").ExpressionValue[]>;
123
147
  } | undefined;
124
148
  discoveryContext: DiscoveryContext | null;
149
+ instanceUrl: string;
125
150
  messages: import("@langchain/core/messages").HumanMessage<import("@langchain/core/messages").MessageStructure>[];
126
151
  cachedTemplates: WorkflowMetadata[];
127
152
  };
@@ -130,5 +155,9 @@ export declare class BuilderSubgraph extends BaseSubgraph<BuilderSubgraphConfig,
130
155
  workflowOperations: WorkflowOperation[];
131
156
  coordinationLog: CoordinationLogEntry[];
132
157
  cachedTemplates: WorkflowMetadata[];
158
+ planOutput: null;
159
+ planDecision: null;
160
+ planFeedback: null;
161
+ planPrevious: null;
133
162
  };
134
163
  }
@@ -4,21 +4,34 @@ exports.BuilderSubgraph = exports.BuilderSubgraphState = void 0;
4
4
  const prompts_1 = require("@langchain/core/prompts");
5
5
  const langgraph_1 = require("@langchain/langgraph");
6
6
  const errors_1 = require("../errors");
7
- const builder_prompt_1 = require("../prompts/agents/builder.prompt");
7
+ const prompts_2 = require("../prompts");
8
8
  const auto_fix_1 = require("../validation/auto-fix");
9
9
  const checks_1 = require("../validation/checks");
10
10
  const subgraph_interface_1 = require("./subgraph-interface");
11
11
  const add_node_tool_1 = require("../tools/add-node.tool");
12
12
  const connect_nodes_tool_1 = require("../tools/connect-nodes.tool");
13
+ const get_execution_logs_tool_1 = require("../tools/get-execution-logs.tool");
14
+ const get_execution_schema_tool_1 = require("../tools/get-execution-schema.tool");
15
+ const get_expression_data_mapping_tool_1 = require("../tools/get-expression-data-mapping.tool");
16
+ const get_node_context_tool_1 = require("../tools/get-node-context.tool");
13
17
  const get_node_examples_tool_1 = require("../tools/get-node-examples.tool");
18
+ const get_node_parameter_tool_1 = require("../tools/get-node-parameter.tool");
19
+ const get_resource_locator_options_tool_1 = require("../tools/get-resource-locator-options.tool");
20
+ const get_workflow_overview_tool_1 = require("../tools/get-workflow-overview.tool");
14
21
  const remove_connection_tool_1 = require("../tools/remove-connection.tool");
15
22
  const remove_node_tool_1 = require("../tools/remove-node.tool");
16
23
  const rename_node_tool_1 = require("../tools/rename-node.tool");
24
+ const update_node_parameters_tool_1 = require("../tools/update-node-parameters.tool");
25
+ const mermaid_utils_1 = require("../tools/utils/mermaid.utils");
26
+ const validate_configuration_tool_1 = require("../tools/validate-configuration.tool");
17
27
  const validate_structure_tool_1 = require("../tools/validate-structure.tool");
18
28
  const coordination_1 = require("../types/coordination");
29
+ const langchain_1 = require("../types/langchain");
19
30
  const cache_control_1 = require("../utils/cache-control");
20
31
  const context_builders_1 = require("../utils/context-builders");
21
32
  const operations_processor_1 = require("../utils/operations-processor");
33
+ const plan_helpers_1 = require("../utils/plan-helpers");
34
+ const rlc_prefetch_1 = require("../utils/rlc-prefetch");
22
35
  const state_reducers_1 = require("../utils/state-reducers");
23
36
  const subgraph_helpers_1 = require("../utils/subgraph-helpers");
24
37
  exports.BuilderSubgraphState = langgraph_1.Annotation.Root({
@@ -37,6 +50,10 @@ exports.BuilderSubgraphState = langgraph_1.Annotation.Root({
37
50
  reducer: (x, y) => y ?? x,
38
51
  default: () => null,
39
52
  }),
53
+ instanceUrl: (0, langgraph_1.Annotation)({
54
+ reducer: (x, y) => y ?? x,
55
+ default: () => '',
56
+ }),
40
57
  messages: (0, langgraph_1.Annotation)({
41
58
  reducer: (x, y) => x.concat(y),
42
59
  default: () => [],
@@ -55,14 +72,29 @@ exports.BuilderSubgraphState = langgraph_1.Annotation.Root({
55
72
  reducer: state_reducers_1.cachedTemplatesReducer,
56
73
  default: () => [],
57
74
  }),
75
+ prefetchedRLCOptions: (0, langgraph_1.Annotation)({
76
+ reducer: (x, y) => y ?? x,
77
+ default: () => [],
78
+ }),
58
79
  });
59
80
  class BuilderSubgraph extends subgraph_interface_1.BaseSubgraph {
60
81
  name = 'builder_subgraph';
61
- description = 'Constructs workflow structure: creating nodes and connections';
82
+ description = 'Constructs workflow structure and configures node parameters';
62
83
  config;
84
+ agent;
85
+ toolMap;
86
+ instanceUrl = '';
87
+ nodeTypes = [];
88
+ resourceLocatorCallback;
89
+ logger;
63
90
  create(config) {
64
91
  this.config = config;
92
+ this.instanceUrl = config.instanceUrl ?? '';
93
+ this.nodeTypes = config.parsedNodeTypes;
94
+ this.resourceLocatorCallback = config.resourceLocatorCallback;
95
+ this.logger = config.logger;
65
96
  const includeExamples = config.featureFlags?.templateExamples === true;
97
+ const parameterUpdaterLLM = config.llmParameterUpdater ?? config.llm;
66
98
  const baseTools = [
67
99
  (0, add_node_tool_1.createAddNodeTool)(config.parsedNodeTypes),
68
100
  (0, connect_nodes_tool_1.createConnectNodesTool)(config.parsedNodeTypes, config.logger),
@@ -70,18 +102,39 @@ class BuilderSubgraph extends subgraph_interface_1.BaseSubgraph {
70
102
  (0, remove_connection_tool_1.createRemoveConnectionTool)(config.logger),
71
103
  (0, rename_node_tool_1.createRenameNodeTool)(config.logger),
72
104
  (0, validate_structure_tool_1.createValidateStructureTool)(config.parsedNodeTypes),
105
+ (0, update_node_parameters_tool_1.createUpdateNodeParametersTool)(config.parsedNodeTypes, parameterUpdaterLLM, config.logger, config.instanceUrl),
106
+ (0, get_node_parameter_tool_1.createGetNodeParameterTool)(),
107
+ (0, validate_configuration_tool_1.createValidateConfigurationTool)(config.parsedNodeTypes),
108
+ (0, get_execution_schema_tool_1.createGetExecutionSchemaTool)(config.logger),
109
+ (0, get_execution_logs_tool_1.createGetExecutionLogsTool)(config.logger),
110
+ (0, get_expression_data_mapping_tool_1.createGetExpressionDataMappingTool)(config.logger),
111
+ (0, get_workflow_overview_tool_1.createGetWorkflowOverviewTool)(config.logger),
112
+ (0, get_node_context_tool_1.createGetNodeContextTool)(config.logger),
113
+ ...(config.resourceLocatorCallback
114
+ ? [
115
+ (0, get_resource_locator_options_tool_1.createGetResourceLocatorOptionsTool)(config.parsedNodeTypes, config.resourceLocatorCallback, config.logger),
116
+ ]
117
+ : []),
73
118
  ];
74
119
  const tools = includeExamples
75
- ? [...baseTools, (0, get_node_examples_tool_1.createGetNodeConnectionExamplesTool)(config.logger)]
120
+ ? [
121
+ ...baseTools,
122
+ (0, get_node_examples_tool_1.createGetNodeConnectionExamplesTool)(config.logger),
123
+ (0, get_node_examples_tool_1.createGetNodeConfigurationExamplesTool)(config.logger),
124
+ ]
76
125
  : baseTools;
77
- const toolMap = new Map(tools.map((bt) => [bt.tool.name, bt.tool]));
78
- const systemPrompt = prompts_1.ChatPromptTemplate.fromMessages([
126
+ this.toolMap = new Map(tools.map((bt) => [bt.tool.name, bt.tool]));
127
+ const systemPromptTemplate = prompts_1.ChatPromptTemplate.fromMessages([
79
128
  [
80
129
  'system',
81
130
  [
82
131
  {
83
132
  type: 'text',
84
- text: (0, builder_prompt_1.buildBuilderPrompt)(),
133
+ text: (0, prompts_2.buildBuilderPrompt)({ includeExamples }),
134
+ },
135
+ {
136
+ type: 'text',
137
+ text: prompts_2.INSTANCE_URL_PROMPT,
85
138
  cache_control: { type: 'ephemeral' },
86
139
  },
87
140
  ],
@@ -93,20 +146,52 @@ class BuilderSubgraph extends subgraph_interface_1.BaseSubgraph {
93
146
  llmModel: config.llm._llmType(),
94
147
  });
95
148
  }
96
- const agent = systemPrompt.pipe(config.llm.bindTools(tools.map((bt) => bt.tool)));
149
+ this.agent = systemPromptTemplate.pipe(config.llm.bindTools(tools.map((bt) => bt.tool)));
150
+ const prefetchRLCNode = async (state) => {
151
+ if (!this.resourceLocatorCallback) {
152
+ return { prefetchedRLCOptions: [] };
153
+ }
154
+ const parametersToFetch = (0, rlc_prefetch_1.detectRLCParametersForPrefetch)(state.workflowJSON.nodes, this.nodeTypes);
155
+ if (parametersToFetch.length === 0) {
156
+ return { prefetchedRLCOptions: [] };
157
+ }
158
+ this.logger?.debug('Pre-fetching RLC options', {
159
+ parameterCount: parametersToFetch.length,
160
+ parameters: parametersToFetch.map((p) => `${p.nodeName}.${p.parameterPath}`),
161
+ });
162
+ const results = await (0, rlc_prefetch_1.prefetchRLCOptions)(parametersToFetch, state.workflowJSON.nodes, this.resourceLocatorCallback, this.logger);
163
+ this.logger?.debug('RLC prefetch completed', {
164
+ successCount: results.filter((r) => !r.error).length,
165
+ errorCount: results.filter((r) => r.error).length,
166
+ });
167
+ const formattedOptions = (0, rlc_prefetch_1.formatPrefetchedOptionsForLLM)(results);
168
+ if (formattedOptions && state.messages.length > 0) {
169
+ const firstMessage = state.messages[0];
170
+ if (typeof firstMessage.content === 'string') {
171
+ firstMessage.content = `${firstMessage.content}\n\n${formattedOptions}`;
172
+ }
173
+ }
174
+ return { prefetchedRLCOptions: results };
175
+ };
97
176
  const callAgent = async (state) => {
98
177
  (0, cache_control_1.applySubgraphCacheMarkers)(state.messages);
99
- const response = await agent.invoke({
178
+ const response = await this.agent.invoke({
100
179
  messages: state.messages,
180
+ instanceUrl: state.instanceUrl ?? '',
101
181
  });
182
+ if (!(0, langchain_1.isBaseMessage)(response)) {
183
+ throw new errors_1.LLMServiceError('Builder agent did not return a valid message');
184
+ }
102
185
  return { messages: [response] };
103
186
  };
104
187
  const shouldContinue = (0, subgraph_helpers_1.createStandardShouldContinue)();
105
188
  const subgraph = new langgraph_1.StateGraph(exports.BuilderSubgraphState)
189
+ .addNode('prefetch_rlc', prefetchRLCNode)
106
190
  .addNode('agent', callAgent)
107
- .addNode('tools', async (state) => await (0, subgraph_helpers_1.executeSubgraphTools)(state, toolMap))
191
+ .addNode('tools', async (state) => await (0, subgraph_helpers_1.executeSubgraphTools)(state, this.toolMap))
108
192
  .addNode('process_operations', operations_processor_1.processOperations)
109
- .addEdge('__start__', 'agent')
193
+ .addEdge('__start__', 'prefetch_rlc')
194
+ .addEdge('prefetch_rlc', 'agent')
110
195
  .addConditionalEdges('agent', shouldContinue)
111
196
  .addEdge('tools', 'process_operations')
112
197
  .addEdge('process_operations', 'agent');
@@ -115,23 +200,43 @@ class BuilderSubgraph extends subgraph_interface_1.BaseSubgraph {
115
200
  transformInput(parentState) {
116
201
  const userRequest = (0, subgraph_helpers_1.extractUserRequest)(parentState.messages);
117
202
  const contextParts = [];
118
- contextParts.push('=== USER REQUEST ===');
119
- contextParts.push(userRequest);
120
- if (parentState.discoveryContext) {
121
- contextParts.push('=== DISCOVERY CONTEXT ===');
122
- contextParts.push((0, context_builders_1.buildDiscoveryContextBlock)(parentState.discoveryContext, true));
123
- }
124
- contextParts.push('=== CURRENT WORKFLOW ===');
125
- if (parentState.workflowJSON.nodes.length > 0) {
126
- contextParts.push((0, context_builders_1.buildWorkflowJsonBlock)(parentState.workflowJSON));
203
+ if (parentState.planOutput) {
204
+ contextParts.push('=== APPROVED PLAN (FOLLOW THIS) ===');
205
+ contextParts.push((0, plan_helpers_1.formatPlanAsText)(parentState.planOutput));
206
+ if (parentState.workflowJSON?.nodes?.length > 0) {
207
+ const overview = (0, mermaid_utils_1.mermaidStringify)({ workflow: parentState.workflowJSON }, { includeNodeType: true, includeNodeParameters: true, includeNodeName: true });
208
+ contextParts.push('=== EXISTING WORKFLOW (do NOT recreate these nodes) ===', overview, 'Only make the changes described in the plan.');
209
+ }
127
210
  }
128
211
  else {
129
- contextParts.push('Empty workflow - ready to build');
212
+ const conversationContext = (0, context_builders_1.buildConversationContext)(parentState.messages, parentState.coordinationLog, parentState.previousSummary);
213
+ if (conversationContext) {
214
+ contextParts.push('=== CONVERSATION CONTEXT ===');
215
+ contextParts.push(conversationContext);
216
+ }
217
+ if (userRequest) {
218
+ contextParts.push('=== USER REQUEST ===');
219
+ contextParts.push(userRequest);
220
+ }
221
+ }
222
+ if (parentState.discoveryContext) {
223
+ const includeBestPractices = this.config?.featureFlags?.templateExamples === true;
224
+ contextParts.push('=== DISCOVERY CONTEXT ===');
225
+ contextParts.push((0, context_builders_1.buildDiscoveryContextBlock)(parentState.discoveryContext, includeBestPractices));
130
226
  }
131
- const schemaBlock = (0, context_builders_1.buildExecutionSchemaBlock)(parentState.workflowContext);
132
- if (schemaBlock) {
133
- contextParts.push('=== AVAILABLE DATA SCHEMA ===');
134
- contextParts.push(schemaBlock);
227
+ const builderErrorEntry = parentState.coordinationLog?.find((entry) => {
228
+ if (entry.status !== 'error')
229
+ return false;
230
+ if (entry.phase !== 'builder')
231
+ return false;
232
+ return (entry.metadata.phase === 'error' &&
233
+ 'partialBuilderData' in entry.metadata &&
234
+ entry.metadata.partialBuilderData);
235
+ });
236
+ if (builderErrorEntry?.metadata.phase === 'error' &&
237
+ builderErrorEntry.metadata.partialBuilderData) {
238
+ const { nodeCount, nodeNames } = builderErrorEntry.metadata.partialBuilderData;
239
+ contextParts.push((0, prompts_2.buildRecoveryModeContext)(nodeCount, nodeNames));
135
240
  }
136
241
  const contextMessage = (0, context_builders_1.createContextMessage)(contextParts);
137
242
  return {
@@ -139,6 +244,7 @@ class BuilderSubgraph extends subgraph_interface_1.BaseSubgraph {
139
244
  workflowJSON: parentState.workflowJSON,
140
245
  workflowContext: parentState.workflowContext,
141
246
  discoveryContext: parentState.discoveryContext,
247
+ instanceUrl: this.instanceUrl,
142
248
  messages: [contextMessage],
143
249
  cachedTemplates: parentState.cachedTemplates,
144
250
  };
@@ -162,23 +268,19 @@ class BuilderSubgraph extends subgraph_interface_1.BaseSubgraph {
162
268
  const nodes = workflowJSON.nodes;
163
269
  const connections = workflowJSON.connections;
164
270
  const connectionCount = Object.values(connections).flat().length;
165
- const builderSummary = subgraphOutput.messages
166
- .slice()
167
- .reverse()
168
- .find((m) => m.content &&
169
- (!('tool_calls' in m) ||
170
- !m.tool_calls ||
171
- (m.tool_calls && Array.isArray(m.tool_calls) && m.tool_calls.length === 0)));
172
- const summaryText = typeof builderSummary?.content === 'string' ? builderSummary.content : undefined;
271
+ const lastMessage = subgraphOutput.messages[subgraphOutput.messages.length - 1];
272
+ const summaryOrSetupInstructions = typeof lastMessage?.content === 'string'
273
+ ? lastMessage.content
274
+ : 'Build and configuration complete';
173
275
  const summary = autoFixSummary
174
- ? `Created ${nodes.length} nodes with ${connectionCount} connections. ${autoFixSummary}`
175
- : `Created ${nodes.length} nodes with ${connectionCount} connections`;
276
+ ? `Created and configured ${nodes.length} nodes with ${connectionCount} connections. ${autoFixSummary}`
277
+ : `Created and configured ${nodes.length} nodes with ${connectionCount} connections`;
176
278
  const logEntry = {
177
279
  phase: 'builder',
178
280
  status: 'completed',
179
281
  timestamp: Date.now(),
180
282
  summary,
181
- output: summaryText,
283
+ output: summaryOrSetupInstructions,
182
284
  metadata: (0, coordination_1.createBuilderMetadata)({
183
285
  nodesCreated: nodes.length,
184
286
  connectionsCreated: connectionCount,
@@ -190,6 +292,10 @@ class BuilderSubgraph extends subgraph_interface_1.BaseSubgraph {
190
292
  workflowOperations: subgraphOutput.workflowOperations ?? [],
191
293
  coordinationLog: [logEntry],
192
294
  cachedTemplates: subgraphOutput.cachedTemplates,
295
+ planOutput: null,
296
+ planDecision: null,
297
+ planFeedback: null,
298
+ planPrevious: null,
193
299
  };
194
300
  }
195
301
  }
@@ -1 +1 @@
1
- {"version":3,"file":"builder.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/builder.subgraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/builder.subgraph.ts"],"names":[],"mappings":"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"}