lc_core/tools/mod.rs
1// src/core/tools/mod.rs
2//! Tool abstractions for agent function calling.
3//!
4//! Provides base traits and types for tool integration:
5//! - `BaseTool`: String-based tool interface (object-safe)
6//! - `Tool`: Type-safe generic tool interface
7//! - `ToolDefinition`: LLM function calling definition
8//! - `ToolRegistry`: Tool collection and lookup
9
10mod base;
11mod registry;
12mod structured;
13mod structured_output;
14mod tool_definition;
15
16pub use base::{to_tool_definition, BaseTool, Tool, ToolError};
17pub use registry::ToolRegistry;
18pub use structured::StructuredTool;
19pub use structured_output::StructuredOutput;
20pub use tool_definition::{
21 FunctionCall, FunctionDefinition, ToolCall, ToolCallBuilder, ToolCallResult, ToolDefinition,
22};