agentis
Version:
A TypeScript framework for building sophisticated multi-agent systems
44 lines (43 loc) • 1.77 kB
TypeScript
import { IAgent, AgentMemory } from './IAgent';
import { AgentMessage } from './AgentMessage';
import { Task } from './Task';
import { MiddlewareFunction } from '../middleware/AgentMiddleware';
import { ToolRegistry } from '../tools/ToolRegistry';
import { ITool } from '../tools/ITool';
import { AgentConfig } from './types';
import { EnhancedMemoryClient, MemoryType } from '../memory/EnhancedMemoryClient';
import { EnhancedToolOrchestrator } from '../tools/EnhancedToolOrchestrator';
export declare class Agent implements IAgent {
id: string;
name: string;
lore: string;
role: string;
goals: string[];
shortTermMemory: AgentMemory;
longTermMemory: AgentMemory;
tools: ITool[];
private llmClient;
private toolRegistry;
private toolOrchestrator;
private memoryClient;
private middlewares;
private taskQueue;
private isExecuting;
private model;
constructor(id: string, name: string, lore: string, role: string, goals: string[], tools?: ITool[], model?: AgentConfig['model']);
initializeMemory(): Promise<void>;
useMiddleware(middleware: MiddlewareFunction): void;
getMemoryClient(): EnhancedMemoryClient;
getToolRegistry(): ToolRegistry;
getToolOrchestrator(): EnhancedToolOrchestrator;
receiveMessage(message: AgentMessage): Promise<AgentMessage>;
planAndExecute(goal: string): Promise<void>;
private executeTaskQueue;
private planToolCalls;
generateTasks(goal: string): Promise<Task[]>;
executeTask(task: Task): Promise<void>;
sendMessage(message: AgentMessage): Promise<void>;
private updateMemory;
saveToMemory(message: string, response: string): Promise<void>;
recallRelevantMemories(query: string, type?: MemoryType): Promise<string[]>;
}