use std::path::PathBuf;
use rhema_core::request::ThinkingEffort;
#[derive(Debug, Clone)]
pub struct CodingAgentConfig {
pub model: String,
pub system: Option<String>,
pub base_system: Option<String>,
pub workspace: PathBuf,
pub max_turn_steps: u32,
pub thinking: ThinkingEffort,
}
impl CodingAgentConfig {
pub const DEFAULT_MAX_TURN_STEPS: u32 = 2048;
pub fn new(model: impl Into<String>, workspace: impl Into<PathBuf>) -> Self {
Self {
model: model.into(),
system: None,
base_system: None,
workspace: workspace.into(),
max_turn_steps: Self::DEFAULT_MAX_TURN_STEPS,
thinking: ThinkingEffort::Default,
}
}
}