This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady
Every modern knowledge worker dreads the Downloads and Desktop Black Hole. Over days and weeks, our workspaces accumulate hundreds of cryptically named files:
Screenshot_2026-03-12_at_11.23.41.png`` INV_82910_final(1).pdf``receipt_unnamed.jpg`` analytics_churn_export_raw(3).csv``mutual_nda_acme_unsigned.pdf
Organizing them manually requires opening each file, deciphering invoice numbers, typing dates, creating nested folders, resolving duplicate collisions, and dragging files — wasting 3+ hours every month.
SlothDesk 🦥 is an autonomous ambient background daemon that operates at a calm, deliberate "Sloth Pace". As chaotic downloads hit your drop zone:
MZ, ELF) into a quarantined vault. 2026-10-18_GitHub_Enterprise_Invoice_$21.pdf)./docs on the backend.
"You do nothing. Your desktop clutter sorts, renames, and audits itself."
Built for Hacktoberfest 2026 Open-Source AI Challenge — Week 3: "Slow and Steady" (International Sloth Day).
| Partner Track | Implementation Highlight | Technical Proof |
|---|---|---|
| Best Use of Gemma ($200) | Autonomous local Gemma 3 (4B Vision/Text) multimodal pipeline via Ollama REST API with deterministic structured JSON schemas. Extracts entities, vendors, amounts, dates, and assigns standardized semantic names (YYYY-MM-DD_Vendor_Subject.ext ). Zero cloud surveillance. |
classifier.py |
| Best Use of Render ($200) | Production containerization via multi-stage non-privileged Docker image ( UID 10001 ), 10GB persistent disk mount/app/data , zero-downtime health probes (/api/health/live ,/api/health/ready ), and 1-click blueprint. |
render.yaml & Dockerfile |
| Best Use of ElevenLabs ($100) | Ambient sleepy morning audio digest narrated via ElevenLabs text-to-speech ( George /JBFqnCBsd6RMkjVDRZzb warm voice) with custom interactive waveform scrubber and audio synthesis fallback. |
voice_digest.py &MorningBriefPlayer.tsx |
| Best |
os.path.commonpath).%PDF, PNG, JFIF, RIFF/WEBP).#090a0f, titanium borders #1e2230, subtle emerald and warm amber status lights). render.yaml) with 10GB persistent disk storage and zero-downtime health probes (/api/health/live, /api/health/ready). vercel.json) linking Next.js and FastAPI with internal service bindings (INTERNAL_BACKEND_URL).
flowchart TD
A[Chaotic Desktop & Downloads] --> B[Magic Byte Header Guard]
B --> C[Pre-Move SHA-256 Hash]
C --> D[Gemma 3 4B Multimodal Classifier]
D --> E[Semantic Renamer & Collision Resolver]
E --> F[Atomic Move to Standardized Vault]
F --> G[Post-Move SHA-256 Proof Verification]
G --> H[ElevenLabs Morning Audio Briefing]
G --> I[Live Audit Log & Manifest Export]
Your downloads folder contains your most sensitive personal data: tax returns (W-2, 1099), medical receipts, bank statements, client NDAs, and private codebase screenshots.
Sending all of these unvetted files to closed, proprietary cloud APIs exposes users to data harvesting, cloud surveillance, and third-party data breaches.
Open innovation makes privacy-first desktop automation possible:
Normally, an organized desktop requires:
Total manual effort: ~1 minute per file. Across 180 files accumulated in a month, that is 3 full hours of tedious, dreaded manual chore.
With SlothDesk:
SlothDesk runs on-device Gemma 3 (4B Vision/Text) through an Ollama REST pipeline with strict JSON schema enforcement. Gemma inspects visual UI captures and textual document previews to infer structured metadata (vendor, date, amount, topic), assigning standardized ISO-8601 semantic names and sorting items into dedicated vaults.
Containerized deployment with a multi-stage production Dockerfile running as non-root appuser (UID 10001). SlothDesk utilizes Render's Persistent Disk (/app/data) to preserve sorted file vaults across redeploys, accompanied by zero-downtime health probes (/api/health/live, /api/health/ready) defined in render.yaml.
SlothDesk leverages the ElevenLabs API to synthesize an ambient, sleepy morning brief narrated by a warm voice (JBFqnCBsd6RMkjVDRZzb). Paired with a bespoke waveform scrubber in the Next.js frontend, users can wake up, listen to their clutter briefing at 0.75x "Sloth Speed", and inspect what the daemon sorted while they slept.
Configured with production DNS mappings for https://slothdesk.tech and https://api.slothdesk.tech, hardened with strict security headers (CSP, HSTS, X-Frame-Options: DENY) and CORS origins.