Skip to main content

agent_procs/cli/
stop.rs

1use crate::protocol::{Request, Response};
2
3pub async fn execute(session: &str, target: &str) -> i32 {
4    let req = Request::Stop {
5        target: target.into(),
6    };
7    match crate::cli::request(session, &req, false).await {
8        Ok(Response::Ok { message }) => {
9            println!("{}", message);
10            0
11        }
12        Ok(Response::Error { code, message }) => {
13            eprintln!("error: {}", message);
14            code
15        }
16        _ => 1,
17    }
18}
19
20pub async fn execute_all(session: &str) -> i32 {
21    let req = Request::StopAll;
22    match crate::cli::request(session, &req, false).await {
23        Ok(Response::Ok { message }) => {
24            println!("{}", message);
25            0
26        }
27        Ok(Response::Error { code, message }) => {
28            eprintln!("error: {}", message);
29            code
30        }
31        _ => 1,
32    }
33}