in tools.py [0:0]
def run_main_thread_func(self, func: callable, params: dict = None) -> str:
task_id = str(uuid.uuid4())
task = {
"id": task_id,
"func": func,
"params": params,
}
tool_manager = ToolManager.instance()
tool_manager.add_task(task)
result = tool_manager.get_result(task_id)
if result["status"] == "error":
return f"Error in {func.__name__}: {result['data']}"
return result["data"]