@n8n/instance-ai 1.19.3 → 1.20.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.
Files changed (68) hide show
  1. package/dist/agent/instance-agent.js +1 -0
  2. package/dist/agent/instance-agent.js.map +1 -1
  3. package/dist/agent/system-prompt.d.ts +1 -0
  4. package/dist/agent/system-prompt.js +18 -4
  5. package/dist/agent/system-prompt.js.map +1 -1
  6. package/dist/build.tsbuildinfo +1 -1
  7. package/dist/index.d.ts +5 -2
  8. package/dist/index.js +8 -2
  9. package/dist/index.js.map +1 -1
  10. package/dist/knowledge-base/materialize-knowledge-base.js +12 -1
  11. package/dist/knowledge-base/materialize-knowledge-base.js.map +1 -1
  12. package/dist/skills/runtime-skills.js +1 -1
  13. package/dist/skills/runtime-skills.js.map +1 -1
  14. package/dist/stream/map-chunk.js +22 -0
  15. package/dist/stream/map-chunk.js.map +1 -1
  16. package/dist/stream/output-redaction.js +30 -0
  17. package/dist/stream/output-redaction.js.map +1 -1
  18. package/dist/tools/credentials.tool.d.ts +212 -0
  19. package/dist/tools/credentials.tool.js +155 -21
  20. package/dist/tools/credentials.tool.js.map +1 -1
  21. package/dist/tools/index.js +4 -0
  22. package/dist/tools/index.js.map +1 -1
  23. package/dist/tools/mcp-servers.tool.d.ts +2 -0
  24. package/dist/tools/mcp-servers.tool.js +56 -0
  25. package/dist/tools/mcp-servers.tool.js.map +1 -0
  26. package/dist/tools/orchestration/agent-target-binding.d.ts +3 -0
  27. package/dist/tools/orchestration/agent-target-binding.js +64 -0
  28. package/dist/tools/orchestration/agent-target-binding.js.map +1 -1
  29. package/dist/tools/orchestration/build-agent.tool.js +57 -30
  30. package/dist/tools/orchestration/build-agent.tool.js.map +1 -1
  31. package/dist/tools/tool-ids.d.ts +2 -0
  32. package/dist/tools/tool-ids.js +5 -1
  33. package/dist/tools/tool-ids.js.map +1 -1
  34. package/dist/tools/workflows/build-workflow.tool.js +41 -12
  35. package/dist/tools/workflows/build-workflow.tool.js.map +1 -1
  36. package/dist/tools/workflows/credential-utils.d.ts +3 -0
  37. package/dist/tools/workflows/credential-utils.js +31 -1
  38. package/dist/tools/workflows/credential-utils.js.map +1 -1
  39. package/dist/tools/workflows/resolve-credentials.js +54 -1
  40. package/dist/tools/workflows/resolve-credentials.js.map +1 -1
  41. package/dist/tools/workflows/setup-workflow.schema.d.ts +151 -0
  42. package/dist/tools/workflows/setup-workflow.service.d.ts +6 -0
  43. package/dist/tools/workflows/setup-workflow.service.js +77 -13
  44. package/dist/tools/workflows/setup-workflow.service.js.map +1 -1
  45. package/dist/tools/workflows/workflow-file-bindings.d.ts +3 -1
  46. package/dist/tools/workflows/workflow-file-bindings.js +5 -2
  47. package/dist/tools/workflows/workflow-file-bindings.js.map +1 -1
  48. package/dist/tools/workflows.tool.js +44 -0
  49. package/dist/tools/workflows.tool.js.map +1 -1
  50. package/dist/tracing/agent-snapshot-event.d.ts +17 -0
  51. package/dist/tracing/agent-snapshot-event.js +56 -0
  52. package/dist/tracing/agent-snapshot-event.js.map +1 -0
  53. package/dist/types.d.ts +30 -1
  54. package/dist/types.js.map +1 -1
  55. package/dist/workspace/workspace-paths.d.ts +4 -2
  56. package/dist/workspace/workspace-paths.js +15 -2
  57. package/dist/workspace/workspace-paths.js.map +1 -1
  58. package/knowledge-base/reference/anthropic-output-shape.md +72 -0
  59. package/knowledge-base/reference/open-ai-output-shape.md +3 -0
  60. package/package.json +13 -13
  61. package/skills/agent-builder/SKILL.md +94 -0
  62. package/skills/credential-recipe-research/SKILL.md +88 -0
  63. package/skills/debugging-executions/SKILL.md +2 -1
  64. package/skills/intent-recognition/SKILL.md +23 -30
  65. package/skills/planning/SKILL.md +7 -5
  66. package/skills/post-build-flow/SKILL.md +111 -28
  67. package/skills/workflow-builder/SKILL.md +68 -23
  68. package/skills/workflow-builder/references/error-workflows.md +2 -2
@@ -8,6 +8,7 @@ exports.resolveSupportedSiblingCredentialType = resolveSupportedSiblingCredentia
8
8
  exports.stripStaleCredentialsFromNode = stripStaleCredentialsFromNode;
9
9
  exports.stripStaleCredentialsFromWorkflow = stripStaleCredentialsFromWorkflow;
10
10
  exports.buildSetupRequests = buildSetupRequests;
11
+ exports.applyCredentialHints = applyCredentialHints;
11
12
  exports.sortByExecutionOrder = sortByExecutionOrder;
12
13
  exports.applyNodeCredentials = applyNodeCredentials;
13
14
  exports.applyNodeParameters = applyNodeParameters;
@@ -15,6 +16,7 @@ exports.applyNodeChanges = applyNodeChanges;
15
16
  exports.buildCompletedReport = buildCompletedReport;
16
17
  exports.buildSubnodeToRootNodeMap = buildSubnodeToRootNodeMap;
17
18
  exports.analyzeWorkflow = analyzeWorkflow;
19
+ const api_types_1 = require("@n8n/api-types");
18
20
  const placeholder_1 = require("@n8n/utils/placeholder");
19
21
  const workflow_sdk_1 = require("@n8n/workflow-sdk");
20
22
  const n8n_workflow_1 = require("n8n-workflow");
@@ -23,7 +25,7 @@ const credential_utils_1 = require("./credential-utils");
23
25
  const detect_wrong_kind_locator_1 = require("./detect-wrong-kind-locator");
24
26
  const workflow_file_bindings_1 = require("./workflow-file-bindings");
25
27
  function createCredentialCache() {
26
- return { lists: new Map(), testability: new Map(), tests: new Map() };
28
+ return { lists: new Map(), testability: new Map(), tests: new Map(), templatedHosts: new Map() };
27
29
  }
28
30
  function listCacheKey(workflowId, credentialType) {
29
31
  return `${workflowId ?? ''}|${credentialType}`;
@@ -179,6 +181,27 @@ function buildEditableParameters(parameterIssues, nodeDesc) {
179
181
  }
180
182
  return editableParameters;
181
183
  }
184
+ async function computeUnavailableLocatorIssues(context, node, parameters, typeVersion, credentialType, credential) {
185
+ if (!context.nodeService.findUnavailableLocatorValues)
186
+ return {};
187
+ const unavailable = await context.nodeService
188
+ .findUnavailableLocatorValues({
189
+ nodeType: node.type,
190
+ version: typeVersion,
191
+ credentialType,
192
+ credentialId: credential.id,
193
+ parameters,
194
+ })
195
+ .catch(() => []);
196
+ const issues = {};
197
+ for (const entry of unavailable) {
198
+ issues[entry.name] = [
199
+ `"${entry.currentValue}" isn't available with the connected credential "${credential.name}". ` +
200
+ 'Pick a value the credential offers instead.',
201
+ ];
202
+ }
203
+ return issues;
204
+ }
182
205
  async function resolveCredentialTypes(context, node, parameters, typeVersion, nodeDesc) {
183
206
  let credentialTypes = [];
184
207
  if (context.nodeService.getNodeCredentialTypes) {
@@ -209,6 +232,27 @@ async function resolveCredentialTypes(context, node, parameters, typeVersion, no
209
232
  }
210
233
  return credentialTypes;
211
234
  }
235
+ async function filterTemplatedCredentialsByServiceHost(context, node, candidates, cache) {
236
+ if (candidates.length === 0)
237
+ return candidates;
238
+ const parameters = node.parameters;
239
+ const nodeHost = (0, credential_utils_1.extractServiceHost)(parameters?.url);
240
+ const getHosts = context.credentialService.getTemplatedCredentialHosts?.bind(context.credentialService);
241
+ if (!nodeHost || !getHosts)
242
+ return [];
243
+ const ids = candidates.map((c) => c.id);
244
+ const cacheKey = [...ids].sort().join(',');
245
+ let hostsPromise = cache?.templatedHosts.get(cacheKey);
246
+ if (!hostsPromise) {
247
+ hostsPromise = getHosts(ids).catch(() => ({}));
248
+ cache?.templatedHosts.set(cacheKey, hostsPromise);
249
+ }
250
+ const hosts = await hostsPromise;
251
+ return candidates.filter((candidate) => {
252
+ const host = hosts[candidate.id];
253
+ return typeof host === 'string' && host !== '' && (0, credential_utils_1.serviceHostsMatch)(host, nodeHost);
254
+ });
255
+ }
212
256
  async function resolveCredentialState(context, node, credentialType, cache, workflowId) {
213
257
  const cacheKey = listCacheKey(workflowId, credentialType);
214
258
  let listPromise = cache?.lists.get(cacheKey);
@@ -219,7 +263,10 @@ async function resolveCredentialState(context, node, credentialType, cache, work
219
263
  cache?.lists.set(cacheKey, listPromise);
220
264
  }
221
265
  const sortedCreds = await listPromise;
222
- const existingCredentials = sortedCreds.map((c) => ({ id: c.id, name: c.name }));
266
+ let existingCredentials = sortedCreds.map((c) => ({ id: c.id, name: c.name }));
267
+ if (credentialType === api_types_1.TEMPLATED_CUSTOM_AUTH_CREDENTIAL_TYPE) {
268
+ existingCredentials = await filterTemplatedCredentialsByServiceHost(context, node, existingCredentials, cache);
269
+ }
223
270
  const existingOnNode = node.credentials?.[credentialType];
224
271
  const existingCredentialId = typeof existingOnNode?.id === 'string' && existingOnNode.id ? existingOnNode.id : undefined;
225
272
  const hasExistingOnNode = existingCredentialId !== undefined || (0, credential_utils_1.isAiGatewayManagedCredential)(existingOnNode);
@@ -236,7 +283,7 @@ async function resolveCredentialState(context, node, credentialType, cache, work
236
283
  autoAppliedGateway = true;
237
284
  }
238
285
  }
239
- if (!isAutoApplied) {
286
+ if (!isAutoApplied && credentialType !== api_types_1.TEMPLATED_CUSTOM_AUTH_CREDENTIAL_TYPE) {
240
287
  isAutoApplied = !hasExistingOnNode && existingCredentials.length === 1;
241
288
  }
242
289
  const credToTest = existingCredentialId ??
@@ -248,6 +295,8 @@ async function resolveCredentialState(context, node, credentialType, cache, work
248
295
  ...(autoAppliedGateway ? { autoAppliedGateway } : {}),
249
296
  };
250
297
  }
298
+ const resolvedCredential = sortedCreds.find((c) => c.id === credToTest);
299
+ const effectiveCredential = resolvedCredential ? { effectiveCredential: resolvedCredential } : {};
251
300
  let testabilityPromise = cache?.testability.get(credentialType);
252
301
  if (!testabilityPromise) {
253
302
  testabilityPromise = context.credentialService.isTestable
@@ -257,7 +306,7 @@ async function resolveCredentialState(context, node, credentialType, cache, work
257
306
  }
258
307
  const canTest = await testabilityPromise;
259
308
  if (!canTest)
260
- return { existingCredentials, isAutoApplied };
309
+ return { existingCredentials, isAutoApplied, ...effectiveCredential };
261
310
  let testPromise = cache?.tests.get(credToTest);
262
311
  if (!testPromise) {
263
312
  testPromise = context.credentialService.test(credToTest).catch((testError) => ({
@@ -267,7 +316,7 @@ async function resolveCredentialState(context, node, credentialType, cache, work
267
316
  cache?.tests.set(credToTest, testPromise);
268
317
  }
269
318
  const credentialTestResult = await testPromise;
270
- return { existingCredentials, isAutoApplied, credentialTestResult };
319
+ return { existingCredentials, isAutoApplied, credentialTestResult, ...effectiveCredential };
271
320
  }
272
321
  function buildRequestCredentials(nodeCredentials, isAutoApplied, credentialType, existingCredentials, autoAppliedGateway) {
273
322
  let autoCredential;
@@ -322,8 +371,13 @@ async function buildRequestForCredentialType(context, node, credentialType, cach
322
371
  .map(([key, value]) => [key, (0, credential_utils_1.toSetupNodeCredential)(value)])
323
372
  .filter((entry) => entry[1] !== undefined))
324
373
  : undefined;
325
- const { existingCredentials, isAutoApplied, credentialTestResult, autoAppliedGateway } = await resolveAppliedCredentialState(context, node, credentialType, cache, workflowId, nodeCredentials);
326
- const { isTrigger, isTestable, hasParamIssues } = nodeCtx;
374
+ const { existingCredentials, isAutoApplied, credentialTestResult, autoAppliedGateway, effectiveCredential, } = await resolveAppliedCredentialState(context, node, credentialType, cache, workflowId, nodeCredentials);
375
+ const unavailableIssues = credentialType && effectiveCredential
376
+ ? await computeUnavailableLocatorIssues(context, node, nodeCtx.parameters, nodeCtx.typeVersion, credentialType, effectiveCredential)
377
+ : {};
378
+ const parameterIssues = { ...nodeCtx.parameterIssues, ...unavailableIssues };
379
+ const { isTrigger, isTestable } = nodeCtx;
380
+ const hasParamIssues = Object.keys(parameterIssues).length > 0;
327
381
  if (!credentialType && !isTrigger && !hasParamIssues)
328
382
  return null;
329
383
  if (!credentialType && isTrigger && !isTestable && !hasParamIssues)
@@ -359,7 +413,7 @@ async function buildRequestForCredentialType(context, node, credentialType, cach
359
413
  ...(isAutoApplied ? { isAutoApplied } : {}),
360
414
  ...(credentialTestResult ? { credentialTestResult } : {}),
361
415
  ...(nodeCtx.triggerTestResult ? { triggerTestResult: nodeCtx.triggerTestResult } : {}),
362
- ...(hasParamIssues ? { parameterIssues: nodeCtx.parameterIssues } : {}),
416
+ ...(hasParamIssues ? { parameterIssues } : {}),
363
417
  ...(nodeCtx.editableParameters && nodeCtx.editableParameters.length > 0
364
418
  ? { editableParameters: nodeCtx.editableParameters }
365
419
  : {}),
@@ -386,14 +440,12 @@ async function buildSetupRequests(context, node, triggerTestResult, cache, workf
386
440
  const credentialTypes = await resolveCredentialTypes(context, node, parameters, typeVersion, nodeDesc);
387
441
  const nodeId = node.id ?? (0, nanoid_1.nanoid)();
388
442
  const nodePosition = node.position ?? [0, 0];
389
- const hasParamIssues = Object.keys(parameterIssues).length > 0;
390
443
  const requests = [];
391
444
  const processedCredTypes = credentialTypes.length > 0 ? credentialTypes : [undefined];
392
445
  const nodeCtx = {
393
446
  nodeName: node.name,
394
447
  isTrigger,
395
448
  isTestable,
396
- hasParamIssues,
397
449
  parameterIssues,
398
450
  editableParameters,
399
451
  triggerTestResult,
@@ -409,6 +461,20 @@ async function buildSetupRequests(context, node, triggerTestResult, cache, workf
409
461
  }
410
462
  return requests;
411
463
  }
464
+ function applyCredentialHints(requests, hints) {
465
+ if (!hints?.length)
466
+ return;
467
+ for (const request of requests) {
468
+ if (request.credentialType !== api_types_1.TEMPLATED_CUSTOM_AUTH_CREDENTIAL_TYPE)
469
+ continue;
470
+ const hint = hints.find((h) => h.nodeName === request.node.name) ?? hints.find((h) => !h.nodeName);
471
+ if (!hint)
472
+ continue;
473
+ const { nodeName: _nodeName, ...setupHint } = hint;
474
+ const serviceHost = (0, credential_utils_1.extractServiceHost)(request.node.parameters?.url) ?? (0, credential_utils_1.extractServiceHost)(setupHint.testUrl);
475
+ request.setupHint = { ...setupHint, ...(serviceHost ? { serviceHost } : {}) };
476
+ }
477
+ }
412
478
  function addConnectionEdge(mainOutgoing, nonMainIncoming, sourceName, connType, conn) {
413
479
  if (typeof conn !== 'object' || conn === null || !('node' in conn))
414
480
  return;
@@ -804,9 +870,7 @@ async function analyzeWorkflow(context, workflowId, triggerResults, options) {
804
870
  .filter((req) => req.credentialType !== undefined ||
805
871
  req.isTrigger ||
806
872
  (req.parameterIssues && Object.keys(req.parameterIssues).length > 0))
807
- .filter((req) => options?.includeSettled === true ||
808
- !!req.needsAction ||
809
- (req.isTrigger && !!req.isTestable));
873
+ .filter((req) => options?.includeSettled === true || !!req.needsAction);
810
874
  sortByExecutionOrder(setupRequests, workflowJson.connections);
811
875
  const subnodeToRootNode = buildSubnodeToRootNodeMap(workflowJson.nodes, workflowJson.connections, setupRequests.map((req) => req.node.name));
812
876
  if (subnodeToRootNode.size > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"setup-workflow.service.js","sourceRoot":"","sources":["../../../src/tools/workflows/setup-workflow.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-workflow.service.js","sourceRoot":"","sources":["../../../src/tools/workflows/setup-workflow.service.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,9 @@ declare const workflowSourceFileBindingSchema: z.ZodObject<{
21
21
  }>;
22
22
  export type WorkflowSourceFileBinding = z.infer<typeof workflowSourceFileBindingSchema>;
23
23
  export declare function hashWorkflowSource(source: string): string;
24
- export declare function normalizeWorkflowSourceFilePath(filePath: string): string;
24
+ export declare function normalizeWorkflowSourceFilePath(filePath: string, options?: {
25
+ workspaceRoot?: string;
26
+ }): string;
25
27
  export declare function getWorkflowSourceFileBinding(context: InstanceAiContext, filePath: string): Promise<WorkflowSourceFileBinding | undefined>;
26
28
  export declare function saveWorkflowSourceFileBinding(context: InstanceAiContext, binding: WorkflowSourceFileBinding): Promise<WorkflowSourceFileBinding>;
27
29
  export declare function bindSourceFileToExistingWorkflow(context: InstanceAiContext, binding: WorkflowSourceFileBinding, workflowId: string): Promise<WorkflowSourceFileBinding>;
@@ -26,8 +26,11 @@ const fallbackBindings = new WeakMap();
26
26
  function hashWorkflowSource(source) {
27
27
  return (0, node_crypto_1.createHash)('sha256').update(source).digest('hex');
28
28
  }
29
- function normalizeWorkflowSourceFilePath(filePath) {
30
- return (0, workspace_paths_1.normalizeWorkspaceRelativePath)(filePath, { resourceLabel: 'Workflow source file' });
29
+ function normalizeWorkflowSourceFilePath(filePath, options = {}) {
30
+ return (0, workspace_paths_1.normalizeWorkspaceRelativePath)(filePath, {
31
+ resourceLabel: 'Workflow source file',
32
+ workspaceRoot: options.workspaceRoot,
33
+ });
31
34
  }
32
35
  function parseBindings(raw) {
33
36
  const parsed = workflowSourceFileBindingsSchema.safeParse(raw);
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-file-bindings.js","sourceRoot":"","sources":["../../../src/tools/workflows/workflow-file-bindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-file-bindings.js","sourceRoot":"","sources":["../../../src/tools/workflows/workflow-file-bindings.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,6CAAyC;AACzC,6BAAwB;AAExB,6DAAoE;AAEpE,qEAAoE;AACpE,qEAAiF;AAEjF,MAAM,YAAY,GAAG,+BAA+B,CAAC;AAErD,MAAM,+BAA+B,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAEH,MAAM,gCAAgC,GAAG,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,+BAA+B,CAAC,CAAC;AAI/F,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAA6D,CAAC;AAElG,4BAAmC,MAAc;IAChD,OAAO,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED,yCACC,QAAgB,EAChB,OAAO,GAA+B,EAAE;IAExC,OAAO,IAAA,gDAA8B,EAAC,QAAQ,EAAE;QAC/C,aAAa,EAAE,sBAAsB;QACrC,aAAa,EAAE,OAAO,CAAC,aAAa;KACpC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,GAAY;IAClC,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC/D,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1C,CAAC;AAED,SAAS,mBAAmB,CAAC,OAA0B;IACtD,IAAI,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QACrB,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,kBAAkB,CAChC,OAA0B;IAE1B,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAEjE,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAS,EAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvE,OAAO,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,mEAAmE,EAAE;YAC1F,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC7D,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAEM,KAAK,uCACX,OAA0B,EAC1B,QAAgB;IAEhB,MAAM,kBAAkB,GAAG,+BAA+B,CAAC,QAAQ,CAAC,CAAC;IACrE,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,cAAc,EAAE,CAAC;QACpB,OAAO,CACN,cAAc,CAAC,kBAAkB,CAAC,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAC1F,CAAC;IACH,CAAC;IAED,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAC7D,CAAC;AAEM,KAAK,wCACX,OAA0B,EAC1B,OAAkC;IAElC,MAAM,iBAAiB,GAAG;QACzB,GAAG,OAAO;QACV,QAAQ,EAAE,+BAA+B,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC3D,CAAC;IAEF,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC9C,IAAI,CAAC;YACJ,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAW,EAAC,OAAO,CAAC,YAAY,EAAE;gBAC7D,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,CAAC,EAAE,QAAQ,GAAG,EAAE,EAAE,EAAE,EAAE;oBAC7B,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;oBACvD,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,iBAAiB,CAAC;oBACzD,OAAO,EAAE,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC;gBAChE,CAAC;aACD,CAAC,CAAC;YACH,IAAI,aAAa;gBAAE,OAAO,iBAAiB,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,mEAAmE,EAAE;gBACzF,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;gBACpC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC7D,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED,mBAAmB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAChF,OAAO,iBAAiB,CAAC;AAC1B,CAAC;AAGM,KAAK,2CACX,OAA0B,EAC1B,OAAkC,EAClC,UAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC/D,OAAO,MAAM,6BAA6B,CAAC,OAAO,EAAE;QACnD,GAAG,OAAO;QACV,UAAU;QACV,iBAAiB,EAAE,QAAQ,CAAC,SAAS;QACrC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrE,CAAC,CAAC;AACJ,CAAC;AAGM,KAAK,uDACX,OAA0B,EAC1B,UAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC/D,MAAM,wCAAwC,CAAC,OAAO,EAAE,UAAU,EAAE;QACnE,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;KAC3B,CAAC,CAAC;AACJ,CAAC;AAGM,KAAK,mDACX,OAA0B,EAC1B,UAAkB,EAClB,KAA+C;IAE/C,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAgC,EAAE,CAAC;IAEhD,IAAI,cAAc,EAAE,CAAC;QACpB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;YACrD,IAAI,OAAO,CAAC,UAAU,KAAK,UAAU;gBAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9D,CAAC;IACF,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;QACzC,IACC,OAAO,CAAC,UAAU,KAAK,UAAU;YACjC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC,EACpD,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;IACF,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC/B,MAAM,WAAW,GAA8B;YAC9C,GAAG,OAAO;YACV,iBAAiB,EAAE,KAAK,CAAC,SAAS;SAClC,CAAC;QACF,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,WAAW,CAAC,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC/C,CAAC;aAAM,CAAC;YACP,OAAO,WAAW,CAAC,gBAAgB,CAAC;QACrC,CAAC;QACD,MAAM,6BAA6B,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC3D,CAAC;AACF,CAAC;AAEM,KAAK,iCACX,OAA0B,EAC1B,QAAgB,EAChB,WAAyB;IAEzB,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,kBAAkB,GAAG,+BAA+B,CAAC,QAAQ,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,MAAM,IAAA,mCAAiB,EAAC,OAAO,CAAC,SAAS,EAAE,kBAAkB,EAAE;QAC7E,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,aAAa,EAAE,sBAAsB;QACrC,WAAW;KACX,CAAC,CAAC;IAEH,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,kBAAkB,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;AAC3D,CAAC"}
@@ -6,6 +6,7 @@ const is_record_1 = require("@n8n/utils/is-record");
6
6
  const nanoid_1 = require("nanoid");
7
7
  const zod_1 = require("zod");
8
8
  const sanitize_mcp_schemas_1 = require("../agent/sanitize-mcp-schemas");
9
+ const credentials_tool_1 = require("./credentials.tool");
9
10
  const format_timestamp_1 = require("../utils/format-timestamp");
10
11
  const setup_workflow_schema_1 = require("./workflows/setup-workflow.schema");
11
12
  const setup_workflow_service_1 = require("./workflows/setup-workflow.service");
@@ -71,6 +72,19 @@ const setupAction = zod_1.z.object({
71
72
  .describe('Open the inline AI Assistant workflow setup card for credential and parameter configuration. Use for setup routing after a build.'),
72
73
  workflowId: zod_1.z.string().describe('ID of the workflow'),
73
74
  projectId: zod_1.z.string().optional().describe('Project ID to scope credential creation to'),
75
+ credentialHints: zod_1.z
76
+ .array(credentials_tool_1.setupHintField.extend({
77
+ nodeName: zod_1.z
78
+ .string()
79
+ .optional()
80
+ .describe('Restrict the recipe to one node — needed when several nodes use Simplified Custom Auth for different services.'),
81
+ }))
82
+ .optional()
83
+ .describe('Recipes for the Simplified Custom Auth credentials the user will create during setup: the card pre-fills the template and asks only for the placeholder values. Provide one per templated credential. REQUIRED before composing: load the `credential-recipe-research` skill and execute its lookup procedure — the template and testUrl must come from provider pages fetched there, never from memory.'),
84
+ allowPlainGenericAuth: zod_1.z
85
+ .boolean()
86
+ .optional()
87
+ .describe('Set ONLY when the user explicitly chose a plain generic auth type (Bearer/Header/Query/Custom Auth) for a new credential, or the workflow pre-existed with it. Otherwise setup rejects new plain generic credentials on HTTP Request nodes in favor of Simplified Custom Auth.'),
74
88
  });
75
89
  const validateAction = zod_1.z.object({
76
90
  action: zod_1.z
@@ -399,6 +413,7 @@ async function handleSetupTestTrigger(context, input, ctx, state, resumeData, te
399
413
  const refreshedRequests = await (0, setup_workflow_service_1.analyzeWorkflow)(context, input.workflowId, {
400
414
  [testTriggerNode]: triggerTestResult,
401
415
  });
416
+ (0, setup_workflow_service_1.applyCredentialHints)(refreshedRequests, input.credentialHints);
402
417
  state.currentRequestId = (0, nanoid_1.nanoid)();
403
418
  return await ctx.suspend({
404
419
  requestId: state.currentRequestId,
@@ -440,6 +455,9 @@ async function handleSetupApply(context, input, state, resumeData) {
440
455
  const skippedNodes = pendingRequests.map((r) => ({
441
456
  nodeName: r.node.name,
442
457
  credentialType: r.credentialType,
458
+ ...(r.parameterIssues && Object.keys(r.parameterIssues).length > 0
459
+ ? { parameterIssues: r.parameterIssues }
460
+ : {}),
443
461
  }));
444
462
  return {
445
463
  success: true,
@@ -474,6 +492,32 @@ async function handleSetup(context, input, ctx, state) {
474
492
  const resumeData = ctx.resumeData;
475
493
  if (resumeData === undefined || resumeData === null) {
476
494
  const setupRequests = await (0, setup_workflow_service_1.analyzeWorkflow)(context, input.workflowId);
495
+ const nodeUrls = setupRequests.map((request) => request.node.parameters?.url);
496
+ const hintProblems = (input.credentialHints ?? []).flatMap((hint) => (0, credentials_tool_1.findSetupHintProblems)(hint, { nodeUrls }).map((problem) => hint.nodeName ? `${hint.nodeName}: ${problem}` : problem));
497
+ if (hintProblems.length > 0) {
498
+ return {
499
+ error: 'invalid_credential_hints',
500
+ message: credentials_tool_1.INVALID_SETUP_HINT_MESSAGE,
501
+ problems: hintProblems,
502
+ };
503
+ }
504
+ (0, setup_workflow_service_1.applyCredentialHints)(setupRequests, input.credentialHints);
505
+ if (!input.allowPlainGenericAuth) {
506
+ const plainAuthNodes = setupRequests.filter((request) => request.node.type === 'n8n-nodes-base.httpRequest' &&
507
+ request.credentialType !== undefined &&
508
+ credentials_tool_1.TEMPLATABLE_PLAIN_AUTH_TYPES.has(request.credentialType) &&
509
+ (request.existingCredentials ?? []).length === 0);
510
+ if (plainAuthNodes.length > 0) {
511
+ return {
512
+ error: 'plain_generic_auth',
513
+ message: 'These HTTP Request nodes use a plain generic auth type for a credential that does not exist yet. Change each node\'s genericAuthType to "httpTemplatedCustomAuth" and re-run setup with a credentialHints recipe — even when the provider documents `Authorization: Bearer <token>`, express it as a template ({"headers":{"Authorization":"Bearer {{api_key}}"}}). Only if the user explicitly asked for the plain type (or the workflow pre-existed with it), re-call setup with allowPlainGenericAuth: true.',
514
+ nodes: plainAuthNodes.map((request) => ({
515
+ nodeName: request.node.name,
516
+ credentialType: request.credentialType,
517
+ })),
518
+ };
519
+ }
520
+ }
477
521
  if (setupRequests.length === 0) {
478
522
  return { success: true, reason: 'No nodes require setup.' };
479
523
  }