summaryrefslogtreecommitdiff
path: root/Omni
diff options
context:
space:
mode:
authorBen Sima <ben@bensima.com>2025-12-13 11:44:00 -0500
committerBen Sima <ben@bensima.com>2025-12-13 11:44:00 -0500
commit3d719bf5cd279bc9a900f375bc1bf3625e03a9a9 (patch)
treec7297a11b360b8dc0f04cdd2c2bb585bd5194b04 /Omni
parent0936eb15144e2fc15b073e989d6c5d700dc47435 (diff)
Add ISO 8601 timestamps to conversation context messages
Diffstat (limited to 'Omni')
-rw-r--r--Omni/Agent/Memory.hs8
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.