from pydantic_settings import BaseSettings from typing import Optional class Settings(BaseSettings): # Device device_serial: Optional[str] = None # None = auto-detect first device adb_path: str = "/opt/homebrew/bin/adb" screenshot_dir: str = "data/screenshots" # VLM vlm_provider: str = "poe" # local / poe / openrouter vlm_model: str = "Qwen/Qwen2.5-VL-7B-Instruct" poe_api_key: Optional[str] = None openrouter_api_key: Optional[str] = None # Agent max_steps: int = 20 action_delay: float = 1.5 # seconds to wait after each action screenshot_timeout: float = 5.0 verify_after_action: bool = True # Server host: str = "0.0.0.0" port: int = 4380 model_config = {"env_file": ".env", "env_file_encoding": "utf-8"} settings = Settings()