vibe.assistant.config

Configuration abstractions for the assistant system.

This module provides clean abstractions for configuration that can be easily injected for testing while preserving existing Flask integration behavior.

AssistantConfig

Configuration for assistant operations.

get_sessions_path

get_sessions_path(template_id: str, assistant_name: str) -> Path

Get the full path for a specific assistant's session directory.

get_assistant_endpoint_config

get_assistant_endpoint_config(endpoint_name: str) -> dict[str, Any] | None

Get configuration for a specific assistant endpoint.

AssistantConfigFactory

Factory for creating AssistantConfig from various sources.

from_flask_app

from_flask_app() -> AssistantConfig

Create configuration from current Flask app context.

This maintains exact compatibility with existing behavior.

for_testing

for_testing(sessions_base_path: Path | None = None, assistant_endpoints: dict[str, dict[str, Any]] | None = None, default_timeout: int = 10) -> AssistantConfig

Create configuration for testing purposes.