@n8n/ai-workflow-builder 0.27.1 → 0.29.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 (107) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/chains/prompt-categorization.d.ts +3 -0
  3. package/dist/chains/prompt-categorization.js +109 -0
  4. package/dist/chains/prompt-categorization.js.map +1 -0
  5. package/dist/chains/prompts/parameter-types/system-message.d.ts +1 -0
  6. package/dist/chains/prompts/parameter-types/system-message.js +75 -0
  7. package/dist/chains/prompts/parameter-types/system-message.js.map +1 -0
  8. package/dist/chains/prompts/prompt-builder.d.ts +1 -0
  9. package/dist/chains/prompts/prompt-builder.js +23 -1
  10. package/dist/chains/prompts/prompt-builder.js.map +1 -1
  11. package/dist/chains/test/integration/test-helpers.d.ts +3 -0
  12. package/dist/chains/test/integration/test-helpers.js +16 -0
  13. package/dist/chains/test/integration/test-helpers.js.map +1 -0
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.js +3 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/tools/best-practices/chatbot.d.ts +7 -0
  18. package/dist/tools/best-practices/chatbot.js +118 -0
  19. package/dist/tools/best-practices/chatbot.js.map +1 -0
  20. package/dist/tools/best-practices/content-generation.d.ts +7 -0
  21. package/dist/tools/best-practices/content-generation.js +79 -0
  22. package/dist/tools/best-practices/content-generation.js.map +1 -0
  23. package/dist/tools/best-practices/data-extraction.d.ts +7 -0
  24. package/dist/tools/best-practices/data-extraction.js +105 -0
  25. package/dist/tools/best-practices/data-extraction.js.map +1 -0
  26. package/dist/tools/best-practices/form-input.d.ts +7 -0
  27. package/dist/tools/best-practices/form-input.js +173 -0
  28. package/dist/tools/best-practices/form-input.js.map +1 -0
  29. package/dist/tools/best-practices/index.d.ts +3 -0
  30. package/dist/tools/best-practices/index.js +27 -0
  31. package/dist/tools/best-practices/index.js.map +1 -0
  32. package/dist/tools/best-practices/scraping-and-research.d.ts +7 -0
  33. package/dist/tools/best-practices/scraping-and-research.js +147 -0
  34. package/dist/tools/best-practices/scraping-and-research.js.map +1 -0
  35. package/dist/tools/builder-tools.js +9 -0
  36. package/dist/tools/builder-tools.js.map +1 -1
  37. package/dist/tools/categorize-prompt.tool.d.ts +5 -0
  38. package/dist/tools/categorize-prompt.tool.js +84 -0
  39. package/dist/tools/categorize-prompt.tool.js.map +1 -0
  40. package/dist/tools/engines/node-search-engine.d.ts +0 -9
  41. package/dist/tools/engines/node-search-engine.js +52 -72
  42. package/dist/tools/engines/node-search-engine.js.map +1 -1
  43. package/dist/tools/get-best-practices.tool.d.ts +33 -0
  44. package/dist/tools/get-best-practices.tool.js +94 -0
  45. package/dist/tools/get-best-practices.tool.js.map +1 -0
  46. package/dist/tools/prompts/main-agent.prompt.js +116 -5
  47. package/dist/tools/prompts/main-agent.prompt.js.map +1 -1
  48. package/dist/tools/validate-workflow.tool.d.ts +5 -0
  49. package/dist/tools/validate-workflow.tool.js +61 -0
  50. package/dist/tools/validate-workflow.tool.js.map +1 -0
  51. package/dist/types/best-practices.d.ts +6 -0
  52. package/dist/types/best-practices.js +3 -0
  53. package/dist/types/best-practices.js.map +1 -0
  54. package/dist/types/categorization.d.ts +23 -0
  55. package/dist/types/categorization.js +38 -0
  56. package/dist/types/categorization.js.map +1 -0
  57. package/dist/types/index.d.ts +2 -0
  58. package/dist/types/tools.d.ts +4 -0
  59. package/dist/utils/operations-processor.d.ts +2 -0
  60. package/dist/utils/operations-processor.js +1 -0
  61. package/dist/utils/operations-processor.js.map +1 -1
  62. package/dist/utils/stream-processor.d.ts +1 -0
  63. package/dist/utils/stream-processor.js +99 -59
  64. package/dist/utils/stream-processor.js.map +1 -1
  65. package/dist/utils/workflow-validation.d.ts +2 -0
  66. package/dist/utils/workflow-validation.js +36 -0
  67. package/dist/utils/workflow-validation.js.map +1 -0
  68. package/dist/validation/checks/agent-prompt.d.ts +3 -0
  69. package/dist/validation/checks/agent-prompt.js +45 -0
  70. package/dist/validation/checks/agent-prompt.js.map +1 -0
  71. package/dist/validation/checks/connections.d.ts +4 -0
  72. package/dist/validation/checks/connections.js +162 -0
  73. package/dist/validation/checks/connections.js.map +1 -0
  74. package/dist/validation/checks/from-ai.d.ts +4 -0
  75. package/dist/validation/checks/from-ai.js +59 -0
  76. package/dist/validation/checks/from-ai.js.map +1 -0
  77. package/dist/validation/checks/index.d.ts +5 -0
  78. package/dist/validation/checks/index.js +14 -0
  79. package/dist/validation/checks/index.js.map +1 -0
  80. package/dist/validation/checks/tools.d.ts +4 -0
  81. package/dist/validation/checks/tools.js +44 -0
  82. package/dist/validation/checks/tools.js.map +1 -0
  83. package/dist/validation/checks/trigger.d.ts +8 -0
  84. package/dist/validation/checks/trigger.js +35 -0
  85. package/dist/validation/checks/trigger.js.map +1 -0
  86. package/dist/validation/programmatic.d.ts +3 -0
  87. package/dist/validation/programmatic.js +20 -0
  88. package/dist/validation/programmatic.js.map +1 -0
  89. package/dist/validation/types.d.ts +41 -0
  90. package/dist/validation/types.js +3 -0
  91. package/dist/validation/types.js.map +1 -0
  92. package/dist/validation/utils/expressions.d.ts +3 -0
  93. package/dist/validation/utils/expressions.js +37 -0
  94. package/dist/validation/utils/expressions.js.map +1 -0
  95. package/dist/validation/utils/is-tool.d.ts +2 -0
  96. package/dist/validation/utils/is-tool.js +7 -0
  97. package/dist/validation/utils/is-tool.js.map +1 -0
  98. package/dist/validation/utils/resolve-connections.d.ts +8 -0
  99. package/dist/validation/utils/resolve-connections.js +64 -0
  100. package/dist/validation/utils/resolve-connections.js.map +1 -0
  101. package/dist/workflow-builder-agent.d.ts +2 -0
  102. package/dist/workflow-builder-agent.js +28 -25
  103. package/dist/workflow-builder-agent.js.map +1 -1
  104. package/dist/workflow-state.d.ts +3 -1
  105. package/dist/workflow-state.js +4 -0
  106. package/dist/workflow-state.js.map +1 -1
  107. package/package.json +12 -7
@@ -50,6 +50,10 @@ exports.WorkflowState = langgraph_1.Annotation.Root({
50
50
  workflowContext: (0, langgraph_1.Annotation)({
51
51
  reducer: (x, y) => y ?? x,
52
52
  }),
53
+ workflowValidation: (0, langgraph_1.Annotation)({
54
+ reducer: (x, y) => (y === undefined ? x : y),
55
+ default: () => null,
56
+ }),
53
57
  previousSummary: (0, langgraph_1.Annotation)({
54
58
  reducer: (x, y) => y ?? x,
55
59
  default: () => 'EMPTY',
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-state.js","sourceRoot":"","sources":["../src/workflow-state.ts"],"names":[],"mappings":";;;AAoCA,8DAsBC;AAzDD,uDAAwD;AACxD,oDAAwE;AASxE,SAAS,iBAAiB,CACzB,OAAmC,EACnC,MAA8C;IAE9C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACX,CAAC;IAED,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,OAAO,IAAI,EAAE,CAAC;IACtB,CAAC;IAGD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACX,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;AACxC,CAAC;AAGD,SAAgB,yBAAyB,CAAC,eAAuB;IAChE,OAAO,CAAC,OAAsB,EAAiB,EAAE;QAEhD,MAAM,mBAAmB,GAAa,EAAE,CAAC;QACzC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC9B,IAAI,GAAG,YAAY,uBAAY,EAAE,CAAC;gBACjC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;QACF,CAAC,CAAC,CAAC;QAGH,IAAI,mBAAmB,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC;YACnD,OAAO,OAAO,CAAC;QAChB,CAAC;QAGD,MAAM,sBAAsB,GAC3B,mBAAmB,CAAC,mBAAmB,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC;QAGnE,OAAO,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC9C,CAAC,CAAC;AACH,CAAC;AAEY,QAAA,aAAa,GAAG,sBAAU,CAAC,IAAI,CAAC;IAC5C,QAAQ,EAAE,IAAA,sBAAU,EAAgB;QACnC,OAAO,EAAE,gCAAoB;QAC7B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAIF,YAAY,EAAE,IAAA,sBAAU,EAAiB;QACxC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;KACzD,CAAC;IAEF,kBAAkB,EAAE,IAAA,sBAAU,EAA6B;QAC1D,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAEF,eAAe,EAAE,IAAA,sBAAU,EAA6C;QACvE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;KACzB,CAAC;IAGF,eAAe,EAAE,IAAA,sBAAU,EAAS;QACnC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;KACtB,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"workflow-state.js","sourceRoot":"","sources":["../src/workflow-state.ts"],"names":[],"mappings":";;;AAqCA,8DAsBC;AA1DD,uDAAwD;AACxD,oDAAwE;AAUxE,SAAS,iBAAiB,CACzB,OAAmC,EACnC,MAA8C;IAE9C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACX,CAAC;IAED,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,OAAO,IAAI,EAAE,CAAC;IACtB,CAAC;IAGD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACX,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;AACxC,CAAC;AAGD,SAAgB,yBAAyB,CAAC,eAAuB;IAChE,OAAO,CAAC,OAAsB,EAAiB,EAAE;QAEhD,MAAM,mBAAmB,GAAa,EAAE,CAAC;QACzC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC9B,IAAI,GAAG,YAAY,uBAAY,EAAE,CAAC;gBACjC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;QACF,CAAC,CAAC,CAAC;QAGH,IAAI,mBAAmB,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC;YACnD,OAAO,OAAO,CAAC;QAChB,CAAC;QAGD,MAAM,sBAAsB,GAC3B,mBAAmB,CAAC,mBAAmB,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC;QAGnE,OAAO,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC9C,CAAC,CAAC;AACH,CAAC;AAEY,QAAA,aAAa,GAAG,sBAAU,CAAC,IAAI,CAAC;IAC5C,QAAQ,EAAE,IAAA,sBAAU,EAAgB;QACnC,OAAO,EAAE,gCAAoB;QAC7B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAIF,YAAY,EAAE,IAAA,sBAAU,EAAiB;QACxC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;KACzD,CAAC;IAEF,kBAAkB,EAAE,IAAA,sBAAU,EAA6B;QAC1D,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAEF,eAAe,EAAE,IAAA,sBAAU,EAA6C;QACvE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;KACzB,CAAC;IACF,kBAAkB,EAAE,IAAA,sBAAU,EAAsC;QACnE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;KACnB,CAAC;IAGF,eAAe,EAAE,IAAA,sBAAU,EAAS;QACnC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;KACtB,CAAC;CACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@n8n/ai-workflow-builder",
3
- "version": "0.27.1",
3
+ "version": "0.29.0",
4
4
  "main": "dist/index.js",
5
5
  "module": "src/index.ts",
6
6
  "types": "dist/index.d.ts",
7
7
  "files": [
8
8
  "dist/**/*",
9
- "LICENSE_EE.md",
10
- "LICENSE.md"
9
+ "LICENSE.md",
10
+ "LICENSE_EE.md"
11
11
  ],
12
12
  "exports": {
13
13
  ".": {
@@ -22,14 +22,16 @@
22
22
  "@langchain/langgraph": "0.2.74",
23
23
  "@langchain/openai": "0.6.16",
24
24
  "@n8n_io/ai-assistant-sdk": "1.17.0",
25
+ "csv-parse": "5.5.0",
25
26
  "langsmith": "^0.3.45",
26
27
  "lodash": "4.17.21",
27
28
  "picocolors": "1.0.1",
28
29
  "zod": "3.25.67",
29
- "@n8n/backend-common": "^0.27.0",
30
- "@n8n/config": "1.59.0",
31
30
  "@n8n/di": "0.9.0",
32
- "n8n-workflow": "1.114.0"
31
+ "@n8n/backend-common": "^0.29.0",
32
+ "@n8n/config": "1.61.0",
33
+ "n8n-workflow": "1.116.0",
34
+ "@n8n/utils": "1.18.0"
33
35
  },
34
36
  "devDependencies": {
35
37
  "@types/cli-progress": "^3.11.5",
@@ -57,6 +59,8 @@
57
59
  "format": "biome format --write src",
58
60
  "format:check": "biome ci src",
59
61
  "test": "jest",
62
+ "test:unit": "jest --config=jest.config.unit.js",
63
+ "test:integration": "jest --config=jest.config.integration.js",
60
64
  "test:coverage": "jest --coverage",
61
65
  "test:watch": "jest --watch",
62
66
  "lint": "eslint . --quiet",
@@ -70,8 +74,9 @@
70
74
  "deps:orphans": "madge src/index.ts --orphans",
71
75
  "deps:all": "pnpm run deps:graph && pnpm run deps:graph:service && pnpm run deps:graph:tools && pnpm run deps:circular && pnpm run deps:report",
72
76
  "eval": "tsx evaluations",
77
+ "eval:csv": "tsx evaluations --prompts-csv",
73
78
  "eval:langsmith": "USE_LANGSMITH_EVAL=true tsx evaluations",
74
79
  "eval:generate": "GENERATE_TEST_CASES=true tsx evaluations",
75
- "eval:cache": "tsx evaluations/test-cache-quality.ts"
80
+ "eval:categorize": "tsx scripts/categorize-prompts.ts"
76
81
  }
77
82
  }