Building an AI Agent That Never Forgets a Promise A developer built MeetMind, a meeting-assistant agent that retains per-contact memory so it can generate personalized briefs, flag overdue commitments, simulate difficult conversations, and extract structured commitments from raw notes. The system pairs Vectorize's open-source Hindsight memory layer with Groq's openai/gpt-oss-120b for reasoning, wrapped in a small FastAPI backend where each endpoint performs a recall step followed by a model call. The developer notes that adding agent memory required no complex pipeline — only storing the right facts and recalling them per contact. I've lost count of how many times I've walked into a meeting and thought, "Wait, did I already promise them this?" That's the problem I set out to fix. Most AI tools are stateless. You ask a chatbot to help you prep for a meeting, and it gives you the same generic checklist every single time — "review the agenda, know your talking points" — whether this is your first conversation with someone or your fifteenth. It has no idea what you actually discussed last time, what you promised, or what they're still waiting on. So I built MeetMind. What it actually does MeetMind remembers every meeting you've had with a contact, and uses that memory to do four things: It writes a real brief, not a generic one. Flip memory off, and you get boilerplate advice. Flip it on, and it says something like "You promised Priya the security document, and she's still waiting on it." That's the whole point of the project in one sentence. It flags what's overdue before you get caught off guard. If you promised a deliverable three weeks ago and never followed up, MeetMind catches that and tells you before the meeting, not during it. It lets you practice the conversation first. This was the feature I didn't expect to like as much as I do. The AI plays the other person, asks a pointed question based on real history "Why hasn't the SOC 2 report arrived yet?" , and gives you one line of coaching on your answer before asking a follow-up. It's a low-stakes way to rehearse a hard conversation. It turns your messy notes into structured commitments. After a meeting, you paste in your raw notes or even a rough transcript, and it pulls out exactly who committed to what and by when, then saves that back into memory. No retyping, no manual cleanup. How it's built The memory layer is powered by Hindsight, an open-source memory system from Vectorize. Every note gets "retained" into a memory bank, and before each brief, MeetMind "recalls" the relevant facts for that specific contact — dates, promises, concerns, open items — instead of dumping the entire history at the model. The reasoning and writing is handled by Groq's openai/gpt-oss-120b, which takes the recalled memories and turns them into a structured brief, a risk report, a simulated conversation, or a list of extracted commitments, depending on which feature you're using. The backend is a small FastAPI app with a handful of endpoints — one for briefs, one for risk checks, one for the simulator, one for extracting commitments — each just a thin wrapper around a recall step and a Groq call. Nothing fancy. That's actually the part I'd emphasize most: giving an agent memory doesn't require a complicated pipeline. It requires storing the right things and asking for the right things back. What surprised me The generic-vs-memory comparison is a small thing to build, but it's the moment everyone understands the project instantly. You don't need to explain what "agent memory" means in the abstract — you just show two answers to the same question, side by side, and the difference speaks for itself. The other surprise was the simulator. I added it almost as an extra, but it turned out to be the feature that makes the memory feel real, because the AI isn't just reciting facts back at you — it's using them to ask a harder question than you expected. What's next Right now contacts are added manually, so a natural next step is pulling them in from an existing CRM or calendar. I'd also like to close the loop further: after a real meeting, MeetMind should be able to draft the follow-up message itself, not just save the commitments. If you want to dig into the code or the memory system behind it, the Hindsight repo is here: https://github.com/vectorize-io/hindsight https://github.com/vectorize-io/hindsight , and you can read more about how agent memory works here: https://vectorize.io/what-is-agent-memory https://vectorize.io/what-is-agent-memory