Interface ToolOrchestratorConfig

ToolOrchestratorConfig

Description

Configuration options for the ToolOrchestrator. This interface allows for fine-tuning its operational parameters, default behaviors, logging levels, and integration points with other system components.

interface ToolOrchestratorConfig {
    orchestratorId?: string;
    defaultToolCallTimeoutMs?: number;
    maxConcurrentToolCalls?: number;
    logToolCalls?: boolean;
    globalDisabledTools?: string[];
    toolRegistrySettings?: ToolRegistrySettings;
    customParameters?: Record<string, any>;
}

Properties

orchestratorId?: string

An optional unique identifier for this ToolOrchestrator instance. If not provided, one may be generated automatically (e.g., by the orchestrator's constructor). This ID is useful for logging, debugging, and potentially for managing multiple orchestrator instances in more complex or distributed setups.

defaultToolCallTimeoutMs?: number

Default timeout in milliseconds (default: 30 seconds) for a tool execution if the tool itself does not specify a more granular timeout or if the ToolExecutor needs a fallback. (Note: Actual timeout enforcement is typically handled by the ToolExecutor or the tool implementation).

maxConcurrentToolCalls?: number

Maximum number of tool calls that the orchestrator, or more likely the underlying ToolExecutor, will attempt to process concurrently. This helps in managing system resources and preventing overload from too many simultaneous tool executions. (Conceptual for orchestrator, executor enforces).

logToolCalls?: boolean

If true (default), detailed information about tool calls (including requests, arguments, results, and any errors) will be logged by the orchestrator. This is highly beneficial for debugging, auditing tool usage, and monitoring system behavior.

globalDisabledTools?: string[]

An array of tool names (ITool.name) or tool IDs (ITool.id) that are globally disabled. These tools will not be registered or, if already present, will not be executed, irrespective of other permission settings. This provides a system-wide mechanism to quickly disable problematic or deprecated tools.

toolRegistrySettings?: ToolRegistrySettings

Configuration settings that specifically govern the behavior of the internal tool registry, such as dynamic registration allowance.

customParameters?: Record<string, any>

A flexible object to accommodate any other custom parameters or settings that specific ToolOrchestrator implementations or extensions might require. This allows for extensibility without modifying the core interface.