vtcode-core 0.136.5

Core library for VT Code - a Rust-based terminal coding agent
//! gemini_presets — provider preset definitions for gemini.

use super::super::{ModelPreset, ReasoningEffortPreset};
use crate::config::models::Provider;
use crate::config::types::ReasoningEffortLevel;
pub(crate) fn gemini_presets() -> Vec<ModelPreset> {
    vec![ModelPreset {
        id: "gemini-3-flash-preview".to_string(),
        model: "gemini-3-flash-preview".to_string(),
        display_name: "Gemini 3 Flash Preview".to_string(),
        description: "Most intelligent model built for speed with superior search and grounding".to_string(),
        provider: Provider::Gemini,
        default_reasoning_effort: ReasoningEffortLevel::Medium,
        supported_reasoning_efforts: vec![
            ReasoningEffortPreset {
                effort: ReasoningEffortLevel::Low,
                description: "Fast responses".to_string(),
            },
            ReasoningEffortPreset {
                effort: ReasoningEffortLevel::Medium,
                description: "Balanced reasoning".to_string(),
            },
            ReasoningEffortPreset {
                effort: ReasoningEffortLevel::High,
                description: "Deep reasoning".to_string(),
            },
        ],
        is_default: true,
        upgrade: None,
        show_in_picker: true,
        supported_in_api: true,
        context_window: Some(1_048_576),
    }]
}