agentis
Version:
A TypeScript framework for building sophisticated multi-agent systems
28 lines (27 loc) • 968 B
TypeScript
import { AgentMessage } from './AgentMessage';
import { Task } from './Task';
import { ITool } from '../tools/ITool';
import { MiddlewareFunction } from '../middleware/AgentMiddleware';
import { ToolRegistry } from '../tools/ToolRegistry';
import { EnhancedMemoryClient } from '../memory/EnhancedMemoryClient';
export interface AgentMemory {
[key: string]: any;
}
export interface IAgent {
id: string;
name: string;
lore: string;
role: string;
goals: string[];
shortTermMemory: AgentMemory;
longTermMemory: AgentMemory;
tools: ITool[];
receiveMessage(message: AgentMessage): Promise<AgentMessage>;
generateTasks?(goal: string): Promise<Task[]>;
executeTask(task: Task): Promise<void>;
sendMessage(message: AgentMessage): Promise<void>;
initializeMemory(): Promise<void>;
useMiddleware(middleware: MiddlewareFunction): void;
getMemoryClient(): EnhancedMemoryClient;
getToolRegistry(): ToolRegistry;
}