@n8n/instance-ai 1.2.1 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/instance-agent.js +4 -12
- package/dist/agent/instance-agent.js.map +1 -1
- package/dist/agent/sanitize-mcp-schemas.d.ts +4 -0
- package/dist/agent/sanitize-mcp-schemas.js +88 -18
- package/dist/agent/sanitize-mcp-schemas.js.map +1 -1
- package/dist/agent/sub-agent-debriefing.d.ts +4 -4
- package/dist/agent/system-prompt.js +18 -18
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/constants/max-steps.d.ts +9 -0
- package/dist/constants/max-steps.js +13 -0
- package/dist/constants/max-steps.js.map +1 -0
- package/dist/index.d.ts +5 -2
- package/dist/index.js +12 -3
- package/dist/index.js.map +1 -1
- package/dist/memory/title-utils.d.ts +1 -1
- package/dist/memory/title-utils.js +5 -23
- package/dist/memory/title-utils.js.map +1 -1
- package/dist/planned-tasks/planned-task-service.js +42 -6
- package/dist/planned-tasks/planned-task-service.js.map +1 -1
- package/dist/storage/workflow-loop-storage.d.ts +10 -0
- package/dist/stream/work-summary-accumulator.d.ts +6 -6
- package/dist/tools/credentials.tool.d.ts +2 -0
- package/dist/tools/credentials.tool.js +253 -0
- package/dist/tools/credentials.tool.js.map +1 -0
- package/dist/tools/data-tables.tool.d.ts +2 -0
- package/dist/tools/data-tables.tool.js +410 -0
- package/dist/tools/data-tables.tool.js.map +1 -0
- package/dist/tools/executions.tool.d.ts +2 -0
- package/dist/tools/executions.tool.js +177 -0
- package/dist/tools/executions.tool.js.map +1 -0
- package/dist/tools/index.d.ts +21 -57
- package/dist/tools/index.js +35 -132
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/nodes.tool.d.ts +2 -0
- package/dist/tools/nodes.tool.js +298 -0
- package/dist/tools/nodes.tool.js.map +1 -0
- package/dist/tools/orchestration/blueprint.schema.d.ts +15 -15
- package/dist/tools/orchestration/browser-credential-setup.tool.js +13 -17
- package/dist/tools/orchestration/browser-credential-setup.tool.js.map +1 -1
- package/dist/tools/orchestration/build-workflow-agent.prompt.js +32 -28
- package/dist/tools/orchestration/build-workflow-agent.prompt.js.map +1 -1
- package/dist/tools/orchestration/build-workflow-agent.tool.d.ts +9 -1
- package/dist/tools/orchestration/build-workflow-agent.tool.js +73 -58
- package/dist/tools/orchestration/build-workflow-agent.tool.js.map +1 -1
- package/dist/tools/orchestration/data-table-agent.prompt.d.ts +1 -1
- package/dist/tools/orchestration/data-table-agent.prompt.js +7 -7
- package/dist/tools/orchestration/data-table-agent.tool.js +10 -22
- package/dist/tools/orchestration/data-table-agent.tool.js.map +1 -1
- package/dist/tools/orchestration/delegate.tool.js +3 -3
- package/dist/tools/orchestration/delegate.tool.js.map +1 -1
- package/dist/tools/orchestration/plan-agent-prompt.d.ts +1 -1
- package/dist/tools/orchestration/plan-agent-prompt.js +5 -5
- package/dist/tools/orchestration/plan-with-agent.tool.js +9 -11
- package/dist/tools/orchestration/plan-with-agent.tool.js.map +1 -1
- package/dist/tools/orchestration/research-with-agent.tool.js +6 -9
- package/dist/tools/orchestration/research-with-agent.tool.js.map +1 -1
- package/dist/tools/research.tool.d.ts +2 -0
- package/dist/tools/research.tool.js +159 -0
- package/dist/tools/research.tool.js.map +1 -0
- package/dist/tools/{orchestration/update-tasks.tool.d.ts → task-control.tool.d.ts} +2 -2
- package/dist/tools/task-control.tool.js +81 -0
- package/dist/tools/task-control.tool.js.map +1 -0
- package/dist/tools/templates.tool.d.ts +1 -0
- package/dist/tools/templates.tool.js +144 -0
- package/dist/tools/templates.tool.js.map +1 -0
- package/dist/tools/workflows/build-workflow.tool.js +2 -0
- package/dist/tools/workflows/build-workflow.tool.js.map +1 -1
- package/dist/tools/workflows/materialize-node-type.tool.d.ts +4 -4
- package/dist/tools/workflows/setup-workflow.service.d.ts +4 -1
- package/dist/tools/workflows/setup-workflow.service.js +91 -15
- package/dist/tools/workflows/setup-workflow.service.js.map +1 -1
- package/dist/tools/workflows/submit-workflow.tool.d.ts +1 -0
- package/dist/tools/workflows/submit-workflow.tool.js +5 -0
- package/dist/tools/workflows/submit-workflow.tool.js.map +1 -1
- package/dist/tools/workflows.tool.d.ts +2 -0
- package/dist/tools/workflows.tool.js +498 -0
- package/dist/tools/workflows.tool.js.map +1 -0
- package/dist/tools/workspace.tool.d.ts +2 -0
- package/dist/tools/workspace.tool.js +278 -0
- package/dist/tools/workspace.tool.js.map +1 -0
- package/dist/tracing/langsmith-tracing.d.ts +1 -0
- package/dist/tracing/langsmith-tracing.js +170 -2
- package/dist/tracing/langsmith-tracing.js.map +1 -1
- package/dist/tracing/trace-replay.d.ts +61 -0
- package/dist/tracing/trace-replay.js +208 -0
- package/dist/tracing/trace-replay.js.map +1 -0
- package/dist/types.d.ts +7 -0
- package/dist/workflow-loop/guidance.js +5 -5
- package/dist/workflow-loop/guidance.js.map +1 -1
- package/dist/workflow-loop/workflow-loop-controller.js +5 -0
- package/dist/workflow-loop/workflow-loop-controller.js.map +1 -1
- package/dist/workflow-loop/workflow-loop-state.d.ts +7 -0
- package/dist/workflow-loop/workflow-loop-state.js +2 -0
- package/dist/workflow-loop/workflow-loop-state.js.map +1 -1
- package/package.json +10 -8
- package/dist/agent/tool-access.d.ts +0 -2
- package/dist/agent/tool-access.js +0 -28
- package/dist/agent/tool-access.js.map +0 -1
- package/dist/tools/best-practices/get-best-practices.tool.d.ts +0 -9
- package/dist/tools/best-practices/get-best-practices.tool.js +0 -66
- package/dist/tools/best-practices/get-best-practices.tool.js.map +0 -1
- package/dist/tools/credentials/delete-credential.tool.d.ts +0 -20
- package/dist/tools/credentials/delete-credential.tool.js +0 -58
- package/dist/tools/credentials/delete-credential.tool.js.map +0 -1
- package/dist/tools/credentials/get-credential.tool.d.ts +0 -10
- package/dist/tools/credentials/get-credential.tool.js +0 -32
- package/dist/tools/credentials/get-credential.tool.js.map +0 -1
- package/dist/tools/credentials/list-credentials.tool.d.ts +0 -16
- package/dist/tools/credentials/list-credentials.tool.js +0 -72
- package/dist/tools/credentials/list-credentials.tool.js.map +0 -1
- package/dist/tools/credentials/search-credential-types.tool.d.ts +0 -10
- package/dist/tools/credentials/search-credential-types.tool.js +0 -46
- package/dist/tools/credentials/search-credential-types.tool.js.map +0 -1
- package/dist/tools/credentials/setup-credentials.tool.d.ts +0 -69
- package/dist/tools/credentials/setup-credentials.tool.js +0 -140
- package/dist/tools/credentials/setup-credentials.tool.js.map +0 -1
- package/dist/tools/credentials/test-credential.tool.d.ts +0 -10
- package/dist/tools/credentials/test-credential.tool.js +0 -32
- package/dist/tools/credentials/test-credential.tool.js.map +0 -1
- package/dist/tools/data-tables/add-data-table-column.tool.d.ts +0 -23
- package/dist/tools/data-tables/add-data-table-column.tool.js +0 -67
- package/dist/tools/data-tables/add-data-table-column.tool.js.map +0 -1
- package/dist/tools/data-tables/create-data-table.tool.d.ts +0 -38
- package/dist/tools/data-tables/create-data-table.tool.js +0 -106
- package/dist/tools/data-tables/create-data-table.tool.js.map +0 -1
- package/dist/tools/data-tables/delete-data-table-column.tool.d.ts +0 -20
- package/dist/tools/data-tables/delete-data-table-column.tool.js +0 -55
- package/dist/tools/data-tables/delete-data-table-column.tool.js.map +0 -1
- package/dist/tools/data-tables/delete-data-table-rows.tool.d.ts +0 -63
- package/dist/tools/data-tables/delete-data-table-rows.tool.js +0 -79
- package/dist/tools/data-tables/delete-data-table-rows.tool.js.map +0 -1
- package/dist/tools/data-tables/delete-data-table.tool.d.ts +0 -17
- package/dist/tools/data-tables/delete-data-table.tool.js +0 -54
- package/dist/tools/data-tables/delete-data-table.tool.js.map +0 -1
- package/dist/tools/data-tables/get-data-table-schema.tool.d.ts +0 -10
- package/dist/tools/data-tables/get-data-table-schema.tool.js +0 -29
- package/dist/tools/data-tables/get-data-table-schema.tool.js.map +0 -1
- package/dist/tools/data-tables/insert-data-table-rows.tool.d.ts +0 -20
- package/dist/tools/data-tables/insert-data-table-rows.tool.js +0 -62
- package/dist/tools/data-tables/insert-data-table-rows.tool.js.map +0 -1
- package/dist/tools/data-tables/list-data-tables.tool.d.ts +0 -10
- package/dist/tools/data-tables/list-data-tables.tool.js +0 -34
- package/dist/tools/data-tables/list-data-tables.tool.js.map +0 -1
- package/dist/tools/data-tables/query-data-table-rows.tool.d.ts +0 -62
- package/dist/tools/data-tables/query-data-table-rows.tool.js +0 -56
- package/dist/tools/data-tables/query-data-table-rows.tool.js.map +0 -1
- package/dist/tools/data-tables/rename-data-table-column.tool.d.ts +0 -23
- package/dist/tools/data-tables/rename-data-table-column.tool.js +0 -56
- package/dist/tools/data-tables/rename-data-table-column.tool.js.map +0 -1
- package/dist/tools/data-tables/update-data-table-rows.tool.d.ts +0 -66
- package/dist/tools/data-tables/update-data-table-rows.tool.js +0 -67
- package/dist/tools/data-tables/update-data-table-rows.tool.js.map +0 -1
- package/dist/tools/executions/debug-execution.tool.d.ts +0 -10
- package/dist/tools/executions/debug-execution.tool.js +0 -43
- package/dist/tools/executions/debug-execution.tool.js.map +0 -1
- package/dist/tools/executions/get-execution.tool.d.ts +0 -10
- package/dist/tools/executions/get-execution.tool.js +0 -28
- package/dist/tools/executions/get-execution.tool.js.map +0 -1
- package/dist/tools/executions/get-node-output.tool.d.ts +0 -19
- package/dist/tools/executions/get-node-output.tool.js +0 -41
- package/dist/tools/executions/get-node-output.tool.js.map +0 -1
- package/dist/tools/executions/list-executions.tool.d.ts +0 -16
- package/dist/tools/executions/list-executions.tool.js +0 -47
- package/dist/tools/executions/list-executions.tool.js.map +0 -1
- package/dist/tools/executions/run-workflow.tool.d.ts +0 -26
- package/dist/tools/executions/run-workflow.tool.js +0 -92
- package/dist/tools/executions/run-workflow.tool.js.map +0 -1
- package/dist/tools/executions/stop-execution.tool.d.ts +0 -10
- package/dist/tools/executions/stop-execution.tool.js +0 -27
- package/dist/tools/executions/stop-execution.tool.js.map +0 -1
- package/dist/tools/nodes/explore-node-resources.tool.d.ts +0 -34
- package/dist/tools/nodes/explore-node-resources.tool.js +0 -73
- package/dist/tools/nodes/explore-node-resources.tool.js.map +0 -1
- package/dist/tools/nodes/get-node-description.tool.d.ts +0 -10
- package/dist/tools/nodes/get-node-description.tool.js +0 -54
- package/dist/tools/nodes/get-node-description.tool.js.map +0 -1
- package/dist/tools/nodes/get-node-type-definition.tool.d.ts +0 -40
- package/dist/tools/nodes/get-node-type-definition.tool.js +0 -75
- package/dist/tools/nodes/get-node-type-definition.tool.js.map +0 -1
- package/dist/tools/nodes/get-suggested-nodes.tool.d.ts +0 -9
- package/dist/tools/nodes/get-suggested-nodes.tool.js +0 -56
- package/dist/tools/nodes/get-suggested-nodes.tool.js.map +0 -1
- package/dist/tools/nodes/list-nodes.tool.d.ts +0 -10
- package/dist/tools/nodes/list-nodes.tool.js +0 -35
- package/dist/tools/nodes/list-nodes.tool.js.map +0 -1
- package/dist/tools/nodes/search-nodes.tool.d.ts +0 -16
- package/dist/tools/nodes/search-nodes.tool.js +0 -91
- package/dist/tools/nodes/search-nodes.tool.js.map +0 -1
- package/dist/tools/orchestration/cancel-background-task.tool.d.ts +0 -10
- package/dist/tools/orchestration/cancel-background-task.tool.js +0 -26
- package/dist/tools/orchestration/cancel-background-task.tool.js.map +0 -1
- package/dist/tools/orchestration/correct-background-task.tool.d.ts +0 -13
- package/dist/tools/orchestration/correct-background-task.tool.js +0 -43
- package/dist/tools/orchestration/correct-background-task.tool.js.map +0 -1
- package/dist/tools/orchestration/update-tasks.tool.js +0 -26
- package/dist/tools/orchestration/update-tasks.tool.js.map +0 -1
- package/dist/tools/templates/search-template-parameters.tool.d.ts +0 -18
- package/dist/tools/templates/search-template-parameters.tool.js +0 -57
- package/dist/tools/templates/search-template-parameters.tool.js.map +0 -1
- package/dist/tools/templates/search-template-structures.tool.d.ts +0 -15
- package/dist/tools/templates/search-template-structures.tool.js +0 -47
- package/dist/tools/templates/search-template-structures.tool.js.map +0 -1
- package/dist/tools/web-research/fetch-url.tool.d.ts +0 -13
- package/dist/tools/web-research/fetch-url.tool.js +0 -132
- package/dist/tools/web-research/fetch-url.tool.js.map +0 -1
- package/dist/tools/web-research/index.d.ts +0 -1
- package/dist/tools/web-research/index.js +0 -6
- package/dist/tools/web-research/index.js.map +0 -1
- package/dist/tools/web-research/web-search.tool.d.ts +0 -16
- package/dist/tools/web-research/web-search.tool.js +0 -59
- package/dist/tools/web-research/web-search.tool.js.map +0 -1
- package/dist/tools/workflows/delete-workflow.tool.d.ts +0 -20
- package/dist/tools/workflows/delete-workflow.tool.js +0 -55
- package/dist/tools/workflows/delete-workflow.tool.js.map +0 -1
- package/dist/tools/workflows/get-workflow-as-code.tool.d.ts +0 -10
- package/dist/tools/workflows/get-workflow-as-code.tool.js +0 -39
- package/dist/tools/workflows/get-workflow-as-code.tool.js.map +0 -1
- package/dist/tools/workflows/get-workflow-version.tool.d.ts +0 -13
- package/dist/tools/workflows/get-workflow-version.tool.js +0 -40
- package/dist/tools/workflows/get-workflow-version.tool.js.map +0 -1
- package/dist/tools/workflows/get-workflow.tool.d.ts +0 -10
- package/dist/tools/workflows/get-workflow.tool.js +0 -38
- package/dist/tools/workflows/get-workflow.tool.js.map +0 -1
- package/dist/tools/workflows/list-workflow-versions.tool.d.ts +0 -16
- package/dist/tools/workflows/list-workflow-versions.tool.js +0 -49
- package/dist/tools/workflows/list-workflow-versions.tool.js.map +0 -1
- package/dist/tools/workflows/list-workflows.tool.d.ts +0 -13
- package/dist/tools/workflows/list-workflows.tool.js +0 -44
- package/dist/tools/workflows/list-workflows.tool.js.map +0 -1
- package/dist/tools/workflows/publish-workflow.tool.d.ts +0 -10
- package/dist/tools/workflows/publish-workflow.tool.js +0 -97
- package/dist/tools/workflows/publish-workflow.tool.js.map +0 -1
- package/dist/tools/workflows/restore-workflow-version.tool.d.ts +0 -20
- package/dist/tools/workflows/restore-workflow-version.tool.js +0 -72
- package/dist/tools/workflows/restore-workflow-version.tool.js.map +0 -1
- package/dist/tools/workflows/setup-workflow.tool.d.ts +0 -13
- package/dist/tools/workflows/setup-workflow.tool.js +0 -215
- package/dist/tools/workflows/setup-workflow.tool.js.map +0 -1
- package/dist/tools/workflows/unpublish-workflow.tool.d.ts +0 -20
- package/dist/tools/workflows/unpublish-workflow.tool.js +0 -65
- package/dist/tools/workflows/unpublish-workflow.tool.js.map +0 -1
- package/dist/tools/workflows/update-workflow-version.tool.d.ts +0 -19
- package/dist/tools/workflows/update-workflow-version.tool.js +0 -37
- package/dist/tools/workflows/update-workflow-version.tool.js.map +0 -1
- package/dist/tools/workspace/cleanup-test-executions.tool.d.ts +0 -23
- package/dist/tools/workspace/cleanup-test-executions.tool.js +0 -62
- package/dist/tools/workspace/cleanup-test-executions.tool.js.map +0 -1
- package/dist/tools/workspace/create-folder.tool.d.ts +0 -23
- package/dist/tools/workspace/create-folder.tool.js +0 -72
- package/dist/tools/workspace/create-folder.tool.js.map +0 -1
- package/dist/tools/workspace/delete-folder.tool.d.ts +0 -29
- package/dist/tools/workspace/delete-folder.tool.js +0 -67
- package/dist/tools/workspace/delete-folder.tool.js.map +0 -1
- package/dist/tools/workspace/list-folders.tool.d.ts +0 -10
- package/dist/tools/workspace/list-folders.tool.js +0 -28
- package/dist/tools/workspace/list-folders.tool.js.map +0 -1
- package/dist/tools/workspace/list-projects.tool.d.ts +0 -4
- package/dist/tools/workspace/list-projects.tool.js +0 -26
- package/dist/tools/workspace/list-projects.tool.js.map +0 -1
- package/dist/tools/workspace/list-tags.tool.d.ts +0 -4
- package/dist/tools/workspace/list-tags.tool.js +0 -25
- package/dist/tools/workspace/list-tags.tool.js.map +0 -1
- package/dist/tools/workspace/move-workflow-to-folder.tool.d.ts +0 -26
- package/dist/tools/workspace/move-workflow-to-folder.tool.js +0 -60
- package/dist/tools/workspace/move-workflow-to-folder.tool.js.map +0 -1
- package/dist/tools/workspace/tag-workflow.tool.d.ts +0 -23
- package/dist/tools/workspace/tag-workflow.tool.js +0 -56
- package/dist/tools/workspace/tag-workflow.tool.js.map +0 -1
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setupCredentialsResumeSchema = exports.setupCredentialsInputSchema = void 0;
|
|
4
|
-
exports.createSetupCredentialsTool = createSetupCredentialsTool;
|
|
5
|
-
const tools_1 = require("@mastra/core/tools");
|
|
6
|
-
const api_types_1 = require("@n8n/api-types");
|
|
7
|
-
const nanoid_1 = require("nanoid");
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
exports.setupCredentialsInputSchema = zod_1.z.object({
|
|
10
|
-
credentials: zod_1.z
|
|
11
|
-
.array(zod_1.z.object({
|
|
12
|
-
credentialType: zod_1.z
|
|
13
|
-
.string()
|
|
14
|
-
.describe('n8n credential type name (e.g. "slackApi", "gmailOAuth2Api")'),
|
|
15
|
-
reason: zod_1.z.string().optional().describe('Why this credential is needed (shown to user)'),
|
|
16
|
-
suggestedName: zod_1.z
|
|
17
|
-
.string()
|
|
18
|
-
.optional()
|
|
19
|
-
.describe('Suggested display name for the credential (e.g. "Linear API key"). Pre-fills the name field when creating a new credential.'),
|
|
20
|
-
}))
|
|
21
|
-
.describe('List of credentials to set up'),
|
|
22
|
-
projectId: zod_1.z
|
|
23
|
-
.string()
|
|
24
|
-
.optional()
|
|
25
|
-
.describe('Project ID to scope credential creation to. Defaults to personal project.'),
|
|
26
|
-
credentialFlow: zod_1.z
|
|
27
|
-
.object({
|
|
28
|
-
stage: zod_1.z.enum(['generic', 'finalize']),
|
|
29
|
-
})
|
|
30
|
-
.optional()
|
|
31
|
-
.describe('Credential flow stage. "finalize" renders post-verification picker with "Apply credentials" / "Later" buttons.'),
|
|
32
|
-
});
|
|
33
|
-
exports.setupCredentialsResumeSchema = zod_1.z.object({
|
|
34
|
-
approved: zod_1.z.boolean(),
|
|
35
|
-
credentials: zod_1.z.record(zod_1.z.string()).optional(),
|
|
36
|
-
autoSetup: zod_1.z.object({ credentialType: zod_1.z.string() }).optional(),
|
|
37
|
-
});
|
|
38
|
-
function createSetupCredentialsTool(context) {
|
|
39
|
-
return (0, tools_1.createTool)({
|
|
40
|
-
id: 'setup-credentials',
|
|
41
|
-
description: 'Open the n8n credential setup UI for the user to select existing credentials or ' +
|
|
42
|
-
'create new ones directly in their browser. Use this ONLY when the user explicitly ' +
|
|
43
|
-
'asks to set up/add/create a credential outside of a workflow context. ' +
|
|
44
|
-
'Do NOT use this after building a workflow — use setup-workflow instead, which ' +
|
|
45
|
-
'handles per-node credential assignment along with parameter and trigger setup. ' +
|
|
46
|
-
'The user handles secrets through the UI — you never see sensitive data. ' +
|
|
47
|
-
'Returns a mapping of credential type to selected credential ID. ' +
|
|
48
|
-
'When the result contains needsBrowserSetup=true, delegate to a browser agent ' +
|
|
49
|
-
'with the provided docsUrl and credentialType.',
|
|
50
|
-
inputSchema: exports.setupCredentialsInputSchema,
|
|
51
|
-
outputSchema: zod_1.z.object({
|
|
52
|
-
success: zod_1.z.boolean(),
|
|
53
|
-
deferred: zod_1.z.boolean().optional(),
|
|
54
|
-
credentials: zod_1.z.record(zod_1.z.string()).optional(),
|
|
55
|
-
reason: zod_1.z.string().optional(),
|
|
56
|
-
needsBrowserSetup: zod_1.z.boolean().optional(),
|
|
57
|
-
credentialType: zod_1.z.string().optional(),
|
|
58
|
-
docsUrl: zod_1.z.string().optional(),
|
|
59
|
-
requiredFields: zod_1.z
|
|
60
|
-
.array(zod_1.z.object({
|
|
61
|
-
name: zod_1.z.string(),
|
|
62
|
-
displayName: zod_1.z.string(),
|
|
63
|
-
type: zod_1.z.string(),
|
|
64
|
-
required: zod_1.z.boolean(),
|
|
65
|
-
description: zod_1.z.string().optional(),
|
|
66
|
-
}))
|
|
67
|
-
.optional(),
|
|
68
|
-
}),
|
|
69
|
-
suspendSchema: zod_1.z.object({
|
|
70
|
-
requestId: zod_1.z.string(),
|
|
71
|
-
message: zod_1.z.string(),
|
|
72
|
-
severity: api_types_1.instanceAiConfirmationSeveritySchema,
|
|
73
|
-
credentialRequests: zod_1.z.array(zod_1.z.object({
|
|
74
|
-
credentialType: zod_1.z.string(),
|
|
75
|
-
reason: zod_1.z.string(),
|
|
76
|
-
existingCredentials: zod_1.z.array(zod_1.z.object({ id: zod_1.z.string(), name: zod_1.z.string() })),
|
|
77
|
-
suggestedName: zod_1.z.string().optional(),
|
|
78
|
-
})),
|
|
79
|
-
projectId: zod_1.z.string().optional(),
|
|
80
|
-
credentialFlow: zod_1.z.object({ stage: zod_1.z.enum(['generic', 'finalize']) }).optional(),
|
|
81
|
-
}),
|
|
82
|
-
resumeSchema: exports.setupCredentialsResumeSchema,
|
|
83
|
-
execute: async (input, ctx) => {
|
|
84
|
-
const resumeData = ctx?.agent?.resumeData;
|
|
85
|
-
const suspend = ctx?.agent?.suspend;
|
|
86
|
-
const isFinalize = input.credentialFlow?.stage === 'finalize';
|
|
87
|
-
if (resumeData === undefined || resumeData === null) {
|
|
88
|
-
const credentialRequests = await Promise.all(input.credentials.map(async (req) => {
|
|
89
|
-
const existing = await context.credentialService.list({ type: req.credentialType });
|
|
90
|
-
return {
|
|
91
|
-
credentialType: req.credentialType,
|
|
92
|
-
reason: req.reason ?? `Required for ${req.credentialType}`,
|
|
93
|
-
existingCredentials: existing.map((c) => ({ id: c.id, name: c.name })),
|
|
94
|
-
...(req.suggestedName ? { suggestedName: req.suggestedName } : {}),
|
|
95
|
-
};
|
|
96
|
-
}));
|
|
97
|
-
const typeNames = input.credentials
|
|
98
|
-
.map((c) => c.credentialType)
|
|
99
|
-
.join(', ');
|
|
100
|
-
await suspend?.({
|
|
101
|
-
requestId: (0, nanoid_1.nanoid)(),
|
|
102
|
-
message: isFinalize
|
|
103
|
-
? `Your workflow is verified. Add credentials to make it production-ready: ${typeNames}`
|
|
104
|
-
: input.credentials.length === 1
|
|
105
|
-
? `Select or create a ${typeNames} credential`
|
|
106
|
-
: `Select or create credentials: ${typeNames}`,
|
|
107
|
-
severity: 'info',
|
|
108
|
-
credentialRequests,
|
|
109
|
-
...(input.projectId ? { projectId: input.projectId } : {}),
|
|
110
|
-
...(input.credentialFlow ? { credentialFlow: input.credentialFlow } : {}),
|
|
111
|
-
});
|
|
112
|
-
return { success: false };
|
|
113
|
-
}
|
|
114
|
-
if (!resumeData.approved) {
|
|
115
|
-
return {
|
|
116
|
-
success: true,
|
|
117
|
-
deferred: true,
|
|
118
|
-
reason: 'User skipped credential setup for now. Continue without credentials and let the user set them up later.',
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
if (resumeData.autoSetup) {
|
|
122
|
-
const { credentialType } = resumeData.autoSetup;
|
|
123
|
-
const docsUrl = (await context.credentialService.getDocumentationUrl?.(credentialType)) ?? undefined;
|
|
124
|
-
const requiredFields = (await context.credentialService.getCredentialFields?.(credentialType)) ?? undefined;
|
|
125
|
-
return {
|
|
126
|
-
success: false,
|
|
127
|
-
needsBrowserSetup: true,
|
|
128
|
-
credentialType,
|
|
129
|
-
docsUrl,
|
|
130
|
-
requiredFields,
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
return {
|
|
134
|
-
success: true,
|
|
135
|
-
credentials: resumeData.credentials,
|
|
136
|
-
};
|
|
137
|
-
},
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
//# sourceMappingURL=setup-credentials.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-credentials.tool.js","sourceRoot":"","sources":["../../../src/tools/credentials/setup-credentials.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import type { InstanceAiContext } from '../../types';
|
|
3
|
-
export declare const testCredentialInputSchema: z.ZodObject<{
|
|
4
|
-
credentialId: z.ZodString;
|
|
5
|
-
}, "strip", z.ZodTypeAny, {
|
|
6
|
-
credentialId: string;
|
|
7
|
-
}, {
|
|
8
|
-
credentialId: string;
|
|
9
|
-
}>;
|
|
10
|
-
export declare function createTestCredentialTool(context: InstanceAiContext): import("@mastra/core/tools").Tool<InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, import("@mastra/core/tools").ToolExecutionContext<InferPublicSchema<T>, InferPublicSchema<T>, unknown>, "test-credential", unknown>;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.testCredentialInputSchema = void 0;
|
|
4
|
-
exports.createTestCredentialTool = createTestCredentialTool;
|
|
5
|
-
const tools_1 = require("@mastra/core/tools");
|
|
6
|
-
const zod_1 = require("zod");
|
|
7
|
-
exports.testCredentialInputSchema = zod_1.z.object({
|
|
8
|
-
credentialId: zod_1.z.string().describe('ID of the credential to test'),
|
|
9
|
-
});
|
|
10
|
-
function createTestCredentialTool(context) {
|
|
11
|
-
return (0, tools_1.createTool)({
|
|
12
|
-
id: 'test-credential',
|
|
13
|
-
description: 'Test whether a credential is valid and can connect to its service.',
|
|
14
|
-
inputSchema: exports.testCredentialInputSchema,
|
|
15
|
-
outputSchema: zod_1.z.object({
|
|
16
|
-
success: zod_1.z.boolean(),
|
|
17
|
-
message: zod_1.z.string().optional(),
|
|
18
|
-
}),
|
|
19
|
-
execute: async (inputData) => {
|
|
20
|
-
try {
|
|
21
|
-
return await context.credentialService.test(inputData.credentialId);
|
|
22
|
-
}
|
|
23
|
-
catch (error) {
|
|
24
|
-
return {
|
|
25
|
-
success: false,
|
|
26
|
-
message: error instanceof Error ? error.message : 'Credential test failed',
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=test-credential.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"test-credential.tool.js","sourceRoot":"","sources":["../../../src/tools/credentials/test-credential.tool.ts"],"names":[],"mappings":";;;AASA,4DAoBC;AA7BD,8CAAgD;AAChD,6BAAwB;AAIX,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IACjD,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CACjE,CAAC,CAAC;AAEH,SAAgB,wBAAwB,CAAC,OAA0B;IAClE,OAAO,IAAA,kBAAU,EAAC;QACjB,EAAE,EAAE,iBAAiB;QACrB,WAAW,EAAE,oEAAoE;QACjF,WAAW,EAAE,iCAAyB;QACtC,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC;YACtB,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE;YACpB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC9B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,SAAoD,EAAE,EAAE;YACvE,IAAI,CAAC;gBACJ,OAAO,MAAM,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;iBAC1E,CAAC;YACH,CAAC;QACF,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import type { InstanceAiContext } from '../../types';
|
|
3
|
-
export declare const addDataTableColumnInputSchema: z.ZodObject<{
|
|
4
|
-
dataTableId: z.ZodString;
|
|
5
|
-
name: z.ZodString;
|
|
6
|
-
type: z.ZodEnum<["string", "number", "boolean", "date"]>;
|
|
7
|
-
}, "strip", z.ZodTypeAny, {
|
|
8
|
-
type: "string" | "number" | "boolean" | "date";
|
|
9
|
-
name: string;
|
|
10
|
-
dataTableId: string;
|
|
11
|
-
}, {
|
|
12
|
-
type: "string" | "number" | "boolean" | "date";
|
|
13
|
-
name: string;
|
|
14
|
-
dataTableId: string;
|
|
15
|
-
}>;
|
|
16
|
-
export declare const addDataTableColumnResumeSchema: z.ZodObject<{
|
|
17
|
-
approved: z.ZodBoolean;
|
|
18
|
-
}, "strip", z.ZodTypeAny, {
|
|
19
|
-
approved: boolean;
|
|
20
|
-
}, {
|
|
21
|
-
approved: boolean;
|
|
22
|
-
}>;
|
|
23
|
-
export declare function createAddDataTableColumnTool(context: InstanceAiContext): import("@mastra/core/tools").Tool<InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, import("@mastra/core/tools").ToolExecutionContext<InferPublicSchema<T>, InferPublicSchema<T>, unknown>, "add-data-table-column", unknown>;
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.addDataTableColumnResumeSchema = exports.addDataTableColumnInputSchema = void 0;
|
|
4
|
-
exports.createAddDataTableColumnTool = createAddDataTableColumnTool;
|
|
5
|
-
const tools_1 = require("@mastra/core/tools");
|
|
6
|
-
const api_types_1 = require("@n8n/api-types");
|
|
7
|
-
const nanoid_1 = require("nanoid");
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
const columnTypeSchema = zod_1.z.enum(['string', 'number', 'boolean', 'date']);
|
|
10
|
-
exports.addDataTableColumnInputSchema = zod_1.z.object({
|
|
11
|
-
dataTableId: zod_1.z.string().describe('ID of the data table'),
|
|
12
|
-
name: zod_1.z.string().describe('Column name (alphanumeric + underscores)'),
|
|
13
|
-
type: columnTypeSchema.describe('Column data type'),
|
|
14
|
-
});
|
|
15
|
-
exports.addDataTableColumnResumeSchema = zod_1.z.object({
|
|
16
|
-
approved: zod_1.z.boolean(),
|
|
17
|
-
});
|
|
18
|
-
function createAddDataTableColumnTool(context) {
|
|
19
|
-
return (0, tools_1.createTool)({
|
|
20
|
-
id: 'add-data-table-column',
|
|
21
|
-
description: 'Add a new column to an existing data table.',
|
|
22
|
-
inputSchema: exports.addDataTableColumnInputSchema,
|
|
23
|
-
outputSchema: zod_1.z.object({
|
|
24
|
-
column: zod_1.z
|
|
25
|
-
.object({
|
|
26
|
-
id: zod_1.z.string(),
|
|
27
|
-
name: zod_1.z.string(),
|
|
28
|
-
type: zod_1.z.string(),
|
|
29
|
-
index: zod_1.z.number(),
|
|
30
|
-
})
|
|
31
|
-
.optional(),
|
|
32
|
-
denied: zod_1.z.boolean().optional(),
|
|
33
|
-
reason: zod_1.z.string().optional(),
|
|
34
|
-
}),
|
|
35
|
-
suspendSchema: zod_1.z.object({
|
|
36
|
-
requestId: zod_1.z.string(),
|
|
37
|
-
message: zod_1.z.string(),
|
|
38
|
-
severity: api_types_1.instanceAiConfirmationSeveritySchema,
|
|
39
|
-
}),
|
|
40
|
-
resumeSchema: exports.addDataTableColumnResumeSchema,
|
|
41
|
-
execute: async (input, ctx) => {
|
|
42
|
-
const resumeData = ctx?.agent?.resumeData;
|
|
43
|
-
const suspend = ctx?.agent?.suspend;
|
|
44
|
-
if (context.permissions?.mutateDataTableSchema === 'blocked') {
|
|
45
|
-
return { denied: true, reason: 'Action blocked by admin' };
|
|
46
|
-
}
|
|
47
|
-
const needsApproval = context.permissions?.mutateDataTableSchema !== 'always_allow';
|
|
48
|
-
if (needsApproval && (resumeData === undefined || resumeData === null)) {
|
|
49
|
-
await suspend?.({
|
|
50
|
-
requestId: (0, nanoid_1.nanoid)(),
|
|
51
|
-
message: `Add column "${input.name}" (${input.type}) to data table "${input.dataTableId}"?`,
|
|
52
|
-
severity: 'warning',
|
|
53
|
-
});
|
|
54
|
-
return {};
|
|
55
|
-
}
|
|
56
|
-
if (resumeData !== undefined && resumeData !== null && !resumeData.approved) {
|
|
57
|
-
return { denied: true, reason: 'User denied the action' };
|
|
58
|
-
}
|
|
59
|
-
const column = await context.dataTableService.addColumn(input.dataTableId, {
|
|
60
|
-
name: input.name,
|
|
61
|
-
type: input.type,
|
|
62
|
-
});
|
|
63
|
-
return { column };
|
|
64
|
-
},
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=add-data-table-column.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-data-table-column.tool.js","sourceRoot":"","sources":["../../../src/tools/data-tables/add-data-table-column.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import type { InstanceAiContext } from '../../types';
|
|
3
|
-
export declare const createDataTableInputSchema: z.ZodObject<{
|
|
4
|
-
name: z.ZodString;
|
|
5
|
-
projectId: z.ZodOptional<z.ZodString>;
|
|
6
|
-
columns: z.ZodArray<z.ZodObject<{
|
|
7
|
-
name: z.ZodString;
|
|
8
|
-
type: z.ZodEnum<["string", "number", "boolean", "date"]>;
|
|
9
|
-
}, "strip", z.ZodTypeAny, {
|
|
10
|
-
type: "string" | "number" | "boolean" | "date";
|
|
11
|
-
name: string;
|
|
12
|
-
}, {
|
|
13
|
-
type: "string" | "number" | "boolean" | "date";
|
|
14
|
-
name: string;
|
|
15
|
-
}>, "many">;
|
|
16
|
-
}, "strip", z.ZodTypeAny, {
|
|
17
|
-
name: string;
|
|
18
|
-
columns: {
|
|
19
|
-
type: "string" | "number" | "boolean" | "date";
|
|
20
|
-
name: string;
|
|
21
|
-
}[];
|
|
22
|
-
projectId?: string | undefined;
|
|
23
|
-
}, {
|
|
24
|
-
name: string;
|
|
25
|
-
columns: {
|
|
26
|
-
type: "string" | "number" | "boolean" | "date";
|
|
27
|
-
name: string;
|
|
28
|
-
}[];
|
|
29
|
-
projectId?: string | undefined;
|
|
30
|
-
}>;
|
|
31
|
-
export declare const createDataTableResumeSchema: z.ZodObject<{
|
|
32
|
-
approved: z.ZodBoolean;
|
|
33
|
-
}, "strip", z.ZodTypeAny, {
|
|
34
|
-
approved: boolean;
|
|
35
|
-
}, {
|
|
36
|
-
approved: boolean;
|
|
37
|
-
}>;
|
|
38
|
-
export declare function createCreateDataTableTool(context: InstanceAiContext): import("@mastra/core/tools").Tool<InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, import("@mastra/core/tools").ToolExecutionContext<InferPublicSchema<T>, InferPublicSchema<T>, unknown>, "create-data-table", unknown>;
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createDataTableResumeSchema = exports.createDataTableInputSchema = void 0;
|
|
4
|
-
exports.createCreateDataTableTool = createCreateDataTableTool;
|
|
5
|
-
const tools_1 = require("@mastra/core/tools");
|
|
6
|
-
const api_types_1 = require("@n8n/api-types");
|
|
7
|
-
const nanoid_1 = require("nanoid");
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
const columnTypeSchema = zod_1.z.enum(['string', 'number', 'boolean', 'date']);
|
|
10
|
-
exports.createDataTableInputSchema = zod_1.z.object({
|
|
11
|
-
name: zod_1.z.string().min(1).max(128).describe('Table name'),
|
|
12
|
-
projectId: zod_1.z
|
|
13
|
-
.string()
|
|
14
|
-
.optional()
|
|
15
|
-
.describe('Project ID to create the table in. Defaults to personal project.'),
|
|
16
|
-
columns: zod_1.z
|
|
17
|
-
.array(zod_1.z.object({
|
|
18
|
-
name: zod_1.z.string().describe('Column name (alphanumeric + underscores)'),
|
|
19
|
-
type: columnTypeSchema.describe('Column data type'),
|
|
20
|
-
}))
|
|
21
|
-
.min(1)
|
|
22
|
-
.describe('Column definitions'),
|
|
23
|
-
});
|
|
24
|
-
exports.createDataTableResumeSchema = zod_1.z.object({
|
|
25
|
-
approved: zod_1.z.boolean(),
|
|
26
|
-
});
|
|
27
|
-
function isNameConflictError(error) {
|
|
28
|
-
let current = error;
|
|
29
|
-
while (current instanceof Error) {
|
|
30
|
-
if (current.constructor.name === 'DataTableNameConflictError')
|
|
31
|
-
return true;
|
|
32
|
-
current = current.cause;
|
|
33
|
-
}
|
|
34
|
-
return false;
|
|
35
|
-
}
|
|
36
|
-
function createCreateDataTableTool(context) {
|
|
37
|
-
return (0, tools_1.createTool)({
|
|
38
|
-
id: 'create-data-table',
|
|
39
|
-
description: 'Create a new data table with typed columns. ' +
|
|
40
|
-
'Column names must be alphanumeric with underscores, no leading numbers. ' +
|
|
41
|
-
'RESERVED names: "id", "createdAt", "updatedAt" — these are system columns ' +
|
|
42
|
-
'and will be rejected. Prefix with a context-appropriate name instead.',
|
|
43
|
-
inputSchema: exports.createDataTableInputSchema,
|
|
44
|
-
outputSchema: zod_1.z.object({
|
|
45
|
-
table: zod_1.z
|
|
46
|
-
.object({
|
|
47
|
-
id: zod_1.z.string(),
|
|
48
|
-
name: zod_1.z.string(),
|
|
49
|
-
projectId: zod_1.z.string().optional(),
|
|
50
|
-
columns: zod_1.z.array(zod_1.z.object({ id: zod_1.z.string(), name: zod_1.z.string(), type: zod_1.z.string() })),
|
|
51
|
-
createdAt: zod_1.z.string(),
|
|
52
|
-
updatedAt: zod_1.z.string(),
|
|
53
|
-
})
|
|
54
|
-
.optional(),
|
|
55
|
-
denied: zod_1.z.boolean().optional(),
|
|
56
|
-
reason: zod_1.z.string().optional(),
|
|
57
|
-
}),
|
|
58
|
-
suspendSchema: zod_1.z.object({
|
|
59
|
-
requestId: zod_1.z.string(),
|
|
60
|
-
message: zod_1.z.string(),
|
|
61
|
-
severity: api_types_1.instanceAiConfirmationSeveritySchema,
|
|
62
|
-
}),
|
|
63
|
-
resumeSchema: exports.createDataTableResumeSchema,
|
|
64
|
-
execute: async (input, ctx) => {
|
|
65
|
-
const resumeData = ctx?.agent?.resumeData;
|
|
66
|
-
const suspend = ctx?.agent?.suspend;
|
|
67
|
-
if (context.permissions?.createDataTable === 'blocked') {
|
|
68
|
-
return { denied: true, reason: 'Action blocked by admin' };
|
|
69
|
-
}
|
|
70
|
-
const needsApproval = context.permissions?.createDataTable !== 'always_allow';
|
|
71
|
-
if (needsApproval && (resumeData === undefined || resumeData === null)) {
|
|
72
|
-
let message = `Create data table "${input.name}"?`;
|
|
73
|
-
if (input.projectId) {
|
|
74
|
-
const project = await context.workspaceService?.getProject?.(input.projectId);
|
|
75
|
-
const projectLabel = project?.name ?? input.projectId;
|
|
76
|
-
message = `Create data table "${input.name}" in project "${projectLabel}"?`;
|
|
77
|
-
}
|
|
78
|
-
await suspend?.({
|
|
79
|
-
requestId: (0, nanoid_1.nanoid)(),
|
|
80
|
-
message,
|
|
81
|
-
severity: 'info',
|
|
82
|
-
});
|
|
83
|
-
return {};
|
|
84
|
-
}
|
|
85
|
-
if (resumeData !== undefined && resumeData !== null && !resumeData.approved) {
|
|
86
|
-
return { denied: true, reason: 'User denied the action' };
|
|
87
|
-
}
|
|
88
|
-
try {
|
|
89
|
-
const table = await context.dataTableService.create(input.name, input.columns, {
|
|
90
|
-
projectId: input.projectId,
|
|
91
|
-
});
|
|
92
|
-
return { table };
|
|
93
|
-
}
|
|
94
|
-
catch (error) {
|
|
95
|
-
if (isNameConflictError(error)) {
|
|
96
|
-
return {
|
|
97
|
-
denied: true,
|
|
98
|
-
reason: `Table "${input.name}" already exists. Use list-data-tables to find it and get-data-table-schema to check its columns.`,
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
throw error;
|
|
102
|
-
}
|
|
103
|
-
},
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=create-data-table.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create-data-table.tool.js","sourceRoot":"","sources":["../../../src/tools/data-tables/create-data-table.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import type { InstanceAiContext } from '../../types';
|
|
3
|
-
export declare const deleteDataTableColumnInputSchema: z.ZodObject<{
|
|
4
|
-
dataTableId: z.ZodString;
|
|
5
|
-
columnId: z.ZodString;
|
|
6
|
-
}, "strip", z.ZodTypeAny, {
|
|
7
|
-
dataTableId: string;
|
|
8
|
-
columnId: string;
|
|
9
|
-
}, {
|
|
10
|
-
dataTableId: string;
|
|
11
|
-
columnId: string;
|
|
12
|
-
}>;
|
|
13
|
-
export declare const deleteDataTableColumnResumeSchema: z.ZodObject<{
|
|
14
|
-
approved: z.ZodBoolean;
|
|
15
|
-
}, "strip", z.ZodTypeAny, {
|
|
16
|
-
approved: boolean;
|
|
17
|
-
}, {
|
|
18
|
-
approved: boolean;
|
|
19
|
-
}>;
|
|
20
|
-
export declare function createDeleteDataTableColumnTool(context: InstanceAiContext): import("@mastra/core/tools").Tool<InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, import("@mastra/core/tools").ToolExecutionContext<InferPublicSchema<T>, InferPublicSchema<T>, unknown>, "delete-data-table-column", unknown>;
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.deleteDataTableColumnResumeSchema = exports.deleteDataTableColumnInputSchema = void 0;
|
|
4
|
-
exports.createDeleteDataTableColumnTool = createDeleteDataTableColumnTool;
|
|
5
|
-
const tools_1 = require("@mastra/core/tools");
|
|
6
|
-
const api_types_1 = require("@n8n/api-types");
|
|
7
|
-
const nanoid_1 = require("nanoid");
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
exports.deleteDataTableColumnInputSchema = zod_1.z.object({
|
|
10
|
-
dataTableId: zod_1.z.string().describe('ID of the data table'),
|
|
11
|
-
columnId: zod_1.z.string().describe('ID of the column to delete'),
|
|
12
|
-
});
|
|
13
|
-
exports.deleteDataTableColumnResumeSchema = zod_1.z.object({
|
|
14
|
-
approved: zod_1.z.boolean(),
|
|
15
|
-
});
|
|
16
|
-
function createDeleteDataTableColumnTool(context) {
|
|
17
|
-
return (0, tools_1.createTool)({
|
|
18
|
-
id: 'delete-data-table-column',
|
|
19
|
-
description: 'Remove a column from a data table. All data in the column will be lost.',
|
|
20
|
-
inputSchema: exports.deleteDataTableColumnInputSchema,
|
|
21
|
-
outputSchema: zod_1.z.object({
|
|
22
|
-
success: zod_1.z.boolean(),
|
|
23
|
-
denied: zod_1.z.boolean().optional(),
|
|
24
|
-
reason: zod_1.z.string().optional(),
|
|
25
|
-
}),
|
|
26
|
-
suspendSchema: zod_1.z.object({
|
|
27
|
-
requestId: zod_1.z.string(),
|
|
28
|
-
message: zod_1.z.string(),
|
|
29
|
-
severity: api_types_1.instanceAiConfirmationSeveritySchema,
|
|
30
|
-
}),
|
|
31
|
-
resumeSchema: exports.deleteDataTableColumnResumeSchema,
|
|
32
|
-
execute: async (input, ctx) => {
|
|
33
|
-
const resumeData = ctx?.agent?.resumeData;
|
|
34
|
-
const suspend = ctx?.agent?.suspend;
|
|
35
|
-
if (context.permissions?.mutateDataTableSchema === 'blocked') {
|
|
36
|
-
return { success: false, denied: true, reason: 'Action blocked by admin' };
|
|
37
|
-
}
|
|
38
|
-
const needsApproval = context.permissions?.mutateDataTableSchema !== 'always_allow';
|
|
39
|
-
if (needsApproval && (resumeData === undefined || resumeData === null)) {
|
|
40
|
-
await suspend?.({
|
|
41
|
-
requestId: (0, nanoid_1.nanoid)(),
|
|
42
|
-
message: `Delete column "${input.columnId}" from data table "${input.dataTableId}"? All data in this column will be permanently lost.`,
|
|
43
|
-
severity: 'destructive',
|
|
44
|
-
});
|
|
45
|
-
return { success: false };
|
|
46
|
-
}
|
|
47
|
-
if (resumeData !== undefined && resumeData !== null && !resumeData.approved) {
|
|
48
|
-
return { success: false, denied: true, reason: 'User denied the action' };
|
|
49
|
-
}
|
|
50
|
-
await context.dataTableService.deleteColumn(input.dataTableId, input.columnId);
|
|
51
|
-
return { success: true };
|
|
52
|
-
},
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=delete-data-table-column.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"delete-data-table-column.tool.js","sourceRoot":"","sources":["../../../src/tools/data-tables/delete-data-table-column.tool.ts"],"names":[],"mappings":";;;AAgBA,0EAgDC;AAhED,8CAAgD;AAChD,8CAAsE;AACtE,mCAAgC;AAChC,6BAAwB;AAIX,QAAA,gCAAgC,GAAG,OAAC,CAAC,MAAM,CAAC;IACxD,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACxD,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;CAC3D,CAAC,CAAC;AAEU,QAAA,iCAAiC,GAAG,OAAC,CAAC,MAAM,CAAC;IACzD,QAAQ,EAAE,OAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAC;AAEH,SAAgB,+BAA+B,CAAC,OAA0B;IACzE,OAAO,IAAA,kBAAU,EAAC;QACjB,EAAE,EAAE,0BAA0B;QAC9B,WAAW,EAAE,yEAAyE;QACtF,WAAW,EAAE,wCAAgC;QAC7C,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC;YACtB,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE;YACpB,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAC9B,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;QACF,aAAa,EAAE,OAAC,CAAC,MAAM,CAAC;YACvB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;YACrB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;YACnB,QAAQ,EAAE,gDAAoC;SAC9C,CAAC;QACF,YAAY,EAAE,yCAAiC;QAC/C,OAAO,EAAE,KAAK,EAAE,KAAuD,EAAE,GAAG,EAAE,EAAE;YAC/E,MAAM,UAAU,GAAG,GAAG,EAAE,KAAK,EAAE,UAEnB,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC;YAEpC,IAAI,OAAO,CAAC,WAAW,EAAE,qBAAqB,KAAK,SAAS,EAAE,CAAC;gBAC9D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;YAC5E,CAAC;YAED,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,qBAAqB,KAAK,cAAc,CAAC;YAGpF,IAAI,aAAa,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,CAAC,EAAE,CAAC;gBACxE,MAAM,OAAO,EAAE,CAAC;oBACf,SAAS,EAAE,IAAA,eAAM,GAAE;oBACnB,OAAO,EAAE,kBAAkB,KAAK,CAAC,QAAQ,sBAAsB,KAAK,CAAC,WAAW,sDAAsD;oBACtI,QAAQ,EAAE,aAAsB;iBAChC,CAAC,CAAC;gBACH,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YAC3B,CAAC;YAGD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAC7E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;YAC3E,CAAC;YAGD,MAAM,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC/E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import type { InstanceAiContext } from '../../types';
|
|
3
|
-
export declare const deleteDataTableRowsInputSchema: z.ZodObject<{
|
|
4
|
-
dataTableId: z.ZodString;
|
|
5
|
-
filter: z.ZodObject<{
|
|
6
|
-
type: z.ZodEnum<["and", "or"]>;
|
|
7
|
-
filters: z.ZodArray<z.ZodObject<{
|
|
8
|
-
columnName: z.ZodString;
|
|
9
|
-
condition: z.ZodEnum<["eq", "neq", "like", "gt", "gte", "lt", "lte"]>;
|
|
10
|
-
value: z.ZodNullable<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
|
|
11
|
-
}, "strip", z.ZodTypeAny, {
|
|
12
|
-
value: string | number | boolean | null;
|
|
13
|
-
columnName: string;
|
|
14
|
-
condition: "eq" | "neq" | "like" | "gt" | "gte" | "lt" | "lte";
|
|
15
|
-
}, {
|
|
16
|
-
value: string | number | boolean | null;
|
|
17
|
-
columnName: string;
|
|
18
|
-
condition: "eq" | "neq" | "like" | "gt" | "gte" | "lt" | "lte";
|
|
19
|
-
}>, "many">;
|
|
20
|
-
}, "strip", z.ZodTypeAny, {
|
|
21
|
-
type: "and" | "or";
|
|
22
|
-
filters: {
|
|
23
|
-
value: string | number | boolean | null;
|
|
24
|
-
columnName: string;
|
|
25
|
-
condition: "eq" | "neq" | "like" | "gt" | "gte" | "lt" | "lte";
|
|
26
|
-
}[];
|
|
27
|
-
}, {
|
|
28
|
-
type: "and" | "or";
|
|
29
|
-
filters: {
|
|
30
|
-
value: string | number | boolean | null;
|
|
31
|
-
columnName: string;
|
|
32
|
-
condition: "eq" | "neq" | "like" | "gt" | "gte" | "lt" | "lte";
|
|
33
|
-
}[];
|
|
34
|
-
}>;
|
|
35
|
-
}, "strip", z.ZodTypeAny, {
|
|
36
|
-
filter: {
|
|
37
|
-
type: "and" | "or";
|
|
38
|
-
filters: {
|
|
39
|
-
value: string | number | boolean | null;
|
|
40
|
-
columnName: string;
|
|
41
|
-
condition: "eq" | "neq" | "like" | "gt" | "gte" | "lt" | "lte";
|
|
42
|
-
}[];
|
|
43
|
-
};
|
|
44
|
-
dataTableId: string;
|
|
45
|
-
}, {
|
|
46
|
-
filter: {
|
|
47
|
-
type: "and" | "or";
|
|
48
|
-
filters: {
|
|
49
|
-
value: string | number | boolean | null;
|
|
50
|
-
columnName: string;
|
|
51
|
-
condition: "eq" | "neq" | "like" | "gt" | "gte" | "lt" | "lte";
|
|
52
|
-
}[];
|
|
53
|
-
};
|
|
54
|
-
dataTableId: string;
|
|
55
|
-
}>;
|
|
56
|
-
export declare const deleteDataTableRowsResumeSchema: z.ZodObject<{
|
|
57
|
-
approved: z.ZodBoolean;
|
|
58
|
-
}, "strip", z.ZodTypeAny, {
|
|
59
|
-
approved: boolean;
|
|
60
|
-
}, {
|
|
61
|
-
approved: boolean;
|
|
62
|
-
}>;
|
|
63
|
-
export declare function createDeleteDataTableRowsTool(context: InstanceAiContext): import("@mastra/core/tools").Tool<InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, import("@mastra/core/tools").ToolExecutionContext<InferPublicSchema<T>, InferPublicSchema<T>, unknown>, "delete-data-table-rows", unknown>;
|