pub struct ResolvedModel {
pub provider: Arc<dyn Provider>,
pub model: Model,
pub thinking_level: ThinkingLevel,
pub has_provider_key: bool,
pub theme: Option<String>,
}Expand description
The resolved run configuration: the provider handle, the chosen model, and
the effective thinking level (after --thinking / :level / model-clamp).
Fields§
§provider: Arc<dyn Provider>The Anthropic provider (carries the API key, or None when Bearer
headers carry the auth). Cheap to clone (Arc internally via the
Provider trait object).
model: ModelThe chosen model from the catalog.
thinking_level: ThinkingLevelEffective thinking level (the requested level, before model-clamp — the harness/provider clamps to the model’s supported set).
has_provider_key: boolWhether the x-api-key path was taken (--api-key / auth.json /
ANTHROPIC_API_KEY ⇒ the provider carries a default key that
assemble_headers attaches to EVERY model out-of-band). When false,
auth rides only on model headers (Bearer fold / models.json apiKey
fold) — so only header-authed models can actually run.
Kept so available_catalog can reproduce the auth-filtered snapshot
(pi getAvailableSnapshot: available = all.filter(m => configuredProviders.has(m.provider))) and surface only models that
won’t fail at request time with “No API key for provider”.
theme: Option<String>Saved theme name from ~/.rpi/agent/settings.json, if any. Best-effort:
the TUI applies it at startup when it matches a known preset
(dark/light/monochrome); otherwise ignored.
Trait Implementations§
Source§impl Clone for ResolvedModel
impl Clone for ResolvedModel
Source§fn clone(&self) -> ResolvedModel
fn clone(&self) -> ResolvedModel
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more