Introducing ChatKeeper
September 29, 2024
I use ChatGPT all the time. It's not perfect and it can make mistakes. But I've found that if I set my expectations to those I would have for an eager but sometimes naΓ―ve personal assistant, it becomes an incredible time saver, brainstorming tool, document reviewer, planning aid, and general sounding board. And a bunch of other things, too.
I've had hundreds of conversations with ChatGPT and it's often helpful to go back to earlier conversations to review or even continue them.
ChatGPT Conversations: Unsearchable and Outside My Control
The website does not make this easy. There is no search, and conversations are presented in just a long list. Finding a conversation I had months ago is too frustrating to pursue. What good are past conversations to me if I can't find them? And I've been bitten many times in the past by hosted services just disappearing, taking my hosted data with them. I really wanted backups of these conversations; I prefer having control over my own data.
Fortunately, ChatGPT provides a way to export your conversations. It provides them as a .zip file with a static html page that loads an enormous json structure containing all of your conversation data. As far as backups go, it's a decent start. But the user interface of the static web page is pretty rough, it's still not searchable, and it's not compatible with other tools that I use.
ChatKeeper: Searchable and Local
So I wrote ChatKeeper, a tool that converts ChatGPT export files into searchable Markdown files stored locally on my own hard drive.
Why Markdown? That's easy. It's a simple, universal text format that eliminates vendor lock-in and is readable by anything or anyone. It retains the structure of your conversations, and since much of ChatGPT's output is already in Markdown, it perfectly preserves the original formatting.
This worked great with Obsidian β a tool I use every day to take notes, plan work, and generally stay organized β which uses Markdown natively. I could link to conversations from other notes and keep related things together, and could click on links within my conversations to continue them at the ChatGPT website.
(There's nothing specific to Obsidian here, by the way. This will all work just as easily with other "second brain" applications that can handle local Markdown files, too.)
As I used it more I started adding some useful features like updating continued conversations in place even if I move files around, providing links for continuing existing conversations, and showing some of ChatGPT's reasoning process with its new models.
Before too long it evolved from something I intended only for my own use into something that I thought others might find useful. So now I'm sharing it.
Give It a Try!
I hope you find it useful! You can download ChatKeeper here and start managing your ChatGPT conversations more effectively in just a few minutes.
How do you manage your ChatGPT conversations? I'd love to hear your thoughts and feedback on ChatKeeper.
Receive New Articles In Your Inbox
I don't publish often. In fact, I've gone as long as 21 years between blog posts... but I probably won't go do that again. Posts will contain updates on Martian Software's open source projects, products like ChatKeeper, and some usually Java-centric items for both new and experienced software developers.
You can usubscribe at any time.