magi-code 0.103.0

Repository-aware CLI coding agent for terminal work
Documentation
use super::*;

pub(super) fn magi_control_card(input: &ToolCardInput<'_>) -> CardDraft {
    let action = input
        .detail
        .and_then(|detail| crate::output::control::operation(&detail.params));
    let title = match action {
        Some("context_usage") => "Magi Control • Context Usage",
        Some("compact") => "Magi Control • Compact",
        _ => "Magi Control",
    };
    let body = input
        .detail
        .map(|detail| {
            crate::output::control::summary(&detail.params, &detail.metadata, detail.status)
        })
        .unwrap_or_else(|| "Control detail unavailable".into());
    let mut card = basic_card(ToolCardRole::MagiControl, title, &body);
    card.status = input_status(input);
    card
}