swiftide_agents/
errors.rs

1use swiftide_core::chat_completion::{
2    errors::{ChatCompletionError, ToolError},
3    ChatCompletionRequestBuilderError,
4};
5use thiserror::Error;
6use tokio::task::JoinError;
7
8#[derive(Error, Debug)]
9pub enum AgentError {
10    #[error("Agent is already running")]
11    AlreadyRunning,
12
13    #[error("Failed to render system prompt {0}")]
14    FailedToRenderSystemPrompt(anyhow::Error),
15
16    #[error("Failed to build chat completion request {0}")]
17    FailedToBuildRequest(ChatCompletionRequestBuilderError),
18
19    #[error("Error from LLM when running completions {0}")]
20    CompletionsFailed(ChatCompletionError),
21
22    #[error(transparent)]
23    ToolError(#[from] ToolError),
24
25    #[error("Failed waiting for tool to finish {0}")]
26    ToolFailedToJoin(JoinError),
27
28    #[error("Failed to load tools from toolbox {0}")]
29    ToolBoxFailedToLoad(anyhow::Error),
30}