mini_langchain/tools/
error.rs

1use crate::llm::error::LLMError;
2
3
4#[derive(Debug, thiserror::Error)]
5pub enum ToolError {
6    #[error("Tool not found: {0}")]
7    ToolNotFound(String),
8    
9    #[error("Tool execution error in '{name}': {reason}")]
10    ExecutionError {
11        name: String,
12        reason: String,
13    },
14
15    #[error("LLM error: {0}")]
16    LLMError(#[from] LLMError),
17    
18    #[error("Tool parameters do not match: {0}")]
19    ParamsNotMatched(String),
20
21    #[error("Unknown tool error")]
22    Unknown,
23}