import { Tool, ConsoleLogger, MCPServerRegistry, AgentEventStream } from '@tarko/mcp-agent'; import { AgentTARSOptions, BuiltInMCPServers } from '../../types'; import { BrowserManager } from './browser'; import { AgentTARSBaseEnvironment } from '../base'; /** * AgentTARSLocalEnvironment - Handles local environment operations for AgentTARS * * This environment manages local browser, filesystem, and other resources, * providing full local functionality. */ export declare class AgentTARSLocalEnvironment extends AgentTARSBaseEnvironment { private readonly browserManager; private readonly workspacePathResolver; private readonly resourceCleaner; private browserToolsManager?; private filesystemToolsManager?; private searchToolProvider?; private browserGUIAgent?; private mcpServers; private mcpClients; constructor(options: AgentTARSOptions, workspace: string, logger: ConsoleLogger); /** * Initialize all components */ initialize(registerToolFn: (tool: Tool) => void, eventStream?: AgentEventStream.Processor): Promise; /** * Initialize GUI Agent for visual browser control */ private initializeGUIAgent; /** * Initialize search tools */ private initializeSearchTools; /** * Initialize in-memory MCP servers and clients */ private initializeInMemoryMCP; /** * Create MCP servers with appropriate configurations */ private createMCPServers; /** * Create and connect MCP clients */ private createMCPClients; /** * Configure tool managers with MCP clients */ private configureMCPClients; /** * Register tools from managers and remaining MCP clients */ private registerMCPTools; /** * Register tools from a specific MCP client */ private registerToolsFromClient; /** * Handle agent loop start (GUI Agent screenshot if needed) */ onEachAgentLoopStart(sessionId: string, eventStream: AgentEventStream.Processor, isReplaySnapshot: boolean): Promise; /** * Handle tool call preprocessing (lazy browser launch and path resolution) */ onBeforeToolCall(id: string, toolCall: { toolCallId: string; name: string; }, args: any, isReplaySnapshot?: boolean): Promise; /** * Handle post-tool call processing (browser state updates) */ onAfterToolCall(id: string, toolCall: { toolCallId: string; name: string; }, result: any, browserState: any): Promise; /** * Handle session disposal */ onDispose(): Promise; /** * Get browser control information */ getBrowserControlInfo(): { mode: string; tools: string[]; }; /** * Get the browser manager instance */ getBrowserManager(): BrowserManager; /** * Ensure browser is ready for tool calls */ private ensureBrowserReady; /** * Update browser state after navigation */ private updateBrowserState; /** * Get MCP servers for cleanup */ getMCPServers(): BuiltInMCPServers; /** * Get MCP server registry configuration for local mode */ getMCPServerRegistry(): MCPServerRegistry; } //# sourceMappingURL=index.d.ts.map