dirge-agent 0.12.1

Minimalistic coding agent written in Rust, optimized for memory footprint and performance
use crate::ui::slash::{SlashCtx, c_error, c_result};

use super::{DEFAULT_TIMEOUT, require_session};

pub(super) async fn cmd_continue(ctx: &mut SlashCtx<'_>) -> anyhow::Result<()> {
    let mgr = require_session().await?;
    let signal = crate::agent::agent_loop::tool::AbortSignal::new();
    match mgr.continue_(0, &signal, DEFAULT_TIMEOUT).await {
        Ok(outcome) => {
            ctx.renderer.write_line(
                &format!(
                    "continue → {:?} (stop reason: {})",
                    outcome.status,
                    outcome.stop_reason.as_deref().unwrap_or("none"),
                ),
                c_result(),
            )?;
        }
        Err(e) => {
            ctx.renderer
                .write_line(&format!("continue failed: {e}"), c_error())?;
        }
    }
    Ok(())
}