aether-acp-utils 0.5.6

Agent Client Protocol (ACP) utilities for the Aether AI agent framework
Documentation
use crate::notifications::{
    AuthMethodsUpdatedParams, ContextClearedParams, GitDiffEventPayload, McpNotification, SubAgentProgressParams,
};
use agent_client_protocol::Responder;
use agent_client_protocol::schema::v2::{
    CreateElicitationRequest, CreateElicitationResponse, UpdateSessionNotification,
};

/// Events forwarded from the ACP connection to the main event loop.
pub enum AcpEvent {
    SessionUpdate(Box<UpdateSessionNotification>),
    ContextCleared(ContextClearedParams),
    SubAgentProgress(SubAgentProgressParams),
    AuthMethodsUpdated(AuthMethodsUpdatedParams),
    McpNotification(McpNotification),
    GitDiffEvent(GitDiffEventPayload),
    ElicitationRequest { params: Box<CreateElicitationRequest>, responder: Responder<CreateElicitationResponse> },
    ConnectionClosed,
}

impl From<UpdateSessionNotification> for AcpEvent {
    fn from(notification: UpdateSessionNotification) -> Self {
        Self::SessionUpdate(Box::new(notification))
    }
}