@xynehq/jaf
Version:
Juspay Agent Framework - A purely functional agent framework with immutable state and composable tools
48 lines • 2.77 kB
TypeScript
/**
* JAF ADK Layer - Agent System
*
* Functional agent creation and management utilities
*/
import { Agent, AgentConfig, DelegationStrategy, Tool, ValidationResult, createAgentError, Model } from '../types';
export declare const generateAgentId: () => string;
export declare const createAgent: (config: AgentConfig) => Agent;
export declare const createSimpleAgent: (name: string, model: Model | string, instruction: string, tools?: Tool[]) => Agent;
export declare const createMultiAgent: (name: string, model: Model | string, instruction: string, subAgents: AgentConfig[], delegationStrategy?: DelegationStrategy) => Agent;
export declare const validateAgentConfig: (config: AgentConfig) => ValidationResult<AgentConfig>;
export declare const validateAgent: (agent: Agent) => ValidationResult<Agent>;
export declare const cloneAgent: (agent: Agent, overrides?: Partial<AgentConfig>) => Agent;
export declare const updateAgent: (agent: Agent, updates: Partial<AgentConfig>) => Agent;
export declare const addToolToAgent: (agent: Agent, tool: Tool) => Agent;
export declare const removeToolFromAgent: (agent: Agent, toolName: string) => Agent;
export declare const addSubAgent: (agent: Agent, subAgent: AgentConfig) => Agent;
export declare const removeSubAgent: (agent: Agent, subAgentName: string) => Agent;
export declare const getAgentTool: (agent: Agent, toolName: string) => Tool | null;
export declare const hasAgentTool: (agent: Agent, toolName: string) => boolean;
export declare const getAgentSubAgent: (agent: Agent, subAgentName: string) => AgentConfig | null;
export declare const hasSubAgent: (agent: Agent, subAgentName: string) => boolean;
export declare const isMultiAgent: (agent: Agent) => boolean;
export declare const getAgentToolNames: (agent: Agent) => string[];
export declare const getSubAgentNames: (agent: Agent) => string[];
export declare const getAgentStats: (agent: Agent) => {
id: string;
name: string;
model: string;
toolCount: number;
subAgentCount: number;
hasGuardrails: boolean;
hasInputSchema: boolean;
hasOutputSchema: boolean;
hasExamples: boolean;
isMultiAgent: boolean;
created: Date;
lastModified: Date | undefined;
};
export declare const createWeatherAgent: () => Agent;
export declare const createChatAgent: () => Agent;
export declare const createCodeAgent: () => Agent;
export declare const agentToJSON: (agent: Agent) => string;
export declare const agentFromJSON: (json: string) => Agent;
export declare const compareAgents: (agent1: Agent, agent2: Agent) => boolean;
export { createAgentError };
export declare const withAgentErrorHandling: <T extends unknown[], R>(fn: (...args: T) => R, agentId?: string) => (...args: T) => R;
//# sourceMappingURL=index.d.ts.map