38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
"""
|
|
Server state management module.
|
|
"""
|
|
|
|
from typing import Optional, Any
|
|
from context.conversation_manager import ConversationManager, get_conversation_manager
|
|
from agent import get_agent_registry
|
|
|
|
|
|
class ServerState:
|
|
"""Server state management class, replacing global variables."""
|
|
|
|
def __init__(self):
|
|
self.agent_registry: Optional[Any] = None
|
|
self.conversation_manager: Optional[ConversationManager] = None
|
|
|
|
def initialize(self) -> None:
|
|
"""Initialize server state."""
|
|
self.agent_registry = get_agent_registry()
|
|
self.conversation_manager = get_conversation_manager()
|
|
|
|
# Create the default Agent instance.
|
|
self.agent_registry.get_or_create_agent(
|
|
"cadagent",
|
|
name="CADAgent Web Service",
|
|
description="Professional CAD modeling assistant with web API",
|
|
max_history_length=4, # DEFAULT_MAX_HISTORY_LENGTH
|
|
)
|
|
|
|
|
|
# Global server state.
|
|
server_state = ServerState()
|
|
|
|
|
|
def get_server_state() -> ServerState:
|
|
"""Get the server state dependency."""
|
|
return server_state
|