Files
AstrBot/astrbot/core/agent/tool_executor.py
2025-11-01 13:26:19 +08:00

18 lines
438 B
Python

from collections.abc import AsyncGenerator
from typing import Any, Generic
import mcp
from .run_context import ContextWrapper, TContext
from .tool import FunctionTool
class BaseFunctionToolExecutor(Generic[TContext]):
@classmethod
async def execute(
cls,
tool: FunctionTool,
run_context: ContextWrapper[TContext],
**tool_args,
) -> AsyncGenerator[Any | mcp.types.CallToolResult, None]: ...