@n8n/agents 0.5.2 → 0.7.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/build.tsbuildinfo +1 -1
- package/dist/index.d.ts +12 -8
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/integrations/langsmith.d.ts +2 -0
- package/dist/integrations/langsmith.js +117 -2
- package/dist/integrations/langsmith.js.map +1 -1
- package/dist/runtime/agent-runtime.d.ts +6 -0
- package/dist/runtime/agent-runtime.js +291 -80
- package/dist/runtime/agent-runtime.js.map +1 -1
- package/dist/runtime/event-bus.d.ts +2 -0
- package/dist/runtime/event-bus.js +7 -0
- package/dist/runtime/event-bus.js.map +1 -1
- package/dist/runtime/json-value.d.ts +2 -0
- package/dist/runtime/json-value.js +43 -0
- package/dist/runtime/json-value.js.map +1 -0
- package/dist/runtime/memory-store.d.ts +40 -2
- package/dist/runtime/memory-store.js +138 -3
- package/dist/runtime/memory-store.js.map +1 -1
- package/dist/runtime/message-list.d.ts +5 -0
- package/dist/runtime/message-list.js +47 -0
- package/dist/runtime/message-list.js.map +1 -1
- package/dist/runtime/messages.d.ts +0 -2
- package/dist/runtime/messages.js +127 -101
- package/dist/runtime/messages.js.map +1 -1
- package/dist/runtime/model-factory.js +117 -34
- package/dist/runtime/model-factory.js.map +1 -1
- package/dist/runtime/provider-credentials.d.ts +167 -0
- package/dist/runtime/provider-credentials.js +34 -0
- package/dist/runtime/provider-credentials.js.map +1 -0
- package/dist/runtime/run-state.js.map +1 -1
- package/dist/runtime/runtime-helpers.d.ts +3 -4
- package/dist/runtime/runtime-helpers.js +6 -32
- package/dist/runtime/runtime-helpers.js.map +1 -1
- package/dist/runtime/stream.js +25 -43
- package/dist/runtime/stream.js.map +1 -1
- package/dist/runtime/strip-orphaned-tool-messages.js +1 -25
- package/dist/runtime/strip-orphaned-tool-messages.js.map +1 -1
- package/dist/runtime/title-generation.d.ts +12 -3
- package/dist/runtime/title-generation.js +72 -3
- package/dist/runtime/title-generation.js.map +1 -1
- package/dist/runtime/tool-adapter.d.ts +1 -1
- package/dist/runtime/tool-adapter.js +3 -2
- package/dist/runtime/tool-adapter.js.map +1 -1
- package/dist/runtime/working-memory.d.ts +1 -1
- package/dist/runtime/working-memory.js +1 -1
- package/dist/runtime/working-memory.js.map +1 -1
- package/dist/sdk/agent.d.ts +19 -15
- package/dist/sdk/agent.js +22 -201
- package/dist/sdk/agent.js.map +1 -1
- package/dist/sdk/eval.d.ts +0 -3
- package/dist/sdk/eval.js +4 -9
- package/dist/sdk/eval.js.map +1 -1
- package/dist/sdk/provider-capabilities.js +4 -2
- package/dist/sdk/provider-capabilities.js.map +1 -1
- package/dist/sdk/provider-tools.d.ts +17 -2
- package/dist/sdk/provider-tools.js +19 -0
- package/dist/sdk/provider-tools.js.map +1 -1
- package/dist/sdk/telemetry.d.ts +2 -0
- package/dist/sdk/telemetry.js +6 -0
- package/dist/sdk/telemetry.js.map +1 -1
- package/dist/sdk/tool.d.ts +17 -10
- package/dist/sdk/tool.js +34 -0
- package/dist/sdk/tool.js.map +1 -1
- package/dist/sdk/verify.js +1 -4
- package/dist/sdk/verify.js.map +1 -1
- package/dist/storage/base-memory.d.ts +64 -0
- package/dist/storage/base-memory.js +54 -0
- package/dist/storage/base-memory.js.map +1 -0
- package/dist/storage/postgres-memory.d.ts +33 -16
- package/dist/storage/postgres-memory.js +46 -25
- package/dist/storage/postgres-memory.js.map +1 -1
- package/dist/storage/sqlite-memory.d.ts +16 -6
- package/dist/storage/sqlite-memory.js +16 -10
- package/dist/storage/sqlite-memory.js.map +1 -1
- package/dist/types/index.d.ts +4 -2
- package/dist/types/index.js +3 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/runtime/event.d.ts +2 -2
- package/dist/types/sdk/agent-builder.d.ts +0 -3
- package/dist/types/sdk/agent.d.ts +63 -25
- package/dist/types/sdk/credential-provider.d.ts +2 -3
- package/dist/types/sdk/memory.d.ts +23 -2
- package/dist/types/sdk/message.d.ts +11 -10
- package/dist/types/sdk/observation.d.ts +100 -0
- package/dist/types/sdk/observation.js +5 -0
- package/dist/types/sdk/observation.js.map +1 -0
- package/dist/types/sdk/tool-descriptor.d.ts +13 -0
- package/dist/types/sdk/{schema.js → tool-descriptor.js} +1 -1
- package/dist/types/sdk/tool-descriptor.js.map +1 -0
- package/dist/types/sdk/tool.d.ts +8 -3
- package/dist/types/telemetry.d.ts +1 -0
- package/dist/utils/parse.d.ts +10 -0
- package/dist/utils/parse.js +26 -0
- package/dist/utils/parse.js.map +1 -0
- package/dist/utils/zod.d.ts +1 -1
- package/dist/utils/zod.js.map +1 -1
- package/dist/workspace/tools/batch-str-replace-file.d.ts +3 -0
- package/dist/workspace/tools/batch-str-replace-file.js +67 -0
- package/dist/workspace/tools/batch-str-replace-file.js.map +1 -0
- package/dist/workspace/tools/str-replace-file.d.ts +3 -0
- package/dist/workspace/tools/str-replace-file.js +51 -0
- package/dist/workspace/tools/str-replace-file.js.map +1 -0
- package/dist/workspace/tools/workspace-tools.js +4 -0
- package/dist/workspace/tools/workspace-tools.js.map +1 -1
- package/package.json +17 -8
- package/dist/codegen/generate-agent-code.d.ts +0 -2
- package/dist/codegen/generate-agent-code.js +0 -197
- package/dist/codegen/generate-agent-code.js.map +0 -1
- package/dist/sdk/from-schema.d.ts +0 -15
- package/dist/sdk/from-schema.js +0 -218
- package/dist/sdk/from-schema.js.map +0 -1
- package/dist/types/sdk/schema.d.ts +0 -99
- package/dist/types/sdk/schema.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/utils/parse.ts"],"names":[],"mappings":";;AAyBA,0CAcC;AAnCD,+BAAoC;AAMpC,IAAI,WAAqD,CAAC;AAE1D,SAAS,MAAM;IACd,IAAI,CAAC,WAAW,EAAE,CAAC;QAElB,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,KAAK,CAAgC,CAAC;QACvE,WAAW,GAAG,IAAI,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC;AAMM,KAAK,UAAU,eAAe,CACpC,MAA6B,EAC7B,IAAa;IAEb,IAAI,IAAA,iBAAW,EAAC,MAAM,CAAC,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAChE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACxD,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IACrB,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACnD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;AACnE,CAAC"}
|
package/dist/utils/zod.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { JSONSchema7 } from 'json-schema';
|
|
2
2
|
import type { ZodType } from 'zod';
|
|
3
|
-
export declare function isZodSchema(schema:
|
|
3
|
+
export declare function isZodSchema(schema: unknown): schema is ZodType;
|
|
4
4
|
export declare function zodToJsonSchema(schema?: unknown): JSONSchema7 | null;
|
package/dist/utils/zod.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod.js","sourceRoot":"","sources":["../../src/utils/zod.ts"],"names":[],"mappings":";;AAKA,kCAMC;AAED,0CAgBC;AA3BD,2DAA4E;AAG5E,SAAgB,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"zod.js","sourceRoot":"","sources":["../../src/utils/zod.ts"],"names":[],"mappings":";;AAKA,kCAMC;AAED,0CAgBC;AA3BD,2DAA4E;AAG5E,SAAgB,WAAW,CAAC,MAAe;IAC1C,OAAO,CACN,OAAO,MAAM,KAAK,QAAQ;QAC1B,MAAM,KAAK,IAAI;QACf,OAAQ,MAAkC,CAAC,SAAS,KAAK,UAAU,CACnE,CAAC;AACH,CAAC;AAED,SAAgB,eAAe,CAAC,MAAgB;IAC/C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC;QACJ,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;YACzB,IAAI,cAAc,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;gBAC3E,OAAQ,MAAyD,CAAC,YAAY,EAAE,CAAC;YAClF,CAAC;YACD,OAAO,IAAA,oCAAmB,EAAC,MAAM,CAA4B,CAAC;QAC/D,CAAC;QACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACnD,OAAO,MAAM,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createBatchStrReplaceFileTool = createBatchStrReplaceFileTool;
|
|
4
|
+
const text_editor_1 = require("@n8n/ai-utilities/text-editor");
|
|
5
|
+
const zod_1 = require("zod");
|
|
6
|
+
const tool_1 = require("../../sdk/tool");
|
|
7
|
+
const strReplacementSchema = zod_1.z.object({
|
|
8
|
+
old_str: zod_1.z.string().describe('Exact text to replace. Must match exactly and be unique.'),
|
|
9
|
+
new_str: zod_1.z.string().describe('Replacement text to write in place of old_str.'),
|
|
10
|
+
});
|
|
11
|
+
const inputSchema = zod_1.z.object({
|
|
12
|
+
path: zod_1.z.string().describe('Path to the file to edit'),
|
|
13
|
+
replacements: zod_1.z
|
|
14
|
+
.array(strReplacementSchema)
|
|
15
|
+
.describe('Ordered exact string replacements applied atomically.'),
|
|
16
|
+
});
|
|
17
|
+
const batchReplaceResultSchema = zod_1.z.object({
|
|
18
|
+
index: zod_1.z.number().int(),
|
|
19
|
+
old_str: zod_1.z.string(),
|
|
20
|
+
status: zod_1.z.enum(['success', 'failed', 'not_attempted']),
|
|
21
|
+
error: zod_1.z.string().optional(),
|
|
22
|
+
});
|
|
23
|
+
const outputSchema = zod_1.z.object({
|
|
24
|
+
success: zod_1.z.boolean().describe('Whether all replacements were applied'),
|
|
25
|
+
result: zod_1.z.string().optional().describe('Success message'),
|
|
26
|
+
error: zod_1.z.string().optional().describe('Error message when replacements could not be applied'),
|
|
27
|
+
results: zod_1.z
|
|
28
|
+
.array(batchReplaceResultSchema)
|
|
29
|
+
.optional()
|
|
30
|
+
.describe('Per-replacement statuses for a failed batch edit'),
|
|
31
|
+
});
|
|
32
|
+
function createErrorOutput(error) {
|
|
33
|
+
return {
|
|
34
|
+
success: false,
|
|
35
|
+
error: error instanceof Error ? error.message : 'Unknown workspace edit error.',
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function isBatchReplaceResult(result) {
|
|
39
|
+
return Array.isArray(result);
|
|
40
|
+
}
|
|
41
|
+
function createBatchStrReplaceFileTool(filesystem) {
|
|
42
|
+
return new tool_1.Tool('workspace_batch_str_replace_file')
|
|
43
|
+
.description('Apply multiple exact text replacements to a workspace file atomically. If any replacement fails, no changes are written.')
|
|
44
|
+
.input(inputSchema)
|
|
45
|
+
.output(outputSchema)
|
|
46
|
+
.handler(async (input) => {
|
|
47
|
+
try {
|
|
48
|
+
const content = await filesystem.readFile(input.path, { encoding: 'utf-8' });
|
|
49
|
+
const editor = new text_editor_1.TextEditorDocument({ initialText: content.toString() });
|
|
50
|
+
const result = editor.executeBatch(input.replacements);
|
|
51
|
+
if (isBatchReplaceResult(result)) {
|
|
52
|
+
return { success: false, error: 'Batch replacement failed.', results: result };
|
|
53
|
+
}
|
|
54
|
+
const editedContent = editor.getText();
|
|
55
|
+
if (editedContent === null) {
|
|
56
|
+
throw new Error(`File "${input.path}" is not loaded.`);
|
|
57
|
+
}
|
|
58
|
+
await filesystem.writeFile(input.path, editedContent, { overwrite: true });
|
|
59
|
+
return { success: true, result };
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
return createErrorOutput(error);
|
|
63
|
+
}
|
|
64
|
+
})
|
|
65
|
+
.build();
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=batch-str-replace-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batch-str-replace-file.js","sourceRoot":"","sources":["../../../src/workspace/tools/batch-str-replace-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createStrReplaceFileTool = createStrReplaceFileTool;
|
|
4
|
+
const text_editor_1 = require("@n8n/ai-utilities/text-editor");
|
|
5
|
+
const zod_1 = require("zod");
|
|
6
|
+
const tool_1 = require("../../sdk/tool");
|
|
7
|
+
const inputSchema = zod_1.z.object({
|
|
8
|
+
path: zod_1.z.string().describe('Path to the file to edit'),
|
|
9
|
+
old_str: zod_1.z.string().describe('Exact text to replace. Must match exactly and be unique.'),
|
|
10
|
+
new_str: zod_1.z.string().describe('Replacement text to write in place of old_str.'),
|
|
11
|
+
});
|
|
12
|
+
const outputSchema = zod_1.z.object({
|
|
13
|
+
success: zod_1.z.boolean().describe('Whether the edit was applied'),
|
|
14
|
+
result: zod_1.z.string().optional().describe('Success message'),
|
|
15
|
+
error: zod_1.z.string().optional().describe('Error message when the edit could not be applied'),
|
|
16
|
+
});
|
|
17
|
+
function createErrorOutput(error) {
|
|
18
|
+
return {
|
|
19
|
+
success: false,
|
|
20
|
+
error: error instanceof Error ? error.message : 'Unknown workspace edit error.',
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
function createStrReplaceFileTool(filesystem) {
|
|
24
|
+
return new tool_1.Tool('workspace_str_replace_file')
|
|
25
|
+
.description('Replace one exact, unique text match in a workspace file without rewriting the whole file.')
|
|
26
|
+
.input(inputSchema)
|
|
27
|
+
.output(outputSchema)
|
|
28
|
+
.handler(async (input) => {
|
|
29
|
+
try {
|
|
30
|
+
const content = await filesystem.readFile(input.path, { encoding: 'utf-8' });
|
|
31
|
+
const editor = new text_editor_1.TextEditorDocument({ initialText: content.toString() });
|
|
32
|
+
const result = editor.execute({
|
|
33
|
+
command: 'str_replace',
|
|
34
|
+
path: input.path,
|
|
35
|
+
old_str: input.old_str,
|
|
36
|
+
new_str: input.new_str,
|
|
37
|
+
});
|
|
38
|
+
const editedContent = editor.getText();
|
|
39
|
+
if (editedContent === null) {
|
|
40
|
+
throw new Error(`File "${input.path}" is not loaded.`);
|
|
41
|
+
}
|
|
42
|
+
await filesystem.writeFile(input.path, editedContent, { overwrite: true });
|
|
43
|
+
return { success: true, result };
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
return createErrorOutput(error);
|
|
47
|
+
}
|
|
48
|
+
})
|
|
49
|
+
.build();
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=str-replace-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"str-replace-file.js","sourceRoot":"","sources":["../../../src/workspace/tools/str-replace-file.ts"],"names":[],"mappings":";;AA4BA,4DA6BC;AAzDD,+DAAmE;AACnE,6BAAwB;AAExB,yCAAsC;AAItC,MAAM,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACrD,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;IACxF,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;CAC9E,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IAC7D,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACzD,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;CACzF,CAAC,CAAC;AAIH,SAAS,iBAAiB,CAAC,KAAc;IACxC,OAAO;QACN,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,+BAA+B;KAC/E,CAAC;AACH,CAAC;AAED,SAAgB,wBAAwB,CAAC,UAA+B;IACvE,OAAO,IAAI,WAAI,CAAC,4BAA4B,CAAC;SAC3C,WAAW,CACX,4FAA4F,CAC5F;SACA,KAAK,CAAC,WAAW,CAAC;SAClB,MAAM,CAAC,YAAY,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACxB,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;YAC7E,MAAM,MAAM,GAAG,IAAI,gCAAkB,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC3E,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC7B,OAAO,EAAE,aAAa;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;YACvC,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAC;YACxD,CAAC;YAED,MAAM,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACF,CAAC,CAAC;SACD,KAAK,EAAE,CAAC;AACX,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createWorkspaceTools = createWorkspaceTools;
|
|
4
4
|
const append_file_1 = require("./append-file");
|
|
5
|
+
const batch_str_replace_file_1 = require("./batch-str-replace-file");
|
|
5
6
|
const copy_file_1 = require("./copy-file");
|
|
6
7
|
const delete_file_1 = require("./delete-file");
|
|
7
8
|
const execute_command_1 = require("./execute-command");
|
|
@@ -12,11 +13,14 @@ const move_file_1 = require("./move-file");
|
|
|
12
13
|
const process_tools_1 = require("./process-tools");
|
|
13
14
|
const read_file_1 = require("./read-file");
|
|
14
15
|
const rmdir_1 = require("./rmdir");
|
|
16
|
+
const str_replace_file_1 = require("./str-replace-file");
|
|
15
17
|
const write_file_1 = require("./write-file");
|
|
16
18
|
function createWorkspaceTools(workspace) {
|
|
17
19
|
const tools = [];
|
|
18
20
|
if (workspace.filesystem) {
|
|
19
21
|
tools.push((0, read_file_1.createReadFileTool)(workspace.filesystem));
|
|
22
|
+
tools.push((0, str_replace_file_1.createStrReplaceFileTool)(workspace.filesystem));
|
|
23
|
+
tools.push((0, batch_str_replace_file_1.createBatchStrReplaceFileTool)(workspace.filesystem));
|
|
20
24
|
tools.push((0, write_file_1.createWriteFileTool)(workspace.filesystem));
|
|
21
25
|
tools.push((0, list_files_1.createListFilesTool)(workspace.filesystem));
|
|
22
26
|
tools.push((0, file_stat_1.createFileStatTool)(workspace.filesystem));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-tools.js","sourceRoot":"","sources":["../../../src/workspace/tools/workspace-tools.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"workspace-tools.js","sourceRoot":"","sources":["../../../src/workspace/tools/workspace-tools.ts"],"names":[],"mappings":";;AAsBA,oDA4BC;AAhDD,+CAAqD;AACrD,qEAAyE;AACzE,2CAAiD;AACjD,+CAAqD;AACrD,uDAA6D;AAC7D,2CAAiD;AACjD,6CAAmD;AACnD,mCAA0C;AAC1C,2CAAiD;AACjD,mDAAiF;AACjF,2CAAiD;AACjD,mCAA0C;AAC1C,yDAA8D;AAC9D,6CAAmD;AAOnD,SAAgB,oBAAoB,CAAC,SAAwB;IAC5D,MAAM,KAAK,GAAgB,EAAE,CAAC;IAE9B,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,IAAA,8BAAkB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,IAAA,2CAAwB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,IAAA,sDAA6B,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAChE,KAAK,CAAC,IAAI,CAAC,IAAA,gCAAmB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACtD,KAAK,CAAC,IAAI,CAAC,IAAA,gCAAmB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACtD,KAAK,CAAC,IAAI,CAAC,IAAA,8BAAkB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,IAAA,uBAAe,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,IAAA,kCAAoB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACvD,KAAK,CAAC,IAAI,CAAC,IAAA,kCAAoB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACvD,KAAK,CAAC,IAAI,CAAC,IAAA,8BAAkB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,IAAA,8BAAkB,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,IAAA,uBAAe,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,SAAS,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,IAAA,0CAAwB,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,IAAA,uCAAuB,EAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,IAAA,qCAAqB,EAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@n8n/agents",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "AI agent SDK for n8n's code-first execution engine",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -11,23 +11,32 @@
|
|
|
11
11
|
"LICENSE_EE.md"
|
|
12
12
|
],
|
|
13
13
|
"dependencies": {
|
|
14
|
+
"@ai-sdk/amazon-bedrock": "^4.0.95",
|
|
14
15
|
"@ai-sdk/anthropic": "^3.0.58",
|
|
16
|
+
"@ai-sdk/azure": "^3.0.54",
|
|
17
|
+
"@ai-sdk/cohere": "^3.0.30",
|
|
18
|
+
"@ai-sdk/deepseek": "^2.0.29",
|
|
19
|
+
"@ai-sdk/gateway": "^3.0.104",
|
|
15
20
|
"@ai-sdk/google": "^3.0.43",
|
|
21
|
+
"@ai-sdk/groq": "^3.0.35",
|
|
22
|
+
"@ai-sdk/mistral": "^3.0.30",
|
|
16
23
|
"@ai-sdk/openai": "^3.0.41",
|
|
17
|
-
"@ai-sdk/xai": "^3.0.67",
|
|
18
24
|
"@ai-sdk/provider-utils": "^4.0.21",
|
|
19
|
-
"@
|
|
20
|
-
"ajv": "^8.18.0",
|
|
25
|
+
"@ai-sdk/xai": "^3.0.67",
|
|
21
26
|
"@libsql/client": "^0.17.0",
|
|
27
|
+
"@modelcontextprotocol/sdk": "1.26.0",
|
|
28
|
+
"@openrouter/ai-sdk-provider": "^2.8.0",
|
|
22
29
|
"ai": "^6.0.116",
|
|
30
|
+
"ajv": "^8.18.0",
|
|
23
31
|
"pg": "8.17.0",
|
|
24
|
-
"zod": "3.25.67"
|
|
32
|
+
"zod": "3.25.67",
|
|
33
|
+
"@n8n/ai-utilities": "0.15.0"
|
|
25
34
|
},
|
|
26
35
|
"peerDependencies": {
|
|
27
|
-
"
|
|
28
|
-
"@opentelemetry/sdk-trace-node": ">=1.0.0",
|
|
36
|
+
"@opentelemetry/exporter-trace-otlp-http": ">=0.50.0",
|
|
29
37
|
"@opentelemetry/sdk-trace-base": ">=1.0.0",
|
|
30
|
-
"@opentelemetry/
|
|
38
|
+
"@opentelemetry/sdk-trace-node": ">=1.0.0",
|
|
39
|
+
"langsmith": ">=0.3.0"
|
|
31
40
|
},
|
|
32
41
|
"peerDependenciesMeta": {
|
|
33
42
|
"langsmith": {
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.generateAgentCode = generateAgentCode;
|
|
37
|
-
function escapeTemplateLiteral(str) {
|
|
38
|
-
return str.replace(/\\/g, '\\\\').replace(/`/g, '\\`').replace(/\$/g, '\\$');
|
|
39
|
-
}
|
|
40
|
-
function escapeSingleQuote(str) {
|
|
41
|
-
return JSON.stringify(str).slice(1, -1).replace(/'/g, "\\'");
|
|
42
|
-
}
|
|
43
|
-
let prettierInstance;
|
|
44
|
-
async function formatCode(code) {
|
|
45
|
-
prettierInstance ??= await Promise.resolve().then(() => __importStar(require('prettier')));
|
|
46
|
-
return await prettierInstance.format(code, {
|
|
47
|
-
parser: 'typescript',
|
|
48
|
-
singleQuote: true,
|
|
49
|
-
useTabs: true,
|
|
50
|
-
trailingComma: 'all',
|
|
51
|
-
printWidth: 100,
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
function assertAllHandled(_) {
|
|
55
|
-
}
|
|
56
|
-
function modelParts(model) {
|
|
57
|
-
if (model.provider && model.name) {
|
|
58
|
-
return [`.model('${escapeSingleQuote(model.provider)}', '${escapeSingleQuote(model.name)}')`];
|
|
59
|
-
}
|
|
60
|
-
if (model.name) {
|
|
61
|
-
return [`.model('${escapeSingleQuote(model.name)}')`];
|
|
62
|
-
}
|
|
63
|
-
return [];
|
|
64
|
-
}
|
|
65
|
-
function toolPart(tool) {
|
|
66
|
-
if (!tool.editable) {
|
|
67
|
-
return {
|
|
68
|
-
part: `.tool(new WorkflowTool('${escapeSingleQuote(tool.name)}'))`,
|
|
69
|
-
usesWorkflowTool: true,
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
const parts = [`new Tool('${escapeSingleQuote(tool.name)}')`];
|
|
73
|
-
parts.push(`.description('${escapeSingleQuote(tool.description)}')`);
|
|
74
|
-
if (tool.inputSchemaSource)
|
|
75
|
-
parts.push(`.input(${tool.inputSchemaSource})`);
|
|
76
|
-
if (tool.outputSchemaSource)
|
|
77
|
-
parts.push(`.output(${tool.outputSchemaSource})`);
|
|
78
|
-
if (tool.suspendSchemaSource)
|
|
79
|
-
parts.push(`.suspend(${tool.suspendSchemaSource})`);
|
|
80
|
-
if (tool.resumeSchemaSource)
|
|
81
|
-
parts.push(`.resume(${tool.resumeSchemaSource})`);
|
|
82
|
-
if (tool.handlerSource)
|
|
83
|
-
parts.push(`.handler(${tool.handlerSource})`);
|
|
84
|
-
if (tool.toMessageSource)
|
|
85
|
-
parts.push(`.toMessage(${tool.toMessageSource})`);
|
|
86
|
-
if (tool.requireApproval)
|
|
87
|
-
parts.push('.requireApproval()');
|
|
88
|
-
if (tool.needsApprovalFnSource)
|
|
89
|
-
parts.push(`.needsApprovalFn(${tool.needsApprovalFnSource})`);
|
|
90
|
-
return { part: `.tool(${parts.join('')})`, usesWorkflowTool: false };
|
|
91
|
-
}
|
|
92
|
-
function evalPart(ev) {
|
|
93
|
-
const parts = [`new Eval('${escapeSingleQuote(ev.name)}')`];
|
|
94
|
-
if (ev.description)
|
|
95
|
-
parts.push(`.description('${escapeSingleQuote(ev.description)}')`);
|
|
96
|
-
if (ev.modelId)
|
|
97
|
-
parts.push(`.model('${escapeSingleQuote(ev.modelId)}')`);
|
|
98
|
-
if (ev.credentialName)
|
|
99
|
-
parts.push(`.credential('${escapeSingleQuote(ev.credentialName)}')`);
|
|
100
|
-
if (ev.handlerSource) {
|
|
101
|
-
parts.push(ev.type === 'check' ? `.check(${ev.handlerSource})` : `.judge(${ev.handlerSource})`);
|
|
102
|
-
}
|
|
103
|
-
return `.eval(${parts.join('')})`;
|
|
104
|
-
}
|
|
105
|
-
function guardrailPart(g) {
|
|
106
|
-
const method = g.position === 'input' ? 'inputGuardrail' : 'outputGuardrail';
|
|
107
|
-
return `.${method}(${g.source})`;
|
|
108
|
-
}
|
|
109
|
-
function memoryPart(memory) {
|
|
110
|
-
if (memory.source) {
|
|
111
|
-
return `.memory(${memory.source})`;
|
|
112
|
-
}
|
|
113
|
-
return `.memory(new Memory().lastMessages(${memory.lastMessages ?? 10}))`;
|
|
114
|
-
}
|
|
115
|
-
function thinkingPart(thinking) {
|
|
116
|
-
const props = [];
|
|
117
|
-
if (thinking.budgetTokens !== undefined)
|
|
118
|
-
props.push(`budgetTokens: ${thinking.budgetTokens}`);
|
|
119
|
-
if (thinking.reasoningEffort)
|
|
120
|
-
props.push(`reasoningEffort: '${thinking.reasoningEffort}'`);
|
|
121
|
-
if (props.length > 0) {
|
|
122
|
-
return `.thinking('${thinking.provider}', { ${props.join(', ')} })`;
|
|
123
|
-
}
|
|
124
|
-
return `.thinking('${thinking.provider}')`;
|
|
125
|
-
}
|
|
126
|
-
function buildImports(schema, needsWorkflowTool) {
|
|
127
|
-
const agentImports = new Set(['Agent']);
|
|
128
|
-
if (schema.tools.some((t) => t.editable))
|
|
129
|
-
agentImports.add('Tool');
|
|
130
|
-
if (needsWorkflowTool)
|
|
131
|
-
agentImports.add('WorkflowTool');
|
|
132
|
-
if (schema.memory)
|
|
133
|
-
agentImports.add('Memory');
|
|
134
|
-
if (schema.mcp && schema.mcp.length > 0)
|
|
135
|
-
agentImports.add('McpClient');
|
|
136
|
-
if (schema.evaluations.length > 0)
|
|
137
|
-
agentImports.add('Eval');
|
|
138
|
-
const toolsNeedZod = schema.tools.some((t) => (t.inputSchemaSource?.includes('z.') ?? false) ||
|
|
139
|
-
(t.outputSchemaSource?.includes('z.') ?? false));
|
|
140
|
-
const structuredOutputNeedsZod = schema.config.structuredOutput.schemaSource?.includes('z.') ?? false;
|
|
141
|
-
let imports = `import { ${Array.from(agentImports).sort().join(', ')} } from '@n8n/agents';`;
|
|
142
|
-
if (toolsNeedZod || structuredOutputNeedsZod)
|
|
143
|
-
imports += "\nimport { z } from 'zod';";
|
|
144
|
-
return imports;
|
|
145
|
-
}
|
|
146
|
-
async function generateAgentCode(schema, agentName) {
|
|
147
|
-
const { model, credential, instructions, description: _description, tools, providerTools, memory, evaluations, guardrails, mcp, telemetry, checkpoint, config, ...rest } = schema;
|
|
148
|
-
assertAllHandled(rest);
|
|
149
|
-
const { thinking, toolCallConcurrency, requireToolApproval, structuredOutput, ...configRest } = config;
|
|
150
|
-
assertAllHandled(configRest);
|
|
151
|
-
const parts = [];
|
|
152
|
-
let needsWorkflowTool = false;
|
|
153
|
-
parts.push(`export default new Agent('${escapeSingleQuote(agentName)}')`);
|
|
154
|
-
parts.push(...modelParts(model));
|
|
155
|
-
if (credential)
|
|
156
|
-
parts.push(`.credential('${escapeSingleQuote(credential)}')`);
|
|
157
|
-
if (instructions)
|
|
158
|
-
parts.push(`.instructions(\`${escapeTemplateLiteral(instructions)}\`)`);
|
|
159
|
-
for (const tool of tools) {
|
|
160
|
-
const { part, usesWorkflowTool } = toolPart(tool);
|
|
161
|
-
if (usesWorkflowTool)
|
|
162
|
-
needsWorkflowTool = true;
|
|
163
|
-
parts.push(part);
|
|
164
|
-
}
|
|
165
|
-
for (const pt of providerTools) {
|
|
166
|
-
parts.push(`.providerTool(${pt.source})`);
|
|
167
|
-
}
|
|
168
|
-
if (memory)
|
|
169
|
-
parts.push(memoryPart(memory));
|
|
170
|
-
for (const ev of evaluations) {
|
|
171
|
-
parts.push(evalPart(ev));
|
|
172
|
-
}
|
|
173
|
-
for (const g of guardrails) {
|
|
174
|
-
parts.push(guardrailPart(g));
|
|
175
|
-
}
|
|
176
|
-
if (mcp && mcp.length > 0) {
|
|
177
|
-
const configs = mcp.map((s) => s.configSource).join(', ');
|
|
178
|
-
parts.push(`.mcp(new McpClient([${configs}]))`);
|
|
179
|
-
}
|
|
180
|
-
if (telemetry)
|
|
181
|
-
parts.push(`.telemetry(${telemetry.source})`);
|
|
182
|
-
if (checkpoint)
|
|
183
|
-
parts.push(`.checkpoint('${escapeSingleQuote(checkpoint)}')`);
|
|
184
|
-
if (thinking)
|
|
185
|
-
parts.push(thinkingPart(thinking));
|
|
186
|
-
if (toolCallConcurrency)
|
|
187
|
-
parts.push(`.toolCallConcurrency(${toolCallConcurrency})`);
|
|
188
|
-
if (requireToolApproval)
|
|
189
|
-
parts.push('.requireToolApproval()');
|
|
190
|
-
if (structuredOutput.enabled && structuredOutput.schemaSource) {
|
|
191
|
-
parts.push(`.structuredOutput(${structuredOutput.schemaSource})`);
|
|
192
|
-
}
|
|
193
|
-
const imports = buildImports(schema, needsWorkflowTool);
|
|
194
|
-
const raw = `${imports}\n\n${parts.join('')};\n`;
|
|
195
|
-
return await formatCode(raw);
|
|
196
|
-
}
|
|
197
|
-
//# sourceMappingURL=generate-agent-code.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generate-agent-code.js","sourceRoot":"","sources":["../../src/codegen/generate-agent-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { AgentBuilder } from '../types/sdk/agent-builder';
|
|
2
|
-
import type { CredentialProvider } from '../types/sdk/credential-provider';
|
|
3
|
-
import type { HandlerExecutor } from '../types/sdk/handler-executor';
|
|
4
|
-
import type { AgentSchema } from '../types/sdk/schema';
|
|
5
|
-
export interface FromSchemaOptions {
|
|
6
|
-
handlerExecutor: HandlerExecutor;
|
|
7
|
-
credentialProvider?: CredentialProvider;
|
|
8
|
-
}
|
|
9
|
-
interface SuspendResult {
|
|
10
|
-
[key: symbol]: true;
|
|
11
|
-
payload: unknown;
|
|
12
|
-
}
|
|
13
|
-
export declare function isSuspendResult(value: unknown): value is SuspendResult;
|
|
14
|
-
export declare function fromSchema(agent: AgentBuilder, schema: AgentSchema, options: FromSchemaOptions): Promise<void>;
|
|
15
|
-
export {};
|