Ofrenda: a offline CLI that helps you remember someone, without inventing a word A developer built Ofrenda, an offline command-line tool that interviews users about a person they want to remember and writes two plain Markdown files: a short remembrance and a checklist of items for an ofrenda. The tool runs a local model through Ollama (default gemma3:4b) so no personal data leaves the machine, and enforces a strict rule that the model may only rearrange what the user typed, never invent details. The developer notes known limitations, including small models occasionally asking two questions at once and prompts tested only in English. This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine https://dev.to/challenges/hacktoberfest-week4-2026-10-26 Ofrenda is a small command-line tool that helps you remember someone. You run ofrenda new , and a local model asks you quiet questions, one at a time: what they liked to eat, a song they hummed, something they always said, a place that was theirs. When you finish, it writes two plain Markdown files: a short remembrance, and a checklist of things you might put on an ofrenda. I read "Ghost in the Machine" as the person who is no longer in the room, or no longer in your life, but still shows up in small habits and phrases. The idea started with Día de los Muertos, which treats memory as something to celebrate. But the tool isn't only for people who have died. It works just as well for a childhood friend you lost touch with. I held myself to one rule: the model must never invent anything. The remembrance can only rearrange what you actually told it. If you give it little, the file is short. I would rather it say too little than make things up. Here is the format, using a fictional friend I wrote this example by hand to show the output; the person isn't real : bash $ ofrenda new Who are you remembering: Karthik How did you know them: my childhood friend What did Karthik love to eat? Mirchi bajji from the cart outside school. He'd buy two plates and always give me the bigger one. ... more questions ... The resulting remembrance.md : Karthik Karthik and I played cricket on the ground behind our colony until the streetlights came on. Before every ball, he tapped his bat on the ground twice. Outside school there was a cart that sold mirchi bajji. He would buy two plates and always give me the bigger one. He hummed "Kal Ho Naa Ho" badly on purpose, just to annoy me. He used to say, "Chill maar, bhai." The cracked tennis-ball bat with his initials carved into it is still with me. We lost touch after college. Last year I found out he had moved abroad. Every sentence there traces back to something the user typed. A small offline command-line tool that helps you remember someone. You answer a few quiet questions about a person — what they cooked, a song they hummed, a phrase they always said — and the tool writes two plain Markdown files: a short remembrance and a checklist of things you might put on an ofrenda. Everything runs on a local model through Ollama, so nothing leaves your machine. I made this during Hacktoberfest 2026, Week 4: Ghost in the Machine. The theme was about honoring the past, and Día de los Muertos felt like the right frame — a celebration of memory, not loss. 1. Install Ollama Download from ollama.com https://ollama.com and make sure it's running. 2. Pull a model ollama pull gemma3:4b Any other small model works too. You can change it in the config see below . 3. Install ofrenda git clone https://github.com/madhav-1204/Ofrenda-CLI.git cd ofrenda-cli pip … gemma3:4b , and you can change it in ~/.ofrenda.toml or with --model . prompts/ folder as plain text files, so anyone can read and edit them. What didn't go smoothly: small models sometimes ask two questions at once even when told not to, and I left that in the README as a known limitation. Prompts are written and tested in English only. There's a language setting in the config, but I haven't verified other languages. Stories about family and friends are some of the most private things people have: names, how someone died, what they were like at home. I didn't want any of that going to a cloud API. An open-weight model made these things possible: