vtcode_core/prompts/
config.rs

1use serde::{Deserialize, Serialize};
2
3/// Configuration for system prompt generation
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub struct SystemPromptConfig {
6    /// Enable verbose mode
7    pub verbose: bool,
8    /// Include tool descriptions
9    pub include_tools: bool,
10    /// Include workspace context
11    pub include_workspace: bool,
12    /// Custom system instruction
13    pub custom_instruction: Option<String>,
14    /// Agent personality
15    pub personality: AgentPersonality,
16    /// Response style
17    pub response_style: ResponseStyle,
18}
19
20impl Default for SystemPromptConfig {
21    fn default() -> Self {
22        Self {
23            verbose: false,
24            include_tools: true,
25            include_workspace: true,
26            custom_instruction: None,
27            personality: AgentPersonality::Professional,
28            response_style: ResponseStyle::Concise,
29        }
30    }
31}
32
33/// Agent personality options
34#[derive(Debug, Clone, Serialize, Deserialize)]
35pub enum AgentPersonality {
36    Professional,
37    Friendly,
38    Technical,
39    Creative,
40}
41
42/// Response style options
43#[derive(Debug, Clone, Serialize, Deserialize)]
44pub enum ResponseStyle {
45    Concise,
46    Detailed,
47    Conversational,
48    Technical,
49}