import json from device import controller from tools.base_tool import BaseTool, ToolResult class Tool(BaseTool): name = "uav_get_state" description = ( "获取无人系统当前状态, 例如当前位置等信息" ) parameters = { "type": "object", "properties": { }, "required": [""], } def execute(self) -> ToolResult: if not controller.is_connected: if not controller.connect(): return ToolResult(success=False, output="连接无人机失败") try: telemetry = controller.get_telemetry() return ToolResult(success=True, output=json.dumps(telemetry.to_dict(), ensure_ascii=True)) except Exception as e: return ToolResult(success=False, output=str(e))