Skip to main content

vv_agent/prompt/builder/
options.rs

1use std::collections::BTreeMap;
2use std::path::PathBuf;
3
4use serde_json::Value;
5
6#[derive(Debug, Clone, PartialEq, Eq)]
7pub struct BuiltSystemPrompt {
8    pub prompt: String,
9    pub sections: Vec<Value>,
10    pub stable_hash: String,
11}
12
13#[derive(Clone)]
14pub struct BuildSystemPromptOptions {
15    pub language: String,
16    pub allow_interruption: bool,
17    pub use_workspace: bool,
18    pub enable_todo_management: bool,
19    pub agent_type: Option<String>,
20    pub available_sub_agents: BTreeMap<String, String>,
21    pub available_skills: Option<Value>,
22    pub workspace: Option<PathBuf>,
23    pub current_time_utc: Option<String>,
24    pub session_memory_context: String,
25}
26
27impl Default for BuildSystemPromptOptions {
28    fn default() -> Self {
29        Self {
30            language: "en-US".to_string(),
31            allow_interruption: true,
32            use_workspace: true,
33            enable_todo_management: true,
34            agent_type: None,
35            available_sub_agents: BTreeMap::new(),
36            available_skills: None,
37            workspace: None,
38            current_time_utc: None,
39            session_memory_context: String::new(),
40        }
41    }
42}