mirror of
https://github.com/OpenBMB/ChatDev.git
synced 2026-04-26 03:38:12 +00:00
31 lines
1021 B
Python
Executable File
31 lines
1021 B
Python
Executable File
"""Shared runtime context for workflow execution."""
|
|
|
|
from dataclasses import dataclass, field
|
|
from pathlib import Path
|
|
from typing import Any, Dict, Optional
|
|
|
|
from runtime.node.agent import ToolManager
|
|
from utils.function_manager import FunctionManager
|
|
from utils.logger import WorkflowLogger
|
|
from utils.log_manager import LogManager
|
|
from utils.token_tracker import TokenTracker
|
|
from utils.attachments import AttachmentStore
|
|
|
|
|
|
@dataclass
|
|
class RuntimeContext:
|
|
"""Container for runtime-wide dependencies required by GraphExecutor."""
|
|
|
|
tool_manager: ToolManager
|
|
function_manager: FunctionManager
|
|
edge_processor_function_manager: FunctionManager
|
|
logger: WorkflowLogger
|
|
log_manager: LogManager
|
|
token_tracker: TokenTracker
|
|
attachment_store: AttachmentStore
|
|
code_workspace: Path
|
|
global_state: Dict[str, Any] = field(default_factory=dict)
|
|
cycle_manager: Optional[Any] = None # Late-bound by GraphManager
|
|
session_id: Optional[str] = None
|
|
workspace_hook: Optional[Any] = None
|