From 4f0bce50c53267a9f53938ad1b264d5094a08ce4 Mon Sep 17 00:00:00 2001 From: Grail Finder Date: Sat, 7 Mar 2026 19:11:13 +0300 Subject: Chore: one init for clear call order --- bot.go | 52 ++-------------------------------------------------- 1 file changed, 2 insertions(+), 50 deletions(-) (limited to 'bot.go') diff --git a/bot.go b/bot.go index 663dd0b..0b4328f 100644 --- a/bot.go +++ b/bot.go @@ -1548,55 +1548,7 @@ func init() { } // Initialize scrollToEndEnabled based on config scrollToEndEnabled = cfg.AutoScrollEnabled - go updateModelLists() go chatWatcher(ctx) -} - -func getValidKnowToRecipient(msg *models.RoleMsg) (string, bool) { - if cfg == nil || !cfg.CharSpecificContextEnabled { - return "", false - } - // case where all roles are in the tag => public message - cr := listChatRoles() - slices.Sort(cr) - slices.Sort(msg.KnownTo) - if slices.Equal(cr, msg.KnownTo) { - logger.Info("got msg with tag mentioning every role") - return "", false - } - // Check each character in the KnownTo list - for _, recipient := range msg.KnownTo { - if recipient == msg.Role || recipient == cfg.ToolRole { - // weird cases, skip - continue - } - // Skip if this is the user character (user handles their own turn) - // If user is in KnownTo, stop processing - it's the user's turn - if recipient == cfg.UserRole || recipient == cfg.WriteNextMsgAs { - return "", false - } - return recipient, true - } - return "", false -} - -// triggerPrivateMessageResponses checks if a message was sent privately to specific characters -// and triggers those non-user characters to respond -func triggerPrivateMessageResponses(msg *models.RoleMsg) { - recipient, ok := getValidKnowToRecipient(msg) - if !ok || recipient == "" { - return - } - // Trigger the recipient character to respond - triggerMsg := recipient + ":\n" - // Send empty message so LLM continues naturally from the conversation - crr := &models.ChatRoundReq{ - UserMsg: triggerMsg, - Role: recipient, - Resume: true, - } - fmt.Fprintf(textView, "\n[-:-:b](%d) ", len(chatBody.Messages)) - fmt.Fprint(textView, roleToIcon(recipient)) - fmt.Fprint(textView, "[-:-:-]\n") - chatRoundChan <- crr + initTUI() + initTools() } -- cgit v1.2.3