UNPKG

n8n

Version:

n8n Workflow Automation Tool

154 lines 9.22 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.AgentsModule = void 0; const backend_common_1 = require("@n8n/backend-common"); const config_1 = require("@n8n/config"); const decorators_1 = require("@n8n/decorators"); const di_1 = require("@n8n/di"); const n8n_core_1 = require("n8n-core"); let AgentsModule = class AgentsModule { async init() { await import('./agents-catalog.controller.js'); await import('./agent-threads.controller.js'); await import('./agents.controller.js'); await import('./agents-config.controller.js'); await import('./agents-skills.controller.js'); await import('./agent-knowledge.controller.js'); await import('./agent-publish.controller.js'); await import('./agent-chat.controller.js'); await import('./agent-integrations.controller.js'); await import('./agent-vector-stores.controller.js'); await import('./agent-tasks.controller.js'); await import('./agent-sandbox.controller.js'); await import('./agents-list.controller.js'); await import('./builder/agents-builder-settings.controller.js'); const { AgentsService } = await import('./agents.service.js'); di_1.Container.get(AgentsService); const { AgentsBuilderSettingsService } = await import('./builder/agents-builder-settings.service.js'); di_1.Container.get(AgentsBuilderSettingsService); const { AgentExecutionService } = await import('./agent-execution.service.js'); di_1.Container.get(AgentExecutionService); const { AzureByteStore, S3ByteStore } = await import('@n8n/blob-storage'); const { AgentExecutionLogStore } = await import('./execution-log/agent-execution-log-store.js'); const { ExecutionDataJsonStore } = await import('../../executions/execution-data/execution-data-json-store.js'); const agentExecutionLogStore = di_1.Container.get(AgentExecutionLogStore); const executionDataJsonStore = di_1.Container.get(ExecutionDataJsonStore); if (executionDataJsonStore.hasLocation('s3')) { const { ObjectStoreService } = await import('@n8n/blob-storage/object-store'); agentExecutionLogStore.registerByteStore('s3', new S3ByteStore(di_1.Container.get(ObjectStoreService))); } if (executionDataJsonStore.hasLocation('az')) { const { AzureBlobService } = await import('@n8n/blob-storage/azure-blob'); agentExecutionLogStore.registerByteStore('az', new AzureByteStore(di_1.Container.get(AzureBlobService))); } const { AgentRuntimeCacheService } = await import('./agent-runtime-cache.service.js'); di_1.Container.get(AgentRuntimeCacheService); const { AgentHistoryRepository } = await import('./repositories/agent-history.repository.js'); di_1.Container.get(AgentHistoryRepository); const { AgentSecureRuntime } = await import('./runtime/agent-secure-runtime.js'); di_1.Container.get(AgentSecureRuntime); const { ChatIntegrationRegistry } = await import('./integrations/agent-chat-integration.js'); const { SlackIntegration } = await import('./integrations/platforms/slack-integration.js'); const { TelegramIntegration } = await import('./integrations/platforms/telegram-integration.js'); const { LinearIntegration } = await import('./integrations/platforms/linear-integration.js'); const { N8nChatIntegration } = await import('./integrations/platforms/n8n-chat-integration.js'); const registry = di_1.Container.get(ChatIntegrationRegistry); registry.register(di_1.Container.get(SlackIntegration)); registry.register(di_1.Container.get(TelegramIntegration)); registry.register(di_1.Container.get(LinearIntegration)); registry.register(di_1.Container.get(N8nChatIntegration)); const { ChatIntegrationService } = await import('./integrations/chat-integration.service.js'); const { AgentTaskService } = await import('./agent-task.service.js'); const chatService = di_1.Container.get(ChatIntegrationService); const taskService = di_1.Container.get(AgentTaskService); const logger = di_1.Container.get(backend_common_1.Logger); const instanceSettings = di_1.Container.get(n8n_core_1.InstanceSettings); void chatService.reconnectAll().catch((error) => { logger.error('[Agents] Failed to reconnect integrations on startup', { error: error instanceof Error ? error.message : String(error), }); }); if (instanceSettings.isLeader) { void taskService.reconnectAll().catch((error) => { logger.error('[Agents] Failed to reconnect tasks on startup', { error: error instanceof Error ? error.message : String(error), }); }); } else { logger.debug('[Agents] Skipping task reconnect on startup — not leader'); } } async settings() { const config = di_1.Container.get(config_1.AgentsConfig); const { isAgentKnowledgeBaseEnabled } = await import('./agent-knowledge-gate.js'); const { AiService } = await import('../../services/ai.service.js'); const aiService = di_1.Container.get(AiService); const proxyEnabled = aiService.isProxyEnabled(); return { enabled: true, modules: [...config.modules], knowledgeBaseEnabled: isAgentKnowledgeBaseEnabled(config, proxyEnabled), proxyEnabled, }; } async entities() { const { Agent } = await import('./entities/agent.entity.js'); const { AgentFile } = await import('./entities/agent-file.entity.js'); const { AgentChatSubscription } = await import('./entities/agent-chat-subscription.entity.js'); const { AgentCheckpoint } = await import('./entities/agent-checkpoint.entity.js'); const { AgentResourceEntity } = await import('./entities/agent-resource.entity.js'); const { AgentThreadEntity } = await import('./entities/agent-thread.entity.js'); const { AgentMessageEntity } = await import('./entities/agent-message.entity.js'); const { AgentExecutionThread } = await import('./entities/agent-execution-thread.entity.js'); const { AgentExecution } = await import('./entities/agent-execution.entity.js'); const { AgentHistory } = await import('./entities/agent-history.entity.js'); const { AgentTask } = await import('./entities/agent-task.entity.js'); const { AgentTaskRunLock } = await import('./entities/agent-task-run-lock.entity.js'); const { AgentTaskSnapshot } = await import('./entities/agent-task-snapshot.entity.js'); const { AgentObservationEntity } = await import('./entities/agent-observation.entity.js'); const { AgentObservationCursorEntity } = await import('./entities/agent-observation-cursor.entity.js'); const { AgentObservationLockEntity } = await import('./entities/agent-observation-lock.entity.js'); const { AgentMemoryEntryEntity } = await import('./entities/agent-memory-entry.entity.js'); const { AgentMemoryEntryLockEntity } = await import('./entities/agent-memory-entry-lock.entity.js'); const { AgentMemoryEntrySourceEntity } = await import('./entities/agent-memory-entry-source.entity.js'); const { AgentMemoryEntryCursorEntity } = await import('./entities/agent-memory-entry-cursor.entity.js'); return [ Agent, AgentFile, AgentChatSubscription, AgentCheckpoint, AgentResourceEntity, AgentThreadEntity, AgentMessageEntity, AgentExecutionThread, AgentExecution, AgentHistory, AgentTask, AgentTaskRunLock, AgentTaskSnapshot, AgentObservationEntity, AgentObservationCursorEntity, AgentObservationLockEntity, AgentMemoryEntryEntity, AgentMemoryEntryLockEntity, AgentMemoryEntrySourceEntity, AgentMemoryEntryCursorEntity, ]; } async context() { const { AgentsService } = await import('./agents.service.js'); return { agentsService: di_1.Container.get(AgentsService) }; } }; exports.AgentsModule = AgentsModule; exports.AgentsModule = AgentsModule = __decorate([ (0, decorators_1.BackendModule)({ name: 'agents' }) ], AgentsModule); //# sourceMappingURL=agents.module.js.map