Files
hack/tools/scripts/llm-key-hunter/results/_cache/content/ajdevy_agento.json
T

1 line
19 KiB
JSON

{"repo": "ajdevy/agento", "files": {"src/agento/config.py": {"8f75ebd9488e642fa68ca734d0793a36a370ffb1": {"t": 1785745415.0776691, "n": 3032, "h": "2d55813e74df016c", "c": "\"\"\"Agento configuration.\"\"\"\n\nfrom __future__ import annotations\n\nfrom typing import Literal\n\nfrom pydantic import Field, SecretStr\nfrom pydantic_settings import BaseSettings, SettingsConfigDict\n\n\nclass Settings(BaseSettings):\n \"\"\"Agento settings.\"\"\"\n\n model_config = SettingsConfigDict(\n env_file=\".env\",\n env_file_encoding=\"utf-8\",\n case_sensitive=False,\n extra=\"ignore\",\n )\n\n # LLM API Keys\n openrouter_api_key: SecretStr | None = Field(\n default=None,\n description=\"OpenRouter API key\",\n )\n deepseek_api_key: SecretStr | None = Field(\n default=None,\n description=\"DeepSeek API key\",\n )\n google_api_key: SecretStr | None = Field(\n default=None,\n description=\"Google AI API key\",\n )\n\n # Model Configuration\n default_model: str = Field(\n default=\"openrouter/free\",\n description=\"Default model for all tasks\",\n )\n code_model: str | None = Field(\n default=None,\n description=\"Model for code generation\",\n )\n devops_model: str | None = Field(\n default=None,\n description=\"Model for DevOps tasks\",\n )\n planning_model: str | None = Field(\n default=None,\n description=\"Model for planning\",\n )\n\n # Memory\n memory_dir: str = Field(\n default=\"./memory_data\",\n description=\"Directory for memory persistence\",\n )\n embedding_model: str = Field(\n default=\"sentence-transformers/all-MiniLM-L6-v2\",\n description=\"Embedding model for vector store\",\n )\n\n # Docker\n docker_enabled: bool = Field(\n default=True,\n description=\"Enable Docker for command isolation\",\n )\n docker_socket: str = Field(\n default=\"/var/run/docker.sock\",\n description=\"Docker socket path\",\n )\n\n # MCP\n mcp_enabled: bool = Field(\n default=True,\n description=\"Enable MCP support\",\n )\n\n # Logging\n log_level: Literal[\"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\"] = Field(\n default=\"INFO\",\n description=\"Log level\",\n )\n log_file: str | None = Field(\n default=None,\n description=\"Log file path\",\n )\n\n # Safety\n autonomy_level: Literal[0, 1, 2] = Field(\n default=1,\n description=\"Autonomy level: 0=confirm all, 1=safe auto, 2=full auto\",\n )\n allow_dangerous_commands: bool = Field(\n default=False,\n description=\"Allow dangerous commands (rm -rf, etc.)\",\n )\n max_command_timeout: int = Field(\n default=300,\n description=\"Maximum command timeout in seconds\",\n )\n\n @property\n def has_api_key(self) -> bool:\n \"\"\"Check if any API key is configured.\"\"\"\n return any(\n [\n self.openrouter_api_key and self.openrouter_api_key.get_secret_value(),\n self.deepseek_api_key and self.deepseek_api_key.get_secret_value(),\n self.google_api_key and self.google_api_key.get_secret_value(),\n ]\n )\n\n\nsettings = Settings()\n"}, "65eea1b9ebbca78c8fa6e761dfb90764bc3d6b35": {"t": 1785752955.378479, "n": 3032, "h": "2d55813e74df016c", "c": "\"\"\"Agento configuration.\"\"\"\n\nfrom __future__ import annotations\n\nfrom typing import Literal\n\nfrom pydantic import Field, SecretStr\nfrom pydantic_settings import BaseSettings, SettingsConfigDict\n\n\nclass Settings(BaseSettings):\n \"\"\"Agento settings.\"\"\"\n\n model_config = SettingsConfigDict(\n env_file=\".env\",\n env_file_encoding=\"utf-8\",\n case_sensitive=False,\n extra=\"ignore\",\n )\n\n # LLM API Keys\n openrouter_api_key: SecretStr | None = Field(\n default=None,\n description=\"OpenRouter API key\",\n )\n deepseek_api_key: SecretStr | None = Field(\n default=None,\n description=\"DeepSeek API key\",\n )\n google_api_key: SecretStr | None = Field(\n default=None,\n description=\"Google AI API key\",\n )\n\n # Model Configuration\n default_model: str = Field(\n default=\"openrouter/free\",\n description=\"Default model for all tasks\",\n )\n code_model: str | None = Field(\n default=None,\n description=\"Model for code generation\",\n )\n devops_model: str | None = Field(\n default=None,\n description=\"Model for DevOps tasks\",\n )\n planning_model: str | None = Field(\n default=None,\n description=\"Model for planning\",\n )\n\n # Memory\n memory_dir: str = Field(\n default=\"./memory_data\",\n description=\"Directory for memory persistence\",\n )\n embedding_model: str = Field(\n default=\"sentence-transformers/all-MiniLM-L6-v2\",\n description=\"Embedding model for vector store\",\n )\n\n # Docker\n docker_enabled: bool = Field(\n default=True,\n description=\"Enable Docker for command isolation\",\n )\n docker_socket: str = Field(\n default=\"/var/run/docker.sock\",\n description=\"Docker socket path\",\n )\n\n # MCP\n mcp_enabled: bool = Field(\n default=True,\n description=\"Enable MCP support\",\n )\n\n # Logging\n log_level: Literal[\"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\"] = Field(\n default=\"INFO\",\n description=\"Log level\",\n )\n log_file: str | None = Field(\n default=None,\n description=\"Log file path\",\n )\n\n # Safety\n autonomy_level: Literal[0, 1, 2] = Field(\n default=1,\n description=\"Autonomy level: 0=confirm all, 1=safe auto, 2=full auto\",\n )\n allow_dangerous_commands: bool = Field(\n default=False,\n description=\"Allow dangerous commands (rm -rf, etc.)\",\n )\n max_command_timeout: int = Field(\n default=300,\n description=\"Maximum command timeout in seconds\",\n )\n\n @property\n def has_api_key(self) -> bool:\n \"\"\"Check if any API key is configured.\"\"\"\n return any(\n [\n self.openrouter_api_key and self.openrouter_api_key.get_secret_value(),\n self.deepseek_api_key and self.deepseek_api_key.get_secret_value(),\n self.google_api_key and self.google_api_key.get_secret_value(),\n ]\n )\n\n\nsettings = Settings()\n"}, "4d94d09676e449f899102137d15fe8d89529dd28": {"t": 1785752956.634251, "n": 2994, "h": "5a9a3986d7dcbd42", "c": "\"\"\"Agento configuration.\"\"\"\n\nfrom __future__ import annotations\n\nfrom typing import Literal\n\nfrom pydantic import Field, SecretStr\nfrom pydantic_settings import BaseSettings, SettingsConfigDict\n\n\nclass Settings(BaseSettings):\n \"\"\"Agento settings.\"\"\"\n\n model_config = SettingsConfigDict(\n env_file=\".env\",\n env_file_encoding=\"utf-8\",\n case_sensitive=False,\n extra=\"ignore\",\n )\n\n # LLM API Keys\n openrouter_api_key: SecretStr | None = Field(\n default=None,\n description=\"OpenRouter API key\",\n )\n deepseek_api_key: SecretStr | None = Field(\n default=None,\n description=\"DeepSeek API key\",\n )\n google_api_key: SecretStr | None = Field(\n default=None,\n description=\"Google AI API key\",\n )\n\n # Model Configuration\n default_model: str = Field(\n default=\"openrouter/free\",\n description=\"Default model for all tasks\",\n )\n code_model: str | None = Field(\n default=None,\n description=\"Model for code generation\",\n )\n devops_model: str | None = Field(\n default=None,\n description=\"Model for DevOps tasks\",\n )\n planning_model: str | None = Field(\n default=None,\n description=\"Model for planning\",\n )\n\n # Memory\n memory_dir: str = Field(\n default=\"./memory_data\",\n description=\"Directory for memory persistence\",\n )\n embedding_model: str = Field(\n default=\"sentence-transformers/all-MiniLM-L6-v2\",\n description=\"Embedding model for vector store\",\n )\n\n # Docker\n docker_enabled: bool = Field(\n default=True,\n description=\"Enable Docker for command isolation\",\n )\n docker_socket: str = Field(\n default=\"/var/run/docker.sock\",\n description=\"Docker socket path\",\n )\n\n # MCP\n mcp_enabled: bool = Field(\n default=True,\n description=\"Enable MCP support\",\n )\n\n # Logging\n log_level: Literal[\"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\"] = Field(\n default=\"INFO\",\n description=\"Log level\",\n )\n log_file: str | None = Field(\n default=None,\n description=\"Log file path\",\n )\n\n # Safety\n autonomy_level: Literal[0, 1, 2] = Field(\n default=1,\n description=\"Autonomy level: 0=confirm all, 1=safe auto, 2=full auto\",\n )\n allow_dangerous_commands: bool = Field(\n default=False,\n description=\"Allow dangerous commands (rm -rf, etc.)\",\n )\n max_command_timeout: int = Field(\n default=300,\n description=\"Maximum command timeout in seconds\",\n )\n\n @property\n def has_api_key(self) -> bool:\n \"\"\"Check if any API key is configured.\"\"\"\n return any([\n self.openrouter_api_key and self.openrouter_api_key.get_secret_value(),\n self.deepseek_api_key and self.deepseek_api_key.get_secret_value(),\n self.google_api_key and self.google_api_key.get_secret_value(),\n ])\n\n\nsettings = Settings()\n"}, "da348638532ab7ff2f82833a42929ec7666c7238": {"t": 1785752957.8922005, "n": 3005, "h": "030746b1a01feba2", "c": "\"\"\"Agento configuration.\"\"\"\n\nfrom __future__ import annotations\n\nfrom typing import Annotated, Literal\n\nfrom pydantic import Field, SecretStr\nfrom pydantic_settings import BaseSettings, SettingsConfigDict\n\n\nclass Settings(BaseSettings):\n \"\"\"Agento settings.\"\"\"\n\n model_config = SettingsConfigDict(\n env_file=\".env\",\n env_file_encoding=\"utf-8\",\n case_sensitive=False,\n extra=\"ignore\",\n )\n\n # LLM API Keys\n openrouter_api_key: SecretStr | None = Field(\n default=None,\n description=\"OpenRouter API key\",\n )\n deepseek_api_key: SecretStr | None = Field(\n default=None,\n description=\"DeepSeek API key\",\n )\n google_api_key: SecretStr | None = Field(\n default=None,\n description=\"Google AI API key\",\n )\n\n # Model Configuration\n default_model: str = Field(\n default=\"openrouter/free\",\n description=\"Default model for all tasks\",\n )\n code_model: str | None = Field(\n default=None,\n description=\"Model for code generation\",\n )\n devops_model: str | None = Field(\n default=None,\n description=\"Model for DevOps tasks\",\n )\n planning_model: str | None = Field(\n default=None,\n description=\"Model for planning\",\n )\n\n # Memory\n memory_dir: str = Field(\n default=\"./memory_data\",\n description=\"Directory for memory persistence\",\n )\n embedding_model: str = Field(\n default=\"sentence-transformers/all-MiniLM-L6-v2\",\n description=\"Embedding model for vector store\",\n )\n\n # Docker\n docker_enabled: bool = Field(\n default=True,\n description=\"Enable Docker for command isolation\",\n )\n docker_socket: str = Field(\n default=\"/var/run/docker.sock\",\n description=\"Docker socket path\",\n )\n\n # MCP\n mcp_enabled: bool = Field(\n default=True,\n description=\"Enable MCP support\",\n )\n\n # Logging\n log_level: Literal[\"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\"] = Field(\n default=\"INFO\",\n description=\"Log level\",\n )\n log_file: str | None = Field(\n default=None,\n description=\"Log file path\",\n )\n\n # Safety\n autonomy_level: Literal[0, 1, 2] = Field(\n default=1,\n description=\"Autonomy level: 0=confirm all, 1=safe auto, 2=full auto\",\n )\n allow_dangerous_commands: bool = Field(\n default=False,\n description=\"Allow dangerous commands (rm -rf, etc.)\",\n )\n max_command_timeout: int = Field(\n default=300,\n description=\"Maximum command timeout in seconds\",\n )\n\n @property\n def has_api_key(self) -> bool:\n \"\"\"Check if any API key is configured.\"\"\"\n return any([\n self.openrouter_api_key and self.openrouter_api_key.get_secret_value(),\n self.deepseek_api_key and self.deepseek_api_key.get_secret_value(),\n self.google_api_key and self.google_api_key.get_secret_value(),\n ])\n\n\nsettings = Settings()\n"}}, "tests/unit/test_config.py": {"8f75ebd9488e642fa68ca734d0793a36a370ffb1": {"t": 1785746876.6189198, "n": 1537, "h": "482432f8ceea8ccc", "c": "\"\"\"Tests for configuration.\"\"\"\n\nimport os\nfrom unittest.mock import patch\n\nfrom agento.config import Settings\n\n\nclass TestSettings:\n \"\"\"Tests for Settings.\"\"\"\n\n def test_settings_defaults(self):\n \"\"\"Test default settings.\"\"\"\n settings = Settings()\n\n assert settings.default_model == \"openrouter/free\"\n assert settings.autonomy_level == 1\n assert settings.docker_enabled is True\n assert settings.mcp_enabled is True\n\n def test_has_api_key_none(self):\n \"\"\"Test has_api_key with no keys.\"\"\"\n with patch.dict(\n os.environ,\n {\"OPENROUTER_API_KEY\": \"\", \"DEEPSEEK_API_KEY\": \"\", \"GOOGLE_API_KEY\": \"\"},\n clear=True,\n ):\n with patch.object(\n Settings,\n \"model_config\",\n {\"env_file\": \".env.non_existent\", \"extra\": \"ignore\"},\n ):\n settings = Settings(_env_file=\".env.non_existent\")\n assert settings.has_api_key is False\n\n def test_has_api_key_with_key(self):\n \"\"\"Test has_api_key with key set.\"\"\"\n settings = Settings(openrouter_api_key=\"sk-test-key\")\n\n assert settings.has_api_key is True\n\n def test_memory_dir_default(self):\n \"\"\"Test memory directory default.\"\"\"\n settings = Settings()\n\n assert settings.memory_dir == \"./memory_data\"\n\n def test_max_command_timeout(self):\n \"\"\"Test max command timeout.\"\"\"\n settings = Settings()\n\n assert settings.max_command_timeout == 300\n"}, "c26d93c2937301b448ca4d0e1a9ae1c645c803cc": {"t": 1785752955.0871356, "n": 1537, "h": "482432f8ceea8ccc", "c": "\"\"\"Tests for configuration.\"\"\"\n\nimport os\nfrom unittest.mock import patch\n\nfrom agento.config import Settings\n\n\nclass TestSettings:\n \"\"\"Tests for Settings.\"\"\"\n\n def test_settings_defaults(self):\n \"\"\"Test default settings.\"\"\"\n settings = Settings()\n\n assert settings.default_model == \"openrouter/free\"\n assert settings.autonomy_level == 1\n assert settings.docker_enabled is True\n assert settings.mcp_enabled is True\n\n def test_has_api_key_none(self):\n \"\"\"Test has_api_key with no keys.\"\"\"\n with patch.dict(\n os.environ,\n {\"OPENROUTER_API_KEY\": \"\", \"DEEPSEEK_API_KEY\": \"\", \"GOOGLE_API_KEY\": \"\"},\n clear=True,\n ):\n with patch.object(\n Settings,\n \"model_config\",\n {\"env_file\": \".env.non_existent\", \"extra\": \"ignore\"},\n ):\n settings = Settings(_env_file=\".env.non_existent\")\n assert settings.has_api_key is False\n\n def test_has_api_key_with_key(self):\n \"\"\"Test has_api_key with key set.\"\"\"\n settings = Settings(openrouter_api_key=\"sk-test-key\")\n\n assert settings.has_api_key is True\n\n def test_memory_dir_default(self):\n \"\"\"Test memory directory default.\"\"\"\n settings = Settings()\n\n assert settings.memory_dir == \"./memory_data\"\n\n def test_max_command_timeout(self):\n \"\"\"Test max command timeout.\"\"\"\n settings = Settings()\n\n assert settings.max_command_timeout == 300\n"}, "f655ba072326fd1fd6aa1243f6e580ea027c65d3": {"t": 1785752956.3554196, "n": 1107, "h": "28407626b2afa2fb", "c": "\"\"\"Tests for configuration.\"\"\"\n\n\nfrom agento.config import Settings\n\n\nclass TestSettings:\n \"\"\"Tests for Settings.\"\"\"\n\n def test_settings_defaults(self):\n \"\"\"Test default settings.\"\"\"\n settings = Settings()\n\n assert settings.default_model == \"openrouter/free\"\n assert settings.autonomy_level == 1\n assert settings.docker_enabled is True\n assert settings.mcp_enabled is True\n\n def test_has_api_key_none(self):\n \"\"\"Test has_api_key with no keys.\"\"\"\n settings = Settings()\n\n assert settings.has_api_key is False\n\n def test_has_api_key_with_key(self):\n \"\"\"Test has_api_key with key set.\"\"\"\n settings = Settings(openrouter_api_key=\"sk-test-key\")\n\n assert settings.has_api_key is True\n\n def test_memory_dir_default(self):\n \"\"\"Test memory directory default.\"\"\"\n settings = Settings()\n\n assert settings.memory_dir == \"./memory_data\"\n\n def test_max_command_timeout(self):\n \"\"\"Test max command timeout.\"\"\"\n settings = Settings()\n\n assert settings.max_command_timeout == 300\n"}, "da348638532ab7ff2f82833a42929ec7666c7238": {"t": 1785752957.4930043, "n": 1153, "h": "54264e47fde7c399", "c": "\"\"\"Tests for configuration.\"\"\"\n\nimport pytest\nfrom unittest.mock import patch\n\nfrom agento.config import Settings\n\n\nclass TestSettings:\n \"\"\"Tests for Settings.\"\"\"\n\n def test_settings_defaults(self):\n \"\"\"Test default settings.\"\"\"\n settings = Settings()\n\n assert settings.default_model == \"openrouter/free\"\n assert settings.autonomy_level == 1\n assert settings.docker_enabled is True\n assert settings.mcp_enabled is True\n\n def test_has_api_key_none(self):\n \"\"\"Test has_api_key with no keys.\"\"\"\n settings = Settings()\n\n assert settings.has_api_key is False\n\n def test_has_api_key_with_key(self):\n \"\"\"Test has_api_key with key set.\"\"\"\n settings = Settings(openrouter_api_key=\"sk-test-key\")\n\n assert settings.has_api_key is True\n\n def test_memory_dir_default(self):\n \"\"\"Test memory directory default.\"\"\"\n settings = Settings()\n\n assert settings.memory_dir == \"./memory_data\"\n\n def test_max_command_timeout(self):\n \"\"\"Test max command timeout.\"\"\"\n settings = Settings()\n\n assert settings.max_command_timeout == 300\n"}}}}