use std::sync::Arc;
use crate::ToolProvider;
use crate::plugin::PromptContribution;
#[derive(Clone)]
pub struct PreparedContext {
pub messages: crate::MessageSequence,
pub prompt_contributions: Vec<PromptContribution>,
pub tool_providers: Vec<Arc<dyn ToolProvider>>,
pub include_base_tools: bool,
}
impl Default for PreparedContext {
fn default() -> Self {
Self {
messages: crate::MessageSequence::default(),
prompt_contributions: Vec::new(),
tool_providers: Vec::new(),
include_base_tools: true,
}
}
}