{"slug": "inbox-zen-privacy-first-file-sorting-with-local-gemma", "title": "Inbox Zen: Privacy-First File Sorting with Local Gemma", "summary": "A developer built Inbox Zen, a privacy-first AI agent that scans a local clutter directory, sends file contents to a locally hosted Gemma model via Ollama, and uses the model's categorization to sort files into folders such as Invoices and Personal Notes with shutil, logging results to a zen_summary.txt file. A Flask server deployed on Render displays the latest sorting summary, and Sentry tracing was added to flush transaction data before the script exits. The developer says the local-first design keeps sensitive documents off proprietary cloud APIs, eliminates API costs, and saves roughly 10-15 minutes of manual filing each morning.", "body_md": "*This is a submission for the [Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady](https://dev.to/challenges/hacktoberfest-week3-2026-10-19)*\n\n\"Inbox Zen\" is a privacy-first AI agent that automatically categorizes and archives cluttered local files or emails overnight. It scans a designated \"clutter\" directory, reads the text, and intelligently sorts them into appropriate folders (like \"Invoices\", \"Reading List\", or \"Personal Notes\") using a local AI model. Finally, it generates a simple morning summary so you can wake up to a clean digital workspace without the dread of manually sorting files.\n\nThis directly targets the \"Slow and Steady\" theme: automating a tedious, repetitive daily chore.\n\nHere is the live link to my daily \"Inbox Zen\" summary dashboard deployed on Render:\n\n[https://inbox-zen.onrender.com](https://inbox-zen.onrender.com)\n\n*(Note: If you visit, you'll see the latest summary of the files Gemma successfully sorted on my local machine!)*\n\nYou can find the full Python script and Flask server code in my GitHub repository here:\n\n[https://github.com/2AJ0/inbox-zen](https://github.com/2AJ0/inbox-zen)\n\nI built this project completely manually focusing on a local-first approach to protect sensitive data:\n\n`requests` library to send file contents to the local Gemma instance, prompting it to strictly categorize the text. The script then uses `shutil` to move the files and generates a `zen_summary.txt` log.`sentry_sdk.start_transaction()` block and used `.flush()` to ensure trace data was sent before the script closed. Open innovation is the absolute core of this project. Because I am dealing with personal files (like invoices or personal notes), sending this data to a closed, proprietary API in the cloud is a massive privacy risk. By utilizing an open-weight model like Gemma and running it locally with Ollama, my sensitive data *never* leaves my machine. It also means the tool is completely free to run with zero API costs, demonstrating how open-source AI democratizes powerful automation.\n\nThis agent saves me about 10-15 minutes of dragging and dropping files every single morning. More importantly, it removes the \"digital tax\" and mental friction of starting my day staring at a messy downloads folder. I just check my dashboard, see what was filed where, and start working.\n\nI am entering this submission for the following partner categories:", "url": "https://wpnews.pro/news/inbox-zen-privacy-first-file-sorting-with-local-gemma", "canonical_source": "https://dev.to/2aj0/inbox-zen-privacy-first-file-sorting-with-local-gemma-36h8", "published_at": "2026-10-23 13:40:41+00:00", "updated_at": "2026-10-23 13:42:13.408604+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "large-language-models", "developer-tools"], "entities": ["Inbox Zen", "Gemma", "Ollama", "Render", "Sentry", "GitHub", "Flask", "Hacktoberfest"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/inbox-zen-privacy-first-file-sorting-with-local-gemma", "markdown": "https://wpnews.pro/news/inbox-zen-privacy-first-file-sorting-with-local-gemma.md", "text": "https://wpnews.pro/news/inbox-zen-privacy-first-file-sorting-with-local-gemma.txt", "jsonld": "https://wpnews.pro/news/inbox-zen-privacy-first-file-sorting-with-local-gemma.jsonld"}}