"""Configuration for the coding agent.""" from dotenv import load_dotenv from pydantic import Field from pydantic_settings import BaseSettings load_dotenv() class AgentSettings(BaseSettings): gitea_url: str = "" gitea_token: str = "" gitea_repos_root: str = "" agent_model_id: str = "qwen/qwen3.6-27b" agent_max_retries: int = 2 searxng_url: str = "" searxng_username: str = "" searxng_password: str = "" def get_settings() -> AgentSettings: return AgentSettings() # Module-level singleton instance _agent_settings: AgentSettings = AgentSettings() # Backwards-compatible exports GITEA_URL: str = _agent_settings.gitea_url GITEA_TOKEN: str = _agent_settings.gitea_token GITEA_REPOS_ROOT: str = _agent_settings.gitea_repos_root AGENT_MODEL_ID: str = _agent_settings.agent_model_id AGENT_MAX_RETRIES: int = _agent_settings.agent_max_retries SEARXNG_URL: str = _agent_settings.searxng_url SEARXNG_USERNAME: str = _agent_settings.searxng_username SEARXNG_PASSWORD: str = _agent_settings.searxng_password import os os.environ["GITEA_SERVER_URL"] = GITEA_URL os.environ["GITEA_SERVER_TOKEN"] = GITEA_TOKEN os.environ["SEARXNG_URL"] = SEARXNG_URL os.environ["SEARXNG_USERNAME"] = SEARXNG_USERNAME os.environ["SEARXNG_PASSWORD"] = SEARXNG_PASSWORD