Available on crate feature
async only.Expand description
Tool-dispatch foundation: the Tool trait, plus a registry and agent
loop runner (the latter two land in v0.2 tasks #19 and #20).
v0.2 will layer three ergonomic shapes on this single trait:
Tool– async trait. Implement directly when each tool is its own type (typical for shared crate code).ToolRegistry::register– closure-based handler. The registry wraps closures in an internalFnTool<F>adapter that implementsTool.ToolRegistry::register_typed::<Args>– typed-input handler driven byschemars. Internally builds aToolimpl that deserializes the raw input intoArgsbefore dispatching. Behind theschemars-toolsfeature.
Gated on the async feature.
Re-exports§
pub use registry::FnTool;pub use registry::ToolRegistry;pub use tool::ApprovalDecision;pub use tool::Tool;pub use tool::ToolApprover;pub use tool::ToolError;pub use tool::fn_approver;pub use runner::RunOptions;conversationpub use typed::TypedTool;schemars-tools