yera.cli.resources.models

Model discovery orchestration shared across CLI commands.

Symbols

def prompt_model_defaults — Prompt the user to select default models for each type.
def run_model_discovery — Discover models for one provider connection and write to yera.toml.

prompt_model_defaults

prompt_model_defaults(
    models: list[BaseModelConfig],
    profile: Profile,
    ctx: AppContext,
) → None

Prompt the user to select default models for each type.

Loads the model universe filtered to the new profile's provider connections. Auto-selects when only one model exists per type. Skips types with no discovered models. LLM selection is required if models exist; all other types can be skipped.

Parameters

models
type: list[BaseModelConfig]

discovered models.

profile
type: Profile

The profile being set up.

ctx
type: AppContext

CLI application context.

run_model_discovery

run_model_discovery(
    handler: BaseModelDiscovery,
    providers: Providers,
    console: Console,
    error_console: Console,
) → list[BaseModelConfig]

Discover models for one provider connection and write to yera.toml.

Steps: 1. Validate connection exists in providers config 2. Call handler.discover() 3. Clear existing models for this connection 4. Write discovered models to the universe

Returns True on success, False on error.

Parameters

handler
type: BaseModelDiscovery

Instantiated discovery handler for the provider connection.

providers
type: Providers

Loaded providers config for connection validation.

console
type: Console

Console for progress output.

error_console
type: Console

Console for error output.