"""The public surface for model invocation. Other modules import `call_model` and use it without knowing which backend is configured. Switching backends means changing one assignment here. """ from .base import Message, ModelBackend, ModelRequest, ModelResponse from .claude_code import ClaudeCodeBackend _backend: ModelBackend = ClaudeCodeBackend() def call_model(request: ModelRequest) -> ModelResponse: """Invoke the configured model backend.""" return _backend.call(request) __all__ = [ "Message", "ModelBackend", "ModelRequest", "ModelResponse", "call_model", ]