use std::sync::Arc;
use rskit_llm::provider::Provider;
use crate::config::AgentConfig;
pub struct Agent {
pub(super) provider: Arc<dyn Provider>,
pub(super) config: AgentConfig,
}
impl Agent {
pub fn new(provider: Arc<dyn Provider>, config: AgentConfig) -> Self {
Self { provider, config }
}
pub fn with_defaults(provider: Arc<dyn Provider>) -> Self {
Self::new(provider, AgentConfig::default())
}
}