This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend
What I Built
*"You Said You'd" * is a local, privacy-first AI commitment tracker.
I built this for a friend who is incredibly busy and constantly making casual promises in WhatsApp and Telegram groups ("I'll send you that link tomorrow", "Let's grab lunch next week", "I owe you $20 for the tickets"). Unsurprisingly, these casual commitments get lost in the noise of group chats, leading to forgotten plans and missed IOUs.
To solve this, I built a brutalist, retro-themed web application where they can drop in a raw chat export (.txt or .json). The application parses the chat and uses local AI to extract every single promise, request, and IOU made by them or to them, categorizing them into a neat, searchable ledger.
When I handed the app over to him and had him upload his group chat from last month, his exact reaction was: "Wait, I completely forgot I told Shivam I'd look at his resume. This is terrifyingly useful."
Demo
Code
HarshitAnand1
/
local-commitment-tracker
local, privacy-first AI commitment tracker
You Said You'd
An AI that remembers what you promised, what others promised you, and shows the exact message where it was said.
Hacktoberfest Weekend Challenge 2026 · Build for a Friend + Open-Source AI
The Problem
People constantly make small commitments in chats:
- "I'll send it tonight."
- "I'll bring the HDMI adapter."
- "I'll talk to the professor tomorrow."
- "Don't worry, I'll handle the registration."
- "I'll send you the deck after dinner."
These commitments disappear into thousands of messages. You Said You'd imports a user's own chat export and turns those vague conversational promises into a searchable, evidence-backed commitment ledger.
This is not another generic chatbot. Its job is specifically:
Remember what I said I'd do. Remember what other people said they'd do. Help me resume unfinished commitments.
Target User
A real person who frequently forgets small promises, has many active projects, works in groups/clubs, loses track of who owes…
How I Built It
The entire stack is designed to run entirely locally, turning your own machine into the AI server:
- Frontend: Next.js (App Router) styled with vanilla CSS following a strict Hacktoberfest 26 retro-brutalist theme (no Tailwind).
- Agent Framework: I used Mastra (@mastra/core) to orchestrate the AI logic. Mastra handles the multi-step workflow of parsing the chat and enforcing structured JSON outputs.
- Local Inference: Ollama running Gemma 3 natively on the machine. This acts as the brain for the Mastra Agents.
- Memory & Retrieval (RAG): Instead of dumping massive chat histories into the context window, I used PostgreSQL with pgvector. Every commitment is embedded using the
nomic-embed-textmodel. When the user asks a question on the "Ask" page, we do a cosine similarity search to find the top 5 most relevant commitments and pass only those to the Mastra QA Agent.
Why Does Open Innovation Matter?
This project is built around one core philosophy: My friend's conversations are not AI training data. They're their private life.
A person's chat history contains personal relationships, private plans, arguments, addresses, and sensitive financial context. It is incredibly dangerous to send 5 years of WhatsApp history to a closed-source cloud LLM API just to extract some reminders.
Open innovation—specifically the availability of powerful open-weights models like Gemma 3, local inference runners like Ollama, and open-source frameworks like Mastra—made this project possible. I was able to build an advanced RAG pipeline that processes sensitive data entirely on the user's local hardware. You get the power of an AI assistant while keeping your data off a server you don't control.
Prize Categories
- Best Use of Gemma (Ran Gemma 3 locally as the core reasoning engine for extracting commitments).
- Best Use of Mastra (Orchestrated the extraction workflow and the QA agent using Mastra over open local models).
Top comments (0)