MCPcopy Create free account
hub / github.com/ChrisFeldmeier/OpenCodeRust / model_to_bootstrap

Function model_to_bootstrap

crates/opencode-cli/src/main.rs:1730–1757  ·  view source on GitHub ↗
(id: &str, model: &opencode_config::ModelConfig)

Source from the content-addressed store, hash-verified

1728}
1729
1730fn model_to_bootstrap(id: &str, model: &opencode_config::ModelConfig) -> BootstrapConfigModel {
1731 let mut options = HashMap::new();
1732 if let Some(api_key) = &model.api_key {
1733 options.insert("apiKey".to_string(), serde_json::Value::String(api_key.clone()));
1734 }
1735
1736 let variants = model.variants.as_ref().map(|variants| {
1737 variants
1738 .iter()
1739 .map(|(name, variant)| (name.clone(), variant_to_bootstrap(variant)))
1740 .collect()
1741 });
1742
1743 BootstrapConfigModel {
1744 id: model.model.clone().or_else(|| Some(id.to_string())),
1745 name: model.name.clone(),
1746 provider: model
1747 .base_url
1748 .as_ref()
1749 .map(|url| opencode_provider::bootstrap::ConfigModelProvider {
1750 api: Some(url.clone()),
1751 npm: None,
1752 }),
1753 options: (!options.is_empty()).then_some(options),
1754 variants,
1755 ..Default::default()
1756 }
1757}
1758
1759fn variant_to_bootstrap(
1760 variant: &opencode_config::ModelVariantConfig,

Callers 1

provider_to_bootstrapFunction · 0.70

Calls 4

newFunction · 0.85
is_emptyMethod · 0.80
variant_to_bootstrapFunction · 0.70
cloneMethod · 0.45

Tested by

no test coverage detected