- Create initial README plan
- Set up Next.js project with Vercel EVI template
- Add memory panel component to layout (basic memory panel display)
- Set up API routes structure
- Spice up the UI - add a title "EVI Memory PoC", change the colors/design a bit, etc
- Improve the memory panel (currently just shows raw strings - make it prettier)
- Implement API endpoint for chat history retrieval
- Create chat transcript formatting utility
- Add chat ID tracking in the voice provider
- Implement chat close handler
- Fix bug where chat history will include interim messages as well
- Fix bug where chat history will output part of the results, not the full chat history (probably because we're only getting some of the page, not full transcript)
- Create memory extraction API endpoint
- Implement v1 of the Claude prompt for memory extraction
- Create basic memory store implementation (as strings)
- Implement dynamic variables to send the memories to EVI (adding them to the prompt)
- Fix memory persistence between page refreshes (currently resets on refresh)
- Add memory appending mechanism (currently overwrites instead of appends)
- Modify the prompt to add proactive memory gathering, get-to-know-you questions
- Make sure the memory panel only displays real memories, not None or other
- Improve the memory prompt to extract more legit accurate memories - have the model output JSON memories, which have a
chain_of_thought
, amemory_type
, and acontent
- Add a chat resumability option in the UI so that we can toggle between resuming or not (to test whether resuming from previous chats is enough or if memories make a difference)
- Option to turn off chat resumability seperately
- Add vercel KV storage instead of local JSON storage of memories
- [] Make sure that in the deployed version memories are still saved
- [] Build up some memories and chat history, and see what the difference is