The day this story was posted on Show HN, I didn’t want to be glued to the screen, waiting for new comments. So, I asked Gemini to write a script that listens for new comments on Firebase. I already had Pushover [1], so I connected the script to send notifications to my mobile device. I ran the script and forgot about it. Today, I woke up to multiple notifications. I believe this script could be useful for other HN users as well, so I converted it into a project and posted it to GitHub [2].
I built a vibe coded version for my personal use. This helped me track projects and other things going on in my small business. Memento gives me a different look with a lot more features to it.
annjose 21 hours ago [-]
Thanks for the feedback. What are the things you liked the most? Any other features you would like to see?
linggen 21 hours ago [-]
the hard part probably isn't search over 500k emails, it's keeping the generated wiki from becoming a second messy inbox. i'd want to see how it handles stale facts and conflicting versions of the same project. email has a lot of "this was true for two weeks in 2019" buried inside it.
annjose 21 hours ago [-]
Thanks for the note.
While building the context bundle, there is a tool that detect gaps in the timeline. So when you ask 'kitchen renovation', and there are emails from 2019 and 2023, the tool flags these gaps and the LLM is made aware of it. So Memento asks which of these clusters you want to track as a project.
Later while generating the wiki, LLM handles conflicts and facts that evolved over time because it has the timestamp of the messages. So it shows that in the narrative.
Wwat we haven't implemented yet is to update the wiki when new emails arrive. That is the next one in our backlog.
annjose 3 days ago [-]
Co-author here. Happy to take any questions.
We built Memento for two reasons - we were frustrated by the search in Gmail, and we wanted to organize email locally in a privacy-friendly way. But the outcome was much more than that - we learned how to build agents from scratch, optimize agentic search, and discovered many beautiful memories we didn’t know were hidden in our email.
We would love to know what you think of this project. All feedback is welcome.
rjohn 3 days ago [-]
It would be cool to extend this to other applications like Slack.
georgeck 3 days ago [-]
Great feedback. It would be great to connect Memento to Slack and possibly the user's photo archive as well. And if we can map the canonical user across all these stores, the Memento can show the unified view for all your memories.
georgeck 3 days ago [-]
Wanted to call out that the demo of the Enron dataset [1] is based on a private fork of Memento. Since the archive contains multiple inboxes, we had to make Memento pick one of the users as the central user. These changes are not in the main repo as it is not a regular use case.
This is unrelated to Memento.
[1] https://pushover.net/
[2] https://github.com/latentsignal-org/hn-comment-watcher
Later while generating the wiki, LLM handles conflicts and facts that evolved over time because it has the timestamp of the messages. So it shows that in the narrative.
Wwat we haven't implemented yet is to update the wiki when new emails arrive. That is the next one in our backlog.
We built Memento for two reasons - we were frustrated by the search in Gmail, and we wanted to organize email locally in a privacy-friendly way. But the outcome was much more than that - we learned how to build agents from scratch, optimize agentic search, and discovered many beautiful memories we didn’t know were hidden in our email.
We would love to know what you think of this project. All feedback is welcome.
[1] https://memento-demo.latentsignal.org
Note: Anytime you want to remove memento tables from msgvault db, you can do `./memento reset`