@wavequery/conductor
Version:
Modular LLM orchestration framework
21 lines (20 loc) • 842 B
TypeScript
import { EventEmitter } from "events";
import { AgentConfig, AgentResponse, AgentStep } from "@/types/interfaces/agent";
import { Tool } from "@/types/interfaces/tool";
export declare class Agent extends EventEmitter {
protected config: AgentConfig;
protected steps: AgentStep[];
protected startTime: number;
constructor(config: AgentConfig);
execute(input: any): Promise<AgentResponse>;
protected runAgentLoop(input: any): Promise<any>;
protected executeStep(input: any): Promise<AgentStep>;
protected decideTool(input: any): Promise<{
action: any;
toolName: string;
}>;
protected getTool(name: string): Tool;
protected createToolSelectionPrompt(input: any): string;
protected shouldStop(step: AgentStep): boolean;
protected createResponse(response: any): AgentResponse;
}