Skip to main content

Tool

Trait Tool 

Source
pub trait Tool: Send + Sync {
    // Required methods
    fn name(&self) -> &str;
    fn tier(&self) -> Tier;
    fn call<'a>(
        &'a self,
        args: ToolArgs,
        ctx: &'a ToolCtx,
    ) -> BoxFut<'a, ToolResult>;

    // Provided methods
    fn approval_level(&self, _args: &ToolArgs, _ctx: &ToolCtx) -> ApprovalLevel { ... }
    fn cancel_behavior(&self) -> CancelBehavior { ... }
    fn description(&self) -> Option<&str> { ... }
    fn input_schema(&self) -> Value { ... }
    fn preview_call<'a>(
        &'a self,
        _args: &'a ToolArgs,
        _ctx: &'a ToolCtx,
    ) -> BoxFut<'a, Option<String>> { ... }
}

Required Methods§

Source

fn name(&self) -> &str

Source

fn tier(&self) -> Tier

Source

fn call<'a>( &'a self, args: ToolArgs, ctx: &'a ToolCtx, ) -> BoxFut<'a, ToolResult>

Provided Methods§

Source

fn approval_level(&self, _args: &ToolArgs, _ctx: &ToolCtx) -> ApprovalLevel

Source

fn cancel_behavior(&self) -> CancelBehavior

Source

fn description(&self) -> Option<&str>

Source

fn input_schema(&self) -> Value

Source

fn preview_call<'a>( &'a self, _args: &'a ToolArgs, _ctx: &'a ToolCtx, ) -> BoxFut<'a, Option<String>>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl Tool for AgentSpawn

Source§

impl Tool for BashKill

Source§

impl Tool for BashList

Source§

impl Tool for BashOutput

Source§

impl Tool for BashSpawn

Source§

impl Tool for BashStatus

Source§

impl Tool for ComposeEmailPreview

Source§

impl Tool for Concat

Source§

impl Tool for DispatchAll

Source§

impl Tool for EstimateTokens

Source§

impl Tool for ExtractToolUses

Source§

impl Tool for FetchConfessions

Source§

impl Tool for FetchRule

Source§

impl Tool for FindCompactRange

Source§

impl Tool for FormAsk

Source§

impl Tool for atman_runtime::tools::fs::FsEdit

Source§

impl Tool for atman_runtime::tools::hunk::FsEdit

Source§

impl Tool for FsGrep

Source§

impl Tool for FsList

Source§

impl Tool for FsRead

Source§

impl Tool for FsWrite

Source§

impl Tool for GitAdd

Source§

impl Tool for GitBranch

Source§

impl Tool for GitCommit

Source§

impl Tool for GitDiff

Source§

impl Tool for GitLog

Source§

impl Tool for GitPush

Source§

impl Tool for GitShow

Source§

impl Tool for GitStatus

Source§

impl Tool for Head

Source§

impl Tool for HelpShow

Source§

impl Tool for HunkApply

Source§

impl Tool for HunkReview

Source§

impl Tool for IsEmpty

Source§

impl Tool for Len

Source§

impl Tool for ListAll

Source§

impl Tool for ListAny

Source§

impl Tool for ListFilter

Source§

impl Tool for ListFind

Source§

impl Tool for ListMap

Source§

impl Tool for ListReduce

Source§

impl Tool for McpToolAdapter

Source§

impl Tool for MemoryConfess

Source§

impl Tool for MemoryFetchConfessions

Source§

impl Tool for MemoryGoalClear

Source§

impl Tool for MemoryGoalGet

Source§

impl Tool for MemoryGoalSet

Source§

impl Tool for MemoryHistoryCount

Source§

impl Tool for MemoryHistoryRead

Source§

impl Tool for MemoryHistorySearch

Source§

impl Tool for MemoryRecentTurns

Source§

impl Tool for MemorySpecDeviate

Source§

impl Tool for MemorySpecStatus

Source§

impl Tool for MemorySpecUpdate

Source§

impl Tool for MemoryTodoCancel

Source§

impl Tool for MemoryTodoDelete

Source§

impl Tool for MemoryTodoDone

Source§

impl Tool for MemoryTodoList

Source§

impl Tool for MemoryTodoSet

Source§

impl Tool for PlanRead

Source§

impl Tool for PlanTick

Source§

impl Tool for PlanWrite

Source§

impl Tool for PreviewPush

Source§

impl Tool for RenderPromptMarkdown

Source§

impl Tool for RenderPromptTerse

Source§

impl Tool for RenderPromptXml

Source§

impl Tool for ReplaceMessagesRange

Source§

impl Tool for SessionPush

Source§

impl Tool for ShellQuote

Source§

impl Tool for Sleep

Source§

impl Tool for Tail

Source§

impl Tool for TaskKill

Source§

impl Tool for TaskList

Source§

impl Tool for TermCapture

Source§

impl Tool for TermInput

Source§

impl Tool for TermKill

Source§

impl Tool for TermList

Source§

impl Tool for TermResize

Source§

impl Tool for TermSpawn

Source§

impl Tool for TestRun

Source§

impl Tool for TextConcat

Source§

impl Tool for ToJsonString

Source§

impl Tool for WebFetch

Source§

impl Tool for WebSearch