use crate::config::Config;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TemplateAgentConfig {
pub max_concurrent_requests: usize,
pub request_timeout: u64,
pub user_agent: String,
pub follow_redirects: bool,
pub max_redirects: usize,
pub verify_ssl: bool,
pub proxy: Option<String>,
pub system_prompt: String,
#[serde(default)]
pub tool_prompt_appendix: String,
pub debug_logging: bool,
}
impl Default for TemplateAgentConfig {
fn default() -> Self {
Self {
max_concurrent_requests: 10,
request_timeout: 30,
user_agent: "Kowalski Agent/1.0".to_string(),
follow_redirects: true,
max_redirects: 5,
verify_ssl: true,
proxy: None,
system_prompt: "You are a helpful assistant.".to_string(),
tool_prompt_appendix: String::new(),
debug_logging: false,
}
}
}
impl From<Config> for TemplateAgentConfig {
fn from(_config: Config) -> Self {
TemplateAgentConfig::default()
}
}