from functools import lru_cache from pydantic import Field from pydantic_settings import BaseSettings, SettingsConfigDict class Settings(BaseSettings): model_config = SettingsConfigDict( env_file=".env", env_prefix="WISECLAW_", extra="ignore", ) env: str = "development" db_url: str = "sqlite:///./wiseclaw.db" admin_host: str = "127.0.0.1" admin_port: int = 8000 ollama_base_url: str = "http://127.0.0.1:11434" default_model: str = "qwen3.5:4b" search_provider: str = "brave" telegram_bot_token: str = Field(default="", repr=False) brave_api_key: str = Field(default="", repr=False) @lru_cache def get_settings() -> Settings: return Settings()