pub struct SubAgentTool { /* private fields */ }Implementations§
Source§impl SubAgentTool
impl SubAgentTool
pub fn new( sessions: Arc<dyn ChildSessionPort>, resolver: Arc<dyn SubagentResolutionPort>, ) -> SubAgentTool
Sourcepub fn with_model_catalog(
self,
catalog: Arc<dyn ModelCatalogPort>,
) -> SubAgentTool
pub fn with_model_catalog( self, catalog: Arc<dyn ModelCatalogPort>, ) -> SubAgentTool
Attach a model catalog, enabling action=list_models and bare-model
resolution for create.model.
Trait Implementations§
Source§impl Tool for SubAgentTool
impl Tool for SubAgentTool
fn name(&self) -> &str
Source§fn description(&self) -> &str
fn description(&self) -> &str
Human-readable tool description for LLM.
Source§fn parameters_schema(&self) -> Value
fn parameters_schema(&self) -> Value
JSON Schema for tool parameters.
Source§fn invoke<'life0, 'async_trait>(
&'life0 self,
args: Value,
ctx: ToolCtx,
) -> Pin<Box<dyn Future<Output = Result<ToolOutcome, ToolError>> + Send + 'async_trait>>where
'life0: 'async_trait,
SubAgentTool: 'async_trait,
fn invoke<'life0, 'async_trait>(
&'life0 self,
args: Value,
ctx: ToolCtx,
) -> Pin<Box<dyn Future<Output = Result<ToolOutcome, ToolError>> + Send + 'async_trait>>where
'life0: 'async_trait,
SubAgentTool: 'async_trait,
The sole execution entry: returns the call’s per-call
ToolOutcome
(Completed / Running
/ NeedsHuman), or a ToolError for
infrastructure / argument failures (preserved from the former execute). Read moreSource§fn classify(&self, _args: &Value) -> ToolClass
fn classify(&self, _args: &Value) -> ToolClass
Per-call scheduling + permission-gating class (args-aware). Folds the
former
mutability/call_mutability/concurrency_safe/
call_concurrency_safe hooks into one value. Defaults to the conservative
ToolClass::MUTATING_SERIAL (mutating, serial, not promotable).Source§fn to_schema(&self) -> ToolSchema
fn to_schema(&self) -> ToolSchema
Convert tool to LLM-compatible schema. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for SubAgentTool
impl !UnwindSafe for SubAgentTool
impl Freeze for SubAgentTool
impl Send for SubAgentTool
impl Sync for SubAgentTool
impl Unpin for SubAgentTool
impl UnsafeUnpin for SubAgentTool
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