diff options
author | Grail Finder <wohilas@gmail.com> | 2025-04-06 13:59:44 +0300 |
---|---|---|
committer | Grail Finder <wohilas@gmail.com> | 2025-04-06 13:59:44 +0300 |
commit | d2e48468350ff315ca54663dbe2783c6e6eddcb2 (patch) | |
tree | 2eca48fbfbb20c2f4fe584aa53260ece8788b3d6 /session.go | |
parent | 4a9c90af3f3b8c9d5d382892b8f3392df0b5d212 (diff) |
Feat: import chat on f11
Diffstat (limited to 'session.go')
-rw-r--r-- | session.go | 19 |
1 files changed, 19 insertions, 0 deletions
@@ -7,6 +7,7 @@ import ( "fmt" "os" "os/exec" + "path/filepath" "strings" "time" ) @@ -34,6 +35,24 @@ func exportChat() error { return os.WriteFile(activeChatName+".json", data, 0666) } +func importChat(filename string) error { + data, err := os.ReadFile(filename) + if err != nil { + return err + } + messages := []models.RoleMsg{} + if err := json.Unmarshal(data, &messages); err != nil { + return err + } + activeChatName = filepath.Base(filename) + chatBody.Messages = messages + cfg.AssistantRole = messages[1].Role + if cfg.AssistantRole == cfg.UserRole { + cfg.AssistantRole = messages[2].Role + } + return nil +} + func updateStorageChat(name string, msgs []models.RoleMsg) error { var err error chat, ok := chatMap[name] |