You are browsing as a guest. Sign up (or log in) to start making projects!

2h 23m 2s logged

Devlog #6 - Giving MILO Memory

Today I spent 2h 5m adding memory per-chat (since before that, even if it was the same chat, it could not remember the previous message I sent) + improved MILO’s conversation system.

I added per-chat memory so MILO can actually remember what happened earlier in the same conversation instead of treating every message like a completely new request.

For example:

Me: Find my Spider-Man ticket
MILO: I found pixedH1723.pdf
Me: What did I just ask you to find?
MILO: You asked me to find your Spider-Man ticket.
Me: Which type of file is it?
MILO: The Spider-Man Ticket is a PDF file

I added a backend chat_memory system that keeps information like the last command, action, query, found file, results, and file content for each individual chat.


def get_chat_memory(chat_id):
    if chat_id not in chat_memory:
        chat_memory[chat_id] = {
            "last_command": "",
            "last_action": "",
            "last_file": None,
            "last_results": []
        }

    return chat_memory[chat_id]

I also added a new CHAT action to MILO’s AI so it can answer normal conversational questions like “what did I just ask you?” instead of forcing everything into SEARCH or QUESTION.

Another improvement was passing the recent conversation history into Qwen3 so it has more context when interpreting follow-up messages such as “it”, “that file”, or “what did you find?”.

One of the reasons I added memory is because it’s the foundation for the next major feature which is file actions like Rename, where I can say:

Find my Spider-Man ticket

And then say:
Rename it to Spider-Man Ticket

instead of having to say the original filename like:
Can you rename “pixedH1723” to “Spider-Man”.

0
26

Comments 0

No comments yet. Be the first!