summaryrefslogtreecommitdiffstats
path: root/src/repl/completer.rs
diff options
context:
space:
mode:
authorsigoden <sigoden@gmail.com>2024-06-11 11:00:12 +0800
committerGitHub <noreply@github.com>2024-06-11 11:00:12 +0800
commitbb867c4fcbc6f42770471f0a0117cd8909f660d7 (patch)
tree6293f7f1108309160d1951f53f6429e9b004870d /src/repl/completer.rs
parent5635ca6a58fb4a590419335b098b7317285bfb82 (diff)
downloadaichat-bb867c4fcbc6f42770471f0a0117cd8909f660d7.tar.gz
feat: support bot (#579)
* feat: support bots * refactor with RoleLike * improve exiting session * make bot works with rag * refactor repl assert state * add bot banner * repl complete bots according bots.txt * fix on windows * remove threadpool executing function callings * adjust repl left_prompt * move bot config to global config.yaml * `.bot` throw err if funciton callings is not configured
Diffstat (limited to 'src/repl/completer.rs')
-rw-r--r--src/repl/completer.rs13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/repl/completer.rs b/src/repl/completer.rs
index d026d67..1d68792 100644
--- a/src/repl/completer.rs
+++ b/src/repl/completer.rs
@@ -49,13 +49,12 @@ impl Completer for ReplCompleter {
if parts_len > 1 {
let span = Span::new(parts[parts_len - 1].1, pos);
let args: Vec<&str> = parts.iter().skip(1).map(|(v, _)| *v).collect();
- suggestions.extend(
- self.config
- .read()
- .repl_complete(cmd, &args)
- .iter()
- .map(|(value, description)| create_suggestion(value, description, span)),
- )
+ suggestions.extend(self.config.read().repl_complete(cmd, &args).iter().map(
+ |(value, description)| {
+ let description = description.as_deref().unwrap_or_default();
+ create_suggestion(value, description, span)
+ },
+ ))
}
if suggestions.is_empty() {