summaryrefslogtreecommitdiffstats
path: root/src/config
diff options
context:
space:
mode:
authorsigoden <sigoden@gmail.com>2024-10-08 09:47:03 +0800
committerGitHub <noreply@github.com>2024-10-08 09:47:03 +0800
commit91231e605f34b93d4e8e519e7a169ac61fa088ea (patch)
tree4b75710faac3e9da4534ef1ca914ea544a62259a /src/config
parentb3d31fd3d19b73caf41092e8f66e4263170bccf6 (diff)
downloadaichat-91231e605f34b93d4e8e519e7a169ac61fa088ea.tar.gz
feat: prelude supports <session>:<role> (#913)
Diffstat (limited to 'src/config')
-rw-r--r--src/config/mod.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/config/mod.rs b/src/config/mod.rs
index 97cd302..291d477 100644
--- a/src/config/mod.rs
+++ b/src/config/mod.rs
@@ -1398,6 +1398,14 @@ impl Config {
self.use_session(Some(name)).with_context(err_msg)?;
}
}
+ Some((session_name, role_name)) => {
+ if self.session.is_none() {
+ self.use_session(Some(session_name)).with_context(err_msg)?;
+ if let Some(true) = self.session.as_ref().map(|v| v.is_empty()) {
+ self.use_role(role_name).with_context(err_msg)?;
+ }
+ }
+ }
_ => {
bail!("{}", err_msg())
}