findbox:以本機開源權重 Gemma 整理檔案,無需雲端
findbox: I built a tool that quietly organizes your digital mess while you sleep — 100% local, open-weight Gemma, zero cloud
findbox 是一款開源、本機運行的檔案整理工具,使用 Ollama 在本機執行開源權重 Gemma 3,並以低 CPU 優先級整理檔案,資料不會離開裝置。它可按記憶中的內容搜尋檔案,亦能在 Ollama 未運行時改用確定性啟發式引擎。安全設計包括預設先行試跑、可復原操作、不覆寫或刪除檔案,伺服器僅限 localhost。
🦥 findbox — Drop it in. Forget it. Find it by what you remember.
Built for Hacktoberfest 2026 Week 3: Slow & Steady (International Sloth Day). Open-source, 100% local, zero cloud.
👉 GitHub: chourasiavinit9-dev/findbox
🌐 Static Demo (judges): chourasiavinit9-dev.github.io/findbox
The Problem: Your Downloads Folder Is a Crime Scene
I have 847 files in my Downloads folder right now. IMG_4471.png (an Instagram recipe I'll never find), scan(3)_final_FINAL.pdf (who knows), WhatsApp Image 2026-09-14.jpg (could be anything), and buried in there somewhere — an electricity bill I need to pay.
Sorting this takes hours. So nobody does it. The mess compounds. Then one day you get a late fee because the bill was buried under 200 screenshots.
findbox solves this while you sleep.
The Build Session
I built the entire thing with Antigravity (Gemini coding agent) in one session:
The Lazy Workflow
# Run this once before bed
python3 sloth_box.py run --apply
# Wake up to everything organized. Then search:
python3 sloth_box.py serve # http://127.0.0.1:8765
# Search: "paneer recipe september" → finds it instantly
Your effort: 1 command. That's literally it.
findbox runs at os.nice(19) — the absolute lowest CPU priority, yielding to every other process on the machine.
Why Open-Weight Models Were Non-Negotiable
Think about what's in your Downloads folder: bank statements, medical prescriptions, Aadhaar/passport scans, private WhatsApp exports, OTP screenshots.
Sending any of this to a cloud API is unacceptable. Open-weight Gemma 3 running locally via Ollama was the only viable choice:
| Cloud APIs | findbox (Gemma local) | |
|---|---|---|
| Privacy | Files leave your device | Files never leave RAM |
| Offline | Requires internet | Works on an airplane |
| Cost | Per-token for 1000s of files | Free at any scale |
| Language | English-optimized | Hindi/Bengali natively |
When Ollama isn't running, findbox falls back to a deterministic heuristics engine — so it never crashes.
Key Features
Zero-Config Auto-Discovery
No path configuration. It auto-finds ~/Downloads, ~/Desktop, ~/Pictures/Screenshots, ~/Documents, WhatsApp exports, iCloud Drive. Just run it.
Meaningful Renaming
IMG_4471.png → 2026-09-04_instagram-paneer-tikka_recipe.png
scan(3)_final_FINAL.pdf → 2026-10-12_electricity-bill_WBSEDCL.pdf
WhatsApp Image 2026-09-14.jpg → 2026-09-14_rent-chat-rahul_chats.jpg
Vague-Memory Search
Gemma parses your query into structured parameters (keywords + category + date range), then SQLite FTS5 BM25 finds the exact file. Search "paneer recipe september" → finds the Instagram screenshot from Sept 4.
Scan from the UI
The 🦥 Scan My Device Now button in the web UI triggers background scanning. No terminal needed.
Action Items Panel
Deadlines extracted from every file, color-coded: 🔴 red = due ≤7 days, 🟣 purple = future, ⚫ gray = past.
Architecture
sloth_box/
├── config.py — AUTO_SCAN_DIRS (8 device locations)
├── security.py — path-traversal, XSS disarm, magic-byte quarantine
├── extractor.py — PDF/DOCX/image/text + fallback heuristics
├── ai.py — local Ollama/Gemma client + vague query parser
├── organizer.py — multi-folder intake, collision-safe rename, undo
├── db.py — SQLite WAL + FTS5 + audit log
└── server.py — WCAG 2.1 AA web UI (neobrutalism design)
Safety: dry-run by default, atomic undo, no overwrites, no deletes, localhost-only server.
The Payoff Meter
Minutes Saved = (Files Indexed × 1.5) + (Searches Avoided × 5.0)
On sample data: 15 minutes saved, 0 minutes spent. That's the sloth way.
Why Open Innovation Matters
This project wouldn't exist as a privacy-safe tool without open-weight models. The files it processes are genuinely sensitive. Gemma running locally means:
- Data never moves — inference in local RAM
- No internet required — fully offline
- No metered cost — 10,000 files, pay nothing
- Multilingual — handles Hindi/Bengali natively (WBSEDCL, Aadhaar, kharcha all work)
Try It
git clone https://github.com/chourasiavinit9-dev/findbox && cd findbox
python3 sloth_box.py run # dry-run
python3 sloth_box.py run --apply # apply
python3 sloth_box.py serve # search UI at http://127.0.0.1:8765
python3 -m pytest tests/ -v # 18 tests, 0.04s
🌐 Judge demo: chourasiavinit9-dev.github.io/findbox
🦥 Hacktoberfest 2026 Week 3 — Slow & Steady · International Sloth Day · Open-source · 100% local · Zero cloud
來源:DEV Community · dev.to