pub trait ModelManager {
// Required methods
fn current_model(&self) -> &ModelConfig;
fn select_next_model(&mut self);
fn select_prev_model(&mut self);
fn load_model(&mut self, model_path: &Path) -> Result<()>;
fn setup_models(&mut self, tx: Sender<String>) -> Result<()>;
fn get_agent_model(&self) -> Option<String>;
}