pub struct ToolContext {
pub cwd: PathBuf,
pub cancel: CancellationToken,
pub permission_checker: Arc<PermissionChecker>,
pub verbose: bool,
pub plan_mode: bool,
pub file_cache: Option<Arc<Mutex<FileCache>>>,
pub denial_tracker: Option<Arc<Mutex<DenialTracker>>>,
pub task_manager: Option<Arc<TaskManager>>,
pub session_allows: Option<Arc<Mutex<HashSet<String>>>>,
pub permission_prompter: Option<Arc<dyn PermissionPrompter>>,
}Expand description
Context passed to every tool during execution.
Fields§
§cwd: PathBufCurrent working directory.
cancel: CancellationTokenCancellation token for cooperative cancellation.
permission_checker: Arc<PermissionChecker>Permission checker instance.
verbose: boolWhether to produce verbose output.
plan_mode: boolPlan mode: only read-only tools allowed.
file_cache: Option<Arc<Mutex<FileCache>>>File content cache for avoiding redundant reads.
denial_tracker: Option<Arc<Mutex<DenialTracker>>>Permission denial tracker for reporting.
task_manager: Option<Arc<TaskManager>>Shared background task manager.
session_allows: Option<Arc<Mutex<HashSet<String>>>>Tools allowed for the rest of the session (via “Allow for session” prompt).
permission_prompter: Option<Arc<dyn PermissionPrompter>>Permission prompter for interactive approval.
Auto Trait Implementations§
impl Freeze for ToolContext
impl !RefUnwindSafe for ToolContext
impl Send for ToolContext
impl Sync for ToolContext
impl Unpin for ToolContext
impl UnsafeUnpin for ToolContext
impl !UnwindSafe for ToolContext
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