Agent Module#
- class isek.agent.AgentCard(name: str, description: str, capabilities: List[str], tools: List[str], model_type: str)[source]#
Bases:
object
Metadata about an agent for discovery and identification purposes.
- class isek.agent.BaseAgent(name: str | None = None, agent_id: str | None = None, model: Model | None = None, memory: Memory | None = None, tools: List[Toolkit] | None = None, description: str | None = None, success_criteria: str | None = None, instructions: str | List[str] | Callable | None = None, debug_mode: bool = False)[source]#
Bases:
ABC
Abstract base class for all agent implementations in ISEK.
This class defines the interface that all agent implementations must follow. Agents are intelligent entities that can process messages, use tools, maintain memory, and interact with language models to provide responses.
- abstractmethod get_agent_card() AgentCard [source]#
Get metadata about the agent for discovery and identification purposes.
- Returns:
A card containing agent metadata
- Return type:
- Raises:
NotImplementedError -- If the concrete class doesn't implement this method
- get_available_tools() List[str] [source]#
Get list of available tool names.
- Returns:
List of tool names
- Return type:
List[str]
- has_memory() bool [source]#
Check if the agent has memory capabilities.
- Returns:
True if the agent has memory, False otherwise
- Return type:
- has_model() bool [source]#
Check if the agent has a model.
- Returns:
True if the agent has a model, False otherwise
- Return type:
- has_tools() bool [source]#
Check if the agent has tools.
- Returns:
True if the agent has tools, False otherwise
- Return type:
- abstractmethod run(message: str, user_id: str = 'default', session_id: str | None = None) str [source]#
Run the agent with a message and return the response.
- Parameters:
message -- The input message for the agent to process
user_id -- Identifier for the user making the request
session_id -- Optional session identifier for conversation tracking
- Returns:
The agent's response
- Return type:
- Raises:
NotImplementedError -- If the concrete class doesn't implement this method
- class isek.agent.IsekAgent(name: str | None = None, agent_id: str | None = None, model: Model | None = None, memory: Memory | None = None, tools: List[Toolkit] | None = None, description: str | None = None, success_criteria: str | None = None, instructions: str | List[str] | Callable | None = None, debug_mode: bool = False)[source]#
Bases:
BaseAgent
Ultra-simplified Agent class with minimal features.
- get_agent_card() AgentCard [source]#
Get metadata about the agent for discovery and identification purposes.
- print_response(*args, **kwargs)[source]#
Proxy to the shared print_response utility, passing self.run as run_func.
- run(message: str, user_id: str = 'default', session_id: str | None = None, messages: List[Dict | Any] | None = None, audio: Sequence[Any] | None = None, images: Sequence[Any] | None = None, videos: Sequence[Any] | None = None, files: Sequence[Any] | None = None, stream: bool | None = None, stream_intermediate_steps: bool = False, knowledge_filters: Dict[str, Any] | None = None, **kwargs: Any) str [source]#
Run the agent with a message and return the response.
- class isek.agent.base.AgentCard(name: str, description: str, capabilities: List[str], tools: List[str], model_type: str)[source]#
Bases:
object
Metadata about an agent for discovery and identification purposes.
- class isek.agent.base.BaseAgent(name: str | None = None, agent_id: str | None = None, model: Model | None = None, memory: Memory | None = None, tools: List[Toolkit] | None = None, description: str | None = None, success_criteria: str | None = None, instructions: str | List[str] | Callable | None = None, debug_mode: bool = False)[source]#
Bases:
ABC
Abstract base class for all agent implementations in ISEK.
This class defines the interface that all agent implementations must follow. Agents are intelligent entities that can process messages, use tools, maintain memory, and interact with language models to provide responses.
- abstractmethod get_agent_card() AgentCard [source]#
Get metadata about the agent for discovery and identification purposes.
- Returns:
A card containing agent metadata
- Return type:
- Raises:
NotImplementedError -- If the concrete class doesn't implement this method
- get_available_tools() List[str] [source]#
Get list of available tool names.
- Returns:
List of tool names
- Return type:
List[str]
- has_memory() bool [source]#
Check if the agent has memory capabilities.
- Returns:
True if the agent has memory, False otherwise
- Return type:
- has_model() bool [source]#
Check if the agent has a model.
- Returns:
True if the agent has a model, False otherwise
- Return type:
- has_tools() bool [source]#
Check if the agent has tools.
- Returns:
True if the agent has tools, False otherwise
- Return type:
- abstractmethod run(message: str, user_id: str = 'default', session_id: str | None = None) str [source]#
Run the agent with a message and return the response.
- Parameters:
message -- The input message for the agent to process
user_id -- Identifier for the user making the request
session_id -- Optional session identifier for conversation tracking
- Returns:
The agent's response
- Return type:
- Raises:
NotImplementedError -- If the concrete class doesn't implement this method
- class isek.agent.isek_agent.IsekAgent(name: str | None = None, agent_id: str | None = None, model: Model | None = None, memory: Memory | None = None, tools: List[Toolkit] | None = None, description: str | None = None, success_criteria: str | None = None, instructions: str | List[str] | Callable | None = None, debug_mode: bool = False)[source]#
Bases:
BaseAgent
Ultra-simplified Agent class with minimal features.
- get_agent_card() AgentCard [source]#
Get metadata about the agent for discovery and identification purposes.
- print_response(*args, **kwargs)[source]#
Proxy to the shared print_response utility, passing self.run as run_func.
- run(message: str, user_id: str = 'default', session_id: str | None = None, messages: List[Dict | Any] | None = None, audio: Sequence[Any] | None = None, images: Sequence[Any] | None = None, videos: Sequence[Any] | None = None, files: Sequence[Any] | None = None, stream: bool | None = None, stream_intermediate_steps: bool = False, knowledge_filters: Dict[str, Any] | None = None, **kwargs: Any) str [source]#
Run the agent with a message and return the response.