Class AIModelProviderManager

Description

Manages and provides access to various configured AI model provider instances (IProvider).

Constructors

Methods

  • Returns the error a provider threw during initialize, so a caller that finds the provider missing can report why (for example the HTTP 401 of a rejected API key) instead of a bare "not available".

    Parameters

    • providerId: string

      The provider id as configured.

    Returns unknown

    The thrown error, or undefined when the provider initialized or was never configured.

  • The configuration entry a provider is served from: of the enabled entries whose providerId names it, in any letter case, the last one whose provider initialized. A later entry's provider replaces an earlier one's, and an entry whose provider fails to initialize leaves the one served before it.

    Parameters

    • providerId: string

      The provider's id, in any letter case.

    Returns undefined | ProviderConfigEntry

    The entry as configured, or undefined when the provider is not served.

  • Lists every model the initialized providers serve: one row per (providerId, modelId), in provider registration order. Two providers can serve the same model id (gemini and gemini-cli, anthropic and claude-code-cli), and routing names the provider, so each keeps its row. A bare-id find still lands on the first-registered provider, matching getProviderForModel.

    Returns Promise<ModelInfo[]>

  • Returns Promise<{
        isOverallHealthy: boolean;
        providerDetails: {
            providerId: string;
            isHealthy: boolean;
            details?: any;
        }[];
    }>

Properties

isInitialized: boolean = false