#[non_exhaustive]pub struct BuiltinToolsConfig {
pub file_tracker: Arc<FileTracker>,
pub todo_store: Arc<TodoStore>,
pub on_question: Option<Arc<OnQuestion>>,
pub workspace: Option<PathBuf>,
pub dangerous_tools: bool,
pub env_policy: EnvPolicy,
pub protected_paths: Vec<PathBuf>,
pub twitter_credentials: Option<TwitterCredentials>,
pub allowlist: Option<Vec<String>>,
pub path_policy: Option<Arc<CorePathPolicy>>,
}Expand description
Configuration for creating built-in tools.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.file_tracker: Arc<FileTracker>§todo_store: Arc<TodoStore>§on_question: Option<Arc<OnQuestion>>§workspace: Option<PathBuf>§dangerous_tools: boolEnable dangerous tools (e.g. bash). Default: false.
env_policy: EnvPolicyEnvironment variable policy for bash subprocesses.
protected_paths: Vec<PathBuf>File path patterns to deny access to (e.g., *.env, *.pem).
twitter_credentials: Option<TwitterCredentials>X/Twitter credentials for the twitter_post builtin tool (per-tenant).
allowlist: Option<Vec<String>>Optional allowlist of builtin tool names. When Some, only tools whose
name appears in this list are returned. When None, all builtins are
returned (backward compatible).
path_policy: Option<Arc<CorePathPolicy>>Application-layer path policy applied to all filesystem builtins
(bash, read, write, edit, patch). When set, check_path is called
before any I/O, complementing the existing workspace + protected_paths
mechanism and the Linux-only Landlock sandbox.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BuiltinToolsConfig
impl !RefUnwindSafe for BuiltinToolsConfig
impl Send for BuiltinToolsConfig
impl Sync for BuiltinToolsConfig
impl Unpin for BuiltinToolsConfig
impl UnsafeUnpin for BuiltinToolsConfig
impl !UnwindSafe for BuiltinToolsConfig
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