Files
letta-server/letta/agents/agent_loop.py
Kian Jones b8e9a80d93 merge this (#4759)
* wait I forgot to comit locally

* cp the entire core directory and then rm the .git subdir
2025-09-17 15:47:40 -07:00

25 lines
885 B
Python

from typing import TYPE_CHECKING
from letta.agents.base_agent_v2 import BaseAgentV2
from letta.agents.letta_agent_v2 import LettaAgentV2
from letta.groups.sleeptime_multi_agent_v3 import SleeptimeMultiAgentV3
from letta.schemas.agent import AgentState
from letta.schemas.enums import AgentType
if TYPE_CHECKING:
from letta.orm import User
class AgentLoop:
"""Factory class for instantiating the agent execution loop based on agent type"""
@staticmethod
def load(agent_state: AgentState, actor: "User") -> BaseAgentV2:
if agent_state.enable_sleeptime and agent_state.agent_type != AgentType.voice_convo_agent:
return SleeptimeMultiAgentV3(agent_state=agent_state, actor=actor, group=agent_state.multi_agent_group)
else:
return LettaAgentV2(
agent_state=agent_state,
actor=actor,
)