/** * LlamaIndex Adapter * * Integrates LlamaIndex agents (QueryEngine, ChatEngine, AgentRunner) * with the SwarmOrchestrator. LlamaIndex specialises in retrieval-augmented * generation (RAG) and agent-based reasoning over data. * * Usage: * const adapter = new LlamaIndexAdapter(); * adapter.registerQueryEngine("rag-search", myQueryEngine); * adapter.registerChatEngine("assistant", myChatEngine); * adapter.registerAgentRunner("researcher", myAgentRunner); * await registry.addAdapter(adapter); * * Then in the orchestrator: * delegateTask({ targetAgent: "llamaindex:rag-search", ... }) * * @module LlamaIndexAdapter * @version 1.0.0 */ import { BaseAdapter } from './base-adapter'; import type { AdapterCapabilities, AgentPayload, AgentContext, AgentResult } from '../types/agent-adapter'; /** Matches LlamaIndex's BaseQueryEngine */ export interface LlamaIndexQueryEngine { query(query: string): Promise; } /** Matches LlamaIndex's BaseChatEngine */ export interface LlamaIndexChatEngine { chat(message: string, chatHistory?: Array<{ role: string; content: string; }>): Promise; reset?(): void; } /** Matches LlamaIndex's AgentRunner / OpenAIAgent / ReActAgent */ export interface LlamaIndexAgentRunner { chat(message: string): Promise; /** Stream response (optional) */ streamChat?(message: string): AsyncIterable<{ response: string; }>; /** Step-by-step execution (optional) */ runStep?(taskId: string, input?: string): Promise<{ output: unknown; isLast: boolean; }>; createTask?(input: string): Promise<{ taskId: string; }>; reset?(): void; } /** LlamaIndex response object */ export interface LlamaIndexResponse { response?: string; toString?(): string; sourceNodes?: Array<{ node?: { text?: string; metadata?: Record; }; score?: number; }>; metadata?: Record; } export declare class LlamaIndexAdapter extends BaseAdapter { readonly name = "llamaindex"; readonly version = "1.0.0"; private engines; get capabilities(): AdapterCapabilities; registerQueryEngine(agentId: string, engine: LlamaIndexQueryEngine, metadata?: { description?: string; capabilities?: string[]; }): void; registerChatEngine(agentId: string, engine: LlamaIndexChatEngine, metadata?: { description?: string; capabilities?: string[]; }): void; registerAgentRunner(agentId: string, engine: LlamaIndexAgentRunner, metadata?: { description?: string; capabilities?: string[]; }): void; executeAgent(agentId: string, payload: AgentPayload, context: AgentContext): Promise; private extractQuery; private executeQuery; private executeChat; private executeAgentRunner; private normalizeResponse; } //# sourceMappingURL=llamaindex-adapter.d.ts.map