@n8n/ai-workflow-builder 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agents/responder.agent.d.ts +1 -0
- package/dist/agents/responder.agent.js +9 -33
- package/dist/agents/responder.agent.js.map +1 -1
- package/dist/agents/supervisor.agent.d.ts +1 -0
- package/dist/agents/supervisor.agent.js +7 -38
- package/dist/agents/supervisor.agent.js.map +1 -1
- package/dist/ai-workflow-builder-agent.service.d.ts +2 -1
- package/dist/ai-workflow-builder-agent.service.js +18 -12
- package/dist/ai-workflow-builder-agent.service.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/chains/conversation-compact.js +2 -13
- package/dist/chains/conversation-compact.js.map +1 -1
- package/dist/chains/parameter-updater.js +21 -7
- package/dist/chains/parameter-updater.js.map +1 -1
- package/dist/chains/prompt-categorization.js +3 -81
- package/dist/chains/prompt-categorization.js.map +1 -1
- package/dist/chains/workflow-name.js +2 -10
- package/dist/chains/workflow-name.js.map +1 -1
- package/dist/constants.d.ts +2 -0
- package/dist/constants.js +3 -1
- package/dist/constants.js.map +1 -1
- package/dist/multi-agent-workflow-subgraphs.d.ts +38 -1
- package/dist/multi-agent-workflow-subgraphs.js +34 -2
- package/dist/multi-agent-workflow-subgraphs.js.map +1 -1
- package/dist/parent-graph-state.d.ts +4 -0
- package/dist/parent-graph-state.js +14 -1
- package/dist/parent-graph-state.js.map +1 -1
- package/dist/prompts/agents/builder.prompt.d.ts +1 -0
- package/dist/prompts/agents/builder.prompt.js +242 -0
- package/dist/prompts/agents/builder.prompt.js.map +1 -0
- package/dist/prompts/agents/configurator.prompt.d.ts +2 -0
- package/dist/prompts/agents/configurator.prompt.js +125 -0
- package/dist/prompts/agents/configurator.prompt.js.map +1 -0
- package/dist/prompts/agents/discovery.prompt.d.ts +11 -0
- package/dist/prompts/agents/discovery.prompt.js +259 -0
- package/dist/prompts/agents/discovery.prompt.js.map +1 -0
- package/dist/prompts/agents/responder.prompt.d.ts +1 -0
- package/dist/prompts/agents/responder.prompt.js +41 -0
- package/dist/prompts/agents/responder.prompt.js.map +1 -0
- package/dist/prompts/agents/supervisor.prompt.d.ts +1 -0
- package/dist/prompts/agents/supervisor.prompt.js +43 -0
- package/dist/prompts/agents/supervisor.prompt.js.map +1 -0
- package/dist/prompts/builder/index.d.ts +2 -0
- package/dist/prompts/builder/index.js +7 -0
- package/dist/prompts/builder/index.js.map +1 -0
- package/dist/prompts/builder/prompt-builder.d.ts +17 -0
- package/dist/prompts/builder/prompt-builder.js +147 -0
- package/dist/prompts/builder/prompt-builder.js.map +1 -0
- package/dist/prompts/builder/types.d.ts +22 -0
- package/dist/prompts/builder/types.js +3 -0
- package/dist/prompts/builder/types.js.map +1 -0
- package/dist/prompts/chains/categorization.prompt.d.ts +43 -0
- package/dist/prompts/chains/categorization.prompt.js +86 -0
- package/dist/prompts/chains/categorization.prompt.js.map +1 -0
- package/dist/prompts/chains/compact.prompt.d.ts +2 -0
- package/dist/prompts/chains/compact.prompt.js +16 -0
- package/dist/prompts/chains/compact.prompt.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/examples/if-node.d.ts +2 -0
- package/dist/{chains/prompts/examples/basic/if-node-examples.js → prompts/chains/parameter-updater/examples/if-node.js} +6 -3
- package/dist/prompts/chains/parameter-updater/examples/if-node.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/examples/index.d.ts +6 -0
- package/dist/prompts/chains/parameter-updater/examples/index.js +16 -0
- package/dist/prompts/chains/parameter-updater/examples/index.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/examples/resource-locator.d.ts +2 -0
- package/dist/{chains/prompts/examples/advanced/resource-locator-examples.js → prompts/chains/parameter-updater/examples/resource-locator.js} +7 -3
- package/dist/prompts/chains/parameter-updater/examples/resource-locator.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/examples/set-node.d.ts +2 -0
- package/dist/{chains/prompts/examples/basic/set-node-examples.js → prompts/chains/parameter-updater/examples/set-node.js} +6 -3
- package/dist/prompts/chains/parameter-updater/examples/set-node.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/examples/simple-updates.d.ts +2 -0
- package/dist/{chains/prompts/examples/basic → prompts/chains/parameter-updater/examples}/simple-updates.js +8 -5
- package/dist/prompts/chains/parameter-updater/examples/simple-updates.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/examples/switch-node.d.ts +2 -0
- package/dist/prompts/chains/parameter-updater/examples/switch-node.js +131 -0
- package/dist/prompts/chains/parameter-updater/examples/switch-node.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/examples/tool-nodes.d.ts +2 -0
- package/dist/{chains/prompts/examples/advanced/tool-node-examples.js → prompts/chains/parameter-updater/examples/tool-nodes.js} +6 -3
- package/dist/prompts/chains/parameter-updater/examples/tool-nodes.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/gmail.d.ts +2 -0
- package/dist/prompts/chains/parameter-updater/guides/gmail.js +28 -0
- package/dist/prompts/chains/parameter-updater/guides/gmail.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/http-request.d.ts +2 -0
- package/dist/{chains/prompts/node-types → prompts/chains/parameter-updater/guides}/http-request.js +34 -8
- package/dist/prompts/chains/parameter-updater/guides/http-request.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/if-node.d.ts +2 -0
- package/dist/{chains/prompts/node-types → prompts/chains/parameter-updater/guides}/if-node.js +6 -5
- package/dist/prompts/chains/parameter-updater/guides/if-node.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/index.d.ts +9 -0
- package/dist/prompts/chains/parameter-updater/guides/index.js +22 -0
- package/dist/prompts/chains/parameter-updater/guides/index.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/resource-locator.d.ts +2 -0
- package/dist/{chains/prompts/parameter-types → prompts/chains/parameter-updater/guides}/resource-locator.js +6 -2
- package/dist/prompts/chains/parameter-updater/guides/resource-locator.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/set-node.d.ts +2 -0
- package/dist/{chains/prompts/node-types → prompts/chains/parameter-updater/guides}/set-node.js +5 -2
- package/dist/prompts/chains/parameter-updater/guides/set-node.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/switch-node.d.ts +2 -0
- package/dist/prompts/chains/parameter-updater/guides/switch-node.js +75 -0
- package/dist/prompts/chains/parameter-updater/guides/switch-node.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/system-message.d.ts +2 -0
- package/dist/{chains/prompts/parameter-types → prompts/chains/parameter-updater/guides}/system-message.js +25 -4
- package/dist/prompts/chains/parameter-updater/guides/system-message.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/text-fields.d.ts +2 -0
- package/dist/{chains/prompts/parameter-types → prompts/chains/parameter-updater/guides}/text-fields.js +11 -2
- package/dist/prompts/chains/parameter-updater/guides/text-fields.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/guides/tool-nodes.d.ts +2 -0
- package/dist/{chains/prompts/node-types → prompts/chains/parameter-updater/guides}/tool-nodes.js +5 -2
- package/dist/prompts/chains/parameter-updater/guides/tool-nodes.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/index.d.ts +8 -0
- package/dist/prompts/chains/parameter-updater/index.js +35 -0
- package/dist/prompts/chains/parameter-updater/index.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/instance-url.d.ts +1 -0
- package/dist/{chains/prompts → prompts/chains/parameter-updater}/instance-url.js +5 -6
- package/dist/prompts/chains/parameter-updater/instance-url.js.map +1 -0
- package/dist/{chains/prompts/base/core-instructions.d.ts → prompts/chains/parameter-updater/parameter-updater.prompt.d.ts} +3 -0
- package/dist/{chains/prompts/base/core-instructions.js → prompts/chains/parameter-updater/parameter-updater.prompt.js} +25 -2
- package/dist/prompts/chains/parameter-updater/parameter-updater.prompt.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/registry.d.ts +4 -0
- package/dist/prompts/chains/parameter-updater/registry.js +65 -0
- package/dist/prompts/chains/parameter-updater/registry.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/types.d.ts +18 -0
- package/dist/prompts/chains/parameter-updater/types.js +3 -0
- package/dist/prompts/chains/parameter-updater/types.js.map +1 -0
- package/dist/prompts/chains/parameter-updater/utils.d.ts +2 -0
- package/dist/prompts/chains/parameter-updater/utils.js +16 -0
- package/dist/prompts/chains/parameter-updater/utils.js.map +1 -0
- package/dist/prompts/chains/workflow-name.prompt.d.ts +2 -0
- package/dist/prompts/chains/workflow-name.prompt.js +11 -0
- package/dist/prompts/chains/workflow-name.prompt.js.map +1 -0
- package/dist/prompts/index.d.ts +12 -0
- package/dist/prompts/index.js +50 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/{tools/prompts/main-agent.prompt.js → prompts/legacy-agent.prompt.js} +14 -31
- package/dist/prompts/legacy-agent.prompt.js.map +1 -0
- package/dist/subgraphs/builder.subgraph.d.ts +2 -0
- package/dist/subgraphs/builder.subgraph.js +2 -163
- package/dist/subgraphs/builder.subgraph.js.map +1 -1
- package/dist/subgraphs/configurator.subgraph.d.ts +2 -0
- package/dist/subgraphs/configurator.subgraph.js +3 -84
- package/dist/subgraphs/configurator.subgraph.js.map +1 -1
- package/dist/subgraphs/discovery.subgraph.d.ts +18 -0
- package/dist/subgraphs/discovery.subgraph.js +28 -220
- package/dist/subgraphs/discovery.subgraph.js.map +1 -1
- package/dist/tools/add-node.tool.js +1 -1
- package/dist/tools/best-practices/chatbot.js +6 -7
- package/dist/tools/best-practices/chatbot.js.map +1 -1
- package/dist/tools/best-practices/content-generation.js +38 -2
- package/dist/tools/best-practices/content-generation.js.map +1 -1
- package/dist/tools/best-practices/data-transformation.js +17 -22
- package/dist/tools/best-practices/data-transformation.js.map +1 -1
- package/dist/tools/best-practices/index.js +2 -1
- package/dist/tools/best-practices/index.js.map +1 -1
- package/dist/types/config.d.ts +2 -0
- package/dist/types/coordination.d.ts +8 -2
- package/dist/types/coordination.js +4 -0
- package/dist/types/coordination.js.map +1 -1
- package/dist/types/discovery-types.d.ts +2 -0
- package/dist/utils/coordination-log.d.ts +2 -1
- package/dist/utils/coordination-log.js.map +1 -1
- package/dist/utils/state-modifier.d.ts +32 -0
- package/dist/utils/state-modifier.js +112 -0
- package/dist/utils/state-modifier.js.map +1 -0
- package/dist/utils/state-reducers.d.ts +4 -0
- package/dist/utils/state-reducers.js +25 -0
- package/dist/utils/state-reducers.js.map +1 -0
- package/dist/utils/stream-processor.js +2 -30
- package/dist/utils/stream-processor.js.map +1 -1
- package/dist/utils/subgraph-helpers.d.ts +3 -0
- package/dist/utils/subgraph-helpers.js +23 -0
- package/dist/utils/subgraph-helpers.js.map +1 -1
- package/dist/validation/checks/connections.js +6 -14
- package/dist/validation/checks/connections.js.map +1 -1
- package/dist/validation/checks/credentials.d.ts +3 -0
- package/dist/validation/checks/credentials.js +125 -0
- package/dist/validation/checks/credentials.js.map +1 -0
- package/dist/validation/checks/index.d.ts +1 -0
- package/dist/validation/checks/index.js +3 -1
- package/dist/validation/checks/index.js.map +1 -1
- package/dist/validation/checks/tools.js +0 -10
- package/dist/validation/checks/tools.js.map +1 -1
- package/dist/validation/programmatic.js +2 -0
- package/dist/validation/programmatic.js.map +1 -1
- package/dist/validation/types.d.ts +4 -1
- package/dist/validation/types.js +2 -0
- package/dist/validation/types.js.map +1 -1
- package/dist/workflow-builder-agent.d.ts +7 -3
- package/dist/workflow-builder-agent.js +24 -15
- package/dist/workflow-builder-agent.js.map +1 -1
- package/dist/workflow-state.js +3 -14
- package/dist/workflow-state.js.map +1 -1
- package/package.json +8 -7
- package/dist/chains/prompts/base/common-patterns.d.ts +0 -1
- package/dist/chains/prompts/base/common-patterns.js +0 -13
- package/dist/chains/prompts/base/common-patterns.js.map +0 -1
- package/dist/chains/prompts/base/core-instructions.js.map +0 -1
- package/dist/chains/prompts/base/expression-rules.d.ts +0 -1
- package/dist/chains/prompts/base/expression-rules.js +0 -15
- package/dist/chains/prompts/base/expression-rules.js.map +0 -1
- package/dist/chains/prompts/base/output-format.d.ts +0 -1
- package/dist/chains/prompts/base/output-format.js +0 -7
- package/dist/chains/prompts/base/output-format.js.map +0 -1
- package/dist/chains/prompts/examples/advanced/resource-locator-examples.d.ts +0 -1
- package/dist/chains/prompts/examples/advanced/resource-locator-examples.js.map +0 -1
- package/dist/chains/prompts/examples/advanced/tool-node-examples.d.ts +0 -1
- package/dist/chains/prompts/examples/advanced/tool-node-examples.js.map +0 -1
- package/dist/chains/prompts/examples/basic/if-node-examples.d.ts +0 -1
- package/dist/chains/prompts/examples/basic/if-node-examples.js.map +0 -1
- package/dist/chains/prompts/examples/basic/set-node-examples.d.ts +0 -1
- package/dist/chains/prompts/examples/basic/set-node-examples.js.map +0 -1
- package/dist/chains/prompts/examples/basic/simple-updates.d.ts +0 -1
- package/dist/chains/prompts/examples/basic/simple-updates.js.map +0 -1
- package/dist/chains/prompts/instance-url.d.ts +0 -1
- package/dist/chains/prompts/instance-url.js.map +0 -1
- package/dist/chains/prompts/node-types/http-request.d.ts +0 -1
- package/dist/chains/prompts/node-types/http-request.js.map +0 -1
- package/dist/chains/prompts/node-types/if-node.d.ts +0 -1
- package/dist/chains/prompts/node-types/if-node.js.map +0 -1
- package/dist/chains/prompts/node-types/set-node.d.ts +0 -1
- package/dist/chains/prompts/node-types/set-node.js.map +0 -1
- package/dist/chains/prompts/node-types/tool-nodes.d.ts +0 -1
- package/dist/chains/prompts/node-types/tool-nodes.js.map +0 -1
- package/dist/chains/prompts/parameter-types/resource-locator.d.ts +0 -1
- package/dist/chains/prompts/parameter-types/resource-locator.js.map +0 -1
- package/dist/chains/prompts/parameter-types/system-message.d.ts +0 -1
- package/dist/chains/prompts/parameter-types/system-message.js.map +0 -1
- package/dist/chains/prompts/parameter-types/text-fields.d.ts +0 -1
- package/dist/chains/prompts/parameter-types/text-fields.js.map +0 -1
- package/dist/chains/prompts/prompt-builder.d.ts +0 -15
- package/dist/chains/prompts/prompt-builder.js +0 -140
- package/dist/chains/prompts/prompt-builder.js.map +0 -1
- package/dist/chains/prompts/prompt-config.d.ts +0 -5
- package/dist/chains/prompts/prompt-config.js +0 -52
- package/dist/chains/prompts/prompt-config.js.map +0 -1
- package/dist/tools/prompts/main-agent.prompt.js.map +0 -1
- /package/dist/{tools/prompts/main-agent.prompt.d.ts → prompts/legacy-agent.prompt.d.ts} +0 -0
|
@@ -5,19 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.conversationCompactChain = conversationCompactChain;
|
|
7
7
|
const messages_1 = require("@langchain/core/messages");
|
|
8
|
-
const prompts_1 = require("@langchain/core/prompts");
|
|
9
8
|
const zod_1 = __importDefault(require("zod"));
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
<previous_summary>
|
|
13
|
-
{previousSummary}
|
|
14
|
-
</previous_summary>
|
|
15
|
-
|
|
16
|
-
<conversation>
|
|
17
|
-
{conversationText}
|
|
18
|
-
</conversation>
|
|
19
|
-
|
|
20
|
-
Provide a structured summary that captures the key points, decisions made, current state of the workflow, and suggested next steps.`);
|
|
9
|
+
const compact_prompt_1 = require("../prompts/chains/compact.prompt");
|
|
21
10
|
async function conversationCompactChain(llm, messages, previousSummary = '') {
|
|
22
11
|
const CompactedSession = zod_1.default.object({
|
|
23
12
|
summary: zod_1.default.string().describe('A concise summary of the conversation so far'),
|
|
@@ -43,7 +32,7 @@ async function conversationCompactChain(llm, messages, previousSummary = '') {
|
|
|
43
32
|
})
|
|
44
33
|
.filter(Boolean)
|
|
45
34
|
.join('\n');
|
|
46
|
-
const compactPrompt = await compactPromptTemplate.invoke({
|
|
35
|
+
const compactPrompt = await compact_prompt_1.compactPromptTemplate.invoke({
|
|
47
36
|
previousSummary,
|
|
48
37
|
conversationText,
|
|
49
38
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-compact.js","sourceRoot":"","sources":["../../src/chains/conversation-compact.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"conversation-compact.js","sourceRoot":"","sources":["../../src/chains/conversation-compact.ts"],"names":[],"mappings":";;;;;AAOA,4DAyDC;AA9DD,uDAAmE;AACnE,8CAAoB;AAEpB,oEAAwE;AAEjE,KAAK,UAAU,wBAAwB,CAC7C,GAAkB,EAClB,QAAuB,EACvB,kBAA0B,EAAE;IAG5B,MAAM,gBAAgB,GAAG,aAAC,CAAC,MAAM,CAAC;QACjC,OAAO,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;QAC5E,aAAa,EAAE,aAAC,CAAC,KAAK,CAAC,aAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QACtF,aAAa,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;QAC/E,UAAU,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;KACjF,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,GAAG,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAGtE,MAAM,gBAAgB,GAAG,QAAQ;SAC/B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,IAAI,GAAG,YAAY,uBAAY,EAAE,CAAC;YAEjC,OAAO,SAAS,GAAG,CAAC,OAAO,EAAE,CAAC;QAC/B,CAAC;aAAM,IAAI,GAAG,YAAY,oBAAS,EAAE,CAAC;YACrC,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACrC,OAAO,cAAc,GAAG,CAAC,OAAO,EAAE,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACP,OAAO,uBAAuB,CAAC;YAChC,CAAC;QACF,CAAC;QAED,OAAO,EAAE,CAAC;IACX,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,aAAa,GAAG,MAAM,sCAAqB,CAAC,MAAM,CAAC;QACxD,eAAe;QACf,gBAAgB;KAChB,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAExE,MAAM,gBAAgB,GAAG;;eAEX,gBAAgB,CAAC,OAAO;;;EAGpC,gBAAgB,CAAC,aAA0B,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;qBAEjE,gBAAgB,CAAC,aAAa;;kBAEjC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IAE/C,OAAO;QACN,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,gBAAgB;QACzB,YAAY,EAAE,gBAAgB;KAC9B,CAAC;AACH,CAAC"}
|
|
@@ -4,9 +4,9 @@ exports.createParameterUpdaterChain = exports.parametersSchema = void 0;
|
|
|
4
4
|
const messages_1 = require("@langchain/core/messages");
|
|
5
5
|
const prompts_1 = require("@langchain/core/prompts");
|
|
6
6
|
const zod_1 = require("zod");
|
|
7
|
+
const builder_1 = require("../prompts/builder");
|
|
8
|
+
const parameter_updater_1 = require("../prompts/chains/parameter-updater");
|
|
7
9
|
const errors_1 = require("../errors");
|
|
8
|
-
const instance_url_1 = require("./prompts/instance-url");
|
|
9
|
-
const prompt_builder_1 = require("./prompts/prompt-builder");
|
|
10
10
|
exports.parametersSchema = zod_1.z
|
|
11
11
|
.object({
|
|
12
12
|
parameters: zod_1.z
|
|
@@ -51,13 +51,27 @@ const createParameterUpdaterChain = (llm, options, logger) => {
|
|
|
51
51
|
llmModel: llm._llmType(),
|
|
52
52
|
});
|
|
53
53
|
}
|
|
54
|
-
const
|
|
54
|
+
const context = {
|
|
55
55
|
nodeType: options.nodeType,
|
|
56
56
|
nodeDefinition: options.nodeDefinition,
|
|
57
57
|
requestedChanges: options.requestedChanges,
|
|
58
|
-
hasResourceLocatorParams:
|
|
59
|
-
}
|
|
60
|
-
const
|
|
58
|
+
hasResourceLocatorParams: (0, parameter_updater_1.hasResourceLocatorParameters)(options.nodeDefinition),
|
|
59
|
+
};
|
|
60
|
+
const guides = (0, parameter_updater_1.getMatchingGuides)(context);
|
|
61
|
+
const examples = (0, parameter_updater_1.getMatchingExamples)(context);
|
|
62
|
+
const builder = (0, builder_1.prompt)()
|
|
63
|
+
.section('core_instructions', parameter_updater_1.CORE_INSTRUCTIONS)
|
|
64
|
+
.section('expression_rules', parameter_updater_1.EXPRESSION_RULES);
|
|
65
|
+
for (const guide of guides) {
|
|
66
|
+
const sectionId = `guide_${guide.patterns[0].replace(/[^a-zA-Z0-9]/g, '_')}`;
|
|
67
|
+
builder.section(sectionId, guide.content);
|
|
68
|
+
}
|
|
69
|
+
builder
|
|
70
|
+
.section('common_patterns', parameter_updater_1.COMMON_PATTERNS)
|
|
71
|
+
.examplesIf(examples.length > 0, 'examples', examples)
|
|
72
|
+
.section('output_format', parameter_updater_1.OUTPUT_FORMAT);
|
|
73
|
+
const systemPromptContent = builder.build();
|
|
74
|
+
const tokenEstimate = builder.estimateTokens();
|
|
61
75
|
logger?.debug(`Parameter updater prompt size: ~${tokenEstimate} tokens`);
|
|
62
76
|
const systemPrompt = new messages_1.SystemMessage({
|
|
63
77
|
content: [
|
|
@@ -79,7 +93,7 @@ const createParameterUpdaterChain = (llm, options, logger) => {
|
|
|
79
93
|
},
|
|
80
94
|
{
|
|
81
95
|
type: 'text',
|
|
82
|
-
text:
|
|
96
|
+
text: parameter_updater_1.instanceUrlPrompt,
|
|
83
97
|
},
|
|
84
98
|
],
|
|
85
99
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parameter-updater.js","sourceRoot":"","sources":["../../src/chains/parameter-updater.ts"],"names":[],"mappings":";;;AACA,uDAAyD;AACzD,qDAAyF;AAEzF,6BAAwB;AAExB,
|
|
1
|
+
{"version":3,"file":"parameter-updater.js","sourceRoot":"","sources":["../../src/chains/parameter-updater.ts"],"names":[],"mappings":";;;AACA,uDAAyD;AACzD,qDAAyF;AAEzF,6BAAwB;AAExB,+CAAkE;AAClE,0EAS4C;AAE5C,sCAA4C;AAG/B,QAAA,gBAAgB,GAAG,OAAC;KAC/B,MAAM,CAAC;IACP,UAAU,EAAE,OAAC;SACX,MAAM,CAAC,EAAE,CAAC;SACV,WAAW,EAAE;SACb,QAAQ,CACR,4LAA4L,CAC5L;CACF,CAAC;KACD,QAAQ,CACR,+UAA+U,CAC/U,CAAC;AAEH,MAAM,oBAAoB,GAAG;;;;8BAIC,CAAC;AAE/B,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;mHAwBqF,CAAC;AAK7G,MAAM,2BAA2B,GAAG,CAC1C,GAAkB,EAClB,OAAgC,EAChC,MAAe,EACd,EAAE;IACH,IAAI,OAAO,GAAG,CAAC,oBAAoB,KAAK,UAAU,EAAE,CAAC;QACpD,MAAM,IAAI,wBAAe,CAAC,0CAA0C,EAAE;YACrE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE;SACxB,CAAC,CAAC;IACJ,CAAC;IAGD,MAAM,OAAO,GAAG;QACf,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,wBAAwB,EAAE,IAAA,gDAA4B,EAAC,OAAO,CAAC,cAAc,CAAC;KAC9E,CAAC;IAGF,MAAM,MAAM,GAAG,IAAA,qCAAiB,EAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAA,uCAAmB,EAAC,OAAO,CAAC,CAAC;IAG9C,MAAM,OAAO,GAAG,IAAA,gBAAmB,GAAE;SACnC,OAAO,CAAC,mBAAmB,EAAE,qCAAiB,CAAC;SAC/C,OAAO,CAAC,kBAAkB,EAAE,oCAAgB,CAAC,CAAC;IAGhD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,SAAS,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,EAAE,CAAC;QAC7E,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAGD,OAAO;SACL,OAAO,CAAC,iBAAiB,EAAE,mCAAe,CAAC;SAC3C,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC;SACrD,OAAO,CAAC,eAAe,EAAE,iCAAa,CAAC,CAAC;IAE1C,MAAM,mBAAmB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAG5C,MAAM,aAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAC/C,MAAM,EAAE,KAAK,CAAC,mCAAmC,aAAa,SAAS,CAAC,CAAC;IAGzE,MAAM,YAAY,GAAG,IAAI,wBAAa,CAAC;QACtC,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,mBAAmB;gBACzB,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;aACpC;SACD;KACD,CAAC,CAAC;IACH,MAAM,qBAAqB,GAAG,4BAAkB,CAAC,YAAY,CAAC;QAC7D;YACC,OAAO;YACP;gBACC;oBACC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,oBAAoB;oBAC1B,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;iBACpC;gBACD;oBACC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,qCAAiB;iBACvB;aACD;SACD;KACD,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG,oCAA0B,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;IAE9F,MAAM,MAAM,GAAG,4BAAkB,CAAC,YAAY,CAAC;QAC9C,YAAY;QACZ,qBAAqB;QACrB,sBAAsB;KACtB,CAAC,CAAC;IACH,MAAM,uBAAuB,GAAG,GAAG,CAAC,oBAAoB,CAAC,wBAAgB,CAAC,CAAC;IAC3E,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAEhE,OAAO,kBAAkB,CAAC;AAC3B,CAAC,CAAC;AApFW,QAAA,2BAA2B,+BAoFtC"}
|
|
@@ -1,87 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.promptCategorizationChain = promptCategorizationChain;
|
|
4
|
-
const prompts_1 = require("@langchain/core/prompts");
|
|
5
4
|
const zod_1 = require("zod");
|
|
5
|
+
const categorization_prompt_1 = require("../prompts/chains/categorization.prompt");
|
|
6
6
|
const categorization_1 = require("../types/categorization");
|
|
7
|
-
const examplePrompts = [
|
|
8
|
-
{
|
|
9
|
-
prompt: 'Monitor social channels for product mentions and auto-respond with campaign messages',
|
|
10
|
-
techniques: [
|
|
11
|
-
categorization_1.WorkflowTechnique.MONITORING,
|
|
12
|
-
categorization_1.WorkflowTechnique.CHATBOT,
|
|
13
|
-
categorization_1.WorkflowTechnique.CONTENT_GENERATION,
|
|
14
|
-
],
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
prompt: 'Collect partner referral submissions and verify client instances via BigQuery',
|
|
18
|
-
techniques: [
|
|
19
|
-
categorization_1.WorkflowTechnique.FORM_INPUT,
|
|
20
|
-
categorization_1.WorkflowTechnique.HUMAN_IN_THE_LOOP,
|
|
21
|
-
categorization_1.WorkflowTechnique.NOTIFICATION,
|
|
22
|
-
],
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
prompt: 'Scrape competitor pricing pages weekly and generate a summary report of changes',
|
|
26
|
-
techniques: [
|
|
27
|
-
categorization_1.WorkflowTechnique.SCHEDULING,
|
|
28
|
-
categorization_1.WorkflowTechnique.SCRAPING_AND_RESEARCH,
|
|
29
|
-
categorization_1.WorkflowTechnique.DATA_EXTRACTION,
|
|
30
|
-
categorization_1.WorkflowTechnique.DATA_ANALYSIS,
|
|
31
|
-
],
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
prompt: 'Process uploaded PDF contracts to extract client details and update CRM records',
|
|
35
|
-
techniques: [
|
|
36
|
-
categorization_1.WorkflowTechnique.DOCUMENT_PROCESSING,
|
|
37
|
-
categorization_1.WorkflowTechnique.DATA_EXTRACTION,
|
|
38
|
-
categorization_1.WorkflowTechnique.DATA_TRANSFORMATION,
|
|
39
|
-
categorization_1.WorkflowTechnique.ENRICHMENT,
|
|
40
|
-
],
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
prompt: 'Build a searchable internal knowledge base from past support tickets',
|
|
44
|
-
techniques: [
|
|
45
|
-
categorization_1.WorkflowTechnique.DATA_TRANSFORMATION,
|
|
46
|
-
categorization_1.WorkflowTechnique.DATA_ANALYSIS,
|
|
47
|
-
categorization_1.WorkflowTechnique.KNOWLEDGE_BASE,
|
|
48
|
-
],
|
|
49
|
-
},
|
|
50
|
-
];
|
|
51
|
-
function formatExamplePrompts() {
|
|
52
|
-
return examplePrompts
|
|
53
|
-
.map((example) => `- ${example.prompt} → ${example.techniques.join(',')}`)
|
|
54
|
-
.join('\n');
|
|
55
|
-
}
|
|
56
|
-
const promptCategorizationTemplate = prompts_1.PromptTemplate.fromTemplate(`Analyze the following user prompt and identify the workflow techniques required to fulfill the request.
|
|
57
|
-
Be specific and identify all relevant techniques.
|
|
58
|
-
|
|
59
|
-
<user_prompt>
|
|
60
|
-
{userPrompt}
|
|
61
|
-
</user_prompt>
|
|
62
|
-
|
|
63
|
-
<workflow_techniques>
|
|
64
|
-
{techniques}
|
|
65
|
-
</workflow_techniques>
|
|
66
|
-
|
|
67
|
-
The following prompt categorization examples show a prompt → techniques involved to provide a sense
|
|
68
|
-
of how the categorization should be carried out.
|
|
69
|
-
<example_categorization>
|
|
70
|
-
${formatExamplePrompts()}
|
|
71
|
-
</example_categorization>
|
|
72
|
-
|
|
73
|
-
Select a maximum of 5 techniques that you believe are applicable, but only select them if you are
|
|
74
|
-
confident that they are applicable. If the prompt is ambigious or does not provide an obvious workflow
|
|
75
|
-
do not provide any techniques - if confidence is low avoid providing techniques.
|
|
76
|
-
|
|
77
|
-
Select ALL techniques that apply to this workflow. Most workflows use multiple techniques.
|
|
78
|
-
Rate your confidence in this categorization from 0.0 to 1.0.
|
|
79
|
-
`);
|
|
80
|
-
function formatTechniqueList() {
|
|
81
|
-
return Object.entries(categorization_1.TechniqueDescription)
|
|
82
|
-
.map(([key, description]) => `- **${key}**: ${description}`)
|
|
83
|
-
.join('\n');
|
|
84
|
-
}
|
|
85
7
|
async function promptCategorizationChain(llm, userPrompt) {
|
|
86
8
|
const categorizationSchema = zod_1.z.object({
|
|
87
9
|
techniques: zod_1.z
|
|
@@ -96,9 +18,9 @@ async function promptCategorizationChain(llm, userPrompt) {
|
|
|
96
18
|
.describe('Confidence level in this categorization from 0.0 to 1.0'),
|
|
97
19
|
});
|
|
98
20
|
const modelWithStructure = llm.withStructuredOutput(categorizationSchema);
|
|
99
|
-
const prompt = await promptCategorizationTemplate.invoke({
|
|
21
|
+
const prompt = await categorization_prompt_1.promptCategorizationTemplate.invoke({
|
|
100
22
|
userPrompt,
|
|
101
|
-
techniques: formatTechniqueList(),
|
|
23
|
+
techniques: (0, categorization_prompt_1.formatTechniqueList)(),
|
|
102
24
|
});
|
|
103
25
|
const structuredOutput = await modelWithStructure.invoke(prompt);
|
|
104
26
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-categorization.js","sourceRoot":"","sources":["../../src/chains/prompt-categorization.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"prompt-categorization.js","sourceRoot":"","sources":["../../src/chains/prompt-categorization.ts"],"names":[],"mappings":";;AASA,8DA8BC;AAtCD,6BAAwB;AAExB,kFAGgD;AAChD,2DAAsF;AAE/E,KAAK,UAAU,yBAAyB,CAC9C,GAAkB,EAClB,UAAkB;IAElB,MAAM,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;QACrC,UAAU,EAAE,OAAC;aACX,KAAK,CAAC,OAAC,CAAC,UAAU,CAAC,kCAAiB,CAAC,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CAAC,0EAA0E,CAAC;QACtF,UAAU,EAAE,OAAC;aACX,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CAAC,yDAAyD,CAAC;KACrE,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,GAAG,CAAC,oBAAoB,CAAuB,oBAAoB,CAAC,CAAC;IAEhG,MAAM,MAAM,GAAG,MAAM,oDAA4B,CAAC,MAAM,CAAC;QACxD,UAAU;QACV,UAAU,EAAE,IAAA,2CAAmB,GAAE;KACjC,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEjE,OAAO;QACN,UAAU,EAAE,gBAAgB,CAAC,UAAU;QACvC,UAAU,EAAE,gBAAgB,CAAC,UAAU;KACvC,CAAC;AACH,CAAC"}
|
|
@@ -4,22 +4,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.workflowNameChain = workflowNameChain;
|
|
7
|
-
const prompts_1 = require("@langchain/core/prompts");
|
|
8
7
|
const zod_1 = __importDefault(require("zod"));
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
<initial_prompt>
|
|
12
|
-
{initialPrompt}
|
|
13
|
-
</initial_prompt>
|
|
14
|
-
|
|
15
|
-
This name should be concise, descriptive, and suitable for a workflow that automates tasks related to the given prompt. The name should be in a format that is easy to read and understand. Do not include the word "workflow" in the name.
|
|
16
|
-
`);
|
|
8
|
+
const workflow_name_prompt_1 = require("../prompts/chains/workflow-name.prompt");
|
|
17
9
|
async function workflowNameChain(llm, initialPrompt) {
|
|
18
10
|
const nameSchema = zod_1.default.object({
|
|
19
11
|
name: zod_1.default.string().min(10).max(128).describe('Name of the workflow based on the prompt'),
|
|
20
12
|
});
|
|
21
13
|
const modelWithStructure = llm.withStructuredOutput(nameSchema);
|
|
22
|
-
const prompt = await workflowNamingPromptTemplate.invoke({
|
|
14
|
+
const prompt = await workflow_name_prompt_1.workflowNamingPromptTemplate.invoke({
|
|
23
15
|
initialPrompt,
|
|
24
16
|
});
|
|
25
17
|
const structuredOutput = (await modelWithStructure.invoke(prompt));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-name.js","sourceRoot":"","sources":["../../src/chains/workflow-name.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"workflow-name.js","sourceRoot":"","sources":["../../src/chains/workflow-name.ts"],"names":[],"mappings":";;;;;AAKA,8CAiBC;AArBD,8CAAoB;AAEpB,gFAAqF;AAE9E,KAAK,UAAU,iBAAiB,CAAC,GAAkB,EAAE,aAAqB;IAEhF,MAAM,UAAU,GAAG,aAAC,CAAC,MAAM,CAAC;QAC3B,IAAI,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,0CAA0C,CAAC;KACtF,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,GAAG,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAEhE,MAAM,MAAM,GAAG,MAAM,mDAA4B,CAAC,MAAM,CAAC;QACxD,aAAa;KACb,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,CAAC,MAAM,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAA+B,CAAC;IAEjG,OAAO;QACN,IAAI,EAAE,gBAAgB,CAAC,IAAI;KAC3B,CAAC;AACH,CAAC"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -10,3 +10,5 @@ export declare const MAX_NODE_EXAMPLE_CHARS: number;
|
|
|
10
10
|
export declare const MAX_BUILDER_ITERATIONS = 30;
|
|
11
11
|
export declare const MAX_CONFIGURATOR_ITERATIONS = 30;
|
|
12
12
|
export declare const MAX_DISCOVERY_ITERATIONS = 50;
|
|
13
|
+
export declare const MAX_MULTI_AGENT_STREAM_ITERATIONS: number;
|
|
14
|
+
export declare const MAX_SINGLE_AGENT_STREAM_ITERATIONS = 50;
|
package/dist/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MAX_DISCOVERY_ITERATIONS = exports.MAX_CONFIGURATOR_ITERATIONS = exports.MAX_BUILDER_ITERATIONS = exports.MAX_NODE_EXAMPLE_CHARS = exports.AVG_CHARS_PER_TOKEN_ANTHROPIC = exports.MAX_WORKFLOW_LENGTH_TOKENS = exports.DEFAULT_AUTO_COMPACT_THRESHOLD_TOKENS = exports.MAX_PARAMETER_VALUE_LENGTH = exports.MAX_INPUT_TOKENS = exports.MAX_OUTPUT_TOKENS = exports.MAX_TOTAL_TOKENS = exports.MAX_AI_BUILDER_PROMPT_LENGTH = void 0;
|
|
3
|
+
exports.MAX_SINGLE_AGENT_STREAM_ITERATIONS = exports.MAX_MULTI_AGENT_STREAM_ITERATIONS = exports.MAX_DISCOVERY_ITERATIONS = exports.MAX_CONFIGURATOR_ITERATIONS = exports.MAX_BUILDER_ITERATIONS = exports.MAX_NODE_EXAMPLE_CHARS = exports.AVG_CHARS_PER_TOKEN_ANTHROPIC = exports.MAX_WORKFLOW_LENGTH_TOKENS = exports.DEFAULT_AUTO_COMPACT_THRESHOLD_TOKENS = exports.MAX_PARAMETER_VALUE_LENGTH = exports.MAX_INPUT_TOKENS = exports.MAX_OUTPUT_TOKENS = exports.MAX_TOTAL_TOKENS = exports.MAX_AI_BUILDER_PROMPT_LENGTH = void 0;
|
|
4
4
|
exports.MAX_AI_BUILDER_PROMPT_LENGTH = 5000;
|
|
5
5
|
exports.MAX_TOTAL_TOKENS = 200_000;
|
|
6
6
|
exports.MAX_OUTPUT_TOKENS = 16_000;
|
|
@@ -13,4 +13,6 @@ exports.MAX_NODE_EXAMPLE_CHARS = 5000 * exports.AVG_CHARS_PER_TOKEN_ANTHROPIC;
|
|
|
13
13
|
exports.MAX_BUILDER_ITERATIONS = 30;
|
|
14
14
|
exports.MAX_CONFIGURATOR_ITERATIONS = 30;
|
|
15
15
|
exports.MAX_DISCOVERY_ITERATIONS = 50;
|
|
16
|
+
exports.MAX_MULTI_AGENT_STREAM_ITERATIONS = exports.MAX_BUILDER_ITERATIONS + exports.MAX_CONFIGURATOR_ITERATIONS + exports.MAX_DISCOVERY_ITERATIONS;
|
|
17
|
+
exports.MAX_SINGLE_AGENT_STREAM_ITERATIONS = 50;
|
|
16
18
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAIa,QAAA,4BAA4B,GAAG,IAAI,CAAC;AAKpC,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,iBAAiB,GAAG,MAAM,CAAC;AAC3B,QAAA,gBAAgB,GAAG,wBAAgB,GAAG,yBAAiB,GAAG,KAAK,CAAC;AAMhE,QAAA,0BAA0B,GAAG,MAAM,CAAC;AAQpC,QAAA,qCAAqC,GAAG,wBAAgB,GAAG,MAAM,CAAC;AAMlE,QAAA,0BAA0B,GAAG,MAAM,CAAC;AAMpC,QAAA,6BAA6B,GAAG,GAAG,CAAC;AAOpC,QAAA,sBAAsB,GAAG,IAAI,GAAG,qCAA6B,CAAC;AAM9D,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAC5B,QAAA,2BAA2B,GAAG,EAAE,CAAC;AACjC,QAAA,wBAAwB,GAAG,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAIa,QAAA,4BAA4B,GAAG,IAAI,CAAC;AAKpC,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,iBAAiB,GAAG,MAAM,CAAC;AAC3B,QAAA,gBAAgB,GAAG,wBAAgB,GAAG,yBAAiB,GAAG,KAAK,CAAC;AAMhE,QAAA,0BAA0B,GAAG,MAAM,CAAC;AAQpC,QAAA,qCAAqC,GAAG,wBAAgB,GAAG,MAAM,CAAC;AAMlE,QAAA,0BAA0B,GAAG,MAAM,CAAC;AAMpC,QAAA,6BAA6B,GAAG,GAAG,CAAC;AAOpC,QAAA,sBAAsB,GAAG,IAAI,GAAG,qCAA6B,CAAC;AAM9D,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAC5B,QAAA,2BAA2B,GAAG,EAAE,CAAC;AACjC,QAAA,wBAAwB,GAAG,EAAE,CAAC;AAC9B,QAAA,iCAAiC,GAC7C,8BAAsB,GAAG,mCAA2B,GAAG,gCAAwB,CAAC;AACpE,QAAA,kCAAkC,GAAG,EAAE,CAAC"}
|
|
@@ -2,6 +2,7 @@ import type { BaseChatModel } from '@langchain/core/language_models/chat_models'
|
|
|
2
2
|
import { type MemorySaver } from '@langchain/langgraph';
|
|
3
3
|
import type { Logger } from '@n8n/backend-common';
|
|
4
4
|
import type { INodeTypeDescription } from 'n8n-workflow';
|
|
5
|
+
import type { BuilderFeatureFlags } from './workflow-builder-agent';
|
|
5
6
|
export interface MultiAgentSubgraphConfig {
|
|
6
7
|
parsedNodeTypes: INodeTypeDescription[];
|
|
7
8
|
llmSimpleTask: BaseChatModel;
|
|
@@ -9,6 +10,8 @@ export interface MultiAgentSubgraphConfig {
|
|
|
9
10
|
logger?: Logger;
|
|
10
11
|
instanceUrl?: string;
|
|
11
12
|
checkpointer?: MemorySaver;
|
|
13
|
+
autoCompactThresholdTokens?: number;
|
|
14
|
+
featureFlags?: BuilderFeatureFlags;
|
|
12
15
|
}
|
|
13
16
|
export declare function createMultiAgentWorkflowWithSubgraphs(config: MultiAgentSubgraphConfig): import("@langchain/langgraph").CompiledStateGraph<{
|
|
14
17
|
messages: import("@langchain/core/messages").BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[];
|
|
@@ -23,6 +26,9 @@ export declare function createMultiAgentWorkflowWithSubgraphs(config: MultiAgent
|
|
|
23
26
|
discoveryContext: import("./types/discovery-types").DiscoveryContext | null;
|
|
24
27
|
workflowOperations: import("./types").WorkflowOperation[];
|
|
25
28
|
coordinationLog: import("./types/coordination").CoordinationLogEntry[];
|
|
29
|
+
previousSummary: string;
|
|
30
|
+
templateIds: number[];
|
|
31
|
+
nodeConfigurations: import("./types").NodeConfigurationsMap;
|
|
26
32
|
}, {
|
|
27
33
|
messages?: import("@langchain/core/messages").BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[] | undefined;
|
|
28
34
|
workflowJSON?: import("./types").SimpleWorkflow | undefined;
|
|
@@ -36,7 +42,10 @@ export declare function createMultiAgentWorkflowWithSubgraphs(config: MultiAgent
|
|
|
36
42
|
discoveryContext?: import("./types/discovery-types").DiscoveryContext | null | undefined;
|
|
37
43
|
workflowOperations?: import("./types").WorkflowOperation[] | undefined;
|
|
38
44
|
coordinationLog?: import("./types/coordination").CoordinationLogEntry[] | undefined;
|
|
39
|
-
|
|
45
|
+
previousSummary?: string | undefined;
|
|
46
|
+
templateIds?: number[] | undefined;
|
|
47
|
+
nodeConfigurations?: import("./types").NodeConfigurationsMap | undefined;
|
|
48
|
+
}, "responder" | "supervisor" | "create_workflow_name" | "configurator_subgraph" | "discovery_subgraph" | "builder_subgraph" | "delete_messages" | "compact_messages" | "process_operations" | "__start__" | "cleanup_dangling" | "check_state", {
|
|
40
49
|
messages: import("@langchain/langgraph").BinaryOperatorAggregate<import("@langchain/core/messages").BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[], import("@langchain/core/messages").BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[]>;
|
|
41
50
|
workflowJSON: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types").SimpleWorkflow, import("./types").SimpleWorkflow>;
|
|
42
51
|
workflowContext: import("@langchain/langgraph").BinaryOperatorAggregate<{
|
|
@@ -54,6 +63,9 @@ export declare function createMultiAgentWorkflowWithSubgraphs(config: MultiAgent
|
|
|
54
63
|
discoveryContext: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types/discovery-types").DiscoveryContext | null, import("./types/discovery-types").DiscoveryContext | null>;
|
|
55
64
|
workflowOperations: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types").WorkflowOperation[], import("./types").WorkflowOperation[]>;
|
|
56
65
|
coordinationLog: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types/coordination").CoordinationLogEntry[], import("./types/coordination").CoordinationLogEntry[]>;
|
|
66
|
+
previousSummary: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
|
|
67
|
+
templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
|
|
68
|
+
nodeConfigurations: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types").NodeConfigurationsMap, import("./types").NodeConfigurationsMap>;
|
|
57
69
|
}, {
|
|
58
70
|
messages: import("@langchain/langgraph").BinaryOperatorAggregate<import("@langchain/core/messages").BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[], import("@langchain/core/messages").BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[]>;
|
|
59
71
|
workflowJSON: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types").SimpleWorkflow, import("./types").SimpleWorkflow>;
|
|
@@ -72,6 +84,9 @@ export declare function createMultiAgentWorkflowWithSubgraphs(config: MultiAgent
|
|
|
72
84
|
discoveryContext: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types/discovery-types").DiscoveryContext | null, import("./types/discovery-types").DiscoveryContext | null>;
|
|
73
85
|
workflowOperations: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types").WorkflowOperation[], import("./types").WorkflowOperation[]>;
|
|
74
86
|
coordinationLog: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types/coordination").CoordinationLogEntry[], import("./types/coordination").CoordinationLogEntry[]>;
|
|
87
|
+
previousSummary: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
|
|
88
|
+
templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
|
|
89
|
+
nodeConfigurations: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types").NodeConfigurationsMap, import("./types").NodeConfigurationsMap>;
|
|
75
90
|
}, import("@langchain/langgraph").StateDefinition, {
|
|
76
91
|
supervisor: {
|
|
77
92
|
nextPhase: "responder" | "discovery" | "builder" | "configurator";
|
|
@@ -79,6 +94,28 @@ export declare function createMultiAgentWorkflowWithSubgraphs(config: MultiAgent
|
|
|
79
94
|
responder: {
|
|
80
95
|
messages: import("@langchain/core/messages").AIMessage<import("@langchain/core/messages").MessageStructure>[];
|
|
81
96
|
};
|
|
97
|
+
check_state: {
|
|
98
|
+
nextPhase: import("./utils/state-modifier").StateModificationAction;
|
|
99
|
+
};
|
|
100
|
+
cleanup_dangling: {
|
|
101
|
+
messages: import("@langchain/core/messages").RemoveMessage[];
|
|
102
|
+
};
|
|
103
|
+
compact_messages: {
|
|
104
|
+
previousSummary: string;
|
|
105
|
+
messages: import("@langchain/core/messages").BaseMessage[];
|
|
106
|
+
coordinationLog: import("./types/coordination").CoordinationLogEntry[];
|
|
107
|
+
};
|
|
108
|
+
delete_messages: {
|
|
109
|
+
messages: import("@langchain/core/messages").RemoveMessage[];
|
|
110
|
+
workflowJSON: import("./types").SimpleWorkflow;
|
|
111
|
+
previousSummary: string;
|
|
112
|
+
discoveryContext: null;
|
|
113
|
+
coordinationLog: import("./types/coordination").CoordinationLogEntry[];
|
|
114
|
+
workflowOperations: [];
|
|
115
|
+
};
|
|
116
|
+
create_workflow_name: {
|
|
117
|
+
workflowJSON: import("./types").SimpleWorkflow;
|
|
118
|
+
};
|
|
82
119
|
discovery_subgraph: Partial<Record<string, unknown>>;
|
|
83
120
|
builder_subgraph: Partial<Record<string, unknown>>;
|
|
84
121
|
configurator_subgraph: Partial<Record<string, unknown>>;
|
|
@@ -13,6 +13,7 @@ const discovery_subgraph_1 = require("./subgraphs/discovery.subgraph");
|
|
|
13
13
|
const coordination_1 = require("./types/coordination");
|
|
14
14
|
const coordination_log_1 = require("./utils/coordination-log");
|
|
15
15
|
const operations_processor_1 = require("./utils/operations-processor");
|
|
16
|
+
const state_modifier_1 = require("./utils/state-modifier");
|
|
16
17
|
function routeToNode(next) {
|
|
17
18
|
const nodeMapping = {
|
|
18
19
|
responder: 'responder',
|
|
@@ -59,7 +60,7 @@ function createSubgraphNodeHandler(subgraph, compiledGraph, name, logger, recurs
|
|
|
59
60
|
};
|
|
60
61
|
}
|
|
61
62
|
function createMultiAgentWorkflowWithSubgraphs(config) {
|
|
62
|
-
const { parsedNodeTypes, llmComplexTask, logger, instanceUrl, checkpointer } = config;
|
|
63
|
+
const { parsedNodeTypes, llmComplexTask, logger, instanceUrl, checkpointer, autoCompactThresholdTokens = constants_1.DEFAULT_AUTO_COMPACT_THRESHOLD_TOKENS, featureFlags, } = config;
|
|
63
64
|
const supervisorAgent = new supervisor_agent_1.SupervisorAgent({ llm: llmComplexTask });
|
|
64
65
|
const responderAgent = new responder_agent_1.ResponderAgent({ llm: llmComplexTask });
|
|
65
66
|
const discoverySubgraph = new discovery_subgraph_1.DiscoverySubgraph();
|
|
@@ -69,6 +70,7 @@ function createMultiAgentWorkflowWithSubgraphs(config) {
|
|
|
69
70
|
parsedNodeTypes,
|
|
70
71
|
llm: llmComplexTask,
|
|
71
72
|
logger,
|
|
73
|
+
featureFlags,
|
|
72
74
|
});
|
|
73
75
|
const compiledBuilder = builderSubgraph.create({ parsedNodeTypes, llm: llmComplexTask, logger });
|
|
74
76
|
const compiledConfigurator = configuratorSubgraph.create({
|
|
@@ -83,6 +85,7 @@ function createMultiAgentWorkflowWithSubgraphs(config) {
|
|
|
83
85
|
messages: state.messages,
|
|
84
86
|
workflowJSON: state.workflowJSON,
|
|
85
87
|
coordinationLog: state.coordinationLog,
|
|
88
|
+
previousSummary: state.previousSummary,
|
|
86
89
|
});
|
|
87
90
|
return {
|
|
88
91
|
nextPhase: routing.next,
|
|
@@ -94,6 +97,7 @@ function createMultiAgentWorkflowWithSubgraphs(config) {
|
|
|
94
97
|
coordinationLog: state.coordinationLog,
|
|
95
98
|
discoveryContext: state.discoveryContext,
|
|
96
99
|
workflowJSON: state.workflowJSON,
|
|
100
|
+
previousSummary: state.previousSummary,
|
|
97
101
|
});
|
|
98
102
|
return {
|
|
99
103
|
messages: [response],
|
|
@@ -106,13 +110,41 @@ function createMultiAgentWorkflowWithSubgraphs(config) {
|
|
|
106
110
|
workflowOperations: [],
|
|
107
111
|
};
|
|
108
112
|
})
|
|
113
|
+
.addNode('check_state', (state) => ({
|
|
114
|
+
nextPhase: (0, state_modifier_1.determineStateAction)(state, autoCompactThresholdTokens),
|
|
115
|
+
}))
|
|
116
|
+
.addNode('cleanup_dangling', (state) => (0, state_modifier_1.handleCleanupDangling)(state.messages, logger))
|
|
117
|
+
.addNode('compact_messages', async (state) => {
|
|
118
|
+
const isAutoCompact = state.messages[state.messages.length - 1]?.content !== '/compact';
|
|
119
|
+
return await (0, state_modifier_1.handleCompactMessages)(state.messages, state.previousSummary ?? '', llmComplexTask, isAutoCompact);
|
|
120
|
+
})
|
|
121
|
+
.addNode('delete_messages', (state) => (0, state_modifier_1.handleDeleteMessages)(state.messages))
|
|
122
|
+
.addNode('create_workflow_name', async (state) => await (0, state_modifier_1.handleCreateWorkflowName)(state.messages, state.workflowJSON, llmComplexTask, logger))
|
|
109
123
|
.addNode('discovery_subgraph', createSubgraphNodeHandler(discoverySubgraph, compiledDiscovery, 'discovery_subgraph', logger, constants_1.MAX_DISCOVERY_ITERATIONS))
|
|
110
124
|
.addNode('builder_subgraph', createSubgraphNodeHandler(builderSubgraph, compiledBuilder, 'builder_subgraph', logger, constants_1.MAX_BUILDER_ITERATIONS))
|
|
111
125
|
.addNode('configurator_subgraph', createSubgraphNodeHandler(configuratorSubgraph, compiledConfigurator, 'configurator_subgraph', logger, constants_1.MAX_CONFIGURATOR_ITERATIONS))
|
|
112
126
|
.addEdge('discovery_subgraph', 'process_operations')
|
|
113
127
|
.addEdge('builder_subgraph', 'process_operations')
|
|
114
128
|
.addEdge('configurator_subgraph', 'process_operations')
|
|
115
|
-
.addEdge(langgraph_1.START, '
|
|
129
|
+
.addEdge(langgraph_1.START, 'check_state')
|
|
130
|
+
.addConditionalEdges('check_state', (state) => {
|
|
131
|
+
const routes = {
|
|
132
|
+
cleanup_dangling: 'cleanup_dangling',
|
|
133
|
+
compact_messages: 'compact_messages',
|
|
134
|
+
delete_messages: 'delete_messages',
|
|
135
|
+
create_workflow_name: 'create_workflow_name',
|
|
136
|
+
auto_compact_messages: 'compact_messages',
|
|
137
|
+
continue: 'supervisor',
|
|
138
|
+
};
|
|
139
|
+
return routes[state.nextPhase] ?? 'supervisor';
|
|
140
|
+
})
|
|
141
|
+
.addEdge('cleanup_dangling', 'check_state')
|
|
142
|
+
.addEdge('delete_messages', 'responder')
|
|
143
|
+
.addEdge('create_workflow_name', 'supervisor')
|
|
144
|
+
.addConditionalEdges('compact_messages', (state) => {
|
|
145
|
+
const hasMessages = state.messages.length > 0;
|
|
146
|
+
return hasMessages ? 'check_state' : 'responder';
|
|
147
|
+
})
|
|
116
148
|
.addConditionalEdges('supervisor', (state) => routeToNode(state.nextPhase))
|
|
117
149
|
.addConditionalEdges('process_operations', (state) => routeToNode((0, coordination_log_1.getNextPhaseFromLog)(state.coordinationLog)))
|
|
118
150
|
.addEdge('responder', langgraph_1.END)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-agent-workflow-subgraphs.js","sourceRoot":"","sources":["../src/multi-agent-workflow-subgraphs.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"multi-agent-workflow-subgraphs.js","sourceRoot":"","sources":["../src/multi-agent-workflow-subgraphs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { BaseMessage } from '@langchain/core/messages';
|
|
2
2
|
import type { CoordinationLogEntry } from './types/coordination';
|
|
3
3
|
import type { DiscoveryContext } from './types/discovery-types';
|
|
4
|
+
import type { NodeConfigurationsMap } from './types/tools';
|
|
4
5
|
import type { SimpleWorkflow, WorkflowOperation } from './types/workflow';
|
|
5
6
|
export declare const ParentGraphState: import("@langchain/langgraph").AnnotationRoot<{
|
|
6
7
|
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>[]>;
|
|
@@ -20,4 +21,7 @@ export declare const ParentGraphState: import("@langchain/langgraph").Annotation
|
|
|
20
21
|
discoveryContext: import("@langchain/langgraph").BinaryOperatorAggregate<DiscoveryContext | null, DiscoveryContext | null>;
|
|
21
22
|
workflowOperations: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowOperation[], WorkflowOperation[]>;
|
|
22
23
|
coordinationLog: import("@langchain/langgraph").BinaryOperatorAggregate<CoordinationLogEntry[], CoordinationLogEntry[]>;
|
|
24
|
+
previousSummary: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
|
|
25
|
+
templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
|
|
26
|
+
nodeConfigurations: import("@langchain/langgraph").BinaryOperatorAggregate<NodeConfigurationsMap, NodeConfigurationsMap>;
|
|
23
27
|
}>;
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ParentGraphState = void 0;
|
|
4
4
|
const langgraph_1 = require("@langchain/langgraph");
|
|
5
|
+
const state_reducers_1 = require("./utils/state-reducers");
|
|
5
6
|
exports.ParentGraphState = langgraph_1.Annotation.Root({
|
|
6
7
|
messages: (0, langgraph_1.Annotation)({
|
|
7
|
-
reducer:
|
|
8
|
+
reducer: langgraph_1.messagesStateReducer,
|
|
8
9
|
default: () => [],
|
|
9
10
|
}),
|
|
10
11
|
workflowJSON: (0, langgraph_1.Annotation)({
|
|
@@ -30,5 +31,17 @@ exports.ParentGraphState = langgraph_1.Annotation.Root({
|
|
|
30
31
|
reducer: (x, y) => x.concat(y),
|
|
31
32
|
default: () => [],
|
|
32
33
|
}),
|
|
34
|
+
previousSummary: (0, langgraph_1.Annotation)({
|
|
35
|
+
reducer: (x, y) => y ?? x,
|
|
36
|
+
default: () => '',
|
|
37
|
+
}),
|
|
38
|
+
templateIds: (0, langgraph_1.Annotation)({
|
|
39
|
+
reducer: state_reducers_1.appendArrayReducer,
|
|
40
|
+
default: () => [],
|
|
41
|
+
}),
|
|
42
|
+
nodeConfigurations: (0, langgraph_1.Annotation)({
|
|
43
|
+
reducer: state_reducers_1.nodeConfigurationsReducer,
|
|
44
|
+
default: () => ({}),
|
|
45
|
+
}),
|
|
33
46
|
});
|
|
34
47
|
//# sourceMappingURL=parent-graph-state.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parent-graph-state.js","sourceRoot":"","sources":["../src/parent-graph-state.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"parent-graph-state.js","sourceRoot":"","sources":["../src/parent-graph-state.ts"],"names":[],"mappings":";;;AACA,oDAAwE;AAMxE,2DAAuF;AAS1E,QAAA,gBAAgB,GAAG,sBAAU,CAAC,IAAI,CAAC;IAE/C,QAAQ,EAAE,IAAA,sBAAU,EAAgB;QACnC,OAAO,EAAE,gCAAoB;QAC7B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAGF,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;IAGF,eAAe,EAAE,IAAA,sBAAU,EAA6C;QACvE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;KACzB,CAAC;IAGF,SAAS,EAAE,IAAA,sBAAU,EAAS;QAC7B,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAGF,gBAAgB,EAAE,IAAA,sBAAU,EAA0B;QACrD,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;KACnB,CAAC;IAGF,kBAAkB,EAAE,IAAA,sBAAU,EAAsB;QACnD,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAGF,eAAe,EAAE,IAAA,sBAAU,EAAyB;QACnD,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,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,EAAE;KACjB,CAAC;IAGF,WAAW,EAAE,IAAA,sBAAU,EAAW;QACjC,OAAO,EAAE,mCAAkB;QAC3B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAIF,kBAAkB,EAAE,IAAA,sBAAU,EAAwB;QACrD,OAAO,EAAE,0CAAyB;QAClC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;KACnB,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function buildBuilderPrompt(): string;
|