doum_cli/cli/
ask.rs

1use crate::core::handle_ask;
2use crate::llm::create_client;
3use crate::system::{get_system_info, load_config};
4use anyhow::Result;
5
6pub async fn handle_ask_command(question: &str) -> Result<()> {
7    use cliclack::spinner;
8
9    let config = load_config()?;
10    let client = create_client(&config.llm)?;
11    let system_info = get_system_info();
12
13    let sp = spinner();
14    sp.start("AI is generating an answer...");
15
16    let response = handle_ask(question, client.as_ref(), &system_info, &config).await?;
17
18    sp.stop("✅ Answer ready");
19
20    println!("\n{}\n", response);
21
22    Ok(())
23}