"""Configuration module for PentestAgent."""

from .constants import (
    AGENT_STATE_COMPLETE,
    AGENT_STATE_ERROR,
    AGENT_STATE_EXECUTING,
    AGENT_STATE_IDLE,
    AGENT_STATE_THINKING,
    AGENT_STATE_WAITING_INPUT,
    APP_DESCRIPTION,
    APP_NAME,
    APP_VERSION,
    DEFAULT_CHUNK_OVERLAP,
    DEFAULT_CHUNK_SIZE,
    DEFAULT_COMMAND_TIMEOUT,
    DEFAULT_MAX_TOKENS,
    DEFAULT_MCP_TIMEOUT,
    DEFAULT_MODEL,
    DEFAULT_RAG_TOP_K,
    DEFAULT_TEMPERATURE,
    DEFAULT_VPN_TIMEOUT,
    DOCKER_NETWORK_MODE,
    DOCKER_SANDBOX_IMAGE,
    EXIT_COMMANDS,
    KNOWLEDGE_DATA_EXTENSIONS,
    KNOWLEDGE_TEXT_EXTENSIONS,
    MCP_TRANSPORT_SSE,
    MCP_TRANSPORT_STDIO,
    MEMORY_RESERVE_RATIO,
    TOOL_CATEGORY_EXECUTION,
    TOOL_CATEGORY_EXPLOITATION,
    TOOL_CATEGORY_MCP,
    TOOL_CATEGORY_NETWORK,
    TOOL_CATEGORY_RECON,
    TOOL_CATEGORY_WEB,
)
from .settings import Settings, get_settings

__all__ = [
    "Settings",
    "get_settings",
    "APP_NAME",
    "APP_VERSION",
    "APP_DESCRIPTION",
    "AGENT_STATE_IDLE",
    "AGENT_STATE_THINKING",
    "AGENT_STATE_EXECUTING",
    "AGENT_STATE_WAITING_INPUT",
    "AGENT_STATE_COMPLETE",
    "AGENT_STATE_ERROR",
    "TOOL_CATEGORY_EXECUTION",
    "TOOL_CATEGORY_WEB",
    "TOOL_CATEGORY_NETWORK",
    "TOOL_CATEGORY_RECON",
    "TOOL_CATEGORY_EXPLOITATION",
    "TOOL_CATEGORY_MCP",
    "DEFAULT_COMMAND_TIMEOUT",
    "DEFAULT_VPN_TIMEOUT",
    "DEFAULT_MCP_TIMEOUT",
    "DOCKER_SANDBOX_IMAGE",
    "DOCKER_NETWORK_MODE",
    "DEFAULT_CHUNK_SIZE",
    "DEFAULT_CHUNK_OVERLAP",
    "DEFAULT_RAG_TOP_K",
    "MEMORY_RESERVE_RATIO",
    "DEFAULT_MODEL",
    "DEFAULT_TEMPERATURE",
    "DEFAULT_MAX_TOKENS",
    "KNOWLEDGE_TEXT_EXTENSIONS",
    "KNOWLEDGE_DATA_EXTENSIONS",
    "MCP_TRANSPORT_STDIO",
    "MCP_TRANSPORT_SSE",
    "EXIT_COMMANDS",
]
