use crate::config::{AgentConfig, apply_hot_reload_config_subset};
pub async fn reload_shared_agent_config(
holder: &tokio::sync::RwLock<AgentConfig>,
config_path: Option<&str>,
) -> Result<(), String> {
let mut fresh = crate::load_config(config_path)?;
crate::user_data::apply_user_data_llm_overrides(&mut fresh);
crate::user_data::apply_user_data_web_api_bearer(&mut fresh);
{
let mut w = holder.write().await;
apply_hot_reload_config_subset(&mut w, &fresh);
}
crate::mcp::clear_mcp_process_cache().await;
Ok(())
}