pub struct ShellExpectCasesTool { /* private fields */ }Expand description
LLM tool: wait for one of several regex patterns (switch/case).
Maps to goexpect’s ExpectSwitchCase. Returns which case matched first,
captured groups, and optionally auto-sends a response.
Implementations§
Source§impl ShellExpectCasesTool
impl ShellExpectCasesTool
Sourcepub const fn new(ctx: Arc<SandboxContext>) -> Self
pub const fn new(ctx: Arc<SandboxContext>) -> Self
Create a new shell_expect_cases tool.
Trait Implementations§
Source§impl Tool for ShellExpectCasesTool
impl Tool for ShellExpectCasesTool
Source§fn description(&self) -> &'static str
fn description(&self) -> &'static str
The tool’s description.
Source§fn schema(&self) -> &ToolSchema
fn schema(&self) -> &ToolSchema
The tool’s schema for argument validation.
Source§fn invoke(
&self,
input: Value,
) -> BoxFuture<'_, Result<ToolOutput, SynwireError>>
fn invoke( &self, input: Value, ) -> BoxFuture<'_, Result<ToolOutput, SynwireError>>
Invoke the tool with JSON arguments.
Auto Trait Implementations§
impl !Freeze for ShellExpectCasesTool
impl !RefUnwindSafe for ShellExpectCasesTool
impl Send for ShellExpectCasesTool
impl Sync for ShellExpectCasesTool
impl Unpin for ShellExpectCasesTool
impl UnsafeUnpin for ShellExpectCasesTool
impl !UnwindSafe for ShellExpectCasesTool
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
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more