@sethdouglasford/claude-flow
Version:
Claude Code Flow - Advanced AI-powered development workflows with SPARC methodology
81 lines • 2.23 kB
TypeScript
/**
* Fixed orchestrator implementation for Claude-Flow
*/
import { EventBus } from "./event-bus.js";
import { Logger } from "./logger.js";
import { ConfigManager } from "./config.js";
export interface AgentInfo {
id: string;
type: string;
name: string;
status: string;
assignedTasks: string[];
createdAt: number;
}
export interface TaskInfo {
id: string;
type: string;
description: string;
status: string;
progress: number;
assignedAgent?: string;
error?: string;
}
export interface SessionInfo {
id: string;
type: string;
agentId: string;
}
export interface WorkflowStatus {
status: string;
progress: number;
error?: string;
}
export interface HealthCheckResult {
healthy: boolean;
memory: boolean;
terminalPool: boolean;
mcp: boolean;
}
export declare class Orchestrator {
private config;
private eventBus;
private logger;
private agents;
private tasks;
private sessions;
private persistence;
private workflows;
private started;
constructor(config: ConfigManager, eventBus: EventBus, logger: Logger);
start(): Promise<void>;
private loadFromPersistence;
stop(): void;
spawnAgent(profile: {
type: string;
name: string;
capabilities: string[];
systemPrompt: string;
maxConcurrentTasks: number;
priority: number;
}): Promise<string>;
terminateAgent(agentId: string): Promise<void>;
getActiveAgents(): AgentInfo[];
getAgentInfo(agentId: string): AgentInfo | undefined;
submitTask(task: {
type: string;
description: string;
priority: number;
dependencies: string[];
metadata: Record<string, unknown>;
}): Promise<string>;
getTaskQueue(): TaskInfo[];
getTaskStatus(taskId: string): TaskInfo | undefined;
cancelTask(taskId: string): void;
getActiveSessions(): SessionInfo[];
terminateSession(sessionId: string): Promise<void>;
executeWorkflow(workflow: unknown): Promise<string>;
getWorkflowStatus(workflowId: string): Promise<WorkflowStatus>;
healthCheck(): Promise<HealthCheckResult>;
}
//# sourceMappingURL=orchestrator-fixed.d.ts.map