1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum Error {
5 #[error("Agent not found: {0}")]
6 AgentNotFound(String),
7 #[error("Mesh error: {0}")]
8 MeshError(String),
9 #[error("Serialization error: {0}")]
10 SerializationError(#[from] serde_json::Error),
11 #[error("Action not found: {0}")]
12 ActionNotFound(String),
13 #[error("Action execution failed: {0}")]
14 ActionExecutionError(String),
15 #[error("Configuration error: {0}")]
16 ConfigError(String),
17 #[error("Unknown error: {0}")]
18 Unknown(#[from] anyhow::Error),
19}
20
21pub type Result<T> = std::result::Result<T, Error>;