UNPKG

capsule-ai-cli

Version:

The AI Model Orchestrator - Intelligent multi-model workflows with device-locked licensing

67 lines 2.28 kB
import { EventEmitter } from 'events'; import { ChatService } from './chat.js'; import { ContextManager } from './context.js'; import { Context, ToolCall } from '../types/index.js'; export interface SubAgentTask { taskId: string; name: string; description: string; status: 'pending' | 'running' | 'completed' | 'failed' | 'cancelled'; provider?: string; model?: string; agent?: { context: Context; contextManager: ContextManager; chatService: ChatService; abortController: AbortController; }; result?: string; toolCalls: ToolCall[]; tokensUsed: number; cost: number; error?: string; startTime: Date; endTime?: Date; } export interface SubAgentEvents { 'task:created': (task: SubAgentTask) => void; 'task:started': (task: SubAgentTask) => void; 'task:progress': (taskId: string, message: string) => void; 'task:tool_call': (taskId: string, toolCall: ToolCall) => void; 'task:completed': (task: SubAgentTask) => void; 'task:failed': (task: SubAgentTask) => void; 'task:cancelled': (task: SubAgentTask) => void; } export declare class SubAgentManager extends EventEmitter { private tasks; private activeTasks; constructor(); emit<K extends keyof SubAgentEvents>(event: K, ...args: Parameters<SubAgentEvents[K]>): boolean; on<K extends keyof SubAgentEvents>(event: K, listener: SubAgentEvents[K]): this; spawnTask(config: { name: string; description: string; provider?: string; model?: string; parallel?: boolean; }): Promise<SubAgentTask>; private executeSubAgent; private setupToolCallTracking; getTask(taskId: string): SubAgentTask | undefined; getAllTasks(): SubAgentTask[]; getActiveTasks(): SubAgentTask[]; cancelTask(taskId: string): Promise<boolean>; waitForTask(taskId: string, timeoutMs?: number): Promise<SubAgentTask>; getStats(): { total: number; pending: number; running: number; completed: number; failed: number; cancelled: number; totalTokensUsed: number; totalCost: number; }; } export declare const subAgentManager: SubAgentManager; //# sourceMappingURL=sub-agent-manager.d.ts.map