pub struct ToolAccessPolicy {
pub allowed: Option<Vec<String>>,
pub denied: Option<Vec<String>>,
}Expand description
Tool-level access policy applied at discovery time.
When set on ToolSearchTool, deferred tools that fail this check are
never surfaced to the LLM and never activated — keeping them out of
the context window entirely.
Fields§
§allowed: Option<Vec<String>>§denied: Option<Vec<String>>Implementations§
Source§impl ToolAccessPolicy
impl ToolAccessPolicy
Sourcepub fn from_security(
allowed_tools: Option<&[String]>,
excluded_tools: Option<&[String]>,
caller_allowed: Option<&[String]>,
) -> Option<Self>
pub fn from_security( allowed_tools: Option<&[String]>, excluded_tools: Option<&[String]>, caller_allowed: Option<&[String]>, ) -> Option<Self>
Construct from a SecurityPolicy’s tool fields and an optional
caller-supplied allowlist. Used by both run() and
process_message() to keep policy construction in sync.
pub fn is_tool_allowed(&self, name: &str) -> bool
Trait Implementations§
Source§impl Clone for ToolAccessPolicy
impl Clone for ToolAccessPolicy
Source§fn clone(&self) -> ToolAccessPolicy
fn clone(&self) -> ToolAccessPolicy
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for ToolAccessPolicy
impl Default for ToolAccessPolicy
Source§fn default() -> ToolAccessPolicy
fn default() -> ToolAccessPolicy
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for ToolAccessPolicy
impl RefUnwindSafe for ToolAccessPolicy
impl Send for ToolAccessPolicy
impl Sync for ToolAccessPolicy
impl Unpin for ToolAccessPolicy
impl UnsafeUnpin for ToolAccessPolicy
impl UnwindSafe for ToolAccessPolicy
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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