diff options
Diffstat (limited to 'src/config')
| -rw-r--r-- | src/config/mod.rs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/config/mod.rs b/src/config/mod.rs index 3ef68c6..36a3349 100644 --- a/src/config/mod.rs +++ b/src/config/mod.rs @@ -57,6 +57,8 @@ pub const TEMP_SESSION_NAME: &str = "temp"; const CLIENTS_FIELD: &str = "clients"; +const SERVE_ADDR: &str = "127.0.0.1:8000"; + const SUMMARIZE_PROMPT: &str = "Summarize the discussion briefly in 200 words or less to use as a prompt for future context."; const SUMMARY_PROMPT: &str = "This is a summary of the chat history as a recap: "; @@ -126,6 +128,8 @@ pub struct Config { pub left_prompt: Option<String>, pub right_prompt: Option<String>, + pub serve_addr: Option<String>, + pub clients: Vec<ClientConfig>, #[serde(skip)] @@ -191,6 +195,8 @@ impl Default for Config { left_prompt: None, right_prompt: None, + serve_addr: None, + clients: vec![], role: None, @@ -392,6 +398,10 @@ impl Config { flags } + pub fn serve_addr(&self) -> String { + self.serve_addr.clone().unwrap_or_else(|| SERVE_ADDR.into()) + } + pub fn log(is_serve: bool) -> Result<(LevelFilter, Option<PathBuf>)> { let log_level = env::var(get_env_name("log_level")) .ok() @@ -1848,6 +1858,10 @@ impl Config { if let Some(v) = read_env_value::<String>("right_prompt") { self.right_prompt = v; } + + if let Some(v) = read_env_value::<String>("serve_addr") { + self.serve_addr = v; + } } fn load_functions(&mut self) -> Result<()> { |
