contextual-agent-sdk
Version:
SDK for building AI agents with seamless voice-text context switching
76 lines • 2.73 kB
TypeScript
import { AgentConfig, AgentResponse, Modality, SessionState, AgentEventType, Tool } from './types';
import { LLMProviderConfig } from './types/llm-providers';
export declare class ContextualAgent {
private config;
private sessionManager;
private contextBridge;
private modalityRouter;
private llmManager?;
private contextManager?;
private toolManager?;
private eventListeners;
private lastLLMResponse?;
constructor(config: AgentConfig, legacyOpenAIKey?: string);
processMessage(input: any, targetModality: Modality, sessionId: string, userId?: string): Promise<AgentResponse>;
switchModality(newModality: Modality, sessionId: string): Promise<AgentResponse>;
private initializeContextManager;
private initializeToolManager;
private initializeLLMManager;
private generateResponseWithToolSupport;
private generateResponse;
private buildSystemPrompt;
private combineContextSources;
private generateMockResponse;
getSession(sessionId: string): Promise<SessionState | null>;
getConversationSummary(sessionId: string): Promise<string>;
destroySession(sessionId: string): Promise<boolean>;
on(eventType: AgentEventType, callback: Function): void;
off(eventType: AgentEventType, callback: Function): void;
private emitEvent;
private initializeEventListeners;
getConfig(): AgentConfig;
updateConfig(newConfig: Partial<AgentConfig>): void;
getCapabilities(): {
contextBridging: boolean;
sessionManagement: boolean;
eventSystem: boolean;
llmProviders: string[];
llmProviderStatus: never[] | Promise<{
name: string;
available: boolean;
isDefault: boolean;
isFallback: boolean;
}[]>;
toolIntegration: boolean;
toolCapabilities: {
totalTools: number;
availableTools: string[];
};
voice: boolean;
text: boolean;
speechToText: boolean;
textToSpeech: boolean;
usingMocks: boolean;
};
addLLMProvider(name: string, config: LLMProviderConfig): void;
getLLMProviderStatus(): never[] | Promise<{
name: string;
available: boolean;
isDefault: boolean;
isFallback: boolean;
}[]>;
testLLMProvider(name: string): Promise<{
success: boolean;
responseTime: number;
error?: string;
} | {
success: boolean;
responseTime: number;
error: string;
}>;
setDefaultLLMProvider(name: string): void;
getAvailableLLMProviders(): string[];
getAvailableTools(): Tool[];
shutdown(): Promise<void>;
}
//# sourceMappingURL=ContextualAgent.d.ts.map