pub mod cli; use thiserror::Error; use own_mcp::mcp::chat::PermissionAnswer; #[derive(Debug, Error)] pub enum HumanInterfaceError { #[error(transparent)] IoError(std::io::Error), #[error("other error in human interface: {0}")] Other(String) } pub trait HumanInterface { fn agent_message(&mut self, message: String); fn expect_user_message(&mut self) -> impl Future>; fn ask_for_permission(&self, mcp_server_name: String, tool_name:String) -> impl Future>; fn run(&mut self) -> impl Future>; }