claudy 0.2.1

Modern multi-provider launcher for Claude CLI
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use super::install;
use crate::domain::context::Context;
use anyhow::Context as _;

pub fn run_update(ctx: &mut Context) -> anyhow::Result<i32> {
    if crate::launcher::envkit::is_homebrew() {
        let brew = which::which("brew").context("brew not found in PATH")?;
        let status = std::process::Command::new(brew)
            .args(["upgrade", "claudy"])
            .stdin(std::process::Stdio::inherit())
            .stdout(std::process::Stdio::inherit())
            .stderr(std::process::Stdio::inherit())
            .status()?;
        return Ok(status.code().unwrap_or(1));
    }
    install::run_install(ctx)
}