diff options
| author | Ben Sima <ben@bensima.com> | 2025-12-13 11:44:00 -0500 |
|---|---|---|
| committer | Ben Sima <ben@bensima.com> | 2025-12-13 11:44:00 -0500 |
| commit | 3d719bf5cd279bc9a900f375bc1bf3625e03a9a9 (patch) | |
| tree | c7297a11b360b8dc0f04cdd2c2bb585bd5194b04 | |
| parent | 0936eb15144e2fc15b073e989d6c5d700dc47435 (diff) | |
Add ISO 8601 timestamps to conversation context messages
| -rw-r--r-- | Omni/Agent/Memory.hs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Omni/Agent/Memory.hs b/Omni/Agent/Memory.hs index 0a050b7..9ca2d99 100644 --- a/Omni/Agent/Memory.hs +++ b/Omni/Agent/Memory.hs @@ -90,6 +90,7 @@ import qualified Data.List as List import qualified Data.Text as Text import qualified Data.Text.Encoding as TE import Data.Time (UTCTime, getCurrentTime) +import Data.Time.Format (defaultTimeLocale, formatTime) import qualified Data.UUID as UUID import qualified Data.UUID.V4 as UUID import qualified Data.Vector.Storable as VS @@ -1415,9 +1416,10 @@ getConversationContext uid chatId maxTokens = do | otherwise = (acc, sum (map cmTokensEstimate acc)) formatMsg m = - let prefix = case cmRole m of - UserRole -> fromMaybe "User" (cmSenderName m) <> ": " - AssistantRole -> "Assistant: " + let timestamp = Text.pack (formatTime defaultTimeLocale "%Y-%m-%dT%H:%M:%SZ" (cmCreatedAt m)) + prefix = case cmRole m of + UserRole -> "[" <> timestamp <> "] " <> fromMaybe "User" (cmSenderName m) <> ": " + AssistantRole -> "[" <> timestamp <> "] Assistant: " in prefix <> cmContent m -- | Summarize old messages and archive them. |
