use thiserror::Error;
use crate::client::error::LlmError;
#[derive(Error, Debug)]
pub enum AgentError {
#[error("Tool registration failed: {0}")]
ToolRegistration(String),
#[error("Session creation failed: {0}")]
Session(#[from] LlmError),
#[error("Controller not initialized")]
ControllerNotInitialized,
#[error("No LLM configuration found for provider: {0}")]
NoConfiguration(String),
#[error("Session not found: {0}")]
SessionNotFound(i64),
}