pub struct ToolSchemaInfo {
pub tool: String,
pub global_flags: Vec<GlobalFlagSpec>,
pub max_depth: u8,
}Expand description
Minimal schema info needed for tool_invocation_of.
This is the intersection of what extraction needs — the full policy
(tier table, leaf-flag escalation) lives in agent_tools::tool_schema.
Returned by ToolLookup::lookup; cheap to clone since schemas are
small static data.
Fields§
§tool: StringLowercase basename of the tool (e.g. "git", "gh").
global_flags: Vec<GlobalFlagSpec>Global flags to peel before the subcommand chain.
max_depth: u8Maximum consecutive non-flag positionals to consume as the subcommand
chain. 1 for flat tools (cargo, npm); 2 for git (stash list),
docker (container rm); 3 for aws (s3api put-object).
Trait Implementations§
Source§impl Clone for ToolSchemaInfo
impl Clone for ToolSchemaInfo
Source§fn clone(&self) -> ToolSchemaInfo
fn clone(&self) -> ToolSchemaInfo
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ToolSchemaInfo
impl RefUnwindSafe for ToolSchemaInfo
impl Send for ToolSchemaInfo
impl Sync for ToolSchemaInfo
impl Unpin for ToolSchemaInfo
impl UnsafeUnpin for ToolSchemaInfo
impl UnwindSafe for ToolSchemaInfo
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