|
|
|
|
|
by zbycz
170 days ago
|
|
If you download a Data export, the timestamps are there for every conversation, and often for messages as well. The html file is just a big JSON with some JS rendering, so I wrote this bash script which adds the timestamp before the conversation title: sed -i 's|"<h4>" + conversation.title + "</h4>"|"<h4>" + new Date(conversation.create_time*1000).toISOString().slice(0, 10) + " @ " + conversation.title + "</h4>"|' chat.html
|
|
It uses the pagefind project so it can be hosted on a static host, and I made a fork of pagefind which encrypts the indexes so you can host your private chats wherever and it will be encrypted at rest and decrypted client-side in the browser.
(You still have to trust the server as the html itself can be modified, but at least your data is encrypted at rest.)
One of the goals is to allow me to delete all my data from chatgpt and claude regularly while still having a private searchable history.
It's early but the basics work, and it can handle both chatgpt and claude (which is another benefit as I don't always remember where I had something).
https://github.com/gnyman/llm-history-search