pub struct BridgedAcpClient {
pub evt_tx: UnboundedSender<BridgeEvent>,
}Expand description
ACP Client implementation that bridges agent protocol events into the internal BridgeEvent channel.
Handles permission requests by forwarding them through a oneshot channel to the main event loop, and converts session notifications (text chunks, tool calls) into corresponding BridgeEvent variants.
Fields§
§evt_tx: UnboundedSender<BridgeEvent>Trait Implementations§
Source§impl Client for BridgedAcpClient
impl Client for BridgedAcpClient
Source§fn request_permission<'life0, 'async_trait>(
&'life0 self,
args: RequestPermissionRequest,
) -> Pin<Box<dyn Future<Output = Result<RequestPermissionResponse>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn request_permission<'life0, 'async_trait>(
&'life0 self,
args: RequestPermissionRequest,
) -> Pin<Box<dyn Future<Output = Result<RequestPermissionResponse>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Requests permission from the user for a tool call operation. Read more
Source§fn session_notification<'life0, 'async_trait>(
&'life0 self,
args: SessionNotification,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn session_notification<'life0, 'async_trait>(
&'life0 self,
args: SessionNotification,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Handles session update notifications from the agent. Read more
Source§fn write_text_file<'life0, 'async_trait>(
&'life0 self,
_args: WriteTextFileRequest,
) -> Pin<Box<dyn Future<Output = Result<WriteTextFileResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn write_text_file<'life0, 'async_trait>(
&'life0 self,
_args: WriteTextFileRequest,
) -> Pin<Box<dyn Future<Output = Result<WriteTextFileResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Writes content to a text file in the client’s file system. Read more
Source§fn read_text_file<'life0, 'async_trait>(
&'life0 self,
_args: ReadTextFileRequest,
) -> Pin<Box<dyn Future<Output = Result<ReadTextFileResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn read_text_file<'life0, 'async_trait>(
&'life0 self,
_args: ReadTextFileRequest,
) -> Pin<Box<dyn Future<Output = Result<ReadTextFileResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Reads content from a text file in the client’s file system. Read more
Source§fn create_terminal<'life0, 'async_trait>(
&'life0 self,
_args: CreateTerminalRequest,
) -> Pin<Box<dyn Future<Output = Result<CreateTerminalResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn create_terminal<'life0, 'async_trait>(
&'life0 self,
_args: CreateTerminalRequest,
) -> Pin<Box<dyn Future<Output = Result<CreateTerminalResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Executes a command in a new terminal Read more
Source§fn terminal_output<'life0, 'async_trait>(
&'life0 self,
_args: TerminalOutputRequest,
) -> Pin<Box<dyn Future<Output = Result<TerminalOutputResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn terminal_output<'life0, 'async_trait>(
&'life0 self,
_args: TerminalOutputRequest,
) -> Pin<Box<dyn Future<Output = Result<TerminalOutputResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Gets the terminal output and exit status Read more
Source§fn release_terminal<'life0, 'async_trait>(
&'life0 self,
_args: ReleaseTerminalRequest,
) -> Pin<Box<dyn Future<Output = Result<ReleaseTerminalResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn release_terminal<'life0, 'async_trait>(
&'life0 self,
_args: ReleaseTerminalRequest,
) -> Pin<Box<dyn Future<Output = Result<ReleaseTerminalResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Releases a terminal Read more
Source§fn wait_for_terminal_exit<'life0, 'async_trait>(
&'life0 self,
_args: WaitForTerminalExitRequest,
) -> Pin<Box<dyn Future<Output = Result<WaitForTerminalExitResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn wait_for_terminal_exit<'life0, 'async_trait>(
&'life0 self,
_args: WaitForTerminalExitRequest,
) -> Pin<Box<dyn Future<Output = Result<WaitForTerminalExitResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Waits for the terminal command to exit and return its exit status Read more
Source§fn kill_terminal<'life0, 'async_trait>(
&'life0 self,
_args: KillTerminalRequest,
) -> Pin<Box<dyn Future<Output = Result<KillTerminalResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn kill_terminal<'life0, 'async_trait>(
&'life0 self,
_args: KillTerminalRequest,
) -> Pin<Box<dyn Future<Output = Result<KillTerminalResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Kills the terminal command without releasing the terminal Read more
Source§fn ext_method<'life0, 'async_trait>(
&'life0 self,
_args: ExtRequest,
) -> Pin<Box<dyn Future<Output = Result<ExtResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn ext_method<'life0, 'async_trait>(
&'life0 self,
_args: ExtRequest,
) -> Pin<Box<dyn Future<Output = Result<ExtResponse, Error>> + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Handles extension method requests from the agent. Read more
Auto Trait Implementations§
impl Freeze for BridgedAcpClient
impl RefUnwindSafe for BridgedAcpClient
impl Send for BridgedAcpClient
impl Sync for BridgedAcpClient
impl Unpin for BridgedAcpClient
impl UnsafeUnpin for BridgedAcpClient
impl UnwindSafe for BridgedAcpClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more