n8n
Version:
n8n Workflow Automation Tool
47 lines (46 loc) • 2.59 kB
TypeScript
import { Logger } from '@n8n/backend-common';
import { AgentsConfig } from '@n8n/config';
import { BinaryDataService, InstanceSettings } from 'n8n-core';
import { AiService } from '../../services/ai.service';
import { type GlobKnowledgeFilesRequest, type GlobKnowledgeFilesResult, type ReadKnowledgeRequest, type ReadKnowledgeResult, type SearchKnowledgeRequest, type SearchKnowledgeResult } from './agent-knowledge-retrieval';
import { AgentFileRepository } from './repositories/agent-file.repository';
import { AgentRepository } from './repositories/agent.repository';
export declare const AGENT_KNOWLEDGE_SANDBOX_NAME_PREFIX = "agent-";
export declare class AgentKnowledgeSandboxService {
private readonly agentsConfig;
private readonly logger;
private readonly aiService;
private readonly instanceSettings;
private readonly agentFileRepository;
private readonly agentRepository;
private readonly binaryDataService;
private readonly pendingSandboxAcquisitions;
private readonly mirrorManifestHashes;
private readonly pendingMirrorSyncs;
constructor(agentsConfig: AgentsConfig, logger: Logger, aiService: AiService, instanceSettings: InstanceSettings, agentFileRepository: AgentFileRepository, agentRepository: AgentRepository, binaryDataService: BinaryDataService);
warmSandbox(projectId: string, agentId: string): Promise<void>;
destroySandbox(projectId: string, agentId: string): Promise<void>;
searchKnowledge(projectId: string, agentId: string, request: SearchKnowledgeRequest): Promise<SearchKnowledgeResult>;
globKnowledgeFiles(projectId: string, agentId: string, request: GlobKnowledgeFilesRequest): Promise<GlobKnowledgeFilesResult>;
readKnowledge(projectId: string, agentId: string, request: ReadKnowledgeRequest): Promise<ReadKnowledgeResult>;
private executeKnowledgeOperation;
private ensureMirrorSynced;
private syncMirror;
private uploadMirrorFiles;
prewarmMirrorInBackground(projectId: string, agentId: string): void;
invalidateMirror(projectId: string, agentId: string): void;
private loadKnowledgeReferenceLookup;
private loadKnowledgeFileReferences;
private resolveRequiredFile;
private resolveOptionalFile;
private acquireSandbox;
private acquireSandboxFresh;
private resolveDaytonaConnection;
private resolveSandboxByName;
private resolveReusableSandbox;
private assertKnowledgeAccess;
private assertKnowledgeConfiguration;
private assertValidPathSegments;
private isKnowledgeBaseEnabled;
private assertKnowledgeBaseEnabled;
}