use super::AgentConfig;
impl<Tools, Schema> AgentConfig<Tools, Schema> {
pub fn append_system_prompt(mut self, prompt: &str) -> Self {
self.append_system_prompt = Some(prompt.to_string());
self
}
pub fn full_system_prompt(&self) -> Option<String> {
match (&self.system_prompt, &self.append_system_prompt) {
(Some(base), Some(extra)) => Some(format!("{base}\n\n{extra}")),
(Some(only), None) | (None, Some(only)) => Some(only.clone()),
(None, None) => None,
}
}
}