pub struct ProjectWorkspaceTool { /* private fields */ }Implementations§
Source§impl ProjectWorkspaceTool
impl ProjectWorkspaceTool
pub fn new( sessions: SessionRepository, projects: Arc<ProjectStore>, ) -> ProjectWorkspaceTool
pub fn new_with_workspace_resolver( sessions: SessionRepository, projects: Arc<ProjectStore>, workspace_resolver: WorkspaceResolver, ) -> ProjectWorkspaceTool
Trait Implementations§
Source§impl Tool for ProjectWorkspaceTool
impl Tool for ProjectWorkspaceTool
fn name(&self) -> &str
Source§fn description(&self) -> &str
fn description(&self) -> &str
Human-readable tool description for LLM.
Source§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 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,
ProjectWorkspaceTool: '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,
ProjectWorkspaceTool: '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 to_schema(&self) -> ToolSchema
fn to_schema(&self) -> ToolSchema
Convert tool to LLM-compatible schema. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for ProjectWorkspaceTool
impl !UnwindSafe for ProjectWorkspaceTool
impl Freeze for ProjectWorkspaceTool
impl Send for ProjectWorkspaceTool
impl Sync for ProjectWorkspaceTool
impl Unpin for ProjectWorkspaceTool
impl UnsafeUnpin for ProjectWorkspaceTool
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