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 AgentKill

Source§

impl Tool for AgentOutput

Source§

impl Tool for AgentSpawn

Source§

impl Tool for AgentStatus

Source§

impl Tool for AnchorEdit

Source§

impl Tool for AnchorRead

Source§

impl Tool for AnchorUndo

Source§

impl Tool for AnchorWrite

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 FindCompactRange

Source§

impl Tool for FlowCheck

Source§

impl Tool for FlowInterject

Source§

impl Tool for FlowList

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 HasPendingInjections

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 LlmCallTool

Source§

impl Tool for LlmClassifyTool

Source§

impl Tool for LlmExtractTool

Source§

impl Tool for LlmGenerateBranchesTool

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 MemorySpecMaterialize

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 MessageAssistant

Source§

impl Tool for MessageSystem

Source§

impl Tool for MessageTool

Source§

impl Tool for MessageUser

Source§

impl Tool for OutputRead

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 RuleFetch

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 TermFind

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 WaitForWatcher

Source§

impl Tool for Watch

Source§

impl Tool for WatcherList

Source§

impl Tool for WatcherUnwatch

Source§

impl Tool for WebFetch

Source§

impl Tool for WebSearch